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

合集下载

计算机组成原理4位二进制计数器实验报告

计算机组成原理4位二进制计数器实验报告

计算机组成原理实验一4位二进制计数器实验姓名:李云弟 学号:1205110115 网工1201【实验环境】1. Windows 2000 或 Windows XP2. QuartusII9.1 sp2、DE2-115计算机组成原理教学实验系统一台,排线若干。

【实验目的】1、熟悉VHDL 语言的编写。

2、验证计数器的计数功能。

【实验要求】本实验要求设计一个4位二进制计数器。

要求在时钟脉冲的作用下,完成计数功能,能在输出端看到0-9,A-F 的数据显示。

(其次要求下载到实验版实现显示)【实验原理】计数器是一种用来实现计数功能的时序部件,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能。

计数器由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS 触发器、T 触发器、D 触发器及JK 触发器等。

计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。

计数器按计数进制不同,可分为二进制计数器、十进制计数器、其他进制计数器和可变进制计数器,若按计数单元中各触发器所接收计数脉冲和翻转顺序或计数功能来划分,则有异步计数器和同步计数器两大类,以及加法计数器、减法计数器、加/减计数器等,如按预置和清除方式来分,则有并行预置、直接预置、异步清除和同步清除等差别,按权码来分,则有“8421”码,“5421”码、余“3”码等计数器,按集成度来分,有单、双位计数器等等,其最基本的分类如下:计数器的种类⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧进制计数器十进制计数器二进制计数器进制可逆计数器减法计数器加法计数器功能异步计数器同步计数器结构N 、、、321 下面对同步二进制加法计数器做一些介绍。

同步计数器中,所有触发器的CP 端是相连的,CP 的每一个触发沿都会使所有的触发器状态更新。

计数器的设计实验心得

计数器的设计实验心得

计数器的设计实验心得一、引言计数器是数字电路中常见的一个模块,其作用是记录输入信号的个数,并将结果输出。

在数字电路设计中,计数器的应用十分广泛,如频率测量、计时器、分频器等。

在本次实验中,我设计了一个4位二进制同步计数器,并对其进行了测试和验证。

本文将详细介绍实验过程和心得体会。

二、实验原理1. 计数器的基本原理计数器是由触发器组成的数字电路,其输入为时钟信号和复位信号,输出为计数值。

当时钟信号到达触发器时,触发器状态发生变化(从0变为1或从1变为0),并将此状态传递给下一级触发器。

当所有触发器状态都改变后,就完成了一次计数。

2. 4位二进制同步计数器的设计本次实验要求设计一个4位二进制同步计数器。

该计数器由4个D触发器组成,每个D触发器有一个数据输入端(D)、一个时钟输入端(CLK)和一个异步清零端(CLR)。

其中CLK接收外部时钟信号,CLR接收异步清零信号。

具体设计如下:- 第一级D触发器:CLK接收外部时钟信号,CLR接收异步清零信号。

D接收第二级D触发器的Q输出信号。

- 第二级D触发器:CLK接收第一级D触发器的Q输出信号,CLR接收异步清零信号。

D接收第三级D触发器的Q输出信号。

- 第三级D触发器:CLK接收第二级D触发器的Q输出信号,CLR接收异步清零信号。

D接收第四级D触发器的Q输出信号。

- 第四级D触发器:CLK接收第三级D触发器的Q输出信号,CLR接收异步清零信号。

D输入为1。

三、实验过程1. 设计电路图根据上述原理,我设计了一个4位二进制同步计数器电路图。

其中,CLK和CLR分别连接到开关和按钮上,方便手动控制时钟和复位操作。

电路图如下:2. 制作实验板根据电路图,我在实验板上焊接了相应的元件和连接线,并进行了测试和调试。

3. 实验测试在进行实验测试前,我先对时钟频率进行了设置。

由于本次实验要求计数范围为0~15(即4位二进制数),因此时钟频率需要满足以下条件:- 每个计数周期需要16个时钟周期。

四位同步二进制计数器74LS161

四位同步二进制计数器74LS161

