輔助處理器
輔助處理器 是一種 電腦 處理器,用來輔助強化主要處理器 (中央處理單元 CPU) 的功能。由輔助處理器所執行的運算可能是 浮點 算術,繪圖,訊號處理,字串處理,或是 加密。由於把處理器密集的工作從主要處理器上移到輔助處理器,所以可以增加系統的效能。由於輔助處理器的方式可以使得電腦產品線客製化,因此顧客不需要額外的效能的話,就不必付錢購買。
輔助處理器不一定是通用型處理器。有些輔助處理器無法從記憶體提取指令,執行程式流程控制指令,實行輸出/輸入操作,管理記憶體等等。這些處理器需要主機的主要處理器來提取輔助處理器的指令,以及在一旁處理其他除了輔助處理器功能外的運算。在某些架構下,輔助處理器是通用型電腦,但是在監督的處理器封閉控制之下,只有某些侷限範圍的功能。
由於現今的超大型積體電路小型化的高度先進程度,已經相對地非常少在桌上型電腦架構上看到數學輔助處理器。然而,更強大的繪圖擴充卡和數據機也被視為輔助處理器,儘管這些不是跟數學輔助處理器一樣跟主處理器有非常密切的關聯。
Intel 處理器
原本的 IBM PC 包含有 Intel 8087 輔助處理器的插槽,曾經是使用 PC 來作 CAD 或者數學密集運算的人們非常受歡迎的選購。在那個架構,輔助處理器增快了浮點數學運算速度大約 50 倍的級數。而僅使用 PC 作為文字處理的人,舉例來說,可以省下高價格輔助處理器的錢,因為對於文字處理運算並無法加速效能。
8087 非常密切地與 8088 整合在一起,且負責插入在 8088 指令中的浮點機器碼 運作。一個 8088 缺少了 8087 會把這些指令當成內部的中斷,會直接導致錯誤的產生並且觸發 8087 指令的軟體模擬。在 8 和 16 位元的桌上型電腦世代,另外的浮點輔助運算器的共同來原是 Weitek。Intel 80386 微處理器 使用選購的 "數學" 輔助處理器 (80387) 在硬體中直接地來實行浮點運算。
Intel 80486DX 處理器在晶片上包含了浮點運算硬體。Intel 推出低價的處理器 80486SX,並不包含任何浮點運算硬體,因此也銷售 80487SX 輔助處理器,當安裝時候會主要地關閉主要處理器,因為 80487SX 就是完整的 80486DX,只是某些晶片腳位上的不同。雖然消費者也許會覺得憤慨,當安裝這個升級時候,他們要重要地浪費付一個處理器的錢。但這個市場的策略的確增加了 80486 處理器家族的數量,因此最後也加快了價格的刪減。
Intel 的處理器在 80486 之後整合了浮點運算硬體到主處理器晶片內;整合的優點消除了把浮點處理器當作選購元件銷售的價格優勢。要在適合 75 MHz 的電路板技術上,符合時間延遲,功率消耗,和無線頻率干涉標準,要到達 GHz 範圍的時脈頻率是非常困難的。這些晶片內的浮點處理器也依然視為輔助處理器,因為他們還是與主 CPU 一起平行運作。
Motorola 處理器
Motorola 68000 家族有 68881/68882 輔助處理器來提供 Intel 處理器的類似浮點運算加速。使用 68000 家族的電腦但沒有配備硬體浮點處理器,會在軟體中觸發和模擬浮點指令,儘管比較慢,但是也使得同一個二進位版本的程式執行檔可以在兩種情況下發行。
其他處理器
參見範例 ARM架構。
使用 FPGA (場可程式化邏輯閘陣列, Field-Programmable Gate Array),客製的輔助處理器可以創造來加速某些特定的處理工作,像是數位訊號處理。
有時候一整個電腦是以輔助處理器製作出來,而不是單一個 CPU。舉個例來說,任天堂64的遊戲機就是這個例子。