ライトバックキャッシュの採用で
メモリー書き込み待ちも短縮
かくして、486には8KBのキャッシュがコアに内蔵される事になった。i486DXの場合、総トランジスター数は120万個。8KBのキャッシュは6T SRAM構成の場合、トランジスター数は以下のようになる。
- 6(T SRAM)×8(bit)×8K(Byte)=38万4千個
つまり、総トランジスターの32%もの割合を占めることになる(実際はほかにも回路があるので、占める割合はもう少し大きくなる)。たかだか8KBでも、これだけ大きなインパクトがある、ということに注意されたい。
一方書き込みは? というと、まず最初に実用化されたのが図3に示す「Write Through」(ライトスルー)という方法である。つまりメモリーとキャッシュの両方に対して、同時に書き込むという方法だ。ただし、この方法だとメモリーへの書き込み完了をCPUはじっと待っていなければならず、効率が悪い。
そこで「Write Back」(ライトバック)と呼ばれる方法が編み出された。これは、CPUはまずキャッシュに書き込み(③)、ついでキャッシュからメモリーに書き戻す(④)という方法だ。
SRAMの場合、書き込みも原則1サイクルで終了するから、DRAMのメモリーに比べると大幅に高速である。もちろん、常時メモリーに書き込みが発生するような場合には間に合わなくなる(キャッシュの容量が不足する)から、最終的にはメモリー書き込みが完了するのを待たなければならない。だが、ある程度のサイズのプログラムではこうしたことは起きにくいために、メモリーへの書き込みもまた高速化されるというわけである。
余談ではあるが、ではその「ある程度のサイズのプログラム」が満足するキャッシュ容量はどの位か? というのは理論だけでは決めにくく、実際にさまざまなプログラムを走らせて、その際に必要とされるキャッシュ容量を確認する。そのためには、いくつかのサイズのキャッシュをシミュレーション上で用意して、その上で実際のプログラムを走らせて、性能やキャッシュミス率を確認する必要がある。
こうした作業は、CPUのさまざまなパラメータすべてに言えることであり、これがゆえに新規のアーキテクチャーを立ち上げるのには時間がかかる理由ともなっている。さまざまなアーキテクチャー上の損得を、すべてシミュレーションなどで確認しないといけないのだ。
キャッシュの名簿となる「タグ」領域
キャッシュの構造面をもう少し詳しく説明しよう。図2の説明では、簡単に「まずCPUはメモリーに対して、読み込み要求を発行する」と書いたが、これがまず大変である。「あるメモリー領域のデータはキャッシュに入っているか否か」を、まずCPU(ようはキャッシュコントローラー)が判断しなければならない。この際に利用されるものが、「Tag」(タグ)と呼ばれる領域だ。
具体的にタグを含めた使い方を見てみよう(図4-1)。CPUがあるメモリーアドレス(赤)をアクセスしようとした場合、対象のアドレスがタグの中に入っているかどうかを確認する(①)。もちろん初期状態ではキャッシュは空なので、この場合CPUはキャッシュミス(キャッシュ領域に目的のデータがない)と判断する。そうなるとCPUは、メモリーに対してメモリーアドレスを指定して、読み込みアクセスを実行する(②)。
メモリーアクセスする場合は図4-2のように、メモリーは指定されたアドレスに対するデータをCPUに対して返す(③)。これと同時に、このデータのアドレス(④)をタグに、データの中身をキャッシュ自身に(⑤)それぞれコピーする(これがキャッシュフィル)。
一度キャッシュにデータが入ると、後はそこから参照が可能である。CPUからメモリーアドレスを指定してタグを検索すると、すぐにヒットする(図4-3)。そのため、当該するキャッシュから迅速にデータを読み込んで完了できるので、大幅なアクセス時間の軽減が図れる。
この連載の記事
-
第807回
PC
Core Ultra 200H/U/Sをあえて組み込み向けに投入するのはあの強敵に対抗するため インテル CPUロードマップ -
第806回
PC
トランジスタ最先端! RibbonFETに最適なゲート長とフィン厚が判明 IEDM 2024レポート -
第805回
PC
1万5000以上のチップレットを数分で構築する新技法SLTは従来比で100倍以上早い! IEDM 2024レポート -
第804回
PC
AI向けシステムの課題は電力とメモリーの膨大な消費量 IEDM 2024レポート -
第803回
PC
トランジスタの当面の目標は電圧を0.3V未満に抑えつつ動作効率を5倍以上に引き上げること IEDM 2024レポート -
第802回
PC
16年間に渡り不可欠な存在であったISA Bus 消え去ったI/F史 -
第801回
PC
光インターコネクトで信号伝送の高速化を狙うインテル Hot Chips 2024で注目を浴びたオモシロCPU -
第800回
PC
プロセッサーから直接イーサネット信号を出せるBroadcomのCPO Hot Chips 2024で注目を浴びたオモシロCPU -
第799回
PC
世界最速に躍り出たスパコンEl Capitanはどうやって性能を改善したのか? 周波数は変えずにあるものを落とす -
第798回
PC
日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU -
第797回
PC
わずか2年で完成させた韓国FuriosaAIのAIアクセラレーターRNGD Hot Chips 2024で注目を浴びたオモシロCPU - この連載の一覧へ