複製鏈接
請複製以下鏈接發送給好友

硬件寄存器

鎖定
任何VXI總線器件,不管其功能如何,都必須有一組配置寄存器,系統通過訪問VME總線上PI口的配置寄存器來識別器件的類型、型號、生產廠家、地址空間與所要求的存儲器空間。僅有這種最低通信能力的VXI總線器件就是寄存器基器件。通過這組公共的配置寄存器、中央資源管理器和基本的軟件模塊,可以在系統初始化時自動進行系統與存儲器配置。
中文名
硬件寄存器
外文名
Hardware register
使用對象
計算機
作    用
系統識別器件類型、型號等
特    點
具有存儲性
技術特點
多種存儲器的結合

硬件寄存器硬件寄存器與通信

器件是組成VXI總線系統最基本的邏輯單元。通常,一個器件將佔據一塊VXI模塊,但也許在一個模塊上實現多個器件和一個器件佔據多個模塊。一個單機箱VXI系統最多可以有256個器件。根據器件所支持的通信協議能力可將其分成寄存器基器件、消息基器件、存儲器器件和擴展器件四類。
VXI模塊必須有一組具有特定地址的專用寄存器,其64KB A16尋址空間的上16KB空間為VXI總線器件所保留。每個VXI器件都有一個用於確定其寄存器在上述尋址空問所在位置的8位邏輯地址。VXI器件的邏輯地址類似於GPIB設備的GPIB地址,可以手動或在系統上電時自動配置。 [1] 

硬件寄存器硬件寄存器訪問

在"Stellaris外設驅動庫”裏,訪問片內外設的庫函數最終都是由在頭文件hw-types-h裏定義的三個硬件寄存器訪問宏函數HWREG( )、HWREGH( )、HWREGB( )實現的。這三個宏函數在定義的時候被聲明為volatile屬性的指針,所以這種訪問不會被編澤器優化掉,即每次讀取時都返回硬件寄存器的當前值,且每次寫人時都會把最新的數值寫人硬件寄存器。

硬件寄存器讀取硬件寄存器

rdhwr提供了(用户模式下的)非特權軟件的直接硬件信息讀取。MIPS32/64規範定義了4個寄存器。操作系統可以通過CP0寄存器HWREna分別獨立控制對各個寄存器的訪問(將第0位置使能,寄存器0,以此類推)。HWREna在系統復位時為全0,因此,軟件需要顯式地將用户訪問權限打開。有特權的代碼可隨時讀取,年NHWREna中的0無關。
這4個寄存器為:
CPUNum(0):當前程序運行的CPU數量,它直接從協處理器0 EBase(CPUNum)域中讀取。
SYNCI-Step(1):L1緩存行的有效大小。緩存行的大小對於用户程序非常重要,因為需要它執行synci指令,使寫入的指令可執行。SYNCI-Step會告訴你“步長”,即相鄰synci之間的地址增幅。SYNC-Step若返No,則表示不需要進行synci操作。
CC(2):用户模式下只讀的CP0 Count寄存器存取用於高精度的計數。如果沒有下面這個寄存器,它並沒有太大的意義。
CCRes(3):告知HCount計數的速度,它是流水線時鐘的除數(如果為2,表示Count每兩個週期增2,即流水線時鐘速率的一半)。 [2] 

硬件寄存器微引擎硬件寄存器

為了實現微控制器的功能,微引擎必須與許多硬件設備交互。大多數此類交互都通過一組硬件寄存器實現。一些硬件寄存器的功能類似於常規處理器的寄存器的功能,寄存器提供一個高速存儲的區域,可以用來保存計算的中間結果。另一些硬件寄存器用於特殊用途,它們根本不用來存儲數值。相反,訪問某個專用寄存器會導致底層硬件執行某種操作。 [3] 
參考資料
  • 1.    何廣軍.現代測試技術原理與應用:國防工業出版社,2012.06
  • 2.    [英]DOMINIC SWEETMAN.MIPS體系結構透視:機械工業出版社,2008.5
  • 3.    (美)科默.網絡處理器與網絡系統設計:機械工業出版社,2004.07