4位全加器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设计过程如下:
1.构建一个全加器
全加器的真值表和逻辑表达式如下:
表一全加器真值表
逻辑表达式为:S=A⊕B⊕c , C=AB+(A⊕B)c
(1)选逻辑门。双击Logic and Bit Operations。将Logical Operator模块拖到工作窗口中。双击模块打开Block Parameters窗口,将Main标签中的Operator选项改为XOR或OR,再拖入一个AND门。
(2)选输入信号。选用Pulse Generator。打开Sources面板,拖入三个Pulse Generator 并放置在窗口的左侧。这三个Pulse Generator作为加法器真值表的三个输入。双击第一个并将它的周期(period)设定为8秒,相位延迟(phase delay)设定为4秒,Pluse Width设置为50并Pulse Generator重命名为A input,。双击第二个,将周期设定为4秒,相位设定为2秒,Pluse Width设置为50,重命名为B input,。双击第三个,将周期设定为2秒,相位设定为1秒,Pluse Width设置为50,重命名为C input。
(3)输入输出的观测。用Commonly Used Blocks 中的Scope(示波器)模块。输入分别为A、B、C输出为S、C
(4)选好之后,进行连线,连线结果如下
图1 全加器逻辑图
(5)执行运行用示波器分别观察A、B、C 、S、C如下:A:
B:
C:
S:
C:
经过比较,各波形与全加器真值表中数值相符合,因此,创建全加器模块。
2. 创建全加器模块
选中要创建子系统的模块,选择Edit\CreateSubsystem 菜单,创建全加器模块,命名为Full_Adder,结果如下图
图2 全加器模块
3.构建一个4位加法器
复制为四个全加器,并在Commonly Used Blocks中拖动3个In、2个Out、2个Demux、1个Mux,并连接成四位全加器,如下图所示:
图3 4位全加器
经赋值检验连接正确,保存命名为Full Adder_4。