內容簡介

教讀者制作原創的計算機系統。第1章以介紹CPU為主,同時介紹如何制作存儲程序與數據的內存、輸入與輸出的I/O以及將這些模塊連接起來的總線,這些模塊可以組合成一個簡單的計算機系統。為了讓這個計算機系統運轉起來,第2章介紹電路板的設計和制作。第3章為這個計算機系統編寫程序,並上機測試。

《CPU自制入門》可以幫助軟件工程師了解硬件與底層,開發出高效代碼。硬件工程師可以在該書基礎上設計定制硬件,開發高速計算機系統。相信讀者可以在《CPU自制入門》的閱讀過程中,體會到自制計算機系統的樂趣。
 

目錄

第1章 CPU的設計與實現 
 1.1 序 
 1.2 計算機系統 
 1.2.1 什麼是計算機 
 1.2.2 什麼是CPU 
 專欄 CPU的位寬 
 1.2.3 什麼是內存 
 1.2.4 什麼是I/O 
 專欄 字節序 
 1.2.5 什麼是總線 
 專欄 總線的優缺點 
 1.2.6 小結 
 專欄 計算機相關書籍 
 1.3 數字電路基礎 
 1.3.1 什麼是數字電路 
 1.3.2 數值表達 
 1.3.3 有符號二進制數 
 專欄 比特和字節 
 專欄 1K字節有多大 
 1.3.4 MOSFET的結構 
 1.3.5 邏輯運算 
 1.3.6 CMOS基本邏輯門電路 
 1.3.7 存儲元件 
 專欄 建立時間與保持時間 
 1.3.8 組合電路和時序電路 
 1.3.9 時鍾同步設計 
 1.3.10 小結 
 專欄 數字電路相關書籍 
 1.4 Verilog HDL語言 
 1.4.1 什麼是Verilog HDL 
 1.4.2 電路描述 
 專欄 默認網絡類型 
 專欄 組合電路描述中鎖存器的推定與Don』t care 
 專欄 正邏輯與負邏輯 
 1.4.3 電路仿真 
 專欄 同步電路中信號變化的時序 
 1.4.4 Verilog HDL的仿真環境 
 1.4.5 小結 
 專欄 Verilog HDL相關書籍 
 1.5 系統藍圖 
 1.5.1 目標系統整體介紹 
 1.5.2 關於本章中的代碼 
 專欄 字編址與字節位移 
 1.6 總線的設計與實現 
 1.6.1 總線的設計 
 1.6.2 總線的實現 
 1.6.3 小結 
 1.7 存儲器的設計與實現 
 1.7.1 FPGA的RAM區域 
 1.7.2 ROM的設計與實現 
 1.7.3 小結 
 專欄 存儲器相關書籍 
 1.8 AZ Processor的設計與實現 
 1.8.1 關於CPU 
 專欄 CPI和MIPS值 
 1.8.2 AZ Processor的設計 
 專欄 指令集架構與微架構 
 1.8.3 AZ Processor的實現 
 1.8.4 小結 
 專欄 計算機架構相關書籍 
 1.9 I/O的設計與實現 
 1.9.1 定時器 
 1.9.2 UART 
 專欄 UART實例 
 1.9.3 GPIO 
 1.9.4 小結 
 專欄 I/O相關書籍 
 1.10 AZPR SoC整體連接 
 1.10.1 各模塊的連接 
 1.10.2 時鍾模塊的實現 
 1.10.3 頂層模塊的實現 
 1.10.4 小結 
 1.11 AZPR SoC的仿真 
 1.11.1 仿真模型的編寫 
 1.11.2 Testbench的編寫 
 1.11.3 執行仿真 
 1.11.4 小結 
 1.12 本章總結 
 
