第3章 VHDL設(shè)計初步計數(shù)器_第1頁
第3章 VHDL設(shè)計初步計數(shù)器_第2頁
第3章 VHDL設(shè)計初步計數(shù)器_第3頁
第3章 VHDL設(shè)計初步計數(shù)器_第4頁
第3章 VHDL設(shè)計初步計數(shù)器_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

EDA技術(shù)實用教程第3章

VHDL設(shè)計初步

與組合電路主要的不同點:帶有存儲功能基本的時序邏輯電路:觸發(fā)器,以D觸發(fā)器最為常見。Q=DCP或CPCP代表時鐘信號3.2基本時序電路的VHDL描述

3.2基本時序電路的VHDL描述3.2.1D觸發(fā)器的VHDL描述

3.2基本時序電路的VHDL描述3.2.1D觸發(fā)器的VHDL描述

1.上升沿檢測表達(dá)式和信號屬性函數(shù)EVENT2.不完整條件語句與時序電路表示當(dāng)信號發(fā)生變化的時刻IF條件表達(dá)式語句

沒有ELSE(保持)ENDIF3.2基本時序電路的VHDL描述3.2.2VHDL實現(xiàn)時序電路的不同表述

3.2基本時序電路的VHDL描述3.2.2VHDL實現(xiàn)時序電路的不同表述

3.3計數(shù)器設(shè)計計數(shù)器是典型的時序邏輯電路,它用來累計和記憶輸入脈沖的個數(shù)。是數(shù)字系統(tǒng)中很重要的基本操作。計數(shù)是計誰的數(shù)?主要是對脈沖的個數(shù)進(jìn)行計數(shù),以實現(xiàn)測量、計數(shù)和控制的功能,同時兼有分頻功能。本例設(shè)計的是一個4位二進(jìn)制加法計數(shù)器。3.3計數(shù)器的VHDL設(shè)計

3.3計數(shù)器的VHDL設(shè)計

3.3.14位二進(jìn)制加法計數(shù)器設(shè)計Buffer只接收內(nèi)部信號,不接收外部信號,兼有out功能Out類型端口只能輸出,不能與內(nèi)部信號運算

3.3.2整數(shù)類型3.3.3計數(shù)器的其他VHDL表達(dá)方式

3.3計數(shù)器的VHDL設(shè)計

3.3.3計數(shù)器的其他VHDL表達(dá)方式七段(八段)數(shù)碼管示意圖七段(八段)數(shù)碼管實物圖對應(yīng)的引腳給出相應(yīng)的編碼,即可發(fā)光。以共陰極數(shù)碼管為例,如右圖所示。數(shù)碼管靜態(tài)顯示數(shù)碼管動態(tài)顯示把所有數(shù)碼管的8個筆劃段a-h同名端共陽極連在一起,而每一個數(shù)碼管的公陰極是各自獨立地控制。數(shù)碼管動態(tài)顯示所有數(shù)碼管接收到相同的字形碼。所有數(shù)碼管的8個筆劃段a-h同名端連在一起,同一個瞬間所有的數(shù)碼管顯示都是相同的。那么在一個屏幕上如何顯示0,1,2,3,4,5這樣不同的數(shù)字呢?

數(shù)碼管動態(tài)顯示首先顯示一個數(shù),然后關(guān)掉.然后顯示第二個數(shù),又關(guān)掉,那么將看到連續(xù)的數(shù)字顯示,輪流點亮掃描過程中,每位數(shù)碼管的點亮?xí)r間是極為短暫的(約1ms),由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。例如數(shù)碼管顯示01234567這么8個數(shù),在實際的工作流程如下:先打開一個數(shù)碼管送0,然后關(guān)掉。打開第二個數(shù)碼管送1,再關(guān)掉,依次向下,由于速度足夠快,那么我們將連續(xù)的看到01234567。數(shù)碼管編碼caseQis when0=>seg<="11111100";--abcdefgdp0 when1=>seg<="01100000";--1 when2=>seg<="11011010";--2 when3=>seg<="11110010";--3 when4=>seg<="01100110";--4 when5=>seg<="10110110";--5 when6=>seg<="10111110";--6 when7=>seg<="11100000";--7 when8=>seg<="11111110";--8 when9=>seg<="11110110";--9 when10=>seg<="11101110";--a when11=>seg<="00111110";--b when12=>seg<="10011100";--c when13=>seg<="01111010";--d when14=>seg<="10011110";--e when15=>seg<="10001110";--f whenothers=>null;endcase;3.4實用計數(shù)器的VHDL設(shè)計RSTENCLKCQ(3)COUTCQ(2)CQ(1)CQ(0)CNT10帶有異步復(fù)位同步使能的十進(jìn)制加法計數(shù)器3.4實用計數(shù)器的VHDL設(shè)計3.3.3計數(shù)器的其他VHDL表達(dá)方式接下頁3.4實用計數(shù)器的VHDL設(shè)計接上頁3.4實用計數(shù)器的VHDL設(shè)計3.3.3計數(shù)器的其他VHDL表達(dá)方式1.十進(jìn)制計數(shù)器相關(guān)語法3.4實用計數(shù)器的VHDL設(shè)計3.3.3計數(shù)器的其他VHDL表達(dá)方式2.程序分析3.4實用計數(shù)器的VHDL設(shè)計3.3.3計數(shù)器的其他VHDL表達(dá)方式2.程序分析3.4實用計數(shù)器的VHDL設(shè)計3.3.3計數(shù)器的其他VHDL表達(dá)方式3.時序模塊中的同步控制信號和異步控制信號的構(gòu)建

