在計算機科學中,指令集架構 (ISA) 是計算機的抽象模型。它也被稱為架構或計算機架構。此外,中央處理單元 (CPU) 是實現 ISA 的場所,被稱為實現。ISA 以不依賴于提供實現之間二進制兼容性的微體系結構的方式指定在該 ISA 實現上運行的機器代碼的行為。
可以通過添加指令或其他功能或添加對更大地址和數據值的支持來擴展 ISA。擴展 ISA 的實現仍然能夠為沒有這些擴展的 ISA 版本執行機器代碼。使用這些擴展的機器代碼只會在支持這些擴展的實現上運行。
簡而言之,指令集是計算機軟件和硬件之間的紐帶。它是處理器理解的一組基本指令。此外,它是關于硬件支持的操作、模式和存儲位置的功能定義以及如何調用和訪問它們的精確描述。換句話說,ISA 定義了處理器支持的指令類型。
在這里,值得注意的是,微體系結構級別僅存在于 ISA 級別之下,因此它與 ISA 定義的計算機支持的基本操作的實現相關聯。我們可以擁有兩個基于相同 ISA 的不同處理器,但具有不同的微架構,具有不同的性能和效率。這使得 ISA 的多個實現可以具有不同的性能、物理尺寸和貨幣成本——除其他外——但它們能夠運行相同的機器代碼。
因此,可以用成本更高、性能更高的機器替換性能較低、成本較低的機器,而無需更換軟件。此外,它還推動了該 ISA 實現的微體系結構的發展,因此 ISA 的更新、更高性能的實現可以使用在前幾代實現上運行的軟件。
使不同的處理器兼容相同的基本指令集——ISA——允許相同的程序在許多不同的微架構處理器上輕松運行。我們首先定義一個 ISA,然后設計符合該 ISA 的不同微架構來實現功能。
擴展處理器的能力并不是一個新概念。處理器可擴展性是該處理器與附加的外部硬件模塊(如 FPGA 或 DSP 內核)的組合,具體取決于該處理器的微架構。
這種擴展允許將特定功能作為指令或指令集加速,從而實現更好的性能。除了加速功能之外,最終用戶還可以通過這個擴展的硬件模塊添加自定義指令,如新算法并增強以前的算法。
審核編輯:郭婷
-
計算機
+關注
關注
19文章
7488瀏覽量
87854 -
指令集
+關注
關注
0文章
222瀏覽量
23378
發布評論請先 登錄
相關推薦
評論