新聞中心

        RISC與CISC

        作者: 時間:2024-08-01 來源:硬十 收藏

        (復雜指令集計算)和RISC(精簡指令集計算)是兩種不同的計算機指令集

        本文引用地址:http://www.104case.com/article/202408/461606.htm


        (Complex Instruction Set Computing)

        • 復雜指令集設計了大量的復雜指令,每條指令可以完成較為復雜的操作。

        • 較少的指令數:因為每條指令可以完成較多的操作,所以總體的指令數較少。

        • 內存使用效率高:由于指令的復雜性,單個指令可以在較少的時鐘周期內完成任務,從而減少內存帶寬的占用。

        • 硬件實現復雜:實現這些復雜指令需要更復雜的硬件邏輯。

        • 常見應用:早期的計算機和一些特定應用中使用較多,如x86

        RISC(Reduced Instruction Set Computing)

        • 精簡指令集:RISC架構設計了一組相對簡單且數量較少的指令,每條指令執行一個非常簡單的操作。

        • 較多的指令數:由于每條指令執行的操作簡單,完成一個任務需要更多的指令。

        • 指令執行速度快:簡單指令可以在一個時鐘周期內完成,從而提高了指令執行速度。

        • 硬件實現簡單:由于指令集的精簡,硬件設計相對簡單且更容易優化。

        • 常見應用:現代嵌入式系統和移動設備中廣泛使用,如ARM架構。

        對比

        • 復雜性:CISC指令復雜,RISC指令簡單。

        • 執行速度:RISC通常具有更快的執行速度,因為每條指令在一個時鐘周期內完成。

        • 指令數:CISC指令數少,但每條指令功能強大;RISC指令數多,但每條指令功能簡單。

        • 硬件設計:CISC硬件設計復雜,RISC硬件設計簡單。

        • 應用領域:CISC多用于臺式機和服務器,RISC多用于嵌入式系統和移動設備。

        這兩種架構各有優劣,具體選擇取決于應用場景和性能需求。

        RISC和CISC的對比

        RISC(Reduced Instruction Set Computer)

        • 定義:RISC是一種執行較少類型計算機指令的微處理器架構。通過減少指令集的數量,可以更快地執行操作。

        • 起源:1974年,紐約約克鎮IBM研究中心的John Cocke提出了RISC的概念。他發現計算機中約20%的指令承擔了80%的工作。

        • 主要特點

          • 指令簡單:RISC設計者將主要精力放在經常使用的簡單指令上,這些指令可以在一個時鐘周期內完成。

          • 指令數少:較少的指令類型需要更少的晶體管和電路元件,從而簡化微處理器設計,提高執行速度。

          • 存儲器操作限制:對存儲器操作有限制,使控制簡單化。

          • 程序復雜性:由于簡單的指令集,實現復雜功能時需要組合多條指令,程序復雜度增加,內存占用較大。

          • 中斷處理:可以在一條指令執行的適當位置響應中斷。

          • CPU芯片電路:包含較少的單元電路,面積小、功耗低。

          • 設計周期短:結構簡單,布局緊湊,設計周期短,易于采用最新技術。

        • 常見處理器:DEC Alpha、ARC、ARM、MIPS、PowerPC、SPARC、SuperH等。

        CISC(Complex Instruction Set Computer)

        • 定義:CISC是一種復雜指令集計算機架構,使用豐富的指令集,每條指令可以完成較為復雜的操作。

        • 主要特點

          • 指令豐富:指令系統比較豐富,有專用指令來完成特定功能。

          • 存儲器操作直接:存儲器操作指令多,操作直接。

          • 程序簡單性:匯編語言程序編寫相對簡單,特別是科學計算及復雜操作的程序設計效率較高。

          • 中斷處理:在一條指令執行結束后響應中斷。

          • CPU芯片電路:包含豐富的電路單元,功能強大,但面積大、功耗高。

          • 設計周期長:結構復雜,設計周期長。

          • 用戶使用:功能強大,實現特殊功能容易。

        • 常見處理器:X86。


        RISC和CISC的區別

        1. 指令系統

        • RISC:專注于簡單、高效的常用指令,通過組合指令完成不常用功能。

        • CISC:提供豐富的指令系統,有專用指令完成特定功能。

        • 存儲器操作

          • RISC:對存儲器操作有限制,控制簡單。

          • CISC:存儲器操作指令多,操作直接。

        • 程序復雜性

          • RISC:程序復雜,需要較大內存空間。

          • CISC:程序編寫相對簡單,設計效率高。

        • 中斷處理

          • RISC:在一條指令執行的適當位置響應中斷。

          • CISC:在一條指令執行結束后響應中斷。

        • CPU芯片電路

          • RISC:單元電路少,面積小、功耗低。

          • CISC:電路單元豐富,面積大、功耗高。

        • 設計周期

          • RISC:設計周期短,易于采用新技術。

          • CISC:設計周期長,結構復雜。

        • 用戶使用

          • RISC:指令規整,性能容易把握,易學易用。

          • CISC:結構復雜,功能強大,實現特殊功能容易。

        • 應用范圍

          • RISC:更適合于專用機。

          • CISC:更適合于通用機。

          這兩種架構各有優劣,具體選擇取決于應用場景和性能需求。

          為什么現在CISC也是由RISC實現?

          如今的CISC處理器都參考了RISC設計,將指令在處理器內翻譯成微碼再工作。

          1. 性能優化

          • 指令解碼和執行效率:RISC核心設計簡單,指令集較少,容易進行指令解碼和執行優化。因此,在現代CISC處理器中,首先將復雜的CISC指令解碼成更簡單的RISC微操作(micro-operations),再由RISC核心執行。這種方式可以提高指令執行效率。


          2. 設計簡化和時間縮短

          • 設計復雜性降低:RISC核心的設計相對簡單,可以簡化處理器設計的復雜性。通過在CISC處理器中采用RISC核心,可以降低設計和驗證的難度,縮短開發周期。


          3. 功耗和面積優化

          • 能效比提升:RISC核心因為其簡單的設計,通常具有較低的功耗和較小的芯片面積。這對于移動設備和嵌入式系統等功耗敏感的應用場景尤為重要。


          4. 靈活性和可擴展性

          • 模塊化設計:通過使用RISC核心,處理器設計可以更加模塊化和靈活。這使得在同一架構下可以更容易地進行不同型號和規格處理器的擴展和開發。


          5. 兼容性和性能平衡

          • 兼顧舊有軟件支持和新性能:現代CISC處理器(如x86架構)需要兼容大量已有的軟件和系統,因此外部接口依然保持CISC架構。但是,內部通過RISC核心執行,可以兼顧性能和兼容性,提供更好的用戶體驗。


          Intel x86架構

          • 微操作:Intel的x86處理器內部使用了一種被稱為“微操作(micro-ops)”的機制,將復雜的x86指令解碼為更簡單的微操作,然后由內部的RISC風格的執行單元處理。

          • 超標量和超流水:現代x86處理器利用超標量和超流水技術,同時執行多條微操作,以提高指令級并行度和處理速度。




        關鍵詞: RISC-V CISC 架構

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 恩平市| 孟州市| 宁安市| 高雄市| 盐津县| 伊吾县| 宣化县| 黑河市| 潢川县| 凌云县| 柞水县| 大宁县| 开封市| 广宁县| 茶陵县| 华阴市| 库尔勒市| 洪湖市| 遂宁市| 临武县| 蕉岭县| 英山县| 双辽市| 张家口市| 赤峰市| 瓦房店市| 米脂县| 广汉市| 肇源县| 井陉县| 名山县| 舒兰市| 绵竹市| 高雄市| 贺州市| 和政县| 大庆市| 宜阳县| 万宁市| 莱州市| 会泽县|