4位加法计数器

4位加法计数器
4位加法计数器

1一、实验目的:

学习时序电路的设计、仿真和硬件测试,进一步熟悉VHDL技术。

二、原理说明:

图2.1是一含计数使能、异步复位和计数值并行预置功能4位加法计数器,例2.1是其VHDL描述。由图2-1所示,

4位锁存器;

rst是异步清0信号,高电平有效;

clk是锁存信号;

D[3..0]是4位数据输入端。

ENA是使能信号,当ENA为'1'时,多路选择器将加1器的输出值加载于锁存器的数据端;当ENA为'0'时将"0000"加载于锁存器。

三、实验内容:

1. 建CNT4B的工程(project)

在QUARTUSII软件下创建一工程,工程名为CNT4B,芯片名为EP1C3T144,选择FPGA目标器件,根据DE2的平台情况,选择cyclone II系列的EP2C35F672C6,注意工程路径不要放到安装路径;

2. 设计half_adder的VHDL模块

新建VHDL语言文件,输入如下半加器VHDL语言源程序,并存盘为CNT4B.vhd;

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CNT4B IS

PORT (CLK : IN STD_LOGIC;

RST : IN STD_LOGIC;

ENA : IN STD_LOGIC;

CLK_1,RST_1,ENA_1 : OUT STD_LOGIC; --for the test OUTY : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

COUT : OUT STD_LOGIC);

END CNT4B;

ARCHITECTURE behav OF CNT4B IS

SIGNAL CQI : STD_LOGIC_VECTOR(3 DOWNTO 0);

BEGIN

PROCESS ( CLK, RST, ENA)

BEGIN

IF RST = '0' THEN

CQI <= "0000" ;

OUTY <= "0000" ;

COUT <='0' ;

ELSIF CLK'EVENT AND CLK = '1' THEN

IF ENA = '1' THEN CQI <= CQI + 1;

COUT <= CQI(0) AND CQI(1) AND CQI(2) AND CQI(3); END IF;

END IF;

OUTY <= CQI ;

END PROCESS P_REG1 ;

CLK_1 <= CLK;

RST_1 <= RST;

ENA_1 <= ENA;

END behav;

3. 编辑测试用波形文件

4. 进行仿真

(1)设置仿真器进行功能仿

真:

(2)设置仿真器进行时序仿真:

5. 锁引脚

(1)由assignments->assignment editor,打开引脚锁定对话框,按下表进行锁定

(2)锁好引脚,进行全编译(compile),重新布局布线,时序仿真

6. 下载

。将instance框中的名字改为CNT4B

。在CNT4B框双击,弹出节点(noder)对话框,选择需要观察的节点:

CQI,COUT,OUTY。

。存盘为CNT4B.STP,加入到CNT4B的工程中

。由File->new,弹出对话框,选择SIGNALTAP LOGIC ANALYZER FILE

。为了采样时钟足够大,将CLK由DE2的27MHZ时钟代替,即将CLK 引脚锁定在PIN_D13

。由Processing->start compile 对文件进行全编译

。连接DE2板,在JTAG Chain Configuration进行配置,和下载文件调入

。按instance框的进入数据分析

。拨动ENA键,给出触发的上升沿,得到采集数据如下(结果正确)

l 将CLK 引脚锁定在PIN_G26,对文件进行全编译,连接DE2板,在JTAG Chain Configuration进行配置,下载文件调入,分别拨动ENA键,RST键,CLK键,现象分析如下:

(1)当ENA键,置上(即1)时,期间如果不拨动RST键进行清零复位,那么每拨动一下CLK键,计数一次,由0—15,当计数满16,再按动一次CLK键给出上升沿触发,则进位灯亮;期间如果拨动RST键进行清零复位,那么计数从零开始;

(2)当ENA键,置下(即0)时,无使能信号,不进行计数。

四、思考题:

1、在例2-1中是否可以不定义信号 CQ1,而直接用输出端口信号完成加法运算,即 : OUTY <= OUTY + 1 ?

答:不可以,因为信号OUTY定义的端口模式是OUT,是单向输出模式,所以只能作为输出信号,不能在结构体内再用来作为输入信号;如果OUTY定义的端口模式是BUFFER,就可以将计数器输出的计数信号回读来作为下一个计数值的初值。而在本实验中,该信号是一个反馈信号,作为输出信号的同时也是iyge输入信号,所以要定义以个新的信号,记为CQ1。

2、修改例2-1,用进程语句和IF语句实现进位信号的检出。

答:process(cqi)

Begin

If cqi(0)= ' 1' then

I if cqi(1)= ' 1'; then

if cqi(2)= ' 1' ;then

if cqi(3)= ' 1'; then

Cout<=' 1';

End if

End process

四位二进制同步加法计数器(缺0011 0100 0101 0110)

成绩评定表

课程设计任务书

