一、实验目的

1、了解时序电路的 VHDL 语言设计方法。
2、掌握同步计数器的设计方法,设计任意进制的计数器。

二、实验内容

1、用VHDL设计一个上升沿触发、异步清零的4位二进制计数器。

三、实验设计及结果

1、实验设计

本实验设计一个上升沿触发、异步清零的4位二进制计数器,运用if语句达到预期目标。预设初始状态为A=”0000”,设计当复位为有效电平时计数器清零,当时钟信号发生,并处于上升沿时,计数器开始工作。
当复位键为有效电平,即RESET=’0’时,输出Y=”0000”,此时达到异步清零的目标;当时钟信号发生,且在其上升沿,及CLK=’1’时,A+“0001”,进而输出Y达到在上升沿进行计数的目标。

2、实验代码

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity yibu is
port(A:in std_logic_vector(3 downto 0);CLK: in std_logic;RESET: in std_logic;Y: out std_logic_vector(3 downto 0));
end yibu;
architecture Q of yibu is
beginprocess(A,CLK,RESET)beginif RESET ='0' thenY<= "0000";elsif CLK'event and CLK='1' thenY <= A +"0001";end if;end process;
end Q;

仿真代码(init及always进程)

init : PROCESS
BEGIN  RESET <='0';wait for 200 ns;A <= "0000";RESET <='1';   wait for 200 ns;    A <= "0001";RESET <='1';    wait for 200 ns;A <= "0010";RESET <='1';wait for 200 ns;A <= "0011";RESET <='1';    wait for 200 ns;A <= "0100";RESET <='1';    wait for 200 ns;A <= "0101";RESET <='1';    wait for 200 ns;A <= "0110";RESET <='1';    wait for 200 ns;A <= "0111"; RESET <='1';wait for 200 ns;A <= "1000"; RESET <='1';wait for 200 ns;A <= "1001";RESET <='1';  wait for 200 ns;A <= "1010"; RESET <='1';wait for 200 ns;A <= "1011"; RESET <='1';wait for 200 ns;A <= "1100"; RESET <='1';wait for 200 ns;A <= "1101"; RESET <='1';wait for 200 ns;A <= "1110"; RESET <='1';wait for 200 ns;A <= "1111"; RESET <='1';WAIT;
END PROCESS init;
always : PROCESS
BEGIN                                                         CLK <= '0';wait for 100 ns;CLK <= '1';wait for 100 ns;
END PROCESS always;
END yibu_arch;

3、实验结果


注:仿真结果图中输入A存在红色线状态:在代码中开始未设置A的初始数值,而当RESET为有效电平时,此时A置零,则开始有确切数值。

四、实验思考

仿真时如何改变时钟频率?如果改变时钟频率,计数器实验的结果有何变化?
仿真时在vht文件中always进程中,通过时钟信号CLK处于不同状态是的时延改变时钟频率;若时钟频率过高,则对于A的状态读取不完全,使得输出出现错误;若时钟频率过低,则存在时钟信号出发而计数器未及响应,则响应时刻出现输出结果未改变的状况,使得计数器存在误差。

