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

CPU設計實踐教程——從數字電路到計算機組成

( 簡體 字)
作者:楊全勝、錢瑛、任國林、王曉蔚、吳強類別:1. -> 電子工程 -> FPGA
譯者:
出版社:清華大學出版社CPU設計實踐教程——從數字電路到計算機組成 3dWoo書號: 53656
詢問書籍請說出此書號!

有庫存
NT售價: 295

出版日:10/1/2020
頁數:323
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302548195
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
作者序:

譯者序:

前言:

計算機系統能力培養是一項綜合性、理論性和實踐性都很強的教改活動。在教育部高等學校計算機類專業教學指導委員會、國家級實驗教學示范中心聯席會計算機學科組、計算機學會體系結構專委會、美國Xilinx公司等機構、組織和企業的大力推動下,高校計算機專業計算機系統能力培養工作得到長足進展,全國眾多高校都積極加入到這一工作中。
東南大學計算機科學與工程學院與國家級計算機實驗教學示范中心(東南大學)是最早參與該項活動的單位。早在2003年就整合了硬件主要課程和系統軟件編譯原理的相關內容,開設了“計算機系統綜合課程設計”,2011年又在教育部高等學校計算機類專業教學指導委員會主持下參與了計算機系統能力培養的實踐教學研究活動。多年來,在教育部計算機教指委、國家級實驗教學示范中心聯席會計算機學科組和東南大學計算機學院領導的關心下,東南大學計算機學院摸索出了一套完整的基于計算機系統能力培養的貫通式實踐課程體系。
本書涵蓋了這套課程體系中有關CPU設計相關課程的實驗方案,其中包括“數字邏輯電路實驗”、“計算機組成原理實驗”和“計算機組成課程設計”3門實踐課的內容。本書力求做到課程實踐的貫通性,以設計能運行31條MIPS指令的單周期和多周期MinisysQ1 CPU為最終目標,將3門實踐課的內容連通,做到自底向上、層層遞進、逐步完善。
在具體的實踐內容安排上,既保證了全書內容的完整性,又可以作為3門獨立的實踐課。在實驗的形式上,兼顧原理圖設計與硬件描述語言Verilog HDL設計,既強調結構描述和數據流描述,也兼顧行為描述方式。
為了順應當前EDA技術的發展,本書注重IP核的設計與應用。本書放棄了傳統數字電路與計算機組成原理實驗中用74系列芯片搭建的實驗方式,注重讓學生學會自行設計具有一定邏輯功能的應用電路和根據邏輯需要簡化電路的方法。同時,本書還特別強調學生要學會利用EDA工具,通過仿真時序來檢查電路的正確性。
本書主要章節安排和實踐教學建議如下。
第1章概述。簡單介紹了計算機系統和EDA工具及其應用。本章內容適合在計算機組成原理實驗之前講解,其中EDA工具適合在數字邏輯電路實驗前講解。
第2章Minisys實驗板介紹。介紹本書所使用的實驗平臺。盡管本書中大多數實驗在原理上與平臺無關,但具體到實現,則與平臺有很大關系。書中所有實驗的最終下板實現都是在Minisys實驗板上完成,資源包中的約束文件也是按照該實驗板設計。
第3章Verilog HDL語言基礎。介紹了Verilog HDL語言。本書大多數實驗都是用Verilog HDL語言設計的。因此本章是能夠完成本書實驗的關鍵,應該在“數字邏輯電路”課程中安排課時講解本章內容。如果學生熟悉C語言,則可以著重講解與C語言的不同和具有硬件特性的部分,這樣學時數可以略少,多給學生練習。
第4章數字邏輯電路實驗。本章共設計了11個實驗專題,大部分實驗專題由幾個小實驗組成。本書所有實驗軟件均采用Xilinx Vivado開發軟件,但書中沒有安排專門的篇幅介紹該軟件,而是在第一次使用該軟件的某項功能的時候,再提供詳細的操作步驟。因此,本章前兩個實驗尤為重要,建議即使不想做這章實驗的讀者,也務必完成前兩個實驗。本章圍繞CPU設計所需要的基本器件展開,因此比較適合作為計算機專業“數字邏輯電路”課程的實驗內容。




