2~3세대 RapidIO 디바이스 강화가 어떻게 3세대와 그 이상의 베이스밴드 프로세싱을 개선할 수 있는지를 알아보는 시리즈의 마지막 글이다. 첫 번째 기술원고에서는 시리얼 RapidIO가 어떻게 베이스밴드 시스템의 기초 역할을 하는지를 살펴 본 바 있으며, 두번째 원고에서는 2~3세대 디바이스들이 어떤 고유 기능을 추가적으로 제공하여 3세대와 그 이상의 베이스밴드 성능 및 기능을 강화 시키는지에 대해 살펴보았다.
3G 베이스밴드 프로토타입 시스템 실행
글│트레버 하이아트, IDT 플로우 제어관리 사업부 애플리케이션 매니져
감수│IDT 코리아 오순영 이사
이번 기술원고는 2~3세대 RapidIO 디바이스 강화가 어떻게 3세대와 그 이상의 베이스밴드 프로세싱을 개선할 수 있는지를 알아보는 시리즈의 마지막 원고이다.
본 고를 통해 관련 구성요소 당 전력 및 레이턴시(latency), 지연 지터(latency jitter), 업링크 및 다운링크 처리량을 가지고, 오프-더-셸프(off-the-shelf) ATCA(Advanced Telecom Computing Architecture) 기반 하드웨어를 사용하여 두 번째 기고문에서 설명되었던 베이스밴드 시스템 실행의 예시에 부합하는 실제 3G 프로토타입 개발 플랫폼을 어떻게 얻을 수 있는지 알아보고자 한다.
또한 차세대 시리얼 RapidIO디바이스 기능이 어떻게 오류 관리, 핫 스왑(hot-swap) 및 BER(Bit Error Rate: 비트 에러율) 측정 같은 시스템 단계 요건에 부합하는지를 설명할 것이다.
오프-더-셸프 프로토타입
하드웨어 선택
쉬운 이해를 위한 예시를 들기 위해 오프-더-셸프(off-the-shelf) 구성요소와 하드웨어를 활용하여 프로토타입 베이스밴드 시스템을 생성하고 관련 성능에 대한 정보를 검토해 볼 것이다.
우선, 몇몇의 적절한 스위치 관련 평가 보드를 사용하여 스위치 보드의 순수 시리얼 Rapid-IO포트 카운트 ‘배관(plumbing)’을 처리할 수 있다. 전처리(pre-processing) 요건에 추가적으로 부합하기 위해 IDT의 EVC70K2000 평가 캐리어(Evaluation Carrier)를 사용할 것이다.
베이스밴드 보드의 경우, 몇몇의 적합한 오프-더-셸프 AMC 카드를 사용하여 최소의 프로토타입 요건에 부합할 수 있다.
실리콘 턴키 익스프레스(STx)의 AMC80KSW0001 보드의 특징은 네 개의 텍사스 인스투르먼츠 TMS320C6482 디지털 신호 처리기(DSP)와 IDT80-KSW0001 전처리 스위치 디바이스이다. 이 스위치의 특성은 베이스밴드 카드를 위해 설명된 전처리 요건에 부합한다.
10G 시리얼 버퍼 모듈, 업링크 상에서 UMTS 프레임 레이턴시 제공
위에서 정의한 특정 시스템에서는 스위치 보드가 아닌 베이스밴드 보드에 한정적인 시리얼 버퍼를 선택했다. 각 베이스밴드 보드 상의 전처리기가 패킷을 종결시킬 것이기 때문에 대역폭이 줄어들 수 있으며, 이와는 반대로 유입되는 인 페이스(In-phase)와 쿼드러처 데이터 스트림(Quadrature(IQ) data stream) 처리량 지원이 가능하다.
또한 시스템 처리량을 최적화하기 위해 스위치 보드와 연결된 베이스밴드 보드 링크가 실시간 데이터 스트림 지원 시 처리량의 60% 정도로 작동해야 할 것으로 예측 할 수 있다.
이 경우, 트래픽 체증과 이로 인한 패킷 재시도가 발생되는 경우를 위해 40%의 마진 확보가 가능하다. 시리얼 버퍼가 스위치 모드 상에 위치했다면 요구되는 스위치 보드와 연결된 베이스보드 링크 처리량을 120%(실시간 지연 트랙픽)로 두 배 증가시킬 수 있으나, 이는 물리적으로 불가능하다.
시리얼 버퍼가 구성 레지스터(configuration registers)를 통해 사용자 조정 가능하게 프레임 내의 전체 UMTS와 같은 무선 메시지 전달 시스템 프레임이나 변수 Z 수만큼의 슬롯을 저장할 수도 있다.
지연된 데이터가 다시 전송되면서 패킷은 사용자 조정 가능한 IPG(Inter-Packet Gap) 타이밍을 갖게 될 수도 있다. 또한 사용자가 정의한 패킷 수(IQ 데이터 블록)가 전송된 직후, 시리얼 버퍼를 통해 수신 프로세서에 도어벨(doorbell) 인터럽트를 생성할 수 있도록 한다.
이는 데이터 수신과 프로세싱 시작 사이의 지연을 최소화하여 전반적인 시스템 성능을 개선한다. 위에서 언급한 AMC80KSW0001 베이스밴드 프로세싱 보드는 STx의 80KSBR200 10G 시리얼 버퍼 모듈을 지원하는 확장 포트를 제공하여 UMTS/CDMA 프레임 지연 버퍼 요건을 만족시킨다.
종합 분석: 결론은 성능
그림 1은 현재 예시로 들고 있는 특정 시스템을 위한 구성요소(전력, 레이턴시, 지연 지터)를 보여준다. 전처리기는 업링크와 다운링크 데이터 파이프에 한하여 사용되었고, 각 구성요소들은 예시의 데이터 시행을 위한 전처리기의 성능을 의미한다.
전처리기는 미리 준비된 전용 경로이며 전처리 데이터 경로에는 지연 지터가 없다(35ns 지연 지터는 100% 표준 시리얼 RapidIO 물리계층의 영향과 관련있다.) 최상급 전처리기의 지연 지터는 전반적인 시스템 레이턴시를 줄여주며, 결국 시스템 동기화 요건에 부합할 수 있도록 지터 예산을 절감한다.
그림 1. 실리콘 턴키 익스프레스(Silicon Turnkey Express) AMC80KSW0001 베이스밴드 개발 보드에 10G 시리얼 버퍼 도터 모듈(Daughter module)을 사용하는 경우(좌)와 모듈을 사용하지 않는 경우(우). 이 플랫폼은 네 개의 TI C6455나 C6482 DSP와 IDT 70K2000나 80KSW0001 PPS를 통해 3G 베이스밴드 개발을 지원한다. 이렇게 추가된 시리얼 버퍼 모듈은 UMTS 프레임 딜레이 솔루션을 제공하거나, 공유 시리얼 RapidIO 메모리로 사용될 수 있다. AMC는 캐리어 보드나 백플레인에 대한 시리얼 RapidIO와 기가비트 이더넷(Gigabit Ethernet) 연결성을 지원한다.
데이터가 베이스밴드 보드에 업링크와 다운링크 데이터 경로를 나타내지만, 주요 베이스밴드 프로세싱 중에 요구된 알고리즘 및 관련 파티셔닝에 따라 스위치 블록 자체를 통해 DSP와 FPGA 중에서 여러 홉(hop)이 요구될 수 있다.
이때, 전체 지터가 요구된 홉의 배수만큼 높아지므로 스위칭 레이턴시(switching latency)를 최소한으로 유지하는 것이 중요하다. 전형적인 순수 스위칭 레이턴시는 160ns이며, 출력 포트에 다른 패킷이나 우선순위에 의한 블록킹이 없다는 가정 하에, 관련 지터는 35ns이다.
전처리기가 DSP를 오프로드(offload)하여 데이터 포맷팅 요구를 위해서 사용되기 보다는 주요 알고리즘 기능으로 사용될 수 있도록 한다. 이때DSP의 가용 사이클이 절감된다. 예를 들어 디-인터리빙(de-interleaving)과 같은 각각의 전처리기 작동은 샘플 당 최소 하나의 처리 사이클을 필요로 하는 경우를 생각해 보자. 또한, DSP가 페이로드 내의 데이터 스트림 상에서 실시간으로 각각의 샘플에 대해 이와 같은 작업을 의무적으로 수행해야 한다고 생각해 보자.
전형적인 1GHz 프로세서의 경우 무선 시스템 파라미터(parameter)에 따라 전체 IQ 샘플 상에서 단일 기능을 수행하는 것만으로도 가용 프로세스 사이클의 20% 이상이 소모될 수 있다.
그림 2. IDT 70K2000 PPS를 특징으로 하는 IDT EVC70K2000 시리얼 RapidIO 캐리어 보드에 연결된 AMC80KSW0001 베이스밴드 보드가 포함된 완벽한 베이스밴드 개발 시스템. 이 시스템은 베이스밴드 및 컨트롤 프로세싱 성능 확대를 위해 여러 개의 AMC를 지원할 수 있도록 확장 가능하다.
오류 처리
온전한 시스템이란 충분히 견고하여 체계적으로 장애를 감지, 보고, 수정할 수 있어야 한다. 따라서 엄격한 안정성 및 가용성에 대한 요구 조건을 만족시켜야 하는 원격 구축 장비의 원거리 문제를 해결해야 하는 베이스밴드 인프라에서 오류 처리 기능은 매우 중요하다.
시리얼 RapidIO는 오류 관리 확장 규격 및 소프트웨어를 지원하는 오류 복구 레지스터(error recovery registers)를 통해 견고한 오류 보고 기능들을 제공한다. 따라서 시리얼 RapidIO장착으로 많은 오류 상황 감지 및 보고가 가능하다.
예를 들어 FRU(Field Replaceable Unit)이 백플레인과 제대로 연결 되어있지 않을 경우 나타날 수 있는 증상으로는 레인 싱크(lane sync) 손실이나 수신기에서 확인 될 수 있는 문제 등이 있다. 견고한 오류 처리 지원 기능은 이러한 연결성 문제를 확인하여, 오류를 기록하고 이를 다시 호스트 프로세서에 보고하여 수정 조치가 취해질 수 있도록 한다.
특히 스위치는 시스템의 모든 종점과 연결되기 때문에 견고한 오류 처리 성능이 중요하다. 시스템 설계자들은 현 세대의 디바이스가 시리얼 RapidIO기반 기능을 비롯하여 그 이상의 강화 기능 까지도 제공할 수 있기를 원한다.
시리얼 RapidIO에서 뿐 아니라 다른 기능의 블록 상에서 발견되는 오류 유형을 감지할 수 있도록, 시리얼 RapidIO규격 이상의 해상도로 하드웨어가 강화되기도 한다. 이때, 디바이스 상의 고유 기능 블록이 포함된다.
이들은 오류 감지뿐만 아니라 하드웨어 기반의 오류 응답 역시 제공해야 한다. 이러한 응답은 최소한 오류를 호스트 프로세서에 다시 보고하는 기능을 포함하고 있어야 한다.
소프트웨어 개발자가 오류 관리 및 통제하는데 있어서 최고의 유연성을 누릴 수 있기 위해서는 소프트웨어 인터럽트 서비스 루틴에의해 앞서 언급된 실행들이 이루어지는 것이 최상이다.
그림 3. 앞서 언급된 프로세싱 요건을 만족시키기 위한 WCDMA 전처리 성능. 레이턴시, 지연 지터, 작업 처리량이 업링크(상)와 다운링크(하)에 제공되는 한편, 디바이스의 전력은 가장 위쪽에 제공된다. 이때, 시리얼 버퍼의 지연시간이 사용자가 정의한 프레임/슬롯 딜레이 타이밍(delay timing)이라는 점에 유의한다. 또한 작업 처리량의 수치가 디바이스 총 처리량이 아닌, 업링크와 다운링크 프로세싱 요건을 만족하는 전처리기를 위한 최대 유지 처리량을 반영한다는 점을 잊지 말아야 한다.
시스템 BER(Bit Error Rate) 유지
시리얼 RapidIO 물리계층의 규격은 10E-12 BER및 그 이상을 유지하도록 하는 명확한 요구 조건을 제시한다.
구성요소를 제공하는 업체들은 부합하는 드라이브 길이와 프리 앰퍼시스(pre-emphasis) 컨트롤을 송신기에 제공함으로써 시리얼 RapidIO 규정의 최소 전송 및 수신 요건에 부합한다.
현재, 많은 업체들이 시리얼 RapidIO 규격에서 요구하는 최소한도 이상의 전송 성능을 제공하고 있다.
표준 강화에는 시스템 BER 관리를 지원하는 자체 내 고유 기능 또한 포함되어있다. 이러한 기능은 생산에 앞서 프로토타입 보드 상의 BER 최적화를 위해 전송 특징을 맞출(fine-tuning)때 특히 유용하다.
또한 이러한 기능은 프로덕션 보드의 BER ‘수행시간(run rime)’ 측정을 지원하여 시스템 요건 밖의 BER보고 및 문제 해결을 위한 전송 특징(드라이브 길이와 프리엠퍼시스 등)을 조정할 수 있다.
현재 시리얼 RapidIO에 명시되어 있지 않으나, 시리얼 RapidIO에는 PRBS (Pseudo Random Bit Sequence) 생성기, 오류 점검기, 룹백(loopback) 성능 같은 업계 표준의 SerDes가 내장된 셀프 테스트 기능이 있다.
이 외에도 더 타이트한 한계 조건 하에서 테스트를 실시하여 더 정확한 결과를 얻을 수 있는 스트레스드-아이(stressed-eye) 기능 또한 포함되어 있다.
시스템 설계자들은 이들 디바이스의 자체적으로 강화된 고유 기능들을 감안하여, BER 테스트, 모니터링, 조정을 실행해야 한다. 특히, 서로 다른 업체가 제공한 디바이스들 각각이 고유한 구현을 가질 수 있으며, 이들 사이에서 BER 테스트, 모니터링, 조정하는 경우 디바이스의 자체적으로 강화된 고유 기능들을 제대로 아는 것이 중요하다.
핫 스왑(Hot Swap) 지원
시리얼 RapidIO 표준에는 보드의 핫 스와핑(hot-swapping)을 지원하는 성능이 있다. 따라서 AMC70K2000 베이스밴드 프로토타입 보드와 같은 보드에 장착되는 ATCT 관리 기능을 보완한다.
앞서 언급한 소프트웨어를 지원하는 오류 복구 레지스터 옵션을 사용하여 링크가 방해 받거나 별도 보드 상의 포트 사이에서 AckID 값들의 매치가 원활히 되지 않 때 링크 파트너에서 트랜잭션 AckID를 재동기화 할 수 있다.
특히, 이러한 기능은 이번 기술원고에서 예시로 들고 있는 시스템에서 설명한 현장 대체 스위치 및 베이스밴드 보드를 지원하는데 유용하다.
시리얼 RapidIO 규격에 따라 호스트에 의해 발생되는 리셋 컨트롤 심볼이 전체 디바이스를 리셋하고, 이에 따라 포트 자체 역시 리셋할 수 있다. 이 경우, 모든 AckID의 리셋이 가능하나 디바이스를 전원 인가시의 값과 라우트 테이블로 리셋하기 때문에 런타임 시스템에는 적합하지 않을 수 있다.
런타임 시스템에 있어서 구성 요건과 라우팅 정보가 그대로 유지되어야 하며, 그렇지 않으면 트래픽이 시스템을 통해 라우팅되지 않는다.
리셋 컨트롤 심볼을 수신하는 포트만 리셋하는 전체 디바이스 리셋에 대한 비(non)-시리얼 RapidIO 표준 오버라이드(override)가 이 프로세스 지원을 위해 실행된다.
따라서 링크 파트너의 AckID가 동기화되지 않고 패킷이 더 이상 링크 상에서 전송되지 않더라도, 파트너 중 하나가 계속적으로 물리계층에서 리셋 컨트롤 심볼을 발행하여 전체 디바이스가 아닌 해당 포트만을 리셋할 수 있다.
모듈 하드웨어 지원을 위해 구성 가능한 포트
시리얼 RapidIO 규격은 표준 1x 또는 4x 포트를 정의한다. 4x 포트는 중복성을 위해 0이나 2 레인 상에서 1x 포트로 낮춰 질 수 있다. 이러한 1x/4x 포트 매핑(port mapping)의 경우 ATCA 및 microTCA의 보조(subsidiary) 시리얼 RapidIO패브릭(fabric) 구성에 도입된다.
대부분의 베이스밴드 시스템이 명확한 대역폭 및 포트 속도와 대역폭 요건을 가지고 있음에도 불구하고, 일부 시스템은 동일한 하드웨어가 펨토(femto), 마이크로(micro), 피코(pico), 혹은 매크로(macro) 시스템 경계에 다리 역할을 할 수 있도록 확장 가능하다.
이를 용이하게 하기 위해 시리얼 RapidIO구성요소(특히 스위치)를 찾아 시리얼 RapidIO 규격 이상으로 강화된 조합성(configurability)을 가능하게 한다.
강화 포트는 주어진 4x 포트로부터 여러 개의 1x 포트를 지원하도록 재구성된 소프트웨어일 수 있다. 이 경우에 핀 카운트 활용을 최적화하여, 궁극적으로 하드웨어 설계자의 비용을 절감한다.
결론
시리얼 RapidIOTM는 시스템의 토대 역할을 하며, 선호받는 임베디드 인터커넥트 베이스밴드로 인지되고 있다. 3세대와 그 이상의 베이스밴드 성능 및 기능을 더욱 강화할 수 있도록 2~3세대 시리얼 RapidIO 디바이스는 자체적 고유 기능들을 추가적으로 제공한다.