当前位置:文档之家› 三位二进制加法计数器、序列信号发生器的设计、用集成芯片设计一个256进制加法计数器

三位二进制加法计数器、序列信号发生器的设计、用集成芯片设计一个256进制加法计数器

目录

1课程设计的目的与作用 (1)

2设计任务 (1)

2.1同步计数器 (1)

2.2序列信号发生器 (1)

3设计原理 (1)

3.1同步计数器 (1)

3.1.1加法计数器 (2)

3.1.2减法计数器 (2)

3.1.3用集成芯片设计一个256进制的加法器 (2)

3.2序列信号发生器 (3)

4实验步骤 (3)

4.1同步计数器 (3)

4.1.1加法计数器 (4)

4.1.2减法计数器 (7)

4.1.3用集成芯片设计一个256进制的加法器 (10)

4.2序列信号发生器 (11)

5设计总结与体会 (14)

6参考文献 (15)

1课程设计的目的与作用

1.了解同步计数器及序列信号发生器工作原理;

2.掌握计数器电路的分析,设计方法及应用;

3.掌握序列信号发生器的分析,设计方法及应用;

2设计任务

2.1同步计数器

1.使用设计一个循环型3位2进制加法计数器,其中无效状态为(001,010),组合电路

选用与门和与非门等。

2.根据自己的设计接线。

3.检查无误后,测试其功能。

2.2序列信号发生器

1.使用设计一个能循环产生给定序列的序列信号发生器,其中发生序列(1000001),组

合电路选用与门和与非门等。

根据自己的设计接线。

2.检查无误后,测试其功能。

3设计原理

3.1同步计数器

(1)计数器是用来统计输入脉冲个数电路,是组成数字电路和计算机电路的基本时序逻辑部件。计数器按长度可分为:二进制,十进制和任意进制计数器。计数器不仅有加法计数器,也有减法计数器。如果一个计数器既能完成累加技术功能,也能完成递减功能,则称其为可逆计数器。在同步计数器中,个触发器共用同一个时钟信号。

(2)时序电路的分析过程:根据给定的时序电路,写出各触发器的驱动方程,输出方程,根据驱动方程带入触发器特征方程,得到每个触发器的词态方程;再根据给定初太,一次迭代得到特征转换表,分析特征转换表画出状态图。

(3)设计过程:设计流程如图1所示。

图1 同步时序逻辑电路设计流程

3.1.1加法计数器

CP是输入计数脉冲,所谓计数,就是记CP脉冲个数,每来一个CP脉冲,计数器就加一个1,随着输入计数脉冲个数的增加,计数器中的数值也增大,当计数器记满时再来CP 脉冲,计数器归零的同时给高位进位,即要给高位进位信号。

3.1.2减法计数器

CP是输入减法计数脉冲,每输入一个CP脉冲,计数器就减一个1,当不够减时就向高位借位,显然向高位借来的1应当8,8-1=7。因此在状态为000时,输入一个CP脉冲,不够减,向高位借1当8,减去1后剩7,所以计数器的状态应该由000转换到111,且同时应向高位送出借位信号。

3.1.3用集成芯片设计一个256进制的加法器

选取两片74LS161设计由状态00000000~11111111的256进制加法计数器。

74LS161具有以下功能:

★异步清零功能

当0=CR 时,计数器清零。在0=CR 时,其他输入信号都不起作用,由时钟触发器的逻辑特性知道,其异步输入端信号是优先的,0=CR 正是通过D R 复位计数器也即使异步清

零的。

★同步并行置数功能

当1=CR 、0=LD 时,在CP 上升沿操作下,并行输入数据30~d d 进入计数器,使

012310111213d d d d Q Q Q Q n n n n =++++。

★二进制同步加法计数功能

当1==LD CR 时,若1==P T CT CT ,则计数器对CP 信号按照8421编码进行加法计数。

★保持功能

当1==LD CR 时,若0=?P T CT CT ,则计数器将保持原来状态不变。对于进位信号有两

种情况,如果0=T CT ,那么0=CO ;若是1=T CT ,则n n n n Q Q Q Q CO 0123=。

3.2序列信号发生器

(1) 序列是把一组0,1数码按一定规则顺序排列的串行信号,可以做同步信号地址码,

数据等,也可以做控制信号。

(2) 计数型序列信号发生器是在计数器的基础上加上反馈网络构成。要实现序列长度

为M 序列信号发生器。其设计步骤为:

a 先设计一个计数模值为M 的计数器;

b 再令计数器每一个状态输出符合序列信号要求;

C 根据计数器状态转换关系和序列信号要求设计输出组合网络。