第5章計算機組成部件實驗。本章共設計了5個實驗,大部分實驗由幾個小實驗組成。如果開設了專門的計算機組成原理課程設計,則本章內容只作為“計算機組成原理”課內小實驗,完成CPU基本部件的設計。如果沒有專門開設計算機組成原理課程設計,則本章可以和第6章合并,作為計算機組成原理實驗內容。
第6章MinisysQ1單周期CPU的設計。本章首先介紹CPU的基本結構和工作原理,以及CPU設計的大致流程。然后介紹目標系統MinisysQ1處理器。最后,通過多個實驗,逐步完成MinisysQ1單周期CPU的設計。本章可作為本科計算機專業“計算機組成課程設計”的基礎實驗內容。
第7章MinisysQ1匯編語言程序設計。本章主要是針對程序員,比較詳細地講解了MinisysQ1匯編語言以及匯編語言程序設計的技巧。本章適合在“計算機組成原理”課程中作為匯編程序設計的實驗內容。
第8章多周期MinisysQ1 CPU的設計。本章在單周期CPU的基礎上,通過多個實驗修改數據通路。增加相關部件和狀態機,完成了多周期CPU的設計。本章適合作為計算機專業“計算機組成課程設計”的選做內容。
本書的大部分實驗是在介紹了原理的基礎上,要求讀者獨立完成設計。不同于大多數教程,本書并不給出實驗的完整設計答案。因此,本書更適合作為高等院校本科生相關課程的實踐(實驗)教材,而并不太適合讀者自學,請讀者留意這個問題。
本書在設計每個實驗的時候,主要包括如下內容。
實驗目的: 介紹本實驗要達到的目標。
實驗內容: 介紹本實驗要完成的內容。
實驗預習: 學生需要預先復習和掌握的知識,一般也會在這部分給出實驗原理。
實驗步驟: 給出實驗比較詳細的步驟,幫助學生完成實驗。
思考與拓展: 給出一些討論題目或難度更高的設計要求,供學有余力的學生完成。
編者在“中國大學MOOC”網站開設了慕課“計算機系統綜合設計”(目前評分為滿分5.0),讀者可以與本書配套進行學習,效果更好。
本書配套的學習資源包可以從清華大學出版社網站www.tup.com.cn下載,相關問題可以聯系404905510@qq.com。
本書由東南大學計算機科學與工程學院楊全勝副教授、南京工程學院計算機工程學院錢瑛老師、東南大學成賢學院電子與計算機學院院長王曉蔚副教授、東南大學計算機科學與工程學院任國林副教授和吳強高級工程師編寫,楊全勝副教授負責統稿工作。
東南大學計算機科學與工程學院羅繼明、李林、徐言、江仲鳴、樊飛、王飛、楊英豪、徐皕埽它P學參與了本書實驗的驗證及繪圖工作。東南大學計算機學院2003—2018屆全體本科學生用實踐驗證了本課程內容的正確性,還幫助完善了課程內容。
本書的撰寫和與之相關的教改活動得到了清華大學楊士強教授、北京航空航天大學馬殿富教授、東南大學翟玉慶教授、同濟大學王力生教授、浙江大學施青松老師、中國農業大學黃嵐教授、哈爾濱工業大學(深圳)薛睿老師的熱情指導。與本書相關的教改活動得到了美國Xilinx(賽靈思)公司陸佳華先生以及依元素科技有限公司的大力支持。在此,對所有幫助我們的老師和同學表示衷心的感謝。另外,還要特別感謝清華大學出版社的編輯在編寫本書期間給予的極大幫助。
由于編者水平有限,書中難免會有不足之處,殷切希望廣大同仁和讀者批評指正。
編者
于南京江寧九龍湖畔
2019年7月
內容簡介:

本書以設計能運行31條MIPS指令的單周期和多周期Minisys-1 CPU為最終目標,力求做到課程實踐的貫通性,將與CPU設計相關的“數字邏輯電路實驗”、“計算機組成原理實驗”和“計算機組成課程設計”三門實踐課的內容打通,做到自底向上,層層遞進,逐步完善。本書可作為高等院校計算機專業“數字邏輯電路實驗”、“計算機組成原理實驗”和“計算機組成課程設計”三門實踐課的教材,對工程技術人員也具有參考價值。
目錄:

第1章概述
1.1計算機系統概述
1.1.1計算機系統層次
1.1.2計算機硬件的基礎部件
1.1.3計算機系統組成
1.1.4計算機存儲結構類型
1.1.5計算機指令集類型
1.1.6單周期、多周期和流水線處理器
1.1.7思考與拓展
1.2EDA工具及其運用
1.2.1EDA工具的分類
1.2.2EDA技術的運用
1.2.3思考與拓展
第2章Minisys實驗板介紹
2.1Minisys實驗板概述
2.1.1主芯片XC7A100T關鍵資源
2.1.2Minisys實驗板資源
2.2Minisys板上存儲器
2.2.1DDR3SDRAM
2.2.2SRAM
2.2.3FlashMemory
2.3時鐘
2.4基本I/O設備
2.4.1撥碼開關與LED燈
2.4.2按鍵開關
2.4.34×4矩陣鍵盤
2.4.47段數碼管
2.4.5VGA模塊
2.4.6蜂鳴器
2.4.7麥克風
2.4.8思考與拓展
第3章VerilogHDL語言基礎
3.1VerilogHDL設計初步
3.1.1VerilogHDL設計流程簡介
3.1.2VerilogHDL語言與C語言的比較
3.1.3基本的VerilogHDL模塊
3.2VerilogHDL語言要素


