計算機系統設計 (下冊) — 基於 FPGA 的 SoC 設計與實現

魏繼增,郭煒,肖健

買這商品的人也買了...

商品描述

《電腦系統設計》系列教材是在新工科建設的背景下,面向國家“自主可控”信息化發展戰略,圍繞系統能力培養的目標而編寫的。本書為該系列教材的下冊,在上冊所設計的32位MIPS流水線處理器(MiniMIPS32)的基礎上,詳細講授SoC軟硬件設計、集成、測試的方法和流程。全書分為8章,主要包括增強型MiniMIPS32處理器設計,互連總線的集成,存儲系統的設計與集成,常見外設的設計與集成,操作系統移植,面向特定應用領域的SoC設計,基於Xilinx FPGA 和Vivado的IP核設計、封裝及基於IP核的SoC平臺構建等內容,提供微課視頻、電子課件、程序代碼等。書中將SoC設計過程中每個環節所涉及的硬件和軟件的基本概念關聯起來,力爭給讀者建立一個功能完備、層次分明的SoC軟硬件架構。本書可作為高等院校電腦、微電子等專業高年級本科生及研究生的教材或教學參考書,也可作為電腦系統綜合課程設計、數字系統課程設計的實驗指導用書或電腦系統工程師的技術參考書。

目錄大綱

目 錄
章 SoC設計概述t1
1.1 SoC概述t1
1.2 SoC的分類及基本組成t2
1.3 SoC設計的發展趨勢t3
1.3.1 SoC設計技術的發展和挑戰t3
1.3.2 SoC設計方法的發展和挑戰t6
1.3.3 未來的SoCt7
1.4 本書的目標和組織結構t8
第2章 SoC設計流程t10
2.1 軟硬件協同設計t10
2.2 基於標准單元的SoC設計流程t12
2.3 基於FPGA的SoC設計流程t16
2.3.1 SoC FPGA結構t16
2.3.2 面向SoC的FPGA設計流程t17
2.3.3 高層次綜合t18
2.3.4 Versal ACAP和Vitist19
2.4 IP復用的設計方法t21
2.4.1 IP的基本概念與分類t21
2.4.2 IP設計的流程t23
2.4.3 IP核的選擇t27
第3章 基於增強型MiniMIPS32處理器的SoC―MiniMIPS32_FullSySt29
3.1 MiniMIPS32_FullSyS的整體架構t29
3.2 MiniMIPS32_FullSyS的地址空間劃分與映射t31
3.2.1 32位MIPS處理器的虛擬地址空間t31
3.2.2 MiniMIPS32_FullSyS的地址空間劃分t33
3.2.3 固定地址映射單元的設計與實現t34
3.2.4 指令地址仲裁單元的設計與實現t35
3.3 高速緩衝存儲器t36
3.3.1 高速緩衝存儲器概述t36
3.3.2 Cache的性能評價t44
3.3.3 Cache的設計與實現t45
第4章 AXI4總線接口及協議t54
4.1 AXI4總線接口概述t54
4.2 AXI4總線協議t55
4.2.1 AXI4總線結構t55
4.2.2 AXI4總線信號t57
4.2.3 AXI4總線協議的握手機制t60
4.2.4 AXI4總線協議的讀操作時序t62
4.2.5 AXI4總線協議的寫操作時序t63
4.2.6 突發傳輸機制t64
4.3 基於AXI4的MiniMIPS32處理器設計與實現t64
4.3.1 類SRAM接口到AXI4接口的轉換t64
4.3.2 MiniMIPS32處理器的封裝t69
4.4 AXI Interconnect簡介t78
4.4.1 AXI Interconnect的結構t78
4.4.2 AXI Interconnect的互連結構t80
4.4.3 AXI Interconnect的I/O接口信號t82
4.5 基於AXI Interconnect的SoC設計與實現―增強型MiniMIPS32處理器的集成t86
第5章 存儲系統t102
5.1 AXI BRAM控制器t102
5.1.1 AXI BRAM控制器簡介t102
5.1.2 基於AXI Interconnect的SoC設計與實現
―AXI BRAM控制器的集成t108
5.2 非易失存儲器Flasht114
5.2.1 Flash存儲器簡介t114
5.2.2 SPI接口t115
5.2.3 SPI Flash(S25FL128S)t118
5.2.4 AXI Quad SPI IP核t121
5.2.5 基於AXI Interconnect的MiniMIPS32_FullSyS設計
―AXI Quad SPI的集成t129
第6章 外部設備t135
6.1 通用輸入輸出接口t135
6.1.1 GPIO概述t135
6.1.2 AXI GPIO簡介t135
6.1.3 基於AXI Interconnect的MiniMIPS32_FullSyS設計
―AXI GPIO的集成t140
6.1.4 AXI GPIO的功能驗證t146
6.2 UART控制器t165
6.2.1 串口通信概述t165
6.2.2 通用異步收發器(UART)t165
6.2.3 UART傳輸協議t166
6.2.4 AXI Uartlite簡介t167
6.2.5 基於AXI Interconnect的MiniMIPS32_FullSyS設計
―AXI Uartlite的集成t171
6.2.6 AXI Uartlite的功能驗證t176
6.3 定時器t179
6.3.1 定時器概述t179
6.3.2 AXI Timer簡介t180
6.3.3 基於AXI Interconnect的MiniMIPS32_FullSyS設計
―AXI Timer的集成t187
6.3.4 AXI Timer的功能驗證t192
6.4 VGA控制器t198
6.4.1 VGA接口概述t198
6.4.2 RGB三原色模型t200
6.4.3 VGA控制器的時序t201
6.4.4 VGA控制器的設計與實現t204
6.4.5 基於AXI Interconnect的MiniMIPS32_FullSyS設計
―AXI VGA控制器的集成t210
6.4.6 AXI VGA控制器的功能驗證t226
第7章 μC/OS-II操作系統的移植t230
7.1 μC/OS-II操作系統概述t230
7.1.1 操作系統與實時操作系統t230
7.1.2 μC/OS-II簡介t231
7.1.3 μC/OS-II的基本功能t232
7.1.4 μC/OS-II的文件結構t233
7.2 μC/OS-II操作系統的移植t234
7.2.1 μC/OS-II操作系統源碼下載t234
7.2.2 建立μC/OS-II操作系統文件目錄t234
7.2.3 移植μC/OS-II操作系統t235
7.3 μC/OS-II操作系統的功能驗證t245
第8章 面向特定應用的軟硬件設計t250
8.1 RSA加/解密SoC的軟硬件設計t250
8.1.1 RSA公鑰密碼系統簡介t250
8.1.2 RSA公鑰密碼算法的實現t251
8.1.3 AXI RSA128的硬件設計t254
8.1.4 AXI RSA128的集成t256
8.1.5 RSA加/解密SoC的功能驗證t266
8.2 手寫體數字識別SoC的軟硬件設計t271
8.2.1 貝葉斯定理簡介t272
8.2.2 樸素貝葉斯分類器t272
8.2.3 AXI Bayes的硬件設計t274
8.2.4 AXI Bayes的集成t276
8.2.5 手寫體數字識別SoC的功能驗證t286
參考文獻