슬림버스
SLIMbus![]() |
Serial Low-Power Inter-Chip Media Bus(SLIM 버스)는 베이스밴드 또는 애플리케이션 프로세서와 모바일 단말기의 주변 컴포넌트 간의 표준 인터페이스입니다.ARM, Nokia, STMicroelectronics 및 Texas [1]Instruments가 설립한 MIPI Alliance 내에서 개발되었습니다.인터페이스는 많은 디지털 오디오 컴포넌트를 동시에 지원하며 샘플 레이트와 비트 폭이 다른 여러 디지털 오디오 데이터 스트림을 전송합니다.
SLIMbus는 설정 가능한 동기식 2선 시분할다중(TDM) 프레임 구조로 구현됩니다.버스 조정 메커니즘과 메시지 구조를 지원하므로 런타임에 시스템애플리케이션 요구에 맞게 버스 동작 특성을 재구성할 수 있습니다.물리적으로 데이터선(DATA)과 클럭선(CLK)은 멀티드롭 버스토폴로지의 여러 SLIMbus 컴포넌트를 상호 접속합니다.SLIMbus 디바이스는 SLIMbus 사양에 기재되어 있는 적절한 프로토콜을 사용하여 필요에 따라 버스를 동적으로 "드롭 오프"하고 버스에 "재접속"할 수 있습니다.모바일 단말기 또는 휴대용 제품으로 사용하면 SLIMbus가 PCM, IS2,[2] SSI(디지털 오디오용 동기 시리얼 인터페이스) 등의 레거시 디지털 오디오 인터페이스와 디지털 오디오 컴포넌트의 IC,[3] SPI, 마이크로와이어,[4] UART, GPIO 핀 등의 디지털2 제어 버스의 일부 인스턴스를 대체할 수 있습니다.
역사
- MIPI 동맹은 2003년 가을에 결성되었다.
- 2004년 3월 프랑스 소피아 안티폴리스에서 열린 MIPI Alliance F2F 회의에서 발표된 저속 미디어 링크 버스(LowML)를 포함한 인터페이스 아키텍처.
- MIPI Alliance에 의해 2004년7월에 창설된 LML Investigation Group(LML-IG).첫 만남은 2004년 8월 3일 전화 회의였다.
- LML Working Group(LML-WG; LML 워킹 그룹)은 2004년 4분기에 작성되었습니다.LML WG 헌장은 2004년 12월에 MIPI 이사회에 제출되었습니다.
- 2005년 4월 12일 정식 작업 그룹으로서 첫 회의.
- LML-WG는 2005년 10월 18일 모든 장(v0.55)에 텍스트가 포함된 SLIMbus의 초안을 발표했습니다.
- SLIMbus 사양 v1.00은 2007년 5월 16일에 어댑터에 공개되었습니다.
- 2007년 6월부터 2008년 6월까지, 실장자의 피드백에 근거해, SLIMbus 사양의 개선(불량, 오타, 버그 수정)을 실시했습니다.
- SLIMbus 사양 V1.01은 2008년 12월 3일에 채택자에게 공개되었으며 구현에 권장됩니다.
SLIMbus 디바이스 및 디바이스 클래스
SLIMbus 디바이스 클래스 정의는 디바이스 제어 데이터, 디바이스 동작 및 데이터 전송 프로토콜 지원에 대한 최소 요건을 지정하는 정의입니다.SLIMbus 사양의 버전 1.01 릴리스에서는 Manager, Framer, Interface 및 Generic의 4가지 SLIMbus 디바이스 클래스가 정의되어 있습니다.디바이스 클래스를 추가하지 않고 완전한 SLIMbus 시스템을 구현할 수 있습니다.
매니저 디바이스
Manager 디바이스는 SLIMbus 구성을 담당하며 버스 관리(컴포넌트와 디바이스 관리, 버스 구성 및 동적 채널 할당)를 수행합니다.일반적으로 주변 컴포넌트가 아닌 베이스밴드 또는 애플리케이션프로세서에 배치되어 있습니다.
플레이머 장치
플레이머는 CLK 회선의 클럭 신호를 모든 SLIMbus 컴포넌트에 전달합니다.또, DATA 회선의 프레임 동기 및 프레이밍 정보 채널을 송신하는 로직도 포함되어 있습니다.
인터페이스 디바이스
인터페이스 디바이스는 버스 관리 서비스를 제공하고 물리층의 오류를 감시하며 SLIMbus 컴포넌트 상태에 대한 정보를 보고합니다.또한 컴포넌트 내의 디바이스가 버스 상에서 정상적으로 동작하도록 컴포넌트를 관리합니다.
기능하는 SLIMbus 컴포넌트를 구현하려면 항상 SLIMbus 인터페이스 디바이스를 사용하고 DAC, ADC, 디지털앰프 등의 기능을 실행해야 합니다.
범용 디바이스(기능)
범용 디바이스는 매니저, 플레이머 또는 인터페이스 이외의 디바이스입니다.범용 디바이스는 일반적으로 특정 애플리케이션 기능을 제공하는 디바이스로 간주됩니다.예를 들어 디지털 오디오에서 아날로그(DAC)로 변환하거나 ADC로 변환하는 등입니다.
SLIMbus 컴포넌트
SLIMbus 컴포넌트에는 2개 이상의 SLIMbus 디바이스가 탑재되어 있다.SLIMbus 컴포넌트에는 1개의 SLIMbus Interface Device(INTERFACE; SLIMbus 인터페이스 디바이스)만 있으며, 특정 기능(FUNTION)을 실행하는 다른 타입의 SLIMbus 디바이스가 1개 이상 있을 수 있습니다.
SLIMbus 포트(P)는 디바이스 간의 데이터 흐름에 대한 연결 경로를 제공합니다.SLIMbus 포트는 보통 디지털 오디오 데이터 흐름에 사용되지만 다른 디지털 데이터 흐름에도 사용할 수 있습니다.
포트 기능은 디바이스에 따라 다르며 컴포넌트 데이터 시트에 지정됩니다.일반적인 포트 속성에는 데이터 방향, 즉 입력 전용(싱크), 출력 전용(소스) 또는 입력과 출력 모두, 지원되는 전송 프로토콜, 데이터 폭 등이 포함됩니다.
간단한 SLIMbus 컴포넌트의 예를 다음 그림 1에 나타냅니다.복잡한 SLIMbus 컴포넌트의 예를 다음 그림 2에 나타냅니다.
슬림버스 데이터 및 CLK
모든 SLIMbus 디바이스는 DATA 및 CLK를 사용하여 사용 중인 버스 설정과 동기화, 메시지 및 데이터 수신 및 전송, 디바이스 간의 버스 조정, 충돌 검출 및 경합 해결을 구현합니다.
모든 SLIMbus 컴포넌트(프레이머 디바이스를 탑재한 컴포넌트 제외)에 대해서는 CLK 단자만 입력됩니다.SLIMbus 컴포넌트가 플레이머 디바이스이거나 플레이머 디바이스가 포함되어 있는 경우 CLK 신호는 양방향입니다.
모든 SLIMbus 컴포넌트에 대해 DATA 회선은 양방향이며 Non-Return-to-Zero Inverted(NRZI) 인코딩을 사용하여 버스로 송수신되는 모든 정보를 전송합니다.
DATA 라인은 양 에지에서 구동되며 CLK 라인의 음 에지에서 읽힙니다.데이터 라인은 SLIMbus 디바이스의 특정 동작 모드에 따라 하이, 로우 또는 내부 버스 홀더 회로에 의해 하이 또는 로우 레벨로 구동될 수 있습니다.
SLIMbus 인터페이스 DATA 및 CLK 회선에서는 CMOS와 같은 싱글 엔드, 접지 기준, 레일 간, 전압 모드 신호 및 시그널링 전압은 인터페이스 공급 전압(+1)에 대해 지정됩니다.8 Vdd 또는 +1.2VDD가 허용됩니다).EMI 퍼포먼스상의 이유로 슬루 레이트 제한이 SLIM 버스에 지정되어 있습니다.
SLIMbus 클럭 주파수 및 기어
SLIMbus CLK 라인 주파수는 최대 28MHz의 "루트" 클럭 주파수 범위와 최저 기어에서 최고 기어까지 512배의 범위에서 클럭 주파수를 2배로 변경하는 10 클럭 기어에 의해 결정됩니다.루트 주파수는 CLK 회선의 2배로 정의됩니다(10-G).G=10의 경우 CLK 라인 주파수와 루트 주파수는 동일합니다.
SLIMbus CLK를 정지했다가 재시작할 수도 있습니다.
SLIMbus CLK 주파수 및 데이터 전송 프로토콜은 모든 일반적인 디지털 오디오 변환기 오버샘플링 주파수 및 관련 샘플링 속도를 지원합니다.
셀, 슬롯, 서브프레임, 프레임 및 슈퍼프레임
SLIMbus Frame Structure에는 셀, 슬롯, 프레임, 서브프레임 및 슈퍼프레임의 5가지 구성 요소가 있습니다.
감방
셀은 CLK 라인의 연속된 두 양의 에지로 경계가 지정되고 단일 비트의 정보를 유지하는 DATA 신호의 영역으로 정의됩니다.
슬롯
슬롯은 4개의 연속된 셀(4비트가 MSB에서 LSB 순서로 전송됨)로 정의됩니다.4비트부터 32비트까지 다양한 데이터 조직에 대역폭을 할당하려면 4비트 슬롯을 그룹화할 수 있습니다.
틀
프레임은 192 (0 ~191)개의 연속된 슬롯으로 정의되어 S0 로서 송신되고, 그 다음에 S1, S2 ... 로서 송신됩니다.S191은 그 순서로 되어 있습니다.각 프레임의 첫 번째 슬롯(슬롯 0)은 4비트 프레임 동기 기호를 포함하는 Control Space 슬롯입니다.각 프레임의 슬롯 S96은 4비트의 프레임 정보를 포함하는 Control Space 슬롯이기도 합니다.
액티브 플레이머는 적절한 시간에 모든 프레이밍 정보를 데이터 행에 씁니다.
서브프레임
서브프레임은 제어 공간과 데이터 공간이 인터리브되는 프레임 구조의 분할로 정의됩니다.서브프레임은 하나 이상의 Control Space 슬롯에 이어 0개 이상의 Data Space 슬롯으로 분할됩니다.
아래 그림 4와 같이 서브프레임 길이는 6, 8, 24 또는 32개의 연속된 슬롯(24, 32, 96 또는 128 셀)으로 프로그래밍할 수 있습니다.따라서 프레임당 사용 가능한 서브프레임 수는 각각 32, 24, 8, 또는6 입니다.사용되는 서브프레임 구성은 해당 시점에 지원되는 애플리케이션의 데이터 흐름 요구 사항에 따라 동적으로 변경될 수 있습니다.
제어 공간 슬롯 중 4개는 프레임 동기 기호, 4비트(프레임 정보 워드인 경우), 8비트(가이드 바이트)용으로 예약되어 있습니다.나머지는 보다 일반적인 제어 메시지에 사용할 수 있습니다.
제어 공간에 할당되지 않은 슬롯은 데이터 공간으로 간주됩니다.
슈퍼프레임
슈퍼프레임은 8개의 연속 프레임(1536 슬롯)으로 정의됩니다.슈퍼프레임 내의 프레임에는 프레임0 ~ 프레임7 의 라벨이 붙어 있습니다.
Superframe의 지속시간은 슬롯(즉 셀)으로 정해져 있지만 시간적인 측면에서는 고정되어 있지 않습니다.SLIMbus의 슈퍼프레임 레이트는 SLIMbus 루트 주파수 또는 클럭 기어 중 하나를 변경함으로써 특정 애플리케이션에 맞게 동적으로 변경할 수 있습니다.
채널
SLIMbus DATA 라인의 정보는 Control Space 및 Data Space 채널에 할당됩니다.
Control Space는 버스 구성 및 동기화 정보뿐만 아니라 장치 간 메시지 통신을 전송합니다.Control Space는 필요에 따라 최대 100%의 SLIMbus 대역폭을 사용하도록 동적으로 프로그래밍할 수 있습니다.
Data Space는 존재하는 경우 Isocronous 및 비동기 데이터 스트림과 같은 애플리케이션별 정보를 전송합니다.
SLIMbus 구성 요소는 제어 및 데이터 채널과 전송 프로토콜을 사용하여 서로 제어 및 데이터 정보를 전달하여 필요한 시스템 작동을 달성합니다.메시지는 제어 기능에 사용됩니다.
채널은 한 쌍의 디바이스 간(디바이스 간 통신) 또는 하나의 디바이스와 여러 디바이스 간(브로드캐스트 통신) 또는 메시지채널의 경우 모든 디바이스에서 다른 모든 디바이스(공유)로 확립할 수 있습니다.
제어 채널
Control Space는 Framing, Guide, Message의 3가지 채널로 나뉩니다.
프레임 채널은 각 프레임의 슬롯 0과 96을 점유합니다(모든 서브프레임 길이가 96으로 나누어져 있기 때문에 이러한 슬롯은 항상 사용할 수 있습니다).슬롯 0은 고정 프레임 동기 기호(10112)를 보관 유지하고 슬롯 96은 프레임 정보 워드의 4비트를 보관 유지합니다.슈퍼프레임에서는 32비트의 프레이밍 정보를 사용할 수 있습니다.이들 중 일부는 Superframe 동기화(0x011xxx2)에 사용되는 고정 비트패턴을 보유하고 있으며 다른 일부는 기타 중요한 설정 정보를 보유하고 있습니다.
가이드 채널은 각 슈퍼프레임의 첫 번째 2개의 비프레임 제어 슬롯으로 구성됩니다.이 "guide byte"는 보통 0이지만 제어 메시지가 슈퍼프레임 경계에 걸쳐 있는 경우 해당 메시지의 마지막까지 바이트 수를 나타냅니다.
메시지 채널은 나머지 모든 슬롯으로 구성됩니다.버스 구성 알림, 장치 제어 및 장치 상태 등 다양한 유형의 정보를 제공합니다.
Control Space의 형식은 Framing Information 워드로 전송되는 5비트 서브프레임 모드 식별자에 의해 결정됩니다.서브프레임 길이와 컨트롤 슬롯의 수를 전달합니다.제어 슬롯의 수는 1, 2, 3, 4, 6, 8, 12, 16 또는 24 중에서 선택할 수 있습니다.컨트롤 슬롯의 수가 서브프레임 길이보다 작아야 한다는 제한을 더하면 26개의 유효한 조합이 생성됩니다.서브프레임 길이가 중요하지 않은 "100% 제어 공간"에 대한 특수 인코딩은 27개의 유효한 모드를 생성합니다(모드 1-3, 20 및 30은 유효하지 않습니다).
데이터 채널
데이터 채널은 하나 이상의 연속된 데이터 슬롯(세그먼트)이며 사용 가능한 데이터 공간의 애플리케이션과 크기에 따라 액티브 매니저에 의해 동적으로 생성됩니다.데이터 채널, 즉 세그먼트의 구조는 데이터 속도, 유형, 필드 길이 및 필수 전송 프로토콜과 같은 매개 변수로 정의됩니다.
세그먼트(segment)는 알려진 간격으로 반복되며 자체 대역폭 보장 및 지연 시간을 통해 가상 버스처럼 작동합니다.
아래 그림 5와 같이 세그먼트에는 TAG(2 슬롯), AUX(2 슬롯) 및 DATA 필드가 있습니다.TAG 및 AUX 필드는 옵션입니다.사용되는 경우 TAG 비트는 데이터 채널의 흐름 제어 정보를 전달하고 보조(AUX) 비트는 DATA 필드의 내용과 관련된 측면 정보를 전달합니다.데이터 페이로드가 할당된 DATA 필드 전체를 채울 수도 있고 아닐 수도 있습니다.
데이터 채널 전송 프로토콜 및 흐름 제어
데이터 채널에는 한 번에 정확히 하나의 데이터 소스가 있으며 채널에서 사용되는 전송 프로토콜에 따라 하나 이상의 데이터 싱크가 있을 수 있습니다.
채널 흐름 제어는 필요에 따라 디바이스와 관련된 데이터 유형에 따라 달라집니다.TAG 비트는 흐름 제어 정보를 전송하는 데 사용됩니다.
SLIMbus 디바이스 포트는 적절한 채널 연결 및 연결 해제 메시지를 사용하여 데이터 채널에 연결됩니다.채널에 연결된 포트 간의 데이터 흐름에 대해 SLIMbus는 자주 사용되는 트랜스포트 프로토콜(사용자 정의 트랜스포트 프로토콜 포함)의 소규모 그룹을 지원합니다.이 프로토콜은 데이터 흐름 유형, 흐름 제어 메커니즘 및 추가 응용 프로그램 고유 정보에 대한 사이드 채널(있는 경우)을 정의합니다.운송 프로토콜의 요약은 표 1에 나와 있습니다.
TP | 프로토콜 이름 | 유형 | TAG 필드 슬롯 수 |
---|---|---|---|
0 | Isochronous | 멀티캐스트 | 0 |
1 | 밀린 | 멀티캐스트 | 1 |
2 | 당겼다 | 유니캐스트 | 1 |
3 | 잠김 | 멀티캐스트 | 0 |
4 | 비동기 –-일대다 | 유니캐스트 | 1 |
5 | 비동기 – Half-duplex | 유니캐스트 | 1 |
6 | 확장한 비동기 –-일대다 | 유니캐스트 | 2 |
7 | 확장한 비동기 – 하프 2종. | 유니캐스트 | 2 |
813 | 예약필 | - | - |
14 | 사용자 1Defined | - | 1 |
15 | 사용자 2정의 | - | 2 |
사용자 1 및 2 프로토콜은 SLIMbus의 데이터 전송 메커니즘을 확장하기 위해 사용되며, 사용자 프로토콜 데이터 채널에 연결된 장치가 TAG 및 AUX 비트의 정의와 사용 방법을 알고 있다고 가정합니다.
SLIMbus 시스템
설명만을 목적으로 한SLIMbus 시스템을 다음 그림7에 나타냅니다.모든 구성요소가 서로 다릅니다.이 예에서는 좌측 상단의 SLIMbus 컴포넌트에 프레이머 디바이스(F)가 포함되어 있기 때문에 이 컴포넌트의 CLK 신호는 양방향입니다.
좌측 상단의 SLIMbus 컴포넌트에는 매니저 디바이스(M)도 포함되어 있습니다.단, Manager와 Framer 디바이스를 같은 SLIMbus 컴포넌트에 배치할 필요는 없습니다.
좌측 상단의 SLIMbus 컴포넌트에 표시된 Manager 및/또는 Framer Device는 일반적으로 모바일 단말기를 구축하기 위해 사용되는 베이스밴드 및/또는 애플리케이션 프로세서에 통합할 수도 있습니다.
다음 그림 8은 실제 사용 가능한SLIMbus 시스템의 개념도를 나타내고 있습니다.'M'과 'F'는 각각 Manager 디바이스와 Framer 디바이스를 나타냅니다.또는 시스템의 싱글 마이크를 멀티 마이크 어레이로 대체할 수도 있습니다.오디오 관련 블록을 혼합하여 연결할 수 있습니다.
레퍼런스
- ^ Merritt, Rick (13 February 2006). "Mobile chip interface gets real". EETimes. Retrieved 17 January 2013.
- ^ "I2S bus specification" (PDF). Philips Semiconductors. Retrieved 17 January 2013.
- ^ "The I2C-Bus Specification" (PDF). Philips Semiconductors. January 2000. Retrieved 17 January 2013.
- ^ "AN-452 MICROWIRE Serial Interface" (PDF). Texas Instruments. Retrieved 17 January 2013.
외부 링크
SLIMbus 구현자 정보의 일부 목록은 다음 URL에서 확인할 수 있습니다.
언론 보도
- "MIPI Alliance Rolls Out SLIMbus®". MIPI Alliance. MIPI Alliance, Inc. 9 July 2007. Retrieved 17 January 2013.
- Backman, Juha; Boyce, Kenneth; Kavanagh, Peter; Lambrecht, Xavier; Schuessler, James; Travis, Chris; van Vlimmeren, Bernard; Vansteeg, Genevieve (September 2006). Slimbus: An Audio, Data And Control Interface For Mobile Devices. 29th International Conference: Audio for Mobile and Handheld Devices.
- Lee, Yong-Hwan; Hoon-Ju Chung; Chang-Gu Rho (2008). "Design of Clock Gears for Low-power Media Bis" (PDF). The 23rd International Technical Conference on Circuits/Systems, Computers and Communications. Retrieved 17 January 2013.
- "MIPI® Alliance Delivers Seven Vital Mobile Device Interface Specifications in 2008". Business Wire. 9 February 2009. Retrieved 17 January 2013.