3.2.1詞法
3.2.2數據類型
3.2.3寄存器和存儲器
3.3VerilogHDL的描述風格
3.3.1結構描述方式
3.3.2數據流描述方式
3.3.3行為描述方式
3.4VerilogHDL的行為語句
3.4.1結構說明語句
3.4.2塊語句
3.4.3賦值語句
3.4.4條件分支語句
3.4.5循環控制語句
3.4.6編譯預處理語句
3.4.7思考與拓展
3.5有限狀態機
3.5.1有限狀態機的基本概念
3.5.2用VerilogHDL語言設計有限狀態機
第4章數字邏輯電路實驗
4.1Vivado工具與VerilogHDL語言的使用
4.1.1撥碼開關與LED燈——熟悉Vivado和實驗臺
4.1.2可配置輸入端口數和數據寬度的“與門”IP核設計
4.1.3多種基本門電路的IP核設計
4.1.474系列基本邏輯門電路芯片的設計
4.2多路選擇器的設計與IP核封裝
4.2.11位2選1多路選擇器——使用IP核
4.2.2可配置輸入端口數和數據位寬的多選1多路選擇器——IP核設計
4.2.38選1多路選擇器74151芯片的設計
4.2.432位多路選擇器的設計
4.3譯碼器、比較器和編碼器的設計
4.3.174138譯碼器的設計
4.3.274682比較器的設計
4.3.3優先編碼器的設計
4.4加法器的設計
4.5鎖存器和觸發器的設計
4.5.1同步RS觸發器設計
4.5.2異步清零和置1的D觸發器設計
4.6寄存器文件的設計
4.6.1帶有異步清零和wen使能端的D觸發器的設計
4.6.28位寄存器的設計
4.6.3寄存器文件的設計
4.7分頻器、計數器和脈沖寬度調制器的設計
4.7.1分頻器的設計
4.7.2計數器的設計
4.7.3帶模計數器的設計
4.7.4脈沖寬度調制器的設計
4.88位7段數碼管控制的設計
4.8.11位7段數碼管控制器的設計
4.8.28位7段數碼管控制器的設計
4.8.3六十進制數字時鐘的設計
4.9移位寄存器的設計
4.9.14位移位器的設計
4.9.2并轉串輸出模塊的設計
4.9.38位桶形移位器的設計
4.9.432位桶形移位器的設計
4.10狀態機的設計
4.10.1摩爾狀態機檢測“1101”序列
4.10.2米里狀態機檢測“1101”序列
4.11綜合實驗:一個邏輯電路小系統的設計
第5章計算機組成部件實驗
5.1加減法器的設計
5.1.1可變位寬的加減法器IP核的設計
5.1.28位加減法器的設計
5.2乘法器的設計
5.2.1無符號數乘法器的設計
5.2.2有符號數乘法器的設計
5.2.3利用Vivado自帶的乘法器IP核進行乘法器的設計
5.3除法器的設計
5.3.1無符號數除法器的設計
5.3.2有符號數除法器的設計
5.4運算器的設計
5.4.18位運算器的設計
5.4.2用BlockDesign設計8位運算器
5.5存儲器的擴展
5.5.1使用IP核和存儲器位擴展技術設計存儲器
5.5.2使用IP核和存儲器字擴展技術設計存儲器
第6章MinisysQ1單周期CPU的設計
6.1CPU的結構與工作原理
6.1.1CPU的功能與結構
6.1.2CPU的工作原理
6.2CPU的設計流程
6.2.1分析指令系統
6.2.2確定CPU結構的參數
6.2.3設計數據通路
6.2.4設計譯碼單元和控制單元
6.3目標系統MinisysQ1概述
6.4MinisysQ1的寄存器和指令系統
6.4.1MinisysQ1的寄存器組
6.4.2MinisysQ1的指令系統概述
6.4.3MinisysQ1指令集詳解
6.5MinisysQ1單周期CPU設計
6.5.1預備知識
6.5.2MinisysQ1數據通路的設計
6.5.3創建Minisys項目
6.5.4MinisysQ1控制單元的設計
6.5.5MinisysQ1時鐘的設計
6.5.6MinisysQ1程序ROM單元的設計
6.5.7MinisysQ1取指單元的設計
6.5.8MinisysQ1譯碼單元的設計
6.5.9MinisysQ1執行單元的設計
6.5.10MinisysQ1存儲單元的設計
6.6MinisysQ1CPU的簡單接口的設計
6.6.1為MinisysQ1加I/O功能
6.6.224位LED的設計
6.6.324位撥碼開關的設計
6.6.4思考與拓展
6.7MinisysQ1CPU的頂層設計與下載
6.7.1頂層文件的設計
6.7.2頂層文件的仿真
6.7.3整體項目的下板驗證
第7章MinisysQ1匯編語言程序設計
7.1MinisysQ1匯編語言
7.1.1指令的匯編語句格式
7.1.2匯編偽指令
7.1.3匯編程序結構
7.2MinisysQ1匯編程序設計
7.2.1程序常見功能的MinisysQ1匯編語言實現
7.2.2MinisysQ1匯編練習
第8章多周期MinisysQ1CPU的設計
8.1多周期CPU的基本結構
8.1.1多周期CPU的基本思想
8.1.2多周期CPU的基本結構
8.2多周期CPU的設計
8.2.1數據通路修改
8.2.2多周期MinisysQ1狀態機設計
8.2.3相關部件的修改
參考文獻
序: