硬件寄存器
編輯在數字電子,特別是計算中,硬件寄存器通常是由觸發器組成的電路,通常具有許多類似于存儲器的特性,例如:
- 一次讀取或寫入多個位的能力,以及
- 使用地址以類似于內存地址的方式選擇特定寄存器。
然而,它們的顯著特點是它們還具有普通存儲器以外的特殊硬件相關功能。 因此,從不同的角度來看,硬件寄存器就像是帶有附加硬件相關功能的存儲器; 或者,存儲電路就像只存儲數據的硬件寄存器。
硬件寄存器用于軟件與xxx設備的接口。 軟件寫入它們以向設備發送信息,并讀取它們以從設備獲取信息。 一些硬件設備還包括對軟件不可見的寄存器,供其內部使用。
根據它們的復雜性,現代硬件設備可以有很多寄存器。 標準集成電路通常將其外部暴露的寄存器記錄為電子元件數據表的一部分。
功能
編輯硬件寄存器的典型用途包括:
- 某些功能的配置和啟動,尤其是在初始化期間
- 緩沖存儲,例如 顯卡的顯存
- 不同類型的輸入/輸出 (I/O)
- 狀態報告,例如某個事件是否在硬件單元中發生,例如調制解調器狀態寄存器或線路狀態寄存器。
讀取xxx單元(CPU 之外的計算機硬件)中的硬件寄存器涉及使用處理器發出的加載或存儲指令訪問其內存映射 I/O 地址或端口映射 I/O 地址。 硬件寄存器是用字尋址的,但有時只使用讀入或寫出到寄存器的字的幾位。
商業設計工具可簡化和自動化硬件、固件、硬件驗證、測試和文檔的內存映射寄存器規范和代碼生成。
寄存器可以是讀/寫、只讀或只寫的。
通常避免使用只寫寄存器。 它們適用于在寫入時引起瞬態動作但不存儲要讀取的持久數據的寄存器,例如“重置xxx設備”寄存器。 在無法為寄存器數據回讀所需的相對較大的邏輯電路和信號路由提供門的設計中,它們可能是xxx的選擇,例如 Atari 2600 游戲機的 TIA 芯片。 但是,只寫寄存器使調試更加困難,并導致讀-修改-寫問題,因此首選讀/寫寄存器。 在 PC 上,只寫寄存器使得高級配置和電源接口 (ACPI) 很難在進入睡眠模式時確定設備的狀態,以便在退出睡眠模式時恢復該狀態,
注冊品種
編輯選通寄存器具有與普通硬件寄存器相同的接口,但它們不存儲數據,而是在每次寫入(或在極少數情況下讀取)時觸發一個動作。 它們是一種信號傳遞方式。
寄存器通常以它們可以容納的位數來衡量,例如,8 位寄存器或 32 位寄存器。
設計人員可以通過多種方式實現寄存器,包括:
- 注冊文件
- 標準靜態內存
- 個人人字拖
- 高速核心內存
除了可以用軟件讀寫的程序員可見的寄存器外,許多芯片還有用于狀態機和流水線的內部微架構寄存器; 例如,注冊內存。
標準
編輯SPIRIT IP-XACT 和 DITA SIDSC XML 定義了內存映射寄存器的標準 XML 格式。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/195842/