Verilog循环语句(for、while、foever和repeat)

这篇具有很好参考价值的文章主要介绍了Verilog循环语句(for、while、foever和repeat)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文主要介绍verilog常用的循环语句,循环语句的用途,主要是可以多次执行相同的代码或逻辑。

verilog的循环语句主要有:for循环、while循环、foever循环和repeat循环。

注意注意,for循环在正式FPGA设计中部分情况下可综合,其余几个循环语句均不可综合,主要用于testbench。

一、For循环

for 循环会将一段代码执行固定次数。

虽然它通常用于testbench,但也可以在可综合的 verilog 代码中使用,比如 for 循环处理verilog数组。

1、语法

for (<initial_condition>; <stop_condition>; <increment>) begin    //执行条件判断
  //要循环执行的代码
end

说明:

<initial_condition> 设置循环变量的初始值。在使用它之前,必须先定义一个integer的变量。<stop_condition> 循环执行判断条件。如果为true,for 循环将继续执行,否则跳出循环。<increment> 更新循环变量,注意只能用类似i=i+1或i=i-1。

2、代码示例

for 循环实现移位寄存器

reg [5:0] shift [0:3];
wire [5:0] init_data = 'd10;
wire [6*4-1] shift_com_w;

//将输入赋值给数组的第一个数
shift[0] <= init_data;
 
//使用for循环语句来将数组整体向左移动
for (i = 1; i < 4; i = i + 1) begin
  shift[i] <= shift[i-1];
end

//合并数组,易于输出模块
for (i = 0; i < 4; i = i + 1) begin
  assign shift_com_w[i*6+:6] = shift[i];
end

二、Forever循环

verilog 中的forever循环会创建一个连续执行的代码块,并无限循环。

forever循环只能在testbench中使用,常用于生成激励时钟信号。注意forever循环无法被综合。

1、语法

forever begin    
// 循环执行的语句
end

3、代码示例

创建一个10Mhz的时钟

initial begin
   clk = 1'b0;
   forever begin
     #5 clk = ~clk;
   end
end

三、Repeat循环

repeat循环执行指定次数的循环代码块。注意该语句不可综合。

1、语法

repeat (<number>) begin    //指定重复次数
    //需要重复执行的代码
end

说明: 用来确定重复循环的次数

2、代码示例

检测到上升沿,信号翻转一次。

repeat (6) begin      //重复6次
  @(posedge sig_a)    //上升沿
      sig_b = ~sig_b; //翻转
end

四、While 循环

while循环的每次迭代之前都会判断指定条件是否满足,如果为真,就执行条件内的循环代码块;否则,就不会执行。注意该语句不可综合。

1、语法

while <condition> begin    //判断条件
  // Code to execute       //要重复执行的语句
end

说明: 循环执行条件。

2、代码示例

创建一个从 0 到 3 的integer型变量,然后在循环的每次迭代中打印这个变量的值。

integer i;

while (i < 4) begin
  $display("i = %0d", i);
  i = i + 1;
end

本文将不断定期更新中,点赞,收藏一下,不走丢哦

有任何问题,都可以在评论区和我交流哦

本文由FPGA入门到精通原创,公众号为“FPGA入门到精通”,github开源代码:“FPGA知识库

您的支持是我持续创作的最大动力!如果本文对您有帮助,请给一个鼓励,谢谢。文章来源地址https://www.toymoban.com/news/detail-445111.html

到了这里,关于Verilog循环语句(for、while、foever和repeat)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 《Python入门到精通》循环语句 while循环,for循环

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 小白零基础《Python入门到精通》 while

    2024年02月14日
    浏览(58)
  • 【Python基础】- for/while循环语句

      🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 目录 Python循环语句 while循环 无限循环 while 循环使用 else 语句 for 循环 range对象 列表推导

    2024年02月09日
    浏览(51)
  • 【C# 基础精讲】循环语句:for、while、do-while

    循环语句是C#编程中用于重复执行一段代码块的关键结构。C#支持 for 、 while 和 do-while 三种常见的循环语句,它们允许根据条件来控制代码块的重复执行。在本文中,我们将详细介绍这三种循环语句的语法和使用方法。 for 循环是一种常见的循环结构,用于在给定条件下重复执

    2024年02月13日
    浏览(41)
  • 【Python基础】- for/while循环语句(文末送书)

      🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 目录 Python循环语句 while循环 无限循环 while 循环使用 else 语句 for 循环 range对象 列表推导

    2024年02月08日
    浏览(58)
  • Python条件控制和循环语句(if while for )

    同样需要注意冒号和缩进。另外,在 Python 中没有 do..while 循环。 while+else whlie+break break跳出本层循环的含义 标志位的使用 while+continue 死循环: 程序中坚决不能出现死循环 for循环不会出现死循环,它的循环条件不是我们来控制,是人家内部已经控制好了 for循环和while循环都是

    2024年02月11日
    浏览(48)
  • Python的流程控制语句,while循环和嵌套、for循环、break和continue、冒泡排序

    流程控制语句是用于控制程序的执行顺序的语句。在Python中,主要有while循环和嵌套、for循环、break和continue语句、冒泡排序等。 while循环和嵌套: while循环用于多次执行一段代码,直到条件不再满足为止。嵌套是将一个while循环放在另一个while循环内部,实现多层循环。 示例

    2024年01月18日
    浏览(100)
  • 【Linux】Shell脚本之流程控制语句 if判断、for循环、while循环、case循环判断 + 实战详解[⭐建议收藏!!⭐]

    👨‍🎓 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入! 🐋 希望大家多多支持,我们一起进步!😄 🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏

    2024年02月13日
    浏览(49)
  • 十九、MySQL 循环结构之LOOP、WHILE、REPEAT、LEAVE、ITERATE 详解

    LOOP 循环语句用来重复执行某些语句。LOOP 内的语句一直重复执行直到循环被退出(使用 LEAVE 子句),跳出循环过程。LOOP 语句的基本格式如下: 举例1:使用 LOOP 语句进行循环操作,id值小于10时将重复执行循环过程。 举例2:应用LOOP语句求前100项的和。首先定义变量i和s,分

    2024年02月04日
    浏览(61)
  • 【C语言趣味教程】(11) 循环语句Ⅰ:while 循环 | 循环的类型 | 流程图基础 | 循环的定义 | 死循环 | while 循环嵌套 | break 语句 | continue 语句

        🔗 《C语言趣味教程》👈 猛戳订阅!!! \\\"我们先来思考一个富有哲学性的问题,人类的本质是什么?我们知道,人类的本质就是复读机!那复读机的本质又是什么?复读机的本质就是循环!本章的主题就是循环,我们来好好研究研究,还是和上一章一样,我们先介绍

    2024年02月03日
    浏览(56)
  • 【Python】循环语句 ② ( while 嵌套循环 | 代码示例 - while 嵌套循环 )

    while 嵌套循环 就是 在 外层循环 中 , 嵌套 内层循环 ; while 嵌套循环 语法格式 : while 嵌套循环 也是基于 空格缩进 , Python 中基于 空格缩进 判定代码逻辑的层次关系 ; 外层循环 的 循环操作 前面有 四个空格缩进 , 内层循环 的 while 和 循环条件 所在的语句 前面有 四个空

    2024年02月06日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包