UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 19587

6.2 EDK - MB-GCC 内の計算が適切に行われない

説明

キーワード : EDK, GNU, MB-GCC, Calculation, 計算, 算出

重要度 : 標準

概要 :
次のアプリケーションは、MicroBlaze コンパイラのサポートの限界を示します。

////////////////////////////////
#include "xbasic_types.h"

main()
{
Xuint32 datain;
Xuint32 temp1,temp2,temp3;
Xuint32 dataout;
int i;

datain = 0x123;
for(i=0;i<2;i++)
{
temp1 = datain | 0xF0FFF000;
temp2 = datain | 0xF1FFF000;
temp3 = datain | 0xFFFFF000;
xil_printf("Temp1 = %x ; Temp2 = %x; Temp3 = %x ; Datain = %x\n\r",temp1,temp2,temp3,datain);
datain = datain+1;
}
}
////////////////////////////////

HyperTerminal では、次の行がプリントされます。
Temp1 = F0FFF123 ; Temp2 = F1FFF123; Temp3 = F123 ; Datain = 123
Temp1 = F0FFF124 ; Temp2 = F1FFF124; Temp3 = F124 ; Datain = 124

ここで、Temp3 の値が誤っています。

ソリューション

この問題は、最新版の 6.2 EDK サービス パックで修正されています。サービス パックは次のサイトから入手できます。
http://www.xilinx.co.jp/ise/embedded/edk.htm
この修正は、6.2 EDK サービス パック 2 以降に含まれます。
AR# 19587
日付 04/28/2006
ステータス アーカイブ
種類 一般
このページをブックマークに追加