新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 基于VHDL的多功能可變模計數器設計

        基于VHDL的多功能可變模計數器設計

        作者: 時間:2009-09-18 來源:網絡 收藏
        0 引 言
        隨著電子技術、計算機技術和EDA技術的不斷發展,利用FPGA/CPLD進行數字系統的開發已被廣泛應用于通信、航天、醫療電子、工業控制等領域。與傳統電路設計方法相比,FPGA/CPLD具有功能強大,開發周期短,投資少,便于追蹤市場變化及時修改產品設計,以及開發工具智能化等特點。近年來,FPGA/CPLD發展迅速,隨著集成電路制造工藝的不斷進步,高性價比的FPGA/CPLD器件推陳出新,使FPGA/CPLD成為當今硬件設計的重要途徑。在FPGA/CPLD的應用設計開發中,語言作為一種主流的硬件描述語言,具有很強的電路描述和建能力,能從多個層次對數字系統進行建和描述,從而大大簡化了硬件設計任務,提高了設計效率和可靠性,并在語言易讀性和層次化、結構化設計方面。表現出了強大的生命力和應用潛力。
        QuartusⅡ是Altera公司在21世紀初推出的FPGA/CPLD集成開發環境,是Altera公司前一代FPGA/CPLD集成開發環境Max+PlusⅡ的更新換代產品,其界面友好,使用便捷,功能強大,為設計者提供了一種與結構無關的設計環境,使設計者能方便地進行設計輸入、快速處理和器件編程。
        是數字系統中使用最多的時序電路之一,不僅能用于對時鐘脈沖計數,還可以用于分頻、定時、產生節拍脈沖和脈沖序列以及進行數字運算等??勺?a class="contentlabel" href="http://www.104case.com/news/listbylabel/label/模">由于計數容量可以根據需要進行變化,為其廣泛使用創造了便利。這里在QuartusⅡ開發環境下,用語言設計了一種具有清零、置數、使能控制、可逆計數和可變模功能的。

        1 基本可變模計數器設計
        可變模計數器是指計數/模值可根據需要進行變化的計數器。電路符號圖1所示,clk為時鐘脈沖輸入端,clr為清零端,m為模值輸入端,q為計數輸出端。
        基本可變模計數器的代碼如下所示:

        本文引用地址:http://www.104case.com/article/188621.htm


        說明:上述代碼設計采用了常用的if語句結構,即“if條件句then順序語句elsif條件句then順序語句else順序語句end if”結構,實現模值小于99的可變模計數。

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

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

        塵埃粒子計數器相關文章:塵埃粒子計數器原理

        上一頁 1 2 下一頁

        關鍵詞: VHDL 多功能 計數器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新郑市| 玉门市| 靖州| 金华市| 文山县| 左云县| 绍兴市| 宁南县| 通道| 上犹县| 高要市| 江津市| 兴仁县| 尼木县| 黎平县| 双牌县| 阳新县| 永定县| 湖口县| 呼玛县| 娄烦县| 璧山县| 仙游县| 吉安市| 三都| 邻水| 苏尼特左旗| 连平县| 南雄市| 页游| 类乌齐县| 木兰县| 临桂县| 碌曲县| 朝阳区| 尚志市| 太湖县| 上饶市| 信丰县| 寿宁县| 浦东新区|