4.另一種描述方式3.4實用計數(shù)器的VHDL設(shè)計3.3.3計數(shù)器的其他VHDL表達(dá)方式3.時序模塊中的同步控制信號和異步控制信號的構(gòu)建

4.另一種描述方式習(xí)題3-1畫出與以下實體描述對應(yīng)的原理圖符號元件:習(xí)題3-2圖3-16所示的是4選1多路選擇器,試分別用IF_THEN語句、WHEN_ELSE和CASE語句的表達(dá)方式寫出此電路的VHDL程序,要求選擇控制信號s1和s0的數(shù)據(jù)類型為STD_LOGIC;當(dāng)s1='0',s0='0';s1='0',s0='1';s1='1',s0='0'和s1='1',s0='1'時,分別執(zhí)行y<=a、y<=b、y<=c、y<=d。

習(xí)題3-3圖3-17所示的是雙2選1多路選擇器構(gòu)成的電路MUXK,對于其中MUX21A,當(dāng)s='0'和s='1'時,分別有y<='a'和y<='b'。試在一個結(jié)構(gòu)體中用兩個進(jìn)程來表達(dá)此電路,每個進(jìn)程中用CASE語句描述一個2選1多路選擇器MUX21A。習(xí)題3-4將3-20程序的計數(shù)器改為12進(jìn)制計數(shù)器,程序用例3-21的方式表述,并且將復(fù)位RST改為同步清0控制,加載信號LOAD改為異步控制方式。討論例3-20與例3-21的異同點。3-5設(shè)計含有異步清零和計數(shù)使能的16位二進(jìn)制加減可控計數(shù)器。3-6圖3-18是一個含有上升沿觸發(fā)的D觸發(fā)器的時序電路,試寫出此電路的VHDL設(shè)計文件。

習(xí)題3-7給出1位全減器的VHDL描述。要求:(1)首先設(shè)計1位半減器,然后用例化語句將它們連接起來,圖3-19中h_suber是半減器,diff是輸出差,s_out是借位輸出,sub_in是借位輸入。(2)根據(jù)圖3-19設(shè)計1位全減器。以1位全減器為基本硬件,構(gòu)成串行借位的8位減法器,要求用例化語句來完成此項設(shè)計(減法運算是x–y–sun_in=diffr)。

習(xí)題3-8給出一個4選1多路選擇器的VHDL描述。選通控制端有4個輸入:S0、S1、S2、S3。當(dāng)且僅當(dāng)S0=0時:Y=A;S1=0時:Y=B;S2=0時:Y=C;S3=0時:Y=D。3-9分頻方法有多種,最簡單的是二分頻和偶數(shù)分頻甚至奇數(shù)分頻,這用觸發(fā)器或指定計數(shù)模的計數(shù)器即可辦到。但對于現(xiàn)場實現(xiàn)指定分頻比或小數(shù)分頻率的分頻電路的設(shè)計就不是很簡單了。試對例3-20的設(shè)計稍作修改,將其進(jìn)位輸出COUT與異步加載控制LOAD連在一起,構(gòu)成一個自動加載型16位二進(jìn)制數(shù)計數(shù)器,也即一個16位可控的分頻器,給出其VHDL表述,并說明工作原理。設(shè)輸入頻率fi=4MHz,輸出頻率fo=516.5±1Hz(允許誤差±0.1Hz),16位加載數(shù)值=?。3-10用VHDL設(shè)計一個功能類似74LS160的計數(shù)器。3-11給出含有異步清零和計數(shù)使能的16位二進(jìn)制加減可控計數(shù)器的VHDL描述。

習(xí)題3-12分別給出以下2個RTL圖的VHDL描述,注意其中的D觸發(fā)器和鎖存器的表述。

KHF-5型FPGA實驗開發(fā)系統(tǒng)簡介芯片簡介:1、FPGA芯片型號:EP1K100QC208-32、ALTERA公司生產(chǎn)3、集成10萬門4、引腳數(shù)為208系統(tǒng)資源50MHz、22.1184MHz、1~1MHz時鐘16個數(shù)據(jù)開關(guān)、4個脈沖開關(guān)、16個LED10個數(shù)碼管:右邊兩個為靜態(tài)顯示,其他8個為動態(tài)顯示A/D轉(zhuǎn)換:ADC0809(8位)、MAX196(12位)D/A轉(zhuǎn)換:DAC08004×4鍵盤、RS485接口、擴展接口、揚聲器、液晶(12864)等引腳設(shè)置I/O口引腳引腳資源clk時鐘PIN_8022.184M晶振F_IN待測頻率PIN_18350M晶振COUT溢出PIN_103LED管H[0]~H[6]十位顯示PIN_170172173174175176177右邊第二個數(shù)碼管abcdefgL[0]~L[6]個位顯示PIN_161162163164166167168右邊第一個數(shù)碼管abcdefg引腳設(shè)置步驟打開編譯好的工程;選擇菜單Assignment—AssignmentEditor在出現(xiàn)的對話框中將Category項改為PIN;在下面的表格中雙擊To下面的列選擇待分配的輸入輸出口,雙擊Location選擇FPGA上相應(yīng)的引腳;把所有引腳設(shè)置完成后對工程編譯。選菜單Assignment—AssignmentEditor

在頁面中Category選Pin進(jìn)行設(shè)置,如下圖:

程序下載步驟安裝

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論