2016-06-28 8 views
0

私はARMプロセッサ(ARMv7)のMMUコードを調べていました。彼らは、完全連想型および連想型のTLBを利用しています。私はこのメソッドを使用してキャッシュの実装を認識しています。私はまた、TLBはCPUキャッシュだと読んでいます。しかし、TLBとキャッシュの目的が異なるため、私は作品に参加できません。私はTLBの文脈でセットと完全連想がどのように働くかを知りたい。キャッシュとの完全アソシエーティブおよびセットアソシエーティブTLB操作

+0

_ "TLBとキャッシュの目的が異なる" _実際には、関連するデータを検索するためにアドレスを使用しますが、それ以外の場合は関連するデータを検索するためにアドレスを使用します。ああ、待って...;) – Notlikethat

+0

スライド27には、キャッシュとTLBの違いを説明する良いブロック図があります。https://www.cs.princeton.edu/courses/archive/fall09/cos318/lectures/VMAddressTranslation.pdf – achoora

答えて

1

これはグローバルに同じ動作です:TLBは、仮想アドレスとサイズをタグとして使用しますが、データを格納する代わりに、関連ページ(物理アドレス、保護など)の属性を格納します。

セットアソシアティブは、限られた数のページが同じタグ/属性を共有できることを意味します。フルアソシエイティブとは、タグ/属性をTLBキャッシュの任意の場所に格納できるということです。これははるかに効率的ですが、これは非常に小さなキャッシュに対してのみ行うことができます。

関連する問題