• 演讲稿大全
  • 辩论技巧
  • 演讲口才
  • 口才技巧
  • 口才训练
  • 谈判技巧
  • 朗诵技巧
  • 练声方法
  • 当前位置: 工作范文网 > 口才 > 口才训练 > 正文

    计算机组成原理实验报告八位补码加减法器设计和实现

    时间:2020-10-25 09:24:04 来源:工作范文网 本文已影响 工作范文网手机站

    计算机科学和技术学院

    计算机组成原理

    试验汇报书

    实 验 名 称

    八位补码加/减法器设计和实现

    班 级

    学 号

    姓 名

    指 导 教 师

    日 期

    成 绩

    试验1八位补码加/减法器设计和实现

    一、试验目标

    1.掌握算术逻辑运算单元(ALU)工作原理。

    2.熟悉简单运算器数据传送通路。

    3.掌握8位补码加/减法运算器设计方法。

    4.掌握运算器电路仿真测试方法

    二、试验任务

    1.设计一个8位补码加/减法运算器

    (1)参考图1,在QUARTUS II里输入原理图,设计一个8位补码加/减法运算器。

    (2)创建波形文件,对该8位补码加/减法运算器进行功效仿真测试。

    (3)测试经过后,封装成一个芯片。

    2.设计8位运算器通路电路

    参考下图,利用试验任务1设计8位补码加/减法运算器芯片建立运算器通路。

    3.利用仿真波形,测试数据通路正确性。

    设定各控制信号状态,完成下列操作,要求统计各控制信号值立即序关系。

    (1)在输入数据IN7~IN0上输入数据后,开启输入缓冲三态门,检验总线BUS7~BUS0上值和IN0~IN7端输入数据是否一致。

    (2)给DR1存入55H,检验数据是否存入,请说明检验方法。

    (3)给DR2存入AAH,检验数据是否存入,请说明检验方法。

    (4)完成加法运算,求55H+AAH,检验运算结果是否正确,请说明检验方法。

    (5)完成减法运算,分别求55H-AAH和AAH-55H,检验运算结果是否正确,请说明检验方法。

    (6)求12H+34H-56H,将结果存入寄存器R0,检验运算结果是否正确,同时检验数据是否存入,请说明检验方法。

    三、试验要求

    做好试验预习,掌握运算器数据传送通路和ALU功效特征。

    试验完成,写出试验汇报,内容以下:

    试验目标。

    试验电路图。

    按试验任务3要求,填写下表,以统计各控制信号值立即序关系。表中序号表示各控制信号之间时序关系。要求一个控制任务填一张表,并

    可用文字对相关内容进行说明。

    序号

    nsw-bus

    nR0-BUS

    LDR0

    LDR1

    LDR2

    m

    nalu-bus

    IN7~IN0

    BUS7~BUS0

    = 4 \* GB3 ④仿真波形及仿真结果分析方法、分析过程和分析结果。

    = 5 \* GB3 ⑤试验体会和小结。

    四、试验预习内容

    1.试验电路设计原理及思绪说明

    本试验利用基础逻辑门电路设计一位全加器(FA),如表1:

    表1-一位全加器(FA)电路输入输出信号说明

    信号名称

    说明

    输入信号

    Ai

    加数

    Bi

    加数

    Ci

    低位输入进位

    输出信号

    Si

    Cj

    运算产生进位

    然后以此基础上实现八位补码加/减法器设计,考虑到实现所需既能够实现加法又能够实现减法,所以使用了一个M输入来进行方法控制加减。

    2. 试验电路原理图

    试验参考电路以下图所表示,下图(a)是1位全加器电路原理图,图(b)是由1位全加器采取行波进位方法设计多位补码加/减法运算器。

    图1-多位补码加/减法运算器原理图

    图2-8位运算器通路原理图

    试验电路功效说明

    表2-一位全加器(FA)功效表

    输入

    输出

    Ci

    Bi

    Ai

    Si

    Cj

    0

    0

    0

    0

    0

    0

    0

    1

    1

    0

    0

    1

    0

    1

    0

    0

    1

    1

    0

    1

    1

    0

    0

    1

    0

    1

    0

    1

    0

    1

    1

    1

    0

    0

    1

    1

    1

    1

    1

    1

    表3-M和Bi异或关系原理图

    M

    Bi

    M异或Bi

    0

    0

    0

    0

    1

    1

    1

    0

    1

    1

    1

    0

    当M为0时,Bi和M值无关,当M为1时,Bi取反。也就是当M为0时,实施加法运算,反之进行减法运算。

    FA实现Ai和(Bi异或M)加法运算,再加上Ci输出Si

    表4-图4功效端口解析

    接口

    解析

    输入

    A[7..0]

    8位信号输入(加/被减数)

    B[7..0]

    8位信号输入(加/减数)

    M

    控制信号(0加,1减)

    输出

    S[7..0]

    输出8位计算结果

    OVER

    溢出信号(0不溢出,1溢出)

    表5-图3功效端口解析

    接口

    解析

    输入

    IN[7..0]

    8位信号输入

    nsw-bus

    控制输入信号(0有效,1无效)

    nalu-bus

    控制输入信号(0有效,1无效)

    nR0-BUS

    控制输入信号(0有效,1无效)

    LDR0

    时钟信号,上升沿有效

    LDR1

    时钟信号,上升沿有效

    LDR2

    时钟信号,上升沿有效

    m

    溢出信号(0不溢出,1溢出)

    输出

    BUS[7..0]

    8位信号输出

    注:1.74244bAGN和BGN接口和74374bOEN接口全部是低电平有效,nsw-bus,nalu-bus和nR0-BUS控制器件输入,当输入0时,输入有效,不然无效

    2.74273bCLK接口为上升沿有效,当LDR时钟处于上升沿,即0->1改变时,输入有效

    4. 器件选型

    本试验用到以下基础逻辑器件:异或门,一位加法器FA,7486等

    表6-一位全加器(FA)电路所用关键器件清单

    名称

    说明

    AND2

    二输入和门

    XOR2

    异或门

    OR2

    或门

    INPUT

    信号输入端子

    OUTPUT

    信号输出端子

    表7-8位补码加/减法运算器器件清单

    XOR2

    二输入异或门

    FA

    一位加法器(自选器件)

    INPUT

    信号输入端子

    OUTPUT

    信号输出端子

    表8-8位运算器通路电路

    INPUT

    信号输入端子

    OUTPUT

    信号输出端子

    8位补码加/减法运算器

    计算元件(自选器件)

    74273b

    数据缓存元件

    74244b

    数据缓存元件

    试验方法和试验步骤等

    本试验利用EDA工具软件(Quartus II 2.0或以上版本)完成,试验分为:原理图录入和编辑、仿真波形设计及仿真结果分析这3个步骤。具体为:

    (1)原理图录入和编译

    在EDA工具软件(Quartus II 2.0或以上版本)中,采取原理图录入方法,绘制电路原理图。绘制完成存盘后进行编译。编译经过后,能够进行步骤(2)操作。假如编译不经过,则检验原理图,更正错误后,重新存盘并编译。这一过程反复进行,直至原理图编译经过。

    (2)仿真波形设计

    依据电路功效,设定输入信号初值后,利用EDA工具软件(Quartus II 2.0或以上版本)波形仿真功效,验证电路正确性。依据8位补码加/减法运算器功效要求,选定8组输入信号初值,以下表所表示:

    表9-一位全加器(FA)电路仿真波形输入信号初值

    序号

    Ci

    Bi

    Ai

    1

    0

    0

    0

    2

    0

    0

    1

    3

    0

    1

    0

    4

    0

    1

    1

    5

    1

    0

    0

    6

    1

    0

    1

    7

    1

    1

    0

    8

    1

    1

    1

    表10-8位补码加/减法运算器仿真波形输入信号初值

    序号

    A(十进制)

    B(十进制)

    M(01信号)

    S(二进制)

    溢出

    1

    0

    20

    00

    2

    40

    20

    00

    3

    80

    20

    00

    4

    120

    20

    01

    5

    10

    10

    10

    6

    50

    10

    10

    7

    80

    10

    10

    8

    110

    10

    10

    (3)仿真结果分析

    在EDA工具软件(Quartus II 2.0或以上版本)中,新建仿真波形文件,按表所表示输入信号初值进行设定后,进行仿真。阅读仿真波形,对照电路功效,进行分析并给出结论。

    五、试验电路图

    依据电路原理图,试验时在Quartus II 2.0环境里绘制试验电路以下图所表示。

    图3-一位全加器(FA)

    图4-8位补码加/减法运算器

    图5-8位运算器通路电路

    仿真调试过程、仿真结果分析和仿真测试结论

    在Quartus II 2.0中新建仿真波形文件,以下图6示。

    图6-一位全加器(FA)仿真结果

    分析图所表示仿真波形,可得到下表所表示试验结果。

    表11-一位全加器(FA)电路仿真试验结果

    输入

    输出

    周期

    时间

    Ci

    Bi

    Ai

    Si

    Cj

    1

    0-800ns

    0

    0

    0

    0

    0

    2

    800ns-1.6μs

    0

    0

    1

    1

    0

    3

    1.6μs -2.4μs

    0

    1

    0

    1

    0

    4

    2.4μs -3.2μs

    0

    1

    1

    0

    1

    5

    3.2μs -4.0μs

    1

    0

    0

    1

    0

    6

    4.0μs -4.8μs

    1

    0

    1

    0

    1

    7

    4.8μs -5.6μs

    1

    1

    0

    0

    1

    8

    5.6μs -6.4μs

    1

    1

    1

    1

    1

    将表9和表11相对照,可知一位全加器FA正确。

    在Quartus II 2.0中新建仿真波形文件,以下图7所表示。

    图7-8位补码加/减法运算器仿真结果

    分析图所表示仿真波形,可得到下表所表示试验结果

    表12-八位补码加/减法器电路仿真试验结果

    输入

    输出

    周期

    时间

    A

    B

    M

    S

    OVER

    1

    0~5ns

    0

    20

    00

    2

    5~10ns

    40

    20

    00

    3

    10~15ns

    80

    20

    00

    4

    15~20ns

    120

    20

    01

    5

    20~25ns

    10

    10

    10

    6

    25~30ns

    50

    10

    10

    7

    30~35ns

    80

    10

    10

    8

    35~40ns

    110

    10

    10

    表统计试验结果和上面计算数据中要求值一致。经分析比较可知,此次试验设计电路实现了八位补码加/减法器功效。

    8位运算器通路电路

    (1)首先对建立好通路进行仿真波形图测试,测试结果图8所表示。并检验数据是否一致

    图8-8位运算器通路电路仿真结果

    检验图8,可知输入IN和输出BUS一致,数据一致

    (2)给DR1存入55H,检验数据是否存入,请说明检验方法。

    检验方法:在DR1中存入55H,同时在DR2中存入00H,检测总线输出数即为存入数据,波形图以下图9:

    图9

    表13-时序关系图

    序号

    nsw-

    bus

    nR0-

    bus

    LDR0

    LDR1

    LDR2

    Control

    Nalu-

    Bus

    IN

    [7..0]

    BUS

    [7..0]

    1

    0

    0

    上升沿

    0

    0

    0

    1

    55H

    55H

    2

    1

    0

    0

    上升沿

    0

    0

    1

    00H

    ZZH

    3

    0

    0

    上升沿

    0

    0

    0

    1

    00H

    00H

    4

    1

    0

    0

    0

    上升沿

    0

    1

    55H

    ZZH

    5

    1

    0

    0

    0

    0

    0

    0

    55H

    55H

    (3)给DR2存入AAH,检验数据是否存入,请说明检验方法。

    和检测DR1相同,图10

    图10

    表14-时序关系图

    序号

    nsw-

    bus

    nR0-

    bus

    LDR0

    LDR1

    LDR2

    Control

    Nalu-

    Bus

    IN

    [7..0]

    BUS

    [7..0]

    1

    0

    0

    上升沿

    0

    0

    0

    1

    00H

    00H

    2

    1

    0

    0

    上升沿

    0

    0

    1

    00H

    ZZH

    3

    0

    0

    上升沿

    0

    0

    0

    1

    AAH

    AAH

    4

    1

    0

    0

    0

    上升沿

    0

    1

    AAH

    ZZH

    5

    1

    0

    0

    0

    0

    0

    0

    AAH

    AAH

    (4)完成加法运算,求55H+AAH,检验运算结果是否正确,请说明检验方法。

    波形图以下:

    图11

    表15-时序关系图

    序号

    nsw-

    bus

    nR0-

    bus

    LDR0

    LDR1

    LDR2

    Control

    Nalu-

    Bus

    IN

    [7..0]

    BUS

    [7..0]

    1

    0

    0

    上升沿

    0

    0

    0

    1

    55H

    00H

    2

    1

    0

    0

    上升沿

    0

    0

    1

    00H

    00H

    3

    0

    0

    上升沿

    0

    0

    0

    1

    00H

    00H

    4

    1

    0

    0

    0

    上升沿

    0

    1

    AAH

    00H

    5

    1

    0

    0

    0

    0

    0

    0

    00H

    FFH

    (5)完成减法运算,分别求55H-AAH和AAH-55H,检验运算结果是否正确,请说明检验方法。

    55H-AAH波形图以下:

    表16-时序关系图

    序号

    nsw-

    bus

    nR0-

    bus

    LDR0

    LDR1

    LDR2

    Control

    Nalu-

    Bus

    IN

    [7..0]

    BUS

    [7..0]

    1

    0

    0

    上升沿

    0

    0

    1

    1

    55H

    00H

    2

    1

    0

    0

    上升沿

    0

    1

    1

    00H

    00H

    3

    0

    0

    上升沿

    0

    0

    1

    1

    00H

    00H

    4

    1

    0

    0

    0

    上升沿

    1

    1

    AAH

    00H

    5

    1

    0

    0

    0

    0

    1

    0

    00H

    ABH

    AAH-55H波形图以下:

    表17-时序关系图

    序号

    nsw-

    bus

    nR0-

    bus

    LDR0

    LDR1

    LDR2

    Control

    Nalu-

    Bus

    IN

    [7..0]

    BUS

    [7..0]

    1

    0

    0

    上升沿

    0

    0

    1

    1

    55H

    00H

    2

    1

    0

    0

    上升沿

    0

    1

    1

    00H

    00H

    3

    0

    0

    上升沿

    0

    0

    1

    1

    00H

    00H

    4

    1

    0

    0

    0

    上升沿

    1

    1

    AAH

    00H

    5

    1

    0

    0

    0

    0

    1

    0

    00H

    55H

    (6)求12H+34H-56H,将结果存入寄存器R0,检验运算结果是否正确,同时检验数据是否存入,请说明检验方法。

    ①计算结果:

    12H+34H-56H波形图以下:

    表18-时序关系图

    序号

    nsw-

    bus

    nR0-

    bus

    LDR0

    LDR1

    LDR2

    Control

    Nalu-

    Bus

    IN

    [7..0]

    BUS

    [7..0]

    1

    0

    0

    上升沿

    0

    0

    0

    0

    12H

    12H

    2

    1

    0

    0

    上升沿

    0

    0

    0

    00H

    ZZH

    3

    0

    0

    上升沿

    0

    0

    0

    0

    34H

    34H

    4

    1

    0

    0

    0

    上升沿

    0

    0

    00H

    ZZH

    5

    1

    0

    上升沿

    0

    0

    0

    0

    00H

    46H

    6

    1

    0

    0

    0

    上升沿

    0

    1

    00H

    ZZH

    7

    0

    0

    上升沿

    0

    0

    0

    1

    56H

    56H

    8

    1

    0

    0

    上升沿

    0

    0

    1

    00H

    ZZH

    9

    1

    0

    0

    0

    0

    0

    1

    00H

    F0H

    试验体会和小结

    经过这次运算器计算机组成原理试验,我对QUARTUS2软件使用愈加得心应手,学会在这之上用门电路搭建和组合原理图并实现封装调用等等。在试验中,我碰到很多问题,比如,在绘制电路图后,因为工程文件存放地址错误,造成编译失败之类问题。而且,我一开始没有使用总线输入,造成输入有19个端,大大加重了工作量。除此之外,我学会了把缓存器,寄存器,ALU合理串接成为8位运算器通路。在这之中,时序波形设计对我来说有一定难度,每个时钟周期里,各个部件工作状态全部不相同,必需仔细分析每个部件状态才能熟练设计。最终,在老师教导下,我最终完成了此次试验。

    经过此次试验,我对计算机组成原理这门课有了愈加深刻了解。

    有关的专题