68k v.s. x86 Round 4at I4004
68k v.s. x86 Round 4 - 暇つぶし2ch997:ナイコンさん
19/01/02 08:18:24.28 0.net
> メガドラのおかげで値段が一気に下がる前はありえない値段では
> ないと思うんだけど。
少し前のレスも読めないのかよ…
半導体は購入量によって単価の桁が違うとか普通にある

998:ナイコンさん
19/01/02 09:41:22.92 0.net
俺が初めて見た68000は、
亜土電子のショーケース内に化粧箱に入ってた
ジャスト10万円の値札の付いてたやつだった
時代を感じるなぁw

999:ナイコンさん
19/01/02 12:09:54.26 0.net
つまり68kが普及したのはセガのおかげで低価格したからで、
アーキテクチャが優れてたからではないと言いたいのだ。

1000:ナイコンさん
19/01/02 14:07:13.20 0.net
へー、SUNのワークステーションとかってメガドライブより後だったんだ、知らなかったなー

1001:ナイコンさん
19/01/02 14:14:09.22 M.net
時系列完全無視でワロタ
こういう奴が桑田佳祐は米津玄師のパクリ!とか言うんだな
それにメガドラでの採用数なんかamigaやMacintoshに桁で及ばんから
大勢には全く影響あたえとらんよ

1002:ナイコンさん
19/01/02 15:44:19.09 0.net
さすがにMacintoshでの採用数は影響小さくないか?
アレが多く搭載したのって68000よりか、68030とか68040あたりじゃん
030や040の値段への影響は大きかっただろうとは思うけどさ、68000への影響はメガドラほど大きくないのではないか?

1003:ナイコンさん
19/01/02 20:50:23.41 0.net
メガドラ/ジェネソスの方が桁違いに多いだろ。
アミガやマックがメガドラ以上に出てたら、AT互換機に勝ててるわ。

1004:ナイコンさん
19/01/02 21:31:51.80 a.net
>>950
アーキテクチャは優れてないけど数によるコストで押し切ったのは8086系の方がよく当て嵌まるw

1005:ナイコンさん
19/01/02 21:53:45.16 0.net
86系が覇権取れたのってIBM-PCに採用されたからだしなw

1006:ナイコンさん
19/01/03 16:12:02.34 0.net
つまり68kにとってのメガドライブがx86にとってはIBM-PCとPC98だったんだな。

1007:ナイコンさん
19/01/03 18:25:01.13 0.net
単純な話、IBM-PCに68000が採用されていたら(そして他の歴史は変わらずIBM-PC AT互換機が世界的に普及したら)
今日のCPUは68000アーキテクチャの発展形だったろうね

1008:ナイコンさん
19/01/03 19:37:09.62 0.net
しかし所詮セガだったのが運の尽きだったがな

1009:ナイコンさん
19/01/03 19:39:07.67 a.net
68kの


1010:発展形? イメージわかないなぁ。 たぶん040ぐらいからあまり構成かわらないだろうな。 SIMD系の命令実装してマルチコアになって64ビット化してっていう他のプロセッサが辿った道をたどるだろうし。 あとモトローラがPOWERに合流することもなくPowerPCは生まれないぐらい?



1011:ナイコンさん
19/01/03 19:50:35.61 0.net
モトローラは儲かっても半導体の微細化に再投資しなかっただろうな

1012:ナイコンさん
19/01/03 20:43:26.95 0.net
 【 悲 報 】 3.11 か ら 突 然 、 死 亡 者 が 激 増 し て い る !
2008年 12808万人 + 5万 △△△△△
2009年 12803万人 - 5万 ▼▼▼▼▼
2010年 12806万人 + 3万 △△△
2011年 12780万人 -26万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
2012年 12752万人 -28万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
2013年 12730万人 -22万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
2014年 12709万人 -21万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
スレリンク(cm板)

1013:ナイコンさん
19/01/03 20:44:07.29 a.net
低性能でも数売れれば再投資して高性能になるって神話はプロセッサではインテルだけだろ
6502やZ80が80486並みに高性能化してたはずだ

1014:ナイコンさん
19/01/03 20:51:43.24 0.net
その辺りも16bitCPU作ったけど売れなかったから終了しただけだろ
CPUしかないインテルと他にもあるモトローラじゃ確かに優先度は違ったかもしれないが
インテルだけが特別とか寝言か

1015:ナイコンさん
19/01/03 21:08:19.85 0.net
ARMもRISC陣営では下っ端だったじゃん延々金が途絶えないで開発を続けられたからここまで伸びた

1016:ナイコンさん
19/01/03 21:20:21.78 a.net
>>964
65816が売れなかったならどれだけ売れなきゃ売れた事にならないんだよお