四位二进制同步加法计数器(缺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:状态转换图

16位超前加法器实验报告

16位超前加法器设计实验 一、实验分析: 四位超前进位加法器HDL程序: module add4_head ( a, b, ci, s, pp, gg); input[3:0] a; input[3:0] b; input ci; output[3:0] s; output pp; output gg; wire[3:0] p; wire[3:0] g; wire[2:0] c; assign p[0] = a[0] ^ b[0]; assign p[1] = a[1] ^ b[1]; assign p[2] = a[2] ^ b[2]; assign p[3] = a[3] ^ b[3]; assign g[0] = a[0] & b[0]; assign g[1] = a[1] & b[1]; assign g[2] = a[2] & b[2]; assign g[3] = a[3] & b[3]; assign c[0] = (p[0] & ci) | g[0]; assign c[1] = (p[1] & c[0]) | g[1]; assign c[2] = (p[2] & c[1]) | g[2]; assign pp = p[3] & p[2] & p[1] & p[0]; assign gg = g[3] | (p[3] & (g[2] | p[2] & (g[1] | p[1] & g[0]))); assign s[0] = p[0] ^ ci; assign s[1] = p[1] ^ c[0]; assign s[2] = p[2] ^ c[1]; assign s[3] = p[3] ^ c[2]; endmodule p表示进位否决信号(pass),如果p为0就否决调前一级的进位输入。否决的意思就是即使前一级有进位,本级也不会向后一级产生进位输出。 g表示进位产生信号(generate),如果g为1就表示一定会向后一级产生进位输出。p[n] = a[n] ^ b[n]这句话的意思是说,当a=1,b=0或a=0,b=1时前一级的进位输入信号不能否决。这样就有个问题了,即当a=1,b=1时前一级的进位输入信号也不能否决啊,怎么没有体现出来?其实当a=1,b=1时产生了进位产生信号g,它的优先级高于p信号,就忽略了p信号,直接产生了向后一级产生进位输出,是没有逻辑错误的。 g[n] = a[n] & b[n] 这句话的意思是说,如果a=1,b=1时就直接向后一级产生进位输出信号,而不用考虑其它的任何因素。

EDA 16位加法计数器的设计

北京理工大学 用程序输入方法设计一个16位二进制加法计数器 学院:机械xxxx学院 专业班级:10机械电子工程x班 姓名:陈xx 学号:10xxxxxx 指导教师:xxx 老师

目录 摘要 (1) 1 绪论 (2) 2 计数器的工作原理 (3) 3 设计原理 (4) 4 电路系统的功能仿真 (5) 6 个人小结 (20) 参考文献 (21)

摘要 计数器是数字系统中使用较多的一种时序逻辑器件。计数器的基本功能是统计时钟脉冲的个数,即对脉冲实现计数操作。计数器也可以作为分频、定时、脉冲节拍产生器和脉冲序列产生器使用。计数器的种类很多,按构成计数器中的各触发器是否使用一个时钟脉冲源来分,可分为同步计数器和异步计数器;按进位体制的不同,可分为二进制计数器、十进制计数器和任意进制计数器;按计数过程中数字增减趋势的不同,可分为加法计数器、减法计数器和可逆计数器;还有可预制数和可编计数器等等。本次课程设计将利用众多集成电路软件软件中的Quartus II软件,使用VHDL语言编程完成论文《用程序输入方法设计一个16位二进制加法计数器》,调试结果表明,所设计的计数器正确实现了计数功能。 关键词:二进制;加法计数器;VHDL语言

1 绪论 现代电子设计技术的核心已日趋转向基于计算机的电子设计自动化,即EDA(Electronic Design Automation)技术。EDA技术就是依赖功能强大的计算机,在集成电路软件平台上,对以硬件描述语言HDL(Hardware Description Language)为系统逻辑描述手段完成的设计文件,自动完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。现在对EDA的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。一般所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。 EDA工具软件可大致可分为芯片设计辅助软件、可编程芯片辅助设计软件、系统设计辅助软件等三类。常用的EDA工具软件平台有:Matlab、Protel、Proteus、OrCAD以及我们学习的本次课程结课论文所用到的Quartus II等。而且EDA工具软件平台一般都有第三方软件接口,以便于与其他软件联合使用。 本次课程结课论文在设计16位二进制加法计数器时所用到的EDA软件工具平台是Quartus II。Quartus II 是Altera公司的综合性PLD(可编程逻辑器件)开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。Quartus II 通过和DSP

同步二进制加法计数器

同步二进制加法计数器 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.文字叙述逻辑功能 解:

三位二进制加法计数器(无效态:000,001)设计一个基于74138的组合电路 设计一个140进制加法计数器

目录 1 课程设计的目的与作用 (1) 2 设计任务 (1) 3 设计原理 (2) 3.1三位二进制加法计数器 (2) 3.2全加器 (2) 3.3用集成芯片设计一个140进制的加法器 (2) 4实验步骤 (3) 4.1加法计数器 (3) 4.2全加器 (6) 4.3用集成芯片设计一个140进制的加法器 (7) 5仿真结果分析 (8) 6设计总结 (9) 7参考文献 (9)

1课程设计的目的与作用 (1)了解同步计数器及序列信号发生器工作原理; (2)掌握计数器电路的分析,设计方法及应用; (3)掌握序列信号发生器的分析,设计方法及应用 2 设计任务 2.1加法计数器 (1)设计一个循环型3位2进制加法计数器,其中无效状态为(000,001),组合电路选用与门和与非门等。 (2)根据自己的设计接线。 (3)检查无误后,测试其功能。 2.2全加器 (1)设计一个全加器,选用一片74LS138芯片设计电路。 (2)根据自己的设计接线。 (3)检查无误后,测试其功能。 2.3 140进制的加法器 (1)设计一个140进制加法器并显示计数,选用两片74L163芯片设计电路。 (2)根据自己的设计接线。 (3)检查无误后,测试其功能。

3 设计原理 3.1加法计数器 1.计数器是用来统计输入脉冲个数电路,是组成数字电路和计算机电路的基本时序逻辑部件。计数器按长度可分为:二进制,十进制和任意进制计数器。计数器不仅有加法计数器,也有减法计数器。如果一个计数器既能完成累加技术功能,也能完成递减功能,则称其为可逆计数器。在同步计数器中,个触发器共用同一个时钟信号。 2.时序电路的分析过程:根据给定的时序电路,写出各触发器的驱动方程,输出方程,根据驱动方程带入触发器特征方程,得到每个触发器的次态方程;再根据给定初态,一次迭代得到特征转换表,分析特征转换表画出状态图。 3.CP是输入计数脉冲,所谓计数,就是记CP脉冲个数,每来一个CP脉冲,计数器就加一个1,随着输入计数脉冲个数的增加,计数器中的数值也增大,当计数器记满时再来CP脉冲,计数器归零的同时给高位进位,即要给高位进位信号。 3.2全加器 1.74LS138有三个输入端:A0,A1,A2 和八个输出端Q0-Q7. 3个使能输入端口分是STB,STC,STA,只有当STB=STC=0,STA=1时,译码器才能正常工作,否则译码器处于禁止状态,所有输出端为高电平。 2. 以处理低位进位,并输出本位加法进位。多个全加器进行级联可以得到多位全加器 3.3用集成芯片设计一个140进制的加法器 选取两片74LS163芯片设计140进制加法计数器。74LS163具有以下功能: A 异步清零功能 当0 CR时,其他输入信号都不起作用,由时钟触发器的逻 = = CR时,计数器清零。在0 R复位计数器也即使异步清辑特性知道,其异步输入端信号是优先的,0 = CR正是通过D 零的。

16位vhdl乘法器详解,加仿真图

控制模块: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity cont_modu is port( Clk : in std_logic ; Start : in std_logic; //数据输入开始信号 en_sig : out std_logic; //控制运算信号,为‘1’运算数据 out_sig : out std_logic // 运算完成信号 ); end entity; architecture rlt_cont_modu of cont_modu is signal cnt :integer range 0 to 15 :=0;//定义从0到15 type state is(S_idle,S_work,S_1d,S_2d);//运算状态信号,状态机 signal st_ty : state :=S_idle; begin process(Clk) begin if rising_edge(Clk) then case st_ty is选择语句;S_idle为空闲状态,当输入数据后Start信号为1就开始工作 when S_idle => if Start ='1' then如果为1就跳转到S_work状态,并且使能信号置1 st_ty <= S_work; en_sig <='1'; else不然继续在S_idle状态 st_ty <= S_idle; en_sig <='0'; end if; out_sig <='0'; when S_work => if cnt =15 then在S_work状态下,cnt信号一直加1,加满16个数就跳转到S_1d,然后使能信号en_sig 就为0。 st_ty <= S_1d; cnt <= 0; en_sig <='0'; else如果没到16个数继续加1 st_ty <= S_work;

8位二进制加法计算器

一:本实验设计的是一个8为二进制加法计算器,其功能就是对两个八位的二进制数执行加法运算,并可以异步清零。 二:电路可划分为三部分:半加器、全加器和复位电路。 1、半加器: 真值表 a b so co 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 电路图 2全加器:由半加器和或门组成 电路图 3复位电路: 复位电路通过en控制,当en为‘1’时,执行加法运算,输出正确的值,当en为‘0’时,输输出及结果为全0. 三:实验波形仿真和VHDL 1、仿真图:

2、VHDL代码 1)半加器h_adder: library ieee; use ieee.std_logic_1164.all; entity h_adder is port (a,b :in std_logic; co,so :out std_logic); end entity h_adder; architecture fh1 of h_adder is begin so <= not(a xor (not b));co <= a and b ; end architecture fh1; 2)或门or2a: library ieee; use ieee.std_logic_1164.all; entity or2a is port (a,b :in std_logic; c: out std_logic); end entity or2a; architecture one of or2a is begin c <= a or b ; end architecture one; 3)全加器f_adder: library ieee;

