采用VHDL层次化文件设计一个四位全减器.docVIP

采用VHDL层次化文件设计一个四位全减器.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

采用VHDL层次化文件设计一个四位全减器

一、实训目的

1.稳固VHDL层次化文件设计方法。

2.培养应用VHDL层次化文件设计法的技能。

二、实训器材

计算机与QuartusⅡ工具软件。

三、实训指导

〔一〕实训原理

4位二进制减法器由4个全减器构成,而全减器又由一个半减器和一个或门构成,半减器的真值表如表4-1所示:

表4-1半减器的真值表

输入

输出

a1

b1

s1

c1

0

0

0

0

0

1

1

1

1

0

1

0

1

1

0

0

半减器的逻辑表达式为:s1=NOT(a1XOR(NOTb1))

c1=(NOTa1)ANDb1

一位全减器的真值表如表4-2所示:

表4-2一位全减器的真值表

c_in

i1

i2

fs

c_out

0

0

0

0

0

0

0

1

1

1

0

1

0

1

0

0

1

1

0

0

1

0

0

1

1

1

0

1

0

1

1

1

0

0

0

1

1

1

1

1

〔二〕实训步骤

1.电路模块划分

根据算法分析,4位二进制减法器可由4个全减器构成,画出其原理方框图。全减器的原理方框图如图4-1所示。而每个全减器又可划分为一个半减器和一个或门这两个更小的模块,画出其原理方框图。4位二进制减法器的原理方框图如图4-2所示。

图4-1一位全减器原理方框图

图4-24位二进制减法器原理框图

2.设计底层设计文件

〔1〕设计半减器文件halfsub.vhd。

〔2〕设计或门电路文件orgate.vhd。

〔3〕设计全减器电路文件fullsub.vhd,其中把半减器和或门电路文件作为元件调用。

3.设计顶层设计文件

设计顶层设计文件sub4.vhd,其中把全减器文件作为元件调用。

VHDL代码如下:

halfsub.vhd文件代码如下:

ENTITYhalfsubIS

PORT(a1,b1:INBIT;

s1,c1:OUTBIT);

ENDhalfsub;

ARCHITECTUREaOFhalfsubIS

BEGIN

PROCESS(a1,b1)

BEGIN

s1=NOT(a1XOR(NOTb1))AFTER10ns;

c1=(NOTa1)ANDb1AFTER10ns;

ENDPROCESS;

ENDa;

orgate.vhd文件代码如下:

ENTITYorgateIS

PORT(a,b:INBIT;

o:OUTBIT);

ENDorgate;

ARCHITECTUREaOForgateIS

BEGIN

o=aORb;

ENDa;

fullsub.vhd文件代码如下:

ENTITYfullsubIS

PORT(i1,i2,c_in:INBIT;

fs,c_out:OUTBIT);

ENDfullsub;

ARCHITECTUREaOFfullsubIS

SIGNALtemp_s,temp_c1,temp_c2:BIT;

COMPONENThalfsub

PORT(a1,b1:INBIT;

s1,c1:OUTBIT);

ENDCOMPONENT;

COMPONENTorgate

PORT(a,b:INBIT;

o:OUTBIT);

ENDCOMPONENT;

BEGIN

U0:halfsubPORTMAP(i1,i2,temp_s,temp_c1);

U1:halfsubPORTMAP(temp_s,c_in,fs,temp_c2);

U2:orgatePORTMAP(temp_c1,temp_c2,c_out);

ENDa;

sub4.vhd文件代码如下:

ENTITYsub4IS

PORT(a,b:INBIT_VECTOR(3DOWNTO0);

cin:INBIT;

fs:OUTBIT_VECTOR(3DOWNTO0);

cout:OUTBIT);

ENDsub4;

ARCHITECTUREaOFsub4IS

SIGNALtemp_co0,temp_co1,temp_co2:BIT;

COMPONENTfullsubIS

PORT(i1,i2,c_in:INBIT;

fs,c_out:OUTBIT);

ENDCOMPONENT;

文档评论(0)

147****4268 + 关注
实名认证
文档贡献者

认真 负责 是我的态度

1亿VIP精品文档

相关文档