1017:ナイコンさん
19/01/03 22:58:18.43 a.net
>>966
数でても商品寿命が短い製品に採用された例が多いとか?
それだったら終了しちゃうのも仕方ないよ。

1018:ナイコンさん
19/01/03 23:28:20.52 0.net
>>960
68kの64bit化って、実は案外メンドクサイ。
大抵の命令でSize指定フィールドを2bit持っているので、BWLと使ってきて
後もう1パターン残っていると思いがちだけど、例えば NEG命令なんかは
Sizeとして未使用のSize=11を指定すると MOVE to CCR命令となってしまう。
他にもざっと見ただけで NEGX/NOTなどもそう。
16bitというと結構な命令数を持てる気がするけれど、意外にビットパターンを
使い尽していたりする(なので命令デコーダも意外に複雑化する)
SIMD命令は…$Axxxが空いているからそこかな…
でも、ARM64みたく、64bitモードはガラガラポンされて、命令のビットパターンを
1から再定義ってあたりが現実的かも。

1019:ナイコンさん
19/01/03 23:35:33.44 0.net
>>966
それってAppleIIGSにスーパーファミコンを足してる?

1020:ナイコンさん
19/01/04 12:33:50.49 a.net
68kの64ビット化って面倒なんだな。
モトローラがPowerPCに乗り換えたのはそのあたりも関係したのかな?

1021:ナイコンさん
19/01/04 12:47:28.96 0.net
Intelの64bitも結局失敗してamd64になった。
amd64の勝因はMSがWindowsの移植が楽だからという理由。バイナリ互換はやはり重要。
ゲーム機ですら旧機種のソフトが動かないとシェアを失う例も多々。

1022:ナイコンさん
19/01/04 12:57:19.01 0.net
>>968
その $Axxx を、64bit用のプレフィックス・ワードにする手があるぞ。
命令長指定に1bit、アドレス長指定に1bitで、少なくとも2bitは必要だな。
D0B9 1234 5678 ADD.L ($12345678).L, D0
A000 D0B9 1234 5678 ADD.L ($12345678).L, D0 ※上と同じ
A010 D0B9 1234 5678 ADD.Q ($12345678).L, D0 ※64bit長命令
A020 D0B9 1234 5678 9ABC DEF0 ADD.L ($123456789ABCDEF0).Q, D0 ※64bit長アドレス、32bit長命令
A030 D0B9 1234 5678 9ABC DEF0 ADD.Q ($123456789ABCDEF0).Q, D0 ※64bit長アドレス、64bit長命令
ついでにレジスタも増やしたい。今時8本では不足だ。D8~D31を追加してトータル32本にする。
したがって、ソース、ディスティネーション共に2bitずつ、計4bitを割り当てる必要がある。
1200 MOVE.B D0, D1
A00F 1E06 MOVE.B D30, D31 ※ 8bit長命令、拡張レジスタ
A00F 3E06 MOVE.W D30, D31 ※16bit長命令、拡張レジスタ
A00F 2E06 MOVE.L D30, D31 ※32bit長命令、拡張レジスタ
A01F 2E06 MOVE.Q D30, D31 ※64bit長命令、拡張レジスタ
さらにインデックス・アドレシング・モード用に1bit必要。こいつが'1'の時はインデックス指定ワードを64bit用に変化させる。
結果、トータルで7bitか。$A000~$A07F に割り振れば行けるな。
なんか、できそうな気がしてきたw
でも、データバスが16bit長だと命令フェッチだけでタヒねる。
A030 29F9 1234 5678 9ABC DEF0 1122 3344 5566 7788 MOVE.Q #$1122334455667788, ($123456789ABCDEF0).Q ※10ワード長
最低でも32bit長バスは欲しいね。

1023:ナイコンさん
19/01/04 13:08:38.16 0.net
あ、MOVE <ea64>, <ea64> があるな
64bitインデックス・アドレシング・モード指定bit は2bit必要だな
したがってトータルで8bit、$A000~$A0FF に割り振りになる。

1024:ナイコンさん
19/01/04 13:16:42.84 0.net
amd64が先に出てて対抗してインテルが別の命令セット出したらMSに蹴られたんだろ
インテルは時期以外失敗してねーし両者新設した命令セットだから移植性もバイナリ
互換も関係無い
言ってること全部間違ってるって何事よ

1025:ナイコンさん
19/01/04 13:22:11.73 0.net
>>972
元のレジスタ指定の仕様が実質的にアドレスレジスタとデータレジスタを区別してないんだぞ、
レジスタ番号8から15がアドレスレジスタだ
拡張するなら、データとアドレスの区別を廃止して16から31を追加する形しか有り得ない
レジスタ番号15がスーパーバイザレジスタに変わる仕様で14が汎用スタックポインタだとか微妙な感じでしがらみが残るのは仕方がない