摘要 本次课设题目为四位二进制加法计数器(缺0011 0100 0101 0110)。 首先在QuartusII8.1中建立名为count16的工程,用四位二进制加法计数器的VHDL语言实现了四位二进制加法计数器的仿真波形图,同时进行相关操作,锁定了所需管脚,将其下载到实验箱。 然后,在Multisim软件中,通过选用四个时钟脉冲下降沿触发的JK触发器和同步电路,画出其时序图,卡诺图,建立相关方程,做出相关计算,完成四位二进制加法计数器(缺0011 0100 0101 0110)的驱动方程。在Multisim软件里画出了四位二进制加法计数器的逻辑电路图。经过运行,分析由红绿灯的亮灭顺序及状态,和逻辑分析仪里出现波形图。说明四位二进制加法计数器顺利完成。 关键词:计数器;VHDL语言;仿真;触发器。

目录 一、课程设计目的 (1) 二、设计框图 (1) 三、实现过程 (2) 1、QUARTUS II实现过程 (2) 1.1建立工程 (2) 1.2编译程序 (7) 1.3波形仿真 (10) 1.4 仿真结果分析 (14) 1.5引脚锁定与下载 (14) 2、MULTISIM实现过程 (16) 2.1求驱动方程 (16) 2.2画逻辑电路图 (19) 2.3逻辑分析仪的仿真 (20) 2.4结果分析 (21) 2.5自启动判断 (22) 四、总结 (23) 五、参考书目 (24)

一、课程设计目的 1 了解同步加法计数器工作原理和逻辑功能。 2 掌握计数器电路的分析、设计方法及应用。 3 学会正确使用JK 触发器。 二、设计框图 状态转换图是描述时序电路的一种方法,具有形象直观的特点,即其把所用触发器的状态转换关系及转换条件用几何图形表示出来,十分清新,便于查看。 在本课程设计中,四位二进制同步加法计数器用四个CP 下降沿触发的JK 触发器实现,其中有相应的跳变,即跳过了0011 0100 0101 0110四个状态,这在状态转换图中可以清晰地显示出来。具体结构示意框图和状态转换图如下: 1010 101111001101111011110 /1 /1000 101101110010000100000/0/0/0/0/0/0/0/0/0/????←????←????←????←????←↓↑???→????→????→????→????→? B:状态转换图

同步二进制加法计数器

同步二进制加法计数器 F0302011 5030209303 刘冉 计数器是用来累计时钟脉冲(CP脉冲)个数的时序逻辑部件。它是数字系统中用途最广泛的基本部件之一,几乎在各种数字系统中都有计数器。它不仅可以计数,还可以对CP 脉冲分频,以及构成时间分配器或时序发生器,对数字系统进行定时、程序控制操作。此外,还能用它执行数字运算。 1、计数器的特点: 在数字电路中,把记忆输入CP脉冲个数的操作叫做计数,能实现计数状态的电子电路称为计数器。特点为(1)该电路一般为Moore型电路,输入端只有CP信号。 (2)从电路组成看,其主要组成单元是时钟触发器。 2、计数器分类 1) 按CP脉冲输入方式,计数器分为同步计数器和异步计数器两种。 同步计数器:计数脉冲引到所有触发器的时钟脉冲输入端,使应翻转的触发器在外接的CP脉冲作用下同时翻转。 异步计数器:计数脉冲并不引到所有触发器的时钟脉冲输入端,有的触发器的时钟脉冲输入端是其它触发器的输出,因此,触发器不是同时动作。 2) 按计数增减趋势,计数器分为加法计数器、减法计数器和可逆计数器三种。 加法计数器:计数器在CP脉冲作用下进行累加计数(每来一个CP脉冲,计数器加1)。 3) 按数制分为二进制计数器和非二进制计数器两类。 二进制计数器:按二进制规律计数。最常用的有四位二进制计数器,计数范围从0000到1111。 异步加法的缺点是运算速度慢,但是其电路比较简单,因此对运算速度要求不高的设备中,仍不失为一种可取的全加器。同步加法优点是速度快,虽然只比异步加法快千分之一甚至几千分之一秒,但对于计数器来讲,却是十分重要的。所以在这个高科技现代社会中,同步二进制计数器应用十分广泛。 下图为三位二进制加法计数器的电路图。 图1 三位二进制计数器 图示电路为对时钟信号计数的三位二进制加法计数器或称为八进制加法计数器。 该电路的经典分析过程: 1.根据电路写出输出方程、驱动方程和状态方程 2. 求出状态图 3.检查电路能否自启动 4.文字叙述逻辑功能 解:

同步十进制加法计数器优化设计

物理科学与技术学院课程设计 同步十进制加法计数器设计 班级: 指导老师: 学生:

集成电路设计愈发成为现代高科技的基石,尤其是芯片设计,几乎所有的电子系统都需要芯片,而在芯片逻辑功能中,计数器就显得非常重要。市场上多数同步十进制计数器多数采用JK触发器设计,而本设计采用D型主从触发器构成的同步十进制加法计数器。 本设计采用8421BCD码的编码方式来表示一位十进制数。设计中采用D型主从触发器构成T触发器来设计基本逻辑电路单元。本设计使用Microwind和Dsch软件完成原理图和版图设计。采用D型主从触发器,优化了同或门电路,大大减少MOS管数量,节省了版图面积,提高芯片性能。 关键词:同步十进制加法计数器Microwind Dsch D触发器T触发器