三位二进制同步减法计数器

1 三位二进制同步减法计数器的设计(000、010) 1.1 课程设计的目的 1、学会利用触发器和逻辑门电路,实现六进制同步减法计数器的设计 2、学会掌握并能使用常用芯片74LS112、74LS08芯片的功能 3、学会使用实验箱、使用软件画图 4、了解计数器的工作原理 1.2 设计的总体框图 1.3 设计过程 1逻辑抽象分析 CP为输入的减法计数脉冲,每当输入一个CP脉冲,计数器就减一个1,当不够减时就向高位借位,即输出借位信号。当向高位借来1时应当为8,减一后为7。状态图中,状态为000输入一个CP脉冲,不够减,向高位借1当8,减1后剩7,计数器的状态应由000转为111,同时向高位输出借位信号,总体框图中C为借位信号。 2状态图 状态000、010为无效状态,据分析状态图为: /0 /0 /0 /0 /0 001011100101110111 /1

3 选择触发器,求时钟方程、输出方程和状态方程 ● 选择触发器 由于状态数M=6,触发器的个数n 满足122n n M -≤≤,故n 的取值为3。选用3个 下降沿触发的JK 触发器。 ● 求时钟方程 因为是同步,故012CP CP CP CP === ● 求输出方程 1.3.1 输出C 的卡诺图 根据输出C 的卡诺图可得输出方程为 C=Q 2n Q 1n ● 求状态方程 计数器的次态的卡诺图为

