MIPSはこの先生きのこれる事が出来るか [無断転載禁止]©2ch.net
90年代後半にゲーム機で席巻するも00年代後半に猛烈なARMの巻き返しを受け
風前の灯のMIPSアーキテクチャを語るスレ ))())(()))))(())()((((()))()(())(((((()))()()))()))()())(((()((()))))(()((((
()())()(()())((()(((((((())))))))()))))))))(()(()()()(()(((()()(())))(((())(
(((()))))))())())()(((()())())())((((()))))(()((())(()()())(()))(()))((((()(
)())))(()))()(())(()))(((())())(())())()((())())(((()())(())((()(()(()((()))
)))())(()(())(()((()())((()(((()()()())(((()())))))))))()((())())(()((()))((
)())())(())(((((()()()))))))()((())()()()(()((())()()))))()))(()(()(((((())(
)()(()()()())(()((((()(())())())))()()()()()((())())())(())()))(()))()(((()(
((()))())(()()())(((()(())(()((()))(())(())()))()))(()(()(()))())())()(((())
((()())())((()(()))))))))(()()((())()(()())))())(((((())())(((((((()()()))))
()(()))(((()))())())(()))((())()(()()()()))))())))(((()(((((()))((()(()))()(
((())))))(()()))))((()()()(((()(()()))()())(()))()((((())(()())()((())()(())
)()(()())(()(()((()()))))()())())((((()()((()()()())))))(()()())((()()((()))
((())(()(((())(()(())))()))(((())())))())()()()))()(()(()))((()))())(((()()(
((()()()())))(((())()()(()()((((())(()()))((())))(())))))))())()()((((((()))
()())(()())()()((((((((()(())(()())))(())()()))((())(()())()(())))())()()())
(())())(()))(((()())())(((()()()(())))((()))())(())))((()))()()(()((()))(()(
)())))))))()()(()(((()))()))))((()))((())(()()(()))(()(()()((((()()(()(())((
))()(())(())(())(((())))))))))()))(((((()())))((())))(()(()(((())((()((()()(
))(())()))())(())())))())(()(())))())((((((()()(((((())()(()()(()(())))(()()
))(((())))())(()()(((())()))()))(((()()))((())(())(())(())(())((()()((()()))
()))()()))(()(()))()(())((((()()(())))))())(())((()())))())((()()()(((())(((
()(((()())()())())()((()()(()()(()()))))(()())()()))()())((()(((()()()()))()
((()))))))((()())((()(())(()()))(()())((()))))())(((()()()()()(((()()(()))()
)())((())(()))()()(())())(()))()()))(((()(())(((())((()))(()()))()((((()()))
())))()())(())(())(())))())()(()()(((()()(()(()())(((()((())())()(()()(())))
(()))))))(())())(())(()())())()())()()()(()())((((())()(()())()(((())(((())(
()))()()))((()))))))())(((()(()()())(((()(()((())))))(()(((()()()())))((()((
()()()()()))))()()())(((())(())())()))((())())())(()())((())()((())(((())(((
()(()()))))()()()(((((()()))())())((())))))((()))()))()(()))(()(((())(()((((
)(()()()((())))((((((())()()()()(()))(()((()())())()()())))(((((()))))())())
)))(())(()((()((()((()(((()(()())))(()))))))()(()())())(()()(()())())))((()(
((()((((((()()()(()())))())(())(()))((()())()((())))))()((()))()(()))))(())(
)()())()()((()(()()))()))))(()()())()))))()((()))((()())(())()(((()())((((((
()()())((())())(((())))(()(()(())))()()())()(())(((()((()()))))(())))()()(((
((()))((()()))))())))((()))()()()(((((())()))(())()(((((())((()(())(()()))))
()()(())()(()()(()())(())())())()(()))())(((())(())))()()()()(()((()()))()((
())((()()()())()(())((()())()(()))()(()()()))(()))())()(()(((())((((())())))
()()()(()()((()(())())())()())()((())()()()()())((()()))()(()(()(()))(()()))
())())()())())((((((()((())()(()())))))()())(()))())()()()(()(())))(((())(((
(()()))((())(())())))))(()()()())(()((((())(()())()())))))(())((()(()()()(((
())())(()(()()((((())())((()((((())()())))))((()))))))(((())()())(()(()())()
))()()))((((()()())())(((()()(()())))((((())((()))(()(()())))()())((()())())
)()(()))))()()))(()))())(((())((()())))()()())(()()()))))((((()((()(())(((((
(())(())))(()))())((()))))(())((())((()(())()())()(())))()()()()((((()((())(
(())()))()(())((()()())(()())())())(()(())(()()(()))(())()((((()()()())))(()
)())()()((())))())))(()()))((()(()((())(((((((()(((()())())((())()))()()))))
)()()))(((())(()()((())()))(()()(()(())((()((((()))))((()((()())))))()(())))
))()()()(((((()((()))()()()())()())))))))()()()(())))))(((()))(((((()(())(((
)))()()(())))(())))))((((()()))))))(()(((()())()(()(()))()((((())((((()()()(
(())))))((()))()())((()(((())(()())(()))(()()))()((()()()()((()(())(()())))( 安物ルーターはまだMIPSだろ。onion-omegaもMIPSだ ARMはオプソないけど
MIPSはあったような希ガス
あるいは来世巣やすいとか >>6
PIC32もMIPS
小規模な構成ならMIPS の方がシンプルで向いてると思う。 >>8
秋月のPIC32MXのページだが、どのPIC32MXも
AAAのマークが付いてる
秋月では人気商品の一つなのだろうな
http://akizukidenshi.com/catalog/c/cpic32/ PIC32MXはM4Kコア
PIC32MZ、PIC32MMはmicroAptivコアでMIPS32の他にmicroMIPS命令にも対応
PIC32MZ EFはM5150コアでFPU付きでMIPS32の他にmicroMIPS命令にも対応
microMIPSは16bit長の命令と32bit長の命令混在の命令セットでコード密度が高いのが特徴 MIPS、新プロセッサコア「Aptiv」ファミリーを発表
http://pc.watch.impress.co.jp/docs/news/535532.html
M-Class M51xxコアファミリ
http://jp.imgtec.com/mips/warrior/mclass.asp
Imagination、初のMIPS Series 5プロセッサ“Warrior”を製品化
http://pc.watch.impress.co.jp/docs/news/619415.html
Imagination、6コア/24スレッド対応の64bit MIPS CPU
http://pc.watch.impress.co.jp/docs/news/665222.html
イマジネーション・テクノロジーズ、MIPS製品ファミリの新製品「M6200、M6250、P6600」を発表
高性能組み込みアプリケーション向け32ビットCPUと、
最上位の64ビット・プロセッサを追加し、さらに充実したCPU IPポートフォリオへ
http://jp.imgtec.com/news/detail.asp?ID=636 Cavium Networks、最大32コアとなるOCTEON IIを発表
http://news.mynavi.jp/news/2010/05/19/008/
64ビットMIPSアーキテクチャが、Caviumの新OCTEONR IIIプロセッサで低消費電力・高スループット処理を実現
http://jp.imgtec.com/news/detail.asp?ID=625 >>9
基準が秋月www
趣味の電子工作で売れる分なんて誤差だよ >>14
Microchip社、8ビットマイクロコントローラの 売り上げランキングで再びトップに
http://news.infoseek.co.jp/article/dreamnews_0000111737/
>また、32ビットMCUでは42.3%の成長を達成し、
>32ビットMCUサプライヤ トップ10入りを果たしました。 他のメーカーは16bitに移ってるから
トップ10てwww
つまりダメダメってことだ ルネサスはRL78に統合したからな
PICの8bitとじゃパフォーマンスは大違い >>19
作っているところを見ると趣味で収まらない用途があるんだろうね。
片面基板にフロー半田で32ビットってどれぐらいの用途があるんだろう。
モーター制御あたりなのかな。 他のメーカーが作ってないんで、ごく限られた用途しかないのは確か 低密度の安い基板を使う用途だろうけど、大型家電とか? デンソーはMIPSで行くらしい
デンソーはトヨタのグループ企業でルネサスの大株主の中の一社でルネサスの顧客企業の一つでもある
日本電産がルネサスを買収しようとしたのをトヨタと一緒に横槍を入れて止めさせたくらいの影響力はある
モノが出てないのでまだどうなるかわからないけど
デンソー、自動運転に向けたCPUのマルチスレッド技術で英企業と共同研究
https://japan.cnet.com/article/35092144/
デンソーが自動運転でMIPSコアを選んだ理由
http://techon.nikkeibp.co.jp/atcl/news/16/110704910/?rt=nocnt MIPS Release 6はCodescape MIPS SDK Essentialsで試せる
Codescape MIPS SDK Essentialsといってもgcc、g++、gfortran
それとqemuも付いてるからコンパイルしたプログラムをqemu上で実行することも可能
Download Codescape MIPS SDK Essentials
https://community.imgtec.com/developers/mips/tools/codescape-mips-sdk/download-codescape-mips-sdk-essentials/
Codescape GNU Tools for MIPS IMGはMIPS Release 6用
Codescape GNU Tools for MIPS MTIはMIPS Release 5とそれ以前用
LinuxでのCodescapeのインストールの仕方は
http://codescape-mips-sdk.imgtec.com/installer/essentials/release/CodescapeMIPSSDK-1.4.1.07/CodescapeMIPSSDK-1.4.1.07-linux-x64-installer.run
をダウンロードして
chmod u+x CodescapeMIPSSDK-1.4.1.07-linux-x64-installer.run
sudo ./CodescapeMIPSSDK-1.4.1.07-linux-x64-installer.run
これでインストーラーが走る
コンパイル方法
export PATH=/opt/imgtec/Toolchains/mips-img-linux-gnu/2016.05-03/bin:$PATH
mips-img-linux-gnu-gcc -EL -march=mips64r6 -mabi=64 -O2 -o hogehoge hogehoge.c
mips-img-linux-gnu-g++ -EL -march=mips64r6 -mabi=64 -O2 -o hogehoge hogehoge.cpp
mips-img-linux-gnu-gfortran -EL -march=mips64r6 -mabi=64 -O2 -o hogehoge hogehoge.f
注意:-ELはリトルエンディアンの指定、ビッグエンディアンなら-EB
qemuでの実行方法
こんな感じのシェルスクリプトを書いて実行
qemu-mips64el.sh
#!/bin/bash
export LD_LIBRARY_PATH=/opt/imgtec/Toolchains/mips-img-linux-gnu/2016.05-03/mips-img-linux-gnu/lib/mipsel-r6-hard/lib64
/opt/imgtec/Simulators/qemu/2.5.0.2.0/bin/qemu-mips64el -cpu MIPS64R6-generic -L /opt/imgtec/Toolchains/mips-img-linux-gnu/2016.05-03/sysroot/mipsel-r6-hard $1
注意:ビッグエンディアンならqemu-mips64を使用する
実行権の付加
chmod u+x qemu-mips64el.sh
実行
./qemu-mips64el.sh hogehoge
32bitなら
コンパイル
export PATH=/opt/imgtec/Toolchains/mips-img-linux-gnu/2016.05-03/bin:$PATH
mips-img-linux-gnu-gcc -EL -march=mips32r6 -mabi=32 -O2 -o hogehoge hogehoge.c
mips-img-linux-gnu-g++ -EL -march=mips32r6 -mabi=32 -O2 -o hogehoge hogehoge.cpp
mips-img-linux-gnu-gfortran -EL -march=mips64r6 -mabi=32 -O2 -o hogehoge hogehoge.f
qemu-mipsel.sh
#!/bin/bash
export LD_LIBRARY_PATH=/opt/imgtec/Toolchains/mips-img-linux-gnu/2016.05-03/mips-img-linux-gnu/lib/mipsel-r6-hard/lib
/opt/imgtec/Simulators/qemu/2.5.0.2.0/bin/qemu-mipsel -cpu mips32r6-generic -L /opt/imgtec/Toolchains/mips-img-linux-gnu/2016.05-03/sysroot/mipsel-r6-hard $1 MIPS Relase2の場合
コンパイル方法
export PATH=/opt/imgtec/Toolchains/mips-mti-linux-gnu/2016.05-03/bin:$PATH
mips-mti-linux-gnu-gcc -EL -march=mips64r2 -mabi=64 -O2 -o hogehoge hogehoge.c
mips-mti-linux-gnu-g++ -EL -march=mips64r2 -mabi=64 -O2 -o hogehoge hogehoge.cpp
mips-mti-linux-gnu-gfortran -EL -march=mips64r2 -mabi=64 -O2 -o hogehoge hogehoge.f
注意:-ELはリトルエンディアンの指定、ビッグエンディアンなら-EB
qemuでの実行方法
こんな感じのシェルスクリプトを書いて実行
qemu-mips64el.sh
#!/bin/bash
export LD_LIBRARY_PATH=/opt/imgtec/Toolchains/mips-mti-linux-gnu/2016.05-03/mips-mti-linux-gnu/lib/mipsel-r2-hard/lib64
/opt/imgtec/Simulators/qemu/2.5.0.2.0/bin/qemu-mips64el -cpu MIPS64R2-generic -L /opt/imgtec/Toolchains/mips-mti-linux-gnu/2016.05-03/sysroot/mipsel-r2-hard $1
注意:ビッグエンディアンならqemu-mips64を使い、ライブラリ指定のmipsel-r2-hardのところをmips-r2-hardに変更
実行権の付加
chmod u+x qemu-mips64el.sh
実行
./qemu-mips64el.sh hogehoge
32bitなら
コンパイル
export PATH=/opt/imgtec/Toolchains/mips-mti-linux-gnu/2016.05-03/bin:$PATH
mips-mti-linux-gnu-gcc -EL -march=mips32r2 -mabi=32 -O2 -o hogehoge hogehoge.c
mips-mti-linux-gnu-g++ -EL -march=mips32r2 -mabi=32 -O2 -o hogehoge hogehoge.cpp
mips-mti-linux-gnu-gfortran -EL -march=mips64r2 -mabi=32 -O2 -o hogehoge hogehoge.f
qemu-mipsel.sh
#!/bin/bash
export LD_LIBRARY_PATH=/opt/imgtec/Toolchains/mips-mti-linux-gnu/2016.05-03/mips-mti-linux-gnu/lib/mipsel-r2-hard/lib
/opt/imgtec/Simulators/qemu/2.5.0.2.0/bin/qemu-mipsel -cpu 24Kf -L /opt/imgtec/Toolchains/mips-mti-linux-gnu/2016.05-03/sysroot/mipsel-r2-hard $1
補足:最新の命令を試したければ24KfのところをP5600に変更
microMIPSを試したければ24Kfのところをm14kcを指定(ライブラリの指定はmipsel-r2-hardのところをmicromipsel-r2-softに変更)
コンパイル時に-mmicromips -msoft-floatの指定を追加する(m14kcはFPUを持ってないのでsoft-floatにしないとエラーになる)
/opt/imgtec/Simulators/qemu/2.5.0.2.0/bin/qemu-mipsel -cpu ?
こうするとQEMUが対応してるCPUの一覧が表示される ちなみにCodescape MIPS SDK Essentialsは全部入れると8GBくらいになります アセンブラソースとリスティングファイルも出したいときはこんな感じ
mips64r6の場合
mips-img-linux-gnu-gcc -EL -march=mips64r6 -mabi=64 -O2 -S -o hogehoge.s hogehoge.c
mips-img-linux-gnu-as -a=hogehoge.lst -EL -march=mips64r6 -mabi=64 -o hogehoge.o hogehoge.s
mips-img-linux-gnu-gcc -EL -march=mips64r6 -mabi=64 -o hogehoge hogehoge.o
mips32r6の場合
mips-img-linux-gnu-gcc -EL -march=mips32r6 -mabi=32 -S -o hogehoge.s hogehoge.c
mips-img-linux-gnu-as -a=hogehoge.lst -EL -march=mips32r6 -mabi=32 -o hogehoge.o hogehoge.s
mips-img-linux-gnu-gcc -EL -march=mips32r6 -mabi=32 -o hogehoge hogehoge.o
mips64r2の場合
mips-mti-linux-gnu-gcc -EL -march=mips64r2 -mabi=64 -O2 -S -o hogehoge.s hogehoge.c
mips-mti-linux-gnu-as -a=hogehoge.lst -EL -march=mips64r2 -mabi=64 -o hogehoge.o hogehoge.s
mips-mti-linux-gnu-gcc -EL -march=mips64r2 -mabi=64 -o hogehoge hogehoge.o
mips32r2の場合
mips-mti-linux-gnu-gcc -EL -march=mips32r2 -mabi=32 -S -o hogehoge.s hogehoge.c
mips-mti-linux-gnu-as -a=hogehoge.lst -EL -march=mips32r2 -mabi=32 -o hogehoge.o hogehoge.s
mips-mti-linux-gnu-gcc -EL -march=mips32r2 -mabi=32 -o hogehoge hogehoge.o