The integrated circuit design increasingly becomes the modern high tech the cornerstone, particularly the chip design, the nearly all electronic system needs the chip, but in the chip logical function, the counter appears very important. In the market the most synchronization decade counter uses the JK trigger design most, but this design uses D main the synchronized decimal base addition counter which constitutes from the trigger to compare the JK trigger to be possible to omit 80 MOS tubes. This design uses 8421BCD the code the encoding method to express a decimal digit. In the design uses D main to constitute the T trigger from the trigger to design the basic logic circuit unit. This design uses Microwind and the Dsch software completes the schematic diagram and the domain design. Uses D main from the trigger, optimized the same or gate electric circuit, reduces the MOS tube quantity greatly, has saved the domain area, enhances the chip performance. Keywords: Synchronized decimal base addition counter Microwind Dsch D trigger T trigger

verilog HDL十进制加减法计数器报告

十进制加减法计数器 1.实验要求 (1)在Modelsim环境中编写十进制加减法计数器程序; (2)编译无误后编写配套的测试程序; (3)仿真后添加信号,观察输出结果。 2.设计程序如下 module decade_counter #(parameter SIZE=4) (input clock,load_n,clear_n,updown, input [SIZE-1:0]load_data, output reg [SIZE-1:0]q ); always @(negedge load_n,negedge clear_n,posedge clock) if (!load_n) q<=load_data; else if (!clear_n) q<=0; else //clock??? if(updown) q<=(q+1)%10; else begin if(q==0) q<=9; else q<=q-1; end endmodule 3.测试程序如下 `timescale 1ns/1ns module test_decade_counte; reg clock,load_n,clear_n,updown; reg [3:0]load_data; wire [3:0]q; decade_counter T1(clock,load_n,clear_n,updown,load_data,q); initial begin clock=0;clear_n=0;

#30 clear_n=1;load_n=0;load_data=7; #30 load_n=1;updown=0; #300 updown=1; #300 updown=0; #300 updown=1; #300 $stop; end always #10 clock=~clock; always @(q) $display("At time%t,q=%d",$time,q); endmodule 4.波形如下 5.测试结果如下 # At time 0,q= 0 # At time 30,q= 7 # At time 70,q= 6 # At time 90,q= 5 # At time 110,q= 4 # At time 130,q= 3 # At time 150,q= 2 # At time 170,q= 1 # At time 190,q= 0 # At time 210,q= 9 # At time 230,q= 8 # At time 250,q= 7 # At time 270,q= 6 # At time 290,q= 5 # At time 310,q= 4 # At time 330,q= 3

四位二进制加法计数器课程设计

成绩评定表 学生姓名郝晓鹏班级学号1103060129 专业通信工程课程设计题目四位二进制加法 计数器 评语 组长签字: 成绩 日期20 年月日

课程设计任务书 学院信息科学与工程学院专业通信工程 学生姓名郝晓鹏班级学号1103060129 课程设计题目四位二进制加法计数(缺0010 0011 1101 1110) 实践教学要求与任务: 1、了解数字系统设计方法。 2、熟悉VHDL语言及其仿真环境、下载方法。 3、熟悉Multisim仿真环境。 4、设计实现四位二进制加计数(缺0010 0011 1101 1110) 工作计划与进度安排: 第一周:熟悉Multisim及QuartusII环境,练习数字系统设计方法。包括采用触发器设计和超高速硬件描述语言设计,体会自上而下、自下而上设计 方法的优缺点 第二周:1.在QuartusII环境中仿真实现四位二进制加计数(缺0100 0101 1001 1010 )。 2.在Multisim环境中仿真实现四位二进制加计数,缺(0100 0101 1001 1010),并通过虚拟仪器验证其正确性。 指导教师: 201 年月日专业负责人: 201 年月日 学院教学副院长: 201 年月日

摘要 本文采用在MAXPLUSⅡ环境中用VHDL语言实现四位二进制加法计数(缺0010 0011 1101 1110),在仿真器上显示结果波形,并下载到目标芯片上,在实验箱上观察输出结果。在Multisim环境中仿真实现四位二进制加法计数器(缺0010 0011 1101 1110),并通过虚拟仪器验证其正确性。 关键词:MAXPLUSⅡ环境;VHDL语言;四位二进制加计数;Multisim环境

实验二含异步清零和同步使能的加法计数器

