S 总线具有 32 个地址位,如 SBus Specification(S 总线规范)中所述。下表介绍 Ultra 2 如何使用地址位。
表 A–2 Ultra 2 S 总线地址位
位 |
说明 |
---|---|
0 - 27 |
这些位是 S 总线卡用于寻址该卡的内容的 S 总线地址行。 |
28 - 31 |
供 CPU 用于选择其中一个 S 总线插槽。这些位会生成 SlaveSelect 行。 |
此寻址方案将生成表 A–1 中显示的 Ultra 2 地址。其他实现可能会使用不同数量的地址位。
Ultra 2 具有七个 S 总线插槽,其中四个是物理插槽。插槽 0 到 3 可供 S 总线卡使用。插槽 4-12 为保留插槽。插槽的使用情况如下:
插槽 D、E 以及 F 并非实际物理插槽,而是指板载直接内存访问 (direct memory access, DMA) 控制器、SCSI 控制器、以太网控制器以及音频控制器。为方便起见,会将这些设备类视为插入了插槽 D、E 以及 F。
某些 S 总线插槽是仅从属插槽。需要 DMA 功能的驱动程序应使用 ddi_slaveonly(9F) 来确定其设备是否位于具有 DMA 功能的插槽中。有关此函数的示例,请参见attach() 入口点。