教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

四位全加器的VHDL与VerilogHDL实现(2)

来源:网络收集 时间:2026-07-05
导读: PORT( a,b,cin: IN BIT; cout,sum: OUT BIT); END COMPONENT; SIGNAL c: BIT_VECTOR( 3 downto 1 ); BEGIN adder1:full_add PORT MAP( a => a(1),b=>b(1),cin=>c0,cout=>c(1),sum=>sum(1) ); --上面的书写方式中,

PORT( a,b,cin: IN BIT; cout,sum: OUT BIT); END COMPONENT;

SIGNAL c: BIT_VECTOR( 3 downto 1 ); BEGIN

adder1:full_add PORT MAP( a => a(1),b=>b(1),cin=>c0,cout=>c(1),sum=>sum(1) ); --上面的书写方式中,参数顺序可任意调整。

adder2: full_add PORTMAP( a(2),b(2),c(1),c(2),sum(2) ); adder3: full_add PORTMAP( a(3),b(3),c(2),c(3),sum(3) ); adder4: full_add PORTMAP( a(4),b(4),c(3),c(4),sum(4) ); END adder;

--利用生成语句,可进一下简化语句的书写 ENTITY add4gen IS PORT( c0: IN BIT;

a,b: IN BIT_VECTOR( 4 downto 1 ); -- 4改为8 c4: OUT BIT;

sum: OUT BIT_VECTOR( 4 downto 1 ) ); -- 4改为8 END add4gen;

ARCHITECTURE adder OF add4gen IS COMPONENT full_add

PORT( a,b,cin:IN BIT; cout,sum: OUT BIT ); END COMPONENT;

SIGNAL c: BIT_VECTOR( 4 downto 0 ); -- 4改为8 BEGIN

c(0) <=c0;

adders:

FOR i IN 1 to 4 GENERATE --FOR i IN 1 to 8 GENERATE adder: full_add PORTMAP(a(i),b(i),c(i-1),c(i),sum(i) ); END GENERATE;

c4 <= c(4); --c8<=c(8) END adder;

若要扩展为8位加法器,则很容易修改,将上面的4改为8即可

6

四位全加器的VHDL与VerilogHDL实现(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/520578.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)