- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VerilogHDL第五讲Verilog实例课件
第五讲 门电路的描述和设计实例;5.1基本门电路的描述;5.1.1门电路列表;门与开关的说明语法可以用标准的声明语句格式和一个简单的实例引用加以说明
基本格式如下:
门的类型 [驱动能力延时]门实例1[,门实例2,门实例3……]
门的类型是门声明语句所必须的,它可以是VerilogHDL语法规定的26门类型中的任意一种。驱动能力和延时是可选的,可根据不同的情况选不同的值或不选。门实例1是在本模块中引用的第一个这种类型的门的名称及端口定义,而门实例n是引用的第n个这种类型的门的名称及端口定义。
例:nand #10nd1(a,data,clock,clear);
这个例子说明在模块中使用了一个名为nd1的与非门,输入为clock,data,clear 输出为a,输出与输入得延时为10个单位时间;5.1.2基本门的逻辑真值表;xor ;5.1.3门级延时的说明;5.1.4门级延时量的基本表示方式;5.2组合逻辑电路设计实例(1)加法器;module compare(equal,a,b);
parameter size=1;
output equal;
input [size-1:0] a, b;
assign equal =(a==b)? 1 : 0;
endmodule;(3)3-8译码器;(4)BCD/七段译码器;(续)BCD/七段译码器;(5)多路器;(6)用门级结构描述D触发器;module flop(data,clock,clear,q,qb);
input data,clock,clear;
output q,qb;
nand #10 nd1(a,data,clock,clear),
nd2(b,ndata,clock),
nd4(d,c,b,clear),
nd5(e,c,nclock),
nd6(f,d,nclock),
nd8(qb,q,f,clear);
nand #9 nd3(c,a,d),
nd7(q,e,qb);
not #10 iv1(ndata,data),
iv2(nclock,clock);
endmodule
; 设计示例二;5.3时序电路设计实例(1)触发器;(2)带置位和复位端的电平敏感型锁存器;(3)移位寄存器;(4)计数器;5.4有限状态机实例;有限状态机的设计实例;//行人过街交通灯控制器
module traffic3(rst,clk,press,lights,count);
input rst; //异步复位信号输入,高电平复位
input clk; //状态机时钟输入
input press; //过街按键信号输入,高电平有效
output [5:0] lights; //交通灯控制输出
output [5:0] count;
//内部信号
reg [5:0] count; //秒计数,最大60秒
reg [2:0] states; //状态值
reg [5:0] lights; //交通灯控制输出
parameter state0=3d0,state1=3d1,state2=3d2,state3=3d3, state4=3d4,state5=3d5;
parameter lights1=6b001_100, lights2=6b010_100,
lights3=6b100_001, lights4=6b100_010;
;always @(posedge rst or posedge clk)
begin
if(rst)
begin
count=6d0;
states=state0;
end
else
begin
case(states)
state0: //汽车通行状态,等待按键
begin
if(press)
begin
states=state1; //如果请求键按下,转到状态1
count=6d10; //同时将count初值给定为10,灯光控制不变
end
end
;state1: //汽车通行状态,但是请求键已经按下,延时10秒后起作用
begin
if(count6d0)
begin
count=count-1;
end
else
begin
states=state2; //计数结束,转换状态,同时为下一个状态计数器赋初值3
count=6d3;
end
end
state2: //汽车通道黄灯
begin
if(count6d0)
begin
您可能关注的文档
- Unit5 Enjoying novels课件.ppt
- Unit4+Revision课件.ppt
- unit5 Fame and Success课件.ppt
- Unit4Global warming- Warming up课件.ppt
- Unit5 Speech on Hitler课件.ppt
- unit5 theme parks book 4z课件.ppt
- unit5 first aid Warming up课件.ppt
- unit5 状语从句课件.ppt
- Unit5 Section Ⅰ Warming Up & Reading — Pre - reading课件.ppt
- Unit5CompanyFinancialReport课件.ppt
文档评论(0)