《第四讲运算器设计及举例精选文档.ppt》由会员分享,可在线阅读,更多相关《第四讲运算器设计及举例精选文档.ppt(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第四讲运算器设计及举例1本讲稿第一页,共四十页运算器基本功能完成算术、逻辑运算+、。取得操作数寄存器组、立即数输出、存放运算结果寄存器组、数据总线暂存运算的中间结果Q寄存器、移位寄存器2本讲稿第二页,共四十页运算器基本功能获得运算结果的状态C、Z、V、S理解、响应控制信号3本讲稿第三页,共四十页全加器电路Sum=(A*B*CarryIn)+(A*B*CarryIn)+(A*B*CarryIn)+(A*B*CarryIn)CarryOut=(A*B*CarryIn)+(A*B*CarryIn)+(A*B*CarryIn)+(A*B*CarryIn)=(B*CarryIn)+(A*CarryIn)
2、+(A*B)4本讲稿第四页,共四十页补码减法根据算术运算规则:a-b=a+(-b)-b的补码为:将b的各位求反,并加1。我们可以用加法器实现减法。加法器5本讲稿第五页,共四十页32-位被乘数寄存器,32-位ALU,64-位部分积寄存器 (0-位乘数寄存器)Product(Multiplier)Multiplicand32-bit ALUWriteControl32 bits64 bitsShift Right原码乘法的实现(三)6本讲稿第六页,共四十页32-位除数寄存器,32-位ALU,64-位余数(被除数)寄存器除数除数32-bit ALUWriteControl32 bits64 bits
3、左移左移除法的实现余数余数7本讲稿第七页,共四十页运算器实现ALU完成算术、逻辑运算。寄存器组存放数据和结果辅助寄存器完成中间结果的存放选通门等控制数据通行需要哪些控制信号?ALU8本讲稿第八页,共四十页F X实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路Fs F ALU 目的目的 寄存器寄存器源源 寄存器寄存器 选通门选通门二选通门二选通门选通门选通门F 1XYF YX F010 1F /YFsOVRZC累加器累加器X X+YX X-Y加加减减需要的控制信号:功能选择9本讲稿第九页,共四十页F X实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路Fs ALU 目的目的 寄存器寄存器源
4、源 寄存器寄存器 选通门选通门选通门选通门选通门选通门F 1XYF YX F010 1F /YFsOVRZC必要完善必要完善:单累加器变多累积器单累加器变多累积器:两个选通门均变为多路两个选通门均变为多路送操作数到送操作数到ALU处理处理接收门送指定累加器。接收门送指定累加器。支持寄存器移位功能支持寄存器移位功能:接收门变为三选一,即接收门变为三选一,即分别接收本位分别接收本位/低位低位/高高位送来的信息送累加器位送来的信息送累加器与外部部件的入出联系与外部部件的入出联系10本讲稿第十页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组选选 通通 门
5、门选选 通通 门门选选 通通 门门F 1FsOVRZC 必要完善必要完善:单累加器变多累积器单累加器变多累积器:11本讲稿第十一页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组选选 通通 门门选选 通通 门门选选 通通 门门F 1FsOVRZC必要完善必要完善:单累加器变多累积器:单累加器变多累积器:两个选通门均变为多路两个选通门均变为多路送操作数到送操作数到ALU处理处理接收门送指定累加器。接收门送指定累加器。增加的控制信号:操作数来源12本讲稿第十二页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器
6、组选选 通通 门门选选 通通 门门选选 通通 门门F 1FsOVRZC 必要完善必要完善:单累加器变多累积器:单累加器变多累积器:两个选通门均变为多路两个选通门均变为多路送送0还是送还是送1到到ALU处理处理接收门送每个累加器。接收门送每个累加器。支持寄存器移位功能支持寄存器移位功能:接收门变为三选一,即接收门变为三选一,即分别接收本位分别接收本位/低位低位/高高位送来的信息送累加器位送来的信息送累加器增加的控制信号:结果处理13本讲稿第十三页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组选选 通通 门门选选 通通 门门选选 通通 门门F 1Fs
7、OVRZC 必要完善必要完善:单累加器变多累积器:单累加器变多累积器:两个选通门均变为多路两个选通门均变为多路送送0还是送还是送1到到ALU处理处理接收门送每个累加器。接收门送每个累加器。支持寄存器移位功能:支持寄存器移位功能:接收门变为三选一,即接收门变为三选一,即分别接收本位分别接收本位/低位低位/高高位送来的信息送累加器位送来的信息送累加器与外部部件的入出联系与外部部件的入出联系输出输出输入输入14本讲稿第十四页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组选选 通通 门门选选 通通 门门选选 通通 门门F 1FsOVRZC 必要完善必要完
8、善:单累加器变多累积器单累加器变多累积器:两个选通门均变为多路两个选通门均变为多路送送0还是送还是送1到到ALU处理处理接收门送每个累加器。接收门送每个累加器。支持寄存器移位功能支持寄存器移位功能:接收门变为三选一,即接收门变为三选一,即分别接收本位分别接收本位/低位低位/高高位送来的信息送累加器位送来的信息送累加器与外部部件的入出联系与外部部件的入出联系输出输出输入输入15本讲稿第十五页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组 乘商寄存器乘商寄存器 选选 通通 门门选选 通通 门门选选 通通 门门F 1YFsOVRZC可选择的完善可选择的
9、完善:支持硬件乘除运算指令支持硬件乘除运算指令需要增加一个需要增加一个Q寄存器寄存器该寄存器应能自行移位该寄存器应能自行移位选选 通通 门门送入送入输出输出16本讲稿第十六页,共四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组 乘商寄存器乘商寄存器 选选 通通 门门选选 通通 门门选选 通通 门门F 1YFsOVRZC可选择的完善可选择的完善:支持硬件乘除运算指令支持硬件乘除运算指令需要增加一个需要增加一个Q寄存器寄存器该寄存器应能自行移位该寄存器应能自行移位它应能接收与送出数据它应能接收与送出数据选选 通通 门门送入送入输出输出17本讲稿第十七页,共
10、四十页实现补码加减运算的逻辑电路实现补码加减运算的逻辑电路ALU 通用寄存器组通用寄存器组 乘商寄存器乘商寄存器 选选 通通 门门选选 通通 门门选选 通通 门门F 1YFsOVRZC选择完善选择完善:支持硬件乘除运算指令支持硬件乘除运算指令需要增加一个需要增加一个Q寄存器寄存器该寄存器应能自行移位该寄存器应能自行移位应能接收与送出数据。应能接收与送出数据。选选 通通 门门送入送入输出输出18本讲稿第十八页,共四十页二选一二选一ALU二选一二选一三选一三选一R0R1R三选一三选一Q三选一三选一nCyF=0000OVRF15Y15Y0D15D0Cin数据输出数据输出数据输入数据输入乘商乘商通用寄
11、存器通用寄存器定定点点运运算算器器部部件件实实例例OEABAm2901状态输出状态输出A口口地址地址B口口地址地址RAM15RAM0Q15Q0RS控制信号控制信号I2 I1 I0I5 I4 I3I8 I7 I6选选数数据据源源选选操操作作功功能能选选结结果果安安排排19本讲稿第十九页,共四十页运算器的控制与操作运算器的控制与操作ALU支持多种算数与逻辑运算功能支持多种算数与逻辑运算功能需要提供运算功能选择信号需要提供运算功能选择信号寄存器组含多个累加器寄存器组含多个累加器需要提供两组选择累加器编号的信号需要提供两组选择累加器编号的信号有多种不同方案组合数据送有多种不同方案组合数据送ALU的使用
12、要求的使用要求需要提供选择数据组合的信号需要提供选择数据组合的信号运算器内寄存器有多种接收数据的不同方案运算器内寄存器有多种接收数据的不同方案需提供那个寄存器接收,按什么办法接收的控制信号需提供那个寄存器接收,按什么办法接收的控制信号累加器与乘商寄存器的移位关系累加器与乘商寄存器的移位关系寄存器最高位与最低位的移入信号需用另外线路提供寄存器最高位与最低位的移入信号需用另外线路提供20本讲稿第二十页,共四十页入出信号及引脚入出信号及引脚Y15Y0D15D0RAM15Q15RAM0Q0CPOECinCyF=0OverF15运运 算算 器器 部部 件件A3A0B3B0I8I6 I5I3 I2I021
13、本讲稿第二十一页,共四十页入出信号及引脚入出信号及引脚Y15Y0(指示灯显示)(指示灯显示)D15D0(开关拨数)(开关拨数)RAM15Q15RAM0Q0CPOE(已接地已接地)CinCyF=0OverF15运运 算算 器器 部部 件件4片片2901,1片片2902A3A0B3B0I8I6 I5I3 I2I0一片一片GAL一片一片GAL2个个12位的微型开关位的微型开关SCiSSTSSH22本讲稿第二十二页,共四十页Am2901的控制信号的控制信号 编码 I8 I7 I6 I5 I4 I3 I2 I1 I0 000 Q F F R+S A Q 001 F S-R A B 010 B F A R
14、-S 0 Q 011 B F F R S 0 B 100 B F/2 Q Q/2 F R S 0 A 101 B F/2 F R S D A 110 B 2F Q 2Q F R S D Q 111 B 2F F R S D 0B Q YR S23本讲稿第二十三页,共四十页运算器用的运算器用的GAL20V8的控制信号的控制信号 GAL1:状态寄存器:状态寄存器 GAL3:进位入、移位入:进位入、移位入 SST C Z V S SCi 运算运算 Cn 运算运算 Cn 000 C Z V S 00 加加 0 减减 1 001 Cy ZROV F15 01 加加 1 减减 0 010 内部总线的一位内
15、部总线的一位 10 加加 C 减减 /C 011 1 Z V S 11 方波方波 方波方波 100 0 Z V S SSH 左移位左移位 右移位右移位 101 RAM0 Z V S 00 0 X 0 X 110 RAM15 Z V S 01 C X C X 111 Q0 Z V S 10 Q15 /F15 Cy RAM0 RAM0 Q0 RAM15 Q15本讲稿第二十四页,共四十页控制器提供的控制信号控制器提供的控制信号 B55 B48 下地址下地址 B47 B40 B39 B32 备用备用 CI3CI0 SCC SC 备备 SST B31 B24 B23 B16 MIO I8I6 REQ I
16、5I3 WE I2I0 A口口 B15 B8 B7 B0 B口口 SCi SSH SA DC1 SB DC225本讲稿第二十五页,共四十页教学计算机的运算器概述教学计算机的运算器概述教学计算机的运算器的组成与设计教学计算机的运算器的组成与设计字长字长16(8)位,用位,用4(2)片片4位的位片结构的位的位片结构的Am2901组成组成1.要详细介绍要详细介绍Am2901芯片的内部组成和实现的功能芯片的内部组成和实现的功能2.怎样连接怎样连接4(2)片片Am2901成为成为16(8)位的运算器位的运算器3.怎样解决运算器实用中的几个问题:怎样解决运算器实用中的几个问题:(1)如何给出如何给出 Am
17、2901最低位的进位输入信号最低位的进位输入信号(2)如何处理运算结果的标志位如何处理运算结果的标志位(3)如何处理移位指令、置如何处理移位指令、置1 C和清和清0 C 触发器的触发器的指令指令(4)如何支持硬件乘法、除法指令如何支持硬件乘法、除法指令重点是前重点是前 2 项内容和第项内容和第 3 项中的项中的(1)(2)教学计算机运算器的控制和使用(包括教学实验)教学计算机运算器的控制和使用(包括教学实验)26本讲稿第二十六页,共四十页二选一二选一 B 16个个 A 通用寄存器通用寄存器三选一三选一二选一二选一三选一三选一三选一三选一 A L U S RB锁存器锁存器A锁存器锁存器乘商寄存器
18、乘商寄存器QCn/OEQ3Q0RAM0RAM3F输出输出YF3F=0000OVRCn+4输入输入DA口地址口地址B口地址口地址4 位的位的 Am2901内部组成与功能内部组成与功能组成组成算逻运算算逻运算 部件部件1 6 个个 累加器累加器乘商寄存器乘商寄存器 Q5组多路选择门组多路选择门功能功能 8 种种 运算功能运算功能8 种种 数据组合数据组合8 种种 结果处理结果处理27本讲稿第二十七页,共四十页 A L U S RCnFF3F=0000OVRCn+4 Am2901芯片是一芯片是一个个 4 位的位片结构的位的位片结构的运算器器件运算器器件,内部组成内部组成讲解如下讲解如下 第一个组成部
19、分是第一个组成部分是算算逻运算部件逻运算部件ALU,完,完成成 3 种算术运算种算术运算 和和 5 种逻辑运算种逻辑运算 ,共,共 8 种运算功能种运算功能其输出为其输出为 F,两路两路输入为输入为 S、R,最低位,最低位进位进位Cn,4 个状态个状态输出信号输出信号,如图所示如图所示符号位符号位结果为零结果为零结果溢出结果溢出进位输出进位输出R+SS RR SRSRSRSR SR S8种运算功能种运算功能0000010100111001011101113位功能选择码位功能选择码28本讲稿第二十八页,共四十页 B 16个个 A 通用寄存器通用寄存器 A L U S RB锁存器锁存器A锁存器锁存
20、器CnFF3F=0000OVRCn+4A口地址口地址B口地址口地址第二个组成部分第二个组成部分是通用寄存器组是通用寄存器组由由16个寄存器构个寄存器构成,并通过成,并通过B口口与与A口地址选择口地址选择被读的寄存器,被读的寄存器,B口地址还用于口地址还用于指定写入寄存器指定写入寄存器通过通过B口地址、口地址、A口地址读出的口地址读出的数据将送到数据将送到B、A锁存器,要写锁存器,要写入寄存器的数据入寄存器的数据由一个多路选择由一个多路选择器送来。器送来。(写入)(写入)29本讲稿第二十九页,共四十页 B 16个个 A 通用寄存器通用寄存器 A L U S RB锁存器锁存器A锁存器锁存器Q寄存器
21、寄存器CnFF3F=0000OVRCn+4A口地址口地址B口地址口地址第三个组成部分第三个组成部分是乘商寄存器是乘商寄存器Q它能对自己的内它能对自己的内容完成左右移位容完成左右移位功能,其输出可功能,其输出可以送往以送往ALU,并,并可接收可接收ALU的输的输出结果。出结果。30本讲稿第三十页,共四十页该芯片的第四个该芯片的第四个组成部分是组成部分是 5 组组多路选通门多路选通门,包括包括 B 16个个 A 通用寄存器通用寄存器三选一三选一二选一二选一 A L U S RB锁存器锁存器A锁存器锁存器Q寄存器寄存器CnFF3F=0000OVRCn+4输入输入DA口地址口地址B口地址口地址一组三选
22、一门和一组三选一门和另一组二选一门另一组二选一门用来选择送向用来选择送向ALU的的 R、S输入输入端的数据来源,端的数据来源,包括:包括:Q寄存器、寄存器、A口、口、B口数据、口数据、外部输入外部输入D数据数据共共 8 种不同组合。种不同组合。31本讲稿第三十一页,共四十页 B 16个个 A 通用寄存器通用寄存器三选一三选一二选一二选一 A L U S RB锁存器锁存器A锁存器锁存器Q寄存器寄存器CnFF3F=0000OVRCn+4输入输入DA口地址口地址B口地址口地址8种数据组合种数据组合(R,S)AQ AB 0Q 0B 0A DA DQ D0 3位数据选择码位数据选择码000 001 01
23、0 011 100 101 110 111一组三选一门和一组三选一门和另一组二选一门另一组二选一门用来选择送向用来选择送向ALU的的 R、S输入输入端的数据来源,端的数据来源,包括:包括:Q寄存器、寄存器、A口、口、B口数据、口数据、外部输入外部输入D数据数据共共 8 种不同组合。种不同组合。32本讲稿第三十二页,共四十页 B 16个个 A 通用寄存器通用寄存器三选一三选一二选一二选一三选一三选一三选一三选一 A L U S RB锁存器锁存器A锁存器锁存器Q寄存器寄存器CnQ3Q0RAM0RAM3FF3F=0000OVRCn+4输入输入DA口地址口地址B口地址口地址一组三选一门一组三选一门完成
24、把完成把ALU的的输出、或左移输出、或左移一位、或右移一位、或右移一位的值送往一位的值送往通用寄存器组通用寄存器组,最高、最低,最高、最低位移位信号有位移位信号有双向入双向入/出问题出问题一组三选一门一组三选一门完成完成Q寄存器寄存器的左移一位、的左移一位、或右移一位、或右移一位、或接收或接收ALU输输出值的功能,出值的功能,最高、最低位最高、最低位移位信号有双移位信号有双向入向入/出问题。出问题。33本讲稿第三十三页,共四十页二选一二选一 B 16个个 A 通用寄存器通用寄存器三选一三选一二选一二选一三选一三选一三选一三选一 A L U S RB锁存器锁存器A锁存器锁存器Q寄存器寄存器Cn/
25、OEQ3Q0RAM0RAM3F输出输出YF3F=0000OVRCn+4输入输入DA口地址口地址B口地址口地址一组二选一门,一组二选一门,选择把选择把ALU结果或结果或A口数据口数据 送出送出芯片,给出输出芯片,给出输出Y的数据,的数据,Y输出的输出的有无还受使能有无还受使能 信号信号控制,仅当控制,仅当/OE为为低才有低才有 Y输出输出,/OE为高为高 Y输出为输出为 高阻态高阻态34本讲稿第三十四页,共四十页8 种结果处理种结果处理 3位控制码位控制码 通用寄存器通用寄存器 Q寄存器寄存器 Y输出输出 000 QF F 001 F 010 BF A 011 BF F 100 BF/2 QF/
26、2 F 101 BF/2 F 110 B2F Q2F F 111 B2F F35本讲稿第三十五页,共四十页 B 16个个 A 通用寄存器通用寄存器B锁存器锁存器A锁存器锁存器A口地址口地址B口地址口地址二选一二选一三选一三选一二选一二选一三选一三选一三选一三选一Q3Q0RAM0RAM3 A L U S RCnFF3F=0000OVRCn+4运算器,三大件运算器,三大件运算暂存乘除快运算暂存乘除快多路选通连起来多路选通连起来数据组合选择数据组合选择 I2 I1 I0运算功能选择运算功能选择 I5 I4 I3运算结果处理运算结果处理 I8 I7 I6运算运算暂存暂存乘除快乘除快数据组合有内外数据组
27、合有内外运算功能指明白运算功能指明白存移输出巧安排存移输出巧安排多路选通连起来多路选通连起来存存移输出巧安排移输出巧安排存存移移输出巧安排输出巧安排存移存移输出输出巧安排巧安排Q寄存器寄存器输入输入D/OE输出输出Y36本讲稿第三十六页,共四十页二选一二选一 B 16个个 A 通用寄存器通用寄存器三选一三选一二选一二选一三选一三选一三选一三选一 A L U S RB锁存器锁存器A锁存器锁存器乘商寄存器乘商寄存器QCn/OEQ3Q0RAM0RAM3F输出输出YF3F=0000OVRCn+4输入输入DA口地址口地址B口地址口地址Am2901内部组成内部组成组成组成算逻运算算逻运算 部件部件1 6
28、个个 累加器累加器乘商寄存器乘商寄存器 Q5组多路选择门组多路选择门功能功能8 种种 运算功能运算功能8 种种 数据组合数据组合8 种种 结果处理结果处理I5I3I2I0I8I637本讲稿第三十七页,共四十页运算器的时钟脉冲信号运算器的时钟脉冲信号 运算器的时钟脉冲信号运算器的时钟脉冲信号 CP 教学计算机的主频教学计算机的主频:1.8432MH z/3A、B口锁存口锁存通用寄存器接受通用寄存器接受Q 接受接受周期周期和和低低电电平平的的作作用用 注注意意两两个个跳跳变变沿沿38本讲稿第三十八页,共四十页Am2901的操作使用的操作使用操作功能操作功能控制信号控制信号B口口 A口口 I8 I7 I6 I5 I4 I3 I2 I1 I0 CnR0R0+R1R2R2 R0QR0 右移右移R0R0+R1R0R0R1Y A口口Y F00000110001000001000100000010001001100001010001000001000000000001000/0000000001000011000010R0R0R1Y F00000110001100001039本讲稿第三十九页,共四十页作业阅读:教材第2章思考:运算器是如何完成算术运算的?思考:运算器设计中应考虑哪些主要问题?书面作业:教材P131 第11、13、14、15题。40本讲稿第四十页,共四十页