本書主要內(nèi)容包括CPLD/FPGA可編程邏輯器件介紹,可編程邏輯器件EDA開發(fā)軟件使用,VHDL硬件描述語言設(shè)計方法和SOPC應(yīng)用,實驗和設(shè)計實踐5大部分。第一部分CPLD/FPGA可編程邏輯器件主要介紹可編程器件結(jié)構(gòu)原理、設(shè)計流程、常用芯片特點及選用;第二部分重點介紹目前國內(nèi)外常用EDA軟件isp Design EXPERT System、QuartusⅡ、ISE開發(fā)流程及ModelSim仿真應(yīng)用;第三部分重點講述VHDL語言基礎(chǔ)、描述方法及設(shè)計實例;第四部分主要介紹DSP Builder、SOPC Builder、NiosⅡ應(yīng)用及實例;第五部分介紹實驗及課程設(shè)計內(nèi)容。 本書可作為高等學(xué)校電子信息類、電氣信息類各專業(yè)的教材,也可作為電子工程設(shè)計技術(shù)人員的參考書。
隨著集成電路技術(shù)和EDA技術(shù)的快速發(fā)展,數(shù)字系統(tǒng)設(shè)計方法不斷演變,由原來單一的硬件邏輯設(shè)計發(fā)展成3個分支:硬件邏輯設(shè)計、軟件邏輯設(shè)計、專用集成電路設(shè)計(ASIC);诳删幊踢壿嬈骷腁SIC設(shè)計成為數(shù)字系統(tǒng)設(shè)計的重要分支,有關(guān)可編程邏輯器件的開發(fā)與應(yīng)用的課程成為電子信息類、電氣信息類各專業(yè)的必修課程。
基于PLD的EDA技術(shù)主要包括可編程邏輯器件知識、EDA開發(fā)軟件、硬件描述語言、代表可編程器件最新發(fā)展的SOPC、實驗和設(shè)計實踐5大部分。本書主要介紹Lattice、Altera、Xilinx公司的CPLD、FPGA系列器件,以及與其配套的EDA工具軟件isp Design EXPERT System、QuartusⅡ、ISE,硬件描述語言則介紹IEEE標(biāo)準(zhǔn)語言VHDL。
本書共12章,第1~2章介紹可編程邏輯器件的發(fā)展演變、結(jié)構(gòu)特點、產(chǎn)品系列等,側(cè)重于根據(jù)需要選擇適當(dāng)器件;第3章主要介紹常用EDA開發(fā)工具的設(shè)計流程及仿真、驗證的操作步驟;第4~8章詳細(xì)介紹VHDL語言基礎(chǔ)、語句結(jié)構(gòu)、設(shè)計方法、設(shè)計實例、子程序結(jié)構(gòu)、宏與IP核的應(yīng)用等;第9~10章主要介紹最新可編程器件SOPC的應(yīng)用實踐;第11~12章為實驗和設(shè)計環(huán)節(jié)。
本書在編寫時,力求理論體系全面完整、實用性強(qiáng),便于快速掌握;程序設(shè)計先介紹整體結(jié)構(gòu),再介紹語言細(xì)節(jié)、常用描述方法;針對學(xué)生易混淆的概念、易犯的錯誤及技術(shù)要點、難點,穿插適當(dāng)?shù)脑O(shè)計實例及相應(yīng)的習(xí)題;所附設(shè)計實例都經(jīng)過設(shè)計驗證,可直接引用,為便于閱讀,附加了有效的注釋。建議講授課時40~60學(xué)時,實驗課時12~20學(xué)時。
本書由張文愛編寫第3、5章,張博編寫第7、8章,喬學(xué)工編寫第1章,梁風(fēng)梅編寫第2章,李鴻鷹編寫第4章,冀小平編寫第6章,閻高偉編寫第9章,李瑞蓮編寫第10章,羅霄華編寫第11章,李彥民編寫第12章。全書最后由張文愛、張博修改定稿。
本書提供配套的電子課件和程序源代碼,可登錄華信教育資源網(wǎng):www.hxedu.com.cn,注冊后免費(fèi)下載。
在本書第2版修訂過程中,更新了PLD器件產(chǎn)品系列以及EDA開發(fā)軟件的版本,增加了ModelSim仿真應(yīng)用,對部分設(shè)計實例進(jìn)行了刪減。為方便實踐環(huán)節(jié)的教學(xué),補(bǔ)充了實驗及設(shè)計章節(jié)。編寫參閱了Lattice、Altera、Xilinx、Mentor Graphics等公司公開的技術(shù)資料,參考了許多相關(guān)的專著和教材,在此謹(jǐn)向相關(guān)公司和作者表示衷心的感謝。
由于編者水平有限,書中錯漏和不足之處難免,殷切期望讀者批評指正。
作者
2016年5月
第1章 可編程邏輯器件概述
1.1 數(shù)字邏輯電路設(shè)計與ASIC技術(shù)
1.1.1 數(shù)字邏輯電路設(shè)計方法
1.1.2 ASIC及其設(shè)計方法
1.2 PLD概述
1.2.1 PLD的發(fā)展
1.2.2 PLD的分類
1.3 PLD邏輯表示法
1.4 PLD的設(shè)計與開發(fā)
1.4.1 PLD的設(shè)計流程
1.4.2 PLD的開發(fā)環(huán)境
1.4.3 IP核復(fù)用技術(shù)
習(xí)題1
第2章 大規(guī)?删幊踢壿嬈骷﨏PLD/FPGA
2.1 CPLD結(jié)構(gòu)與工作原理
2.1.1 Lattice公司的CPLD器件系列
2.1.2 ispLSI 1016的結(jié)構(gòu)
2.1.3 ispLSI系列器件的主要技術(shù)特性
2.1.4 ispLSI器件的設(shè)計與編程
2.2 FPGA內(nèi)部結(jié)構(gòu)與工作原理
2.3 CPLD/FPGA產(chǎn)品概述
2.3.1 Altera公司產(chǎn)品
2.3.2 Xilinx公司產(chǎn)品
2.3.3 Lattice公司產(chǎn)品
2.4 編程與配置
2.4.1 在系統(tǒng)可編程ISP
2.4.2 配置
2.5 CPLD與FPGA的比較和選用
習(xí)題2
第3章 常用EDA軟件
3.1 isp Design EXPERT System編程軟件
3.1.1 建立設(shè)計項目
3.1.2 原理圖源文件輸入
3.1.3 功能和時序仿真
3.1.4 器件適配
3.1.5 器件編程
3.1.6 VHDL源文件輸入方法
3.2 Quartus II操作指南
3.2.1 建立設(shè)計工程
3.2.2 原理圖源文件輸入
3.2.3 編譯
3.2.4 仿真驗證
3.2.5 器件編程
3.2.6 VHDL設(shè)計輸入方法
3.3 ISE開發(fā)軟件
3.3.1 ISE概述
3.3.2 新建工程
3.3.3 新建VHDL源文件
3.3.4 波形仿真
3.3.5 設(shè)計實現(xiàn)
3.3.6 下載配置
3.4 ModelSim仿真軟件
3.4.1 ModelSim與VHDL仿真概述
3.4.2 ModelSim仿真步驟
3.4.3 VHDL測試文件
習(xí)題3
第4章 VHDL語言基礎(chǔ)
4.1 VHDL語言的基本組成
4.1.1 參數(shù)部分
4.1.2 實體部分
4.1.3 結(jié)構(gòu)體部分
4.2 VHDL語言要素
4.2.1 文字規(guī)則
4.2.2 數(shù)據(jù)對象
4.2.3 VHDL中的數(shù)據(jù)類型
4.2.4 VHDL語言的運(yùn)算符
4.2.5 VHDL的屬性
習(xí)題4
第5章 VHDL基本描述語句
5.1 順序語句
5.1.1 順序賦值語句
5.1.2 IF語句
5.1.3 CASE語句
5.1.4 LOOP語句
5.1.5 NEXT語句
5.1.6 EXIT語句
5.1.7 WAIT語句
5.1.8 NULL語句
5.2 并行語句
5.2.1 并行信號賦值語句
5.2.2 PROCESS進(jìn)程語句
5.2.3 元件例化語句
5.2.4 BLOCK塊語句
5.2.5 GENERATE生成語句
習(xí)題5
第6章 子程序與程序包
6.1 子程序
6.1.1 函數(shù)
6.1.2 過程
6.2 程序包
6.2.1 程序包定義
6.2.2 程序包引用
6.2.3 常用預(yù)定義程序包
習(xí)題6
第7章 常用電路的VHDL描述
7.1 組合邏輯電路VHDL描述
7.1.1 基本門電路
7.1.2 編碼器
7.1.3 譯碼器
7.1.4 數(shù)值比較器
7.1.5 數(shù)據(jù)選擇器
7.1.6 算術(shù)運(yùn)算
7.1.7 三態(tài)門電路
7.1.8 雙向端口設(shè)計
7.2 時序邏輯電路VHDL描述
7.2.1 觸發(fā)器
7.2.2 計數(shù)器
7.2.3 移位寄存器
7.2.4 狀態(tài)機(jī)
7.3 存儲器設(shè)計
7.3.1 ROM存儲器設(shè)計
7.3.2 RAM存儲器設(shè)計
習(xí)題7
第8章 宏功能模塊與IP核應(yīng)用
8.1 LPM_RAM
8.1.1 LPM_RAM宏模塊定制
8.1.2 工程編譯
8.1.3 仿真驗證
8.1.4 查看RTL原理圖
8.1.5 LPM_RAM應(yīng)用
8.2 LPM_ROM宏模塊
8.2.1 建立初始化數(shù)據(jù)文件
8.2.2 LPM_ROM宏模塊配置
8.2.3 仿真驗證
8.2.4 LPM_ROM模塊調(diào)用
8.3 時鐘鎖相環(huán)宏模塊
8.3.1 LPM_PLL宏模塊配置
8.3.2 PLL模塊調(diào)用
8.3.3 仿真驗證
8.4 片內(nèi)邏輯分析儀
8.4.1 新建邏輯分析儀設(shè)置文件
8.4.2 引腳鎖定
8.4.3 編程下載
8.4.4 信號采樣
習(xí)題8
第9章 DSP Builder應(yīng)用
9.1 DSP Builder軟件安裝
9.2 DSP Builder設(shè)計實例
9.2.1 建立Simulink模型
9.2.2 模型仿真
9.2.3 模型編譯
習(xí)題9
第10章 SOPC Builder應(yīng)用
10.1 SOPC Builder
10.2 Nios II 綜合設(shè)計實例
習(xí)題10
第11章 EDA技術(shù)實驗
11.1 原理圖輸入方式
11.1.1 實驗一 1位全加器
11.1.2 實驗二 兩位十進(jìn)制計數(shù)器
11.2 VHDL文本輸入方式
11.2.1 實驗三 顯示譯碼器
11.2.2 實驗四 8位加法器
11.2.3 實驗五 3線-8線譯碼器
11.2.4 實驗六 十進(jìn)制加法計數(shù)器
11.2.5 實驗七 4位十進(jìn)制計數(shù)顯示器
11.2.6 實驗八 用狀態(tài)機(jī)實現(xiàn)序列檢測器
第12章 綜合設(shè)計
12.1 移位相加8位硬件乘法器
12.1.1 設(shè)計要求
12.1.2 設(shè)計原理
12.1.3 部分參考程序
12.1.4 設(shè)計步驟
12.1.5 設(shè)計報告
12.2 秒表
12.2.1 設(shè)計要求
12.2.2 設(shè)計原理
12.2.3 部分參考程序
12.2.4 設(shè)計步驟
12.2.5 設(shè)計報告
12.3 搶答器
12.3.1 設(shè)計要求
12.3.2 設(shè)計原理
12.3.3 部分參考程序
12.3.4 設(shè)計步驟
12.3.5 設(shè)計報告
12.4 數(shù)字鐘
12.4.1 設(shè)計要求
12.4.2 設(shè)計方案
12.4.3 部分參考程序
12.4.4 設(shè)計步驟
12.4.5 設(shè)計報告
12.5 交通燈控制器
12.5.1 設(shè)計要求
12.5.2 設(shè)計原理
12.5.3 部分參考程序
12.5.4 設(shè)計步驟
12.5.5 設(shè)計報告
12.6 多路彩燈控制器
12.6.1 設(shè)計要求
12.6.2 設(shè)計方案
12.6.3 VHDL參考程序
12.6.4 設(shè)計步驟
12.6.5 設(shè)計報告
附錄A DE2-115實驗板引腳配置信息
參考文獻(xiàn)