四位同步二进制计数器74LS161————————————————————————————————作者:————————————————————————————————日期:四位同步二进制计数器74LS161逻辑符号如图所示:逻辑功能如下表所示:74LS161功能表PTCP 功能1 × 0 ××1 × 1 0 ×1 0 1 1 ×1 1 1 1 0↑↑×××计数并行输入保持保持(CO=0)清零CP是时钟脉冲信号端,是异步清零端,是同步置数控制端,P和T为计数允许控制端,D0~D3为并行数据输入端,Q0~Q3为数据输出端,CO为进位输出端。

由功能表可以看出该芯片具有以下功能:(1)清零功能。

当时,计数器异步清零。

即只要,计数器输出状态立刻变为“0000”。

(2)同步并行置数功能。

当、时,在CP上升沿作用下,并行输入数据D0~D3进入计数器,使计数器的输出端状态为Q3 Q2Q1 Q0=D3D2 D1D0。

(3)保持功能。

当、时,若P·T=0,则计数器保持原来状态不变。

对于进位输出信号有两种情况:如果T=0,则CO=0;如果T=1,则CO= Q3 ·Q2·Q1 ·Q0(4)计数功能。

当、时,若P=T=1,则在时钟脉冲CP上升沿的连续作用下,计数器输出(Q3Q2Q1Q0)的状态按0000→0001→0010→0011→0100→0101→0110→0111→1000→1001→1010→1011→1100→1101→1110→1111→0000的次序循环变化,完成十六进制(或称四位二进制)加法计数。

并且当计数器计到1111时,进位输出端CO输出为1,其他状态时CO输出为0。

四位全加器实验报告

四位全加器实验报告

武汉轻工大学数学与计算机学院《计算机组成原理》实验报告题目:4位二进制计数器实验专业:软件工程班级:130X班学号:XXX姓名:XX指导老师:郭峰林2015年11月3日【实验环境】1. Win 72. QuartusII9.1计算机组成原理教学实验系统一台。

【实验目的】1、熟悉VHDL 语言的编写。

2、验证计数器的计数功能。

【实验要求】本实验要求设计一个4位二进制计数器。

要求在时钟脉冲的作用下,完成计数功能,能在输出端看到0-9,A-F 的数据显示。

(其次要求下载到实验版实现显示)【实验原理】计数器是一种用来实现计数功能的时序部件,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能。

计数器由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS 触发器、T 触发器、D 触发器及JK 触发器等。

计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。

计数器按计数进制不同,可分为二进制计数器、十进制计数器、其他进制计数器和可变进制计数器,若按计数单元中各触发器所接收计数脉冲和翻转顺序或计数功能来划分,则有异步计数器和同步计数器两大类,以及加法计数器、减法计数器、加/减计数器等,如按预置和清除方式来分,则有并行预置、直接预置、异步清除和同步清除等差别,按权码来分,则有“8421”码,“5421”码、余“3”码等计数器,按集成度来分,有单、双位计数器等等,其最基本的分类如下:计数器的种类⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧进制计数器十进制计数器二进制计数器进制可逆计数器减法计数器加法计数器功能异步计数器同步计数器结构N 、、、321 下面对同步二进制加法计数器做一些介绍。

同步计数器中,所有触发器的CP 端是相连的,CP 的每一个触发沿都会使所有的触发器状态更新。

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

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

4位同步二进制加法计数器是一种常见的数字电路,用于实现二进制计数。

它可以将二进制数字表示为电信号,并且在每次输入脉冲时进行递增。

下面将详细介绍4位同步二进制加法计数器及其计数的最大值。

一、4位同步二进制加法计数器的原理1. 4位同步二进制加法计数器由4个触发器组成,每个触发器对应一个二进制位。

当输入一个脉冲时,每个触发器根据前一位的状态以及输入脉冲的信号进行状态转换。

这样就实现了二进制数的递增。

2. 触发器之间通过门电路连接,用于控制触发器状态的变化。

这些门电路可以根据具体的设计选择不同的逻辑门,常见的有AND门、OR 门、NOT门等。

