一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-04-26 08:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引 言

隨著電子技術(shù)、計算機技術(shù)和EDA技術(shù)的不斷發(fā)展,利用FPGACPLD進行數(shù)字系統(tǒng)的開發(fā)已被廣泛應(yīng)用于通信、航天、醫(yī)療電子、工業(yè)控制等領(lǐng)域。與傳統(tǒng)電路設(shè)計方法相比,F(xiàn)PGA/CPLD具有功能強大,開發(fā)周期短,投資少,便于追蹤市場變化及時修改產(chǎn)品設(shè)計,以及開發(fā)工具智能化等特點。近年來,F(xiàn)PGA/CPLD發(fā)展迅速,隨著集成電路制造工藝的不斷進步,高性價比的FPGA/CPLD器件推陳出新,使FPGA/CPLD成為當(dāng)今硬件設(shè)計的重要途徑。在FPGA/CPLD的應(yīng)用設(shè)計開發(fā)中,VHDL語言作為一種主流的硬件描述語言,具有很強的電路描述和建模能力,能從多個層次對數(shù)字系統(tǒng)進行建模和描述,從而大大簡化了硬件設(shè)計任務(wù),提高了設(shè)計效率和可靠性,并在語言易讀性和層次化、結(jié)構(gòu)化設(shè)計方面。表現(xiàn)出了強大的生命力和應(yīng)用潛力。

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

QuartusⅡ是Altera公司在21世紀(jì)初推出的FPGA/CPLD集成開發(fā)環(huán)境,是Altera公司前一代FPGA/CPLD集成開發(fā)環(huán)境Max+PlusⅡ的更新?lián)Q代產(chǎn)品,其界面友好,使用便捷,功能強大,為設(shè)計者提供了一種與結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,使設(shè)計者能方便地進行設(shè)計輸入、快速處理和器件編程

計數(shù)器是數(shù)字系統(tǒng)中使用最多的時序電路之一,不僅能用于對時鐘脈沖計數(shù),還可以用于分頻、定時、產(chǎn)生節(jié)拍脈沖和脈沖序列以及進行數(shù)字運算等??勺兡S嫈?shù)器由于計數(shù)容量可以根據(jù)需要進行變化,為其廣泛使用創(chuàng)造了便利。這里在QuartusⅡ開發(fā)環(huán)境下,用VHDL語言設(shè)計了一種具有清零、置數(shù)、使能控制、可逆計數(shù)和可變模功能的計數(shù)器。

1 基本可變模計數(shù)器設(shè)計

可變模計數(shù)器是指計數(shù)/模值可根據(jù)需要進行變化的計數(shù)器。電路符號圖1所示,clk為時鐘脈沖輸入端,clr為清零端,m為模值輸入端,q為計數(shù)輸出端。

基本可變模計數(shù)器的VHDL代碼如下所示:

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

說明:上述代碼設(shè)計采用了常用的if語句結(jié)構(gòu),即“if條件句then順序語句elsif條件句then順序語句else順序語句end if”結(jié)構(gòu),實現(xiàn)模值小于99的可變模計數(shù)。

從上述的代碼可以看出,基本的可變模計數(shù)器的功能單一。仿真驗證則表明在進行模值變換時,基本的可變模計數(shù)器存在一些功能上的缺陷:計數(shù)器若是由較小的模值變化為較大的模值時,能正常的進行變模計數(shù);但當(dāng)其由較大的模值變化為較小的模值,則可能出現(xiàn)計數(shù)失控,如圖2所示,圖中顯示了當(dāng)模值由12變換為7時,即發(fā)生了計數(shù)失控。失控的原因是大于當(dāng)模值由12變換為7時,計數(shù)輸出為q為11,大于當(dāng)前模值7的計數(shù)最大值6,由此產(chǎn)生了計數(shù)失控。

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

2 改進的多功能可變模計數(shù)器

為了克服上述基本可變模計數(shù)器的缺陷,并增加更多的控制功能,在此設(shè)計了一種改進的多功能可變模計數(shù)器,具有清零、置數(shù)、使能控制、可逆計數(shù)和可變模功能。其電路符號如圖3所示,clk為時鐘脈沖輸入端,m為模值輸入端,clr為清零控制端,s為置數(shù)控制端,d為置數(shù)輸入端,en為使能控制端,updn為計數(shù)方向控制端,q為計數(shù)輸出端,co為進位輸出端。

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

這里所設(shè)計的多功能可變模計數(shù)器的VHDL代碼如下所示:

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

LIBRARY IEEE;

值得注意的是,這里所設(shè)計的多功能可變模計數(shù)器具有如下特點:

(1)該設(shè)計的多功能可變模計數(shù)器具有多個功能控制端。因此各個控制端的優(yōu)先權(quán)順序就成為設(shè)計的關(guān)鍵,經(jīng)過理論分析和仿真調(diào)試,最終確認(rèn)的優(yōu)先權(quán)順序為:clr(清零)→clk(時鐘觸發(fā))→s(置數(shù))→en(使能)→updn(計數(shù)方向)。這個優(yōu)先權(quán)順序可以有效地保證各個功能的完整實現(xiàn),以及技術(shù)器的穩(wěn)定運行。

