◆ H8 & SuperH, RX, RL78 GNU gcc-4.7 開発環境構築 on MacOS X 10.4 作成2013.08.18 更新2024.05.19 《 RX-gcc-8.3.0 を MacOS X 10.9.5上に構築 & RAマイコン関係 作成2022.11.19 》 |
||||||||||||||||||||||||||||||||
▼ H8 & SH-2 Writer Soft ▼ MacOS X 通信ターミナルソフト | ||||||||||||||||||||||||||||||||
▼ MacOS 10.9.5での GNU gcc-8.3 & Binutils-2.36による RXv1~v3コア・マイコン開発環境を構築できました。Linux OS上ではMacOSよりもパス関係やライブラリー関係が簡単にコンパイルが可能です。 gcc-8.3のMacOSバイナリ・コードはこちらから MacOS RX-gcc-8.3をダウンロードできます。gcc-8.3のMacOSバイナリ・コードは /Usersの上位に配置しないとライブラリーのリンクができません。国産のRXv1& RXv2,RXv3コア・RX66T&RX72N, RX72T, RX671マイコンを活用しましょう。2022.11.19 ARM系のクロス・コンパイラーはMacOS(Darwin)よりもUbuntuのほうが相性がよいようであり、もっと早く、MacOSからUbuntu20.04へ移行すべきであったようである。2024.01.03 安定な動作のUbuntu関係のページ 種々のコア・人工知能TinyML-RunTimeベンチマークはこちらのページです。 ▼ MacOSでRA系 Cortex-M33マイコンのファーム・ウェアー開発 作成 2023.01.15 MacOS上でRA6M4マイコンのfirmeware softを制作しているが、通信関係とタイマー関係の割込処理が動作するようになった。ルネサスRAマイコン関係ではgcc関係の情報が殆どなく純正コンパラーの情報が多くソフト開発環境を構築するのが大変であった。 ▼ MacOSでRA Cortex-M33マイコンのファーム・ウェアー開発 作成 2022.11.19 MacOS上でRA6M2 & RA6M4マイコンのファーム・ソフトをarm-gccでコンパイルしたが、割込ベクター関係が動作しない。H8 & SH2 系ではARMのNVIC機能が訳の分からない複雑なレジスタ関係の設定がなく、ユーザー説明書を入念に読むことで悩むこともなかった。 ◆ MacOSでx68kマイコン・エミュレータ 作成 2022.11.18 MacOS上で懐かしいX68000のエミュレータpx68kソースコードをコンパイルし動作を確認しました。
PowerPC・Macの68kエミュレータは最適化がよく十分な性能でしたので、px68kも最適化すれば高速となるでしょう。
※-1 68kのSRAMをPIC32エリアへ配置しているため、実行速度がPIC32のI/Oポートに依存するため期待した性能とならないようです。 2023.10.21 ◆ 68k->PowerPC・Amiga OSが健在 作成 2024.05.19 68k上で動作するAmiga OSのApollo V4+ Boardが販売されており、そのスペックが68080/250MHz & 68030 / 1GHzと驚きであり、その価格が10万円程度です。68080/250MHzボードの68080・SoCはFPGAを利用しており、68030 / 1GHzボードに興味があります。68kコアも5nm程度のプロセス製造で製作すればかなり高性能となることでしょう。 2024.05.19 ◆ Linux上でRXマイコン・ソフト開発 作成 2022.09.28 PuppyLinux上でRXマイコン・ソフト組込み関係のクロス・コンパイラー環境構築はこちらのページです。 ▼ MacOS X 10.4.9での GNU gcc-4.7による H8 や H8SX, RL78, RXコア, 最新のSH-2A,SH-4A マイコン開発環境を構築できました。LinuxやFreeBSD, Windows, MacOSX(Intel系)では、既に他のサイトで整えられていますが、 MacOS X(PPC系)では少ないようです。2013.08.18 旧 H8 & SH MacOS X 10.2 GNU gcc 開発環境for MacOSX 10.2 のヘージはこちらです。 弊社で開発したH8SX MCU Board ▼ MacOS X のUINXはご存じのとおりBSD系であり、BSD系でのコンパイル可能なアプリケーションや開発Toolは殆ど利用可能です。H8 & RL78, RX, SuperH GNU gccの開発環境を整いた結果、MacOS Xのディフォルトの状態ではコンパイルが失敗した為、オープンソースUINXコマンドで試みましたところ全てのGNU gcc Sourceをコンパイルできました。 PowerPC(PPC)系のMacOS X 10.4.9上でGNU gcc によりH8や最新版のSH2Aのファームウェアを開発しましょう・・・。 ▼ 入手すべきSource Files, Object Files、及びTools Soft Apple社のDevelopment Toolsが必要です、MacOS Xのパッケージを購入すれば、 そのCD-ROMの中に開発Toolsが入っています。 GNU gcc 関係 Source : ▼ make手順の準備 MacPorts-2-2.0.3 install MacPorts-2.0.3 Tigger 版必要。 ▼ H8 GNU gccのmake手順 cd gmp-5.0.4 sudo make sudo make install cd mpfr-3.1.0 sudo ./configure ABI=32 --prefix=/h8_gcc47/lib_gmp_mpfr/mpfr-3.1.0 --with-gmp=/h8_gcc47/lib_gmp_mpfr/gmp-5.0.4 sudo make sudo make insatll cd mpc-0.9 sudo ./configure ABI=32 --prefix=/h8_gcc47/lib_gmp_mpfr/mpc-0.9 --with-gmp=/h8_gcc47/lib_gmp_mpfr/gmp-5.0.4 --with-mpfr=/h8_gcc47/lib_gmp_mpfr/mpfr-3.1.0 mpc configure の 11271 行 as_fn_error $? "GMP version >= 4.3.2 required" "$LINENO" 5 をコメントに変更 sudo make sudo make install mkdir -p /h8_gcc47/binutils sudo ../binutils-2.22/configure --prefix=/h8_gcc47/ --target=h8300-elf --disable-nls --disable-shared --disable-dependency-tracking --disable-werror --with-gnu-as --with-gcc --with-gnu-ld --enable-lto --enable-plugins --enable-poison-system-directories sudo make CC='cc -no-cpp-precomp' CFLAGS="-O2 -fomit-frame-pointer" all sudo make install sudo tar xvf newlib-1.20.0.tar export PATH=/h8_gcc47/bin:$PATH --> パス指定しないとmake error となる。 sudo mv newlib-1.20.0 /h8_gcc47/ --> new-lib を指定しないとコンパイルが止まる sudo mkdir -p gcc cd gcc CFLAGS="-O2 -pipe" CFLAGS_FOR_TARGET="-O2" LDFLAGS_FOR_TARGET="" sudo ../gcc-4.7.0/configure --target=h8300-elf --prefix=/h8_gcc47/ --enable-languages=c --with-gnu-ld --with-gnu-as --with-gnu-gcc --enable-multilib --enable-threads=single --disable-nls --disable-libmudflap --disable-libssp --enable-poison-system-directories --enable-interwork --disable-dependency-tracking --disable-debug --disable-libgomp --disable-libstdcxx-pch --with-gmp=/h8_gcc47/lib_gmp_mpfr/gmp-5.0.4 --with-mpfr=/h8_gcc47/lib_gmp_mpfr/mpfr-3.1.0 --with-mpc=/h8_gcc47/lib_gmp_mpfr/mpc-0.9 --with-newlib --with-headers=/h8_gcc47/newlib-1.20.0/newlib/libc/include sudo make CC='cc -no-cpp-precomp' CFLAGS="-O2" all sudo make install export PATH=/h8_gcc47/bin:$PATH --> パス指定しないとmake error となる。 sudo mkdir -p newlib cd newlib sudo ../newlib-1.20.0/configure --target=h8300-elf --prefix=/h8_gcc47/ sudo make CC='cc -no-cpp-precomp' CFLAGS="-O2" all sudo make install 完了。 ▼ 高性能なSuperH も同様な手順です。ディリクトリーh8_gcc47をsh_gcc47に変更し、--target=h8300-elfを--target=sh-elfに変更すればコンパイルできます。 ▼ 高性能なRXコア も同様な手順です。ディリクトリーh8_gcc47をrx_gcc47に変更し、--target=h8300-elfを--target=rx-elfに変更すればコンパイルできます。 ▼ 低消費電力の点では実用的なRL78コアも同様な手順です。gccはKPIT v12.02の binutils-2.23.1, gcc-4.8.0 newlib-1.19.0を利用し、ディリクトリーh8_gcc47をrl78_gcc48に変更し、--target=h8300-elfを--target=rl78-elfに変更すればコンパイルできます。 ▼ 他のARM及びPowerPC, 68K, MIPS, ColdFire, Blackfin, V850, x86 コアなどのCPUのクロス開発環境もMacOS Xで構築が可能です、是非トライされてはいかかでしょうか・・・。'14.02.14 更新 ▼ SH-2AコアはARMよりも格段に高性能 2014.11.12 更新 SH2Aコア内のFPU性能は、Whetstone ベンチマーク・テストで他のARM系や8 MCUと比較し格段に高性能です。 Whetstoneで浮動小数点演算ベンチマーク・テストはこちらのページです。 ▼ H8SX & 最新のSH2A, SH4Aマイコンのソフト開発の注意点 MCUである最新のH8SXコアや最新のSH2A, SH4Aコアはgcc-3.1〜3.4でコンパイルしたコードでも問題なく動作します。しかし、最適化時には、H8, SH2, SH4コアの実行コードを吐き出しますので本来の性能を発揮できません。gcc-4.0以降を利用することが妥当でしょう。 ▼ H8&H8SXのソフト開発の注意点 H8&H8SXのI/Oポートは8bits か16bitsでのアクセスであるが、gccでコンパイルすると最適化がよくありません。従ってインライン・アセンブラでI/Oポート関係はBSET, BCLR, BTSTなどのビット操作命令コードで8bitアクセスするよう、又はMOV.Wなどの命令コードで16ビットでアクセスするようコーディングすると高速に動作します。 近年、gccは32bit CPU用に最適化されているようであり、8bit CPUへは最適化が不充分なようです。この点はインライン・アセンブラで十分対応できます、gccのインライン・アセンブラは結構良くできており、C言語の変数とアセンブラのレジスターとの受け渡しもできるためコーディングには困らないでしょう。 ▼ SuperHコアとARMコアに関して 2013.08.27 近年、ARMコアを実装したMCUが増えており、国産であるSuperHコアの新製品の発表が停滞しているように思える。ルネサス社のRZ-A1xシリーズはARM Cortex-A9コア,大容量 SRAM 3〜10Mバイト, LCD I/F等の豊富な周辺回路と魅力的なMCUです。SH4AコアでもCortex-A9コアと同等な性能であり、SH4Aコアを採用したRZ-A1xシリーズのようなMCUを開発するようルネサス社には期待したい。 組み込みマイクロ・コントローラ MPU & MCU関係のヘージはこちらです。 ▼ H8 & SHマイコンのフリーのH8writerが公開されていますので、MacOS Xのターミナルで使用できるようコンパイルしました。実行オブジェクト・ファイルh8writerをダウンロードして利用して下さい。'05.03.06 使用方法は下記のとおりです。 %ls /dev 認識しているUSB-RS232C変換ケーブルのドライバーを確認 %h8writer -3052 test.mot /dev/cu.USA28X3b1P1.1 とコマンド入力する。 書き込みが開始します。 対応CPU : H8/ 3048, H8 / 3664 , H8 / 3067, H8 / 3068, H8 / 3052, H8 / 3064, 尚、MacOS Xにも対応Kyspan等のUSB / シリアル変換アダプターやPL-2303チップ実装のアダプターを使用すれば、エミュレータ・ソフトのSoftWindowsやVirtualPCでH8&SH-2などのDOS用Flash-ROM Writer Softを使用しソフトの書き込みが可能です。 ▼ MacOS X対応のターミナル通信ソフトmactermを公開しますので、ご利用下さい。'05.03.06 使用方法は下記のとおりです。 %ls /dev 認識しているUSB-RS232C変換ケーブルのドライバーを確認 %macterm /dev/cu.USA28X3b1P1.1 とコマンド入力する。 %macterm -? ヘルプで使用法を確認し使用して下さい。 %ESCキーを押した後、'X'キーを押すとHexでデータ表示。 %ESCキーを押した後、'N'キーを押すと10進数でデータ表示。 %ESCキーを押した後、'Q'キーを押すと終了。 若干バグがあるかもしれません、バグを発見しましたらお知らせ下さい。 ◆ H8 GNU gcc関係のリンク・ページ KPIT社のH8&H8S ,SH gcc ページ http://www.kpit.com/products/faqh8.htm ◆ コンピュータと制御関係のページ 制御関係のコンピュータとリアルタイムOS関係はこちらのページです。 組込みMPU関係のページはこちらです、又自動制御システム関係はこちらのページです。 MacOS X & X serve関係のページはこちらです。 弊社の製品 弊社の低価格なボード・ソフト製品一覧 ◆ このページへはご自由にリンクして下さい、その際Eメールでご感想などをご連絡戴ければと思います。
|
||||||||||||||||||||||||||||||||
◆ 他のホームページは Google で検索して下さい、弊社のページはそれぞれのリンク先をクリックして下さい。
◆ リンクページ ◆ リスクファィブ(RISC-V)関係 ◆ 他リンクページ ◆ PowerPC関係のページ ◆ 自動制御システム構築や制御ネットワーク構築などで困っておられましたら是非とも弊社にご連絡下さればご相談は無料で受け付けております。
E-Mail :こちらをクリックして下さい。 ◆ 弊社では、自動制御システムのハードとソフト関係で約32年の経験があります。 ◆ このページについて皆様からのご意見、或いはご要望などがありましたら、是非下記へメールでご連絡下さい。
|
||||||||||||||||||||||||||||||||