W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
當(dāng)大部分計算機配備有 PCI 或 ISA 接口總線, 大部分老式的基于 SPARC 的工作站使用 SBus 來連接它們的外設(shè).
SBus 使一個非常先進的設(shè)計, 盡管它已出現(xiàn)很長時間. 它意圖是處理器獨立的(盡管只有 SPARC 計算機使用它)并且為 I/O 外設(shè)板做了優(yōu)化. 換句話說, 你不能插入額外的 RAM 到 SBus 槽位( RAM 擴展板即便在 ISA 世界也已被忘記很長時間了, 并且 PCI 不再支持它們). 這個優(yōu)化打算來簡化硬件設(shè)備和系統(tǒng)軟件的設(shè)計, 代價是主板的一些增加的復(fù)雜性.
這個總線的 I/O 偏好導(dǎo)致了使用虛擬地址來傳送數(shù)據(jù)的外設(shè), 因此不必分配一個連續(xù)的 DMA 緩沖. 主板負責(zé)解碼虛擬地址并映射它們到物理地址. 這要求連接一個 MMU(內(nèi)存管理單元)到總線; 負責(zé)這個任務(wù)的芯片組稱為 IOMMU. 盡管比在接口總線上使用物理地址更復(fù)雜, 這個設(shè)計被很大地簡化, 由于 SPARC 處理器一直設(shè)計為保持 MMU 內(nèi)核和 CPU 內(nèi)核獨立(要么是物理上地, 要么至少在概念上). 實際上, 這個設(shè)計選擇被其他的智能處理器設(shè)計所共享并且全面受益. 這個總線的另一個特性是設(shè)備板采用大塊地理式尋址, 因此沒有必要實現(xiàn)一個地址解碼器在每個外設(shè)或者處理地址沖突.
SBus 外設(shè)使用 Forth 語言在它們的 PROM 中來初始化它們自己. 選擇 Forth 是因為解釋器是輕量級的, 并且因此, 可輕易在任何一個計算機系統(tǒng)固件中實現(xiàn). 另外, SBus 規(guī)范規(guī)定了驅(qū)動處理, 使兼容的 I/O 設(shè)備輕易適用到系統(tǒng)中并且在系統(tǒng)啟動時被識別. 這是一個大的步驟來支持多平臺設(shè)備; 相比我們熟悉的以 PC 為中心的 ISA 之類它是一個完全不同的世界. 但是, 它不能成功, 因為許多商業(yè)的原因.
盡管當(dāng)前的內(nèi)核版本提供了對 SBus 設(shè)備的很多全特性的支持, 這個總線現(xiàn)在用的很少, 以至于在這里它不值得詳細描述. 感興趣的讀者可查看源代碼 arch/sparc/kernel 和arch/sparc/mm
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: