verilog模块的结构、数据类型、变量和基本运算符.ppt
《verilog模块的结构、数据类型、变量和基本运算符.ppt》由会员分享,可在线阅读,更多相关《verilog模块的结构、数据类型、变量和基本运算符.ppt(43页珍藏版)》请在三一文库上搜索。
1、第三章 模块的结构、数据类型、变量和基本运算符,3.1 模块的结构,module 模块名(端口信息); 输入/输出说明 内部信号声明 逻辑功能描述 endmodule,Verilog 模块由两部分组成:端口信息和内部功能。,module block1(a, b, c, d, e); input a, b, c; output d, e; assign d = a | ( b endmodule,3.1 模块的结构,Verilog 模块的结构由在module和endmodule 关键词之间的四个主要部分组成: - 端口信息: module block1(a, b, c, d ); - 输入/输出
2、说明 : input a, b, c ; output d ; - 内部信号: wire x; - 功能定义: assign d = a | x ; assign x = ( b endmodule,Verilog HDL模块的结构,请在下面的空格中填入适当的符号 使其成为右图的Verilog 模块 : module block1(a, b, , , ); input , , ; d, ; assign d = a | ( b _,编写Verilog HDL模块的练习,请在下面的空格中填入适当的符号 使其成为右图的Verilog 模块 : module block1(a, b, c , d,
3、e ); input a, b, c; output d, e ; assign d = a | ( b endmodule,编写Verilog HDL模块的练习,module block (a,b,c); output c; input a,b; ; endmodule,module block3(a,b,c); output 2:0 c; input 2:0 a,b; ; block b0(.b(b0),.a(a0),.c(c0); block b1(a1,b1,c1); endmodule,模块的端口定义与调用,端口实现模块互连,要保证连接正确。,本模块信号,另一模块信号,在Verilo
4、g 模块中有三种方法可以生成逻辑电路: - 用 assign 语句(连续赋值语句): assign cs = ( a0 end,Verilog HDL模块中的逻辑表示,如在模块中逻辑功能由下面三个语句块组成 : assign cs = ( a0 end 三条语句是并行的,它们产生独立的逻辑电路; 而在 always 块中: begin 与 end 之间是顺序执行的。,并行和顺序逻辑关系的表示,Verilog模块中的信号,只有两种主要的信号类型: - 寄存器类型: reg 在always 块中被赋值的信号,往往代表 触发器,但不一定是触发器。 - 连线类型: wire 用 assign 关键词指
5、定的组合逻辑的信号 或连线,Verilog模块中的信号要点,需要注意的是: - 寄存器 ( reg )类型不一定是触发器。 - 它只是在 always 块中赋值的信号。,Verilog中reg与wire的不同点,用寄存器 (reg)类型变量生成组合逻辑举例: module rw1( a, b, out1, out2 ) ; input a, b; output out1, out2; reg out1; wire out2; assign out2 = a ; always (b) out1 = b; endmodule,Verilog中reg与wire的不同点,用寄存器 ( reg )类型变
6、量生成触发器的例子: module rw2( clk, d, out1, out2 ) ; input clk, d; output out1, out2; reg out1; wire out2; assign out2 = d end endmodule,Verilog中两种不同的赋值语句,不阻塞(non-blocking) 赋值语句: always (posedge clk) begin b = a ; c = b; end,Verilog中两种不同的赋值语句,阻塞(blocking) 赋值语句: always (posedge clk) begin b = a ; c = b; end
7、,两种不同的赋值语句区别要点,非阻塞(non-blocking) 赋值语句 ( b= a): - 块内的赋值语句同时赋值; - b 的值被赋成新值 a 的操作, 是与块内其他赋值 语句同时完成的; - 建议在时序电路的模块中使用不阻塞赋值;组合逻辑的模块中使用阻塞赋值。 阻塞(blocking) 赋值语句 ( b = a): - 完成该赋值语句后才能做下一句的操作; - b 的值立刻被赋成新值 a; - 时序电路中硬件没有对应的电路,因而综合结果未知。,3.2 数据类型及常量和变量,数据类型用来表示硬件电路的数据存储和传送元素的 总共有19种数据类型 常用4种: reg 型 wire 型 in
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- verilog 模块 结构 数据类型 变量 基本 运算
链接地址:https://www.31doc.com/p-3473023.html