協處理器

協處理器

  協處理器(coprocessor),一種芯片,用於減輕系統微處理器的特定處理任務。例如,數學協處理器可以控制數字處理;圖形協處理器可以處理視頻繪製。例如,intel pentium 微處理器就包括內置的數學協處理器。
 
  協處理器可以附屬於ARM處理器。一個協處理器通過擴展指令集或提供配置寄存器來擴展內核處理功能。一個或多個協處理器可以通過協處理器接口與ARM內核相連。
 
  協處理器可以通過一組專門的、提供load-store類型接口的ARM指令來訪問。例如協處理器15(CP15),ARM處理器使用協處理器15的寄存器來控制cache、TCM和存儲器管理。
 
  協處理器也能通過提供一組專門的新指令來擴展指令集。例如,有一組專門的指令可以添加到標準ARM指令集中,以處理向量浮點(VFP)運算。
 
  這些新指令是在ARM流水線的譯碼階段被處理的。如果在譯碼階段發現是一條協處理器指令,則把它送給響應的協處理器。如果該協處理器不存在,或不認識這條指令,則ARM認爲發生了未定義指令異常。這也使得編程者可以用軟件來仿真協處理器的行爲(使用未定義指令異常服務子程序)。
 
  80486CPU之前有協處理器,提高浮點運算能力,那時cpu較弱纔有的協處理器,現在速度是原來數百倍不止,pc機一般不存在協處理器了。
 
  ARM 微處理器可支持多達 16 個協處理器,用於各種協處理操作,在程序執行的過程中,每個協處理器只執行鍼對自身的協處理指令,忽略 ARM 處理器和其他協處理器的指令。ARM 的協處理器指令主要用於 ARM 處理器初始化 ARM 協處理器的數據處理操作,以及在ARM 處理器的寄存器和協處理器的寄存器之間傳送數據,和在 ARM 協處理器的寄存器和存儲器之間傳送數據。 ARM 協處理器指令包括以下 5 條: — CDP 協處理器數操作指令— LDC 協處理器數據加載指令— STC 協處理器數據存儲指令— MCR ARM 處理器寄存器到協處理器寄存器的數據傳送指令— MRC 協處理器寄存器到ARM 處理器寄存器的數據傳送指令
 
  ARM協處理器包括一下5條:
 
  CDP:協處理器數操作指令。
 
  LDC:協處理器數據加載指令。
 
  STC:協處理器存儲指令。
 
  MCR:ARM處理器寄存器到協處理器寄存器的數據傳送指令。
 
  MRC:協處理器寄存器到ARM處理器寄存器的數據傳送指
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章