1.3.2 次态210n n n Q Q Q 的卡诺图 各个触发器的次态卡诺图如下: 1.3.3 2n Q 次态卡诺图 1.3.4 1n Q 的次态卡诺图

1.3.5 0n Q 的次态卡诺图 根据次态卡诺图可得次态方程为: Q 2n+1=Q 1n Q 0n +Q 2n Q 1n Q 1n+1= Q 1n Q 0n + Q 2n Q 1n + Q 2n Q 1n Q 0n Q 0n+1 =Q 2n +Q 0n 4 求驱动方程 Q 2n+1 =Q 1n Q 2n + Q 0n Q 1n Q 2n Q 1n+1=Q 0n Q 2n Q 1n +Q 0n Q 2n Q 1n Q 0n+1=Q 2n Q 0n +Q 2n Q 0n 驱动方程是: J 0 = Q 2n K 0 =Q 2n J 1 =Q 0n Q 2n K 1= Q 0n Q 2 J 2 = Q 1n K 2=Q 0n Q 1n 5 检查是否能自启动 将无效状态100、101分别代入输出方程、状态方程进行计算,结果如下:

VHDL实现16位全加器

[键入公司名称] [键入文档标题] [键入文档副标题] 姓名:托列吾别克·马杰尼 班级:电路与系统01班 学号:201221020141 2013/11/24

基于VHDL的16位全加器的设计 1.1设计题目的内容及要求 1.1.1目的: CMOS数字集成电路设计流程及数字集成电路自动化设计,包括功能验证、VHDL/Verlog建模、同步电路设计、异步数据获取、能耗与散热、信号完整性、物理设计、设计验证等技术 1.1.2内容: 主要实验内容是用0.18μm数字CMOS工艺,VHDL或Verlog设计一个16位全加器,用Synthesis 仿真工具验证功能,电路合成,及性能检测。 1.1.3主要测试参数及指标范围: 16位的全加器主要的设计指标是高于1GHz的频率,功耗,物理面积大小等参数。 1.2全加器的组成和原理分析 全加器是常用的组合逻辑模块中的一种,对全加器的分析和对组合逻辑电 路的分析一样。组合逻辑电路的分析,就是找出给定电路输入和输出之间的逻 辑关系,从而了解给定逻辑电路的逻辑功能。组合逻辑电路的分析方法通常采 用代数法,一般按下列步骤进行: (1)根据所需要的功能,列出真值表。 (2)根据真值表,写出相应的逻辑函数表达式。 (3)根据真值表或逻辑函数表达式,画出相应的组合逻辑电路的逻辑图[1]。 (4)用VHDL编写程序在QUARTUSⅡ上进行模拟,并分析结果的正确性。 1.3 全加器简介

全加器是组合逻辑电路中最常见也最实用的一种,考虑低位进位的加法运算就是全加运算,实现全加运算的电路称为全加器。它主要实现加法的运算,其中分为并行全加器和串行全加器,所谓并行就是指向高位进位时是并行执行的,而串行就是从低位到高位按顺序执行,为了提高运算,必须设法减小或消除由于进位信号逐级传递所消耗的时间,为了提高运算速度,制成了超前进位加法器,这是对全加器的一种创新[2]。 1.3.1半加器的基本原理 如果不考虑有来自低位的进位将两个1位二进制数相加,称为半加。实现半加运算的电路称为半加器。 按照二进制加法运算规则可以列出如表2所示的半加器真值表,其中A、B 是两个加数,S是相加的和,CO是向高位的进位。将S、CO和A、B的关系写成逻辑表达式则得到 S=A B+A B=A+B CO=AB 表1 半加器的真值表 因此,半加器是由一个异或门和一个与门组成的,如图1所示。

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

成绩评定表 学生姓名郝晓鹏班级学号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环境

16位全加器

四川理工大学 课程设计任务书设计题目:采用门电路设计一个16位的全加器电路 院系:计算机学院 专业:计算机科学与技术 班级:2008级6班 指导教师:朱文忠 学生姓名:赵******************

