为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

实验(2) 加法器(半加器和全加器)

2019-02-25 10页 doc 57KB 77阅读

用户头像

is_648706

暂无简介

举报
实验(2) 加法器(半加器和全加器) 本科学生实验报告 学号    114090316      姓名    李魁      学院    物电学院    专业、班级 11应电班  实验课程名称    电子设计自动化(EDA实验)  教师及职称      罗永道  副教授            开课学期  2013    至  2014    学年  下  学期 填报时间  2014  年   5    月    6    日 云南师范大学教务处编印 实验序号 2 实验名称 加法器 实验时间 2014年5月6日 实验室 同析楼1...
实验(2) 加法器(半加器和全加器)
本科学生实验 学号    114090316      姓名    李魁      学院    物电学院    专业、班级 11应电班  实验课程名称    电子设计自动化(EDA实验)  教师及职称      罗永道  副教授            开课学期  2013    至  2014    学年  下  学期 填报时间  2014  年   5    月    6    日 云南师范大学教务处编印 实验序号 2 实验名称 加法器 实验时间 2014年5月6日 实验室 同析楼114 一.实验预习 1.实验目的: (1) 掌握半加器和全加器的工作原理; (2) 掌握VHDL编程语言的使用; (3) 熟悉Quartus II软件的使用。 (1) 半加器 半加器(设此模块的器件名称是h_adder)的电路原理图如图1所示,半加器对应的逻辑真值表如图2所示。此电路模块由两个基本逻辑门元件构成,即与门和异或门。图中的a和b是是加数和被加数的数据输入端口;so是和值的数据输出端口;co则是进位数据的输出端口。根据图1的电路结构,很容易获得半加器的逻辑表述是 ; 图1 半加器的电路结构 a b so co 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1         图2 半加器的真值表 (2)全加器 全加器可以由两个半加器和一个或门连接而成,其经典的电路结构如图3所示。此图右侧是全加器的实体模块,它显示了全加器的端口情况。看来,设计全加器之前,必须首先设计好半加器和或门电路,把它们作为全加器的元件,再按照全加器的电路结构连接起来。最后获得的全加器电路可称为顶层设计。全加器所对应的真值表如图4所示。 图3 全加器的电路结构 a b ci so co 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           图4 全加器的真值表 2.实验设备及材料 电脑一台,QuartusII 实验平台 3.实验方法步骤及注意事项 实验方法步骤: (1)打开计算机; (2)打开Quartur II软件,编写和调试实验代码,然后进行试验仿真。 注意事项: 实验过程中认真分析实验原理编写代码,防止本、书包等物品与实验设备接触,以免造成不必要的麻烦。           二.实验内容 1.实验现象与结果 (1) 半加器实验代码为: 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)半加器编译报告为: (3)半加器仿真波形如下所示: (4)半加器RTL图为: (5)半加器符号图为: (6)全加器实验VHDL代码为: LIBRARY ieee; USE ieee.std_logic_1164.all; LIBRARY work; ENTITY f_adder IS port ( ain : IN STD_LOGIC; bin : IN STD_LOGIC; cin : IN STD_LOGIC; sun : OUT STD_LOGIC; cout : OUT STD_LOGIC ); END f_adder; ARCHITECTURE bdf_type OF f_adder IS component h_adder PORT(a : IN STD_LOGIC; b : IN STD_LOGIC; co : OUT STD_LOGIC; so : OUT STD_LOGIC ); end component; signal SYNTHESIZED_WIRE_0 : STD_LOGIC; signal SYNTHESIZED_WIRE_1 : STD_LOGIC; signal SYNTHESIZED_WIRE_2 : STD_LOGIC; BEGIN b2v_inst : h_adder PORT MAP(a => ain, b => bin, co => SYNTHESIZED_WIRE_2, so => SYNTHESIZED_WIRE_0); b2v_inst1 : h_adder PORT MAP(a => SYNTHESIZED_WIRE_0, b => cin, co => SYNTHESIZED_WIRE_1, so => sun); cout <= SYNTHESIZED_WIRE_1 OR SYNTHESIZED_WIRE_2; END; (7)全加器编译报告为: (8)全加器其仿真波形如下所示: (9)全加器RTL图为: (10)全加器符号图为: 2.对实验现象、实验结果的分析及其结论 1.创建VWF文件 2.设定“End Time”为20us 3.在VWF文件中添加Node OR Bus 4.编辑波形 5.仿真 6.画出仿真结果 由波形仿真图可以看出,用原理图输入的方法仿真电路图,时序仿真存在延时和毛刺现象,更加接近真实电路,而功能仿真不存在这些现象。 至此一位全加器的设计和仿真就此完成。 1.为什么在实验步骤3中,将半加器保存为half_adder,可否保存为full_adder? 答:不能保存为full_adder,因为VHDL语言中,要求程序名与实体名一致,否则会出现错误;而且这个程序是生成半加器模块的程序,统一命名对模块理解也容易得多。 教师评语及评分: 签名: 年 月 日    
/
本文档为【实验(2) 加法器(半加器和全加器)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索