近似加法器.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
近似加法器

电子科技大学 UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA 课程设计报告 课程设计 近似加法器 学 号 2014020905009 作者姓名 宁博宇 指导教师 陈学英 胡剑浩 摘要 算术运算是数字系统的基本功能,更是计算机中不可缺少的组成单元。本次报告介绍加法运算的逻辑电路。半加器,全加器,近似加法器,已经他们的组合构成的串行进位加法器. 关键词:8bit加法器 行波进位加法器 近似加法器 绪论 课程设计背景 串行进位加法器。每一位的相加结果都必须等到低一位的进位产生以后才能建立起来,因此将这种结构的电路称为串行进位加法器(或称为行波进位加法器)。其最大的特点是运算速度慢。Matlab综合设计图 1、总体设计 总体设计的设计图如下: 如图所示, 如图所示, 1、2产生二个高斯随机数,4、5、6、7将高斯随机数的输出转换为bits的格式,其中7和8是两个不同的加法器。两个加法器都采用3个近似加法器和5个全加器进行8 bit 近似加法器的设计。其中7是不带纠错电路的加法器,而8是带有纠错电路的加法器,它们对相同信号进行处理得到不同的结果。9和10是将二进制的输出转换成为十进制。11和12得到输出。 加法器7的设计图如下 左边3个是近似加法器,右边5个是全加器。 加法器8的设计图如下 上面多了四个纠错电路,是对三个近似加法器的结果进行修正。 其中采用的 近似加法器 为: 其中全加器的实现如下: 纠错电路: Matlab仿真结果求信噪比程序: sum0=0; for i =1:10000 sum0=sum0+(simout0(i)-128)^2; end sum=0; for i =1:10000 sum=sum+(simout(i)-128)^2; end d0=sum0/10000; x0=20*log(128/9)/log(10)-20*log(128/d0)/log(10); d=sum/10000; x=20*log(128/9)/log(10)-20*log(128/d)/log(10); 其中x0得到的是通过不含纠错电路的加法器7计算得到的信噪比,x是得到的是通过含纠错电路的加法器8计算得到的信噪比。 输出结果: 由于近似加法器是为了提升速度对二进制信号做加法时的进位进行近似处理为求得速度的提升,所以其会有计算的偏差,这就是信噪比相对较大的原因。 纠错后效果变差,信噪比变高,分析原因可能是论文中的纠错电路是针对均匀分布的信号,而实验中是高斯分布的信号。 VHDL仿真 总时延是11ns(含纠错电路),效果达到要求。 Summary如下: Vhdl程序: library IEEE; use IEEE.STD_LOGIC_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all; entity app_adders is port( A,B : in std_logic_vector(7 downto 0); S : out std_logic_vector(7 downto 0)); end app_adders; architecture Behavioral of app_adders is signal cout: STD_LOGIC_VECTOR(0 to 7); COMPONENT app PORT( a : IN std_logic; b : IN std_logic; cin : IN std_logic; cout : OUT std_logic; s : OUT std_logic ); END COMPONENT; COMPONENT full PORT( a : IN std_logic;

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档