64bitアドレスを採用するようなシステムでデータバスが16bitしかないとかは、普通じゃない特殊環境だから無視していいんじゃね

1026:ナイコンさん
19/01/04 13:23:24.19 0.net
>>971
旧機種のソフトが動かないPS4やスイッチはヒットしてるじゃん

1027:ナイコンさん
19/01/04 13:36:38.69 0.net
>>974
ごめん何言ってるかさっぱり分からない。とんでもない勘違いしておれストーリー語るなよ。
MSの言ったことが無かったことになったり、amd64のLegacy modeすら知らず、バイナリ互換は関係ないとか何事よ?
どの平行世界から来たんだ、おまえは。

1028:ナイコンさん
19/01/04 14:00:21.49 0.net
なんだIteniumの話かintelの64アーキはx86拡張もあんだよ主語抜くな紛らわしい

1029:ナイコンさん
19/01/04 14:02:12.73 0.net
>>975
思いつきで書いてるんでアレだが、アドレスレジスタは別途追加と考えていた。
 D0~D7, D8~D31
 A0~A7(USP/SSP), A8~A31
って感じ。そういう意味ではトータルで64本になる。
割り込みベクタとかどうするんだ?とか、本気でやろうと思ったら膨大な作業量になるだろうが
そこまでは全然考えていない。

1030:ナイコンさん
19/01/04 14:10:55.30 M.net
一昔前ならバイナリ互換は重要だったけど今時はエミュレーションでなんとでもなる

1031:ナイコンさん
19/01/04 14:46:17.04 0.net
一昔前からクロックが上がらなくて同程度のクロックのCPUのソフトエミュなんてとても無理な状況なんだけど。
今は、龍芯のような実装か、CPUにFPGA乗っける方向。

1032:ナイコンさん
19/01/04 14:52:00.53 0.net
>>979
オペコードのビット指定見ると、レジスタ番号を通しで0-15と振っておいてデータレジスタの時とアドレスレジスタの時で処理が違うだけって感じの命令が多い
一部、データレジスタしかダメとかアドレスレジスタしかダメとかの制限が明白な命令だけ、空いた部分に別命令を入れてる感じがする
そうなると、レジスタ0-15は現状を変えると互換問題が発生するはずで、レジスタ16以後に追加の新レジスタを入れるしか無いはず

1033:ナイコンさん
19/01/04 15:30:53.98 0.net
>>982
うーん、と
rrrr という4bitだったのを、rxxrrr という風に途中に 2bit 追加する感じにすりゃいい。
これならデータ32本+アドレス32本になる。
xxrrrr という風に追加してしまうと、データ8本+アドレス8本が4セットになってしまう。

1034:ナイコンさん
19/01/04 15:35:33.08 0.net
追加される 2bit の xx 部は、プレフィックス・ワードの該当部分から持ってくるだけ。
当然、4bit の rrrr 部は従来命令のアドレッシング・モード部から持ってくる。

1035:ナイコンさん
19/01/04 17:17:49.97 M.net
>>981
知ったか爺さん乙 w

1036:ナイコンさん
19/01/04 19:17:20.71 0.net
>>922
MIPSでオープンソース化されたのはMIPS32R6とMIPS64R6だけ
それ以前のMIPS32R5やMIPS32R5またはそれ以前のMIPSは含まれない
MIPS32R6やMIPS64R6はそれまでのMIPSであまり使われない命令を整理して新しい命令を追加
遅延スロットなども不要になったがそれ以前のMIPSとはバイナリ互換性はない

1037:ナイコンさん
19/01/04 19:22:25.68 0.net
>>965
ARMは命令の長さが16bit(あくまで長さで命令セットアーキテクチャとしては32bit)のThumbの採用で成功した
ARM普及のきっかけはThumbを採用したARM7TDMIから
特にNOKIAの携帯に採用されたのがモバイルへの普及に拍車をかけた
ARMの歴史 ARM1からARM7まで
URLリンク(www.cqpub.co.jp)

1038:ナイコンさん
19/01/04 19:37:26.33 0.net
RISC-VをもてはやしてMIPSを貶す人もいるが
実はRISC-Vの基本部分の命令セットはMIPSと非常によく似ているというかパクリそのもの
RISC-VにはMIPSと同様にフラグレジスタもない32bitのRISC-Vで64bitの加算減算する方法もMIPSとほぼ同じ
MIPS32 Instruction Set Quick Reference
URLリンク(www2.cs.duke.edu)
RISC-V Reference Card
URLリンク(www.cl.cam.ac.uk)

