我在 SystemVerilog 中创建了一个设计模型。它使用定点数学。模块的一些顶级参数用于指定在模块内进行计算时使用什么缩放因子。这会影响预定义常量的值以及如何执行缩小操作和舍入。
现在我有多个预定义常量,然后使用 if..else.. 块根据参数值选择其中一个。有多个不同的函数几乎完全相同,除了它们在计算过程中使用的常量以及如何缩小结果。
我的问题是,是否可以将顶级测试台模块参数传递到包中并使用它来选择常量应具有的值,即使用测试台顶级模块参数对包进行参数化?
我来自 VHDL 背景,`if 与 #if 让我感到困惑。此外,我不确定我尝试做的事情是否可在 SystemVerilog 中使用测试平台模块顶级参数实现。