- 2
- 0
- 约1.52千字
- 约 48页
- 2017-04-25 发布于湖北
- 举报
Verilog课件3教程
数据类型用来表示数字电路硬件中的数据存储和传送的元素。
Verilog HDL共有19种数据类型,分2大类数据:
线网类型
表示器件之间的物理连接。
其数值由驱动元件决定,如果没有驱动元件连接到线网上,则其默认值为高阻Z。
寄存器类型
表示数据的储存单元。
其默认值为不定X。
两者最大的区别:
寄存器类型保持最后一次的赋值,而线网类型则需要持续的驱动。;wire(网络连线):
由模块或门驱动的连线。
驱动端信号的改变会立刻
传递到输出的连线上。
例如:右图上,selb的改
变,会自动地立刻影响或
门的输出。;线网类型;线网类型变量的种类:;线网类型;wire a b;;寄存器类型;寄存器类型(reg);reg型变量能保持其值,直到它被赋于新值。
reg型变量常用于行为建模,产生测试的激励信号。
常用行为语句结构来给reg类型的变量赋值。;wire clk, d;reg q;
always @ ( posedge clk ) q = d;;;寄存器类型(reg);reg和wire类型变量的区别;位选择和部分选择 ;位选择和部分选择;存储器;存储器;
输入口(input)可以由寄存器或网络连接驱动,(即外部连接它可以是reg或wire型),但它本身只能是wire型。
输出口(output)可以是wire或reg型,但它本身只能驱动线网型,即外部连接它只能是wire型 。
输入/输出口(inout)只能定义为wire型,并且与它连接也只能是wire型。
如果信号变量是在过程块 (initial块 或 always块)中被赋值的,必须把它声明为寄存器类型变量 ;如何选择数据类型; 选择数据类型时常犯的错误
把模块的输入信号定义为寄存器类型了。
把例化后的输出连接出去时,把它定义为寄存器类型了。
在过程块中对变量赋值时,忘了把它定义为寄存器类型(reg)或已把它定义为连接类型了(wire)。
这是经常犯的三个错误!!!;参数(parameters);参数值的改写:
在模块或实例引用时可通过参数传递来改变被引用模块或实例中已定义的参数。;参数(parameters);赋值运算符;连续赋值语句应用;Verilog中的大小(size)与符号;逻辑反与位反的对比;;等式运算符;相等操作符;wire [7:0] in, out;wire [2:0] sft;assign out = in sft; ;条件运算符;条件操作符;赋值语句;阻塞赋值;阻塞赋值;阻塞赋值;阻塞赋值;阻塞赋值;非阻塞赋值;非阻塞赋值;非阻塞赋值;非阻塞赋值;非阻塞赋值;module lfsrb1 (q3, clk, pre_n);
output q3;
input clk, pre_n;
reg q3, q2, q1;
wire n1;
assign n1 = q1 ^ q3;
always @(posedge clk or negedge pre_n)
if (!pre_n)
begin q3 = 1b1; q2 = 1b1; q1 = 1b1;
end
else
begin q3 = q2; q2 = n1; q1 = q3;
end
endmodule;用非阻塞语句描述的LFSR;event事件;event事件
您可能关注的文档
最近下载
- 支部党员大会会议记录(支委会选举范例).docx VIP
- 深圳市宝安区2025-2026学年第一学期五年级语文期末学业质量评估卷(原卷+答案)统编版.docx VIP
- 山桐子种植加工、旅游项目可行性研究报告商业计划书.docx VIP
- 山桐子种植及种苗培育种植加工可行性研究报告申请备案.doc VIP
- 和田地区2026年度地直机关公开遴选公务员、事业单位公开选聘工作人员备考题库及完整答案详解1套.docx VIP
- 山桐子合作种植协议合同.docx VIP
- 2025年香氛未来趋势报告-英敏特.docx VIP
- 报告正文2014年太阳绿宝.pdf VIP
- 2025年高考:云南物理--试题及答案.pdf VIP
- 广东省深圳市宝安区2025-2026学年五年级上学期期末学业质量评估语文试卷.docx VIP
原创力文档

文档评论(0)