目录: 一引言 (1) 1.1 设计背景 (1) 1.2 设计分工 (1) 二设计目的 (2) 2.1 设计目的 (2) 2.2 设计内容 (2) 三设计过程 (2) 3.1 硬件方案 (2) 3.1.1 一位全加器的原理及设计 (2) 3.1.2 四位全加器的原理及设计 (4) 3.1.3 十六位全加器的原理及设计 (7) 3.2 软件方案 (9) 3.3 可行性论证 (13) 3.4 结论 (15) 四参考文献 (16)

引言 1. 设计背景 随着计算机科学技术的发展,人们获得信息的途径更加多样,获取信息的速度更加快捷。硬件的发展允许程序员编出很多精彩的使用软件,也使得计算机更加普及。中央处理器CP U的好坏是影响和制约计算机速度和性能的关键因素。而加法器是组成C PU的的重要部件,一般运算速度的快慢就取决与每秒执行加法的次数,加法器是算术逻辑单元中的基本逻辑器件。例如:为了节省资源,减法器和硬件乘法器都可由加法器来构成。但宽位加法器的设计是很耗费资源的,因此在实际的设计和相关系统的开发中需要注意资源的利用率和进位速度等两方面的问题。 多位加法器的构成有两种方式:并行进位和串行进位方式。并行进位加法器设有并行进位产生逻辑,运算速度快;串行进位方式是将全加器级联构成多位加法器。并行进位的并行加法器又可以分为组内并行、组间串行的进位链和组内并行、组间并行的进位链。通常,并行加法器比串行级联加法器占用更多的资源,并且随着位数的增加,相同位数的并行加法器比串行加法器的资源占用差距也会越来越大。它们的目的就是要进位信号的产生尽可能的快,因此产生了二重进位链或更高重进位链,显然进位速度的提高是以硬件设计的复杂化为代价来实现的。 2. 设计分工 赵**(081010*****):硬件方案、排版 吴**(081010*****):可行性论证、结论

用JKFF触发器设计一个模为8的加法计数器

题目:用JKFF 设计模为8的加法计数器 步骤1: 分析题意 根据题目所给的条件,待设计的计数器默认为模为8的加法器,不需要求加载初值。电路只需要故电路只需时钟输入端clk ,clk 作为电路的同步时钟,不必当做输入变量对待;输出一个8进制数要3个输出端,记为0Q 1Q 2Q 。要有输出信号Y ,故共需要3个输出端。因输出量0Q 1Q 2Q 就是计数值,故采用Moore 型电路较为合适。 步骤2:建立原始状态图 模8加法器要求逢8加1,。有此状态图做出如图所示。需要8个状态故不需要化简。 /Y /0 /0 /0 S0→ S1→ S2→ S3 ↑ /1 ↓ /0 S7←S6←S5← S4 /0 /0 /0 步骤3:状态分配。 由于最大模的值为8,因此必须取代码位数n=3。假设S0=000,S1=001,S2=010,S3=011,S4=100,S5=101,S6=110,S7=111.则可以做出状态转移表如图。 步骤4:选触发器,求时钟、输出、状态、驱动方程。 因需要3位二进制代码,选用三个CP 下降沿出发的J-K 触发器,分别用FF0,FF1,FF2表示。 有状态列表可作出次态卡诺图及输出函数的卡诺图,如图所示。 与J-K 触发器的特性方程 n n n Q K Q J Q +=+1 比较得到驱动方程 输入 现态 次态 输 出 CP Q2 Q1 Q0 12 +n Q 11 +n Q 1 +n Q Y 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 2 0 1 0 0 1 1 0 3 0 1 1 1 0 0 0 4 1 0 0 1 0 1 0 5 1 0 1 1 1 0 0 6 1 1 0 1 1 1 0 7 1 1 1 1

用verilog编写16位加法器 乘法器 自动售货机

Verilog课程实验报告

实验1十六位超前进位加法器 1.1系统设计要求 用超前进位加法器实现一个有符号位的16位加法器,并且考虑溢出的情况 2.1详细设计 根据超前进位加法器的原理Co = G | ( P & Ci ) S = P ^ Ci 设计出4位加法器的子模块,然后通过4个4位加法器的相连来得到十六位的加法器。原理如下图所示。溢出用flag=0表示。 3.1程序 //-------------16位超前进位加法器----------------- module cla16(a,b,s,flag); //含有a ,b ,输出s ,进位flag 的模块 input [15:0] a,b;//输入a ,b output [16:0] s; //输出 s output reg flag; //进位 FA FA FA P 0 G 1 P 0G 1 P 2G 2 P 3G 3 C o,3 C o,2 C o,1 C o,0 C i,0 FA FA FA P 0 G 1 P 0G 1 P 2G 2 P 3G 3 C o,2 C o,1 C o,0 C i,0 o,3 M u l t i p l e x e r o P 1P 2P 3 Idea: If (P0 and P1 and P2 and P3 = 1)then C o3 = C 0, else “kill” or “generate”.

