EDA頻率計設計_第1頁
EDA頻率計設計_第2頁
EDA頻率計設計_第3頁
EDA頻率計設計_第4頁
EDA頻率計設計_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、八位十六進制頻率計設計摘要頻率計又稱為頻率計數器,是一種專門對被測信號頻率進行測量 的電子測量儀器??捎脕頊y量頻率、時間、周期、計數。該設計是利用 VHDL語言實現頻率計的功能,頻率計主要由四個模塊構成:計數模塊、 鎖存模塊顯示模塊以及控制模塊。對各個部分的設計思路、對各部分 電路設計方案的選擇、元器件的篩選、以及對它們的調試、對調試結果 的分析,最后得到實驗結果的方方面面。關鍵字:頻率計、VHDL、元件例化。AbstractFrequency meter is called for frequency counter ,which is a specialized measuring dev

2、ice to be used for measuring measured signal frequency .It can be used to measure frequency, time, period, layout make use of VHDL language to come true the function of frequency meter, it is made up of four blocks which are counting block,registering block,showing block and curbing ,electric circui

3、t project design ,component screen , shakedown lest and analysing result of every part,finally getting all aspects of experimenting resultKey : frequency meter, VHDL,component.一. 原理八位十六進制頻率計是由TFCTRL的計數使能信號CNT_EN能產生 一個1秒脈寬的周期信號,并對頻率計中的32位二進制計數器 C0UNTER32B的ENABL使能進行同步控制。當CNT_EN高電平時允許計數; 低電平時停止計數,并保持其所

4、計的脈沖數。在停止計數期間,首先需 要一個鎖存信號LOAD的上跳沿將計數器在前一秒鐘的計數值鎖存進各 鎖存器REG32B中,并由八位十六進制7段譯碼器譯出,顯示計數值。 設置鎖存器的好處是數據顯示穩(wěn)定,不會由于周期性的清零信號而不斷 閃爍。鎖存信號后,必須有清零信號RST_CNT對計數器進行清零,為下 一秒的計數操作作準備。二. 方案論證用VHDL設計電路系統(tǒng),可以把任何復雜的電路系統(tǒng)視為一個模塊, 對應一個設計實體。在VHDL層次化設計中,它所設計的模塊既可以是 頂層實體,又可以是較低層實體,但對不同層次模塊應選擇不同的描述 方法。在系統(tǒng)的底層設計中,采用VHDL進行描述,由于其對系統(tǒng)很強

5、的行為描述能力,可以不必使系統(tǒng)層層細化,從而避開具體的器件結構, 從邏輯行為上直接對模塊進行描述和設計,之后,EDA軟件中的VHDL 綜合器將自動將程序綜合成為具體FPGA / CPLD等目標芯片的網表文件, 無疑可使設計大為簡化。VHDL特點:1. 能形式化地抽象表示電路的行為和結構;2. 支持邏輯設計中層次與范圍地描述;3. 可借用高級語言地精巧結構來簡化電out 勾;具有電路仿 真與驗證機制以保證設計的正確性;顯示模塊4. 支持電路描述由高層到低層的綜合轉換;5. 硬件描述和實現工藝無關;6. 便于文檔管理7.易于理解和設計重用鎖存模塊控制模塊計數模塊fin總體框圖三. 各模塊的實現和功

6、能仿真1、測頻控制模塊設計頻率計的關鍵是設計一個測頻率控制信號發(fā)生器,產生測量頻率的控制時序。控制時鐘信號clkl取為1Hz, 2分頻后即可查聲一個脈 寬為1秒的時鐘cnt-en, 一此作為計數閘門信號。當cnt-en為髙電 平時,允許計數;當cnt-en由高電平變?yōu)榈碗娖剑ㄏ陆笛氐絹恚r, 應產生一個鎖存信號,將計數值保存起來;鎖存數據后,還要在下次 cnt-en上升沿到來之前產生零信號rst_en,將計數器清零,為下次計數作準備。FIC1程序:!LCLK1CNTLIBRARY IEEE;RSTUSE FIC1 ISLOADPORT (CLK1:IN STD_LOGIC;CNT: OUT S

7、TD丄OGIC;instll二RST:OUT STD_LOGIC;LOAD:OUT STD_LOGIC):END FIC1;ARCHITECTURE one OF FIC1 ISSIGNAL M: STD LOGIC;BEGINPROCESS (CLK1)BEGINIF CLK1 r EVENT AND CLK1=T THENM= NOT M;END IF;END PROCESS;PROCESS (CLK1.M)BEGINIF CLKl=rOf AND M二0 THEN RST=T;ELSE RST =0;END IF;END PROCESS;LOAD = NOT M;CNT =M;END o

8、ne;仿真結果:PS10.0 nsPScniBADRSTIT-CNT32LCLR COUT31.03=3IEN匚FINinstnr2. 計數模塊計數器以待測信號作為時鐘,清零 信號rst到來時,異步清零;cnt-en為高 電平時開始計數。計數是以十進制數顯示,本文設計了一個簡單的10kHz以內信號的頻率機計,如果需要測試較高的頻率信號,則將cout的輸出位數增加,當然鎖存器的位數也要增加。程序:LIBRARY IEEE;USE CNT32 ISPORT (CLR:IN STD LOGIC;EN:IN STD LOGIC;FIN:IN STD LOGIC;COUT:OUT STD_LOGIC_V

9、ECTOR(31 DOWNTO 0);END CNT32;ARCHITECTURE two OF CNT32 ISSIGNAL CQI : STD LOGICVECTOR(31 DOWNTO 0);BEGINPROCESS (CLR.EN.FIN) BEGINIF CLR二T THEN CQI O);ELSIF FIN 1 EVENT AND FIN=,1, THENIF EN=rT THEN CQI = CQI + 1;END IF;END IF;END PROCESS;COUT =CQI;END two;仿真結果:DOUT31.9jNaineCLRENFIN1 COUTo X 1 X 2

