AR# 15254

|

8.1i CORE Generator - メモリ コアの COE の base-10 フォーマットでの負の数値の使用について

説明

CORE Generator の RAM\ROM 係数ファイルでは、.coe ファイルを base-10 (10 進数) フォーマットに設定した場合に負の値を使用できません。

ソリューション

CORE Generator 8.1i およびそれ以前のバージョンでは、負の値を含む COE ファイがを正しく解析できません。

この問題を回避するには、数値を 2 の補数に変換してから、その 2 の補数の 10 進数バージョンを使用します。 

 

例 : 

 

7 ビットの -10 : (2 の補数) 

 

1110110 

 

フォーマットが 2 の補数でない場合、同じ 2 進数の数値の 10 進数値は 54 になります。 

 

これは、次の数式で決定されます。

 

2*2^(N-1) + 元の値 = 変更した値 

 

これにより、正しい 2 進数フォーマットを達成するために必要な正しい 10 進数値が計算されます。

出力は 2 の補数だと仮定される場合、意図した負の 10 進数値が正しくなります。

 

次のスクリプトを使用すると、MATLAB で .coe ファイルが変換できます。

 

function out = coe_create(t) 

 

for (i=1:length(t)) 

 

if (t(i) < 0 ) 

 

t(i) = t(i) + (2* (2^11)); 

 

end 

 

end 

 

out = t; 

 

MATLAB スクリプトにより値の配列が処理され、正しい値が出力されます。

AR# 15254
日付 08/11/2014
ステータス アーカイブ
種類 一般
ツール
People Also Viewed