FPGA应用实验设计(二)—异步清零4位二进制计数器相关推荐

  1. 【verilog_9】: 设计16位二进制计数器,带异步复位、同步使能、同步装载、同步清零、同步置位

    2.设计16位二进制计数器,带异步复位.同步使能.同步装载.同步清零.同步置位 法一 author : Mr.Mao e-mail : 2458682080@qq.commodule CNT_16B2 ...

  2. 同步电路出现异步清零可以吗_异步计数器 || 计数器的分类 ||异步二进制十进制|| 74290 8421 5421 || 数电...

    异步计数器 || 计数器的分类 || 异步 二进制 十进制 || 74290 || 数电 这一节介绍异步二进制计数器. 计数器功能: 计数器是对输入脉冲个数进行计数的时序电路. 计数器除了直接用于计数 ...

  3. 异步清零和同步置数/清零的区别

    同步,异步是对于时钟而言的. 同步指的是,状态的变化需要等待时钟有效沿来触发,所有动作同时跟随这个时钟变化,而异步时,状态变化不依赖与时钟. 异步清零说的是,你需要对一个计数器在满足某种条件时想要他归 ...

  4. 使用D触发器完成带有异步清零clrn和同步使能wen的8位寄存器

    要求: 看到这个题,首先我们应该先考虑D触发器的实现: `timescale 1ns / 1psmodule dffe(input clk,input clrn,wen,input d,output ...

  5. VHDL设计一个同步置数、异步清零的D触发器

    设计一个同步置数.异步清零的D触发器,其引脚名称和逻辑功能如下表所示. LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY ddddd IS PORT ...

  6. 怎么样理解同步清零和异步清零?

    DA专业论坛 »  通用设计 » [求助] 大家是怎么样理解 同步清零和 异步清零的?? 查看完整版本: [求助] 大家是怎么样理解同步清零和异步清零的?? mxflying 2005-4-20 03 ...

  7. 同步置数与异步清零的区别

    同步,异步是对于时钟而言的. 同步指的是,状态的变化需要等待时钟有效沿来触发,所有动作同时跟随这个时钟变化,而异步时,状态变化不依赖与时钟. 异步清零说的是,你需要对一个计数器在满足某种条件时想要他归 ...

  8. HDLBITS笔记23:触发器的基础练习(同步清零、异步清零、复位端、字节使能等)

    题目1: D触发器是一种电路,它存储位并定期更新,位于时钟信号的(通常)正边. D 触发器在使用时钟始终块时由逻辑合成器创建(请参见始终阻止2).D触发器是最简单的"组合逻辑后跟触发器的斑点 ...

  9. 74ls163是同步清零吗_74LS163是具有同步清零功能的十六进制计数器,要

    74LS163是具有同步清零功能的十六进制计数器,要想构成12进制计数器,采用清零的方法,应该在状态清零? 答:1100 Microsoft has emphasized time and time ...

最新文章

  1. 海天学院的打造IT人才讲座准备
  2. 【SeeMusic】下载安装并注册 SeeMusic 软件
  3. window下Nodejs的部署
  4. 逻辑回归评分卡分数映射
  5. AAAI2021论文合集汇总!(持续更新)
  6. 《数据库SQL实战》查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数t
  7. [BZOJ1509][NOI2003]逃学的小孩
  8. Servlet使用适配器模式进行增删改查案例(DeptDaoImpl.java)
  9. r如何查询mysql中的数据类型_MySQL-mysql中的数据类型
  10. X86汇编语言从实模式到保护模式11:指令格式及操作尺寸
  11. MySQL性能优化 分区
  12. Rust : time,关于程序运行的计时
  13. Wireshark对京东网站进行抓包
  14. FM国际复利理财基金
  15. html尖角效果,CSS3之尖角标签_html/css_WEB-ITnose
  16. C语言入门基础_验证哥德巴赫猜想
  17. jsp的内置对象有哪些,四大作用域有哪些??
  18. Javescript第二周学习
  19. js实现点击按钮图片自动切换_☆往事随風☆的博客
  20. 新学期——学习计划大挑战

热门文章

  1. 计算机毕业设计ssm教学管理系统upz69系统+程序+源码+lw+远程部署
  2. 鸿蒙支持小米,魅族宣布接入鸿蒙,小米OV却断然拒绝?官方:纯属造谣
  3. 【免刷机破解root】网心云玩客云 EMMC点位图(对焊接能力要求较高)必备软件:DiskGenius,HxD,Win32DiskImager
  4. 《摆渡人》-经典语录及感悟
  5. [OpenGL - 游戏开发] 仿制《Minecraft/我的世界》 - 总结及演示程序
  6. 行业深度解读:当区块链遇见汽车后市场
  7. ios学习笔记3--导航控制器详解
  8. linux(类UNIX)体系家族
  9. 深入了解windows以及LInux不同之处
  10. mov转换mp4的最简单方法