ノイマン型アーキテクチャとハーバードアーキテクチャとは?
ノイマン型アーキテクチャとハーバードアーキテクチャとは、命令とデータを同じ主記憶・同じバスで扱うのがノイマン型(プログラム内蔵方式)、命令用とデータ用に記憶とバスを分けるのがハーバード型。汎用性を取るか、命令フェッチとデータアクセスの同時実行を取るかの違い。
システムアーキテクト試験の過去問では1回出題されています。
のいまんがたあーきてくちゃとはーばーどあーきてくちゃ
ノイマン型アーキテクチャとハーバードアーキテクチャの意味
命令とデータを同じ主記憶・同じバスで扱うのがノイマン型(プログラム内蔵方式)、命令用とデータ用に記憶とバスを分けるのがハーバード型。汎用性を取るか、命令フェッチとデータアクセスの同時実行を取るかの違い。
ノイマン型アーキテクチャとハーバードアーキテクチャの具体例
汎用のPC・サーバはノイマン型で、実行するプログラムを自由に入れ替えられる。一方、信号処理を止められないDSPや組込みマイコンはハーバード型を採り、命令の読出しと係数データの読出しを同時に行う。
ノイマン型アーキテクチャとハーバードアーキテクチャは試験でどう引っ掛けられる?
ノイマン型の弱点である「命令とデータが1本のバスを取り合う」現象はフォンノイマンボトルネックと呼ばれ、キャッシュはこれを緩和する対策であって解消するものではない。また命令キャッシュとデータキャッシュを分けるのは内部だけの分離(修正ハーバード)であって、ハーバード型化ではない。ハーバード方式も「メモリが2個要る」わけではなく、論理的に分離されていればよい。
ノイマン型アーキテクチャとハーバードアーキテクチャと関連する用語
ノイマン型アーキテクチャとハーバードアーキテクチャが出た過去問
CPU内部の命令読取り用バスとデータアクセス用バスとを分離するハーバードアーキテクチャを用いる目的として、適切なものはどれか。
正解:プログラムの実行時間を短縮する。
要点:命令とデータのバス分離で並行アクセスし実行を高速化する
ハーバードアーキテクチャは、命令用とデータ用のバス(および記憶領域)を分けることで、命令の読取りとデータの読み書きを同じサイクルで並行して行える構成である。バス競合による待ち合わせが起きないため、命令の実行効率が上がりプログラムの実行時間を短縮できる。
出典:令和5年度 春期 システムアーキテクト試験 am2 問21(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。