第2章 電路板的設計與制作 
 2.1 序 
 2.2 電路板規格
 2.2.1 電路板名稱 
 2.2.2 電路板的構成 
 2.2.3 電路板尺寸 
 2.2.4 電路板層數 
 2.2.5 FPGA選型 
 2.2.6 外圍電路的選定 
 專欄 關於FPGA 
 專欄 關於JTAG 
 2.3 元件選型 
 2.3.1 元件選型標准 
 2.3.2 元件選型 
 2.3.3 元件的選購 
 2.4 電路設計 
 2.4.1 下載規格書 
 2.4.2 配置電路 
 2.4.3 外圍電路 
 2.4.4 電源電路 
 2.4.5 電路板設計環境 
 2.4.6 使用Eagle設計電路圖 
 專欄 關於ULP 
 專欄 Eagle使用方法相關的書籍/說明書 
 2.4.7 完成的電路圖 
 2.5 布局設計 
 2.5.1 電路板設計約束條件及布線策略 
 2.5.2 FPGA板的布局設計 
 2.5.3 電源板的布局設計 
 2.5.4 使用Eagle布局 
 2.5.5 完成的布局 
 2.6 制作元件庫
 2.6.1 制作Symbol 
 2.6.2 制作Package 
 2.6.3 制作Device 
 2.7 電路板3D模型 
 2.7.1 軟件使用說明 
 2.7.2 准備3D模型庫 
 專欄 關於3D模型庫的管理 
 2.7.3 制作電路板模型 
 2.8 制作感光板電路板 
 2.8.1 整體流程 
 2.8.2 制作光罩 
 2.8.3 粘合光罩 
 2.8.4 曝光 
 2.8.5 顯像 
 2.8.6 蝕刻 
 2.8.7 阻焊劑 
 2.8.8 開孔 
 2.8.9 在背面安裝VPort接頭時的處理 
 2.8.10 制作通孔 
 2.8.11 飛線 
 2.9 使用電路板制造服務 
 2.9.1 電路板制造服務 
 2.9.2 DRC 
 2.9.3 輸出Gerber數據 
 2.9.4 檢查Gerber數據 
 專欄 執行DFM檢查的方法 
 專欄 阻焊層遮罩的印刷設置 
 2.9.5 向P板.com公司下單制板 
 專欄 拼板數據的准備 
 2.9.6 向OLIMEX公司下單制板 
 2.10 組裝電路板 
 2.10.1 電源板 
 2.10.2 組裝FPGA板 
 2.11 功能測試 
 2.11.1 識別FPGA 
 2.11.2 診斷程序 
 2.12 本章總結 
 
第3章 編程 
 3.1 序 
 3.2 開發環境 
 3.2.1 准備工作 
 3.2.2 FPGA開發環境 
 3.2.3 ISE WebPACK 
 3.2.4 UrJTAG 
 專欄 cblsrv-0.1_ft2232 
 3.2.5 交叉匯編程序 
 3.2.6第一個程序 
 3.3 串口通信 
 3.3.1 安裝Tera Term 
 3.3.2 編寫程序 
 專欄 子程序 
 專欄 ASCII碼 
 3.3.3 執行程序 
 3.4 程序加載器 
 3.4.1 XMODEM協議 
 3.4.2 編寫程序 
 3.4.3 編寫加載測試程序 
 3.4.4 執行程序 
 3.5 中斷與異常 
 3.5.1 什麼是中斷 
 3.5.2 編寫程序 
 3.5.3 執行程序 
 3.5.4 什麼是異常 
 3.5.5 編寫程序 
 3.5.6 執行程序 
 3.6 七段數碼管 
 3.6.1 什麼是七段數碼管 
 3.6.2 七段數碼管的控制 
 3.6.3 七段數碼管計數器概要 
 3.6.4 編寫程序 
 3.6.5 執行程序 
 3.7 制作一個實用程序 
 3.7.1 功能概要 
 3.7.2 制作程序 
 3.7.3 執行程序 
 3.8 結語 
 
謝辭 
后記 
版權聲明
網路書店 類別 折扣 價格
  1. 新書
    87
    $517