wire pp4,pp3,pp2,pp1; wire gg4,gg3,gg2,gg1; wire [15:0] Cp; wire [15:0] p,g; pg i0 (a[15:0],b[15:0],p[15:0],g[15:0]); add i1 (p[3],p[2],p[1],p[0],g[3],g[2],g[1],g[0],pp1,gg1); add i2 (p[7],p[6],p[5],p[4],g[7],g[6],g[5],g[4],pp2,gg2); add i3 (p[11],p[10],p[9],p[8],g[11],g[10],g[9],g[8],pp3,gg3); add i4 (p[15],p[14],p[13],p[12],g[15],g[14],g[13],g[12],pp4,gg4); add i5 (pp4,pp3,pp2,pp1,gg4,gg3,gg2,gg1,pp5,gg5); //调用四位加法器模块 add4 l0 (p[3],p[2],p[1],p[0],g[3],g[2],g[1],g[0],1'b0,Cp[3],Cp[2],Cp[1],Cp[0]); add4 l1 (p[7],p[6],p[5],p[4],g[7],g[6],g[5],g[4],Cp[3],Cp[7],Cp[6],Cp[5],Cp[4]); add4 l2 (p[11],p[10],p[9],p[8],g[11],g[10],g[9],g[8],Cp[7],Cp[11],Cp[10],Cp[9],Cp[8]); add4 l3 (p[15],p[14],p[13],p[12],g[15],g[14],g[13],g[12],Cp[11],Cp[15],Cp[14],Cp[13],Cp[12]); assign s[0]=p[0]^1'b0; //保留位 assign s[1]=p[1]^Cp[0]; assign s[2]=p[2]^Cp[1]; assign s[3]=p[3]^Cp[2]; assign s[4]=p[4]^Cp[3]; assign s[5]=p[5]^Cp[4]; assign s[6]=p[6]^Cp[5]; assign s[7]=p[7]^Cp[6]; assign s[8]=p[8]^Cp[7]; assign s[9]=p[9]^Cp[8]; assign s[10]=p[10]^Cp[9]; assign s[11]=p[11]^Cp[10]; assign s[12]=p[12]^Cp[11]; assign s[13]=p[13]^Cp[12]; assign s[14]=p[14]^Cp[13]; assign s[15]=p[15]^Cp[14]; assign s[16]=pp5|gg5; //溢出判断模块 always@(a,b,s) begin if ((a[15]==1&&b[15]==1&&s[15]==0)||(a[15]==0&&b[15]==0&&s[15]==1)) flag=1'b1; else flag=1'b0; end endmodule //4位加法器模块 module add4(p[3],p[2],p[1],p[0],g[3],g[2],g[1],g[0],Co,Cp[3],Cp[2],Cp[1],Cp[0]); input [3:0]p,g;

三位二进制减法计数器设计

目录 1课程设计的目的与作用 (2) 2 设计任务、及所用multisim软件环境介绍 (2) 2.1 设计任务 (2) 2.1.1减法计数器 (2) 1.2.2串行序列信号发生器 (2) 1.2.3 24进制计数器 (3) 2.2 multisim软件环境介绍 (3) 3 时序逻辑电路的基本设计方法 (8) 3.1 同步计数器 (8) 3.2序列信号发生器 (10) 3.3 24进制计数器 (10) 4 设计步骤 (11) 4.1 同步计数器 (11) 4.2 序列信号发生器 (13) 4.3 24进制计数器 (14) 5仿真结果分析 (15) 5.1 3位二进制同步减法计数器仿真结果 (15) 5.2 串行序列发生器仿真结果 (16) 5.3 24进制计数器仿真结果 (17) 5.3 结果分析 (18) 6设计总结和体会 (19) 7参考文献 (20)

1课程设计的目的与作用 1.了解同步计数器,序列信号发生器和N进制计数器工作原理; 2.掌握计数器电路的分析,设计方法及应用; 3.掌握序列信号发生器的分析,设计方法及应用; 4.掌握N进制计数器的分析,设计方法及应用; 5.学会正确使用JK触发器。 2 设计任务、及所用multisim软件环境介绍2.1 设计任务 2.1.1减法计数器 1. 设计一个循环型3位2进制减法计数器,其中无效状态为(001,110)。 2. 根据同步计数器原理设计减法器的电路图。 3. 根据电路原理图使用Multisim进行仿真。 4. 将电路图进行实际接线操作。 5. 检查无误后,测试其功能。 1.2.2串行序列信号发生器 1.设计一个序列信号发生器,其号序列为(101100)。 2.根据序列发生器原理设计发生器的原理图。 3.根据电路原理图使用Multisim进行仿真。

16位CPU设计

设计一个非常简单的16位CPU I hear and I forget. I see and I remember. I do and I understand. -- 孔子 Easy Right 计算机研究小组 https://www.doczj.com/doc/87418180.html, August 2003

