verilog hdl 作业.docVIP

  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文档。上传文档
查看更多
verilog hdl 作业

一、74LS194A 设计 (1) (2) CP Rd S1 S0 Dir Dil D Q 时钟信号 重置信号 模式选择1 模式选择0 右移串行输入 左移串行输入 4位并行输入 4位并行输出 Verilog HDL 代码: `timescale 1ns/1ns module shift (S1,S0,D,Dir,Dil,Q,CP,Rd); input S1,S0; //选择模式 input Dil,Dir; //串行数据输入 input CP,Rd; //时钟和重置 input [3:0]D; //并行数据输入 output [3:0]Q; reg[3:0]Q; //寄存器输出 always @(posedge CP or negedge Rd) if(~Rd) Q = 4b0000 ; else case ({S1,S0}) 2b00:Q=Q; //保持 2b01:Q={Dir, Q[3:1]}; //右移 2b10:Q={ Q[2:0] ,Dil}; //左移 2b11:Q=D; //并行载入 endcase endmodule (3)testbench: `timescale 1ns/1ns module shift_tb; //Internal signals declarations: reg S1; reg S0; reg [3:0]D; reg Dir; reg Dil; wire [3:0]Q; reg CP; reg Rd; // Unit Under Test port map shift UUT ( .S1(S1), .S0(S0), .D(D), .Dir(Dir), .Dil(Dil), .Q(Q), .CP(CP), .Rd(Rd)); initial begin CP=0; Rd=0; S1=0; S0=1; Dil=1; Dir=1; D=4b0011; #30 S1=1;S0=0; #20 S1=0; #20 S1=1;S0=1; #20 Rd=0; end initial #10 Rd=1; always #10 CP=~CP; initial $monitor($realtime,,ps %h %h %h %h %h %h %h %h ,S1,S0,D,Dir,Dil,Q,CP,Rd); Endmodule 功能仿真图: 二、带有扫描功能的七段显示译码电路设计 1、电路的输入 时钟clk:1 位宽; 二进制数字输入:bin_in;4 位宽; 清零信号:Clr,低电平有效;清零时,4 个数码管显示为“8”。 2、程序代码 (1)主模块scan.v module scan (D3,D2,D1,D0,bin_in, clk,clr); input [3:0] bin_in; input clk,clr; output [6:0] D3,D2,D1,D0; wire [6:0] Q; reg [6:0] D3,D2,D1,D0; reg [3:0] cnt; wire clk1; reg [2:0] s; parameter s0=0,s1=1,s2=2,s3=3; always @(posedge clk1 or negedge clr) //扫描电路 begin if (!clr) //清零时,全部显示“8” begin D3=7b1111111; D2=7b1111111; D1=7b1111111; D0=7b1111111; s=s0; end else case (s) s0: //状态s0时,D0数码管显示数字 begin s=s1; D0=Q;D1=0;D2=0;D3=0; end s1: //状态s1时,D1数码管显示数字 begin s=s2; D0=0;D1=Q;D2=0;D3=0; end s2: //状态s2时,D2数码管显示数字 begin s=s3; D0=0;D1=0;D2=Q;D3=0; end s3:

文档评论(0)

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

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

1亿VIP精品文档

相关文档