本書(shū)系統(tǒng)地介紹了EDA 技術(shù)和VHDL 硬件描述語(yǔ)言,將VHDL 的基礎(chǔ)知識(shí)、編程技巧和實(shí)用方法與實(shí)際工程開(kāi)發(fā)技術(shù)在Quartus II 13.1 上很好地結(jié)合起來(lái),使讀者通過(guò)本書(shū)的學(xué)習(xí)能迅速了解并掌握EDA技術(shù)的基本理論和工程開(kāi)發(fā)實(shí)用技術(shù),為后續(xù)的深入學(xué)習(xí)和發(fā)展打下堅(jiān)實(shí)的理論與實(shí)踐基礎(chǔ)。
作者依據(jù)高校課堂教學(xué)和實(shí)驗(yàn)操作的規(guī)律與要求,并以提高學(xué)生的實(shí)際工程設(shè)計(jì)能力和自主創(chuàng)新能力為目的,合理編排全書(shū)內(nèi)容。全書(shū)共分為8 個(gè)部分:EDA 技術(shù)的概述、VHDL 語(yǔ)法知識(shí)及其實(shí)用技術(shù)、Quartus II 及LPM 宏模塊的詳細(xì)使用方法、有限狀態(tài)機(jī)設(shè)計(jì)技術(shù)、16 位實(shí)用CPU 設(shè)計(jì)技術(shù)及創(chuàng)新實(shí)踐項(xiàng)目、基于ModelSim 的Test Bench 仿真技術(shù)、以及基于MATLAB 和DSP Builder 平臺(tái)的EDA 設(shè)計(jì)技術(shù)及大量實(shí)用系統(tǒng)設(shè)計(jì)示例。除個(gè)別章節(jié)外,其他章節(jié)都安排了相應(yīng)的習(xí)題和大量針對(duì)性強(qiáng)的實(shí)驗(yàn)與設(shè)計(jì)項(xiàng)目。書(shū)中列舉的VHDL 示例都已經(jīng)編譯通過(guò)或經(jīng)硬件測(cè)試通過(guò)。
本書(shū)主要用于高等院校本、專(zhuān)科的EDA 技術(shù)和VHDL 語(yǔ)言基礎(chǔ)課,推薦作為電子工程、通信、工業(yè)自動(dòng)化、計(jì)算機(jī)應(yīng)用技術(shù)、電子對(duì)抗、儀器儀表、數(shù)字信號(hào)或圖像處理等學(xué)科專(zhuān)業(yè)和相關(guān)實(shí)驗(yàn)指導(dǎo)課的教材用書(shū)或主要參考書(shū),同時(shí)也可作為電子設(shè)計(jì)競(jìng)賽、FPGA 開(kāi)發(fā)應(yīng)用的自學(xué)參考書(shū)。
與此教材配套的還有 CAI 教學(xué)課件、實(shí)驗(yàn)指導(dǎo)課件、實(shí)驗(yàn)源程序,以及與實(shí)驗(yàn)設(shè)計(jì)項(xiàng)目相關(guān)的詳細(xì)技術(shù)資料等,讀者都可免費(fèi)索取。
全書(shū)重點(diǎn)講解基礎(chǔ)知識(shí),強(qiáng)調(diào)基礎(chǔ)數(shù)字模塊的設(shè)計(jì)與熟練應(yīng)用。在內(nèi)容編寫(xiě)上采用縱向和橫向相結(jié)合的寫(xiě)法,縱向基礎(chǔ)知識(shí)的學(xué)習(xí)穿插大量實(shí)例講解,使學(xué)生建立完整的知識(shí)體系;橫向應(yīng)用實(shí)例的學(xué)習(xí)穿插基礎(chǔ)知識(shí)要點(diǎn)和設(shè)計(jì)經(jīng)驗(yàn)講解,使學(xué)生掌握理論知識(shí)的具體應(yīng)用,從而幫助讀者從不同角度認(rèn)識(shí)EDA和vhdl,提高靈活運(yùn)用的能力,建立自己的設(shè)計(jì)思路。
新版教程的變化主要表現(xiàn)在新版 EDA 軟件和較新的FPGA 的使用上:
(1)考慮到Quartus II 13.1 和 Quartus Prime Standard 16.1 版本的用法和功能基本相同,而13.1 版本支持的早期器件系列較多,包括Cyclone III。所以在一些重要的章節(jié)和示例中,用QuartusII 13.1 軟件取代了舊版的Quartus II 9.1。
(2)在上一版的前言中就已提到過(guò),Quartus II 10.0 版本后不再支持內(nèi)置的門(mén)級(jí)仿真器,即Altera 已將Quartus II 10.0 及此后版本的軟件中曾經(jīng)一貫內(nèi)置的門(mén)級(jí)波形仿真器移除了,這使得Quartus 的使用者不得不使用接口于Quartus II 的第三方仿真器ModelSim-Altera。顯然這一舉措對(duì)于多數(shù)初學(xué)者和相關(guān)的教學(xué)造成很大的不便。因?yàn)楸仨毘姓J(rèn),Quartus II 9.x及之前版本軟件中一直內(nèi)置的波形仿真器的易學(xué)、高效和便捷的巨大優(yōu)勢(shì),對(duì)于EDA 教學(xué)和初學(xué)者的學(xué)習(xí)是十分重要的。為此,Quartus II 13.1 及其以后的16.1 版本,借助ModelSim-ase 構(gòu)建了一個(gè)類(lèi)似于波形仿真器的仿真工具。其在用法上也有少許不同之處,書(shū)中也做了介紹。
(3)由于新版軟件的波形仿真器是建立在第三方仿真軟件ModelSim-ase 上的,所以在安裝軟件時(shí)需要特別注意要把ModelSim-ase 裝上,書(shū)中對(duì)此加入了Quartus II 13.1 安裝的簡(jiǎn)要說(shuō)明。
(4)考慮到較新的Cyclone 4 型FPGA 已經(jīng)得到廣泛使用,并兼顧目前多數(shù)學(xué)校仍然使用基于Cyclone 3 系列FPGA 的實(shí)驗(yàn)設(shè)備的事實(shí),在此新版教材中包含了這兩種FPGA的使用示例。
(5)在FPGA 和CPLD 的結(jié)構(gòu)介紹方面,做了一定更新,介紹了較新近發(fā)展的FPGA(Cyclone4)和CPLD(內(nèi)嵌Flash 的FPGA 器件)的結(jié)構(gòu)特點(diǎn)。
(6)對(duì)一些習(xí)題和實(shí)驗(yàn)項(xiàng)目做了精簡(jiǎn)與完善。
(7)對(duì)第10 章的Test Bench 仿真示例升級(jí)在Quartus II 13.1 平臺(tái)上完成。
(8)對(duì)第11 和第12 章內(nèi)容做了進(jìn)一步的完善。
與本書(shū) VHDL 內(nèi)容相對(duì)應(yīng)的Verilog HDL 教材可參考清華大學(xué)出版社出版的《EDA 技術(shù)與Verilog HDL(第3 版)》。
基于工程領(lǐng)域中 EDA 技術(shù)的巨大實(shí)用價(jià)值,以及對(duì)EDA 教學(xué)中實(shí)踐能力和創(chuàng)新意識(shí)培養(yǎng)的極端重視,本書(shū)的特色主要體現(xiàn)在如下兩個(gè)方面。
1.注重實(shí)踐能力和創(chuàng)新能力的培養(yǎng)
在絕大部分章節(jié)中都安排了針對(duì)性較強(qiáng)的實(shí)驗(yàn)與設(shè)計(jì)項(xiàng)目,使學(xué)生對(duì)每一章的課堂教學(xué)內(nèi)容和教學(xué)效果能及時(shí)通過(guò)實(shí)驗(yàn)得以消化和強(qiáng)化,并盡可能地從一開(kāi)始學(xué)習(xí)就有機(jī)會(huì)將理論知識(shí)與實(shí)踐、自主設(shè)計(jì)緊密聯(lián)系起來(lái)。
全書(shū)包含數(shù)十個(gè)實(shí)驗(yàn)及其相關(guān)的設(shè)計(jì)項(xiàng)目,這些項(xiàng)目涉及的 EDA 工具軟件類(lèi)型較多、技術(shù)領(lǐng)域也較寬、知識(shí)涉獵密集、針對(duì)性強(qiáng),而且自主創(chuàng)新意識(shí)的啟示性好。與書(shū)中的示例相同,所有的實(shí)驗(yàn)項(xiàng)目都通過(guò)了EDA 工具的仿真測(cè)試及FPGA 平臺(tái)的硬件驗(yàn)證。每一個(gè)實(shí)驗(yàn)項(xiàng)目除給出詳細(xì)的實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)原理和實(shí)驗(yàn)報(bào)告要求外,還有2~5 個(gè)子項(xiàng)目或子任務(wù)。它們通常分為:第一個(gè)層次的實(shí)驗(yàn)是與該章某個(gè)闡述內(nèi)容相關(guān)的驗(yàn)證性實(shí)驗(yàn),并通常提供詳細(xì)的且被驗(yàn)證的設(shè)計(jì)源程序和實(shí)驗(yàn)方法,學(xué)生只需將提供的設(shè)計(jì)程序輸入計(jì)算機(jī),并按要求進(jìn)行編譯仿真,在實(shí)驗(yàn)系統(tǒng)上實(shí)現(xiàn)即可,這使學(xué)生有一個(gè)初步的感性認(rèn)識(shí),也提高了實(shí)驗(yàn)的效率;第二個(gè)層次的實(shí)驗(yàn)任務(wù)要求在上一實(shí)驗(yàn)基礎(chǔ)上做一些改進(jìn)和發(fā)揮;第三個(gè)層次的實(shí)驗(yàn)通常是提出自主設(shè)計(jì)的要求和任務(wù);第四、第五個(gè)實(shí)驗(yàn)層次則是在僅給出一些提示的情況下提出自主創(chuàng)新性設(shè)計(jì)的要求。因此,教師可以根據(jù)學(xué)時(shí)數(shù)、教學(xué)實(shí)驗(yàn)的要求以及不同的學(xué)生對(duì)象,布置不同層次含不同任務(wù)的實(shí)驗(yàn)項(xiàng)目。
2.注重教學(xué)選材的靈活性和完整性相結(jié)合
本教材的結(jié)構(gòu)特點(diǎn)決定了授課學(xué)時(shí)數(shù)可十分靈活,即可長(zhǎng)可短,應(yīng)視具體的專(zhuān)業(yè)特點(diǎn)、課程定位及學(xué)習(xí)者的前期教育程度等因素而定,大致在30~54 學(xué)時(shí)。考慮到EDA 技術(shù)課程的特質(zhì)和本教材的特色,具體教學(xué)可以是粗放型的,其中多數(shù)內(nèi)容,特別是實(shí)踐項(xiàng)目,都可放手讓學(xué)生更多地自己去查閱資料、提出問(wèn)題、解決問(wèn)題,乃至創(chuàng)新與創(chuàng)造;而授課教師只需做一個(gè)啟蒙者、引導(dǎo)者、鼓勵(lì)者和學(xué)生成果的檢驗(yàn)者與評(píng)判者。授課的過(guò)程多數(shù)情況只需點(diǎn)到為止,大可不必拘泥細(xì)節(jié)、面面俱到。但有一個(gè)原則,即安排的實(shí)驗(yàn)學(xué)時(shí)數(shù)應(yīng)多多益善。
事實(shí)上,任何一門(mén)課程的學(xué)時(shí)數(shù)總是有限的,為了有效增加學(xué)生的實(shí)踐和自主設(shè)計(jì)的時(shí)間,可以借鑒清華大學(xué)的一項(xiàng)教改措施,即其電子系本科生從一入學(xué)就每人獲得一塊FPGA 實(shí)驗(yàn)開(kāi)發(fā)板,可從本科一年級(jí)一直用到研究生畢業(yè)。這是因?yàn)镋DA 技術(shù)本身就是一個(gè)可把全部實(shí)驗(yàn)和設(shè)計(jì)帶回家的課程。
我校對(duì)于這門(mén)課程也基本采用了這一措施,即每個(gè)上EDA 課的同學(xué)都可借出一套EDA實(shí)驗(yàn)板,使他們能利用自己的計(jì)算機(jī)在課余時(shí)間完成自主設(shè)計(jì)項(xiàng)目,強(qiáng)化學(xué)習(xí)效果。實(shí)踐表明,這種安排使得實(shí)驗(yàn)課時(shí)得到有效延長(zhǎng),教學(xué)成效自然顯著。
我們建議積極鼓勵(lì)學(xué)生利用課余時(shí)間盡可能學(xué)完本書(shū)的全部?jī)?nèi)容,掌握本書(shū)介紹的所有EDA 工具軟件和相關(guān)開(kāi)發(fā)手段,并盡可能多地完成本書(shū)配置的實(shí)驗(yàn)和設(shè)計(jì)任務(wù),甚至能參考教材中的要求,安排相關(guān)的創(chuàng)新設(shè)計(jì)競(jìng)賽,進(jìn)一步激發(fā)同學(xué)的學(xué)習(xí)積極性和主動(dòng)性,并強(qiáng)化他們的動(dòng)手能力和自主創(chuàng)新能力。
還有一個(gè)問(wèn)題有必要在此探討,即自主創(chuàng)新能力的培養(yǎng)盡管重要,但對(duì)其有效提高絕非一朝一夕之事。多年的教學(xué)實(shí)踐告訴我們,針對(duì)這一問(wèn)題的教改必須從兩方面入手,一是教學(xué)內(nèi)容,二是設(shè)課時(shí)間。二者密切聯(lián)系,不可偏廢。
前者主要指建立一個(gè)內(nèi)在相關(guān)性好、設(shè)課時(shí)間靈活且易于將創(chuàng)新能力培養(yǎng)寓于知識(shí)傳播之中的課程體系。
后者主要指在課程安排的時(shí)段上,將這一體系的課程盡可能地提前。這一舉措是成功的關(guān)鍵,因?yàn)槲覀儾豢赡艿搅吮究迫⑺哪昙?jí)才去關(guān)注能力培養(yǎng),并期待奇跡發(fā)生,更不可能指望一兩門(mén)課程就能解決問(wèn)題。尤其是以卓越工程師為培養(yǎng)目標(biāo)的工科高等教育,自主創(chuàng)新能力的培養(yǎng)本身就是一項(xiàng)教學(xué)雙方必須投入密集實(shí)踐和探索的創(chuàng)新活動(dòng)。我校的EDA 技術(shù)國(guó)家級(jí)精品課程正是針對(duì)這一教改目標(biāo)建立的課程體系,而數(shù)字電子技術(shù)基礎(chǔ)
是這一體系的組成部分和先導(dǎo)課程。它的提前設(shè)課是整個(gè)課程體系提前的必要條件。
通過(guò)數(shù)年的試點(diǎn)教學(xué)實(shí)踐和經(jīng)驗(yàn)總結(jié),現(xiàn)已成功在部分本科學(xué)生中將此課程的設(shè)課時(shí)間從原來(lái)的第四或第五學(xué)期提前到了第一或第二學(xué)期。而這一體系的其他相關(guān)課程,如EDA 技術(shù)、單片機(jī)(相關(guān)教材是清華大學(xué)出版社的《單片機(jī)原理與應(yīng)用技術(shù)》,潘明、黃繼業(yè)等編著)、SOC 片上系統(tǒng)、計(jì)算機(jī)接口、嵌入式系統(tǒng)和DSP 等也相應(yīng)提前,從而使學(xué)生到本科二年級(jí)時(shí)就具備了培養(yǎng)工程實(shí)踐和自主開(kāi)發(fā)能力的條件。
另外有一個(gè)問(wèn)題須在此說(shuō)明。
針對(duì)本教材中的實(shí)驗(yàn)和實(shí)踐項(xiàng)目所能提供的演示示例原設(shè)計(jì)文件的問(wèn)題:本書(shū)中多數(shù)實(shí)驗(yàn)都能提供經(jīng)硬件驗(yàn)證調(diào)試好的演示示例原設(shè)計(jì),目的是讓讀者能順利完成實(shí)驗(yàn)驗(yàn)證和設(shè)計(jì);有的示例的目的是希望能啟發(fā)或引導(dǎo)讀者完成更有創(chuàng)意的設(shè)計(jì),其中一些示例盡管看上去頗有創(chuàng)意,但都不能說(shuō)是最佳或最終結(jié)果,這給讀者留有許多改進(jìn)和發(fā)揮的余地。此外還有少數(shù)示例無(wú)法提供源代碼(只能提供演示文件),是考慮到本書(shū)作者以外的設(shè)計(jì)者的著作權(quán),但這些示例仍能在設(shè)計(jì)的可行性、創(chuàng)意和創(chuàng)新方面給讀者以寶貴的啟示。
為了盡可能降低本書(shū)的成本和售價(jià),不再配置光盤(pán)。與本書(shū)相關(guān)的其他資料,包括本書(shū)的配套課件、實(shí)驗(yàn)示例源程序資料、相關(guān)設(shè)計(jì)項(xiàng)目的參考資料和附錄中提到的mif 文件編輯生成軟件等文件資料都可免費(fèi)索取;此外對(duì)于一些與本教材相關(guān)的工具軟件,包括Quartus II、Synplify Pro、ModelSim-Atera 和DSP-Builder/MATLAB 等EDA 軟件的安裝使用問(wèn)題都可咨詢(xún)(包括教學(xué)課件與實(shí)驗(yàn)課件,以及實(shí)驗(yàn)系統(tǒng)的FPGA 引腳查詢(xún)及對(duì)照表等的免費(fèi)索取)sunliangzhu@126.com,或與作者探討EDA 技術(shù)教學(xué)和實(shí)踐(hjynet@163.com);或直接與出版社聯(lián)系(主要是索取教學(xué)課件等)。
清華大學(xué)出版社的網(wǎng)址和聯(lián)系方式分別是:www.tup.com.cn,zzfangcn@vip.163.com。
作
者
于杭州電子科技大學(xué)
第 1 章 EDA 技術(shù)概述 1
11 EDA 技術(shù) 1
12 EDA 技術(shù)應(yīng)用對(duì)象 2
13 常用的硬件描述語(yǔ)言 4
14 EDA 技術(shù)的優(yōu)勢(shì) 5
15 面向FPGA 和CPLD 的開(kāi)發(fā)流程 6
151 設(shè)計(jì)輸入 7
152 綜合 7
153 適配(布線布局) 9
154 仿真 9
155 RTL 描述 10
16 可編程邏輯器件 10
161 PLD 的分類(lèi) 11
162 PROM 可編程原理 12
163 GAL
14
17 CPLD 的結(jié)構(gòu)與可編程原理 15
18 FPGA 的結(jié)構(gòu)與工作原理 18
181 查找表邏輯結(jié)構(gòu) 18
182 Cyclone 4E 系列器件的結(jié)構(gòu)原理 18
183 內(nèi)嵌Flash 的FPGA 器件 21
19 硬件測(cè)試技術(shù) 21
191 內(nèi)部邏輯測(cè)試 21
192 JTAG 邊界掃描測(cè)試 22
110 編程與配置 22
111 Quartus II 23
112 IP 核 25
113 EDA 的發(fā)展趨勢(shì) 25
習(xí)題 27
第2 章程序結(jié)構(gòu)與數(shù)據(jù)對(duì)象 28
21 VHDL 程序結(jié)構(gòu) 28
22 VHDL 程序基本構(gòu)建 30
221 實(shí)體和端口模式 30
222 結(jié)構(gòu)體 31 223 庫(kù)和庫(kù)的種類(lèi) 32
224 庫(kù)和程序包的調(diào)用方法 34
225 配置 35
23 VHDL 文字規(guī)則 36
231 數(shù)字 36
232 字符串 36
233 關(guān)鍵詞 37
234 標(biāo)識(shí)符及其表述規(guī)則 37
235 文件取名和存盤(pán) 38
236 規(guī)范的程序書(shū)寫(xiě)格式 38
24 VHDL 數(shù)據(jù)對(duì)象 39
241 常數(shù) 39
242 變量 39
243 信號(hào) 40
習(xí)題 42
第3 章數(shù)據(jù)類(lèi)型與順序語(yǔ)句 43
31 VHDL 數(shù)據(jù)類(lèi)型 43
311 BIT 和BIT_VECTOR 類(lèi)型 44
312 STD_LOGIC 和STD_LOGIC_VECTOR
類(lèi)型 44
313 整數(shù)類(lèi)型INTEGER 46
314 布爾數(shù)據(jù)類(lèi)型BOOLEAN 47
315 SIGNED 和UNSIGNED 類(lèi)型 47
316 其他預(yù)定義類(lèi)型 49
317 數(shù)據(jù)類(lèi)型轉(zhuǎn)換函數(shù) 50
32 常用順序語(yǔ)句 52
321 賦值語(yǔ)句 52
322 CASE 語(yǔ)句 53
323 PROCESS 語(yǔ)句 54
324 并置操作符& 55
325 IF 語(yǔ)句 56
33 IF 語(yǔ)句使用示例 57
331 D 觸發(fā)器的VHDL 描述 57
332 含異步復(fù)位和時(shí)鐘使能D 觸發(fā)器的描述 60
333 基本鎖存器的描述 60
334 含清零控制鎖存器的描述 62
335 實(shí)現(xiàn)時(shí)序電路的不同表述方式 63
336 4 位二進(jìn)制加法計(jì)數(shù)器設(shè)計(jì) 64
337 計(jì)數(shù)器更常用的VHDL 表達(dá)方式 65
338 設(shè)計(jì)一個(gè)實(shí)用計(jì)數(shù)器 67 339 含同步并行預(yù)置功能的8 位移位寄存器設(shè)計(jì) 69
3310 優(yōu)先編碼器設(shè)計(jì) 70
34 VHDL 其他順序語(yǔ)句 71
341 LOOP 循環(huán)語(yǔ)句 72
342 NEXT 語(yǔ)句 72
343 EXIT 語(yǔ)句 73
344 WAIT 語(yǔ)句 74
345 GENERIC 參數(shù)定義語(yǔ)句 77
346 REPORT 語(yǔ)句 77
347 斷言語(yǔ)句 78
348 端口數(shù)據(jù)含1 個(gè)數(shù)的統(tǒng)計(jì)電路模塊設(shè)計(jì) 80
習(xí)題 81
第4 章時(shí)序仿真與硬件實(shí)現(xiàn) 83
41 代碼編輯輸入和系統(tǒng)編譯 83
411 編輯和輸入設(shè)計(jì)文件 83
412 創(chuàng)建工程 84
413 約束項(xiàng)目設(shè)置 85
414 全程綜合與編譯 87
415 RTL 圖觀察器應(yīng)用 88
42 時(shí)序仿真 89
43 硬件測(cè)試 91
431 引腳鎖定 92
432 編譯文件下載 93
433 通過(guò)JTAG 口對(duì)配置芯片進(jìn)行間接編程 95
434 USB-Blaster 驅(qū)動(dòng)程序安裝方法 96
44 電路原理圖設(shè)計(jì)流程 96
441 設(shè)計(jì)一個(gè)半加器 96
442 完成全加器頂層設(shè)計(jì) 98
443 對(duì)全加器進(jìn)行時(shí)序仿真和硬件測(cè)試 99
45 利用屬性表述實(shí)現(xiàn)引腳鎖定 100
46 SignalTap II 的用法 101
47 編輯SignalTap II 的觸發(fā)信號(hào) 106
48 安裝Quartus II 131 說(shuō)明 106
習(xí)題 111
實(shí)驗(yàn)與設(shè)計(jì) 112
實(shí)驗(yàn)4-1 多路選擇器設(shè)計(jì)實(shí)驗(yàn) 112
實(shí)驗(yàn)4-2 十六進(jìn)制7 段數(shù)碼顯示譯碼器設(shè)計(jì) 112
實(shí)驗(yàn)4-3 應(yīng)用宏模塊設(shè)計(jì)數(shù)字頻率計(jì) 114
實(shí)驗(yàn)4-4 計(jì)數(shù)器設(shè)計(jì)實(shí)驗(yàn) 117實(shí)驗(yàn)4-5 數(shù)碼掃描顯示電路設(shè)計(jì) 118
實(shí)驗(yàn)4-6 硬件消抖動(dòng)電路設(shè)計(jì) 118
實(shí)驗(yàn)4-7 串行靜態(tài)顯示控制電路設(shè)計(jì) 119
第5 章并行語(yǔ)句 121
51 并行信號(hào)賦值語(yǔ)句 121
511 簡(jiǎn)單信號(hào)賦值語(yǔ)句 121
512 條件信號(hào)賦值語(yǔ)句 122
513 選擇信號(hào)賦值語(yǔ)句 123
514 塊語(yǔ)句 124
515 元件例化語(yǔ)句 124
516 例化語(yǔ)句應(yīng)用示例 125
517 生成語(yǔ)句 127
518 GENERIC 參數(shù)傳遞映射語(yǔ)句及其使用方法 129
519 數(shù)據(jù)類(lèi)型定義語(yǔ)句 131
5110 VHDL 的存儲(chǔ)器描述 134
5111 信號(hào)屬性及屬性函數(shù) 136
52 VHDL 運(yùn)算操作符 138
521 邏輯操作符 138
522 關(guān)系操作符 140
523 算術(shù)操作符 141
524 省略賦值操作符 144
53 keep 屬性應(yīng)用 145
54 SignalProbe 使用方法 146
習(xí)題 148
實(shí)驗(yàn)與設(shè)計(jì) 149
實(shí)驗(yàn)5-1 8 位加法器設(shè)計(jì)實(shí)驗(yàn) 149
實(shí)驗(yàn)5-2 高速硬件除法器設(shè)計(jì) 149
實(shí)驗(yàn)5-3 移位相加型8 位硬件乘法器設(shè)計(jì)
150
實(shí)驗(yàn)5-4 基于VHDL 代碼的頻率計(jì)設(shè)計(jì) 150
實(shí)驗(yàn)5-5 VGA 彩條信號(hào)顯示控制電路設(shè)計(jì) 152
實(shí)驗(yàn)5-6 不同類(lèi)型的移位寄存器設(shè)計(jì)實(shí)驗(yàn) 156
第6 章 LPM宏模塊使用方法 157
61 調(diào)用計(jì)數(shù)器宏模塊示例 157
611 計(jì)數(shù)器LPM 模塊文本代碼的調(diào)用 157
612 LPM 計(jì)數(shù)器代碼與參數(shù)傳遞語(yǔ)句應(yīng)用 159
613 創(chuàng)建工程與仿真測(cè)試 160
62 利用屬性控制乘法器構(gòu)建的示例 161
63 LPM_RAM 宏模塊用法 162
631 初始化文件及其生成 162 632 LPM_RAM 的設(shè)置與調(diào)用 164
633 測(cè)試LPM_RAM 166
634 用VHDL 代碼描述存儲(chǔ)器以及用初始化文件加載表述 166
64 LPM_ROM 使用示例 168
641 簡(jiǎn)易正弦信號(hào)發(fā)生器設(shè)計(jì) 168
642 正弦信號(hào)發(fā)生器硬件實(shí)現(xiàn)和測(cè)試 169
65 在系統(tǒng)存儲(chǔ)器數(shù)據(jù)讀寫(xiě)編輯器應(yīng)用 171
66 LPM 嵌入式鎖相環(huán)調(diào)用 172
661 建立嵌入式鎖相環(huán)元件 172
662 測(cè)試鎖相環(huán) 175
67 In-System Sources and Probes Editor 用法 175
68 DDS 實(shí)現(xiàn)原理與應(yīng)用 178
681 DDS 原理 178
682 DDS 信號(hào)發(fā)生器設(shè)計(jì)示例 180
習(xí)題 181
實(shí)驗(yàn)與設(shè)計(jì) 181
實(shí)驗(yàn)6-1 查表式硬件運(yùn)算器設(shè)計(jì) 181
實(shí)驗(yàn)6-2 正弦信號(hào)發(fā)生器設(shè)計(jì) 182
實(shí)驗(yàn)6-3 簡(jiǎn)易邏輯分析儀設(shè)計(jì) 182
實(shí)驗(yàn)6-4 DDS 正弦信號(hào)發(fā)生器設(shè)計(jì) 183
實(shí)驗(yàn)6-5 移相信號(hào)發(fā)生器設(shè)計(jì) 184
實(shí)驗(yàn)6-6 VGA 簡(jiǎn)單圖像顯示控制模塊設(shè)計(jì) 185
實(shí)驗(yàn)6-7 AM 幅度調(diào)制信號(hào)發(fā)生器設(shè)計(jì) 186
第7 章 VHDL 設(shè)計(jì)深入 188
71 進(jìn)程中的信號(hào)賦值與變量賦值 188
72 含高阻輸出的電路設(shè)計(jì) 192
721 三態(tài)門(mén)設(shè)計(jì) 192
722 雙向端口的設(shè)計(jì)方法 193
723 三態(tài)總線電路設(shè)計(jì) 195
73 資源優(yōu)化 196
731 資源共享 197
732 邏輯優(yōu)化 198
733 串行化 199
74 速度優(yōu)化 200
741 流水線設(shè)計(jì) 201
742 關(guān)鍵路徑法 203
75 仿真延時(shí) 204
751 固有延時(shí) 204
752 傳輸延時(shí) 205 753 仿真 205
習(xí)題 206
實(shí)驗(yàn)與設(shè)計(jì) 207
實(shí)驗(yàn)7-1 4X4 陣列鍵盤(pán)鍵信號(hào)檢測(cè)電路設(shè)計(jì) 207
實(shí)驗(yàn)7-2 樂(lè)曲硬件演奏電路設(shè)計(jì) 207
實(shí)驗(yàn)7-3 PS2 鍵盤(pán)控制模型電子琴電路設(shè)計(jì) 210
實(shí)驗(yàn)7-4 直流電機(jī)綜合測(cè)控系統(tǒng)設(shè)計(jì) 213
實(shí)驗(yàn)7-5 VGA 動(dòng)畫(huà)圖像顯示控制電路設(shè)計(jì) 215
第8 章?tīng)顟B(tài)機(jī)設(shè)計(jì)技術(shù) 216
81 VHDL 狀態(tài)機(jī)的一般形式 216
811 狀態(tài)機(jī)的特點(diǎn)與優(yōu)勢(shì) 216
812 VHDL 狀態(tài)機(jī)的一般結(jié)構(gòu) 217
813 狀態(tài)機(jī)設(shè)計(jì)初始約束與表述 220
82 Moore 型狀態(tài)機(jī)的設(shè)計(jì) 221
821 多進(jìn)程狀態(tài)機(jī) 222
822 序列檢測(cè)器之狀態(tài)機(jī)設(shè)計(jì) 225
83 Mealy 型狀態(tài)機(jī)的設(shè)計(jì) 226
84 狀態(tài)編碼 230
841 直接輸出型編碼 230
842 順序編碼 232
843 一位熱碼狀態(tài)編碼 232
844 狀態(tài)編碼設(shè)置 233
85 安全狀態(tài)機(jī)設(shè)計(jì) 234
851 程序直接導(dǎo)引法 235
852 狀態(tài)編碼監(jiān)測(cè)法 235
853 借助EDA 優(yōu)化控制工具生成安全狀態(tài)機(jī) 236
習(xí)題 236
實(shí)驗(yàn)與設(shè)計(jì) 236
實(shí)驗(yàn)8-1 序列檢測(cè)器設(shè)計(jì) 236
實(shí)驗(yàn)8-2 并行ADC 采樣控制電路實(shí)現(xiàn)與硬件驗(yàn)證 237
實(shí)驗(yàn)8-3 數(shù)據(jù)采集模塊設(shè)計(jì) 238
實(shí)驗(yàn)8-4 五功能智能邏輯筆設(shè)計(jì) 239
實(shí)驗(yàn)8-5 串行ADC/DAC 采樣或信號(hào)輸出控制電路設(shè)計(jì) 240
第9 章 16 位CPU 創(chuàng)新設(shè)計(jì) 241
91 KX9016 的結(jié)構(gòu)與特色 241
92 KX9016 基本硬件系統(tǒng)設(shè)計(jì) 244
921 單步節(jié)拍發(fā)生模塊 244
922 運(yùn)算器 244
923 比較器 245 924 基本寄存器與寄存器陣列組 246
925 移位器 250
926 程序與數(shù)據(jù)存儲(chǔ)器 251
93 KX9016v1 指令系統(tǒng)設(shè)計(jì) 251
931 指令格式 251
932 指令操作碼 252
933 軟件程序設(shè)計(jì)實(shí)例 254
934 KX9016 v1 控制器設(shè)計(jì) 255
935 指令設(shè)計(jì)實(shí)例詳解 259
94 KX9016 的時(shí)序仿真與硬件測(cè)試 260
941 時(shí)序仿真與指令執(zhí)行波形分析 260
942 CPU 工作情況的硬件測(cè)試 262
95 KX9016 應(yīng)用程序設(shè)計(jì)實(shí)例和系統(tǒng)優(yōu)化 264
951 乘法算法及其硬件實(shí)現(xiàn) 264
952 除法算法及其硬件實(shí)現(xiàn) 265
953 KX9016v1 的硬件系統(tǒng)優(yōu)化 266
習(xí)題 267
實(shí)驗(yàn)與設(shè)計(jì) 268
實(shí)驗(yàn)9-1 16 位CPU 驗(yàn)證性設(shè)計(jì)綜合實(shí)驗(yàn) 268
實(shí)驗(yàn)9-2 新指令設(shè)計(jì)及程序測(cè)試實(shí)驗(yàn) 268
實(shí)驗(yàn)9-3 16 位CPU 的優(yōu)化設(shè)計(jì)與創(chuàng)新 269
第10 章 VHDL 仿真和語(yǔ)句補(bǔ)充 271
101 VHDL 仿真流程 272
102 VHDL 測(cè)試基準(zhǔn)實(shí)例 274
103 VHDL Test Bench 測(cè)試流程 276
104 VHDL 子程序 278
1041 函數(shù) 278
1042 重載函數(shù) 281
1043 決斷函數(shù) 283
1044 過(guò)程 284
1045 重載過(guò)程 286
1046 子程序調(diào)用語(yǔ)句 286
1047 RETURN 語(yǔ)句 288
1048 并行過(guò)程調(diào)用語(yǔ)句 289
105 VHDL 程序包 291
習(xí)題 293
實(shí)驗(yàn)與設(shè)計(jì) 294
實(shí)驗(yàn)10-1 在ModelSim 上對(duì)VHDL Test Bench 進(jìn)行仿真 294
第11 章 DSP Builder 系統(tǒng)設(shè)計(jì)方法 295 111 MATLAB/DSP Builder 及其設(shè)計(jì)流程 295
112 正弦信號(hào)發(fā)生器設(shè)計(jì) 297
1121 建立設(shè)計(jì)模型 298
1122 Simulink 模型仿真 304
1123 SignalCompiler 使用方法 307
1124 使用ModelSim 進(jìn)行RTL 級(jí)仿真 308
1125 使用Quartus II 實(shí)現(xiàn)時(shí)序仿真 310
1126 硬件測(cè)試與硬件實(shí)現(xiàn) 310
113 DSP Builder 層次化設(shè)計(jì) 311
114 基于DSP Builder 的DDS 設(shè)計(jì) 314
1141 DDS 模塊設(shè)計(jì) 314
1142 FSK 調(diào)制器設(shè)計(jì) 316
1143 正交信號(hào)發(fā)生器設(shè)計(jì) 318
1144 數(shù)控移相信號(hào)發(fā)生器設(shè)計(jì) 318
1145 幅度調(diào)制信號(hào)發(fā)生器設(shè)計(jì) 318
115 HIL 硬件測(cè)試 320
習(xí)題 324
實(shí)驗(yàn)與設(shè)計(jì) 325
實(shí)驗(yàn)11-1 利用MATLAB/DSP Builder 設(shè)計(jì)基本電路模塊 325
實(shí)驗(yàn)11-2 基于DSP Builder 的DDS 應(yīng)用模型設(shè)計(jì) 326
實(shí)驗(yàn)11-3 HIL 硬件環(huán)仿真實(shí)驗(yàn) 327
第12 章 DSP Builder 設(shè)計(jì)深入 329
121 FIR 數(shù)字濾波器設(shè)計(jì) 329
1211 FIR 濾波器原理 329
1212 使用DSP Builder 設(shè)計(jì)FIR 濾波器 330
1213 使用MATLAB 的濾波器設(shè)計(jì)工具 334
1214 使用FIR IP Core 設(shè)計(jì)FIR 濾波器 340
122 HDL 模塊插入仿真及其設(shè)計(jì) 343
習(xí)題 346
實(shí)驗(yàn)與設(shè)計(jì) 347
實(shí)驗(yàn)12-1 FIR 數(shù)字濾波器設(shè)計(jì)實(shí)驗(yàn) 347
實(shí)驗(yàn)12-2 調(diào)制解調(diào)模塊設(shè)計(jì)實(shí)驗(yàn) 348
實(shí)驗(yàn)12-3 HDL Import 模塊應(yīng)用實(shí)驗(yàn) 348
附錄A EDA 開(kāi)發(fā)系統(tǒng)及相關(guān)電路與表格 349
A1 KX_CDS 系列EDA/SOPC 系統(tǒng) 350
A2 部分實(shí)驗(yàn)擴(kuò)展模塊 354
A3 mif 文件生成器使用方法 355
A4 核心板FPGA 擴(kuò)展至KX_CDS 系統(tǒng)對(duì)照表 357
A5 多功能重配置結(jié)構(gòu)可切換的部分實(shí)驗(yàn)電路圖 359