フォン・ノイマンとハーバード・アーキテクチャの違いを調べた結果、ハーバード・アーキテクチャと比較して、フォン・ノイマンには「ボトルネック」や脆弱性などのマイナス面があるだけであるという結論に達しました。では、今日、ほとんどのコンピューターがフォン ノイマン アーキテクチャを使用しているのはなぜでしょうか?
2 に答える
ハーバード アーキテクチャでは、命令とデータに割り当てられるメモリの比率は、ハードウェアによって決定されます。チップができたら、比率を調整することはできません。両方を同じメモリに常駐させると、はるかに柔軟になります。最新のコンピュータ (および組み込みデバイス用のマイクロプロセッサでさえも) は、さまざまなタスクを実行できるように設計されているため、この柔軟性は重要です。
最新のプロセッサは、プロセッサ ダイ上に個別の命令キャッシュとデータ キャッシュも保持しているため、両方の長所を活用できます。
フォン・ノイマンは、データだけでなくコマンドにもストレージを使用したためです。フォン・ノイマンは一度に 1 つのタスクしか処理しませんが、ハーバードはより多くのアクションを同時に実行できます。そのため、ハーバード構造には、フォン・ノイマン・アーキテクチャにはない競合状態の問題があります。これはノイマンにとってプラスです。
今日のコンピューターは両方を組み合わせて使用していますが、Neumann部分の方が大きくなっています。また、フォン ノイマンアーキテクチャは常に決定論的です。ハーバード構造で一度に複数のタスクを実行すると、決定論的ではなくなります。したがって、タスクの実行の正確さは、ハーバード構造を使用するときの運に依存します。