我已经开始学习SystemVerilog,我正在阅读关于新类型的内容,例如:
由于它们的动态特性,我想知道如何在硬件中实现它们;它们仅仅是为了测试/模拟目的,所以它们从来没有在硬件中实例化过吗?
如果是这样的话,如果必须更改为普通数组来在硬件上运行设计,为什么还要使用这些类型的数组呢?
发布于 2018-08-03 09:48:55
Verilog和现在的SystemVerilog包含两类特性:可综合的和不可综合的。没有固定的标准来定义哪些特性属于每一个大灾难。理想情况下,如果您可以模拟一个特性,您可以找到一种方法来合成它。
一些特性在这两个类别中都有,这取决于它的使用方式。例如,如果您能够静态地(即在编译时而不是在运行时)确定它有多少次迭代,那么for
循环是可综合的。队列或动态数组也是如此--如果可以定义最大大小,则可以在硬件中实现。
https://stackoverflow.com/questions/48856371
复制