1039:ナイコンさん
19/01/04 20:00:45.84 0.net
>>974
おまえバカだろ
Intelの64bitはiteniumだ
AMD64とは違う

1040:ナイコンさん
19/01/04 22:01:59.93 0.net
>>989
Itaniumとは別の64ビット版x86も開発してたが、MSに採用を拒否られた。

1041:ナイコンさん
19/01/04 23:27:42.96 0.net
どうもご説明ありがと案外知らない人が多いのかな製品も出なかったし

1042:ナイコンさん
19/01/05 00:11:34.61 0.net
>>976
スマホに負けてるだろ

1043:ナイコンさん
19/01/05 13:23:49.34 a.net
68kにプリフィックスを導入するとか当時の開発陣が受け入れるかな?
そもそもそんな発想しそうにないと思うのは偏見かね。

1044:ナイコンさん
19/01/05 13:58:00.70 0.net
初代の8086からプリフィックスを使ってきたx86だから受け入れたのかもな

1045:ナイコンさん
19/01/05 15:30:52.85 a.net
64ビット版68k、32ビットと64ビットのコードが混在する前提ならプリフィックスありだろうけど
モードわけきっちりして32ビットモードは32ビットコードだけ、64ビットモードは64ビットコードだけってするなら、
すでに言われてるけど、64ビット命令は新しく作り直すほうがきれいになるんじゃないかな?
32ビットモードもベースになる040か060の完全互換ってわけじゃないだろうし、モトローラなら。
でもプリフィックスおいて混在させるというのは悪いアイデアじゃないとは思う。
モトローラのファンからは否定的な意見出るかもしれないけど。
自分で


1046:コンパイラとか作れるならPearPCあたり改造するのも面白いかも。 途中で飽きちゃうのは目に見えてるが。



1047:ナイコンさん
19/01/05 15:32:08.26 0.net
昔、同じような話題で$4xxxの空いているパターンをプリフィクスにって書いたけど
(某x64に合わせてw 64bit命令は片端から4で始まる的なノリで)
… 64bit MPUならデータBUSも64bit あるし、プリフィクス込みで32bitになっても
速度低下は案外許容できるかもね。
16bit BUSを最悪4MHzで4CLKもかけてBUSアクセスするのとは前提条件が違う
わけだし。
しかし、だ… .Qはヤメレ。
MOVE.Q と MOVEQ が紛らわし過ぎるw

1048:ナイコンさん
19/01/05 17:24:48.29 0.net
>>996
>MOVE.Q と MOVEQ が紛らわし過ぎるw
大丈夫だ。
何故なら既存の MOVEQ は MOVEQ.L になり、新たに MOVEQ.Q が追加され、より一層混乱に拍車がかかるから(白目)
A00C 7E05 MOVEQ.L #5, D31 ※32bit長命令、拡張レジスタ
A01C 7E05 MOVEQ.Q #5, D31 ※64bit長命令、拡張レジスタ
A00C 2E05 MOVE.L D5, D31 ※32bit長命令、拡張レジスタ
A01C 2E05 MOVE.Q D5, D31 ※64bit長命令、拡張レジスタ
まぁ実際に追加するとしたら .4 かな。
MOVEQ.L #5, D31 ※32bit長命令、拡張レジスタ
MOVEQ.4 #5, D31 ※64bit長命令、拡張レジスタ
MOVE.L D5, D31 ※32bit長命令、拡張レジスタ
MOVE.4 D5, D31 ※64bit長命令、拡張レジスタ
ただし今度は MOVEA と微妙に紛らわしくなるがw
MOVEA #$12345678, A0
MOVE.4 #$12345678, D0 ※64bit長命令
MOVEA.4 #$12345678, A0 ※64bit長命令
そもそもアルファベットが26文字しかないのが悪いんや…

1049:ナイコンさん
19/01/05 19:34:53.73 0.net
>>997
いっその事bit数に変えてしまえば良いなw
.8
.16
.32
.64
将来の128bit, 256bit, 512bitでもノー問題

1050:ナイコンさん
19/01/05 20:33:50.75 M.net
128bit x86_128は出ないんだろうな。
半導体のシュリンクは限界だし。

1051:ナイコンさん
19/01/05 20:47:39.38 0.net
「そんな大きな数(やデータ)なんか扱わねーよ!…と言って不足かましたから将来的にはわからないけど
とりあえず64bitあれば2038年問題的な直近の問題は当面先送りできるし
その問題にぶち当たる頃にはコンピューター自体が今とは様変わりしてそうだしね

1052:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 925日 11時間 2分 9秒

1053:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch