1位全加器原理图输入设计

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

附表1:

广州大学学生实验报告

开课学院及实验室:物理与电子工程学院-电子楼317室2016年 4 月25 日

图1-1连接好原理图并存盘

现在利用已设计好的半加器,完成顶层项目全加器的设计,详细步骤如下:

、打开一个新的原理图编辑窗,然后在本工程目录中找到已包装好的半加器元件h_adder,并将它调入原理图编辑窗中。这时如果对编辑

窗中的半加器元件h_adder双击,即可弹出此元件内部的原理图。

2、完成全加器原理图设计(图1-2),并以文件名f_adder.bdf存在同一目录中。

图1-2 在顶层编辑窗中设计好全加器

3、将当前文件设置成Project,并选择目标器件为CycloneIII系列的EP3C40Q240C8N。

4、编译此顶层文件f_adder.bdf,然后建立波形仿真文件。

5、对应f_adder.bdf的波形仿真文件如图1-3所示,参考图中输入信号cin、bin和ain输入信号电平的设置,启动仿真器Simulator,观察输出波形的情况。

6、锁定引脚、编译并编程下载,硬件实测此全加器的逻辑功能。

三、实验HDL描述:

module add_1bit (ain, bin, cin, sum, cout)

input ain, bin, cin; //cin为上个进位。

output reg sum, cout; //cout为当前的进位,sum为加结果

always@(*)

begin

cout = (ain & bin) | (bin & cin) | (cin & ain);

if (cin)

s = ! (ain^bin);

else

s = (ain^bin);

end

endmodule

四、仿真结果:

半加器波形仿真图

由波形图可以看出,当A和B都为1是,产生进位,此时CO为1,SO为0,只有A或者B为1时,不产生进位,CO为0,SO为1,A和B 都为0时,CO和SO都为0。

1位全加器波形仿真图

1位全加器真值表

输入输出

ain bin cin cout sum

0 0 0 0 0 1 0 1 0

0 1 1

1 0 0 1 0 1

0 1 0

1 1 1 0 0 0 1

0 1

1 0

0 1

1 0 1 0 1 1

与1位全加器逻辑表达式:sum=ain⊕bin⊕cin ; cout=ain ∙ bin+(ain ∙ bin)cin 符合。

六、硬件测试结果:

下载程序到目标机上进行硬件测试

注:键1:ain、键2:bin、键3:cin;LED-D1:cout、LED-D2:sum。(模式5)

项目名称”栏以上部分统一。

相关文档
最新文档