《数字系统设计与Verilog HDL》第6章.pptx
文本预览下载声明
第6章 Verilog行为语句; 主要内容;Verilog HDL行为语句;6.1 过程语句;always过程语句使用模板;敏感信号表达式;敏感信号列表举例;posedge和negedge关键字;6.2 块语句;6.3 赋值语句; 过程赋值语句多用于对reg型变量进行赋值。
(1)非阻塞(non_blocking)赋值方式
赋值符号为“=”, 如:b= a;
非阻塞赋值在整个过程块结束时才完成赋值操作,即b的值并不是立刻就改变的。
(2)阻塞(blocking)赋值方式
赋值符号为“=”, 如:b= a;
阻塞赋值在该语句结束时就立即完成赋值操作,即b的值在该条语句结束后立刻改变。如果在一个块语句中,有多条阻塞赋值语句,那么在前面的赋值语句没有完成之前,后面的语句就不能被执行,仿佛被阻塞了(blocking)一样,因此称为阻塞赋值方式。;阻塞赋值与非阻塞赋值 ;阻塞赋值与非阻塞赋值;阻塞赋值与非阻塞赋值;6.4 条件语句;case???句的使用格式如下。
case (敏感表达式)
值1: 语句1; //case分支项
值2: 语句2;
……
值n: 语句n;
default:语句n+1;
endcase;BCD码—七段数码管显示译码器;6.5 循环语句;for语句;用for语句描述七人投票表决器;repeat语句 ;用repeat实现8位二进制数乘法 ;6.6 编译指示语句;宏替换`define ;文件包含`include ;6.7 任务与函数 ;使用任务时,需注意;函数的目的是返回一个值,以用于表达式计算
函数的定义格式:
function 返回值位宽或类型说明 函数名;
端口声明;
局部变量定义;
其它语句;
endfunction
返回值位宽或类型说明是一个可选项,如果缺省,则返回值为1位寄存器类型的数据。;函数举例;在使用函数时,需注意;任务与函数的比较 ;6.8 顺序执行与并发执行;顺序执行的例子;顺序执行;顺序执行模块1综合结果;思考与练习 ;思考与练习
显示全部