編輯推薦
本書麵嚮工科院校電子、通信、計算機、物聯網、自動化等專業本科生,以實現電子係統設計為目標,介紹瞭電子係統設計中的主流技術——EDA技術。讀者通過本書的學習,能夠掌握EDA技術的基本知識、基於EDA技術的電子係統設計的流程、開發工具與設計方法。
內容簡介
本書係統地介紹電子係統設計的主流技術——EDA技術。全書共8章,分彆為概述、CPLD/FPGA結構與工作原理、VHDL結構與要素、QuartusⅡ應用指南、VHDL基本語句、VHDL設計、EDA技術應用實例、EDA技術設計實驗項目。本書的目標是使讀者掌握應用EDA技術設計電子係統的方法,形成EDA設計能力。
本書避免對不常用語法的說明,安排瞭大量例題、習題以及應用實例,其中每個設計都提供瞭完整的程序代碼,程序均經過仿真驗證。第7章介紹瞭4個綜閤係統的設計實例,所有設計完成硬件電路並且測試成功。
本書可作為高等院校計算機類、通信電子類、自動化類以及相關專業的本科或研究生EDA課程教材,也可作為教師以及廣大科技工作者的參考用書。
目錄
第1章概述
1.1EDA技術及其發展
1.1.1EDA技術的含義
1.1.2EDA技術的優勢
1.1.3EDA技術的發展曆程
1.2EDA技術四要素
1.2.1軟件開發工具
1.2.2硬件描述語言
1.2.3大規模可編程邏輯器件
1.2.4實驗開發係統
1.3EDA流程及工具
1.3.1源程序的編輯和輸入
1.3.2邏輯綜閤和優化
1.3.3目標器件的布綫/適配
1.3.4目標器件的編程/下載
1.3.5設計過程中的仿真
1.3.6硬件仿真/硬件測試
1.4IP核
1.4.1軟核
1.4.2硬核
1.4.3固核
1.5EDA技術應用展望
1.5.1EDA技術應用於科研和新産品的開發
1.5.2EDA技術應用於專用集成電路的開發
習題
第2章CPLD/FPGA結構與工作原理
2.1CPLD
2.1.1CPLD的基本結構
2.1.2CPLD實現邏輯的基本原理
2.2FPGA
2.2.1主要內部資源
2.2.2FPGA的供電機製
2.2.3FPGA的配置
2.2.4器件的標識方法說明
2.3CPLD和FPGA的比較
習題
第3章VHDL結構與要素
3.1VHDL概述
3.1.1一個設計實例
3.1.2設計實例的說明與分析
3.2VHDL結構
3.2.1庫、程序包和配置
3.2.2實體
3.2.3結構體
3.3端口模式
3.4數據類型
3.4.1VHDL的預定義數據類型
3.4.2IEEE預定義標準邏輯位與標準邏輯矢量
3.4.3其他預定義標準數據類型
3.4.4自行定義的數據類型
3.5數據對象
3.5.1常量
3.5.2變量
3.5.3信號
3.5.4常量、變量、信號的比較
3.5.5進程中的信號賦值與變量賦值
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.7.4標識符
3.7.5下標名及下標段名
3.7.6關鍵詞
習題
第4章QuartusⅡ應用指南
4.1VHDL文本輸入設計流程
4.1.1建立工程文件夾和編輯文本
4.1.2創建工程
4.1.3全程編譯
4.1.4時序仿真
4.1.5應用網錶觀察器
4.1.6引腳鎖定
4.1.7基於USBBlaster編程下載器的配置文件下載
4.2原理圖輸入設計方法
4.2.1輸入設計項目和存盤
4.2.2將底層設計設置成可調用的元件
4.2.3全加器設計——頂層設計
4.2.4原理圖設計中總綫的應用
習題
第5章VHDL基本語句
5.1順序語句
5.1.1順序賦值語句
5.1.2IF語句
5.1.3CASE語句
5.1.4LOOP語句
5.1.5NEXT語句
5.1.6EXIT語句
5.1.7WAIT語句
5.2並行語句
5.2.1並行信號賦值語句
5.2.2進程語句
5.2.3元件例化語句
5.2.4生成語句
習題
第6章VHDL設計
6.1基於CPLD/FPGA的數字電路設計中的幾個問題
6.1.1建立和保持時間
6.1.2競爭和冒險
6.1.3復位與置位
6.1.4關於延時
6.1.5VHDL語言應用技巧
6.2VHDL描述風格
6.2.1結構描述
6.2.2數據流描述
6.2.3行為描述
6.3組閤邏輯電路設計
6.3.1門電路
6.3.2譯碼器
6.3.3全加器
6.3.4數據選擇器
6.3.5比較器
6.3.6總綫緩衝器
6.4時序邏輯電路設計
6.4.1觸發器
6.4.2數碼寄存器和移位寄存器
6.4.3計數器
6.4.4m序列發生器
6.5狀態機的VHDL設計
6.5.1狀態機設計法的優勢
6.5.2狀態機的形式
6.5.3狀態機的基本結構
6.5.4一般狀態機的VHDL設計
6.5.5一個狀態機的設計實例
6.6LPM定製
6.6.1定製ROM
6.6.2定製PLL
6.6.3定製RAM
習題
第7章EDA技術應用實例
7.1溫濕度自動監控係統設計
7.1.1係統設計方案
7.1.2溫濕度數據采集的控製——DHT11的驅動
7.1.3BCD十六進製譯碼器設計
7.1.4液晶顯示器的驅動
7.1.5係統時鍾信號與液晶使能信號的産生
7.1.6係統頂層設計
7.2電機傳動控製模擬係統設計
7.2.1設計方案一
7.2.2設計方案二
7.3自動售貨機控製係統設計
7.3.1係統設計要求
7.3.2係統分析
7.3.3秒脈衝的産生
7.3.4自動售貨機主控模塊設計
7.3.5顯示模塊設計
7.3.6係統頂層設計
7.4多功能音樂播放器設計
7.4.1係統設計方案
7.4.2分頻模塊
7.4.3選麯模塊設計
7.4.4地址發生器設計
7.4.5定製簡譜數據的ROM
7.4.6簡譜轉換成分頻數
7.4.7數控分頻和占空比調整設計
7.4.8基於點陣顯示屏的麯名顯示
7.4.9係統頂層設計
第8章EDA技術設計實驗項目
設計一8位數碼掃描顯示電路
一、設計目的
二、設計內容及要求
三、設計原理
四、思考
設計二直流電機的PWM控製
一、設計目的
二、設計內容及要求
三、設計原理
四、思考
設計三基於VHDL狀態機的A/D采樣控製電路設計
一、設計目的
二、設計內容及要求
三、設計原理
四、思考
設計四硬件樂麯演奏電路及擴展設計——音樂播放器
一、設計目的
二、設計內容及要求
三、設計原理
四、思考
設計五四人搶答電路與八路彩燈控製器
一、設計目的
二、設計內容及要求
三、設計原理
四、思考
設計六交通燈控製係統設計
一、設計目的
二、設計內容及要求
三、設計原理
四、思考
參考文獻
精彩書摘
3.1VHDL概述
VHDL主要用於描述數字係統的接口、結構、行為功能,除此之外還包含瞭關於該設計所適用的設計規範的說明。
通常情況下,對於一個集成芯片的關注往往集中在以下幾點:這個芯片是哪個公司生産的,符閤什麼設計標準或規範,是否通用;這個芯片各引腳的職能如何,即哪些作為數據輸入用,哪些作為數據輸齣用,對這些引腳有什麼約束;最重要的一點就是這個芯片有什麼功能。
相應地,使用VHDL設計一個硬件電路時,也需要把這3方麵信息錶述齣來供使用者瞭解。首先進行庫、程序包使用說明,錶明設計是在什麼規範內設計的,然後進行設計實體的說明,錶明所設計的硬件電路與整個係統的接口信息。通過實體說明,可以粗略透露這個封裝瞭的看不到內部結構的電路的規模、功能,但是遠遠不夠清晰和準確,這就需要進一步的結構體說明,它能準確描述所設計的硬件電路內部各組成部分的功能、相互間的邏輯關係以及整個係統的邏輯功能。至此,VHDL所描述的電路的全部信息就都清晰地展現齣來瞭。
本章遵循VHDL代碼編寫的結構順序,對於齣現的新概念、新語法現象依次進行說明。
3.1.1一個設計實例
在具體介紹VHDL的結構要素以及編程設計方法之前,用一個比較有代錶性的設計實例來呈現VHDL設計的概貌。
序列信號發生器能夠産生一組特定的串行數字信號,常常用於數字信號的傳輸和數字係統的測試。8位序列信號發生器由模8計數器和八選一數據選擇器共同構成,計數器的輸齣將作為數據選擇器的地址,由該地址指定接於8��1MUX輸入端的數據由其唯一的輸齣端進行輸齣。由於計數器的計數過程是按節拍進行的,是循環的、周而復始的,因此數據選擇器發齣的信號也是序列的、周而復始的。
構成序列信號發生器的MUX和計數器分彆是組閤邏輯和時序邏輯的典型電路,設計代碼分彆見例3.1和例3.2。例3.3用元件例化法將這兩個電路作為底層元件加以調用,完成瞭最後的頂層設計。
【例3.1】設計一個八選一數據選擇器。
LIBRARYIEEE;--IEEE庫及程序包的使用說明
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
USEIEEE.STD_LOGIC_ARITH.ALL;
ENTITYMUX_1IS--實體MUX_1的說明
PORT(
S:INSTD_LOGIC_VECTOR(2DOWNTO0);
D0,D1,D2,D3,D4,D5,D6,D7:INSTD_LOGIC;
Y:OUTSTD_LOGIC);
ENDMUX_1;
ARCHITECTUREaaofMUX_1is--結構體aa的說明
BEGIN
PROCESS(S)IS--使用進程語句進行描述
BEGIN
IFS="000"THEN--使用IF語句
Y<=D0;
ELSIFS="001"THEN
Y<=D1;
ELSIFS="010"THEN
Y<=D2;
ELSIFS="011"THEN
Y<=D3;
ELSIFS="100"THEN
……
前言/序言
前言
近年來,隨著EDA技術的快速發展和日臻完善,信息電子類高新技術項目的開發與設計越來越廣泛地采用EDA技術。EDA技術中,軟件設計方案落實到硬件係統的環節由專用工具自動完成,這使設計人員從繁重的手工設計中解脫齣來,得以將更多精力投入設計優化、性能提高方麵。在基於EDA技術的産品設計中,可以在設計過程中的多個階段進行仿真,現場編程修改、升級係統設計,在完成硬件係統後,還能對係統中的目標器件進行邊界掃描測試,進一步確認設計的正確性,大大降低瞭設計成本,縮短瞭設計周期。另外,由於承載設計方案的核心器件是大規模可編程邏輯器件,它的高密度、低功耗、高速穩定的特性造就瞭以此為核心的電子係統在體積、功耗、速度、穩定性方麵優越的性能。同時,EDA技術采用的“自頂嚮下”的設計思想和方法使得設計過程中不必因為某個層級齣現瞭問題而將底層的設計全部推翻重做,這樣將使復雜設計的成功率更高。
EDA技術的巨大優勢與廣泛應用使得越來越多的人希望迅速掌握EDA設計的方法和應用技巧。目前各高校信息電子類專業普遍開設EDA課程,旨在培養EDA技術方麵的專業人纔,然而高校EDA課程大都存在信息量大與學時少的矛盾。本書結閤作者多年的教學與科研經驗,遵循學生的認知規律,摒棄瞭在內容闡述上片麵追求麵麵俱到的做法,對EDA技術的內容進行瞭精簡,對內容的順序安排做齣瞭調整,力求重點突齣,言簡意賅,便於初學者在較短時間內把握EDA設計要領。
本書的總體編寫思路是,保留完成設計必不可少的最基礎、最常用、最高效可行的設計方法,刪減操作睏難、使用煩瑣、語義晦澀的語句和流程,使得初學者有信心,易上手。在內容組織上做瞭如下安排:先介紹EDA技術的概況,使讀者對EDA技術有基本瞭解;然後簡要介紹EDA設計的重要載體CPLD/FPGA的內部結構和工作原理,使學習者能夠基於CPLD/FPGA的特性進行有效設計;在介紹瞭編程語言和編程規則後,介紹EDA軟件工具操作辦法,至此,學習者已經能夠獨立完成一個簡單的設計。在此基礎上,介紹VHDL語法與設計技巧,並通過較為復雜的綜閤係統設計實例使學習者形成並提升設計能力。
本書共8章。第1章概括介紹EDA技術的含義、發展狀況、主要內容、設計流程與工具;第2章介紹大規模可編程器件CPLD和FPGA的結構和工作原理,並對二者的性能特點進行對比;第3章介紹VHDL語言的結構與要素,闡述運用VHDL語言應遵循的基本規則;第4章介紹EDA開發軟件工具QuartusⅡ的應用方法;第5章介紹VHDL常用語句,包括順序語句和並行語句;第6章介紹基本電路設計方法以及應用於較復雜電路設計的兩種方法——狀態機設計法和LPM定製法;第7章詳細介紹4個綜閤性較強的設計項目,包括設計要求、設計方案、源代碼、仿真分析與電路RTL圖;第8章為基於EDA課程的實驗項目。
全書由張瑾統稿,李澤光校審,第1章、第4~7章由張瑾編寫,第2章、第3章由李澤光編寫,第8章由韓睿編寫。在本書編寫過程中,戴文季、侯海鵬、楊騰、李雅麗、許瑩紅、李學芳、羅鈺傑、石婭等同學在程序調試與硬件測試中做瞭很多工作,同時本書的編寫也參考瞭很多專傢與學者的文獻,在此深錶感謝!
由於編者水平有限,書中難免存在錯誤和疏漏之處,懇請廣大讀者和同行專傢批評指正!
編者
2017年7月於大連
EDA技術及應用/高等學校電子信息類專業係列教材 下載 mobi epub pdf txt 電子書