(2)為了防止出現(xiàn)計數(shù)失控,大多數(shù)計數(shù)器采用給計數(shù)器增加一個復(fù)位控制端的辦法,當(dāng)發(fā)現(xiàn)計數(shù)輸出q發(fā)生了計數(shù)失控時,通過復(fù)位控制端將計數(shù)器復(fù)位來排除計數(shù)失控。這種方法雖然有效,但是每次出現(xiàn)計數(shù)失控都要手動控制復(fù)位,給實際使用帶來了不便。該設(shè)計的多功能可變模計數(shù)器中,將當(dāng)前的計數(shù)輸出q與當(dāng)前的計數(shù)最大值m_temp進行比較,如果q比m_temp大,則強制將m_temp賦給q,這樣就可以自動避免計數(shù)失控,不必再增加手動的復(fù)位控制端。

3 仿真結(jié)果分析

該多功能可變模計數(shù)器在QuartusⅡ開發(fā)環(huán)境下進行了仿真驗證,功能仿真波形如圖4所示,時序仿真波形如圖5所示。

采用VHDL語言實現(xiàn)多功能可變模計數(shù)器設(shè)計并進行仿真驗證

仿真結(jié)果分析如下:

(1)clk為時鐘信號,由時鐘信號的上升沿觸發(fā)計數(shù);

(2)m為模值輸入端,當(dāng)其變化時,計數(shù)容量相應(yīng)發(fā)生變化;

(3)clr為清零控制端,當(dāng)其為高電平時清零;

(4)s為置數(shù)控制端,當(dāng)其為高電平時將置數(shù)輸入端d的數(shù)據(jù)加載到輸出端q;

(5)en為使能控制端,當(dāng)其為高電平時正常計數(shù),當(dāng)其為低電平時暫停計數(shù);

(6)updn為計數(shù)方向控制端,當(dāng)其為高電平時計數(shù)器加法計數(shù),當(dāng)其為低電平時計數(shù)器減法計數(shù)。

4 結(jié) 語

