私は、言語固有のアーキテクチャ/プロセッサのトピックに関するコンピュータ アーキテクチャ クラスの研究論文を書いています。明らかに、このトピックの 2 つの主要なコンポーネントには、LISP マシンと Java コンピュータが含まれます。しかし、Google だけではこれ以上の情報を見つけるのに苦労しています。参考文献、新しいサブトピック、論文、ジャーナル、書籍など、このトピックに関するヘルプを求めています。事前に助けてくれてありがとう!
2 に答える
いわゆる言語固有のアーキテクチャのほとんどは、より具体的な言語指向または特定の言語に優しいものです。元の SPARC でさえ、タグ付き演算を提供していました (LISP を支援するため)。おそらく、Berkeley の SPUR (Symbolic Processing Using RISC、LISP を対象とした RISC) とpicoJava (Java バイトコードを実行する) をご存知でしょう。MAJCは Java を念頭に置いて開発されましたが、かなり一般的な VLIW です。(ARM の Jazelle 拡張機能は、一部のバイトコード操作を直接実行できるモードを提供し、サポートされていない操作はソフトウェア インタープリターに例外を生成します。) Azul Systems Vega プロセッサJava を実行することを目的とした RISC です (Java に適した機能の中には、ガベージ コレクションの書き込みバリアと、タグのポインターの最上位ビットの使用のサポートがあります [ARMv8 AArch64 にも存在する機能])。
Rekursivはオブジェクト指向言語を指向していました。Intel 432 は「高級言語」を対象としていました。Berkeley の SOAR (Smalltalk On A RISC) は Smalltalk をターゲットにしました。
Novix NC4016、GreenArrays, Inc. F18、Bernd Paysan の b16など、いくつかのプロセッサは前方指向です。
「高水準言語コンピューター アーキテクチャーの回顧」(David R. Ditzel および David A. Patterson、1980 年) は、いくつかの HLL アーキテクチャーを参照しています。その論文と William A. Wulf の「Compilers and Computer Architecture」(1981) は、「RISC 時代」の始まりからの論文であり、コンピュータ アーキテクチャの言語サポートを研究する際に検討する価値があります。
補足として、市場の暗黙の制限を超えた言語指向プロセッサの重要な問題の 1 つ (ハードウェアとソフトウェアの設計とネットワーク効果の固定費が比較的高いことを考えると、量は非常に重要です) は、アーキテクチャを設計する際の問題です。言語を実装する具体的な方法。新しい技術が開発されたり (多くの場合、他の言語での開発に由来します)、技術的なトレードオフが変化したりすると、最初の ISA の選択が著しく最適でなくなる可能性があります (「セマンティック クラッシュ」と呼ばれるものの 1 つの形態)。一般的なプリミティブ操作を選択することにより、初期の実装ではある程度の有効性が犠牲になる可能性がありますが、長期的な手荷物のリスクは軽減されます。
Forth 言語にも多くのハードウェア実装があります。
ここに本があります: http://www.ece.cmu.edu/~koopman/stack_computers/
最近の VHDL 実装: http://www.excamera.com/sphinx/fpga-j1.html