实验二含异步清零和同步使能的加法计数器 一、实验目的 1、了解二进制计数器的工作原理。 2、进一步熟悉QUARTUSII软件的使用方法和VHDL输入。 3、时钟在编程过程中的作用。 二、实验原理 二进制计数器中应用最多、功能最全的计数器之一,含异步清零和同步使能的加法计数器的具体工作过程如下: 在时钟上升沿的情况下,检测使能端是否允许计数,如果允许计数(定义使能端高电平有效)则开始计数,否则一直检测使能端信号。在计数过程中再检测复位信号是否有效(低电平有效),当复位信号起作用时,使计数值清零,继续进行检测和计数。 其工作时序如图3-1所示: 图3-1 计数器的工作时序 三、实验内容 本实验要求完成的任务是在时钟信号的作用下,通过使能端和复位信号来完成加法计数器的计数。实验中时钟信号使用数字时钟源模块的1HZ信号,用一位拨动开关K1表示使能端信号,用复位开关S1表示复位信号,用LED模块的LED1~LED11来表示计数的二进制结果。实验LED亮表示对应的位为‘1’,LED灭表示对应的位为‘0’。通过输入不同的值模拟计数器的工作时序,观察计数的结果。实验箱中的拨动开关、与FPGA的接口电路,LED灯与FPGA的接口电路以及拨动开关、LED与FPGA的管脚连接在实验一中都做了详细说明,这里不在赘述。 数字时钟信号模块的电路原理如图3-2所示,表3-1是其时钟输出与FPGA的管脚连接表。

图3-2 数字时钟信号模块电路原理 信号名称对应FPGA管脚名说明 DIGITAL-CLK A14数字时钟信号送至FPGA的A14 表3-1 数字时钟输出与FPGA的管脚连接表 按键开关模块的电路原理如图3-3所示,表3-2是按键开关的输出与FPGA的管脚连接表。 图3-3 按键开关模块电路原理 信号名称FPGA I/O名称核心板接口管脚号功能说明S[0]PIN_AF5JP1_91‘S1’ Switch S[1]PIN_AH6JP1_93‘S2’ Switch S[2]PIN_AH7JP1_95‘S3’ Switch S[3]PIN_AH8JP1_97‘S4’ Switch S[4]PIN_AG10JP1_99‘S5’ Switch S[5]PIN_AG11JP1_101‘S6’ Switch S[6]PIN_AH14JP1_90‘S7’ Switch S[7]PIN_AG7JP1_92‘S8’ Switch

十进制4位加法计数器设计

洛阳理工学院 十 进 制 4 位 加 法 计 数 器 系别:电气工程与自动化系 姓名:李奇杰学号:B10041016

十进制4位加法计数器设计 设计要求: 设计一个十进制4位加法计数器设计 设计目的: 1.掌握EDA设计流程 2.熟练VHDL语法 3.理解层次化设计的内在含义和实现 设计原理 通过数电知识了解到十进制异步加法器的逻辑电路图如下 Q3 则可以通过对JK触发器以及与门的例化连接实现十进制异步加法器的设计 设计内容 JK JK触发器的VHDL文本描述实现: --JK触发器描述 library ieee; use ieee.std_logic_1164.all; entity jk_ff is

port( j,k,clk: in std_logic; q,qn:out std_logic ); end jk_ff; architecture one of jk_ff is signal q_s: std_logic; begin process(j,k,clk) begin if clk'event and clk='0' then if j='0' and k='0' then q_s <= q_s; elsif j='0' and k='1' then q_s <= '0'; elsif j='1' and k='0' then q_s <= '1'; elsif j='1' and k='1' then q_s <= not q_s; end if; end if; end process; q <= q_s; qn <= not q_s; end one; 元件门级电路: 与门VHDL文本描述实现: --与门描述library ieee; use ieee.std_logic_1164.all;

设计一个四位二进制计数器

1、要求:设计一个四位二进制计数器,将计数结果由数码管显示,显示结果为十进制数。数码管选通为低电平有效,段码为高电平有效。 分析:VHDL 描述包含五部分:计数器、将四位二进制数拆分成十进制数的个位和十位、二选一的数据选择器、七段译码、数码管选通控制信号 线定义为信号 library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity counter3 is Port ( clk:in STD_LOGIC; clk1 : in STD_LOGIC; clr : in STD_LOGIC; en : in STD_LOGIC; co : out STD_LOGIC; scanout:out std_logic_vector(1 downto 0); ledout:out std_logic_vector(6 downto 0)); end counter3; architecture Behavioral of counter3 is signal cnt:std_logic_vector(3 downto 0); signal cnt1:std_logic_vector(3 downto 0); signal cnt2:std_logic_vector(3 downto 0); signal hex:std_logic_vector(3 downto 0); signal scan:std_logic_vector(1 downto 0); en clr

10进制加法计数器课程设计

西北师范大学知行学院 数字电子实践论文 课题:74ls161组成的十进制加法计数器 (置数法) 班级:14电本 学号:14040101114 姓名:于能海

指导老师:崔用明 目录 第1章前言 (1) 1.1 摘要 (1) 1.2 设计目的 (2) 1.3 设计内容及要求 (2) 第2章设计方案 (3) ....................................................................................................................... 错误!未定义书签。 2.1主要芯片功能介绍 (3) 2.2.1 四位二进制计数器74161介绍 (3) ............................................................................................................... 错误!未定义书签。 2.2 工作原理 (4) 第3章硬件设计 (4) 3.1 单元电路设计 (4) 3.2 总硬件电路图 (5) 第4章仿真与试验 (6) 4.1 仿真结果 (6) 4.2 调试中遇到的问题 (7) 第5章结论和体会 (8)

