找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 14121|回復: 2
打印 上一主題 下一主題
收起左側

24進制計數器的 VHDL語言設計

[復制鏈接]
跳轉到指定樓層
樓主
ID:70481 發(fā)表于 2014-12-17 13:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

摘要: 介紹了使用 VHDL語言設計24進制計數器,
給出了功能仿真波形,
舉例說明了實現電子設計自動化 (EDA ) 的過程。
關鍵詞: VHDL語言; 24進制計數器; 功能仿真; 電子設計自動化
一、前言:
EDA技術的應用:電子EDA技術發(fā)展迅猛,逐漸在教學、科研、產品設計與制造等各方面都發(fā)揮著巨大的作用:
在教學方面:讓學生了解EDA的基本原理和基本概念、描述系統邏輯的方法、使用工具進行電子電路課程的模擬仿真實驗并在作畢業(yè)設計時從事簡單電子系統的設計,為今后工作打下基礎。具有代表性的是全國每兩年舉辦一次大學生電子設計競賽活動。
在科研方面:主要利用電路仿真工具進行電路設計與仿真;利用虛擬儀器進行產品調試;例如在CDMA無線通信系統中,所有移動手機和無線基站都工作在相同的頻譜,為區(qū)別不同的呼叫,每個手機有一個唯一的碼序列,CDMA基站必須能判別這些不同觀點的碼序列才能分辨出不同的傳呼進程;這一判別是通過匹配濾波器的輸出顯示在輸人數據流中探調到特定的碼序列;FPGA能提供良好的濾波器設計,而且能完成DSP高級數據處理功能,因而FPGA在現代通信領域方面獲得廣泛應用。
在產品設計與制造方面:從高性能的微處理器、數字信號處理器一直到彩電、音響和電子玩具電路等,EDA技術不單是應用于前期的計算機模擬仿真、產品調試,而且也在P哪的制作、電子設備的研制與生產、電路板的焊接、朋比的制作過程等有重要作用?梢哉f電子EDA技術已經成為電子工業(yè)領域不可缺少的技術支持。
EDA技術發(fā)展趨勢:EDA技術在進入21世紀后,,在仿真和設計兩方面支持標準硬件描述語言的功能強大的EDA軟件不斷更新、增加,使電子EDA技術得到了更大的發(fā)展,突出表現在以下幾個方面:使電子設計成果以自主知識產權的方式得以明確表達和確認成為可能;基于EDA工具的ASIC設計標準單元已涵蓋大規(guī)模電子系統及IP核模塊;軟硬件IP核在電子行業(yè)的產業(yè)領域、技術領域和設計應用領域得到進一步確認;SoC高效低成本設計技術的成熟。隨著半導體技術、集成技術和計算機技術的迅猛發(fā)展,電子系統的設計方法和設計手段都發(fā)生了很大的變化?梢哉f電子EDA技術是電子設計領域的一場革
本文用 VHDL語言設計了一個24進制計數器, 舉例說明利用VHDL語言實現電子設計自動化 (EDA)的過程
二、24進制計數器的設計
24進制計數器設計VHDL語言:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ESJZ IS
PORT(
CLK  :IN STD_LOGIC;                        --時鐘
EN   :IN STD_LOGIC;                       --使能端
CR   :IN STD_LOGIC;                       --清零端,低電平有效
LD   :IN STD_LOGIC;                        --數據載入控制,低電平有效
D    :IN STD_LOGIC_VECTOR(5 DOWNTO 0);  --載入數據端
CO   : OUT STD_LOGIC;                      --進位
Q    :OUT STD_LOGIC_VECTOR(5 DOWNTO 0)   --計時輸出
);
END  ESJZ ;

ARCHITECTURE a OF ESJZ  IS
SIGNAL     QN    :STD_LOGIC_VECTOR(5 DOWNTO 0);
BEGIN                                                 --進位控制
CO<='1' WHEN(QN=X"23" AND EN='1')
ELSE'0';
PROCESS(CLK,CR)
BEGIN
IF (CR='0')THEN
QN<="000000";
ELSE
IF (CLK'EVENT AND CLK='1') THEN
IF (LD='0') THEN                             --數據加載
QN<=D;
ELSIF(EN='1') THEN
IF (QN(3 DOWNTO 0)=3 and QN(5 DOWNTO 4)=2) or QN(3 DOWNTO 0)=9 THEN
QN(3 DOWNTO 0)<="0000";             --個位數進位
IF QN(5 DOWNTO 4)=2 THEN
QN(5 DOWNTO 4)<="00";             --十位數進位
ELSE
QN(5 DOWNTO 4)<= QN(5 DOWNTO 4)+1;
END IF;
ELSE
QN(3 DOWNTO 0)<= QN(3 DOWNTO 0)+1;
END IF ;
END IF;
END IF ;
END IF;
END PROCESS;
Q<=QN;
end a;
三、對源程序進行編譯仿真并分析
為了驗證設計的正確性,利用美國 Altera公司開發(fā)的 EDA工具軟件用MAX+PLUSⅡ, 對ESJZ.vhd 進行編譯,出現一處警告,但能編譯成功,不會影響其功能效果。

功能仿真波形如圖所示:
二十四進制計數器功能仿真
生成電路符號如圖所示:
二十四進制計數器元件符號

經仿真驗證知, 用 VHDL語言設計的二十四進制計數器運算正確, 達到了設計要求。 編譯、邏輯綜合時, VHDL綜合器完成將源文件自動地轉換為門級電路。
四、結語
上述二十四進制計數器經仿真, 結果完全達到了設計的目的。 利用 VHDL語言實現電子設計自動化, 設計出體積小而系統性能高的數字系統, 徹底改變了傳統的數字系統的設計方法、設計過程, 無疑將在現代數字系統設計中起越來越重要的作用。


參考文獻:
[1]侯伯亨, 顧新.VHDL硬件描述語言與數字邏輯電路設計[M].西安: 西安電子科技大學出版社,1998.5
[2]曾繁泰, 陳美金 .VHDL程序設計[M]. 北京:清華大學出版社,2000.5
[3]江國強,李哲英.EDA 技術與應用[M].北京:電子工業(yè)出版社,2005.1


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:263579 發(fā)表于 2017-12-20 21:57 | 只看該作者
請問有波形圖嗎?急需
回復

使用道具 舉報

板凳
ID:263579 發(fā)表于 2017-12-20 21:58 | 只看該作者
請問有波形圖嗎?急需
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表