EDA技术-VHDL-5.10采用测频法的数字频率计程序设计与仿真.docxVIP

EDA技术-VHDL-5.10采用测频法的数字频率计程序设计与仿真.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.10采用测频法的数字频率计程序设计与仿真实验 1实验目的 掌握测频法数字频率计的基本原理,设计 VHDL程序实现其基本功能。 2?实验原理 系统组成的框图如图 5.10.1所示,图中从左至右包括时基产生与测频时序控制电路模块,以及待测 信号脉冲计数电路和锁存与译码显示控制电路模块。 I图5.10.1系统组成框图 I 图5.10.1系统组成框图 (1 )控制模块 控制十进制计数器的计数及锁存器的工作,当计数器计数时,锁存器锁存前一次的计数状态,当计数 器停止计数则锁存器接收计数器的计数数据,因此控制模块控制计数器与锁存器交替工作。 (2)计数器 由于需要使用LED显示频率,所以采用的是 10进制可清零、使能功能的计数器模块 (3 )锁存模块 接收四个计数器传输的信号进行锁存。 (4)译码显示模块 一共有6个LED需要显示,所以需要 6个译码模块。 3?实验内容 (1 )完成各基本模块的设计,并对各模块进行功能仿真,得到仿真波形。 (2)设计顶层文件,将各模块结合在一起,构成频率计整体,并进行仿真,检查程序功能是否完善。 (3 )对设计进行引脚配置并下载。 4.实验预习与思考 (1) 了解测频原理 2)锁存模块在该系统的必要性。 3)编写顶层设计文件时应当注意的问题。 5.程序设计与仿真 (1)程序设计 顶层文件(freq_top.vhd )源程序如下: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity freq_top is Port (CLKIN,RESET,QING1: IN STD_LOGIC; -- 控制信号 DQ1,DQ2,DQ3,DQ4 : OUT STD_LOGIC_VECTOR (6 DOWNTO 0); --4 位十进制数输出 COUTT : OUT STD_LOGIC);-- 进位输出 end freq_top; architecture Behavioral of freq_top is COMPONENT TESTCTL — 元件说明 PORT ( rst, clkk : in std_logic; cnt_en, rst_cnt, load : out std_logic); END COMPONENT; COMPONENT CNT10 PORT ( CLK,RST,EN : IN STD_LOGIC; CQ : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END COMPONENT; COMPONENT REG4B Port ( load, QING : in std_logic; din : in std_logic_vector(3 downto 0); dout : out std_logic_vector(3 downto 0)); END COMPONENT; COMPONENT DECL7S PORT (A : IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED7S : OUT STD_LOGIC_VECTOR(6 DOWNTO 0) ); END COMPONENT; --定义中间信号 SIGNAL N : STD_LOGIC_VECTOR (24 DOWNTO 0); --秒分频 SIGNAL M : STD_LOGIC_VECTOR (11 DOWNTO 0); --被测信号 SIGNAL FIN,F1HZ,EN_S,RST_S,LOAD_S : STD_LOGIC; SIGNAL CQ1,CQ2,CQ3,CQ4 : STD_LOGIC_VECTOR (3 DOWNTO 0); SIGNAL COUT1,COUT2,COUT3 : STD_LOGIC; SIGNAL DOUT1,DOUT2,DOUT3,DOUT4 : STD_LOGIC_VECTOR (3 DOWNTO 0); begin PROCESS(CLKIN,RESET) BEGIN IF RESET=1 THEN N=(OTHERS=0); M=(OTHERS=0); ELSIF(CLKINEVENT AND CLKIN=1)THEN N=N+1; M=M+1; END IF; END PROCESS; F1HZ=N(24); FIN=M(11); --元件例化 U1:TESTCTL PORT MAP (RST=RESET,CLKK=F1HZ,CNT_EN=EN_S, RST_CNT=RST_S, LOAD=LOAD_S); U2 : CNT10 PO

文档评论(0)

dajiefude2 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档