何か、この時代になってスゴイものが出てきた。
68000と差し替えて
MC68000というMPU(今で言うCPU)がある。
おそらく、プログラマブルなCPUとしては当時画期的なものだっただろう事は想像に難くない。
そしてこのMC68000を使って生み出されたものには、非常にインパクトのあるものが多く、また当時このMC68000を使ったコンピュータは一種のトレンドにもなった。
AppleのMacintosh、Amiga 500などの今で言うレトロPCもあれば、当時のゲームセンターで稼働していたアーケード基板にも必ずといっていいほど、このMC68000が搭載されていた。MSV(NEOGEO)も当然である。
そして家庭用を見ればメガドライブが搭載していた事でも有名になった。メガドライブはこのMC68000とZ80という2つのCPUがその性能を支えていた。後から追加できるMEGA CD本体にも搭載されていたので、メガドライブはまさにこのMC68000がなければ成立しないコンシューマ機であった。
そして忘れてはならないのが、シャープのX68000である。おそらく、その後の日本のプログラマーを多数育てたのは、このX68000ではないかと思う。
実際には、MC68000の派生CPUが使われていたケースも多々あるが、基本は同じである。
このMC68000が、一時代を支えていたと言っても過言ではない。
そのMC68000というCPUを差し替えるだけで高速化できるというオープンソースCPUプロジェクトが進行中である。まもなくハードウェアの生産が開始される見込みだそうだが、そのプロジェクトは2つの内容からなるものらしいが、そのウチの一つがハードウェアで、前述の差替ハード「Buffy Acellerator」である。
“吸血鬼殺し”の名を持つこの製品はFPGAやCPLDといったプログラマブルロジックデバイスを一切使わないという、生粋のCPUアクセラレータで、68000の64ピンDIPソケットと互換性がある。よって、Amiga 500/1000/2000などのCPUと差し替えるだけで高速化が可能になるという。
実際はエミュレータ
この「Buffy Acellerator」は、ハードウェアとしてはOctavo製SoC「OSD335x-SM」を採用したもので、1GHzで駆動するCortex-A8プロセッサである。512MBまたは1GBのDDR3メモリを統合しており、68000のエミュレータをeXecute-in-Place(XiP)フラッシュROM上で走らせて、自分自身を68000のように振る舞うよう作られている。
ボードは8層基板で、より安定した信号を実現するため3層はグランドとなっている。CPU以外にはレベルシフタやSPIフラッシュといった動作に必要な部品を実装しており、UARTとJTAG端子も用意されている。
68000エミュレータになる「PJIT」は、Buffy Acelleratorのソフトウェア部分にあたり、68000のエミュレーションを行ないながら、スレッド化されたJIT(実行時コンパイラ)により1,000MIPSという性能を発揮するという。これは68040が1,200MHzで動作した時に相当する性能である。ちなみに本家68040は最大40MHzだった。
とりあえず、本オープンソースでは全ての機能を実装していないため、400MHz相当以上の性能のみ保証するとしている。
エミュレータの「PJIT」はインタプリタのように命令を実行する。インタプリタとはプログラムを1行ずつマシン語に変換して実行していくスタイルで、Basic言語などと同様である。これに対してプログラム全てをマシン語に変換して実行するスタイルの事をコンパイルという。これらはそれぞれ一長一短がある。
インタプリタはジッターを抑える事ができ、効率を引き上げられるが、コンパイルのように速くはない…のだが、それは昔の話。今はハードウェア性能が非常に高いので、インタプリタで命令を実行しても遅いという感じは受けにくい。今のBasicと同じである。
コンパイルはコンパイラーという変換ツールで開発言語をマシン語へと変換するので、一度変換すると修正するのに時間がかかる。弱点ではあるが、最終的にパッケージ化しやすい側面もあるので、一長一短なのである。
ま、生データで動いてくれる方が、実際は楽なのかもしれないが、そのあたりは仕事でプログラマーをやっている人の方が詳しいだろうと思う。
気になるのは…
もっと技術的に詳しい話が知りたいという人は、英語サイトではあるが、以下を参照すると良い。
BUFFEEのホームページ
https://www.buffee.ca/
Buffy Acelleratorのリリース
https://www.buffee.ca/Hello-World/
Buffy Acellerator製造開始の予告
https://www.buffee.ca/Nearing-production/
私が気になるのはただ一つ。
この「Buffy Acellerator」を使って、かつてのシャープX68000が高速化できるのか? そしてX68000のプログラムがそれで高速動作するのか? という事である。
X68000は、おそらく世界で初めてクロックアップという言葉を生み出した家庭用PCである。
発売された製品は10MHzというクロックだったが、これに1.6倍の水晶発振器を搭載して16MHz駆動に改造した人が現れた事で、一気に話題になった。但し、これにはアタリハズレがあり、12MHzでしか駆動しない個体もあったし、逆に20MHzまでいけるんじゃないかという個体もあった。
その後、満開製作所という所が“REDZONE”と称して16MHz、24MHzに駆動するX68000 XVIの改造機を販売したが、そうした事か可能になったのは、X68000をクロックアップするというトレンドがここで生まれたからである。
私にとって、このX68000というレトロPCは非常に思い出深いPCで、私がPCにハマッたのはまさしくこのX68000が存在していたから、とも言える。
なので「Buffy Acellerator」によってX68000が高速化して通常通り使える製品になったとしたら、実に喜ばしい話である。
中古でのX68000の相場価格が上昇するかもしれない(爆)
しかし世の中には凄いプロジェクトが存在するものである。
ハードウェアというのは、ハードルがとても高いもの、という認識があるのだが、ハードウェアすら個人やそれぐらいの規模で作れてしまうという事に驚きである。
…いや、個人でオーディオボードを作っている人とかもいるのだから、不可能ではないのか。実に奥深い話である。