第一章简介 1.目的 本项目的目的是设计一个十分简单的基于冯·诺依曼架构的16位CPU。我们将这颗CPU命名为ERVS16-CPU(EasyRight Very Simple 16-bit CPU )。 ERVS16有它自己的指令集。并且,为了测试ERVS16,我们将在项目的最后用它的指令集编写一个十分简单的操作系统。简单的说,我们在这个项目中只考虑CPU,寄存器,内存和指令集之间的关系。这就是说我们只需要实现: (1)读/写寄存器 (2)读/写内存 (3)执行指令集中的所有指令 图1.1是ERVS16的抽象图 图 1.1 ERVS16抽象图 假设系统时钟频率是1MHz,我们将在设计中使用正缘触发时钟频率(Positive Edge Triggered Clocking)技术。复位信号首先输入一个高电平初始化 CPU ,接着当复位信号变为低电平时开始运行位于0地址的指令。 内存读/写循环时,要确保可读/可写信号是在低电平。如图1.2和1.3,所有内存读写操作都需要一个信号周期来完成。 时钟技术(Clocking Methodology)定义了信号可以被读写的时间。读写操作不能同时进行。边缘触发时钟频率技术(Edge-triggered Clocking Methodology)正是被用来防止这样的情况发生。边缘触发时钟频率技术是指机器存储的所有值都只能在时钟边缘被更新。

用单片机语言设计16位加法计算器实验报告概要

湖北第二师范学院计算机学院09计应 单片机课程设计 实验报告 课程设计名称:电子计算器 课程设计单位:10计应(1)班 课设小组成员:徐凡(1060310039) 凡平(1060310058) 彭浩(1060310045) 桂银(1060310010) 潘光卉(1060300033) 完成时间:2012年04月02日至2012年04月 24 日

单片机课程设计实验报告 课程设计题目:简易计算器 作品功能描述:当通过输入键盘数字时,能够在显示器上显示输出的数值,并且通过想实现的简单运算功能,实现计算器的加、减、乘、 除和清零,并将结果显示出来。 小组成员工作分工:徐凡:程序主框架的构造和主要功能函数的设计。 凡平:原理图的设计和硬件的焊接。 彭浩:基本功能函数的设计(“+,-,*,/”)。 桂银:程序流程图的设计和键盘扫描程序的实现。 潘光卉:编写文档和功能测试。 硬件电路设计:本设计中我们用的是AT89C52芯片,LCD1602 (PROTEUS中为LM016L)就是那个液晶屏,因为可以显示2行16个字符,故 叫做LCD1602. 11.0592M或12M晶振(CRYSTAL),两者均可,但要涉及到串口 需选用12MKEYPAD-SMALLCALC就是那个4X4键盘 电容20~30PF(CAP),接最小电路 电容10PF主要接复位电路 RESPACK-8排阻,为20K的,一个引脚接正极,另8个引脚接 I/O口接RES电阻10K,接复位电路 实物照片:硬件原理图

原理说明: 1,上电后,屏幕初始化; 2,计算。按下数字键,屏幕显示要运行的第一个数字,再按下符号键,然后再按下数字键,屏幕显示要运算的第二个数字,最后按 下“=”号键,屏幕上显示出计算结果。 3,如果要再次计算,可以按下“ON/C”键清零,或者继续按下数字键,即可重新计算。 键盘使用说明如下: 按键功能说明:Array“+”实现两个数的相加 “-”实现两个数的相减 “×”实现两个数的乘积 “÷”实现两个数商的运算 “ON/C”计算器显示的清零和 接通电源

三位二进制同步减法计数器(无效状态:000、111)电压串联负反馈放大电路

课程设计任务书

目录 1. 数字电子设计部分 (1) 1.1 课程设计的目的与作用 (1) 1.2设计任务: (1) 1.2.1同步计数器 (1) 1.2.2串行序列信号检测器 (1) 1.3设计原理: (2) 1.3.1同步计数器 (2) 1.3.2串行序列信号检测器 (2) 1.4实验步骤: (3) 1.4.1同步计数器: (3) 1.4.2串行序列检测器 (6) 1.5设计总结和体会 (9) 1.6参考文献 (10) 2.模拟电子设计部分 (11) 2.1课程A设计的目的与作用 (11) 2.1.1课程设计 (11) 2.2 设计任务、及所用multisim软件环境介绍 (11) 2.2.1 设计任务:负反馈放大电路的基本框图 (11) 2.2.2 Multisim软件环境的介绍 (12) 2.3电路模型的建立 (15) 2.4理论分析及计算 (15) 2.4.1电路反馈类型的判断 (15) 2.4.2对电压串联负反馈电路的理论分析 (16) 2.5仿真结果分析 (19) 2.6设计总结和体会 (23) 2.7 参考文献 (24)

1. 数字电子设计部分 1.1课程设计的目的与作用 1.了解同步计数器及序列信号发生器工作原理; 2.掌握计数器电路的分析,设计方法及应用; 3.掌握序列信号发生器的分析,设计方法及应用; 4.学会正确使用JK触发器。 1.2设计任务: 1.2.1同步计数器 1. 使用设计一个循环型3位2进制同步减法计数器,其中无效状态为(000,111),组合 电路选用与门和与非门等。 2. 根据同步计数器原理设计减法器的电路图。 3. 根据电路原理图使用Multisim进行仿真。 4. 将电路图进行实际接线操作。 5. 检查无误后,测试其功能。 1.2.2串行序列信号检测器 1.使用设计一个序列信号检测器,其中序列为(1110),组合电路选用与门和与非门等。 2.根据序列发生检测器原理设计检测器的原理图。 3.根据电路原理图使用Multisim进行仿真。 4.将电路图进行实际接线操作。 5.检查无误后,测试其功能。

