并行乘法器-南京理工大学紫金学院vhdl实验报告-eda.doc

并行乘法器-南京理工大学紫金学院vhdl实验报告-eda.doc

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

EDA技术与应用

实验报告

实验名称:

并行乘法器

姓名:

学号:

班级:

通信

时间:

2013

南京理工大学紫金学院电光系

实验目的

1、学习包集和元件例化语句的使用。

2、学习FLU(全加器单元)电路的设计。

3、学习并行乘法电路的设计。

实验原理

并行乘法器的电路原理图如下图所示,主要由全加器和与门构成。

并行乘法器原理图

实验内容

and_2

libraryieee;

useieee.std_logic_1164.all;

entityand_2is

port(a,b:instd_logic;

y:outstd_logic);

endand_2;

architectureand_2ofand_2is

begin

y=aandb;

endand_2;

componentlower_rowis

port(sin,cin:instd_logic_vector(2downto0);

p:outstd_logic_vector(3downto0));

endcomponent;

endmy_components;

multiplier

libraryieee;

useieee.std_logic_1164.all;

usework.my_components.all;

entitymultiplieris

port(a,b:instd_logic_vector(3downto0);

prod:outstd_logic_vector(7downto0));

endmultiplier;

architecturestructuralofmultiplieris

typematrixisarray(0to3)of

std_logic_vector(2downto0);

signals,c:matrix;

begin

U1:componenttop_rowportmap(a(0),b,s(0),c(0),

prod(0));

U2:componentmid_rowportmap(a(1),b,s(0),c(0),s(1),

c(1),prod(1));

U3:componentmid_rowportmap(a(2),b,s(1),c(1),s(2),

c(2),prod(2));

U4:componentmid_rowportmap(a(3),b,s(2),c(2),s(3),

c(3),prod(3));

U5:componentlower_rowportmap(s(3),c(3),

prod(7downto4));

endstructural;

8、仿真

9、把multiplier代码改为百位、十位、个位输出代码如下:

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

usework.my_components.all;

entitymultiplieris

port(a,b:instd_logic_vector(3downto0);

hun,ten,one:outstd_logic_vector(3downto0));

endmultiplier;

architecturestructuralofmultiplieris

typematrixisarray(0to3)of

std_logic_vector(2downto0);

signals,c:matrix;

signalp:std_logic_vector(7downto0);

begin

U1:componenttop_rowportmap(a(0),b,s(0),c(0),

p(0));

U2:componentmid_rowportmap(a(1),b,s(0),c(0),s(1),

c(1),p(1));

U3:componentmid_rowportmap(a(2),b,s(1),c(1),s(2),

c(2),p(2));

U4:componentmid_rowportmap(a(3),b,s(2),c(2),s(3),

c(3),p(3));

U5:componentlower_rowportmap(s(3),c(3),

文档评论(0)

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

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

1亿VIP精品文档

相关文档