亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> VHDL
如何在 VHDL 中使用循环和退出

在之前的教程中,我们学习了如何使用 wait for 来延迟时间 陈述。我们还了解了流程循环。我们现在知道,如果我们放任不管,进程“线程”将永远在进程内循环。

但是,如果我们只想在流程开始时做某事怎么办?然后在最后循环一些其他代码?可以使用 loop 创建 VHDL 中最简单的一种循环 声明。

这篇博文是基本 VHDL 教程系列的一部分。

简单循环的语法是:

loopend loop; 

这样的循环将无限期地持续下去,或者直到 exit; 遇到了。 出口 语句可用于跳出任何循环。

锻炼

这个视频教程教你如何创建一个简单的循环,以及如何打破它:

我们在本教程中创建的最终代码:

entity T03_LoopTb isend entity;T03_LoopTb isbegin process isbegin process is begin report "Hello!";循环报告“躲猫猫!”;出口;结束循环;报告“再见!”;等待;结束流程;结束架构;

当我们在 ModelSim 中按下运行按钮时,输出到模拟器控制台:

VSIM 2> run# ** Note:Hello!# Time:0 ns Iteration:0 Instance:/t03_looptb# ** Note:Peekaboo!# Time:0 ns Iteration:0 Instance:/t03_looptb# ** Note:再见!# 时间:0 ns 迭代:0 实例:/t03_looptb

分析

在模拟器中运行最终代码时,我们看到第一个“Hello!”被打印到 ModelSim 控制台。然后,“躲猫猫!” loop; 之间 和 end loop; 被打印。在下一行,程序点击了 exit; 语句,导致程序跳出循环。最后,“再见!”被打印。在此之后没有更多的事情发生,因为程序在 wait; 上永远暂停 声明。

我们可以从打印输出的时间戳中看到,一切都发生在 0 ns 模拟时间。正如我们从上一个教程中学到的,除了 wait 语句消耗零时间。

外卖

转到下一个教程»


VHDL

  1. 生成语句去抖动示例
  2. 过程语句 - VHDL 示例
  3. 如何在 VHDL 的进程中使用过程
  4. 如何在 VHDL 中使用过程
  5. 使用 PSL 在 VHDL 中的形式验证
  6. FPGA 和可编程逻辑简介