고집적 SoC 설계시에 버스방식의 온칩 통신은 대역폭이 제한되는 문제점이 있고 NoC (Network-on-Chip) 방식에서는 구현의 복잡도가 증가하는 문제점이 있다. 본 논문에서는 이러한 문제점을 극복하는 새로운 온칩 통신 규격인 SNP(Soc Network Protocol)를 소개한다. SNP는 기존 버스의 신호선들을 세 가지 그룹인 제어(control), 주소(address), 데이타(data)로 나눈 뒤 하나의 채널을 통해 전송함으로써 신호선의 수를 줄인다. SNP 채널은 대칭구조로 사용되기 때문에 마스터-슬레이브 통신 방식뿐만 아니라 마스터-마스터 통신도 효율적으로 지원한다. 하나의 전송에 필요한 신호 그룹의 진행 규칙을 SNP 규격으로 정의하고, 동일한 정보가 반복적으로 전달되는 것을 방지하는 페이즈 복원 기능을 제안하여 통신대역을 효율적으로 사용할 수 있도록 한다. 산업계 표준 규격인 AMBA AHB와 비교한 결과 멀티미디어 타입의 데이타 전송시에 $54\%$의 신호선수만으로도 대등한 대역폭을 지원할 수 있음을 보인다.
고집적 SoC 설계시에 버스방식의 온칩 통신은 대역폭이 제한되는 문제점이 있고 NoC (Network-on-Chip) 방식에서는 구현의 복잡도가 증가하는 문제점이 있다. 본 논문에서는 이러한 문제점을 극복하는 새로운 온칩 통신 규격인 SNP(Soc Network Protocol)를 소개한다. SNP는 기존 버스의 신호선들을 세 가지 그룹인 제어(control), 주소(address), 데이타(data)로 나눈 뒤 하나의 채널을 통해 전송함으로써 신호선의 수를 줄인다. SNP 채널은 대칭구조로 사용되기 때문에 마스터-슬레이브 통신 방식뿐만 아니라 마스터-마스터 통신도 효율적으로 지원한다. 하나의 전송에 필요한 신호 그룹의 진행 규칙을 SNP 규격으로 정의하고, 동일한 정보가 반복적으로 전달되는 것을 방지하는 페이즈 복원 기능을 제안하여 통신대역을 효율적으로 사용할 수 있도록 한다. 산업계 표준 규격인 AMBA AHB와 비교한 결과 멀티미디어 타입의 데이타 전송시에 $54\%$의 신호선수만으로도 대등한 대역폭을 지원할 수 있음을 보인다.
For high density SoC design, on-chip communication based on bus interconnection encounters bandwidth limitation while an NoC(Network-on-Chip) approach suffers from unacceptable complexity in its Implementation. This paper introduces a new on-chip communication protocol, SNP (SoC Network Protocol) to...
For high density SoC design, on-chip communication based on bus interconnection encounters bandwidth limitation while an NoC(Network-on-Chip) approach suffers from unacceptable complexity in its Implementation. This paper introduces a new on-chip communication protocol, SNP (SoC Network Protocol) to overcome these problems. In SNP, conventional on-chip bus signals are categorized into three groups, control, address, and data and only one set of wires is used to transmit all three groups of signals, resulting in the dramatic decrease of the number of wires. SNP efficiently supports master-master communication as well as master-slave communication with symmetric channels. A sequencing rule of signal groups is defined as a part of SNP specification and a phase-restoration feature is proposed to avoid redundant signals transmitted repeatedly over back-to-back transactions. Simulation results show that SNP provides about the same bandwidth with only $54\%$ of wires when compared with AMBA AHB.
For high density SoC design, on-chip communication based on bus interconnection encounters bandwidth limitation while an NoC(Network-on-Chip) approach suffers from unacceptable complexity in its Implementation. This paper introduces a new on-chip communication protocol, SNP (SoC Network Protocol) to overcome these problems. In SNP, conventional on-chip bus signals are categorized into three groups, control, address, and data and only one set of wires is used to transmit all three groups of signals, resulting in the dramatic decrease of the number of wires. SNP efficiently supports master-master communication as well as master-slave communication with symmetric channels. A sequencing rule of signal groups is defined as a part of SNP specification and a phase-restoration feature is proposed to avoid redundant signals transmitted repeatedly over back-to-back transactions. Simulation results show that SNP provides about the same bandwidth with only $54\%$ of wires when compared with AMBA AHB.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
기존의 버스 방식이나 새로운 NoC 방식에서 드러나는 문제점을 극복하고 자 본 논문에서 새로운 온칩 통신 규격인 SNP(Soc Network Protocol)를 제안하다. SNP는 앞서 언급된 기존 방식들에 있어 최대한 장점들을 취하고 단점들을 배제하는 방향으로 개발되었다.
본 논문에서는 SoC 설계 시 주로 사용되어 오던 버스 기반 통신방식을 대체할 수 있는 SNP라는 새로운 통신규격을 제안하였다. 기존 산업계 표준인 AHB와 비교하면 버스트 전송 위주의 통신에서 54%의 신호 선수 로도 거의 유사한 성능을 나타냄을 알 수 있었다 멀티미디어 응용이나 대용량 SoC의 backbone 버스에서 이러한 버스트 전송이 많이 이루어지므로 SNP는 멀티미 디어 칩이나 고집적 SoC에서 효율적으로 사용될 수 있 올 것으로 기대된다.
왜냐하면, 하나의 쓰기 부전송은 WA 페이즈 및 CO 페이즈를 요구하는데, 그림 7(b)에서는 두 번째 맟 세 번째 전송에서 WA 및 CO 페이즈 를 생략했기 때문이다. 본 논문에서는 이렇게 생략된 페이즈를 처리해주기 위해서 '페이즈 복원(phase-restoration)' 기법을 제안한다. 이 기법이 적용되는 경우 슬레이브는 WA와 CO 정보를 저장하고 있다가 페이즈 순서 규칙에서 생략된 부분이 발생하면 저장하고 있던 가장 최근 정보로 생략된 페이즈를 복원하여 전송을 정상화한다.
본 절은 기존 버스 기반의 IP들이 SNP 인터페이스를 위하여 추가적으로 필요로 하는 하드웨어 부담에 대하여 알아본다. 기존의 버스인터페이스는 아래 그림 9(a)처 럼 구성된다.
제안 방법
본절에서는 SNP 채널을 통한 전송에서 자주 사용되는 페이즈들의 진행 순서를 알아보고, 이를 바탕으로 가능한 페이즈 진행 순서를 결정한다. 그리고, 페이즈 진행 순서를 제한하고 이를 효과적으로 이용함으로써 전송 시간을 줄이는 방법을 살펴본다.
본 논문에서 제안하는 SNP는 기존 버스의 신호선들을 세 가지 신호그룹인 제어(control), 주소(address), 데이타(data) 그룹으로 나눈 뒤 하나의 32비트 신호선들을 통해 전송한다. 이 신호선들을 채널이 라 칭하며 CHANNEL[31:이로 표기한다.
본장에서는 SNP 규격의 기능 모델 (functional mod 이)들을 구현하고 이를 이용하여 SNP 성능을 AMBA AHB 및 AXI와 비교한다. 원래 AXI는 버스 구조 규격이 아니고 IP 인터페이스 규격이지만 기존 버스 방식의 신호선들을 유지면서 읽기/쓰기가 동시에 가능한 특성이 SNP와 유사하므로 AXI를 그 비교 대상으로 정하였다.
본장에서는 SNP 규격의 기능 모델 (functional mod 이)들을 구현하고 이를 이용하여 SNP 성능을 AMBA AHB 및 AXI와 비교한다. 원래 AXI는 버스 구조 규격이 아니고 IP 인터페이스 규격이지만 기존 버스 방식의 신호선들을 유지면서 읽기/쓰기가 동시에 가능한 특성이 SNP와 유사하므로 AXI를 그 비교 대상으로 정하였다. 그림 8(a)는 AMBA AHB, AXI 및 한 쌍 의 SNP 채널 기반의 전형적인 버스 아키텍쳐인 마스터-슬레이브 연결 구조를 구현한 뒤 하나의 마스터와 다른 하나의 슬레이브 간에서 같은 양의 데이타를 전송하 는데 걸리는 시간을 비교한 것이다.
PHASE[2:0] 신호의 값에 따라서 8가지의 서로 다른 정보가 채널을 통해 전송된다. 이들 8가지 정보는 현재 채널에 정보가 실리지 않은 상태를 나타내는 IDLE(idle), 읽고 쓰기에 대한 슬레이브의 응답이 실렸음을 나타내는 RP(Response)f 읽기 데이타가 실렸음을 나타내는 RDCRead Data), 인터럽트 등 특수목적 또는 향후 추가되는 사양들에 대한 예약용 페이즈로 사용되는 SP(Special), 제어정보가 실렸음을 나타내는 CO(Control), 쓰기 데이타에 대한 주소정보가 실렸음을 나타내는 WA(Write Address), 쓰기 데이타가 실 렸음을 나타내는 WD(Write Data), 읽기 데이타에 대한 주소정보가 실렸음을 나타내는 RAtRead Address) 이다. 각 페이즈에서 CHANNEL[31:이에 전송되는 각 신호들의 정의는 참고문헌[23]에 자세히 설명되어 있고, 본 논문에서는 지면관계 상 생략한다.
그림 8(b)는 각 신호선들이 얼마나 互율적으로 사용되는 지 보여준다. 이를 위하여 'wire 효율'을 정의하여 비교하였다. wire 효율이라 함은 하나의 버스싸이클당 평균적으로 전송된 데이타 양을 버스 신호수만큼으로 나눈 것으로서, 하나의 wire가 얼마나 낭비되지 않고 효율적으로 사용되고 있는가를 나타낸 척도가 되겠다.
그림에서 L 채널을 통해 하나의 마스터가 싸이클 1에서 6에 걸쳐 데이타쓰기를 진행하고 싸이클 9에서 R 채널 을 통해 해당 슬레이브로부터 응답을 받는다. 이와 동시에 R 채널에서 또 다른 마스터가 싸이클 3에서 8에 걸쳐 또 다른 쓰기를 진행하고 그에 해당하는 슬레이브가 싸이클9를 통해 응답을 수행한다. 읽기의 경우도 마찬가지로 싸이클 1.
대상 데이터
덧붙여 본 시나리오에서 버스트 전송은 실제 다른 어플리케이션에서도 영상 데이타블록 전송이나 내장 프로세서의 캐쉬라인 전송의 형태로 매우 빈번히 발생하는 형태이며 싱글 전송은 마이크로 프로세서가 분기하거나 특정 레지스터들을 억세스하는 경우에 발생하는 형태이다. 모든 인터페이스는 32-bit 크기의 데이타 신호와 주소 신호들로 구성되었다.
버스트 전송에서 버스트 전송 데이타의 크기는 64 bytes(영상처리 표준에서 널리 사용되는 8][8 macro block 단위의 데이타)이다. 본 시뮬레이션을 위한 시나리오는 MPEG4 영상 압축 및 복원 알고리즘을 기반으로 하고 있으며 전송 배합 비율이 1에 가까운 경우는 이미지센서를 통한 영상 입력 데이타들을 DMA를 통하여 메모리에 저장하거나 저장된 데이타를 출력하는 입출력 동작의 경우와 DCT/IDCT(Discrete Cosine Transform/Inverse Discrete Cosine Transform), ME(Motion Estimation) 연산을 위한 경우이며 모두 8×8블록단위 전송의 버스트전송 위주이다. 전송 배합 비율이 0에 가까운 경우는 주로 메인 컨트롤러인 ARM7 프로세서가 명령어를 인출하다가 분기하는 경우에 해당 하나 전체 데이타 전송 에서 차지하는 부분은 극히 미미하다.
성능/효과
본 논문에서는 SoC 설계 시 주로 사용되어 오던 버스 기반 통신방식을 대체할 수 있는 SNP라는 새로운 통신규격을 제안하였다. 기존 산업계 표준인 AHB와 비교하면 버스트 전송 위주의 통신에서 54%의 신호 선수 로도 거의 유사한 성능을 나타냄을 알 수 있었다 멀티미디어 응용이나 대용량 SoC의 backbone 버스에서 이러한 버스트 전송이 많이 이루어지므로 SNP는 멀티미 디어 칩이나 고집적 SoC에서 효율적으로 사용될 수 있 올 것으로 기대된다. 실제로 최근 SoC화 되고 있는 칩 들이 주로 시스템 레벨의 DTV 칩셋이나 셋톱박스칩셋, 휴대용 멀티미디어 솔루션칩 등 멀티미디어 환경 즉, 버스트 전송 위주의 어플리케이션이 주류이므로 이러한 가능성을 뒷받침해준다.
하지만, 버스트 전송 위주의 환경에서는, 즉 burst rate가 1에 가까운 경우에는 SNP의 성능이 AXI에 매우 근접함을 알 수 있다. 이는 AXI가 SNP의 74개의 신호선에 비해 훨씬 많은 110개의 신호선을 사용한다는 점을 고려하면 SNP가 높은 효율올 가짐올 보여주는 결과이다.
후속연구
또한, 프로토콜을 가능한 단순하게 함으로써 프로토콜 처리를 간단하게 하여 통신 노드 간 전송 시간이나 통신 노드의 복잡도 증가를 기존 온칩버스 수준으로 유지한다. 또한, 새로운 IP 설계와 IP의 재사용이 용이하도록 하며 전체 개발 비용도 버스 기반 설계 수준의 저비용에 맞출 수 있도록 하였으며 향후 NoC 기반의 상위 수준 연결 시에도 지역 연결구조로서 상위 연결구조 와 이음매 없이 연결될 수 있도록 대칭 쌍방향 채널기반 아키텍쳐를 제공한다.
위에서 열거한 이러한 사실들로 보았을 때 SNP는 기존 방식의 한계를 극복하고 나아가 버스 방식의 연결구조와 네트워크 방식 연결구조 사이의 차이를 좁혀 향후 멀티미디어용 반도체 설계의 실질적 규격으로 발전할 수 있을 것으로 기대된다. 본 논문에서 소개한 내용 이외에도 채널 최적화 모드(Reduced Channel Mode), 가상 채널(Virtual Channel), 계층 간 독립적으로 분리된 정의 등 여러 유용한 SNP 부가 기능들이 있으며 이들 기능은 참고문헌[23]에 자세히 설명되어 있다.
본 논문에서 소개한 내용 이외에도 채널 최적화 모드(Reduced Channel Mode), 가상 채널(Virtual Channel), 계층 간 독립적으로 분리된 정의 등 여러 유용한 SNP 부가 기능들이 있으며 이들 기능은 참고문헌[23]에 자세히 설명되어 있다. 향후에는 보다 실질적인 성능 비교를 위해 AMBA AHB기반으로 제작된 MPEG-4 코덱을 SNP기반으로 개정하는 연구가 진행 중이며 SNP기반 전용 개발툴도 개발 진행 중에 있다.
참고문헌 (23)
ARM, AMBA Specification, Rev. 2.0, 1999
IBM, CoreConnect Bus Architecture[Online]. Available: http://www-306.ibm.com/chips/techlib/productfamilies/CoreConnect_Bus_Architecture
VSI Alliance, Virtual component interface standard[Online]. Available: http://www.vsi.org
OCP International Partnership, Open core protocol specification [Online]. Available: http://www.ocpip. org
K. K. Ryu, E. Shin, and V. J. Mooney, 'A Comparison of Five Different Multiprocessor SoC Bus Architectures,' in Proc. EUROMICRO Symp. on Digital Systems Design, pp. 202-209, Sept. 2001
Serial Peripheral Interface [Online]. Available: http://www.mct.net/faq/spi.html
T. T. Ye, L. Benini, G. D. Micheli, 'Packetized On-Chip Interconnect Communication Analysis for MPSoC,' in Proc. IEEE Design Automation and Test in Europe, pp. 344-349, Mar. 2003
D. Wingard, 'MicroNetwrok based integration for SoCs,' in Proc. 38th Design Automation Conference, pp. 673-677, June 2001
K.-M. Lee, S.-J. Lee, and H.-J. Yoo, 'Low Energy Transmission Coding for On-Chip Serial Communications.' in IEEE Int'l SOC Conference (SOCC), Sept. 2004
M. B. Taylor, 'The Raw Processor A Scalable 32-bit Fabric for Embedded and General Purpose Computing,' in Proc. Hotchips XIII, Aug. 2001
W. H. Ho and T. M. Pinkston, 'A Methodology for Designing Efficient On-Chip Interconnects on Well-Behaved Communication Patterns,' in Proc. of 9th Int'l Symp. on High-Performance Computer Architecture (HPCA-9), pp. 377-388, Feb. 2003
K-M. Lee, et al., 'A 51mW 1.6GHz On-Chip Network for Low-Power Heterogeneous SoC Platform,' in IEEE Int'l Solid-State Circuits Conf. (ISSCC), pp. 152-153, Feb. 2004
S.- J. Lee, et al., 'An 800MHz Star-Connected On-Chip Network for Application to Systems on a Chip,' in IEEE Int'l Solid-State Circuits Conf. (ISSCC), Dig. Tech Papers, pp. 468-469, Feb. 2003
K.-M. Lee, 'Design and implementation of Low-Power Network-on-Chip for Application to High-Performance System-on-Chip Design,' Ph.D dissertation, KAIST, Daejeon, Korea, 2005
SNP specification [Online]. Available: http://capp.snu.ac.kr
※ AI-Helper는 부적절한 답변을 할 수 있습니다.