广告
返回顶部
首页 > 资讯 > 精选 >Verilog语言的循环语句怎么使用
  • 953
分享到

Verilog语言的循环语句怎么使用

2023-07-06 01:07:33 953人浏览 八月长安
摘要

这篇文章主要介绍“Verilog语言的循环语句怎么使用”,在日常操作中,相信很多人在Verilog语言的循环语句怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Verilog语言的循环语句怎么使用”的疑

这篇文章主要介绍“Verilog语言的循环语句怎么使用”,在日常操作中,相信很多人在Verilog语言的循环语句怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Verilog语言的循环语句怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

关键词:while, for, repeat, forever

Verilog 循环语句有 4 种类型,分别是 while,for,repeat,和 forever 循环。循环语句只能在 always 或 initial 块中使用,但可以包含延迟表达式。

while 循环

while 循环语法格式如下:

while (condition) begin    …end

while 循环中止条件为 condition 为假。

如果开始执行到 while 循环时 condition 已经为假,那么循环语句一次也不会执行。

当然,执行语句只有一条时,关键字 begin 与 end 可以省略。

下面代码执行时,counter 执行了 11 次。

`timescale 1ns/1ns module test ;     reg [3:0]    counter ;    initial begin        counter = 'b0 ;        while (counter<=10) begin            #10 ;            counter = counter + 1'b1 ;        end    end    //stop the simulation    always begin        #10 ;  if ($time >= 1000) $finish ;    end endmodule

for 循环

for 循环语法格式如下:

for(initial_assignment; condition ; step_assignment)  begin    …end

initial_assignment 为初始条件。

condition 为终止条件,condition 为假时,立即跳出循环。

step_assignment 为改变控制变量的过程赋值语句,通常为增加或减少循环变量计数。

一般来说,因为初始条件和自加操作等过程都已经包含在 for 循环中,所以 for 循环写法比 while 更为紧凑,但也不是所有的情况下都能使用 for 循环来代替 while 循环。

下面 for 循环的例子,实现了与 while 循环中例子一样的效果。需要注意的是,i = i + 1 不能像 C 语言那样写成 i++ 的形式,i = i -1 也不能写成 i -- 的形式。

// for 循环语句integer      i ;reg [3:0]    counter2 ;initial begin    counter2 = 'b0 ;    for (i=0; i<=10; i=i+1) begin        #10 ;        counter2 = counter2 + 1'b1 ;    endend

repeat 循环

repeat 循环语法格式如下:

repeat (loop_times) begin    …end

repeat 的功能是执行固定次数的循环,它不能像 while 循环那样用一个逻辑表达式来确定循环是否继续执行。repeat 循环的次数必须是一个常量、变量或信号。如果循环次数是变量信号,则循环次数是开始执行 repeat 循环时变量信号的值。即便执行期间,循环次数代表的变量信号值发生了变化,repeat 执行次数也不会改变。

下面 repeat 循环例子,实现了与 while 循环中的例子一样的效果。

// repeat 循环语句reg [3:0]    counter3 ;initial begin    counter3 = 'b0 ;    repeat (11) begin  //重复11次        #10 ;        counter3 = counter3 + 1'b1 ;    endend

下面 repeat 循环例子,实现了连续存储 8 个数据的功能:

always @(posedge clk or negedge rstn) begin    j = 0  ;    if (!rstn) begin        repeat (8) begin            buffer[j]   <= 'b0 ;      //没有延迟的赋值,即同时赋值为0            j = j + 1 ;        end    end    else if (enable) begin        repeat (8) begin            @(posedge clk) buffer[j]    <= counter3 ;       //在下一个clk的上升沿赋值            j = j + 1 ;        end     endend

真结果如下图。

由图可知,rstn 拉高时,buffer 的 8 个向量同时赋值为 0。

第二个时钟周期后,buffer 依次被 counter3 赋值,实现了连续存储 8 个数据的功能。

Verilog语言的循环语句怎么使用

forever 循环

forever 循环语法格式如下:

forever begin    …end

forever 语句表示永久循环,不包含任何条件表达式,一旦执行便无限的执行下去,系统函数 $finish 可退出 forever。

forever 相当于 while(1) 。

通常,forever 循环是和时序控制结构配合使用的。

例如,使用 forever 语句产生一个时钟:

reg          clk ;initial begin    clk       = 0 ;    forever begin        clk = ~clk ;        #5 ;    endend

例如,使用 forever 语句实现一个时钟边沿控制的寄存器间数据传输功能:

reg    clk ;reg    data_in, data_temp ;initial begin    forever @(posedge clk)      data_temp = data_in ;end

到此,关于“Verilog语言的循环语句怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Verilog语言的循环语句怎么使用

本文链接: https://www.lsjlt.com/news/356854.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Verilog语言的循环语句怎么使用
    这篇文章主要介绍“Verilog语言的循环语句怎么使用”,在日常操作中,相信很多人在Verilog语言的循环语句怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Verilog语言的循环语句怎么使用”的疑...
    99+
    2023-07-06
  • Verilog语言的循环语句示例详解
    目录关键词:while, for, repeat, foreverwhile 循环for 循环repeat 循环forever 循环关键词:while, for, repeat, f...
    99+
    2023-05-15
    Verilog语言循环语句 Verilog 循环
  • C语言while循环语句怎么使用
    while循环语句在C语言中的使用方式如下:1. 基本语法:```while (条件表达式) {循环体语句;}```其中,条件表达式...
    99+
    2023-08-18
    C语言 while
  • Go语言中for循环语句怎么用
    这篇文章主要介绍了Go语言中for循环语句怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。概述for循环是一个循环控制结构,可以执行指定次数的循环语法第一种for&nbs...
    99+
    2023-06-25
  • Go语言的循环语句如何使用
    这篇文章主要介绍“Go语言的循环语句如何使用”,在日常操作中,相信很多人在Go语言的循环语句如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go语言的循环语句如何使用”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-30
  • java循环语句怎么使用
    这篇文章主要介绍“java循环语句怎么使用”,在日常操作中,相信很多人在java循环语句怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java循环语句怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-29
  • 怎么深入了解c语言的循环语句
    怎么深入了解c语言的循环语句,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。C语言循环语句大多数人都希望自己是体格强健,天资聪慧,多才多艺的人。虽然有时事与愿违,但至少我们用...
    99+
    2023-06-22
  • C语言中的三种循环语句
    目录一、while循环二、do while 循环三、for 循环一、while循环 while即:首先检查启动循环的条件是否满足,当条件满足时,不断地重复循环体内的语句,直到不满足条...
    99+
    2022-11-12
  • Python循环语句怎么用
    小编给大家分享一下Python循环语句怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是循环呢?简单理解,循环就是反复的去做某一件事情。生活中的例子:比如...
    99+
    2023-06-22
  • javascript的循环语句怎么用
    这篇文章主要介绍“javascript的循环语句怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“javascript的循环语句怎么用”文章能帮助大家解决问题。 ...
    99+
    2022-10-19
  • C语言分支循环其嵌套语句的使用
    目录switch 嵌套1、语法结构: 2、switch-case 嵌套语句程序示例 循环嵌套1、while 循环嵌套2、do-while 嵌套循环 3、for 循环嵌套 总结Hell...
    99+
    2022-11-12
  • Go语言中循环语句使用的示例详解
    目录一、概述1. 循环控制语句2. 无限循环二、Go 语言 for 循环1. 语法2. for语句执行过程3. 示例4. For-each range 循环三、循环嵌套1. 语法2....
    99+
    2022-11-13
  • C语言控制语句中循环的用法
    本篇内容主要讲解“C语言控制语句中循环的用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言控制语句中循环的用法”吧!入口条件循环:while循环在执行多次循环之前之就已经决定是否执行循环代...
    99+
    2023-06-20
  • 怎么使用Python的While循环语句
    本篇内容主要讲解“怎么使用Python的While循环语句”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python的While循环语句”吧!1. while循环语句作用:实现特定代码重...
    99+
    2023-06-02
  • Go语言学习之循环语句使用详解
    目录1、for循环2、for-each语法3、break的使用4、continue的使用5、goto的使用1、for循环 写法基本和其他语言一致,只是没有了while循环,用for代...
    99+
    2022-11-13
  • 深入了解c语言的循环语句
    目录C语言循环语句while循环for循环do......while循环的嵌套总结:C语言循环语句 大多数人都希望自己是体格强健,天资聪慧,多才多艺的人。虽然有时事与愿违,但至少我们...
    99+
    2022-11-12
  • Shell循环语句及中断语句的使用
    目录for循环语句例题1:批量添加用户例题2:根据IP地址检查主机状态while循环语句例题1 猜价格游戏例题二:批量添加用户until循环语句例题:计算1~50的值中断(break和continue)①break②con...
    99+
    2023-05-12
    Shell循环语句 Shell中断语句
  • Verilog语言表达式怎么使用
    这篇文章主要介绍了Verilog语言表达式怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Verilog语言表达式怎么使用文章都会有所收获,下面我们一起来看看吧。表达式表达式由操作符和操作数构成,其目的是...
    99+
    2023-07-06
  • python条件语句和while循环语句怎么用
    这篇文章主要介绍“python条件语句和while循环语句怎么用”,在日常操作中,相信很多人在python条件语句和while循环语句怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python条件语句和...
    99+
    2023-06-30
  • C语言实例讲解四大循环语句的使用
    目录一、do…while()循环1. 图示流程2. 代码流程3. 示例代码1到100求和)二、while()循环1. 图示流程2. 代码流程3. 示例代码(1到100求...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作