-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

CPU設計實戰

( 簡體 字)
作者:汪文祥,邢金璋類別:1. -> 程式設計 -> 綜合
譯者:
出版社:機械工業出版社CPU設計實戰 3dWoo書號: 54361
詢問書籍請說出此書號!

缺書
NT售價: 495

出版日:4/1/2021
頁數:376
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111674139
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

本書面向初學者,以實戰的方式帶領讀者瞭解CPU設計的流程,並從零開始逐步開發出自己的CPU。本書將計算機組成與體系結構的理論知識和工業實踐充分結合,使讀者在實際的CPU設計與開發過程中更加深入地理解電腦系統的工作原理,掌握CPU設計理念、方法和技術。

本書共分為三個部分,*部分介紹CPU的研發過程以及FPGA、數位邏輯電路等相關知識;第二部分先介紹簡單流水線CPU設計,在此基礎上添加指令、例外、中斷、匯流排、快取記憶體等功能,完成一個具有基本功能的CPU;第三部分介紹如何增加各種高級功能,*終形成一個具有豐富功能的CPU。

本書深入淺出、層次清晰,並融入了典型的CPU開發相關的技術問題,既可以作為高等院校電腦及相關專業本科生和研究生的CPU開發類課程的教材,也可以作為從事CPU相關研發工作的專業人員的參考書。
目錄:

第1章 CPU晶片研發過程概述 1
1.1 處理器和處理器核 1
1.2 晶片產品的研製過程 2
1.3 晶片設計的工作階段 3
第2章 硬體實驗平臺及FPGA設計流程 5
2.1 硬體實驗平臺 5
2.1.1 龍芯CPU設計與體系結構教學實驗系統 5
2.1.2 龍芯電腦系統能力培養遠端實驗平臺 7
2.2 FPGA的設計流程 8
2.2.1 FPGA的一般設計流程 9
2.2.2 基於Vivado的FPGA設計流程 10
2.2.3 Vivado使用小貼士 33
2.3 任務與實踐 35
第3章 數位邏輯電路設計基礎 36
3.1 數位邏輯電路設計與Verilog代碼開發 36
3.1.1 面向硬體電路的設計思維方式 37
3.1.2 行為描述的Verilog程式設計風格 38
3.1.3 自頂向下的設計劃分過程 38
3.1.4 常用數位邏輯電路的Verilog描述 39
3.2 數位邏輯電路功能模擬的常見錯誤及其調試方法 55
3.2.1 功能模擬波形分析 56
3.2.2 波形異常類錯誤的調試 60
3.3 進一步使用Vivado 66
3.3.1 定制同步RAM IP核 66
3.3.2 定制非同步RAM IP核 68
3.3.3 查看時序結果和資源利用率 69
3.4 任務與實踐 69
3.4.1 實踐任務一:寄存器堆模擬 70
3.4.2 實踐任務二:同步RAM和非同步RAM模擬、綜合與實現 71
3.4.3 實踐任務三:數位邏輯電路的設計與調試 72
第4章 簡單流水線CPU設計 74
4.1 設計一個簡單的單週期CPU 75
4.1.1 設計單週期CPU的總體思路 75
4.1.2 單週期CPU的資料通路設計 76
4.1.3 單週期CPU的控制信號生成 88
4.1.4 復位的處理 91
4.2 不考慮相關衝突的流水線CPU設計 92
4.2.1 添加流水級間緩存 92
4.2.2 同步RAM的引入 93
4.2.3 調整更新PC的資料通路 96
4.2.4 不考慮相關衝突情況下流水線控制信號的設計 96
4.3 CPU設計開發環境(CPU_CDE) 97
4.3.1 快速上手CPU設計的開發環境 97
4.3.2 CPU設計開發環境的組織與結構 99
4.3.3 CPU設計開發環境使用進階 113
4.4 CPU設計的功能模擬調試技術 117
4.4.1 為什麼要用基於Trace比對的調試輔助手段 117
4.4.2 基於Trace比對調試手段的盲區及其對策 119
4.4.3 學會閱讀組合語言程式和反彙編代碼 119
4.4.4 CPU調試中要抓取的信號以及如何看這些信號 124
4.5 指令相關與流水線衝突 125
4.5.1 處理寄存器寫後讀數據相關引發的流水線衝突 126
4.5.2 轉移計算未完成 127
4.6 流水線資料的前遞設計 127
4.6.1 前遞的資料通路設計 128
4.6.2 前遞的流水線控制信號調整 130
4.6.3 前遞引發的主頻下降 131
4.7 任務與實踐 131
4.7.1 實踐任務一:簡單CPU參考設計調試 132
4.7.2 實踐任務二:用阻塞技術解決相關引發的衝突 132
4.7.3 實踐任務三:用前遞技術解決相關引發的衝突 133
第5章 在流水線中添加運算類指令 134
5.1 算術邏輯運算類指令的添加 134
5.1.1 ADD、ADDI和SUB指令的添加 134
5.1.2 SLTI和SLTIU指令的添加 135
5.1.3 ANDI、ORI和XORI指令的添加 135
5.1.4 SLLV、SRLV和SRAV指令的添加 135
5.2 乘除法運算類指令的添加 136
5.2.1 調用Xilinx IP實現乘除法運算部件 136
5.2.2 電路級實現乘法器 140
5.2.3 電路級實現除法器 147
5.3 乘除法配套資料搬運指令的添加 154
5.3.1 乘法運算實現為單週期的情況 155
5.3.2 乘法運算實現為多週期流水的情況 155
5.4 任務與實踐 156
第6章 在流水線中添加轉移指令和訪存指令 157
6.1 轉移指令的添加 157
6.1.1 BGEZ、BGTZ、BLEZ和BLTZ指令 158
6.1.2 J指令 158
6.1.3 BLTZAL和BGEZAL指令 158
6.1.4 JALR指令 158
6.2 訪存指令的添加 158
6.2.1 LB、LBU、LH和LHU指令的添加 158
6.2.2 SB和SH指令的添加 159
6.2.3 非對齊訪存指令的說明 160
6.2.4 LWL和LWR指令的添加 162
6.2.5 SWL和SWR指令的添加 164
6.3 任務與實踐 164
第7章 例外和中斷的支持 166
7.1 例外和中斷的基本概念 166
7.1.1 例外是一套軟硬體協同處理的機制 166
7.1.2 精確例外 167
7.2 MIPS指令系統中與例外相關的功能定義 168
7.2.1 CP0寄存器 168
7.2.2 例外產生條件的判定 168
7.2.3 例外入口 170
7.2.4 MFC0和MTC0指令 170
7.2.5 ERET指令 170
7.3 流水線CPU實現例外和中斷的設計要點 170
7.3.1 例外檢測邏輯 170
7.3.2 精確例外的實現 172
7.3.3 CP0寄存器 173
7.3.4 CP0衝突 179
7.4 任務與實踐 180
7.4.1 實踐任務一:添加syscall例外支持 181
7.4.2 實踐任務二:添加其他例外支持 181
第8章 AXI匯流排界面設計 184
8.1 類SRAM匯流排 184
8.1.1 主方和從方 185
8.1.2 類SRAM匯流排界面信號的定義 185
8.1.3 類SRAM匯流排的讀寫時序 186
8.1.4 類SRAM
序: