【发布时间】:2013-04-04 00:23:05
【问题描述】:
我想知道是否有办法在综合过程中访问entities default generic values 或an entities architectures constants。
这是出于好奇(我想实现类似的东西)。
可能的用例
1) 为默认实体生成Testbench:
entity testme is
generic(outputs:integer:=4);
ports(output:out bit_vector(0 to outputs);
end entity;
在测试台中我需要生成一个可以连接到输出的信号,在不知道泛型值的情况下没有办法这样做。
2) 我想知道我在实例化 Blockram 时使用的实际大小。在 FPGA 上有 Blockram,可以使用固定的 ram 块,如果需要的 ram 多于一个块中可用的 ram,则将多个块组合在一起。随着技术的变化,可用块的大小可以改变。因此,我编写了一个带有两个通用参数 memory 和 technology 的实体,它以尽可能少的 Blockrams 实现我的记忆。这可能会导致内存大于请求。如果我现在有另一个实体需要内存大小来充分利用它(即循环缓冲区控制器),我必须向它提供实际分配的内存大小。
【问题讨论】:
-
我会说您正在以 VHDL 中未预见到的方式看待它,坦率地说,我同意。一般来说,您会将这些值从架构传播到实例,尤其是在 TB 中。你为什么不这样做呢?
-
@BennyBarns:我不能完全关注你。我的想法是瞥见默认值,如果我无法为输出生成适合宽度的信号并在不知道默认值的情况下选择信号,那么多路复用器宽度的默认值有什么用?
标签: vhdl