3. 4位同步二进制加法计数器是同步计数器,即所有触发器同时接收输入脉冲,确保计数的同步性。

二、4位同步二进制加法计数器的计数最大值1. 4位二进制数的表示范围是0~15,因此4位同步二进制加法计数器的计数最大值为15。

2. 在计数到15后,再输入一个脉冲,计数器将重新从0开始计数,即实现了循环计数。

三、4位同步二进制加法计数器的应用1. 4位同步二进制加法计数器常用于数字电子钟、信号发生器等数字电路中,用于实现计数和定时功能。

2. 它还可以作为其他数字电路的组成部分,用于构建更复杂的逻辑功能。

3. 在数字系统中,计数器是十分重要的组件,它能够实现数字信号的计数和控制,广泛应用于各种数字系统中。

4位同步二进制加法计数器是一种重要的数字电路,通过它可以实现对二进制数的递增计数。

其计数的最大值为15,应用领域广泛。

希望本文内容能够对读者有所启发。

四、4位同步二进制加法计数器的工作原理4位同步二进制加法计数器是一种晶体管数字集成电路,它利用触发器和逻辑门等基本元件构成,能够实现二进制数字的加法计数。

在4位同步二进制加法计数器中,每个触发器代表一个二进制位,通过输入脉冲的控制,能够实现对二进制数的递增计数。

具体来说,当输入一个脉冲信号时,4位同步二进制加法计数器会根据触发器之间的连线和逻辑门的作用,根据之前的状态和输入脉冲的信号进行状态转换,从而实现二进制数的递增。

4位二进制加法器

4位二进制加法器

《电工与电子技术基础》课程设计报告题目四位二进制加法计数器学院(部)汽车学院专业汽车运用工程班级22020903学生姓名郭金宝学号220209031006 月12 日至06 月22 日共 1.5 周指导教师(签字)评语评审人:四位二进制加法器一.技术要求1.四位二进制加数与被加数输入2.二位显示二.摘要本设计通过逻辑开关将A3,A2,A1,A0和B3,B2,B1,B0信号作为加数和被加数输入到超前进位加法器74LS283中进行四位二进制相加,将输出信号S4,S3,S2,S1和向高位的进位C1输入一个译码器译码。

再将输出信号X4,X3,X2,X1和Y4,Y3,Y2,Y1分别输入一个74LS247型的七段显示译码器译码,最后分别接一个BS204数码管进行二位显示。

关键字:74LS283 74LS247 BS204三.总体设计方案的论证及选择1.加法器的选取加法器有两种,分别是串行进位加法器和超前进位加法器。

串行进位加法器由全加器级联构成,高位的运算必须等到低位加法完成送来进位时才能进行。

它虽然电路简单,但运算速度较慢,而且位数越多,速度就越慢。

T692型集成全加器就是这种四位串行加法器。

超前进位加法器由逻辑电路根据输入信号同时形成各位向高位的进位。

使各位的进位直接由加数和被加数来决定,而不需依赖低位进位,这就省去了进位信号逐级传送所用的时间,所以这种加法器能够快速进位。

因为它的这个优点我们选取超前进位加法器。

超前进位加法器的型号有多种,由于我们是非电专业,对电子器件的选取要求不高,为使设计简单所以选74LS283型加法器。

2.译码器的选取译码器的功能是将二进制代码(输入)按其编码时的原意翻译成对应的信号或十进制数码(输出)。

译码器是组合逻辑电路的一个重要器件,其可以分为:变量译码和显示译码两类。

译码器的种类很多,但它们的工作原理和分析设计方法大同小异,其中二进制译码器、二-十进制译码器和显示译码器是三种最典型,使用十分广泛的译码电路。

74ls192实验报告

74ls192实验报告

74ls192实验报告《74LS192实验报告》实验目的:本实验旨在通过使用74LS192集成电路,设计并实现一个四位二进制同步上升计数器。

通过实验,学生将掌握74LS192集成电路的工作原理和应用方法,以及计数器的设计和实现过程。

