verilogHDL快速教程.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
verilogHDL快速教程

Verilog 入门快速教程 第10章 用Verilog硬件描述语言描述系统 Verilog 的常识和特点 模型的三种(分级)描述方法 门级和开关级 底层模型用来准确计算延迟和信号强度 太麻烦,但是考试要看 寄存器传输级 行为描述always,initial内 ,posedge,negedge, wait,时间控制 =,=(reg信号的赋值:非阻塞式的,阻塞式的) 条件分支循环语句:case,if,while 对wire 信号的连续赋值语句: assign a=b+c; 综合时直接生成组合逻辑电路 input  输入端口 output 输出端口 inout 双向端口 .模块的引用 及 端口与外部信号的连接 在调用模块时,可以用顺序连接和按名连接把模块定义的端口与外部信号连接起来 顺序连接:需要连接的信号需要与模块声明的端口列表一致; 按名连接:端口和外部信号按名字连接在一起. 门级和开关级建模——描述 网表连接,内部端口(input,output)和外部连线wire 基本门(Gate Primitive) not,and,nand or,nor,xnor,bufif0,bufif1,notif0,notif1... nmos,pmos,rcmos,rnmos,rpmos... 连线的声明 wire, supply1,supply0,strong0,strong1... 4:1的Mux 分路器使用了3个2:1的Mux分路器 ‘timescale 1ns/10ps module mux_2to1_gates(a,b,sel,y); input a,b,sel; output y; wire sel,a_sel,b_sel; not #1 U_inv (inv_sel,sel); and #2 U_anda (asel,a,inv_sel), #2 U_andb (bsel,b,sel); or #2.5 U_or (y,asel,bsel); endmodule module mux_4to1_gates(a,b,c,d,sel,y); input a,b,c,d; input [1:0] sel; output y; wire mux_1,mux_2; mux_2to1_gates U_mux1 (a,b,sel[0],mux_1), U_mux2 (c,d,sel[0],mux_2), U_mux3 (mux_1,mux_2,sel[1],y); endmodule 开关级建模 //非门(注释) module not_switch (out, in); output out; input in; supply1 power; supply0 ground; pmos (out, power, in); nmos (out, ground, in); endmodule TestBench 测试台(板)——激发信号和输出显示 module board; wire [3:0] count; wire clock, f,af; m16 counter (count, clock, f, af); m555 clockGen (clock); always @(posedge clock) $display ($time,,,count=%d, f=%d, af=%d, count, f, af); endmodule TestBench 只在模拟中用在综合里不会用到 连续赋值语句建模 assign module mux_using_assign(din_0,din_1, sel , mux_out ); input din_0, din_1, sel ; output mux_out; wire mux_out; assign mux_out = (sel) ? din_1 : din_0; endmodule 行为级建模——异步复位的D触发器 (可以比较简洁地表示复杂的系统) module dff_async_reset (data, clk, reset, q); input data, clk, reset ; output q; reg q; always @ ( posedge clk or negedge reset) if (~reset) begin q

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档