3dwoo大學簡體電腦書店
開源RISC-V處理器架構分析與驗證
( 簡體 字)
作者:吳慶波、張凡、張留洋、吳喜廣類別:1. -> 電腦組織與體系結構 -> 單晶片 -> RISC-V
出版社:清華大學出版社開源RISC-V處理器架構分析與驗證 3dWoo書號: 56339
詢問書籍請說出此書號!
有庫存
NT售價: 395
出版日:1/1/2024
頁數:608
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787302626497 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
第一部分處理器指令集架構
第1章RISCV指令集架構淺析0031.1指令集架構003
1.1.1復雜指令集計算機與精簡指令集計算機003
1.1.2經典指令集005
1.1.3RISCV009
1.2RISCV指令集簡介010
1.3RISCV基礎指令集011
1.3.1算術與邏輯操作指令013
1.3.2控制轉移指令017
1.3.3內存訪問指令019
1.3.4控制和狀態指令021
1.4RISCV擴展指令集023
1.4.1RV32M整數乘除法指令023
1.4.2RV32A原子指令024
1.4.3RV32C壓縮指令027
1.4.4RV32F單精度浮點指令034
1.4.5RV32D雙精度浮點指令039
1.5RISCV64位基礎指令044
1.6RISCV特權指令046
1.7本章小結047開源RISCV處理器架構分析與驗證目錄第二部分處理器微架構
第2章微架構頂層分析0512.1流水線051
2.1.1RISCV指令集052
2.1.2流水化實現053
2.1.3流水線性能055
2.1.4流水線冒險058
2.1.5分支預測063
2.1.6標量流水線局限性063
2.2Ariane微架構064
2.2.1Ariane簡介064
2.2.2頂層接口065
2.2.3流水線架構068
2.2.4數據流071
2.2.5模塊層次072
2.3本章小結074
第3章指令提取075
3.1指令提取概述075
3.2分支預測算法076
3.2.12位飽和計數器077
3.2.2兩級分支預測器078
3.2.3Gshare分支預測器079
3.2.4分支目標緩沖器080
3.2.5返回地址堆棧080
3.3指令提取單元設計081
3.3.1整體設計081
3.3.2指令重對齊085
3.3.3分支檢測087
3.3.4分支預測088
3.3.5指令隊列089
3.3.6取指地址091
3.4本章小結091
第4章指令譯碼092
4.1指令譯碼概述092
4.1.1壓縮指令093
4.1.2譯碼異常094
4.2指令譯碼單元設計095
4.2.1整體設計095
4.2.2壓縮指令解碼098
4.2.3標準指令譯碼100
4.3本章小結102
第5章指令發射103
5.1單發射和多發射103
5.2順序發射和亂序發射104
5.3指令動態調度105
5.4指令發射單元設計108
5.4.1整體設計108
5.4.2Scoreboard模塊實現113
5.4.3Issue_Read_Operands模塊實現116
5.5本章小結116
第6章指令執行117
6.1指令執行概述117
6.2指令執行單元設計119
6.2.1整體設計119
6.2.2LSU模塊設計123
6.2.3FLU模塊設計126
6.2.4FPU模塊設計131
6.3本章小結137
第7章指令提交138
7.1指令提交概述138
7.2指令提交單元設計139
7.2.1整體設計140
7.2.2Commit_Stage模塊實現142
7.2.3Controller模塊實現146
7.3本章小結148
第8章存儲管理149
8.1緩存原理149
8.1.1緩存組織結構150
8.1.2緩存寫入策略152
8.1.3緩存替換算法153
8.1.4緩存優化155
8.2緩存設計156
8.2.1整體設計156
8.2.2指令緩存模塊設計158
8.2.3數據緩存模塊設計160
8.3存儲管理部件166
8.3.1虛擬內存167
8.3.2地址轉換170
8.4存儲管理部件設計176
8.5本章小結179
第9章中斷和異常180
9.1中斷和異常概述181
9.2異常處理機制183
9.2.1異常處理過程183
9.2.2寄存器說明184
9.3中斷控制平臺189
9.3.1中斷源190
9.3.2中斷目標192
9.3.3中斷處理流程192
9.4中斷和異常設計實例193
9.4.1異常產生和處理193
9.4.2PLIC模塊195
9.4.3CLINT模塊199
9.5本章小結200
第三部分處理器驗證
第10章UVM簡介20310.1UVM概述203
10.1.1驗證方法學概述204
10.1.2驗證方法學的發展史205
10.2UVM基本概念206
10.2.1UVM類的說明207
10.2.2UVM樹形結構209
10.2.3UVM運行機制210
10.3UVM組件介紹219
10.3.1uvm_test219
10.3.2uvm_env221
10.3.3uvm_agent222
10.3.4uvm_driver224
10.3.5uvm_monitor225
10.3.6uvm_scoreboard225
10.3.7uvm_sequence和uvm_sequencer225
10.3.8referencemodel228
10.3.9tb_interface228
10.4本章小結229
第11章RISCV驗證框架230
11.1通用驗證框架230
11.1.1驗證測試點232
11.1.2驗證層次233
11.1.3驗證透明度236
11.1.4驗證激勵約束240
11.1.5驗證檢測機制244
11.1.6驗證集成環境246
11.2RISCV驗證特點249
11.2.1指令發包器隨機性249
11.2.2指令集模擬器準確性251
11.2.3覆蓋率模型完備性252
11.3本章小結253
第12章RISCV指令發生器254
12.1RISCVDV概述254
12.1.1特性簡介254
12.1.2驗證流程255
12.1.3測試用例集256
12.2RISCVDV使用方法256
12.2.1軟件安裝257
12.2.2運行指令發生器258
12.2.3命令說明259
12.2.4YAML配置261
12.3RISCVDV結構分析264
12.3.1仿真激勵xaction264
12.3.2Generator267
12.3.3測試用例269
12.3.4擴展說明270
12.4本章小結271
第13章RISCV指令集模擬器272
13.1RISCV指令集模擬器概述272
13.2Spike概述273
13.2.1特性簡介273
13.2.2軟件棧分析274
13.3Spike使用方法275
13.3.1軟件安裝275
13.3.2命令解析275
13.3.3運行示例277
13.3.4Log文件分析277
13.3.5運行Linux278
13.4Spike源代碼分析279
13.4.1代碼目錄結構279
13.4.2靜態結構281
13.4.3啟動流程282
13.5Spike擴展284
13.5.1定制Log284
13.5.2擴展指令286
13.5.3擴展外設286
13.6本章小結288
本書從處理器指令集架構入手,介紹了RISCV指令集架構,在此基礎上對處理器微架構進行闡述,同時,以Ariane核為例詳述微架構中指令提取、指令譯碼、指令發射、指令執行和指令提交,以及存儲管理、中斷和異常處理。除RISCV核之外,本書還涉及處理器驗證,其中包括UVM、RISCV驗證框架的搭建、指令發生器和模擬器。
本書適合作為大專院校學生學習RISCV指令集微架構以及芯片驗證的入門教材,也可供RISCV處理器設計與驗證相關工程技術人員或研究人員參考。
RISCV是基于精簡指令原則的開源指令集架構。該項目2010年始于加州大學伯克利分校,采用開源BSD License。RISCV指令集可自由地用于任何目的,允許任何人設計、制造、銷售RISCV芯片和軟件,而不必支付給任何公司專利費。其目標是成為一個通用的指令集架構,能適應包括從最袖珍的嵌入式控制器到最快的高性能計算機等各種規模的處理器。與現有其他指令集架構相比,RISCV架構有著鮮明的特點和優勢。
(1) 開源和免費。開源意味著開發者可以針對特定應用場景進行定制優化,免費意味著RISCV可以幫助開發者有效降低CPU設計成本。
(2) 模塊化和簡潔。模塊化設計和簡潔的基礎指令可以讓使用RISCV技術的芯片設計者開發出很簡單的RISCV CPU,特別是在嵌入式和物聯網(Internet of Things,IoT)等領域對功耗和代碼體積有較高限制的應用場景。
(3) 靈活和可擴展性。RISCV架構預留大量的編碼空間用于自定義擴展,并定義了4條用戶指令供用戶直接使用,該特性在安全或者IoT領域有著廣泛的需求。
2015年,RISCV基金會成立,它是開放、協作的軟硬件創新者社區,指導未來發展方向并推動RISCV的廣泛應用。同時,在我國也成立了中國開放指令生態(RISCV)聯盟和中國RISCV產業聯盟來推動RISCV在我國的發展。
雖然RISCV目前的生態還處于初級階段,但是越來越多的產業界巨頭對RISCV有著強烈的興趣并紛紛加入RISCV基金會,RISCV極有可能像Linux那樣開啟開源芯片設計的黃金時代。從中國的自主可控生態建設來看,從零開始建立互相兼容的RISCV生態當下也許是最好的時機,可以期待在不久的將來,RISCV的生態就可以挑戰x86和ARM的地位。
全書由13章組成,分為三大部分。第1章為第一部分——處理器指令集架構,主要介紹指令集相關基礎概念及RISCV指令集架構。第2~9章為第二部分——處理器微架構,主要內容為RISCV CPU微架構設計及邏輯實現,從微架構和流水線設計原理著手,詳細介紹RISCV指令集架構CPU的設計方法,并以開源處理器核Ariane為例,介紹RISCV處理器的實現細節。第10~13章為第三部分——處理器驗證,主要內容為RISCV CPU驗證,著重介紹如何基于當前主流驗證方法UVM構建RISCV CPU驗證平臺,并完成CPU核的驗證工作。
希望本書能夠成為RISCV處理器愛好者的入門圖書,為RISCV處理器在國內的普及和發展貢獻綿薄之力。
感謝鵬城實驗室自主可控項目組參與本書編寫的所有成員,編寫過程中有著大量的代碼分析、資料整理和文稿校對工作,他們的付出使得本書能夠最終成文。同時,還要感謝清華大學出版社各位編輯的大力支持,他們認真細致的工作保證了本書的質量。
由于編者水平有限,書中難免有疏漏和不足之處,懇請讀者批評指正!

編者2023年11月
pagetop