- ベストアンサー
命令キャッシュとデータキャッシュ
命令キャッシュとデータキャッシュの違いについて教えてください。 命令キャッシュ=データの更新が少ない データキャシュ=データの更新が多い ってとこまではわかったのですが、それ以上はよくわからないのです。 あとなぜ命令キャッシュとデータキャッシュに分ける必要があるのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
命令とデータの間はアクセスするときにまったく相関がありません。 キャッシュはアクセスするときに相関があるデータを読み書きするときに ヒット率があがるものですから,最初からまったく相関のない 命令とデータを同じキャッシュに入れるということはキャッシュの ヒット率を下げることは明らかです。 したがって分けているということになります。
その他の回答 (2)
- jacta
- ベストアンサー率26% (845/3158)
回答No.3
命令キャッシュとデータキャッシュの最大の違いはライトバックの有無です。 ライトバックの必要がない命令キャッシュとデータキャッシュと共用すると、著しく効率が悪くなります。
質問者
お礼
ありがとうございました。
- ymmasayan
- ベストアンサー率30% (2593/8599)
回答No.1
主メモリー上の命令エリアとデータエリアを考えて見ましょう。 命令エリアはプログラム実行中参照オンリーで書き換えられることはありません。 データエリアは読み書き両方有ります。 性格の違うものは分けてキャッシュした方がトータルの効率がよくなるのでそうなっています。 昔の計算機は分かれていませんでした。
質問者
お礼
なんとなくわかりました。 ありがとうございます。
お礼
相関がないから分けて、分けたほうが効率が良いということですね。 わかりやすい説明ありがとうございました。