Bob*_*Bob 6 recursion configuration vhdl
我希望这是可能的.我希望能够像这样编写递归代码:
entity myEntity
generic (
size : natural -- a power of 2
)
port (
-- whatever
);
end;
architecture structural of myEntity is
begin
smallerEntity : entity component.myEntity(structural)
generic map (
size => size/2
);
port map (
...
);
end;
Run Code Online (Sandbox Code Playgroud)
因此,每个体系结构都会实例化一个较小的版本.在通用"大小"的某个值,我希望有一个不同的实现.
这可以通过配置来完成吗?如果是这样,怎么样?
至于为什么我希望能够这样做 - 所以我可以构建可重复使用的代码来计算FFT/DCT和类似的变换.
您可以在VHDL中使用递归.但是您需要将实例化封装在if-generate语句中.就像是:
recursive_structure : if size/2 > 0 generate
smallerEntity : entity <library_name>.myEntity(structural)
generic map (
size => size/2
)
port map (
...
);
end generate recursive_structure;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3055 次 |
| 最近记录: |