VHDL/FPGA 微處理機原理與軟核發展實務

賈證主、薛文彬、吳志淦

  • 出版商: 全華圖書
  • 出版日期: 2006-12-01
  • 定價: $550
  • 售價: 9.0$495
  • 語言: 繁體中文
  • ISBN: 9572152742
  • ISBN-13: 9789572152744
  • 相關分類: FPGA
  • 已絕版

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

相關主題

商品描述

本書特色

1.本書搭配可視化MCU實體監控系統,可使讀者輕而易舉掌握微控制器之工作原理,進而學習如何設計一顆屬於自己的微控制器。
2.讀完本書將擁有實際規劃及設計微控制器之能力。

 

本書內容

本書內容除了核心CPU設計之外,更包含週邊記憶體、計時/計數器、中斷控制器、串列通訊器以及PWM控制器等設計實務。搭配可視化MCU實體監控系統,使讀者輕而易舉掌握微控制器之工作原理,進而學習如何設計一顆屬於自己的微控制器。讀完本書將使您擁有實際規劃及設計微控制器之能力!其內容原理與實務並重,第一篇著重在VHDL設計語法之重點回顧;第二篇主要介紹CH01的內部元件及週邊擴充電路之VHDL描述方式,內容有四則運算ALU的設計、單/雙向通用及特殊暫存器的設計、程式狀態控制系統的設計、程式記數器設計、程式分支、中斷、返回系統設計、單雙向記憶體的設計、匯流排的設計以及指令解碼系統的設計等;第三篇則介紹一套創新並經精心設計的可視化MCU實體監控系統,它使CH01內部硬體架構及控制訊號透明化,以提供微處理機原理與應用課程一個非常友善的學習平台。本書適合私立大學、科大電子、電機、資工系「微處理機實習」課程。

<目錄>

