正如标题中所述,结构Verilog和行为Verilog之间的主要区别是什么?
发布于 2013-03-28 21:04:22
根据IEEE标准,这些术语没有严格的定义。但是,通常情况下,structural指的是使用模块实例描述设计(特别是对于较低级别的构建块,如AND门和触发器),而behavioral指的是使用always块描述设计。
Gate网表通常是structural,而RTL代码通常是behavioral。RTL通常具有时钟门和同步器单元的实例。
发布于 2015-11-06 13:59:15
Structural
这里的功能是使用诸如反相器、多路复用器、加法器、解码器、基本数字逻辑门等基本组件来定义的。这就像连接和排列可用于实现功能的电路的不同部分一样。
行为
是Verilog语言中的行为描述,用来以算法的方式描述设计的功能。Verilog中的行为建模使用类似于C语言构造的构造。此外,这被分成两个子类别。
数据到输出的
分配是连续的。这将使用显式的"assign“语句来实现,或者通过在声明过程中为连接赋值来实现。在赋值的情况下,输入的任何变化都会立即影响输出。因此,输出将声明为
wire
Procedural
这里的数据分配不是连续执行的,而是在敏感度列表中指定的特定事件上执行。这种类型的建模方案是使用诸如“always”或"initial“之类的过程块来实现的。
这里,输出变量必须定义为reg,因为它们需要保持以前的值,直到在指定的敏感度列表中发生任何更改后发生新的赋值。
希望这能有所帮助:)
发布于 2016-07-26 18:47:56
结构化Verilog通常被称为Verilog代码,它是可综合的(具有准确和有意义的硬件实现),并且通常以寄存器传输级(RTL)编写。另一方面,行为Verilog通常是更高级别上的硬件或功能的行为描述。行为代码不必是可综合的例如,当您在按时间尺度缩放的verilog代码中定义延迟时,合成器在将您的代码转换为逻辑和硬件时不会考虑它,而是具有模拟目的。结构和行为VHDL也是如此。
https://stackoverflow.com/questions/15681218
复制相似问题