第1章前言 1.1 摘要在数字电路技术的课程中,计数器的功能是记忆脉冲的个数,它是数字系统中应用最广泛的基本时序逻辑构件。计数器在微型计算机系统中的主要作用就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显示等定时控制,或者对外部事件进行计数。一般的微机系统和微机应用系统中均配置了定时器/计数器电路,它既可当作计数器作用,又可当作定时器使用,其基本的工作原理就是"减1"计数。计数器:CLK输入脉冲是一个非周期事件计数脉冲,当计算单元为零时,OUT输出一个脉冲信号,以示计数完毕。 本十进制加法计数器是基于74161芯片而设计的, 该十进制加法计数器设计理念是用于工厂流水线上产品计数,自动计数,方便简单。 关键词:74ls161计数器 Introduction In the course of digital circuit technology, the counter memory function is the number of pulses, it is a digital system, the most widely used basic sequential logic components. The main role of the counter in the micro-computer system is to provide real-time clock for the CPU and I / O devices to achieve the timer interrupt, timing detection, scheduled scanning, the timing display timing control, or to count external events. General computer systems and computer application systems are equipped with a timer / counter circuit, it can as a counter action, but also as a timer, the basic working principle is "minus 1" count. Counter: CLK input pulse is a non-periodic event count pulses to zero when calculating unit, OUT outputs a pulse signal, to show the count is completed. The decimal addition counter is designed based on the 74161 chip, the low potential sensor senses when to rely on external signals, sensors in an object within the sensing range, otherwise it is a high potential. Within the sensing range of the sensor when an object is moved out of date, sensor potential from high to low and then high, appears on the edge. Counter is automatically incremented and displayed on a digital control. The decimal addition counters have two seven-segment LED. It can count from 0 to 99 objects, and easy to expand. The design concept of decimal addition counter is used to count on a factory assembly line products, automatic counting, convenient and simple. Keywords:74ls161counter

实验十进制加减法计数器

实验1 十进制加减法计数器 实验地点:电子楼218 实验时间:2012年10月19日指导老师:黄秋萍、陈虞苏 实验要求:设计十进制加减法计数器,保留测试程序、设计程序、仿真结果 1.设计程序: module count(EN,CLK,DOUT,F,RST); input EN,CLK,F,RST; output [3:0]DOUT; reg [3:0]DOUT; always@(posedge CLK) begin :abc if(EN) if(!RST) if(F) begin :a DOUT=DOUT+1; if(DOUT==10) DOUT=0; end //END A else begin :b DOUT=DOUT-1; if(DOUT==15) DOUT=9; end else DOUT=0; else DOUT=DOUT; end endmodule 2.测试程序 `timescale 10ns/1ns module test_count; wire [3:0] DOUT; reg EN,F,RST,CLK; count M(EN,CLK,DOUT,F,RST); initial begin :ABC CLK=0; EN=0;

RST=1; F=1; #100 EN=1; #200 RST=0; #1500 F=0; #3000 $stop; end always #50 CLK=~CLK; initial $monitor("EN=%b,F=%b,RST=%b,DOUT%D",EN,F,RST,DOUT); endmodule 3.测试结果 # EN=0,F=1,RST=1,DOUT x # EN=1,F=1,RST=1,DOUT x # EN=1,F=1,RST=1,DOUT 0 # EN=1,F=1,RST=0,DOUT 0 # EN=1,F=1,RST=0,DOUT 1 # EN=1,F=1,RST=0,DOUT 2 # EN=1,F=1,RST=0,DOUT 3 # EN=1,F=1,RST=0,DOUT 4 # EN=1,F=1,RST=0,DOUT 5 # EN=1,F=1,RST=0,DOUT 6 # EN=1,F=1,RST=0,DOUT 7 # EN=1,F=1,RST=0,DOUT 8 # EN=1,F=1,RST=0,DOUT 9 # EN=1,F=1,RST=0,DOUT 0 # EN=1,F=1,RST=0,DOUT 1 # EN=1,F=1,RST=0,DOUT 2 # EN=1,F=1,RST=0,DOUT 3 # EN=1,F=1,RST=0,DOUT 4 # EN=1,F=1,RST=0,DOUT 5 # EN=1,F=0,RST=0,DOUT 5 # EN=1,F=0,RST=0,DOUT 4 # EN=1,F=0,RST=0,DOUT 3 # EN=1,F=0,RST=0,DOUT 2 # EN=1,F=0,RST=0,DOUT 1 # EN=1,F=0,RST=0,DOUT 0 # EN=1,F=0,RST=0,DOUT 9 # EN=1,F=0,RST=0,DOUT 8 # EN=1,F=0,RST=0,DOUT 7 # EN=1,F=0,RST=0,DOUT 6 # EN=1,F=0,RST=0,DOUT 5

四位二进制加法计数器

