YL19874
9787115480521 9787115364692
手把手教你設計CPU——RISC-V處理器篇
內容簡介
本書是一本介紹通用CPU設計的入門書,以通俗的語言係統介紹瞭CPU和RISC-V架構,力求為讀者揭開CPU設計的神秘麵紗,打開計算機體係結構的大門。
本書共分為四部分。一部分是CPU與RISC-V的綜述,幫助初學者對CPU和RISC-V快速地建立起認識。二部分講解如何使用Verilog設計CPU,使讀者掌握處理器核的設計精髓。三部分主要介紹
蜂鳥E203配套的SoC和軟件平颱,使讀者實現蜂鳥E203 RISC-V處理器在FPGA原型平颱上的運行。四部分是附錄,介紹瞭RISC-V指令集架構,輔以作者加入的背景知識解讀和注解,以便於讀者理
解。
本書不僅適閤CPU或芯片設計相關從業者閱讀使用,也適閤作為大中專院校相關師生學習RISC-V處理器設計(使用Verilog語言)和CPU設計的指導用書。
圖書目錄
一部分 CPU與RISC-V綜述
1章 一文讀懂CPU之三生三世 2
1.1 眼看他起高樓,眼看他宴賓客,眼看他樓塌瞭——CPU眾生相 3
1.1.1 ISA——CPU的靈魂 4
1.1.2 CISC與RISC 5
1.1.3 32位與64位架構 6
1.1.4 ISA眾生相 6
1.1.5 CPU的領域之分 10
1.2 ISA請扛起這口鍋——為什麼國産CPU尚未足夠成功 12
1.2.1 MIPS係——龍芯和君正 12
1.2.2 x86係——北大眾誌、兆芯和海光 13
1.2.3 Power係——中晟宏芯 13
1.2.4 Alpha係——申威 14
1.2.5 ARM係——飛騰、華為海思、展訊和華芯通 14
1.2.6 背鍋俠ISA 15
1.3 人生已是如此艱難,你又何必拆穿——CPU從業者的無奈 17
1.4 *敵是多麼寂寞——ARM統治著的世界 18
1.4.1 獨樂樂與眾樂樂——ARM公司的盈利模式 18
1.4.2 小個子有大力量——無處不在的Cortex-M係列 21
1.4.3 移動*者——Cortex-A係列在手持設備領域的巨大成功 23
1.4.4 進擊的巨人——ARM進軍PC與服務器領域的雄心 25
1.5 東邊日齣西邊雨,道是無晴卻有晴——RISC-V登場 25
1.6 原來你是這樣的“薯片”——ARM的免費計劃 28
1.7 舊時王謝堂前燕,飛入尋常百姓傢——你也可以設計自己的處理器 28
2章 大道至簡——RISC-V架構之魂 29
2.1 簡單就是美——RISC-V架構的設計哲學 30
2.1.1 無病一身輕——架構的篇幅 30
2.1.2 能屈能伸——模塊化的指令集 32
2.1.3 濃縮的都是精華——指令的數量 32
2.2 RISC-V指令集架構簡介 33
2.2.1 模塊化的指令子集 33
2.2.2 可配置的通用寄存器組 34
2.2.3 規整的指令編碼 34
2.2.4 簡潔的存儲器訪問指令 34
2.2.5 *效的分支跳轉指令 35
2.2.6 簡潔的子程序調用 36
2.2.7 無條件碼執行 37
2.2.8 無分支延遲槽 37
2.2.9 零開銷硬件循環 38
2.2.10 簡潔的運算指令 38
2.2.11 優雅的壓縮指令子集 39
2.2.12 特權模式 40
2.2.13 CSR寄存器 40
2.2.14 中斷和異常 40
2.2.15 矢量指令子集 40
2.2.16 自定製指令擴展 41
2.2.17 總結與比較 41
2.3 RISC-V軟件工具鏈 42
2.4 RISC-V和其他開放架構有何不同 44
2.4.1 平民英雄——OpenRISC 44
2.4.2 豪門顯貴——SPARC 44
2.4.3 名校優生——RISC-V 45
3章 亂花漸欲迷人眼——盤點RISC-V商業版本與開源版本 46
3.1 各商業版本與開源版本綜述 47
3.1.1 Rocket Core(開源) 47
3.1.2 BOOM Core(開源) 49
3.1.3 Freedom SoC(開源) 50
3.1.4 LowRISC SoC(開源) 50
3.1.5 PULPino Core and SoC(開源) 50
3.1.6 PicoRV32 Core(開源) 51
3.1.7 SCR1 Core(開源) 51
3.1.8 ORCA Core(開源) 51
3.1.9 Andes Core(商業IP) 52
3.1.10 Microsemi Core(商業IP) 52
3.1.11 Codasip Core(商業IP) 53
3.1.12 蜂鳥E200 Core與SoC(開源) 53
3.2 總結 53
4章 開源RISC-V——蜂鳥E200係列低功耗Core與SoC 54
4.1 與眾不同的蜂鳥E200處理器 55
4.2 蜂鳥E200簡介——蜂鳥雖小,五髒俱全 56
4.3 蜂鳥E200型號係列 57
4.4 蜂鳥E200性能指標 58
4.5 蜂鳥E200配套SoC 59
4.6 蜂鳥E200配置選項 60
二部分 手把手教你使用Verilog設計CPU
5章 先見森林,後觀樹木——蜂鳥E200設計總覽和頂層介紹 65
5.1 處理器硬件設計概述 66
5.1.1 架構和微架構 66
5.1.2 CPU、處理器、Core和處理器核 66
5.1.3 處理器設計和驗證的特點 66
5.2 蜂鳥E200處理器核設計哲學 67
5.3 蜂鳥E200處理器核RTL代碼風格介紹 68
5.3.1 使用標準DFF模塊例化生成寄存器 68
5.3.2 推薦使用assign語法替代if-else和case語法 70
5.3.3 其他若乾注意事項 71
5.3.4 小結 72
5.4 蜂鳥E200模塊層次劃分 72
5.5 蜂鳥E200處理器核源代碼 73
5.6 蜂鳥E200處理器核配置選項 73
5.7 蜂鳥E200處理器核支持的RISC-V指令子集 74
5.8 蜂鳥E200處理器流水綫結構 74
5.9 蜂鳥E200處理器核頂層接口介紹 74
5.10 總結 77
6章 流水綫不是流水賬——蜂鳥E200流水綫介紹 78
6.1 處理器流水綫概述 79
6.1.1 從經典的五級流水綫說起 79
6.1.2 可否不要流水綫——流水綫和狀態機的關係 81
6.1.3 深處種菱淺種稻,不深不淺種荷花——流水綫的深度 81
6.1.4 嚮上生長——越來越深的流水綫 82
6.1.5 嚮下生長——越來越淺的流水綫 83
6.1.6 總結 83
6.2 處理器流水綫中的亂序 83
6.3 處理器流水綫中的反壓 84
6.4 處理器流水綫中的衝突 84
6.4.1 流水綫中的資源衝突 84
6.4.2 流水綫中的數據衝突 85
6.5 蜂鳥E200處理器的流水綫 86
6.5.1 流水綫總體結構 86
6.5.2 流水綫中的衝突 87
6.6 總結 87
7章 萬事開頭難嗎—— *切從取指令開始 88
7.1 取指概述 89
7.1.1 取指特點 89
7.1.2 如何快速取指 90
7.1.3 如何處理非對齊指令 91
7.1.4 如何處理分支指令 92
7.2 RISC-V架構特點對於取指的簡化 97
7.2.1 規整的指令編碼格式 97
7.2.2 指令長度指示碼放於低位 97
7.2.3 簡單的分支跳轉指令 98
7.2.4 沒有分支延遲槽指令 100
7.2.5 提供明確的靜態分支預測依據 100
7.2.6 提供明確的RAS依據 101
7.3 蜂鳥E200處理器的取指實現 101
7.3.1 IFU總體設計思路 102
7.3.2 Mini-Decode 103
7.3.3 Simple-BPU分支預測 105
7.3.4 PC生成 109
7.3.5 訪問ITCM和BIU 111
內容簡介
《自己設計製作CPU與單片機》是一本為有誌於計算機CPU設計的人員所寫的書,不論你是狂熱的友,還是精明的計算機專業工作者。
《自己設計製作CPU與單片機》以作者幾十年學習設計製作CPU與通用單片機的經曆,來告訴你如何從無到有地設計屬於你自己的CPU和可以運行用戶程序的單片機。書中以作者的十幾個CPU設計工程為主綫,展示瞭精簡指令係統RISC和復雜指令係統CISC計算機CPU的設計方法。既有硬件編程,又有原理圖設計,適閤軟硬件人員學習計算機核心技術之用。
《自己設計製作CPU與單片機通過實例告訴讀者,如何創造性地進行計算機産品CPU的立意和設計,介紹瞭人機交互和操作係統內核的設計方法。這是一本對要全麵掌握計算機技術的人員而言必讀的CPU設計製作之書。
圖書目錄
前 言
上篇 CPU設計製作入門
第1章 自己就能設計製造CPU
1.1 自己設計製作CPU有啥意義
1.2 我設計製作CPU的經曆
1.3 電子電路設計製作的新變化
1.4 自己設計CPU的條件
1.5 創新CPU設計的意義
第2章 進入硬件設計的天地
2.1 搭建自己的製造工廠
2.2 設計製造CPU需要熱身
2.3 硬件設計語言Verilog HDL
2.4 Verilog HDL語句和模塊
2.5 Verilog HDL其他常用語句
第3章 自己創造CPU的方法
3.1 深刻理解CPU的結構
3.2 自創CPU的一般步驟
3.3 如何設計自己的指令係統
3.4 指令分析的一般性總結
3.5 讓CPU運行程序
第4章 一個簡單CPU的設計
4.1 創建一個CPU設計工程
4.2 剖析這個CPU設計程序
4.3 CPU行為的描述方法
4.4 如何讓CPU運行軟件程序
4.5 CPU設計工程小結
第5章 自製通用CPU與單片機
5.1 實體結構與器件應用
5.2 通用CPU指令係統設計
5.3 用匯編程序檢驗CPU設計
5.4 外設與CPU接口設計
5.5 設備驅動程序設計
5.6 時鍾設計
5.7 開發闆連接程序設計
5.8 FPGA引腳連接
5.9 操作係統內核設計
5.10 燒製CPU製作單片機
。。。。
這本書最打動我的地方在於它對“手把手教你設計CPU”的承諾,這暗示著一種深入淺齣的教學方式。我一直覺得CPU的設計是一個非常復雜的工程,涉及大量的細節和專業知識。然而,市麵上很多關於CPU設計的書籍要麼過於學術化,充當著教科書的角色,讓人望而卻步;要麼就是過於簡化,流於錶麵,無法真正理解其精髓。我期待這套書能夠打破這種睏境,它能夠以一種循序漸進、由淺入深的方式,引導讀者一步步掌握CPU設計的核心概念和技術。例如,我希望能看到書中對每個設計環節都進行詳細的講解,配以圖示和具體的代碼示例,讓讀者能夠清晰地理解每一步的操作和背後的原理。
評分剛拿到這套書,被書名吸引瞭,尤其是“包郵”這個字眼,雖然和內容沒直接關係,但感覺很接地氣,讓人有種親近感。我一直對計算機底層原理充滿好奇,尤其是CPU是如何工作的,一直停留在高層概念,總覺得缺少瞭點什麼。這套書承諾“手把手教你設計CPU”,聽起來就讓人躍躍欲試。我特彆期待的是,它能夠從最基礎的邏輯門開始,一步步拆解CPU的復雜結構,讓我明白指令是怎麼被執行的,寄存器、ALU、控製單元這些核心部件是如何協同工作的。畢竟,很多資料要麼過於晦澀難懂,要麼就隻是泛泛而談,缺乏深入的實踐指導。我希望這套書能給我帶來那種“豁然開朗”的感覺,能夠真正理解CPU的設計哲學,並且能夠用自己的雙手去實現一個簡單的CPU。
評分這套書給我最大的驚喜在於它能夠將理論與實踐結閤得如此緊密。我一直覺得學習硬件設計,尤其是CPU設計,如果僅僅停留在理論層麵,是很難真正掌握的。這本書不僅僅講解瞭RISC-V架構的原理,還通過“自己設計製作CPU與單片機”的部分,引導讀者進行實際的操作。我迫不及待地想看看書中是如何一步步指導我們從零開始構建一個CPU的。是不是有具體的電路圖,講解具體的硬件實現細節,甚至可能會涉及到一些常用EDA工具的使用方法?我希望它能提供清晰的步驟,即使是初學者也能按照指導完成一個屬於自己的CPU。這樣的學習方式,比單純地閱讀教材要有效得多,能夠大大加深我對CPU設計的理解和掌握程度。
評分我一直對“單片機”這個詞有種特彆的情感,它代錶著一種將復雜功能集成到微小芯片中的智慧。而這本書將“自己設計製作CPU”和“單片機”放在一起,讓我看到瞭將CPU設計理論付諸實踐的可能。我好奇書中是如何將CPU設計與單片機製作聯係起來的。是不是會提供一些基於CPU核心的單片機設計案例?比如,如何構建一個簡單的帶內存、I/O接口的單片機係統?我特彆期待書中能夠指導讀者完成一個能夠運行簡單程序的單片機,這樣纔能真正體會到設計的成就感。同時,我也希望這本書在講解單片機製作時,能夠包含一些硬件焊接、調試等方麵的實用技巧,讓學習過程更加完整。
評分坦白說,我被這本書中“RISC-V處理器篇”這個關鍵詞深深吸引。RISC-V作為一種開源指令集架構,近年來發展勢頭迅猛,受到越來越多工程師和學者的關注。我一直想深入瞭解RISC-V的優勢以及它的設計理念,尤其想知道它與傳統的x86架構在設計思路上有什麼不同。這本書既然以RISC-V為切入點,想必會對這個架構進行詳細的解讀,比如它的指令集特性、模塊化設計等。我特彆期待書中能夠講解如何基於RISC-V進行CPU的設計,而不是僅僅停留在概念介紹。例如,書中是否會提供一套完整的RISC-V CPU的設計流程,包括前端、後端的設計,以及流水綫、分支預測等關鍵技術的實現?這樣的內容對我來說非常有價值。
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 windowsfront.com All Rights Reserved. 靜流書站 版權所有