1 |
1
시스템 온 칩에서 복수의 컴포넌트 사이의 데이터 전송을 수행하는 네트워크 온 칩에 있어서, 상기 복수의 컴포넌트 간 제어 패킷과 데이터를 전송하여 통신 경로를 설정하는 복수의 라우터;상기 제어 패킷 전송을 위하여 상기 복수의 라우터 사이 및 상기 복수의 라우터와 상기 복수의 컴포넌트 사이를 연결하는 복수의 단방향 제어 채널; 및 상기 데이터 전송을 위하여 상기 복수의 라우터 사이 및 상기 복수의 라우터와 상기 복수의 컴포넌트 사이를 연결하는 복수의 양방향 데이터 채널;을 포함하는 것을 특징으로 하는 네트워크 온 칩
|
2 |
2
제 1항에 있어서,상기 라우터는 상기 제어 패킷의 전송 경로에 따라 데이터 채널을 할당하며, 상기 할당된 데이터 채널의 전송 방향을 결정하는 것을 특징으로 하는 네트워크 온 칩
|
3 |
3
제 1항에 있어서, 상기 라우터는, 데이터 전송을 위한 데이터 서킷을 형성하는 제어 패킷을 전송하는 제어 라우팅부; 상기 제어 패킷의 전송 경로에 따라 형성되는 데이터 채널 할당을 위해 상기 제어 패킷 정보를 전송받아 데이터 채널을 할당하는 데이터 채널 할당부; 및 상기 데이터 채널 할당부로부터 데이터 채널 할당 성공 신호를 수신하면 복수의 데이터 채널 간 데이터 전송 시 서로 연결되는 데이터 채널 짝 및 데이터 전송 방향을 설정하는 데이터 라우팅부;를 포함하는 것을 특징으로 하는 네트워크 온 칩
|
4 |
4
제 3항에 있어서, 상기 데이터 채널 할당부는 데이터 채널 할당이 가능하면 할당된 데이터 채널을 통해 데이터가 전송될 수 있도록 하고 데이터 채널 할당 성공 신호를 상기 제어 라우팅부로 보내 상기 제어 패킷이 다음 제어 라우팅부로 전송되게 하고, 상기 데이터 채널이 모두 사용 중에 있어 데이터 채널 할당이 가능하지 않으면 상기 제어 라우팅부에 데이터 채널 할당 실패 신호를 보내는 것을 특징으로 하는 네트워크 온 칩
|
5 |
5
제 4항에 있어서, 상기 데이터 채널 할당부로부터 데이터 채널 할당 실패 신호를 수신한 상기 제어 라우팅부는 데이터 채널 할당이 실패한 제어 패킷이 다른 경로를 통해 데이터 채널을 할당받을 수 있도록 요청하는 것을 특징으로 하는 네트워크 온 칩
|
6 |
6
제 4항에 있어서, 상기 데이터 채널 할당부로부터 데이터 채널 할당 실패 신호를 수신한 상기 제어 라우팅부는 데이터 채널 할당이 실패한 제어 패킷을 입력된 방향으로 되돌려 보내는 것을 특징으로 하는 네트워크 온 칩
|
7 |
7
제 4항에 있어서, 상기 데이터 채널 할당부로부터 데이터 채널 할당 실패 신호를 수신한 상기 제어 라우팅부는 데이터 채널 할당이 실패한 제어 패킷을 소멸시키는 것을 특징으로 하는 네트워크 온 칩
|
8 |
8
제 3항에 있어서,상기 제어 라우팅부는 상기 제어 패킷을 처리하기 위해 추가적으로 필요한 데이터 채널 할당 요청을 처리하는 데이터 채널 할당 요청부를 포함하는 것을 특징으로 하는 네트워크 온 칩
|
9 |
9
제 3항에 있어서,상기 제어 라우팅부는 상기 데이터 채널 할당 성공 여부에 따라 입력 버퍼부에 존재하는 제어 패킷의 다음 진행 방향을 제어하는 것을 특징으로 하는 네트워크 온 칩
|
10 |
10
제 3항에 있어서, 상기 제어 라우팅부는 상기 제어 패킷에 의한 제어 라우팅부로 구성된 제어 네트워크가 데드락(deadlock) 상태가 되는 것을 방지하기 위해 출력 포트로 전송 실패하는 제어 패킷을 제거하는 것을 특징으로 하는 네트워크 온 칩
|
11 |
11
제 3항에 있어서,상기 데이터 라우팅부는 상기 데이터 채널 할당부로부터 데이터 채널 할당 정보를 받아 입력 또는 출력 방식으로 사용하도록 각 방향의 채널 제어를 조절하는 양방향 채널 제어부를 포함하는 것을 특징으로 하는 네트워크 온 칩
|
12 |
12
제 11항에 있어서, 상기 데이터 라우팅부는 상기 양방향 채널 제어부와 연결되어 서로 다른 방향의 레인을 연결하는 크로스바를 더 포함하는 것을 특징으로 하는 네트워크 온 칩
|
13 |
13
시스템 온 칩에서 복수의 컴포넌트 사이의 데이터 전송을 수행하는 네트워크 온 칩을 구성하는 라우터 내의 데이터 전송방법에 있어서, (a) 제어 채널을 통해서 들어오는 패킷을 입력 버퍼부에 저장하는 단계;(b) 상기 패킷을 라우팅 로직부을 통해 전송될 출력 포트를 선정하고 중재부에 상기 출력 포트에 대한 크로스바 통과를 요청하는 단계; (c) 상기 중재부가 상기 출력 포트에 대한 크로스바 통과를 허용하면 데이터 전송을 위한 서킷 형성을 위하여 데이터 채널 할당 요청부에 채널 할당을 요청하는 단계; (d) 상기 요청한 데이터 채널 할당이 성공하면 상기 크로스바를 통한 패킷을 전송하여 상기 출력 버퍼부에 상기 패킷을 저장하는 단계; 및(e) 상기 출력 버퍼부에 저장된 상기 패킷을 제어 채널을 통해 다음 라우터 또는 컴포넌트로 전송하는 단계;를 포함하는 것을 특징으로 하는 데이터 전송 방법
|
14 |
14
제 13항에 있어서,상기 패킷은 제어 패킷인 것을 특징으로 하는 데이터 전송 방법
|
15 |
15
제 13항에 있어서, 상기 (a) 단계에서 상기 입력 버퍼부에 저장된 패킷이 선입선출(FIFO) 큐의 가장 앞 부분에 위치하는 것을 특징으로 하는 데이터 전송 방법
|
16 |
16
제 13항에 있어서, 상기 (b) 단계에서 상기 중재부는 오버플로우를 방지하기 위해 흐름 제어부로부터 다음 라우터 또는 컴포넌트의 입력 버퍼부의 상태 정보를 확인하여 상기 출력 포트로 상기 패킷을 전송해도 되는지 확인함으로써 크로스바 통과를 허락하는 것을 특징으로 하는 데이터 전송 방법
|
17 |
17
제 13항에 있어서, 상기 (c) 단계에서 상기 중재부가 상기 출력 포트에 대한 크로스바 통과를 허용하지 않으면 상기 패킷을 버리고 상기 패킷이 진행한 방향과 반대 방향으로 재전송 신호를 보내는 것을 특징으로 하는 데이터 전송 방법
|
18 |
18
제 14항에 있어서,상기 (d) 단계에서 데이터 채널 할당이 실패하면 다른 출력 방향에 대해 데이터 채널 할당 시도를 수행하는 것을 특징으로 하는 데이터 전송 방법
|
19 |
19
제 13항에 있어서, 상기 패킷이 일반 패킷인 경우, 상기 중재부가 크로스바 통과 요청을 허용하면 상기 크로스바를 통해 출력 버퍼부로 전송되고 제어 채널을 통해 다음 라우터 또는 컴포넌트로 상기 일반 패킷을 전송하는 것을 특징으로 하는 것을 데이터 전송 방법
|
20 |
20
제 13항 내지 제 19항 중 어느 한 항에 기재된 데이터 전송 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
|