学院信息学院专业通信工程姓名陈洁学号02 设计题目数字系统课程设计 内容四位二进制加法计数器 技术参数和要求0000→0001→0010→0011→0110→0111→1000→1001→1010→1011→1100→→1101→1110→1111→0000 缺0100→0101 设计任务 1.按要求设计VHDL程序, 2.在Xinlinx Ise环境中运行程序并输出仿真波形。 工作进度和安排第18周: 1.学习Xinlinx Ise软件知识,熟悉软件相关操作; 2.学习multsim软件知识,熟悉其在画逻辑电路时的应用; 3.查阅相关资料,学习时序逻辑电路设计知识。 第20周: 1.按要求编写程序代码,; 2.运行并输出仿真波形; 3.程序下载到电路板测试; 4.利用multsim软件,设计时序电路; 5.运行并验证结果; 6.撰写报告。 指导教师(签字): 年月日学院院长(签字): 年月日

目录 一.数字系统简介 (3) 二.设计目的和要求 (3) 三.设计内容 (3) 四.VHDL程序设计 (3) 五.波形仿真 (11) 六. 逻辑电路设计 (12) 六.设计体会 (13) 七.参考文献 (13)

一.数字系统简介 在数字逻辑设计领域,迫切需要一种共同的工业标准来统一对数字逻辑电路及系统的描述,这样就能把系统的设计分解为逻辑设计(前端),电路实现(后端)和验证桑相互独立而又相关的部分。由于逻辑设计的相对独立性就可以把专家们设计的各种数字逻辑电路和组件建成宏单元或软件核,即ip库共设计者引用,设计者可以利用它们的模型设计电路并验证其他电路。VHDL这种工业标准的产生顺应了历史潮流。 二.设计目的和要求 1、通过《数字系统课程设计》的课程实验使电子类专业的学生能深入了解集成中规 模芯片的使用方法。 2、培养学生的实际动手能力,并使之初步具有分析,解决工程实际问题的能力。三.设计内容 四位二进制加计数,时序图如下: 0000→0001→0010→0011→0110→0111→1000→1001→1010→1011→1100→→1101→1110→1111 →0000 缺0100→0101 。由JK触发器组成4位异步二进制加法计数器。 四.VHDL程序设计 四位二进制加计数,缺0100,0101(sw向上是0(on);灯亮为0) LIBRARY IEEE; USE entity count10 is PORT (cp,r:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); end count10; ARCHITECTURE Behavioral OF count10 IS SIGNAL count:STD_LOGIC_VECTOR(3 DOWNTO 0) ; BEGIN PROCESS (cp,r) BEGIN if r='0' then count<="0000"; elsiF cp'EVENT AND cp='1' THEN if count="0011" THEN count <="0110"; ELSE count <= count +1; END IF; end if; END PROCESS; q<= count; end Behavioral;

4位同步二进制加法计数器

4位同步二进制加法计数器 一、实验目的 1、熟悉在EDA平台上进行数字电路集成设计的整个流程。 2、掌握Max+PlusⅡ软件环境下简单的图形、VHDL文本等输入设计方法。 3、熟悉VHDL设计实体的基本结构、语言要素、设计流程等。 4、掌握利用Max+PlusⅡ的波形仿真工具验证设计的过程。 5、学习使用JTAG接口下载逻辑电路到可编程芯片,并能调试到芯片正常工作为止。 二、实验设备 1.软件 操作系统:Windows 2000 EDA软件:MAX+plus II 10.2 2.硬件 EDA实验箱:革新EDAPRO/240H 三、实验原理 1.设计分析 4位同步二进制加法计数器的工作原理是指当时钟信号clk的上升沿到来时,且复位信号clr低电平有效时,就把计数器的状态清0。 在clr复位信号无效(即此时高电平有效)的前提下,当clk的上升沿到来时,如果计数器原态是15,计数器回到0态,否则计数器的状态将加1. 2.VHDL源程序 library ieee; use ieee.std_logic_1164.all; entity cnt4e is port(clk,clr:in std_logic; cout:out std_logic; q:buffer integer range 0 to 15); end cnt4e; architecture one of cnt4e is begin process(clk,clr) begin if clk'event and clk='1'then if clr='1'then if q=15 then q<=0; cout<='0'; elsif q=14 then q<=q+1; cout<='1'; else q<=q+1; end if; else q<=0;

十进制加法计数器 (3)

