商品簡介
《FPGA數字邏輯設計教程·Verilog》根據課堂教學的要求和實際操作的需要,以培養實際工程設計能力為目的,系統地介紹了利用Verilog硬件描述語言進行數字電路設計和FPGA開發的方法。其中,第1~4章系統地介紹了數字電路設計的背景及基礎知識;第5~8章詳細地敘述了數字電路的設計方法及其Verilog代碼的實現;第9~13章對存儲器、VGA、PS/2等常見硬件系統的實現做了介紹。
《FPGA數字邏輯設計教程·Verilog》簡明扼要、通俗易懂,大量的實例貫穿始終,書中對每一個實例均給出了在FPGA上的具體實現方法。在內容編排上,由淺入深,將數字電路設計和Verilog語言的學習有機結合在一起,拋棄了傳統的煩瑣單調的語法講解篇章,使讀者在感受數字電路設計樂趣的同時,輕鬆地掌握Verilog語言。此外,通過《FPGA數字邏輯設計教程·Verilog》的學習讀者還能夠了解代表當今數字電路設計前沿的FPGA開發的設計流程。
《FPGA數字邏輯設計教程·Verilog》可作為大學本科相關專業教材和FPGA培訓教材,也可供電子電路工程師和愛好者自學參考。
作者簡介
作者:(美國)哈斯凱爾(Richard E.Haskell) (美國)漢納(Darrin M.Hanna) 譯者:鄭利浩 王荃 陳華鋒
目次
Chapter 01 概述
1.1 背景2
1.2 數字邏輯5
1.3 Verilog7
Chapter 02 基本邏輯門
2.1 真值表和邏輯表達式9
2.1.1 3種基本邏輯門9
2.1.2 4種常用邏輯門10
2.2 正邏輯和負邏輯:德摩根定律12
2.3 基於乘積和的設計14
2.4 基於和項積的設計15
習題21
Chapter 03 布爾代數和邏輯表達式
3.1 布爾定律(Boolean Theorems)26
3.1.1 單變量布爾定律26
3.1.2 雙變量和三變量的布爾定律27
3.2 卡諾圖(Karnaugh Maps)30
3.2.1 2變量卡諾圖31
3.2.2 3變量卡諾圖32
3.2.3 4變量卡諾圖34
3.3 計算機化簡方法35
3.3.1 乘積項的表格形式35
3.3.2 素蘊含項36
3.3.3 本質素蘊含項38
習題43
Chapter 04 實現數字電路
4.1 實現門46
4.2 晶體管-晶體管邏輯(TTL)48
4.3 可編程邏輯器件(PLD和CPLD)49
4.3.1 一個2輸入1輸出的PLD49
4.3.2 GAL 16V850
4.3.3 CPLD52
4.4 現場可編程門陣列(FPGA)52
習題55
Chapter 05 組合邏輯
5.1 多路選擇器(Multiplexer)58
5.1.1 2選1多路選擇器58
5.1.2 4選1多路選擇器59
5.1.3 4位 2選1多路選擇器60
5.1.4 4選1多路選擇器的邏輯方程65
5.2 7段顯示管73
5.3 比較器86
5.3.1 級聯比較器86
5.3.2 TTL比較器87
5.4 譯碼器和編碼器92
5.4.1 譯碼器(Decoders)92
5.4.2 TTL譯碼器93
5.4.3 編碼器(Encoder)94
5.4.4 優先編碼器(Priority Encoder)94
5.4.5 TTL編碼器95
5.5 編碼轉換器101
5.5.1 二進制-BCD碼轉換器101
5.5.2 移位加3算法(Shift and Add 3 Algorithm)101
5.5.3 格雷碼轉換器(Gray Code Converters)103
習題108
Chapter 06 運算電路
6.1 加法器112
6.1.1 半加器112
6.1.2 全加器112
6.1.3 進位和溢出114
6.1.4 TTL加法器116
6.2 減法器120
6.2.1 半減器120
6.2.2 全減器121
6.2.3 加/減法電路122
6.3 移位器125
6.4 乘法運算126
6.4.1 二進制乘法126
6.4.2 有符號乘法129
6.5 除法運算132
6.6 算術邏輯單元(ALU)135
習題138
Chapter 07 時序電路
7.1 鎖存器和觸發器142
7.1.1 SR 鎖存器142
7.1.2 時鐘觸發SR鎖存器143
7.1.3 D鎖存器143
7.1.4 邊沿觸發的D觸發器144
7.2 寄存器(Registers)151
7.3 移位寄存器156
7.4 計數器(Counters)162
7.4.1 任意波形的實現164
7.4.2 3位計數器的Verilog行為描述166
7.5 脈沖寬度調制器(PWM)175
7.5.1 使用PWM控制一個直流電動機的速度176
7.5.2 使用PWM控制一個伺服電動機的位置177
7.5.3 產生一個頻率為2 kHz的PWM信號179
7.6 BASYS2/ NEXYS2 板例程181
習題192
Chapter 08 有限狀態機
8.1 米里狀態機和摩爾狀態機196
8.2 摩爾狀態機序列檢測器196
8.3 米里狀態機序列檢測器198
習題213
Chapter 09 數據通道和控制單元
9.1 Verilog中的while語句215
9.2 數據通道和控制單元216
Chapter 10 整合數據通道和控制單元
10.1 改進的GCD算法238
10.2 改進的整數平方根算法243
Chapter 11 存儲器(Memory)
11.1 只讀存儲器249
11.2 分布式的存儲器253
Chapter 12 VGA控制器
12.1 時序263
12.2 其他標準圖像模式265
Chapter 13 PS/2接口
13.1 概述289
13.2 鍵盤291
13.3 鼠標295
附錄A 代碼仿真及設計實現305
附錄B 數字系統314
附錄C Verilog快速參考指南324