6.Verilog的always语句使用

Posted fpga&matlab

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.Verilog的always语句使用相关的知识,希望对你有一定的参考价值。

FPGA教程目录

MATLAB教程目录

---------------------------------------------------------------------------------------

       always语句包括的所有行为语句构成了一个always语句块。该always语句块从仿真0时刻开始执行其中的行为语句;最后一条执行完成后,再开始执行其中的第一条语句,如此往复循环,直到整个仿真结束。因此,always语句块常用于对数字电路中一组反复执行的活动进行建模。比如大家熟知的时间信号发生,每半个时钟周期时钟信号翻转一次。

      通过always语句,可以实现赋值功能,延迟功能,下面对这两个功能的实现进行介绍分析:

`timescale 1ns / 1ps

module count(
input i_clk,
input i_rst,
output reg[9:0]o_count1,
output reg[9:0]o_count2,
output reg[9:0]o_count3
);

    
always @(posedge i_clk or posedge i_rst)
begin
     if(i_rst)
     begin
     o_count1 <= 10\'d0;
     o_count2 <= 10\'d0;
     o_count3 <= 10\'d0;
     end
else

以上是关于6.Verilog的always语句使用的主要内容,如果未能解决你的问题,请参考以下文章

systemverilog新增的always_comb,always_ff,和always_latch语句

Verilog学习笔记基本语法篇········ 结构说明语句

verilog语句执行顺序的疑问?

在systemverilog的task中只能用阻塞赋值么

FPGA/verilog 学习笔记—— verilog程序框架

在FPGA的开发中,如何对inout信号进行赋值?