SPI, 모토로라 (현 Freescale) 에서 개발한 동기 일련 통신 프로토콜,마이크로 컨트롤러와 센서와 같은 주변 장치를 연결하는 임베디드 시스템에서 보편화되었습니다., 메모리 모듈 및 디스플레이. 그 인기는 유연성, 고속 기능 및 간결한 하드웨어 구현에서 비롯됩니다.
표준 SPI 프로토콜은 네 개의 주요 신호 라인을 사용합니다.
SPI는 마스터-스래브 구성에서 작동하며 마스터가 모든 통신을 시작합니다. 이론적으로 풀 듀플렉스 통신을 지원하지만 대부분의 LCD / OLED 응용 프로그램은 반 듀플렉스 모드를 사용합니다.이 프로토콜의 전환 레지스터 같은 동작은 동시에 양방향 데이터 전송을 가능하게 합니다., 비록 실용적인 구현은 종종 순차적인 명령과 데이터 단계를 필요로 한다.
디스플레이 컨트롤러는 일반적으로 두 가지 SPI 변종을 구현합니다: "3-waya SPI"와 "4-waya SPI", 주로 명령어와 데이터를 구별하는 접근 방식에 의해 구별됩니다.
전통적인 4선 구성은 다음을 포함합니다.
이 아키텍처는 C/D 라인 (때로는 A0로 표기) 을 사용하여 별도의 명령어 및 데이터 레지스터를 유지하는 병렬 인터페이스 컨트롤러를 반영합니다.
간소화된 3선 버전은 전용 C/D 라인을 제거하고, 대신 데이터 스트림 내에서 이 정보를 암호화합니다:
여기서, 추가 비트 (보통 MSB) 는 전송이 명령어 (1) 또는 데이터 (0) 를 포함하는지 여부를 나타냅니다. 이는 표준 8 비트 전송 대신 9 비트 전송을 효과적으로 만듭니다.
일부 컨트롤러는 물리적으로 네 개의 와이어를 사용하면서 3 와이어 데이터 인코딩을 사용합니다. 더 복잡한 변종은 읽기 / 쓰기 기능을 인코딩하기 위해 열 번째 비트를 통합 할 수 있습니다.단일 데이터 라인을 통해 쌍방향 통신을 만드는.
3선 SPI는 물리적 연결을 줄이지만, 비표준 전송 길이는 하드웨어 SPI 구현을 복잡하게 만들 수 있습니다.유연 한 SPI 컨트롤러 를 가진 현대 프로세서는 9 비트 전송 을 수용 할 수 있다, 그러나 많은 전통적인 시스템은 4 와이어 SPI를 구현하는 것이 더 간단합니다.
SPI의 변동 레지스터와 같은 구조는 특히 다이지 체인 장치에 적합합니다.
이 접근법은 멀티 디바이스 시스템을 단순화하지만, 체인 길이에 비례한 지연 시간을 도입하고 모든 디바이스가 데이지 체인을 지원하도록 요구합니다.
SPI 구현을 마스터하는 것은 디스플레이 기술로 작업하는 임베디드 개발자에게 필수적입니다.3선 및 4선 SPI 사이의 선택은 특정 하드웨어 기능과 컨트롤러 요구 사항에 달려 있습니다.3선 연결 경제를 제공하지만, 4선은 표준 SPI 하드웨어와 호환성을 유지합니다. 이러한 뉘앙스를 이해하는 것은 임베디드 프로젝트에 최적의 디스플레이 통합을 보장합니다.