番茄花园-4-bitALU讲课教案.pptVIP

  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文档。上传文档
查看更多
* * 4-bit ALU Agenda Spec 說明 代码 仿真 综合 Gate level 仿真 RTL view Spec 說明 Input信号: 控制信号S1,S0,C0,M 数据A[3:0],B[3:0] Output信号 X[3:0], C1 从功能上可分为两部分 M=0时, 完成logic功能, 结果从logic模块输出 M=1时,完成arithmetic功能,结果从算术模块输出 分析结果: 采用自下而上的设计 方法分别完成每个子模块 Logic子模块 module funclogic(S, XIN, YIN, OUT, C1); input [1:0]S; input [3:0]XIN; input [3:0]YIN; output [3:0]OUT; output C1; reg [3:0] OUT; always @(XIN or YIN or S) begin case (S) 2b00: OUT = XIN YIN; 2b01: OUT = XIN | YIN; 2b10: OUT = XIN ^ YIN; 2b11: OUT = XIN ^~YIN; endcase end assign C1= 1b0; endmodule 模块名: funclogic 控制信号: S (S1, S0) 数据输入: XIN[3:0] 数据输入: YIN[3:0] 数据输出: OUT[3:0] 进位输出: C1 OUT出现在always语句中,必须定义成reg类型 保证敏感列表完备,即包含条件表达式涉及的信号S, 赋值语句等号右边的信号XIN, YIN Logic模块没有进位输出,所以令C1=0 模块结束 ALU模块(Top) module alu (s, c0, m, a, b, out, cout); input [1:0]s; input [3:0]a; input [3:0]b; input c0,m; output [3:0]out; output cout; wire [3:0] outlogic,outarith; wire coutlogic,coutarith; assign out = m?outarith:outlogic; assign cout = m?coutarith:coutlogic; funclogic func1(.S(s),.XIN(a),.YIN(b),.OUT(outlogic),.C1(coutlogic)); funcarith func2(.S(s),.C0(c0),.XIN(a),.YIN(b),.OUT(outarith),.C1(coutarith)); Endmodule 模块名 alu 数据输入 a[3:0] 数据输入 b[3:0] 注意,在子模块中并没有用到m选择信号 数据输出 进位输出 cout 定义logic子模块和arithmetic子模块的输出为wire型数据,出现在assign语句中 m=0,数据输出outlogic m=1,数据输出outarith 调用funclogic子模块 调用funcarith子模块 ALU模块(Top)continue funclogic func1(.S(s),.XIN(a),.YIN(b),.OUT(outlogic),.C1(coutlogic)); func1 与 funclogic有相同逻辑 funclogic模块的端口 S, XIN,YIN,OUT,C1分别对应到func1模块的s,a,b,outlogic,coutlogic funcarith func2(.S(s),.C0(c0),.XIN(a),.YIN(b),.OUT(outarith),.C1(coutarith)); 测试代码 `include “4bitalu.v” `timescale 10ns/1ns module alu_test; reg MODE; reg [1:0]S; reg [3:0]A,B; reg C0; wire COUT; wire [3:0] OUT;

文档评论(0)

sunfuliang7808 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档