周慶芳
【摘 要】本文通過(guò)對(duì)可編程邏輯器件FPGA的相關(guān)基礎(chǔ)知識(shí)的學(xué)習(xí)與理論研究,進(jìn)行十進(jìn)制加法器的設(shè)計(jì),通過(guò)仿真測(cè)試驗(yàn)證了所做設(shè)計(jì)功能的正確性,并下載到EDA實(shí)驗(yàn)箱進(jìn)行了在線測(cè)試,闡述了可編程邏輯器件的基本設(shè)計(jì)方法。
【關(guān)鍵詞】FPGA 十進(jìn)制計(jì)數(shù)器 模塊設(shè)計(jì)
一、FPGA概述
可編程邏輯器件FPGA,是20世紀(jì)70年代發(fā)展起來(lái)的一種新型器件。它的應(yīng)用不僅簡(jiǎn)化了電路設(shè)計(jì),降低了成本,提高了系統(tǒng)的可靠性,而且給數(shù)字系統(tǒng)的設(shè)計(jì)帶來(lái)了革命性的變化[1]。FPGA開發(fā)采用的是一種高層次設(shè)計(jì)方法,這是一種“自頂向下”的方法,適應(yīng)了當(dāng)今芯片開發(fā)的復(fù)雜程度提高、上市時(shí)間緊迫的特點(diǎn)[2]。
二、模塊設(shè)計(jì)
(一)電源模塊
電源模塊包括3個(gè)開關(guān)、7個(gè)電壓輸出插孔。其中交流開關(guān)用于打開從220V交流電源接入的內(nèi)部變壓器,為實(shí)驗(yàn)箱提供基本工作電源。打開交流開關(guān),電源指示燈PL0亮,實(shí)驗(yàn)箱進(jìn)入待機(jī)狀態(tài)。按鈕開關(guān)APW1用于打開主板各模塊工作電源,按下APW1后,電源指示燈PL1亮,實(shí)驗(yàn)箱進(jìn)入工作狀態(tài),為系統(tǒng)提供+5V,+3.3V,+2.5V,+1.8V電源。
(二)通用編程模塊
本模塊為FPGA/CPLD通用配置/編程模塊,可以使用本模塊對(duì)ALTERA、LATTICE、XILINX等國(guó)際著名PLD公司的幾乎所有isp器件或FPGA/CPLD器件進(jìn)行編程下載并且能自動(dòng)識(shí)別目標(biāo)器件[3]。本模塊由并口插座、核心電壓跳線選擇器、下載接口三部分組成。下載接口用于連接本模塊與目標(biāo)器件的可編程接口。在本實(shí)驗(yàn)箱的配置模塊、適配板上都有相應(yīng)的接口,用10芯JTAG下載線將本模塊下載接口接配置模塊的下載接口,才能實(shí)現(xiàn)現(xiàn)場(chǎng)下載或配置。
(三)模式選擇模塊
本模塊采用8位撥碼開關(guān),實(shí)現(xiàn)硬件資源免連線功能,同時(shí)是為了全面開放I/O口而設(shè)計(jì)的。在不使用實(shí)驗(yàn)箱上相應(yīng)資源而要使用I/O口時(shí),所有撥碼開關(guān)均撥向下,此時(shí)硬件資源相連的I/O口會(huì)開放給用戶自由使用;當(dāng)需要使用實(shí)驗(yàn)箱上的資源時(shí),將相應(yīng)的撥碼開關(guān)撥向上,此時(shí)與此硬件資源相連的I/O口即被占用,用戶可利用這些資源進(jìn)行數(shù)字系統(tǒng)設(shè)計(jì)。
(四)LED顯示模塊
本模塊是常用的數(shù)字系統(tǒng)輸出模塊,即用LED的亮與滅觀察輸出電平的高與低。當(dāng)模式選擇模塊撥碼開關(guān)2、3均撥向上時(shí),LED1-LED16全部有效顯示。撥碼開關(guān)2控制前八個(gè)LED,3控制后八個(gè)LED。
(五)液晶顯示模塊
在使用液晶屏做液晶實(shí)驗(yàn)時(shí),將液晶屏正確地插在液晶顯示模塊對(duì)應(yīng)的單排軍品插座上。按鍵NK1用于液晶顯示復(fù)位,可調(diào)電阻NW1用于調(diào)節(jié)液晶的對(duì)比度。
(六)數(shù)碼管顯示模塊
本模塊是常用的數(shù)字系統(tǒng)輸出模塊。本模塊選擇共陰數(shù)碼管,相關(guān)知識(shí)可查閱模擬電子技術(shù)基礎(chǔ)書籍。當(dāng)模式選擇模塊撥碼開關(guān)1撥向上時(shí),本模塊有效。根據(jù)節(jié)省I/O口的原則,我們將8個(gè)數(shù)碼管SM1-SM8進(jìn)行如下連接: SM1-SM8的對(duì)應(yīng)段碼接在一起,即SM1-SM8的A段接在一起,以此類推。SM1-SM8的片選接3-8譯碼器的輸出端。因此,本模塊共需要控制信號(hào)3個(gè),作為3-8譯碼器輸入;數(shù)據(jù)信號(hào)8個(gè),作為數(shù)碼管段碼輸入。
(七)擴(kuò)展功能部分
為了使設(shè)計(jì)所使用的硬件資源不僅僅局限于實(shí)驗(yàn)箱上的固定模塊,我們專門設(shè)計(jì)了擴(kuò)展功能部分。作為開放性的主要體現(xiàn),本實(shí)驗(yàn)箱用擴(kuò)展插槽接擴(kuò)展板的方式實(shí)現(xiàn)各種外圍硬件資源的擴(kuò)展。
1.單片機(jī)擴(kuò)展板
本擴(kuò)展板主要完成單片機(jī)與PC機(jī)、FPGA/CPLD之間的通信,PS/2鍵盤控制,VGA顯示控制,串口通信等實(shí)驗(yàn)內(nèi)容。
2.數(shù)字邏輯學(xué)習(xí)板
本擴(kuò)展板主要用于進(jìn)行數(shù)字電路集成芯片的邏輯功能驗(yàn)證和學(xué)習(xí),未列入實(shí)驗(yàn)項(xiàng)目。將數(shù)字集成芯片插于學(xué)習(xí)板的插槽上,然后可通過(guò)實(shí)驗(yàn)箱上的資源輸入高低電平和時(shí)序,觀察集成芯片的輸出,可用于輔助數(shù)字電路教學(xué)。系統(tǒng)整體電路如圖1所示。
圖1 系統(tǒng)整體電路圖
三、總結(jié)
本文通過(guò)基于VHDL硬件描述語(yǔ)言對(duì)十進(jìn)制計(jì)數(shù)器的設(shè)計(jì),充分了解了使用CPLD開發(fā)硬件系統(tǒng)的模式。在開發(fā)過(guò)程中,我們依賴于計(jì)算機(jī)對(duì)硬件系統(tǒng)進(jìn)行設(shè)計(jì),便于修改,在實(shí)際設(shè)計(jì)中擺脫了以往繁多的電路芯片,用一塊CPLD芯片就可以完成絕大多數(shù)的設(shè)計(jì)??傊褂肅PLD這樣新興的方式,為硬件系統(tǒng)的開發(fā)節(jié)約了大量時(shí)間。
【參考文獻(xiàn)】
[1]幸云輝,楊旭東.計(jì)算機(jī)組成原理實(shí)用教程[M].北京:清華大學(xué)出版社,2004.
[2]潘松,黃繼業(yè).EDA技術(shù)與VHDL[M].北京:清華大學(xué)出版社,2005.
[3]潘松.現(xiàn)代DSP技術(shù)[M].西安:西安電子科技大學(xué)出版社,2005.