第1篇 微處理與VHDL導論
第1章 微處理機導論1-1
1-1 微處理機簡介1-1
1-1-1 微處理機的定義1-1
1-1-2 微處理機的功用及架構1-1
1-1-3 廣義的微處理機(微控制器)1-2
1-1-4 Von Neuman與Harvard架構1-3
1-1-5 RISC與CISC1-3
1-2 微處理器發展簡史1-4
1-2-1 第一顆微處理器1-4
1-2-2 摩爾定律1-4
1-2-3 一些中低階微處理器的發展1-5
1-3 微處理器發展現況1-6
1-3-1 記憶體擴充與升級1-7
1-3-2 多媒體介面1-7
1-3-3 內建週邊控制電路1-7
1-3-4 低功率消耗1-7
1-3-5 高執行效率1-7
1-3-6 強化運算能力1-7
1-3-7 發展SOPC軟核1-8
1-3-8 單晶多核1-8
1-3-9 結 語1-9
第2章 數目系統2-1
2-1 數目表示法2-1
2-1-1 十進位表示法2-2
2-1-2 二進位表示法2-2
2-1-3 八進位表示法2-3
2-1-4 十六進位表示法2-3
2-2 數目表示法的轉換2-3
2-2-1 十進位整數轉成N進位整數2-3
2-2-2 十進位小數轉成N進位小數2-6
2-2-3 二進位、八進位與十六進位之互換2-9
2-3 二進位加法及減法2-12
2-3-1 二進位無號數之加法運算2-12
2-3-2 二進位有號數表示法2-12
2-3-3 二進位有號數減法運算2-15
2-3-4 1'S補數及2'S補數在算術運算上的比較2-20
2-3-5 溢 位2-20
2-4 浮點表示法2-22
2-4-1 單精度表示法2-22
2-4-2 雙精度表示法2-23
第3章 VHDL設計概論3-1
3-1 快速認識VHDL3-1
3-1-1 VHDL的意義3-1
3-1-2 VHDL的沿革3-1
3-1-3 VHDL的基本架構3-2
3-1-4 VHDL的數位訊號模式3-5
3-1-5 常用的VHDL數位訊號型別3-6
3-2 描述區域的界定3-9
3-3 區域性的訊號指定3-11
第4章 VHDL的基本語法4-1
4-1 共時性語法(Concurrent Statements)4-1
4-1-1 WITH SELECT與組合電路設計4-1
4-1-2 WHEN ELSE與組合電路設計4-5
4-1-3 FOR GENERATE與組合電路設計4-8
4-1-4 FOR GENERATE的巢狀架構4-15
4-2 順序性語法(Sequential Statememts)4-18
4-2-1 PROCESS的區塊架構4-18
4-2-2 PROCESS區塊的共時性4-19
4-2-3 完整的IF敘述4-20
4-2-4 不完整IF敘述的架構4-24
4-2-5 巢狀且具混合架構的IF敘述4-30
4-2-6 完整 CASE WHEN 的架構4-34
4-2-7 完整CASE WHEN的應用4-35
4-2-8 不完整CASE WHEN的架構與應用4-38
4-2-9 完整CASE WHEN架構與應用4-47
4-2-10巢狀CASE WHEN的敘述架構4-53
4-2-11巢狀CASE WHEN的應用4-54
4-2-12LOOP與WAIT UNTIL敘述4-57
4-2-13巢狀for loop架構與next、exit的應用4-59
4-2-14wait until 敘述4-60
第5章 VHDL與組合電路設計5-1
5-1 多工器5-1
5-2 解多工器5-3
5-3 解碼器5-5
5-3-1 n對2n解碼器5-5
5-3-2 七段解碼器5-6
5-4 編碼器5-7
5-4-1 2n對n編碼器5-7
5-4-2 十進位編碼器5-8
5-4-3 優先權編碼電路5-9
5-5 加減法器5-11
5-5-1 一個全加器5-11
5-5-2 漣波進位加法器5-12
第6章 VHDL與時序電路設計6-1
6-1 暫存器的合成6-1
6-1-1 D型正反器的描述6-1
6-1-2 T型正反器的描述6-3
6-1-3 JK正反器的描述6-4
6-2 二進位計數器6-6
6-2-1 二進位上數計數器6-6
6-2-2 二進位下數計數器6-7
6-2-3 二進位自訂範圍上/下數計數器6-9
6-2-4 不規則計數器6-11
6-3 除頻元件6-13
6-3-1 上數除頻6-13
6-3-2 下數除頻6-15
6-3-3 奇數除頻6-17
第7章 微處理機中的運算元件設計7-1
7-1 二合一漣波進位加/減法器7-1
7-1-1 硬體架構7-1
7-1-2 VHDL描述語法7-2
7-2 可進行有號數溢位判斷之加減法電路7-4
7-2-1 含有溢位判斷的電路7-4
7-2-2 VHDL描述語法7-5
7-2-3 運算結果解讀7-7
7-3 參數式N位元前膽式進位加減法電路7-8
7-3-1 相關知識7-8
7-3-2 前膽式進位的設計規律性7-10
7-3-3 前膽式進位加法器參數式VHDL描述語法7-12
7-4 位元串列式加法器7-15
7-4-1 硬體架構7-16
7-4-2 VHDL控制電路說明7-16
7-4-3 VHDL程式主體7-18
7-5 位元串列式二合一加/減法器7-20
7-5-1 硬體架構7-20
7-5-2 VHDL程式主體7-21
7-6 乘法電路7-24
7-6-1 行為模式之組合式陣列乘法器7-24
7-6-2 組合式陣列乘法電路7-24
7-6-3 位移累加乘法電路7-30
7-6-4 位元串列輸出入乘法器7-34
7-7 長除法電路7-39
7-7-1 除法運算電路的硬體架構7-39
7-7-2 VHDL描述語法7-42
第2篇 CH01內部結構設計
第1章 微控器軟核CH01簡介1-1
1-1 CH01的特色1-1
1-2 CH01的架構1-1
1-2-1 CH01輸出入界面1-2
1-2-2 CH01的中央處理單元1-3
1-2-3 CH01的暫存器列1-3
1-2-4 記憶體1-4
1-2-5 中斷模式1-5
1-3 CH01的指令集1-5
1-4 CH01的指令格式說明1-9
1-4-1 第0號指令-空指令1-9
1-4-2 第1號指令群-累積器位移及旋轉指令1-10
1-4-3 第2號指令群-暫存器間之算術邏輯運算指令1-11
1-4-4 第3號指令群-暫存器搬移及資料堆疊讀寫指令1-15
1-4-5 第4號指令-副程式及中斷返回指令1-18
1-4-6 第5號指令群-間接定址記憶體讀寫指令1-19
1-4-7 第6號指令群-位元設定及清除指令1-21
1-4-8 第7號指令群-暫存器遞增遞減指令1-23
1-4-9 第8號指令-暫存器值不為零之條件分支指令1-24
1-4-10第9號指令群-位元值條件分支指令1-25
1-4-11第10號指令群-立即資料之算術邏輯運算指令1-26
1-4-12第11號指令群-區塊條件分支、跳躍及副程式呼叫指令1-27
1-4-13第12號指令-RAM之直接定址寫入指令1-29
1-4-14第13號指令-RAM之直接定址讀取指令1-30
1-4-15第14號指令-ROM之直接定址讀取指令1-31
1-4-16第15號指令-立即資料寫入指令1-31
1-4-17暫存器內容相等之分支判斷等效程式1-32
1-4-18八位元二進位/BCD之轉換程式1-33
1-4-19影響程式狀態暫存器psr的指令1-34
第2章 CH01的狀態系統與指令解碼系統
     設計2-1
