(toppers-users 2584) SH4 FPUの使用方法を教えて下さい。
EIKO SOKKI MATSUMOTO-F
eikomf @ peace.ocn.ne.jp
2007年 4月 4日 (水) 11:08:28 JST
初めて投稿します。
関と申します。GNUの開発環境及びRTOSに関しては素人です。
現在、弊社の制御用ボードにTOPPERSを載せようとしています。
CPUはSH7750Rです。
開発環境はCygwin(1.5.24-2)です。(WindowsXPにインストールしました。)
GNU開発環境はToppersホームページよりダウンロードしたバイナリを使用しています。
最初に’(toppers-users 2544) MS7751RSE01向けにJSP1.4.2ポーティングの紹介’
を参考にやっと割り込み処理、ToppersのAPIの動作確認ができる状態になってきました。
スペースソフトの田中様の記事は大変参考になりました。誠にありがとうございました。
動作確認をしているなかで、浮動少数点の計算が遅いことに気がつきました。
以前は京都マイクロコンピュータのexeGCCを使用しており、FPUが計算して速度が速かったのだと
改めて気が付き、ではFPUをどのようにしたら使えるのかという問題に突き当たりました。
弊社は機械の制御を行っている関係で浮動少数点の計算にFPUはぜひ使用したいところです。
どなたか、開発環境の構築で指針になるものを教えていただけないでしょうか?
*私がトライしてみたこと その1
sh4のコードが出力されていなかったのかな?
Makefile.Configの以下を修正しました。
#
# コンパイルフラグ
#
INCLUDES := $(INCLUDES) \
-I$(SRCDIR)/config/$(CPU)/$(SYS) \
-I$(SRCDIR)/pdic/simple_sio \
-I$(SRCDIR)/pdic/scb3
#COPTS := $(COPTS) -m3 -g
COPTS := $(COPTS) -m4 -g ←ここを変えた。 -m3 を -m4に!
LDFLAGS := $(LDFLAGS)
以下はその時のコンパイル ログ。
undefined reference to `__udivsi3' が出てしまいました。
PC124:/usr/src/jsp/OBJ$ make depend
rm -f Makefile.depend
Generating Makefile.depend.
PC124:/usr/src/jsp/OBJ$ make
sh-hitachi-elf-gcc -c -m4 -g -mb -g -O0 -DMS7751RSE01 -DLABEL_ASM -DNO_SLEEP
-DPARTNER_J -I. -I../include -I../config/sh4/ap7750R -I../pdic/simple_sio -I../
pdic/scb3 -I../config/sh4 sample1.c
sh-hitachi-elf-gcc -m4 -g -mb -g -O0 -DMS7751RSE01 -DLABEL_ASM -DNO_SLEEP
-DP
ARTNER_J -I. -I../include -I../config/sh4/ap7750R -I../pdic/simple_sio -I../pdi
c/scb3 -I../config/sh4 -nostdlib -mb -Wl,-Ttext,0x00000000 -Wl,-Tdata,0x040000
00 -T ../config/sh4/shelf.ld -o jsp.exe \
start.o sample1.o timer.o serial.o logtask.o
log_ou
tput.o vasyslog.o t_perror.o strerror.o kernel_cfg.o libkernel.a -lgcc
log_output.o: In function `convert':
../library/log_output.c:85: undefined reference to `__udivsi3'
libkernel.a(rel_mpf.o): In function `rel_mpf':
../kernel/mempfix.c:291: undefined reference to `__udivsi3'
collect2: ld returned 1 exit status
make: *** [jsp.exe] Error 1
PC124:/usr/src/jsp/OBJ$
*私がトライしてみたこと その2
newlibを使用したい。
newlib-1.15.0を/jsp/newlib-OBJに解凍して、
./configure -target=sh-hitachi-elf -prefix=/usr/local
すると以下のエラーが発生してしまった。
h-hitachi-elf-gcc: file path prefix
`/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/new
lib/' never used
make[8]: *** [lib_a-ldtoa.o] Error 1
make[8]: Leaving directory
`/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/ml/newlib/lib
c/stdlib'
make[7]: *** [all-recursive] Error 1
make[7]: Leaving directory
`/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/ml/newlib/lib
c'
make[6]: *** [all-recursive] Error 1
make[6]: Leaving directory
`/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/ml/newlib'
make[5]: *** [all] Error 2
make[5]: Leaving directory
`/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/ml/newlib'
make[4]: *** [multi-do] Error 1
make[4]: Leaving directory `/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/newlib'
make[3]: *** [all-multi] Error 2
make[3]: Leaving directory `/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/newlib'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/src/jsp/newlib-OBJ/sh-hitachi-elf/newlib'
make[1]: *** [all-target-newlib] Error 2
make[1]: Leaving directory `/usr/src/jsp/newlib-OBJ'
make: *** [all] Error 2
PC124:/usr/src/jsp/newlib-OBJ$
どなたか、開発環境の構築で指針になるものを教えていただけないでしょうか?
以上よろしくお願い致します。
関
mail eikomf @ peace.ocn.ne.jp