10、X 340.0 :inst3、鎖存模塊當cnt-en下降沿到來時,將計數器的計數值鎖存,這樣可由外部的 七段譯碼器譯碼并在數碼管顯示。設置鎖存器的好處是顯示的數據穩(wěn) 定,不會由于周期性的清零信號而不斷閃爍。鎖存器的位數應跟計數器 完全一樣。程序:LIBRARY IE EE;ENTITY REG32A ISPORT( LK :IN STD.LOGIC;DIN:INSTD_LOGIC_VECTOR (31 DOWNTO 0);DOUT: OUT STD_LOGIC_VECTOR (31 DOWNTO 0);END REG32A;ARCHITECTURE three OF REG32A ISBEGI

11、NPROCESS (LK.DIN)BEGINIF LK 1 EVENT AND LK二T THEN DOUT LED7S 1 LED7S1LED7S 1 LED7S 1 LED7S 1 LED7SlLED7SlLED7S 1LED7Sl=1111011;WHEN 1111二LED7S1= T110001;WHEN OTHERS二NULL;END CASE;END PROCESS;PROCESS(Q)VARIABLE Q2:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINQ2:=Q&Q&Q&Q;CASE Q2 ISLED7S2LED7S2LED7S2LED7S2LED7S2L

12、ED7S2LED7S2LED7S2LED7S2LED7S2LED7S2LED7S2LED7S2LED7S2LED7S2 NULL;END CASE;END PROCESS;PROCESS(Q)VARIABLE Q3:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINQ3: =Q (8) &Q (9) &Q (10) &Q (11);CASE Q3 ISWHEN 0000=LED7S3LED7S3LED7S3LED7S3LED7S3LED7S3LED7S3LED7S3LED7S3LED7S3LED7S3 NULL;END CASE;END PROCESS;PROCESS(Q)V

13、ARIABLE Q4:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINQ4:=Q(12)&Q(13)&Q(14)&Q(15);CASE Q4 ISWHEN ,0000,=LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4LED7S4 NULL;END CASE;END PROCESS;PROCESS(Q)VARIABLE Q5:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINQ5:=Q(16)&Q(17)&Q(18)&Q(19);CASE

14、 Q5 ISLED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S5LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S6LED7S7=0111111;WHEN 0001二LED7S7LED7S7=T011011;WHEN 0011二LED7S7LED7S7LED7S7LED7S7LED7S7LED7S7LED7S7LED7S7LED7

15、S7LED7S7LED7S7LED7S7LED7S7 NULL;END PROCESS;PROCESS(Q)VARIABLE Q8:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINQ8: =Q (28) &Q (29) &Q (30) &Q(31);CASE Q8 ISWHEN w0000w=LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8LED7S8 NULL;END CASE;END PROCESS;仿真結果:NameaQsLED7S10EED7S2a

16、EED7S3aLEDTS4aEED7S50UD7S60IID7S7國EED7S8FRE3CLK finLED7S16.QLED7S26.0jLED7S3-6.QjLED7S46.OjLED7SE-6.QLED7S66.0jLED7S76.QjLED7S&6.Oj4 頂層模塊為了達到連接底層元件形成更髙層次的電路設計結構,設計中使用了例化語句程序:LIBRARY IEEE;USE FRE8 ISPORT( CLK :IN STD丄OGIC;fin :IN STD_LOGIC;LED7S1丄ED7S2 丄ED7S3 丄ED7S4.LED7S5 丄ED7S6,LED7S7 丄ED7S8:OUTSTD

17、_LOGIC_VECTOR(6 downto 0);END FRE8;ARCHITECTURE bhv8 OF FRE8 ISCOMPONENT FIC1PORT (CLK1:IN STD LOGIC;CNT: OUT STD LOGIC;RST:OUT STD_LOGIC;LOAD:OUT STD丄OGIC);END COMPONENT;COMPONENT CNT32PORT (CLR:IN STD_LOGIC;EN:IN STD LOGIC;fin:IN STD LOGIC;C()UT:OUT STD_L()GIC_VECTOR(31 DOWNTO 0);END COMPONENT;COM

18、PONENT REG32APORT( LK :IN STD_LOGIC;DIN :IN STD_LOGIC_VECTOR (31 DOWNTO 0);DOUT: OUT STD LOGIC_VECTOR (31 DOWNTO 0);END COMPONENT;COMPONENT DECL7SPORT (Q:IN STD L0GIC_VECT0R(31 DOWNTO 0);LED7S1,LED7S2,LED7S3,LED7S4,LED7S5,LED7S6,LED7S7,LED7S8:0UT STD_LOGIC_VECTOR(6 DOWNTO 0);END COMPONENT;SIGNAL a,b

19、,c:STD_LOGIC;SIGNAL d.e: STD LOG I VECTOR (31 DOWNTO 0);BEGINul : FIC1 PORT MAP(CLK1=CLK,CNT=a,RST=b,LOAD=c):u2 : CNT32 PORT MAP(FIN=fin,EN=a,CLR=b,COUT=d);u3 : REG32A PORT MAP(LK=c,DIN=df D0UT=e):u4:DECL7SP0RTMAP(Q二e,LED7S1二LED7S1丄ED7S2二LED7S2,LED7S3二LED7S3,LED7S4二LED7S4 丄ED7S5二LED7S5,LED7S6二LED7S6 丄ED7S7二LED7S7,LED7S8二LED7S8)仿真結果:護 叫ns 叫皿C1Kfina

溫馨提示

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

評論

0/150

提交評論