16位加法器设计

计算机组成原理 课程设计报告 题目 16位加法器设计B 院系信息科学技术学院 专业计算机科学与技术 班级 11计本(2) 教师 学生 学号

内容提要 本设计在其他基本加法器的基础上改进为超前进位加法器,它避免了串行进位加法器的进位延迟,提高了速度。其主要分为四章,第一章为设计概述,主要介绍设计的任务、目标,以及设计环境,第二章为总体设计方案,其主要介绍本设计中系统设计的框架。第三章为仿真测试,给出了系统在仿真环境下波形测试结果,看是否满足题目要求。第四章为设计心得总结,主要是介绍在经过本次设计后,自己的一些心得体会。最后还给出了本设计的一些参考文献。

前言 计算机组成原理是一门实践性很强的课程;其课程设计目的在于综合运用所学知识,全面掌握微型计算机及其接口的工作原理、编程和使用方法;在设计中,通过小组协作提出设计方案,进行软件设计、调试,最后获得正确的结果,可以加深和巩固对理论知识的更好掌握,进一步建立计算机应用系统体概念,初步掌握单片机软、硬件开发方法,为以后进行实际的单片机软、硬件应用开发奠定良好的基础。 本设计是利用74181、74182芯片组成了16位加法器的组间组内并行。 。

目录 1设计概述 (5) 1.1设计任务 (5) 1.2 设计要求 (5) 1.3设计环境 (5) 2总体设计方案 (6) 3仿真测试 (9) 4设计个人总结 (10) 参考文献: (10)

1设计概述 1.1设计任务 1、掌握MaxPlus2软件的使用方法。 2、熟悉74系列芯片的组成和工作过程。 3、掌握半加器,一位全加器的设计原理,掌握超前进位产生电路的设计方法。 4、正确将电路原理图下载到试验箱中。 5、正确通过实验箱连线实现一位二进制数的相加并得到正确结果。 6、完成设计实验报告。 7、完成课程设计答辩。 1.2 设计要求 1、巩固和运用所学课程,理论联系实际,提高分析、解决计算机技术实际问题的独立工作能力。 2、学会使用MAX-PLUSⅡ软件设计电路原理图及功能模拟 3、熟悉常用的门电路 1.3设计环境 MaxPlus2

电工课程设计 加法计数器

电子技术 课程设计 院系:汽车学院 班级:汽车运用工程 学号:2202070332 指导老师:李民 姓名:文雨佳

四位二进制加法器 一技术要求: (1)四位二进制加数与被加数输入 (2)二位数码管显示 二摘要: 此设计的是简单的四位二进制加法器,在计算机中,其加、减、乘、除运算都是分解成加法运算进行的。此次设计选择超前进位二进制并行加法器T693,在译码器上选择五输入八输出的译码器,要用二位数码管显示,需要采用七段显示译码器。本次设计采用的是共阴极数码管所以选择74ls248(74ls48)译码器三总体设计方案论证与选择: 设计四位二进制加法器,可以选择串行二进制并行加法器,但为了提高加法器的运算速度,所以应尽量减少或除去由于进位信号逐级传递所花费的时间,使各位的进位直接由加数和被加数来决定,而无须依赖低位进位,因而我们选择超前进位二进制并行加法器。 加法器选择:超前进位二进制并行加法器 设一个n位的加法器的第i位输入为ai、bi、ci,输出si和ci+1,其中ci是低位来的进位,ci+1(i=n-1,n-2,…,1,0)是向高位

的进位,c0是整个加法器的进位输入,而cn是整个加法器的进位输出。则和si=ai i i+ ibi i+ i ici+aibici (1) 进位ci+1=aibi+aici+bici (2) 令gi=aibi,(3) pi=ai+bi, (4) 则ci+1= gi+pici (5) 只要aibi=1,就会产生向i+1位的进位,称g为进位产生函数;同样,只要ai+bi=1,就会把ci传递到i+1位,所以称p为进位传递函数。把(5)式展开,得到 ci+1= gi+ pigi-1+pipi-1gi-2+…+ pipi-1…p1g0+ pipi-1…p0c0 (6) 随着位数的增加(6)式会加长,但总保持三个逻辑级的深度,因此形成进位的延迟是与位数无关的常数。一旦进位(c1~cn-1)算出以后,和也就可由(1)式得出。 使用上述公式来并行产生所有进位的加法器就是超前进位加法器。产生gi和pi需要一级门延迟,ci 需要两级,si需要两级,总共需要五级门延迟。与串联加法器(一般要2n级门延迟)相比,(特别是n比较大的时候)超前进位加法器的延迟时间大大缩短了。 四设计方案的原理框图、总体电路图、接线图及说明

相关主题
文本预览
相关文档 最新文档