目录一概述............................................................................................................................................. - 1 -(一)设计背景及意义 (1)(二)设计任务与要求 (1)二六位频率计的工作原理............................................................................................................. - 1 -三六位频率计的设计与仿真......................................................................................................... - 2 -(一)六位十进制频率计的设计与仿真 (2)(二)六位十六进制频率计的设计与仿真 (5)四调试过程、测试结果及分析 ..................................................................................................... - 8 -(一)六位十进制频率计的测试结果与分析 (8)(二)六位十进制频率计扩展功能的测试结果与分析 (9)(三)六位十六进制频率计的测试结果与分析 (10)五课程设计体会........................................................................................................................... - 11 -六参考文献................................................................................................................................... - 11 -六位频率计的设计一概述(一)设计背景及意义现代电子设计技术的核心已日益趋转向基于计算机的电子设计自动化技术,即EDA(Electronic Design Automation)技术。
为了加深对EDA技术的理解,培养EDA设计的能力和团队协作能力,于是按要求完成了本次课程设计。
(二)设计任务与要求1、设计任务采用原理图设计并制作六位十进制频率计,用VHDL语言方法设计并制作六位十六进制频率计。
2、设计要求a)参考信号频率为1Hz;b)测量频率范围:六位十进制频率计:1Hz~100kHz;六位十六进制频率计:1Hz~4MHz;c)结果能用数码显示器显示。
二六位频率计的工作原理六位频率计由:测频控制电路、锁存器、计数器三大部分组成。
结构框图如图1所示。
图1:六位十进制频率计结构框图六位频率计可对被测信号频率进行测量。
测频控制电路的计数使能信号能产生一个固定脉宽的周期信号,并对频率计中的计数器的使能端进行同步控制。
计数器高电平时开始计数,低电平时停止计数,并保持其所计的脉冲数。
在停止计数期间,首先需要一个锁存信号的上升延将计数器在前一秒钟的计数值锁存进锁存器中,并由外部的显示电路显示出来。
三六位频率计的设计与仿真(一)六位十进制频率计的设计与仿真1.测频控制电路原理图及仿真波形图2.十进制计数器原理图及仿真波形图3.六位十进制频率计原理图及仿真波形图4.六位十进制频率计扩展功能说明 方案一:将测频控制电路修改为如图2所示电路即可实现频率直接读数,而不需换算的过程。
方案二:CNT_EN 的输入设置为:A B C D Q Q Q Q EN CNT ∙∙∙=_同样也可以实现频率直接读数,而不需换算的过程。
(二)六位十六进制频率计的设计与仿真1.测频控制电路VHDL 描述及仿真波形图LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY PLJ ISPORT( CLK : IN STD_LOGIC; CNT_EN : OUT STD_LOGIC; RST_CNT : OUT STD_LOGIC; LOAD : OUT STD_LOGIC); END PLJ;ARCHITECTURE BEHAV OF PLJ ISSIGNAL DIV2CLK : STD_LOGIC; BEGINPROCESS(CLK) BEGINIF CLK'EVENT AND CLK = '1' THENDiv2clk <= NOT Div2clk; END IF; END PROCESS;PROCESS(CLK, Div2clk) BEGINIF CLK = '0' AND Div2clk = '0' THEN RST_CNT <= '1';图2:六位十进制频率计功能扩展部分原理图ELSE RST_CNT <= '0';END IF;END PROCESS;LOAD <= NOT Div2clk;CNT_EN <= Div2clk;END BEHAV;2.二十四位锁存器VHDL描述及仿真波形图LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SCQ ISPORT(LK : IN STD_LOGIC;DIN : IN STD_LOGIC_VECTOR(23 DOWNTO 0);DOUT : OUT STD_LOGIC_VECTOR(23 DOWNTO 0));END SCQ;ARCHITECTURE BEHAV OF SCQ ISBEGINPROCESS(LK,DIN)BEGINIF LK'EVENT AND LK = '1' THEN DOUT <= DIN;END IF;END PROCESS;END BEHAV;3.二十四位计数器VHDL描述及仿真波形图LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JSQ ISPORT( FIN : IN STD_LOGIC;CLR : IN STD_LOGIC;ENABL : IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR(23 DOWNTO 0));END JSQ;ARCHITECTURE BEHAV OF JSQ ISSIGNAL CQI : STD_LOGIC_VECTOR (23 DOWNTO 0); BEGINPROCESS (FIN, CLR, ENABL)BEGINIF CLR ='1' THEN CQI <= (OTHERS => '0');ELSIF FIN'EVENT AND FIN = '1' THENIF ENABL = '1' THEN CQI <= CQI + 1;END IF;END IF;END PROCESS;DOUT <= CQI;END BEHAV;4.频率计顶层设计 VHDL描述及仿真波形图LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DC ISPORT ( CLK1HZ : IN STD_LOGIC;FSIN : IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR(23 DOWNTO 0)); END;ARCHITECTURE STRUC OF DC ISCOMPONENT PLJ ISPORT( CLK : IN STD_LOGIC;CNT_EN : OUT STD_LOGIC;RST_CNT : OUT STD_LOGIC;LOAD : OUT STD_LOGIC);END COMPONENT;COMPONENT JSQ ISPORT( FIN : IN STD_LOGIC;CLR : IN STD_LOGIC;ENABL : IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR(23 DOWNTO 0));END COMPONENT;COMPONENT SCQ ISPORT(LK : IN STD_LOGIC;DIN : IN STD_LOGIC_VECTOR(23 DOWNTO 0);DOUT : OUT STD_LOGIC_VECTOR(23 DOWNTO 0));END COMPONENT;SIGNAL TSTEN1 : STD_LOGIC;SIGNAL CLR_CNT1 : STD_LOGIC;SIGNAL LOAD1 : STD_LOGIC;SIGNAL DTO1 : STD_LOGIC_VECTOR (23 DOWNTO 0);SIGNAL CARRY_OUT1 : STD_LOGIC_VECTOR (6 DOWNTO 0);BEGINU1: PLJ PORT MAP (CLK => CLK1HZ, CNT_EN =>TSTEN1, RST_CNT => CLR_CNT1, LOAD => LOAD1);U2: SCQ PORT MAP ( LK => LOAD1, DIN => DTO1, DOUT => DOUT);U3: JSQ PORT MAP ( FIN => FSIN, CLR => CLR_CNT1, ENABL => TSTEN1, DOUT => DTO1);END STRUC;四调试过程、测试结果及分析(一)六位十进制频率计的调试过程、测试结果及分析表1 六位十进制频率计的测试结果调试过程:调试过程分三步,首先是测频控制电路调试,然后就是计数器电路调试,最后就是综合电路调试。
测频控制电路调试:观察输出的波形,输出波形中clr和lock信号开始出现一段XX波形,原因就是单片机开始识别的是一个强未知的信号。
使能信号enb输出的是时钟信号clk的16分频信号,而清零信号clr和锁存信号输出的都是时钟信号clk的二分频信号。