這里所設(shè)計的多功能可變模計數(shù)器在QuartusⅡ開發(fā)環(huán)境下進行了仿真驗證后,下載到湖北眾友科技實業(yè)股份有限公司的ZY11EDA13BE實驗箱中進行了硬件驗證。該實驗箱使用ACEX1K系列EP1K30QC208芯片作為核心芯片.實驗證明設(shè)計正確,功能完整,運行穩(wěn)定。另外,該設(shè)計的多功能可變模計數(shù)器可根據(jù)需要將模值的最大值由99進一步擴展,獲得更高的計數(shù)模值。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618531
  • cpld
    +關(guān)注

    關(guān)注

    32

    文章

    1257

    瀏覽量

    171520
  • vhdl
    +關(guān)注

    關(guān)注

    30

    文章

    820

    瀏覽量

    129952
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    M的十進制加/減可逆計數(shù)器設(shè)計、仿真與實驗

    電路進行仿真;掌握可逆計數(shù)器電路的安裝及調(diào)試方法。設(shè)計具有手控和自動方式實現(xiàn)M的十進制加/減可逆計數(shù)
    發(fā)表于 09-16 15:06

    在QuartusⅡ開發(fā)環(huán)境下怎么用VHDL語言設(shè)計可變功能計數(shù)器?

    在QuartusⅡ開發(fā)環(huán)境下,用VHDL語言設(shè)計了一種具有清零、置數(shù)、使能控制、可逆計數(shù)可變功能
    發(fā)表于 04-30 06:44

    如何用VHDL語言設(shè)計的多功能可變計數(shù)器

    如何用VHDL語言設(shè)計一種具有清零、置數(shù)、使能控制、可逆計數(shù)可變功能
    發(fā)表于 05-06 10:06

    各種功能計數(shù)器實例(VHDL源代碼)

    各種功能計數(shù)器實例(VHDL源代碼):
    發(fā)表于 05-27 10:19 ?54次下載
    各種<b class='flag-5'>功能</b>的<b class='flag-5'>計數(shù)器</b>實例(<b class='flag-5'>VHDL</b>源代碼)

    基于Multisim的計數(shù)器設(shè)計仿真

    計數(shù)器是常用的時序邏輯電路器件,文中介紹了以四位同步二進制集成計數(shù)器74LS161和異步二-五-十計數(shù)器74LS290為主要芯片,設(shè)計實現(xiàn)
    發(fā)表于 07-26 11:38 ?134次下載
    基于Multisim的<b class='flag-5'>計數(shù)器</b>設(shè)計<b class='flag-5'>仿真</b>

    基于Proteus的任意進制計數(shù)器設(shè)計與仿真

    提出一種基于Proteus 軟件的任意進制計數(shù)器的設(shè)計。以74LS163 集成計數(shù)器為基礎(chǔ),用置數(shù)法設(shè)計了兩種48 進制計數(shù)器采用Proteus 軟件對
    發(fā)表于 07-29 18:53 ?0次下載

    基于74LS160的N進制計數(shù)器仿真設(shè)計

    計的電路進行仿真實驗。仿真結(jié)果表明設(shè)計的計數(shù)器實現(xiàn)所要求的N進制技術(shù)功能。最終得出
    發(fā)表于 12-21 17:08 ?7.1w次閱讀
    基于74LS160的N進制<b class='flag-5'>計數(shù)器</b><b class='flag-5'>仿真</b>設(shè)計

    采用VHDL預(yù)言實現(xiàn)基于Petri網(wǎng)的并行控制設(shè)計并進行仿真驗證

    Petri網(wǎng)是離散事件系統(tǒng)建模的重要工具,本文使用硬件描述語言VHDL實現(xiàn)了基于Petri網(wǎng)的并行控制。文中通過一個液位控制系統(tǒng)實例具體介紹了這一方法,并通過
    的頭像 發(fā)表于 04-22 08:10 ?2227次閱讀
    <b class='flag-5'>采用</b><b class='flag-5'>VHDL</b>預(yù)<b class='flag-5'>言實現(xiàn)</b>基于Petri網(wǎng)的并行控制<b class='flag-5'>器</b>設(shè)計<b class='flag-5'>并進行</b><b class='flag-5'>仿真</b><b class='flag-5'>驗證</b>

    如何使用FPGA進行多功能實驗板的設(shè)計與實現(xiàn)

    設(shè)計和實現(xiàn)了一個以Altera FPGA的Cyclone器件EP1C6Q240C8為核心的多功能實驗板。它分為核心板和擴展板, 用戶可以結(jié)合QuartusII集成開發(fā)環(huán)境, 使用VHDL語言
    發(fā)表于 11-16 16:48 ?8次下載
    如何使用FPGA<b class='flag-5'>進行</b><b class='flag-5'>多功能</b>實驗板的設(shè)計與<b class='flag-5'>實現(xiàn)</b>

    如何使用VHDL語言編程進行多功能數(shù)字鐘的設(shè)計

    應(yīng)用VHDL語言編程,進行多功能數(shù)字鐘的設(shè)計,并在MAX PLUSⅡ環(huán)境下通過了編譯、仿真、調(diào)試。
    發(fā)表于 06-11 08:00 ?0次下載
    如何使用<b class='flag-5'>VHDL</b><b class='flag-5'>語言</b>編程<b class='flag-5'>進行</b><b class='flag-5'>多功能</b>數(shù)字鐘的設(shè)計

    使用C語言實現(xiàn)脈沖計數(shù)器實驗的資料詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用C語言實現(xiàn)脈沖計數(shù)器實驗的資料詳細(xì)說明。
    發(fā)表于 06-19 17:40 ?20次下載
    使用C<b class='flag-5'>語言實現(xiàn)</b>脈沖<b class='flag-5'>計數(shù)器</b>實驗的資料詳細(xì)說明

    基于VHDL硬件描述語言實現(xiàn)CPSK調(diào)制的程序及仿真

    本文檔的主要內(nèi)容詳細(xì)介紹的是基于VHDL硬件描述語言實現(xiàn)CPSK調(diào)制的程序及仿真。
    發(fā)表于 01-19 14:34 ?11次下載
    基于<b class='flag-5'>VHDL</b>硬件描述<b class='flag-5'>語言實現(xiàn)</b>CPSK調(diào)制的程序及<b class='flag-5'>仿真</b>

    使用VHDL硬件描述語言實現(xiàn)基帶信號的MASK調(diào)制的程序與仿真

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用VHDL硬件描述語言實現(xiàn)基帶信號的MASK調(diào)制的程序與仿真。
    發(fā)表于 01-19 14:34 ?13次下載
    使用<b class='flag-5'>VHDL</b>硬件描述<b class='flag-5'>語言實現(xiàn)</b>基帶信號的MASK調(diào)制的程序與<b class='flag-5'>仿真</b>

    使用VHDL硬件描述語言實現(xiàn)基帶信號的MFSK調(diào)制的程序與仿真

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用VHDL硬件描述語言實現(xiàn)基帶信號的MFSK調(diào)制的程序與仿真。
    發(fā)表于 01-19 14:34 ?4次下載
    使用<b class='flag-5'>VHDL</b>硬件描述<b class='flag-5'>語言實現(xiàn)</b>基帶信號的MFSK調(diào)制的程序與<b class='flag-5'>仿真</b>

    使用VHDL硬件描述語言實現(xiàn)基帶碼發(fā)生的程序設(shè)計與仿真

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用VHDL硬件描述語言實現(xiàn)基帶碼發(fā)生的程序設(shè)計與仿真免費下載。
    發(fā)表于 01-20 13:44 ?16次下載
    使用<b class='flag-5'>VHDL</b>硬件描述<b class='flag-5'>語言實現(xiàn)</b>基帶碼發(fā)生<b class='flag-5'>器</b>的程序設(shè)計與<b class='flag-5'>仿真</b>