实验器材:1. 74LS192集成电路芯片2. 电路连接板3. 电源4. 示波器5. 逻辑分析仪6. 电阻、电容、开关等元器件实验原理:74LS192是一种四位二进制同步上升计数器,能够在上升沿触发时进行计数。

它具有四个并行输入线和两个控制输入线,可以通过这些输入来实现不同的计数模式和功能。

通过适当的连接和控制,可以实现不同的计数器功能,如二进制计数、BCD计数等。

实验步骤:1. 将74LS192芯片插入电路连接板中,并连接上电源和示波器。

2. 根据74LS192的引脚功能和连接方式,设计并连接相应的电路。

3. 调整控制输入线和并行输入线的状态,观察74LS192的计数器功能。

4. 使用逻辑分析仪对74LS192进行进一步的测试和分析。

5. 根据实验结果,编写实验报告并总结实验结果。

实验结果:通过实验,我们成功设计并实现了一个四位二进制同步上升计数器,并通过适当的连接和控制,实现了不同的计数模式和功能。

通过示波器和逻辑分析仪的测试和分析,我们对74LS192的工作原理和性能有了更深入的了解,并掌握了其应用方法和注意事项。

实验总结:本实验通过使用74LS192集成电路,设计并实现了一个四位二进制同步上升计数器,并对其进行了测试和分析。

通过实验,我们对74LS192的工作原理和应用方法有了更深入的了解,为今后的电子技术实验和应用打下了良好的基础。

结语:通过本次实验,我们对74LS192集成电路有了更深入的了解,掌握了其工作原理和应用方法,为今后的电子技术实验和应用提供了宝贵的经验和知识。

希望同学们能够认真学习和掌握相关知识,不断提高自己的实验能力和技术水平。

最新利用D触发器构成计数器

最新利用D触发器构成计数器

最新利⽤D触发器构成计数器数字电路实验设计:D触发器组成的4位异步⼆进制加法计数器⼀、选⽤芯⽚74LS74,管脚图如下:说明:74LS74是上升沿触发的双D触发器, D触发器的特性⽅程为⼆、设计⽅案:⽤触发器组成计数器。

触发器具有0 和1两种状态,因此⽤⼀个触发器就可以表⽰⼀位⼆进制数。

如果把n个触发器串起来,就可以表⽰n位⼆进制数。

对于⼗进制计数器,它的10 个数码要求有10 个状态,要⽤4位⼆进制数来构成。

下图是由D触发器组成的4位异步⼆进制加法计数器。

三、实验台:四、布线:1、将芯⽚(1)的引脚4、10连到⼀起,2、将芯⽚(2)的引脚4、10连到⼀起,3、将芯⽚(1)的引脚10和芯⽚(2)的引脚10连到⼀起,4、将芯⽚(1)的引脚10连到+5V;5、将芯⽚(1)的引脚1、13连到⼀起,6、将芯⽚(2)的引脚1、13连到⼀起,7、将芯⽚(1)的引脚13和芯⽚(2)的引脚13连到⼀起,8、将芯⽚(1)的引脚13连到+5V;9、将芯⽚(1)的引脚3接到时钟信号CP10、将芯⽚(1)的引脚2、6接到⼀起,再将引脚2接到引脚1111、将芯⽚(1)的引脚8、12接到⼀起,再将芯⽚(1)的引脚8接到芯⽚(2)的引脚312、将芯⽚(2)的引脚2、6接到⼀起,再将引脚6接到引脚1113、将芯⽚(1)的引脚5、9分别接到Q0、Q1,再将芯⽚(2)的引脚5、9分别接到Q2、Q314、分别将两芯⽚的14脚接电源+5V,分别将两芯⽚的7脚接地0V。

