ノイマン型アーキテクチャとハーバードアーキテクチャとは?のいまんがたあーきてくちゃとはーばーどあーきてくちゃ
ノイマン型アーキテクチャとハーバードアーキテクチャとは、命令とデータを同じ記憶・同じバスに載せるのがノイマン型(プログラム内蔵方式)、命令用とデータ用で記憶とバスを分けるのがハーバード型。プログラムを自由に入れ替えられる汎用性を取るか、命令とデータの同時アクセスによる速度を取るかの選択になる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
配線を組み替えて処理を変えていた時代に、プログラムを記憶装置へ置いて読み込ませる発想が汎用計算機を成立させた。代償として、命令の取り出しとデータの読み書きが1本の経路を取り合う。用途がひとつに決まっている信号処理では、汎用性を捨てて経路を分けたほうが速いため、別系統として残った。優劣ではなく、汎用性と帯域のどちらを買うかという設計判断である。
具体例
PCやサーバはノイマン型で、同じ機械の上で任意のアプリを走らせられる。一方、Texas InstrumentsのDSPや組込みマイコンはハーバード型を採り、命令の読出しとフィルタ係数の読出しを同じサイクルで行って、信号処理の締切に間に合わせている。
試験での引っ掛け
1本のバスの取り合いはフォンノイマンボトルネックと呼ばれ、キャッシュは緩和策であって解消ではない。命令キャッシュとデータキャッシュを分けるのはCPU内部だけの分離(修正ハーバード)で、主記憶まで分けた方式とは別物。記憶装置が物理的に2個要る、という理解も誤り。
関連用語
出た過去問
出典:令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問21(IPA)
CPU内部の命令読取り用バスとデータアクセス用バスとを分離するハーバードアーキテクチャを用いる目的として、適切なものはどれか。
正解:プログラムの実行時間を短縮する。
要点:命令とデータのバス分離で並行アクセスし実行を高速化する
ハーバードアーキテクチャは、命令用とデータ用のバス(および記憶領域)を分けることで、命令の読取りとデータの読み書きを同じサイクルで並行して行える構成である。バス競合による待ち合わせが起きないため、命令の実行効率が上がりプログラムの実行時間を短縮できる。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。