介面與匯流排規格

下列關於讓CPU能讀寫PCI Express裝置的暫存器或記憶體的機制,何者正確?

  1. A開機時由OS等調查裝置所要求的大小,並在BAR(基底位址暫存器)分配位址,使其以記憶體位址的形式呈現
  2. B每個裝置在製造時就決定了固定的位址
  3. CCPU無法讀取裝置的暫存器,所有溝通都透過DMA進行
查看答案與解析

正確答案:A. 開機時由OS等調查裝置所要求的大小,並在BAR(基底位址暫存器)分配位址,使其以記憶體位址的形式呈現

PCI Express裝置會透過BAR告知自身暫存器與記憶體的大小。開機時韌體或OS會調查所有已連接的裝置(列舉,enumeration),並分配位址以避免衝突。之後CPU就像讀寫一般記憶體一樣,讀寫所分配的位址來操作裝置。事後才插入裝置時,同樣會分配位址。

  • A. 正確。作為記憶體映射I/O(memory-mapped I/O)來使用。
  • B. 若是固定位址,裝置之間的位址會互相衝突。
  • C. CPU可以直接讀寫暫存器。
練習這個領域 前往領域頁面

介面與匯流排規格的其他題目

  1. 下列關於PCI Express所使用的MSI(訊息訊號中斷)之特徵,何者正確?
  2. 下列關於表示介面效能的「頻寬」與「延遲(latency)」之差異,何者正確?
  3. 在頻寬10 GB/s、延遲1 µs的連接上,傳送一次64位元組的資料所需時間最接近下列何者?(時間=延遲+資料量÷頻寬)
  4. 對於與裝置之間逐一交換數千次小量資料的程式,下列哪一種加速方法最有效?
  5. 下列關於USB通訊機制的敘述,何者正確?(針對USB4以外的傳統USB)

這個領域的比較