EDA技术与VHDL实验报告 一实验题目:十进制加法计数器 二实验目的: 设计带有异步复位和同步时钟使能的十进制加法计数器。 三实验内容: 编写十进制加法计数器的VHDL实现程序;通过电路仿真和硬件验证,了解变量的使用方法,以及“(OTHERS=>X)”的使用方法。四实验原理: 十进制加法计数器的VHDL描述 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT10 IS PORT (CLK,RST,EN : IN STD_LOGIC; CQ : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END CNT10; ARCHITECTURE behav OF CNT10 IS BEGIN PROCESS(CLK, RST, EN) V ARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

IF RST = '1' THEN CQI := (OTHERS =>'0') ; --计数器异步复位 ELSIF CLK'EVENT AND CLK='1' THEN --检测时钟上升沿 IF EN = '1' THEN --检测是否允许计数(同步使能) IF CQI < 9 THEN CQI := CQI + 1; --允许计数检测是否小于9 ELSE CQI := (OTHERS =>'0'); --大于9,计数值清零 END IF; END IF; END IF; IF CQI = 9 THEN COUT <= '1'; --计数大于9,输出进位信号 ELSE COUT <= '0'; END IF; CQ<= CQI; --将计数值向端口输出END PROCESS; END behav;

同步加法计数器CD4518

同步加法计数器CD4518,CD4520中文资料 二、十进制同步加法计数器CD4518,CD4520中文资料 CD4518/CC4518是二、十进制(8421编码)同步加计数器,内含两个单元的加计数器,其功能表如真值表所示。每单个单元有两个时钟输入端CLK和EN,可用时钟脉冲的①①上升沿或下降沿触发。由表可知,若用ENABLE信号下降沿触发,触发信号由EN端输入,CLK端置“0”;若用CLK信号上升沿触发,触发信号由CL℃K端输入,ENABLE端置“1”。RESET端是清零端,RESET 端置“1”时,计数器各端输出端Q1~Q4均为“0”,只有RESET端置“0”时,CD4518才开始计数。 CD4518采用并行进位方式,只要输入一个时钟脉冲,计数单元Q1翻转一次;每输入10个时钟脉冲,计数单元便自动恢复到“0”态。若将第一个加计数器的输出端Q4A作为第二个加计数器的输入端ENB的时钟脉冲信号,便可组成两位8421编码计数器,依次下去可以进行多位串行计数。 CD4520/CC4520为二进制加计数器,由两个相同的内同步4级计数器构成。计数器级为D型触发器,具有内部可交换CP和EN线,用于在时钟上升沿或下降沿加计数。在单个单元运算中,EN输入保持高电平,且在CP上升沿进位。CR线为高电平时,计数器清零。计数器在脉动模式可级联,通过将Q3连接至下—计数器的EN输入端可实现级联,同时后者的CP输入保持低电平。 引脚功能:引脚符号功能 7 、15:RESET 清0端(高电平生效) 2、10 :ENABLE ①计数允许控制端(高电平生效) ②时钟输入端(信号下降沿触发) 1、9 :CLOCK ①时钟输入端(信号上升沿触发) ②计数允许控制端(低电平生效) 3 4 5 6 :Q1A-Q4A 计数输出端 11 12 13 14 :Q1B-Q4B 计数输出端 8 :VSS地 16 :VDD电源正

十进制加法计数器xilinx抓图

[例5.6.1] 十进制计数器的VHDL描述(sw向上是0(on);灯亮为0 )LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; entity count10 is PORT (cp,r:IN S TD_LOGIC; q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); end count10; ARCHITECTURE Behavioral OF count10 IS SIGNAL count:STD_LOGIC_VECTOR(3 DOWNTO 0) ; BEGIN PROCESS (cp,r) BEGIN if r='0' then count<="0000"; elsiF cp'EVENT AND cp='1' THEN if count="1001" THEN count <="0000"; ELSE count <= count +1; END IF; end if; END PROCESS; q<= count; end Behavioral; [例5.6.1] 十进制计数器的VHDL描述(sw向上是1;灯亮为1)library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity count10 is PORT (cp,r:IN S TD_LOGIC; q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); end count10; ARCHITECTURE Behavioral OF count10 IS SIGNAL count:STD_LOGIC_VECTOR(3 DOWNTO 0) ; BEGIN PROCESS (cp,r) BEGIN if r='1' then count<="0000"; elsiF cp'EVENT AND cp='1' THEN if count="1001" THEN count <="0000"; ELSE count <= count +1; END IF; end if; END PROCESS; q<=not count; end Behavioral;

四位二进制计数器

四位二进制计数器设计 班级:电子S102 姓名刘利勇学号:103511 一:实验目标 掌握用VHDL语言设计异步复位、同步使能的四位二进制加法计数器的编程方法, RST是异步清零信号,高电平有效;CLK是时钟信号;ENA是同步使能信号,高电平使能。OUTY是4位数据输出端。COUT是进位端。在复位信号为低电平,使能信号为高电平并且有时钟输入的时候,计数器自加,直到溢出,自动复位。 二:实验仪器 PC机一台,实验箱一套 三:实验步骤 1、新建一个工程目录,在该工程目录下新建一个文本输入文件。 2、在新建的文件中输入以下实验程序,并把该文件以CNT4B.VHD为文件名保存在该新建的工程文件夹下。

3、把该文本文件设置成当前文件。 4、运行编译器,检测该文本文件的错误,直到编译通过。 5、新建波形文件,在该文件中输入信号节点,设置仿真时间,运行仿真器,观测仿真波形。

6、软件仿真正确无误后,选择目标器件。 7、引脚锁定。其中时钟信号选择1引脚,使能引脚和复位引脚分别接一位拨动开关。溢出端接一个发光二极管,数据输出端接一个数码管。数据的高位接数码管的高位,数据的低位接数码管的低位。 9、重新编译。

10、编程下载,硬件调试。观测硬件结果,复位波动开关置为低电平,使能波动开关置为高电平,则数码管依次循环显示0到F,显示到F时,LED灯亮,说明发生溢出进位。当复位端有效时,计数器复位。使能端为低电平时,计数器不计数。 四、实验注意事项 1、注意输入程序后保存,以VHD为后缀名保存,不要使用默认保存格式,否则编译不通过。 2、引脚锁定时,要把输出端的高位和数码管的高位缩地,低位和低位锁定。这样才能按从0到F的顺序自加1显示。否则会数码管译码错误,会出现数字跳变。

十进制加法计数器

燕山大学 课程设计说明书 题目:十进制加法计数器 学院(系):电气工程学院 年级专业: 学号: 学生姓名: 指导教师 教师职称:实验师实验师 燕山大学课程设计(论文)任务书 院(系):电气工程学院基层教学单位:电子实验中心学号学生姓名专业(班级) 设计题目十进制加法器 设计技术参数●在数码管上显示加数、被加数和结果 ●设置加数和被加数。当加数和被加数超过9时显示“E”,计算结果显示为“EE” 设计要求●在4个数码管显示加数、被加数和结果 ●分别用4个拨码开关设置加数和被加数 ●当加数、被加数超过9时,蜂鸣器报警5秒

工作量●学会使用Max+PlusII软件和实验箱 ●独立完成电路设计,编程下载、连接电路和调试●参加答辩并书写任务书 工作计划1.了解EDA的基本知识,学习使用软件Max+PlusII,下发任务书,开始电 路设计; 2.学习使用实验箱,继续电路设计; 3.完成电路设计; 4.编程下载、连接电路、调试和验收; 5.答辩并书写任务书。 参考资料《数字电子技术基础》.阎石主编.高等教育出版社. 《EDA课程设计B指导书》. 指导教师签字基层教学单位主任签字金海龙 说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。 2013年 3 月 11 日 目录 第1章前言 (4) 第2章设计说明 (5) 2.1 设计思路 (5) 2.2 模块介绍 (5) 第3章总电路原理图 (10) 第4章波形仿真图及结果分析 (11) 第5章补充说明 (12) 5.1真值表 (12) 5.2管脚锁定及硬件连线.......................................& (13) 第6章心得体会 (15) 参考文献 (16) 第1章前言

2位10进制加法计数器课程设计

目录 第1章前言 (1) 1.1 摘要 (1) 1.2 设计目的 (1) 1.3 设计内容及要求 (1) 第2章设计方案 (2) 2.1 系统框图 (2) 2.2主要芯片功能介绍 (2) 2.2.1 四位二进制计数器74161介绍 (2) 2.2.2七段显示译码器7448介绍 (3) 2.3 工作原理 (4) 第3章硬件设计 (5) 3.1 单元电路设计 (5) 3.2 总硬件电路图 (7) 第4章仿真与试验 (8) 4.1 仿真结果 (8) 4.2 调试中遇到的问题 (8) 第5章结论和体会 (9) 第6章参考文献 (10)

第1章前言 1.1 摘要 在数字电路技术的课程中,计数器的功能是记忆脉冲的个数,它是数字系统中应用最广泛的基本时序逻辑构件。计数器在微型计算机系统中的主要作用就是为CPU和I/O设备提供实时时钟,以实现定时中断、定时检测、定时扫描、定时显示等定时控制,或者对外部事件进行计数。一般的微机系统和微机应用系统中均配置了定时器/计数器电路,它既可当作计数器作用,又可当作定时器使用,其基本的工作原理就是"减1"计数。计数器:CLK输入脉冲是一个非周期事件计数脉冲,当计算单元为零时,OUT输出一个脉冲信号,以示计数完毕。 本十进制加法计数器是基于74161芯片而设计的,依靠传感器感应外界信号,传感器在感应范围内有物体时输出低电位,反之则是高电位。当传感器的感应范围内有物体移过时,传感器电位由高到低再到高,出现上跳沿。计数器会自动加一,并将在数码管上显示。本十进制加法计数器有两位七段数码管。可计数0~99个物体,并易于扩展。 该十进制加法计数器设计理念是用于工厂流水线上产品计数,自动计数,方便简单。 1.2 设计目的 1、综合运用相关课程中所学到的理论知识去独立完成某一设计课题; 2、学习用集成触发器构成计数器的方法; 3、进一步熟悉常用芯片和电子器件的类型及特性,并掌握合理选用器件的原则; 5、初步了解电路设计、仿真的过程和方法; 4、锻炼分析问题解决问题的能力; 1.3 设计内容及要求 1、具有2位10进制计数功能; 2、利用传感器,不接触计数; 3、每一个物体经过,计数器自动加1; 4、具有显示功能; 5、并用相关仿真软件对电路进行仿真。

相关文档
最新文档