出版時(shí)間:2010-11 出版社:北京航空航天大學(xué) 作者:周興華//李玉麗//傅飛峰 頁(yè)數(shù):293
前言
CPLD/FPGA是什么樣的器件?它起什么作用?它與單片機(jī)是怎樣的關(guān)系?為什么學(xué)會(huì)了單片機(jī)的設(shè)計(jì),還要再學(xué)習(xí)CPLD/FPGA的設(shè)計(jì)?剛接觸本書(shū)的讀者,很可能會(huì)有這些疑問(wèn)?!PLD(Complex Prograromable Logic Device),復(fù)雜可編程邏輯器件的英語(yǔ)縮寫(xiě)?!PGA(Field Programmable Gate Array),現(xiàn)場(chǎng)可編程門(mén)陣列的英語(yǔ)縮寫(xiě)。盡管CPLD與FPGA的結(jié)構(gòu)不同,但從應(yīng)用的角度來(lái)看均屬于可編程邏輯器件(Programmable Logic Device,PLD)的范疇。接下來(lái)的問(wèn)題是:可編程邏輯器件PLD有什么用(或者起什么作用)?它與單片機(jī)是怎樣的關(guān)系?為了說(shuō)清楚這件事,先舉一個(gè)例子:如果需要制作一個(gè)50 MHz的頻率計(jì),僅使用單片機(jī)顯然是不可能實(shí)現(xiàn)的,因?yàn)閱纹瑱C(jī)無(wú)法對(duì)高達(dá)50 MHz的頻率信號(hào)進(jìn)行計(jì)數(shù)及處理。那怎么辦呢?比較可行的方法是:先用數(shù)字邏輯電路對(duì)高達(dá)50 MHz的頻率信號(hào)進(jìn)行分頻、計(jì)數(shù)、鎖存,然后將測(cè)得的信號(hào)再交給單片機(jī)進(jìn)行運(yùn)算處理、顯示、輸出控制等。因?yàn)閿?shù)字邏輯電路的工作頻率比較高,可以滿足幾十至幾百M(fèi)Hz的信號(hào)處理。但還有問(wèn)題:完成這些工作的數(shù)字邏輯電路,需要十幾片至幾十片的通用數(shù)字邏輯集成電路芯片,顯然結(jié)構(gòu)太復(fù)雜了,可靠性也低。這個(gè)時(shí)候,可編程邏輯器件(CPLD或FPGA)就可以大顯身手了,可以直接使用PLD芯片進(jìn)行數(shù)字電路系統(tǒng)的設(shè)計(jì),將分頻、計(jì)數(shù)、鎖存等功能通過(guò)軟件編程的方法設(shè)計(jì)在PLD的芯片內(nèi)部,使得從原來(lái)的印板級(jí)設(shè)計(jì)上升到芯片級(jí)設(shè)計(jì),大大縮小了印板的體積,提高了可靠性。而單片機(jī)的特長(zhǎng)是使用方便,運(yùn)算精確靈活,控制能力強(qiáng),將CPLD/FPGA與單片機(jī)結(jié)合起來(lái)應(yīng)用之后,充分發(fā)揮了它們各自的特長(zhǎng),使其優(yōu)勢(shì)互補(bǔ)。這樣整個(gè)系統(tǒng)的結(jié)構(gòu)簡(jiǎn)單、功能強(qiáng)大、性價(jià)比非常高。剛才只是舉了一個(gè)很小的例子,實(shí)際上PLD所能完成的工作遠(yuǎn)不止這些,小至各種門(mén)電路、計(jì)數(shù)器、觸發(fā)器、鎖存器,大到雷達(dá)信號(hào)處理器、激光控制器,都可以用PLD來(lái)實(shí)現(xiàn),甚至還可以用PLD直接構(gòu)造出CPIJ內(nèi)核。現(xiàn)在明白了吧,可編程邏輯器件PLD主要應(yīng)用于單片機(jī)無(wú)法勝任的高頻數(shù)字邏輯領(lǐng)域。因此,學(xué)會(huì)單片機(jī)之后,還需要學(xué)習(xí)CPLD/FPGA的設(shè)計(jì)。
內(nèi)容概要
作者從2009年1月起,在《電子世界》雜志上連載了《手把手教你學(xué)CPLD/FPGA設(shè)計(jì)》講座。本書(shū)以此為藍(lán)本,另外增加了大量的篇幅與實(shí)驗(yàn)例子進(jìn)行充實(shí)。此外,為了幫助讀者掌握單片機(jī)與CPLD/FPGA的聯(lián)合設(shè)計(jì),還介紹了51單片機(jī)的基本知識(shí)及單片機(jī)c語(yǔ)言編程的基礎(chǔ)知識(shí),并通過(guò)實(shí)例設(shè)計(jì)進(jìn)行詳解。本書(shū)以實(shí)踐(實(shí)驗(yàn))為主線,以生動(dòng)短小的實(shí)例為靈魂,穿插介紹了Verilog HDL語(yǔ)言的語(yǔ)法及Altera公司的EPM7128S(或Atmel公司的ATFl508A5)設(shè)計(jì)開(kāi)發(fā)編程。本書(shū)理論與實(shí)踐緊密結(jié)合,由淺入深、循序漸進(jìn)地引導(dǎo)讀者進(jìn)行學(xué)習(xí)、實(shí)驗(yàn),這樣讀者學(xué)得進(jìn)、記得牢,不會(huì)產(chǎn)生畏難情緒,無(wú)形之中就掌握了CPLD/FPGA的聯(lián)合設(shè)計(jì)?! ”緯?shū)貫徹《手把手教你學(xué)系列叢書(shū)》的教學(xué)方式。書(shū)中附有光盤(pán),含本書(shū)所有的程序設(shè)計(jì)文件。本書(shū)可用作大學(xué)本科或?qū)??、中高等職業(yè)技術(shù)學(xué)校、電視大學(xué)等的教學(xué)用書(shū),也可作為CPLD/FPGA愛(ài)好者的自學(xué)用書(shū)。
書(shū)籍目錄
第1章 可編程邏輯器件概述 1.1 可編程邏輯器件簡(jiǎn)介 1.1.1 可編程邏輯器件的基本結(jié)構(gòu) 1.1.2 可編程邏輯器件的分類(lèi)及特點(diǎn) 1.1.3 可編程邏輯器件的邏輯表示方法 1.2 CPLD/FPGA的結(jié)構(gòu)與特性 1.2.1 基于乘積項(xiàng)的CPLD原理與結(jié)構(gòu) 1.2.2 基于乘積項(xiàng)的CPLD邏輯實(shí)現(xiàn)方式 1.2.3 基于查找表的FPGA原理與結(jié)構(gòu) 1.2.4 基于查找表的FPGA邏輯實(shí)現(xiàn)方式 1.2.5 CPLD與FPGA器件的差別 1.3 Altera公司的MAX7000系列(2PLD特性介紹 1.3.1 邏輯陣列塊(LAB) 1.3.2 宏單元 1.3.3 擴(kuò)展乘積項(xiàng) 1.3.4 可編程連線陣列 1.3.5 I/O控制塊 1.3.6 其他特性第2章 可編程邏輯器件的設(shè)計(jì)流程及學(xué)習(xí)開(kāi)發(fā)器材 2.1 可編程邏輯器件的設(shè)計(jì)流程 2.1.1 設(shè)計(jì)輸入 2.1.2 綜合 2.1.3 CPLD/FPGA器件適配 2.1.4 仿真 2.1.5 編程下載 2.2 CPLD/FPGA與單片機(jī)聯(lián)合設(shè)計(jì)的學(xué)習(xí)器材介紹 2.2.1 Altera公司的集成開(kāi)發(fā)軟件MAX+plusII及QuartusII 2.2.2 KeiIC51Windows集成開(kāi)發(fā)環(huán)境 2.2.3 MCU&CPLDDEMO綜合試驗(yàn)板 2.2.4 ByteBlasterMV并口下載器 2.2.5 單片機(jī)USB程序下載器 2.2.6 9V高穩(wěn)定專用穩(wěn)壓電源第3章 開(kāi)發(fā)軟件的安裝 3.1 KeilC51集成開(kāi)發(fā)軟件安裝 3.2 MAX+plusⅡ集成開(kāi)發(fā)軟件安裝 3.3 QuartusⅡ集成開(kāi)發(fā)軟件安裝 3.4 USBasp下載器的安裝與使用 3.4.1 USBasp下載器的安裝 3.4.2 USBasp下載器的使用 3.5 Atmel并口下載軟件atmelisp的安裝 3.6 POF to JED轉(zhuǎn)換軟件Pof2jed的安裝第4章 第一個(gè)CPLD/FPGA入門(mén)實(shí)驗(yàn)程序 4.1 使用Max+plusⅡ集成開(kāi)發(fā)軟件進(jìn)行入門(mén)實(shí)驗(yàn) 4.1.1 建立項(xiàng)目 4.1.2 設(shè)計(jì)輸入(原理圖或硬件描述語(yǔ)言) 4.1.3 選擇器件并鎖定引腳 4.1.4 編譯器件 4.1.5 仿真 4.1.6 編程下載 4.1.7 應(yīng)用 4.2 使用QuartusⅡ集成開(kāi)發(fā)軟件進(jìn)行入門(mén)實(shí)驗(yàn) 4.2.1 建立項(xiàng)目 4.2.2 設(shè)計(jì)輸入(原理圖或硬件描述語(yǔ)言) 4.2.3 設(shè)計(jì)編譯 4.2.4 仿真 4.2.5 引腳分配 4.2.6 編程下載 4.2.7 立用第5章 VerilogHDL硬件描述語(yǔ)言 5.1 VerilogHDL模塊的基本結(jié)構(gòu) 5.1.1 模塊聲明 5.1.2 端口定義 5.1.3 信號(hào)類(lèi)型說(shuō)明 5.1.4 邏輯功能描述 5.1.5 實(shí)驗(yàn)程序1——緩沖器 5.1.6 實(shí)驗(yàn)程序2——反相器(非門(mén)) 5.2 VerilogHDL語(yǔ)法要素 5.2.1 標(biāo)識(shí)符與關(guān)鍵字 5.2.2 常量、變量及數(shù)據(jù)類(lèi)型 5.2.3 實(shí)驗(yàn)程序3——與門(mén) 5.2.4 實(shí)驗(yàn)程序4——與非門(mén) 5.2.5 實(shí)驗(yàn)程序5——LED的閃爍 5.2.6 運(yùn)算符 5.2.7 運(yùn)算符的優(yōu)先級(jí) 5.2.8 實(shí)驗(yàn)程序6——或門(mén) 5.2.9 實(shí)驗(yàn)程序7——或非門(mén) 5.2.10 實(shí)驗(yàn)程序8——異或門(mén) 5.2.11 實(shí)驗(yàn)程序9——異或非門(mén) 5.2.12 實(shí)驗(yàn)程序10——三態(tài)門(mén) 5.3 VerilogHDL的行為語(yǔ)句 5.3.1 賦值語(yǔ)句 5.3.2 過(guò)程語(yǔ)句 5.3.3 塊語(yǔ)句 5.3.4 條件語(yǔ)句 5.3.5 循環(huán)語(yǔ)句 5.3.6 編譯預(yù)處理 5.3.7 任務(wù)和函數(shù) 5.4 VerilogHDL數(shù)字邏輯單元結(jié)構(gòu)的設(shè)計(jì) 5.4.1 結(jié)構(gòu)描述方式 5.4.2 實(shí)驗(yàn)程序——門(mén)級(jí)結(jié)構(gòu)描述設(shè)計(jì)的基本門(mén)電路 5.4.3 數(shù)據(jù)流描述方式 5.4.4 行為描述方式第6章 組合邏輯電路的設(shè)計(jì)實(shí)驗(yàn)第7章 觸發(fā)器的設(shè)計(jì)實(shí)驗(yàn)第8章 時(shí)序邏輯電路的設(shè)計(jì)實(shí)驗(yàn)第9章 CPLD/FPGA的設(shè)計(jì)應(yīng)用第10章 51單片機(jī)的基本知識(shí)第11章 單片機(jī)C語(yǔ)言基礎(chǔ)知識(shí)第12章 CPLD/FPGA與單片機(jī)的接口及數(shù)據(jù)傳輸?shù)?3章 CPLD/FPGA與單片機(jī)的聯(lián)合設(shè)計(jì)實(shí)例——液晶顯示頻率計(jì)參考文獻(xiàn)
章節(jié)摘錄
插圖:適配器(Fitter)有時(shí)也稱為結(jié)構(gòu)綜合器,它的功能是將綜合器產(chǎn)生的網(wǎng)表文件配置到指定的目標(biāo)器件中,并產(chǎn)生最終的可下載文件。如對(duì)CPLD器件而言,產(chǎn)生熔絲圖文件,即JEDEC文件;對(duì)FPGA器件則產(chǎn)生Bitstream位流數(shù)據(jù)文件。利用適配器可將綜合后的網(wǎng)表文件針對(duì)某一具體的目標(biāo)器件進(jìn)行邏輯映射操作,包括底層器件配置、邏輯分割、邏輯優(yōu)化、布局布線等。映射是把設(shè)計(jì)分為多個(gè)適合器件內(nèi)部邏輯資源實(shí)現(xiàn)的邏輯小塊的過(guò)程。適配器產(chǎn)生以下一些重要的文件:①適配報(bào)告,它包括芯片內(nèi)部資源耗用情況,設(shè)計(jì)的布爾方程描述情況等。②面向其他EDA工具的輸出文件,如EDIF文件等。③適配后的仿真模型,包括延時(shí)信息等,以便進(jìn)行精確的時(shí)序仿真。因?yàn)橐呀?jīng)得到器件的實(shí)際硬件特性(如時(shí)延特性),所以仿真結(jié)果能精確地預(yù)測(cè)未來(lái)芯片的實(shí)際性能。如果仿真結(jié)果達(dá)不到設(shè)計(jì)要求,就需要修改源代碼或選擇不同速度的器件,直至滿足設(shè)計(jì)要求。④器件編程文件,如用于CPLD編程的JEDEC、POF等格式的文件;用于FPGA配置的SOF、JAM、BIT等格式的文件。
編輯推薦
《手把手教你學(xué)CPLD/FPGA與單片機(jī)聯(lián)合設(shè)計(jì)》:手把手教你學(xué)系列叢書(shū)
圖書(shū)封面
評(píng)論、評(píng)分、閱讀與下載
手把手教你學(xué)CPLD/FPGA與單片機(jī)聯(lián)合設(shè)計(jì) PDF格式下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版