2-1 CH01的工作分級2-1
2-2 狀態系統的設計2-2
2-3 CH01的系統重置2-5
2-4 指令解碼系統設計2-5
第3章 CH01的ALU設計3-1
3-1 ALU的基本算術單元設計3-1
3-1-1 硬體架構3-1
3-1-2 VHDL描述語法3-4
3-2 ALU的邏輯單元設計3-5
3-2-1 硬體架構3-5
3-2-2 VHDL描述語法3-6
3-3 具有四則運算功能的ALU結構設計3-7
3-3-1 基本算術單元的運用3-7
3-3-2 輸出入暫存器的運用3-8
3-3-3 完整電路架構3-9
2-3-4 參數式四則運算ALU的VHDL設計檔3-11
3-3-5 參數式四則運算電路模擬3-16
3-3-6 ALU在CH01中的架構3-18
3-3-7 ALU在CH01中的訊號路徑分析3-19
第4章 暫存器與雙向埠設計4-1
4-1 暫存器的合成條件4-1
4-1-1 訊號指定符號『<=』之意義及應用4-1
4-1-2 變數指定符號『:=』之意義及應用4-3
4-2 一般暫存器(GPR)的設計4-6
4-2-1 單一雙向暫存器設計4-6
4-2-2 一般雙向暫存器列的設計4-8
4-3 特殊暫存器(SFR)設計4-11
4-3-1 累積器(Accumulator)4-11
4-3-2 乘除運算輔助暫存器b4-14
4-3-3 程式狀態暫存器psr4-16
4-4 雙向埠的設計4-18
4-4-1 單一雙向埠的設計4-18
4-4-2 雙向埠列的設計4-21
4-4-3 可單一位元方向設定雙向埠4-22
4-5 CH01的暫存器列及讀寫控制電路4-25
4-5-1 暫存器列讀寫控制電路設計4-28
4-6 CH01的指令暫存器4-30
4-7 CH01的運算元讀取系統4-32
第5章 各類記憶體設計5-1
5-1 唯讀記憶(ROM)的設計5-1
5-1-1 基本ROM的設計5-1
5-1-2 含有三態輸出的ROM設計5-4
5-2 資料隨機存取記憶體(RAM)的設計5-5
5-2-1 單向RAM的設計5-5
5-2-2 雙向RAM的設計5-7
5-3 資料堆疊(STACK)的設計5-9
5-3-1 單向STACK的設計5-9
5-3-2 雙向STACK的設計5-11
5-3-3 雙向記憶元件與資料匯流排的連接5-14
5-4 CH01的記憶體設計5-15
5-4-1 CH01的程式記憶體及資料唯讀記憶體5-15
5-4-2 CH01的資料記憶體與匯流排5-19
第6章 程式分支及返回控制系統設計6-1
6-1 程式計數器6-1
6-2 微處理器的程式分支6-4
6-2-1 相對分支6-4
6-2-2 絕對分支6-6
6-3 CH01分支指令的執行方式6-8
6-3-1 跳 躍6-8
6-3-2 副程式呼叫與返回指令6-11
6-3-3 分支預測6-11
6-4 中 斷6-12
6-4-1 中斷向量6-12
6-4-2 中斷方式6-12
6-4-3 資料堆疊的使用6-13
6-4-4 含有中斷系統的分支電路架構6-13
6-4-5 中斷控制系統6-14
6-4-6 CH01之中斷危障的克服6-18
6-5 CH01的分支/返回系統設計6-19
6-5-1 分支/返回控制系統設計6-19
6-5-2 位址堆疊6-21
6-6 計時/埠/中斷控制系統6-23
第7章 微處理器的週邊擴充電路設計7-1
7-1 非同步位元串列通訊電路(UART)7-1
7-1-1 非同步位元串列傳輸及接收原理7-1
7-1-2 位元串列接收電路設計7-4
7-1-3 位元串列傳輸電路設計7-9
7-2 計時/計數器7-11
7-3 脈寬調變(PWM)電路7-14
第8章 進階問題探討8-1
8-1 管線式電路架構8-1
8-2 管線架構應用於微處理機的設計8-3
8-3 管線的危障8-5
8-3-1 分支的危障8-5
8-3-2 資料的危障8-6
8-4 記憶元件定址空間8-8
8-4-1 一貫定址空間8-8
8-4-2 供使用者設定的一貫定址空間8-10
8-4-3 隔離定址空間8-11
8-4-4 CH01的定址空間8-14
第9章 CH01之除頻元件9-1
9-1 除2元件9-1
9-2 除5元件9-2
9-3 大模數下數除頻元件9-3
9-4 串級除頻元件9-5
第10章 微控制器CH01的建構10-1
10-1 運用元件庫及元件區塊10-1
10-2 VHDL元件檔10-3
第3篇
第1章 可視化MCU實體監控系統簡介1-1
1-1 監控系統規格1-1
1-1-1 內部嵌入軟核之規格1-3
1-1-2 機台面板規格1-4
1-1-3 其它配備規格1-5
1-2 監控系統特色1-6
1-3 指令測試程式1-6
1-3-1 指令測試程式編輯1-6
1-3-2 第0及1號指令測試程式時序分析1-10
1-3-3 第2-1號指令測試程式時序分析1-11
1-3-4 第2-2號指令測試程式時序分析1-12
1-3-5 第2-2號指令測試程式時序分析1-13
1-3-6 第3-3號、第4號及第11號指令測試程式時序分析1-14
1-3-7 第6號指令測試程式時序1-16
1-3-8 第7號及第8號指令測試程式時序1-17
1-3-9 第9號指令測試程式時序1-18
1-3-10第10號指令測試程式時序1-20
1-3-11虛擬指令及第11~15號指令及測試程式時序1-21
第2章 指令單步執行與監控2-1
2-1 監控系統面板之燈號說明2-1
2-2 指令測試程式之燈號監控2-2
2-2-1 第0號指令燈號(nop)2-2
2-2-2 第1號指令燈號2-3
2-2-3 第2-1號指令燈號2-5
2-2-4 第2-2號指令燈號2-10
2-2-5 第3-1號指令燈號2-12
2-2-6 第3-2號指令燈號( push x1,pop x1)2-14
2-2-7 第3-3號指令燈號2-17
2-2-8 第4號指令燈號2-19
2-2-9 第5-1號指令燈號2-21
2-2-10第5-2號指令燈號2-23
2-2-11第5-3號指令燈號2-25
2-2-12第6號指令燈號2-27
2-2-13第7號指令燈號2-29
2-2-14第8號指令燈號2-31
2-2-15第9號指令燈號2-33
2-2-16第10號指令燈號2-35
2-2-17第11號指令燈號2-40
2-2-18第12號指令燈號2-42
2-2-19第13號指令燈號2-44
2-2-20第14號指令燈號2-46
2-2-21第15號指令燈號2-48
第3章 程式發展環境使用說明3-1
3-1 程式編輯環境使用CKC3-1
3-2 程式記憶體的編譯及下載使用QuartusⅡ3-5
3-3 開啟程式記憶體之QuartusⅡ設計檔3-5
3-4 簡易外部中斷範例程式3-8
3-5 簡易計時中斷範例程式13-10
3-6 簡易計數中斷範例程式23-12
3-7 簡易串列通訊中斷範例程式3-13
3-8 簡易直流馬達調速範例程式3-16
附錄A CH01的LCD控制程式
附錄B CH01應用於AES
B-1 前 言附B-1
B-2 AES簡介附B-1
B-3 AES函數運算硬體單元附B-2
B-4 AESMPU的建構附B-3
B-5 AESMPU加解密工作流程附B-7
B-6 AESMPU加解密工作模擬附B-9
B-6-1 鑰匙擴充附B-9
B-6-2 加 密附B-10
B-6-3 解 密附B-12
B-7 AES的效能評估附B-14
附錄C AES指令集及加解密程式