다음을 통해 공유


SPB(단순 주변 장치 버스)

SoC(System on a Chip) 통합 회로는 플랫폼 주변 장치에 연결하기 위해 단순하고 낮은 핀 수 및 저전력 직렬 상호 연결을 광범위하게 사용합니다. I2C, SPI 및 UART가 예입니다. SoC 기반 플랫폼의 경우 Windows는 SPB(Simple Peripheral Bus) 하드웨어에 대한 일반적인 추상화 기능을 제공하며, 이 추상화에는 ACPI(고급 구성 및 전원 인터페이스) 네임스페이스의 새로운 지원이 필요합니다.

SPB 컨트롤러 디바이스

SPB 컨트롤러 디바이스는 공급업체에서 할당한 하드웨어 ID(_HID) 및 소비되는 리소스 집합(_CRS)과 함께 네임스페이스에서 식별됩니다.

SPB 네임스페이스 개체

SPB 컨트롤러 및 해당 컨트롤러에 연결하는 주변 장치는 ACPI에 의해 열거됩니다. 직렬 버스 연결 리소스 설명자를 사용하여 연결에 대해 설명합니다. 자세한 내용은 ACPI 5.0 사양의 섹션 6.4.3.8, "연결 설명자"를 참조하세요.

SPB 리소스 설명자

GPIO 연결의 경우와 마찬가지로 SPB 연결은 사용 중인 디바이스에서 새 리소스 설명자를 통해 운영 체제에 설명됩니다. 일반 직렬 버스 리소스 설명자는I2C 연결, SPI 연결 및 UART 연결을 선언하는 데 사용되며 나중에 다른 직렬 버스 유형을 지원하기 위해 확장할 수 있습니다.

이러한 설명자에 대한 리소스 템플릿 매크로는 ACPI 5.0 사양의 "I2CSerialBus(I2C Serial Bus 연결 리소스 설명자 매크로) " 섹션 19.5.55에 설명되어 있습니다.

GenericSerialBus OpRegions

또한 GPIO와 마찬가지로 ACPI 5.0은 SPB 컨트롤러인 GenericSerialBus(ACPI 5.0 사양의 섹션 5.5.2.4.5)와 함께 사용할 OpRegion을 정의합니다. SPB는 통신 버스이므로 GenericSerialBus OpRegions는 SPB 대상 디바이스에 액세스하기 위한 다양한 프로토콜을 지원합니다. 자세한 내용은 ACPI 5.0 사양의 섹션 5.5.2.4.5.3, "GenericSerialBus 프로토콜 사용"을 참조하세요.

종종 SPB를 사용하면 ASL 제어 메서드가 해당 디바이스의 운영 체제 드라이버와 SPB 대상 디바이스에 대한 액세스를 공유해야 합니다. 이러한 액세스의 동기화를 보장하기 위해 ACPI 5.0은 _DLM(Device Lock Mutex) 개체를 정의합니다. 자세한 내용은 ACPI 5.0 사양의 섹션 5.7.5를 참조하세요.