4

いくつかのランダムな考えが私を捕まえ、私はそれを取り除くことができません。モーデンプロセッサはさまざまな種類のアセンブリ言語のインタプリタにすぎないので、HDLを使用して、または論理ゲートを使用して直接設計された、ハードウェアに直接実装された高レベル言語インタプリタを作成する方法はありますか? その間、なぜこれがまだ行われていないのかを考えています。今考えられるいくつかの理由は次のとおりです。

  • 理論的な理由 -- 理論的には不可能ですが、私の意見では可能ですが、既に持っている CPU または私たちが話しているマシンはチューリング マシンの単なる変形であるため、それらの性質に違いはありませんが、私は 100 ではありません。 %これについて確信しています。
  • 設計の複雑さ -- 一般に、このような複雑なマシンを作成するのは非常に困難です。
  • 速度の欠点 -- 適切に設計および実装されていても、速度が不利になるため、勝つことはできません。

私は一般的にこの問題に興味があります。

4

3 に答える 3

3

LISP マシンSymbolics社について聞いたことがある。

答えは短く、ほとんどがリンクであることは知っていますが、答えは自己完結型です。

于 2013-03-13T23:25:00.710 に答える
2

これはすでに行われています。Javaプロセッサ

これは、物理的に大きなプロセッサにつながる非常に複雑な命令セットコンピュータ(VCISC)ではないでしょうか。言語の一部は他の部分ほど頻繁には使用されないため、プロセッサのセクションはほとんど使用されず、シリコン領域が無駄になります。

プロセッサのダイサイズが大きくなると、歩留まりの低下が大きくなり、エンドユーザーの価格が高くなります。これの経済性は、より小さな単純なプロセッサを支持します。

低電力プロセッサの設計は、CISCアーキテクチャよりもRISCを優先する傾向があります。ディープブルーなどのスーパーコンピューターは、多くのRISCコアを使用していました。ほとんどのモバイル通信デバイスはARMRISCコアを使用します。

于 2013-03-13T23:09:01.163 に答える
2

Burroughs が「Algol in hardware」を持っていたことは有名です(B5500 を参照)

あまり知られていないのは Burrough の美しいB1700で、各プロセスがマイクロコードを定義して、プロセス コードが使用する HLL を解釈できるようにします。したがって、各プロセスは異なるHLL 命令セットを持つことができます。コンテキスト スイッチのハードウェア スイッチング マイクロコード セット。

RISC の世界からの教訓は、従来の命令セットを構築し、言語のコードをそれらの命令にコンパイルする方が経済的である (そしてより大きな市場を獲得できる) ということです。DEC VAX は、言語固有の命令を持たせようとしました。特定の VAX 命令ではなく、より一般的な VAX 命令を使用する方が高速であることが判明しました。

強いて言えば、FPGA を使用して HLL 命令セットを実装するのはおそらく比較的簡単です。(これは、EE 設計クラスの大学院生のプロジェクトであると想像できます)。x86 やその他の最新の RISC チップに匹敵するパフォーマンスではありません。

于 2013-03-13T23:54:48.480 に答える