五、验证:接通电源on,默认输出原始状态0000每输⼊⼀个CP信号(单击CP),的状态就会相应的变化,变化规律为0000(原始状态)、1000、0100、1100、0010、1010、0110、1110、0001、1001、0101、1101、0011、1011、0111、1111第⼀章总论第⼀节会计概述⼀、会计的概念及特征(⼀)会计的概念(⼆)会计的基本特征1.会计以货币作为主要计量单位2.会计拥有⼀系列专门⽅法3.会计具有核算和监督的基本职能4.会计的本质就是管理活动⼆、会计的基本职能(⼀)会计的核算职能(⼆)会计的监督职能(三)会计核算与监督职能的关系三、会计对象和会计核算的具体内容(⼀)会计对象(⼆)会计核算的具体内容1.款项和有价证券的收付2.财物的收发、增减和使⽤3.债权、债务的发⽣和结算4.资本的增减5.收⼊、⽀出、费⽤、成本的计算6.财务成果的计算和处理7.需要办理会计⼿续、进⾏会计核算的其他事项第⼆节会计基本假设⼀、会计主体⼆、持续经营三、会计分期四、货币计量第三节会计基础⼀、会计基础的概念和种类⼆、权责发⽣制三、收付实现制第⼆章会计要素与会计科⽬第⼀节会计要素⼀、会计要素的确认(⼀)资产1.资产的定义2.资产的分类(⼆)负债1.负债的定义2.负债的分类(三)所有者权益。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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);enclrsignal led:std_logic_vector(6 downto 0); begin--四位二进制计数器process(clk)beginif clk'event and clk='1' thenif clr='1' thencnt<=(others=>'0');co<='0';elsif en='1' thenif cnt="1111" thencnt<="0000";co<='1';elsecnt<=cnt+'1';co<='0';end if;end if;end if;end process;--将二进制数拆分成十进制数的个位和十位cnt1<=cnt when cnt<="1001" elsecnt-"1010";cnt2<="0000" when cnt<="1001" else"0001";--七段数码管选通控制信号产生process(clk1,clr)beginif clr='1' thenscan<="00";elsif clk1'event and clk1='1' thenif scan="00" or scan>="10" thenscan<="01";elsescan<=scan+'1';end if;end if;end process;scanout<=scan;--二选一数据选择器with scan selecthex<=cnt1 when "01",cnt2 when others;ledout<=not led;--七段译码with hex selectled<="1111001" when "0001","0100100" when "0010","0110000" when "0011","0011001" when "0100","0010010" when "0101","0000010" when "0110","1111000" when "0111","0000000" when "1000","0010000" when "1001","0001000" when "1010","0000011" when "1011","1000110" when "1100","0100001" when "1101","0000110" when "1110","0001110" when "1111","1000000" when others;end Behavioral;2、八位二进制计数器结果有两位七段数码管显示library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;---- Uncomment the following library declaration ifinstantiating---- any Xilinx primitives in this code.--library UNISIM;--use UNISIM.VComponents.all;entity counter8 isPort ( 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 counter8;architecture Behavioral of counter8 issignal cnt:std_logic_vector(7 downto 0);signal hex:std_logic_vector(3 downto 0);signal scan:std_logic_vector(1 downto 0);signal led:std_logic_vector(6 downto 0);beginprocess(clk)beginif clk'event and clk='1' thenif clr='1' thencnt<=(others=>'0');co<='0';elsif en='1' thenif cnt="11111111" thencnt<="00000000";co<='1';elsecnt<=cnt+'1';co<='0';end if;end if;end if;end process;process(clk1,clr)beginif clr='1' thenscan<="00";elsif clk1'event and clk1='1' thenif scan="00" or scan>="10" thenscan<="01";elsescan<=scan+'1';end if;end if;end process;scanout<=scan;with scan selecthex<=cnt(3 downto 0) when "01",cnt(7 downto 4) when others; ledout<=not led;with hex selectled<="1111001" when "0001","0100100" when "0010","0110000" when "0011","0011001" when "0100","0010010" when "0101","0000010" when "0110","1111000" when "0111","0000000" when "1000","0010000" when "1001","0001000" when "1010","0000011" when "1011","1000110" when "1100","0100001" when "1101","0000110" when "1110","0001110" when "1111","1000000" when others; end Behavioral;。

相关文档
最新文档