14.1 XST  – “寄存器平衡”开关导致MAP进程因RAMB36的原因而失败-Altera-Intel社区-FPGA CPLD-ChipDebug

14.1 XST – “寄存器平衡”开关导致MAP进程因RAMB36的原因而失败

描述

当启用XST选项“register_balancing”并且代码中包含RAMB36原语时,MAP中会发生以下错误。

对于非级联块RAM,这些类型的原语需要将地址位[15]连接到“1”,否则MAP将生成以下错误消息:

错误:PhysDesignRules:2378 – 块::上的引脚连接和/或配置问题。
可级联的BlockRam功能不用于端口A(RAM_EXTENSION_A设置为NONE)。
最高阶端口A地址位(ADDRARDADDRL15)必须连接到LOGIC 1

发生这种情况是因为“register_balancing / register_ordering”选项将信号传输到RAMB36原语的引脚[15]。

即使地址通过代码连接到较高值,XST工具也会按如下方式重新排序数据路径:

924359_register_balancing_BRAM [15] .JPG
要解决此问题,请在XST中使用“-keep_hierarchy = soft”或使用以下属性禁用HDL代码中的“register_balancing”选项:

{signal_name | entity_name}:signal | entity}的属性register_balancing为“no”;

请登录后发表评论

    没有回复内容