8.2i EDK  – 随机乘法运算似乎在MicroBlaze中失败了-Altera-Intel社区-FPGA CPLD-ChipDebug

8.2i EDK – 随机乘法运算似乎在MicroBlaze中失败了

问题描述

大多数使用硬件乘法器或硬件浮点单元(FPU)的设计似乎随机失败。

解决/修复方法

此问题是由DSP48或DSP48E中MREG的不正确合并引起的。任何利用硬件乘法器的EDK IP都会遇到这个问题。

要解决此问题,请更改MicroBlaze以使用软件乘法器,或者为Virtex-4设置环境变量XIL_MAP_NO_DSP_AUTOREG或为Virtex-5设置XIL_MAP_NO_DSP48E_AUTOREG,如下所述。

将MicroBlaze更改为使用软件倍增器

1.在XPS的System Assembly View中,右键单击MicroBlaze实例,然后选择Configure IP。

2.在“指令”选项卡转发时,请确保取消选择“启用整数乘数”。

3.按OK按钮。

设置环境变量

视窗

1.右键单击“我的电脑”并选择“属性”。

2.单击“高级”选项卡。

3.单击“环境变量”按钮。

4.选择“新建”按钮(“系统”或“用户变量”)。

5A。 “变量名称:”是XIL_MAP_NO_DSP_AUTOREG。 – Virtex-4

5B。 “变量名称:”是XIL_MAP_NO_DSP48E_AUTOREG。 –Virtex-5

6.“变量值:”为1。

Unix(tcsh)

Virtex-4的

setenv XIL_MAP_NO_DSP_AUTOREG

Virtex-5的

setenv XIL_MAP_NO_DSP48E_AUTOREG

注意:这会影响所有MicroBlaze核心。

ISE 9.1i中已修复此问题。

请登录后发表评论

    没有回复内容