JPH08329687A - 半導体集積回路 - Google Patents

半導体集積回路

Info

Publication number
JPH08329687A
JPH08329687A JP7138053A JP13805395A JPH08329687A JP H08329687 A JPH08329687 A JP H08329687A JP 7138053 A JP7138053 A JP 7138053A JP 13805395 A JP13805395 A JP 13805395A JP H08329687 A JPH08329687 A JP H08329687A
Authority
JP
Japan
Prior art keywords
address
circuit
bits
read
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP7138053A
Other languages
English (en)
Inventor
Toshinobu Shinpo
利信 新保
Masaru Tachibana
大 橘
Susumu Narita
進 成田
Shinichi Yoshioka
真一 吉岡
Koichiro Ishibashi
孝一郎 石橋
Hisayuki Higuchi
久幸 樋口
Yoshinobu Nakagome
儀延 中込
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi ULSI Engineering Corp
Hitachi Ltd
Original Assignee
Hitachi ULSI Engineering Corp
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi ULSI Engineering Corp, Hitachi Ltd filed Critical Hitachi ULSI Engineering Corp
Priority to JP7138053A priority Critical patent/JPH08329687A/ja
Priority to US08/657,231 priority patent/US5907867A/en
Publication of JPH08329687A publication Critical patent/JPH08329687A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 エントリ毎に異なるページサイズのアドレス
変換対を記憶可能なセットアソシアティブ方式のTLB
を備える半導体集積回路を提供すること。 【構成】 セットアソシアティブ方式のTLBを備える
半導体集積回路において、複数のアドレスアレイにペー
ジサイズを示す値を記憶する第2の領域を設け、第2の
領域から読み出したそれぞれの値によりコンパレータで
比較する比較範囲を変更する。また、複数のデータアレ
イの第2の領域には、ページサイズが変わることによっ
て、ページ内のアドレスとなるか、ページ番号となるか
が変化するビット位置のアドレスを記憶する。複数のア
ドレスアレイの第2の領域から読み出したそれぞれの値
に基づいて、外部から入力された仮想アドレスの所定位
置のアドレス、あるいは、複数のデータアレイの第2の
領域から読み出したそれぞれのアドレスを第2のセレク
タにより選択し、物理アドレスとして出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、半導体集積回路に係わ
り、特に、高速CMOS TLB(Translati
on Look−aside Buffer)回路を備
える半導体集積回路に関する。
【0002】
【従来の技術】マイクロプロセサの記憶管理の手法とし
て仮想記憶方式が知られている。
【0003】前記仮想記憶方式では、仮想アドレス(V
irtual Address、あるいは、論理アドレ
ス:Logical Address、以下、VAと称
す。)空間と実アドレス(Real Address、
あるいは、物理アドレス:Physical Addr
ess)空間の対応付けが必要となる。
【0004】この仮想アドレス空間と実アドレス空間の
対応付けの主要な方法として、ページを基本単位とする
仮想記憶方式(ページ方式(ページング方式)あるいは
ページ化セグメント方式)が知られている。
【0005】これらページ方式あるいはページ化セグメ
ント方式では、仮想アドレス空間と実アドレス空間は、
それぞれ所定サイズのページと呼ばれる連続した領域に
分割され、仮想アドレス空間でのページ番号(Virt
ual Page Number、あるいは、論理空間
ページ番号:Logical Page Numbe
r、以下、VPNと称する。)と実アドレス空間でのペ
ージ番号(Real Page Number、あるい
は、物理空間ページ番号、Physical Page
Number、以下、PPNと称す。)の対応関係が
決定される。
【0006】即ち、各ページ毎に、仮想アドレスが実メ
モリに割り当てられる。
【0007】例えば、32ビット(VA[31:0])
の仮想アドレスでアクセスされる仮想アドレス空間を4
KB(キロバイト)のサイズのページに分割する場合、
仮想アドレスの上位20ビット(VA[31:12])
が仮想アドレス空間でのページ番号として扱われ、仮想
アドレスの下位12ビット(VA[11:0])がペー
ジ内の相対アドレス(ディスプレースメントあるいはオ
フセット)として扱われる。
【0008】以下、本明細書では、[m:n]でmビッ
ト目からnビット目までのビット位置を指すものとす
る。
【0009】仮想アドレス空間でのページ番号は、実ア
ドレス空間でのページ番号に変換され(アドレス変換、
メモリマッピング)、実アドレス空間でのページ番号と
ページ内の相対アドレスが組み合わされて、実メモリが
アクセスされる。
【0010】なお、ページ内の相対アドレスは変換され
ない。
【0011】仮想アドレス空間のページ番号から、実ア
ドレス空間のページ番号への変換は、メモリ管理ユニッ
ト(Memory Management Unit、
以下、MMUと称す。)と呼ばれるハードウェアとオペ
レーティングシステム(Operating Syst
em)と呼ばれるソフトウェアの両者の働きによって行
われる。
【0012】高速な仮想記憶方式を実現するために、一
般に高性能マイクロプロセサには、アドレス変換バッフ
ァ(Translation Look−aside
Buffer、以下、TLBと称す。)と呼ばれるアド
レス変換のための機能メモリが搭載される。
【0013】TLBは、MMUに内蔵され、仮想アドレ
ス空間でのページ番号を実アドレス空間でのページ番号
に変換する。
【0014】仮想アドレス空間でのページ番号と実メモ
リ上でのページ番号(実アドレス空間でのページ番号)
の対応表の全体は、主メモリ上あるいは補助記憶装置上
にあるページテーブル(ページ表)に記憶される。
【0015】そのページテーブルの一部分のコピーがT
LBに記憶され、TLBはページテーブルのキャッシュ
メモリ(アドレスマッピング キャッシュ)として働
く。
【0016】前記TLBでのアドレス変換時間は、マイ
クロプロセサの処理速度に影響を与え、TLBのアドレ
ス変換時間の短縮が試みられている。
【0017】このような試みとして、下記文献(イ)、
あるいは、文献(ロ)に記載されているTLB回路が知
られている。
【0018】(イ) T.Takayanagi et
al.,”2.6Gbyte/sec Bandwi
dth cache/TLB Macro for H
igh−Performance RISC Proc
essor,”Proceedings of Cus
tom Integrated Circuits C
onference,pp.10.2.1−10.2.
4,1991 (ロ)G.Gerosa et al.,”A2.2
W,80MHz Superscalar RISC
Microprocessor,”J.Solid−S
tate Circuits,vol.29,no.1
2,pp.1440−1454,Dec.1994 前記文献(イ)に記載された従来のTLB回路では、ア
ドレス変換時間の短縮のためにマッチ線の放電回路をダ
イナミック回路として、アドレス変換時間およびキャッ
シュメモリのアクセス時間として合計12nsの性能を
達成している。
【0019】また、前記文献(ロ)に記載された従来の
TLB回路では、コンパレータをダイナミック回路とす
ることで、アドレス変換時間の短縮を図っている。
【0020】ページを基本単位とする仮想記憶方式(ペ
ージ方式あるいはページ化セグメント方式)では、ペー
ジの数だけアドレス変換対が必要となる。
【0021】以下、ページ表の内容の対応する仮想アド
レス空間でのページ番号と実アドレス空間でのページ番
号の一対をアドレス変換対あるいは単に変換対と呼ぶこ
とにする。
【0022】ある一定の記憶容量のメモリ空間をページ
に分割する場合、ページの大きさ(ページサイズ)が小
さい場合は、ページの数は大きくなる。
【0023】また、ページサイズが大きい場合は、ペー
ジの数は小さくてすみ、アドレス変換対の数が少なくて
よいのでページテーブルのための記憶容量を節約するこ
とができる。
【0024】しかしながら、ページサイズが大きすぎる
と、ページ内での無駄な領域が大きくなる(内部フラグ
メンテーション)こともあり、最近の高性能マイクロプ
ロセッサでは、用途に合わせてページサイズを選択でき
るよう複数のページサイズを持つことが一般的となって
いる。
【0025】複数のページサイズを扱うためには、TL
Bも複数ページサイズを記憶できなければならない。
【0026】前記したアドレス変換時間、使用できるペ
ージサイズの数以外に、TLBの性能指標としてヒット
率(必要な変換対がTLBに記憶されている確率)が挙
げられる。
【0027】前記ヒット率は、連想方式およびTLBの
サイズ(エントリ数)が関係する。
【0028】ここで、連想方式にはCAM(Conte
nt Addressable Memory、連想メ
モリ)方式とセットアソシアティブ方式とがある。
【0029】前記CAM方式は小容量のメモリで高いヒ
ット率を得ることができるが、設計が難しく、また、各
メモリセルに比較器を内蔵し、これら全ての比較器が動
作することから消費電力が大きくなる傾向がある。
【0030】一方セットアソシアティブ方式は、大容量
のメモリでなければ高いヒット率を得ることができない
が、連想度(ウエイ数)が小さい場合には、消費電力が
小さく、また設計が比較的容易で、一般にキャッシュメ
モリがセットアソシアティブ方式であることから、キャ
ッシュメモリと回路を共通化でき設計期間を低減できる
利点もある。
【0031】従来のページサイズ可変TLBとして、下
記文献(ハ)、あるいは、下記公報(ニ)に記載された
2つのページサイズ可変TLB回路が知られている。
【0032】(ハ) 田中 他,”アクセスタイム5n
s CMOS Translation Lookas
ide Bufferr,”電子情報通信学会技術研究
報告,ICD92−57,pp.29−35,1992 (ニ) 特開平5−282877号公報 前記文献(ハ)、あるいは、前記公報(ニ)に記載され
た従来のページサイズ可変TLB回路では、CAM回路
を用いて、入力された仮想アドレス(のタグフィール
ド)とメモリに記憶している(タグ)データの比較範囲
(連想範囲)をページサイズを示すメモリセルのデータ
を用いて変化させることで、エントリ毎に異なるページ
サイズのアドレス変換対を記憶する特性を実現してい
た。
【0033】また、従来のページサイズ可変TLBの他
の公知例として、下記文献(ホ)に記載されたページサ
イズ可変TLB回路が知られている。
【0034】(ホ) T.Takayanagi et
al.,”Embedded Memory Des
ign for a Four Issue Supe
rscaler RISC Processor,”P
roceedings ofCustom Integ
rated Circuits Conferenc
e,pp.26.1.1−26.1.6,1994 前記文献(ホ)に記載された従来の他のページサイズ可
変TLB回路は、セットアソシアティブ方式を用い、制
御信号によりインデックスフィールド(仮想アドレス中
のセットアソシアティブ方式のセットを選択するアドレ
ス部分)、および、タグフィールド(TLBに記憶され
たデータと比較する仮想アドレスのアドレス部分)とし
て扱う仮想アドレス中のビット位置を、ページサイズに
合わせて変化させることで、ページサイズ可変の特性を
実現していた。
【0035】
【発明が解決しようとする課題】しかしながら、前記文
献(ハ)に記載されている従来のページサイズ可変TL
B回路では、各エントリ毎に異なるページサイズのアド
レス変換対を記憶する特性を実現していたが、CAM方
式を用いていたために、キャッシュメモリと設計を共通
化できず、また消費電力も大きくなるという問題点があ
った。
【0036】ページサイズ可変TLB回路において、キ
ャッシュメモリと回路を共通化して設計期間を低減し、
また、低消費電力のTLB回路を実現するためにはセッ
トアソシアティブ方式の回路でページサイズ可変の特性
を実現する必要がある。
【0037】一方、前記文献(ホ)に記載された従来の
セットアソシアティブ方式のページサイズ可変TLB回
路では、制御信号により、入力された仮想アドレスから
インデックスフィールド(仮想アドレス中のセットアソ
シアティブ方式のセットを選択するアドレス部分)とタ
グフィールド(TLBに記憶されたデータと比較する仮
想アドレスのアドレス部分)を選択するために、エント
リ毎に異なるページサイズのアドレス変換対を記憶する
ことができないという問題があった。
【0038】即ち、前記文献(ホ)に記載された従来の
セットアソシアティブ方式のページサイズ可変TLB回
路では、TLB内の全ての変換対のページサイズを一括
して変化させていた。
【0039】このため、何種類かのページサイズの変換
対を同時にTLBに記憶することはできず、何種類かの
ページサイズが混在する複数のプロセスを同時に処理で
きないという問題があった。
【0040】さらに、前記文献(イ)に記載されている
従来のTLB回路では、マッチ線の放電回路をダイナミ
ック回路として高速化を図っているが、CAM方式の回
路しか示されておらず、セットアソシアティブ方式の高
速な比較回路等は示されていない。
【0041】また、従来の前記文献(ロ)に記載されて
いる従来のTLB回路は、高速ではあるが、ページサイ
ズは4KBに固定され、異なるページサイズのアドレス
変換対を記憶することはできないという問題点があっ
た。
【0042】本発明は、前記従来技術の問題点を解決す
るためになされたものであり、本発明の目的は、セット
アソシアティブ方式のTLBを備える半導体集積回路に
おいて、エントリ毎に異なるページサイズのアドレス変
換対を記憶することが可能となる技術を提供することに
ある。
【0043】本発明の他の目的は、エントリ毎に異なる
ページサイズのアドレス変換対を記憶することができる
ページサイズ可変のセットアソシアティブ方式のTLB
を備える半導体集積回路において、ダイナミック駆動す
ることが可能となる技術を提供することにある。
【0044】本発明の前記目的並びにその他の目的及び
新規な特徴は、本明細書の記載及び添付図面によって明
らかにする。
【0045】
【課題を解決するための手段】本願において開示される
発明のうち、代表的なものの概要を簡単に説明すれば、
下記の通りである。
【0046】(1)入力される仮想アドレスを、実アド
レスに変換するメモリ回路を備える半導体集積回路にお
いて、前記メモリ回路が、仮想アドレスの上位アドレス
の一部を記憶する第1の領域と、ページサイズを示す値
を記憶する第2の領域とを有する複数のアドレスアレイ
と、実アドレスの上位アドレスの一部を記憶する第1の
領域と、少なくとも実アドレスの残りの上位アドレスを
記憶する第2の領域とを有する複数のデータアレイと、
入力される仮想アドレスのインデックスアドレスをデコ
ードして前記複数のアドレスアレイと前記複数のデータ
アレイの特定の行を選択するデコーダと、前記複数のア
ドレスアレイの前記デコーダにより選択された第2の領
域から読み出されたそれぞれの値に基づき比較範囲を変
更させて、前記複数のアドレスアレイの前記デコーダに
より選択された第1の領域から読み出されたそれぞれの
アドレスと前記入力される仮想アドレスの上位アドレス
の一部とを比較する複数の比較回路と、前記複数のアド
レスアレイの前記デコーダにより選択された第2の領域
から読み出されたそれぞれの値に基づいて、前記複数の
データアレイの前記デコーダにより選択された第2の領
域から読み出されたそれぞれの実アドレス、あるいは、
前記入力される仮想アドレスの所定位置のアドレスのい
ずれか一方を選択する複数の第2のセレクタと、前記複
数の比較回路の比較結果に基づいて、前記複数のデータ
アレイの前記デコーダにより選択された第1の領域から
読み出されたそれぞれの実アドレスの中の1つ、およ
び、前記第2のセレクタにより選択されたそれぞれのア
ドレスの中の1つを選択する第1のセレクタとを有すこ
とを特徴とする。
【0047】(2)前記(1)の手段において、前記複
数のアドレスアレイの第1の領域が、各列毎に複数の記
憶素子からなるメモリセルと、複数のメモリセルが接続
されメモリセルの相補信号が伝達されるデータ線対と、
前記データ線対の電位がスイッチグ素子を介して伝達さ
れるセンス線対と、前記データ線対および前記センス線
対を電源電位にプリチャージする複数のプリチャージ回
路と、前記デコーダにより選択されたメモリセルから読
み出した値により生じる前記センス線対の電位差を増幅
するセンスアンプ回路と、前記センス線対の電位の変化
を検出する検出回路とを有し、前記複数の比較回路が、
一方の入力端子に、前記複数のアドレスアレイの各列毎
に設けられる前記検出回路の出力が入力され、他方の入
力端子に、仮想アドレスの各ビットのビット値が入力さ
れる複数の排他的論理和回路と、前記複数の排他的論理
和回路の出力がゲート電極に印加される複数のNMOS
トランジスタと、前記複数のNMOSトランジスタの一
方の電極に接続されるヒット線とを有することを特徴と
する。
【0048】(3)前記(1)または(2)の手段にお
いて、前記メモリ回路が、前記複数のアドレスアレイの
それぞれの第2の領域にデータを書き込む書込手段を有
し、また、前記複数の第2のセレクタが、読み出し動作
が開始する前に、前記複数のデータアレイの前記デコー
ダにより選択された第2の領域から読み出されたそれぞ
れの実アドレスを選択して前記第1のセレクタに入力
し、読み出し動作が開始された後に、前記複数のアドレ
スアレイの前記デコーダにより選択された第2の領域か
ら読み出されたそれぞれの値が、前記入力される仮想ア
ドレスの所定位置のアドレスを選択する値である場合、
前記複数のデータアレイの第2の領域から読み出された
それぞれの実アドレスに代えて、前記入力される仮想ア
ドレスの所定位置のアドレスを選択して前記第1のセレ
クタに入力する手段を有し、前記書込手段が、前記複数
のアドレスアレイの第2の領域に書き込むそれぞれの値
と、前記複数のデータアレイの第2の領域に書き込むそ
れぞれの実アドレスとの所定の論理をとり、前記複数の
第2のセレクタが、読み出し動作が開始された後に、前
記入力される仮想アドレスの所定位置のアドレスを選択
する時に、前記第1のセレクタが読み出し動作が開始す
る前の状態を維持する値を、前記複数のデータアレイの
それぞれの第2の領域に書き込むことを特徴とする。
【0049】(4)前記(1)または(2)の手段にお
いて、前記メモリ回路が、前記複数の第2のセレクタと
前記第1のセレクタとの間に論理手段を有し、また、前
記複数の第2のセレクタが、読み出し動作が開始する前
に、前記複数のデータアレイの前記デコーダにより選択
された第2の領域から読み出されたそれぞれの実アドレ
スを選択し、読み出し動作が開始された後に、前記複数
のアドレスアレイの前記デコーダにより選択されたそれ
ぞれの第2の領域から読み出されたそれぞれの値が、前
記入力される仮想アドレスの所定位置のアドレスを選択
する値である場合、前記複数のデータアレイの第2の領
域から読み出されたそれぞれの実アドレスに代えて、前
記入力される仮想アドレスの所定位置のアドレスを選択
する手段を有し、前記論理手段が、前記複数の第2のセ
レクタにより選択されたそれぞれのアドレスと、前記複
数のアドレスアレイの前記デコーダにより選択された第
2の領域から読み出されたそれぞれの値と同程度の遅延
を有する信号との間で所定の論理をとって、第1のセレ
クタに出力する手段を有することを特徴とする。
【0050】
【作用】前記(1)の手段によれば、セットアソシアテ
ィブ方式のTLBを備える半導体集積回路において、複
数のアドレスアレイにページサイズを示す値を記憶する
第2の領域を設け、第2の領域から読み出したそれぞれ
の値によりコンパレータで比較する比較範囲を変更す
る。
【0051】また、複数のデータアレイの第2の領域に
は、ページサイズが変わることによって、ページ内のア
ドレスとなるか、ページ番号となるかが変化するビット
位置のアドレスを記憶する。
【0052】複数のアドレスアレイの第2の領域から読
み出したそれぞれの値が、複数のデータアレイの第2の
領域に記憶されるアドレスがページ内のアドレスを示す
場合には、外部から入力された仮想アドレスの所定位置
のアドレスを第2のセレクタにより選択し、物理アドレ
スとして出力する。
【0053】複数のアドレスアレイの第2の領域から読
み出したそれぞれの値が、複数のデータアレイの第2の
領域に記憶されるアドレスがページ番号を示す場合に
は、複数のデータアレイの第2の領域から読み出したそ
れぞれのアドレスを第2のセレクタにより選択し、物理
アドレスとして出力する。
【0054】これにより、アドレスアレイのそれぞれの
エントリに記憶されているページサイズに合ったビット
を比較することが可能となり、また、ページサイズが変
化しオフセットのビット位置が変化しても正しいオフセ
ットの値を出力することが可能となる。
【0055】前記(2)の手段によれば、セットアソシ
アティブ方式のTLBを備える半導体集積回路におい
て、複数のアドレスアレイのデータ線、および、データ
線の電位がスイッチング素子を介して伝達されるセンス
線を、予めプリチャージ回路で電源電位にプリチャージ
する。
【0056】次に、選択されたメモリセルから読み出し
た値により生じる前記センス線対の電位差をセンスアン
プ回路で増幅し、前記センス線対の電位の変化を検出回
路で検出して、1ビット排他的論理和回路に伝達する。
【0057】1ビット排他的論理和回路は、メモリセル
に記憶されたアドレスと入力される仮想アドレスとを比
較し、その比較結果をヒット線にソースが共通に接続さ
れたNMOSトランジスタのゲートに入力する。
【0058】これにより、センスアンプを動作させ、デ
ータ線、センス線の電位が確定した後、直ちに1ビット
排他的論理和回路で比較を行うことができ、余分なタイ
ミングマージンが必要なく高速化が可能となる。
【0059】前記(3)の手段によれば、第2のセレク
タが、読み出し動作が開始する前に、複数のデータアレ
イの第2の領域から読み出された実アドレスを選択して
第1のセレクタに入力し、読み出し動作が開始された後
に、複数のアドレスアレイの第2の領域から読み出され
た値が、複数のデータアレイの第2の領域に記憶される
アドレスがページ内のアドレスを示す場合に、複数のデ
ータアレイの第2の領域から読み出された実アドレスに
代えて、入力される仮想アドレスの所定位置のアドレス
を選択して前記第1のセレクタに入力する。
【0060】また、複数のアドレスアレイの第2の領域
に書き込む値と、複数のデータアレイの第2の領域に書
き込む実アドレスとの所定の論理をとり、複数の第2の
セレクタが、読み出し動作が開始された後に、入力され
る仮想アドレスの所定位置のアドレスを選択する時に、
第1のセレクタが読み出し動作が開始する前の状態を維
持する値を、複数のデータアレイの第2の領域に書き込
む。
【0061】これにより、信号のレーシングが防止で
き、アドレス変換時間が増大するのを防止することが可
能となる。
【0062】前記(4)の手段によれば、第2のセレク
タが、読み出し動作が開始する前に、複数のデータアレ
イの第2の領域から読み出された実アドレスを選択し、
読み出し動作が開始された後に、複数のアドレスアレイ
の第2の領域から読み出された値が、複数のデータアレ
イの第2の領域に記憶されるアドレスがページ内のアド
レスを示す場合に、複数のデータアレイの第2の領域か
ら読み出された実アドレスに代えて、記入力される仮想
アドレスの所定位置のアドレスを選択し、また、第2の
セレクタにより選択されたアドレスと、複数のアドレス
アレイの第2の領域から読み出された値と同程度の遅延
を有する信号との間で所定の論理をとって、第1のセレ
クタに出力する。
【0063】これにより、信号のレーシングが防止で
き、アドレス変換時間が増大するのを防止することが可
能となる。
【0064】
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。
【0065】なお、実施例を説明するための全図におい
て、同一機能を有するものは同一符号を付け、その繰り
返しの説明は省略する。
【0066】[実施例1]図1は、本発明の一実施例で
ある(実施例1)であるページサイズ可変セットアソシ
アティブTLBの概略構成を示すブロック図である。
【0067】図1に示すTLBは、4ウエイセットアソ
シアティブの構成で、1KBおよび4KBの2種類のペ
ージサイズのアドレス変換対を記憶するページサイズ可
変セットアソシアティブTLBである。
【0068】なお、図1に示すページサイズ可変セット
アソシアティブTLBのセット数は32、エントリ数は
128である。
【0069】図1示すページサイズ可変セットアソシア
ティブTLBは、書き込みウエイセレクタ400、デコ
ーダ401、アドレスアレイ402、データアレイ40
3、コンパレータ404、ウエイセレクタ回路405よ
り構成される。
【0070】アドレスアレイ402は、タグ(tag)
を記憶する領域(VPN[31:17]、VPN[1
1:10])502と、そのエントリに登録されている
アドレス変換対(アドレスアレイのタグとデータアレイ
の実ページ番号)が有効か無効かを示す識別子すなわち
V(valid)ビット501、ページサイズを示すビ
ットを記憶する領域SZ(500)から構成される。
【0071】ここで、VPNは、仮想アドレス空間での
ページ番号(Virtual Page Numbe
r)を意味する。
【0072】さらに、以下、本明細書では、[M:N]
でMビット目からNビット目の位置を指すものとする。
【0073】また、データアレイ403は、エントリ毎
にページサイズが変わることによって、ページ内のアド
レス(オフセット)となるか、ページ番号となるかが変
化するビット位置のデータを記憶する領域([11:1
0])503と、必ず変換を受けるビット位置のデータ
を記憶する領域(PPN[31:12])504とから
構成される。
【0074】デコーダ401は、仮想アドレス(VA
[31:0])505のインデックスフィールド(VA
[16:12])8をデコードし、アドレスアレイ40
2およびデータアレイ403の中の、同一のインデック
スフィールドで選択される4つのエントリの組を選択す
る。
【0075】読み出されたセットのアドレスアレイ40
2のタグフィールド(VPN[31:17]およびVP
N[11:10])15と仮想アドレス505のタグフ
ィールド(VA[31:17]およびVA[11:1
0])9とをコンパレータ404で比較する。
【0076】このコンパレータ404からは、ヒットし
たウエイを選択するためのウエイ選択信号である比較の
結果を示すヒット信号20が出力される。
【0077】そして、それぞれのデータアレイ403か
ら読み出されたデータ(18,19)の中から、アドレ
スアレイ402のタグフィールド(VPN[31:1
7]およびVPN[11:10])15と仮想アドレス
505のタグフィールド(VA[31:17]およびV
A[11:10])9が一致し、かつ、V(vali
d)ビット501の値37が1を示すウエイのデータ
を、4:1ウエイセレクタ回路405で選択して物理ア
ドレス(21,22)として出力する。
【0078】なお、本実施例では、V(valid)ビ
ット501の値が1のときエントリに登録されているア
ドレス変換対が有効なものとして説明する。
【0079】本実施例では、1KBおよび4KBの2種
類のページサイズのアドレス変換対を記憶するために以
下の構成を採用している。
【0080】仮想アドレス505の中で、ページサイズ
が1KBの場合は、9ビット〜0ビット(VA[9:
0])507がオフセットとなり、ページサイズが4K
Bの場合は、11ビット〜0ビット(VA[11:
0])506がオフセットとなる。
【0081】このため、仮想アドレス505の11ビッ
ト〜10ビット(VA[11:10])は、オフセット
の一部となる場合と、仮想ページ番号の一部となる場合
がある。
【0082】各エントリに登録されているアドレス変換
対のページサイズは、予め分かっているわけではなく、
また、各エントリ毎に1KBあるいは4KBのページサ
イズのアドレス変換対が登録される可能性がある。
【0083】このため、オフセットとなる可能性のある
仮想アドレス505の11ビット〜10ビット(VA
[11:10])をインデックス(セットを選択するア
ドレス)に含めることはできず、11ビット〜10ビッ
ト(VA[11:10])より上位のビット位置の仮想
アドレスの部分をインデックスとしなければならない。
【0084】図1に示すページサイズ可変セットアソシ
アティブTLBは、128エントリの4ウエイセットア
ソシアティブ構成(32セット)なので、インデックス
フィールドは、仮想アドレス505の16ビット〜12
ビット(VA[16:12])8の5ビットとなる。
【0085】また、ページサイズが1KBの場合は、仮
想アドレス505の11ビット〜10ビット(VA[1
1:10])は仮想ページ番号の一部分なので、仮想ア
ドレス505のタグフィールドとして扱わなければなら
ない。
【0086】このため、アドレスアレイ402にも、1
1ビット〜10ビット(VPN[11:10])を記憶
する領域を設けている。
【0087】さらに、エントリ毎にページサイズを表す
ビットを記憶する領域SZ(500)を設けて、読み出
した領域SZ(500)の値16により、11ビット〜
10ビット([11:10])を比較に含めるか含めな
いかを決定する。
【0088】本実施例では、例えば、領域SZ(50
0)の値が1のときに4KB、領域SZ(500)の値
が0のときに1KBのページサイズを表すものとして説
明する。
【0089】即ち、読み出した領域SZ(500)の値
16が0の場合は、アドレスアレイ402から読み出し
た31ビット〜17ビット(VPN[31:17])、
および、11ビット〜10ビット(VPN[11:1
0])と、仮想アドレス505の31ビット〜17ビッ
ト(VA[31:17])、および、11ビット、10
ビット(VA[11:10])とを比較する。
【0090】また、読み出した領域SZ(500)の値
16が1の場合は、アドレスアレイ402から読み出し
た31ビット〜17ビット(VPN[31:17])
と、仮想アドレス505の31ビット〜17ビット(V
A[31:17])とだけを比較する。
【0091】このとき、比較結果20は、アドレスアレ
イ402から読み出した値と入力された仮想アドレス5
05の値とが一致し、かつ、V(valid)ビット5
01の値が1でなければ、ヒットとならないよう構成す
る。
【0092】インデックスを仮想アドレス505の16
ビット〜12ビット(VA[16:12])の5ビット
とし、ページサイズが4KBの場合のオフセット(VA
[11:10])506のすぐ上位の5ビットとしたこ
とで、ページサイズが1KBの場合は、インデックスよ
り下位の2ビット(VA[11:10])もタグフィー
ルドに含めなければならない。
【0093】このためページサイズが1KBの場合、仮
想アドレス505の31ビット〜17ビット(VA[1
6:12])が同一で、仮想アドレス505の11ビッ
ト〜10ビット(VA[11:10])が異なる仮想ア
ドレス505に対応する実ページ番号は同一のセットに
マッピングされ、衝突の可能性が大きくなる。
【0094】しかしながら、図1に示すTLBでは、イ
ンデックスより下位のタグフィールドが2ビットで、か
つ、4ウエイなので、衝突の可能性がある全ての変換対
を同一のセットに記憶することができ、衝突の問題を回
避できる。
【0095】ウエイ数が少ない場合、あるいはインデッ
クスより下位のタグフィールドのビット数が多い場合は
セットを選択する関数に適切なハッシュイングを施すこ
とで衝突の可能性を小さくできる。
【0096】また、ページサイズが4KBの場合、仮想
アドレス505の11ビット〜10ビット(VA[1
1:10])の2ビットはオフセットの一部となり、仮
想アドレス505の11ビット〜10ビット(VA[1
1:10])は変換を受けないが、ページサイズが1K
Bの場合、仮想アドレス505の11ビット〜10ビッ
ト(VA[11:10])の2ビットは仮想ページ番号
の一部なので、物理ページ番号に変換されなければなら
ない。
【0097】このために、読み出した領域SZ(50
0)の値16により、データアレイ403の領域([1
1:10])503から読み出した11ビット〜10ビ
ット(17)、あるいは、仮想アドレス505の11ビ
ット〜10ビット(VA[11:10])7のどちらか
一方を選択して物理アドレス21として出力する。
【0098】即ち、領域SZ(500)の値が1のとき
は、ページサイズが4KBとなり、ページ内オフセット
は仮想アドレス505の11ビット〜0ビット(VA
[11:0])の12ビットとなるので、仮想アドレス
505の11ビット〜10ビット(VA[11:1
0])7をそのまま物理アドレスの11ビット〜10ビ
ット(21)として出力するようセレクタ回路406を
制御する。
【0099】また、領域SZ(500)の値が0のとき
は、ページサイズが1KBとなり、ページ内オフセット
は仮想アドレス505の9ビット〜0ビット(VA
[9:0])の10ビットとなるので、データアレイ4
03の領域([11:10])503から読み出した1
1ビット〜10ビット(17)を物理アドレスの11ビ
ット〜10ビット(21)として出力するようセレクタ
回路406を制御する。
【0100】以上の構成により、図1に示すTLBで、
エントリ毎に異なるページサイズのアドレス変換対を記
憶する特性を実現することが可能となる。
【0101】書き込み時には、書き込みウエイセレクタ
400で、データを書き込むウエイを選択し、データを
書き込む。
【0102】セットの選択は、書き込み時も読み出し時
と同様にデコーダ401で行われることはいうまでもな
い。
【0103】なお、NORゲート301等の、書き込み
データの制御の詳細については後述する。
【0104】また、図1に示すTLBでは、前記した通
常のTLBの読み出し(連想読み出し)以外に、テスト
時等には、必ずデータアレイの内容を読み出す必要があ
るので、NAND回路302を設けている。
【0105】即ち、読み出した領域SZ(500)の値
16により、データアレイ403の領域([11:1
0])503から読み出した11ビット〜10ビット
(17)、あるいは、仮想アドレス505の11ビット
〜10ビット(VA[11:10])7のどちらか一方
を選択して物理アドレス21として出力するだけでな
く、制御信号11を低レベル(以下、”L”と略す)と
することで、領域SZ(500)の値に関係なくデータ
アレイ403の領域([11:10])503から読み
出した11ビット〜10ビット(17)をセレクタ回路
406で選択できるようにしている。
【0106】図1では、4ウエイセットアソシアティブ
方式のTLBの例を説明したが、ウエイ数を1つにする
ことで容易に、各ページをTLBのどの位置にマッピン
グするかが一意に決められるダイレイクトマップ方式の
TLBを構成できることはいうまでもない。
【0107】図1に示すTLBを高速化するための構成
について、図1ないし図9を用いて説明する。
【0108】図2は、図1に示すコンパレータ404を
構成する1ビット分の比較回路(EOR回路)の具体的
な回路構成を示す回路図であり、図3は、その動作波形
を示す図である。
【0109】図2に示すNチャネルMOSトランジスタ
(以下、NMOSトランジスタと称す。)(107,1
08)およびPチャネルMOSトランジスタ(以下、P
MOSトランジスタと称す。)(210,211)が1
ビットの比較回路として動作する。
【0110】図2に示す比較回路は、1ビット分の比較
回路なので、アドレスアレイ402のメモリセルアレイ
の各列(カラム)に1つレイアウトされる。
【0111】次に、図3に示す動作波形に沿って、その
動作を説明する。
【0112】PMOSトランジスタ(200〜20
2)、および、PMOSトランジスタ(205〜20
7)により、データ線(24,25)、および、センス
線(30,31)を、予め正の電源電位(Vcc)にプ
リチャージする。
【0113】ここで、トランスァMOSトランジスタ
(102,103,203,204)によりデータ線
(24,25)と分離した信号線部分をセンス線(3
0,31)と呼ぶこととする。
【0114】その後、データ線(24,25)およびセ
ンス線(30,31)のプリチャージ信号(26,2
9)(φpc)を高レベル(以下、”H”と称す。)と
して、プリチャージ用のPMOSトランジスタ(200
〜202)、および、PMOSトランジスタ(205〜
207)を非導通(以下、OFFと称する。)し、ワー
ド線23を”H”とする。
【0115】ワード線23を”H”とすることで、メモ
リセル407に読み出し電流が流れ、データ線(24,
25)およびセンス線(30,31)に電位差が生じ
る。
【0116】センス線(30,31)に十分な電位差が
生じた時点で、yスイッチMOSトランジスタの制御信
号27(φys)を”H”として、yスイッチMOSト
ランジスタであるトランスァMOSトランジスタ(10
2,103,203,204)をOFFとし、センス線
(30,31)をデータ線(24,25)から分離す
る。
【0117】同時に、センスアンプの起動信号32(φ
se)を”H”として、MOSトランジスタ(208,
209,104,105,106)から構成されるセン
スアンプを動作させる。
【0118】センス線(30,31)をデータ線(2
4,25)から分離した時点で、メモリセル407の読
み出し電流はセンス線(30,31)の信号に関係がな
くなるので、ワード線23を図3に示すように低レベル
(以下、”L”と称す。)としてもよい。
【0119】センス線(30,31)をデータ線(2
4,25)から分離することで、センス線(30,3
1)の負荷容量が低減され高速化が達成される。
【0120】また、センスアンプの起動信号32(φs
e)を”H”とする時刻までに比較する仮想アドレス5
05を確定させておく。
【0121】したがって、センスアンプを動作させるこ
とで、センス線(30,31)対の一方の電位がGND
電位(0V)となる。
【0122】仮想アドレス505の1ビット(35)と
メモリセル407から読み出した1ビットとが一致した
場合には、NMOSトランジスタ109のゲート電位が
低レベルとなり、仮想アドレス505の1ビット(3
5)とメモリセル407から読み出した1ビットとが不
一致の場合には、NMOSトランジスタ109のゲート
電位が”H”となるようにインバータ307等を用いて
信号の極性を設定する。
【0123】即ち、NMOSトランジスタ(107,1
08)、および、PMOSトランジスタ(210,21
1)は、仮想アドレス505の1ビット(35)とメモ
リセル407から読み出した1ビットとのEOR(排他
的論理和)の結果を、NMOSトランジスタ109のゲ
ートに出力する回路として動作する。
【0124】ここで、データ線(24,25)およびセ
ンス線(30,31)は、予めVccにプリチャージさ
れているので、インバータ(305,306)の出力
は”L”となっている。
【0125】このため、センスアンプを動作させ、セン
ス線(30,31)対の一方の電位が”L”となる時刻
以前には、仮想アドレス505の1ビット(35)とメ
モリセル407から読み出した1ビットとの一致、不一
致にかかわりなく、NMOSトランジスタ109のゲー
ト電位は”L”となっている。
【0126】センスアンプを動作させることで、センス
線(30,31)の一方が”L”となり、仮想アドレス
505の1ビット(35)とメモリセル407から読み
出した1ビットとが不一致の場合には、NMOSトラン
ジスタ109が導通(以下、ONと称す。)し、予めV
ccにプリチャージされた信号線36が放電される。
【0127】以下、本明細書では、比較結果を得るため
のこの信号線36を、ヒット線と呼ぶことにする。
【0128】仮想アドレス505の1ビット(35)と
メモリセル407から読み出した1ビットとが一致した
場合には、NMOSトランジスタ109は、OFFのま
までヒット線36も”H”を保つ。
【0129】図3に示す動作波形では、仮想アドレス5
05の1ビット(35)とメモリセル407から読み出
した1ビットとが不一致の場合を実線で、仮想アドレス
505の1ビット(35)メモリセル407から読み出
した1ビットとが一致した場合を破線で示している。
【0130】前記ヒット線36にNMOSトランジスタ
109に相当するヒット線放電NMOSトランジスタを
複数(比較するビット数分)接続することで、必要なビ
ット幅の比較結果が得られる。
【0131】なお、具体的な回路の詳細については、図
4で後述する。
【0132】仮想アドレス505の1ビット(35)と
メモリセル407から読み出した1ビットとが不一致の
場合、ヒット線36が”L”となり、後述する図4に示
す回路およびウエイセレクタ回路405でデータアレイ
403の読み出しデータを選択した後、センスアンプの
起動信号32(φse)を”L”としてセンスアンプを
OFFとし、また、データ線(24,25)およびセン
ス線(30,31)のプリチャージ信号(26,29)
(φpc)、yスイッチMOSトランジスタの制御信号
27(φys)を”L”として、データ線(24,2
5)およびセンス線(30,31)を次のサイクルに備
えてプリチャージする。
【0133】センス線(30,31)をプリチャージす
ることで、NMOSトランジスタ109のゲート電位
も”L”となり、NMOSトランジスタ109のゲート
電位が”L”となった後、ヒット線36も次のサイクル
に備えて”H”にプリチャージする。
【0134】以上説明したように、データ線(24,2
5)およびセンス線(30,31)のプリチャージトラ
ンジスタをPMOSトランジスタとし、プリチャージ時
に比較回路の比較結果が、仮想アドレス505の1ビッ
ト(35)とメモリセル407から読み出したデータと
が一致したときと同じになるように、比較回路(MOS
トランジスタ107,108,210,211)の入力
の極性を設定する。
【0135】これにより、センスアンプ(MOSトラン
ジスタ208,209,104,105,106)を動
作させる起動信号32(φse)のタイミングを設計す
るだけで、センスアンプが動作する。
【0136】それにより、センス線(30,31)対の
一方の電位が”L”となり、仮想アドレス505と読み
出しデータの比較が始まり、比較のための特別なタイミ
ング信号を用意する必要がない。
【0137】したがって、本実施例では、余分なタイミ
ングマージンが不要であるため、高速化を達成すること
が可能となる。
【0138】図4は、図2に示す1ビット分の比較回路
(EOR回路)の出力から、ヒットしたウエイを選択す
るためのウエイ選択信号発生回路の回路構成を示す回路
図である。
【0139】図4に示すウエイ選択信号発生回路と図2
に示す比較回路とが、図1に示すコンパレータ404を
構成する。
【0140】次に、図4に示すウエイ選択信号発生回路
の動作について説明する。
【0141】図4に示すNMOSトランジスタ(10
9,110,111,112)は、図2に示す各列のE
OR回路のヒット線36を放電するNMOSトランジス
タと、それに相当する他の列のヒット線を放電するNM
OSトランジスタを示している。
【0142】PMOSトランジスタ(212,215,
214,217)により、ヒット線(36,38)、N
OR回路312の出力およびAND回路313の出力
は、予め正の電源電位(Vcc)にプリチャージされて
いる。
【0143】プリチャージ信号39(φpc_nor)
およびプリチャージ信号40(φpc_nor2)を”
H”として、プリチャージ用PMOSトランジスタ(2
12,215,214,217)をOFFとした後、ア
ドレスアレイ402から読み出したタグフィールド(V
PN[31:17]およびVPN[11:10])15
と仮想アドレス505のタグフィールド(VA[31:
17]およびVA[11:10])9との比較を開始す
る。
【0144】なお、本明細書では、例えば、図4に示す
NOR回路312のように、それぞれ反転された入力信
号が入力される2入力AND回路を、NOR回路と呼ぶ
ことにする。
【0145】ヒット線(36,38)、NOR回路31
2の出力およびAND回路313の出力をプリチャージ
することで、ヒット線(36,38)、NOR回路31
2の出力およびAND回路313の出力は”H”、NA
ND回路314の出力は”L”となり、ウエイ選択信号
20も”L”となる。
【0146】このウエイ選択信号20を発生するウエイ
選択信号発生回路は、各ウエイに一回路置かれ、このウ
エイ選択信号20が連想読み出しに際して、そのウエイ
がヒットしたかミスしたかを示す。
【0147】以下、本明細書では、アドレスレイ402
から読み出したタグフィールドと、仮想アドレス505
のタグフィールドとの比較結果が一致し、かつ、V(v
alid)ビット501の値が1の場合をヒットと呼
び、ヒットしなかった場合をミスと呼ぶことにする。
【0148】プリチャージにより全てのウエイのウエイ
選択信号20(図1に示すTLBでは、4ウエイなので
4つの信号がある)はヒットの状態(図4では”L”)
となり、アドレスアレイ402から読み出したタグフィ
ールドと仮想アドレス505のタグフィールドとの比較
結果、ヒットしたウエイがある場合は、そのヒットした
ウエイのウエイ選択信号20はヒットの状態(”L”)
を保ち、他のウエイのウエイ選択信号20はミスの状態
(”H”)となる。
【0149】全てのウエイがミスの場合は、全てのウエ
イのウエイ選択信号20はミスの状態(”H”)とな
る。
【0150】このウエイ選択信号20を用いて、後述す
るように、ウエイセクタタ回路405を制御し、データ
アレイ403の読み出しデータを選択する。
【0151】データアレイ403の読み出しデータを選
択した後に、再び、ヒット線(36,38)およびAN
D回路(312,313)の出力をプリチャージするこ
とは、図2の場合と同様である。
【0152】図2に示す比較回路の説明で述べたよう
に、センスアンプの起動信号32(φse)を”H”と
することで比較が始まり、仮想アドレス505の所定の
位置の1ビットとメモリセルから読み出した1ビットと
が不一致の場合には、NMOSトランジスタ109、N
MOSトランジスタ110、NMOSトランジスタ11
1、あるいは、NMOSトランジスタ112がONとな
る。
【0153】これにより、アドレスアレイ402から読
み出した31ビット〜17ビット(VPN[31:1
7])と仮想アドレス505の31ビット〜17ビット
(VA[31:17])とが1ビットでも一致しないと
ヒット線36が”L”となり、また、アドレスアレイ4
02から読み出した11ビット〜10ビット(VPN
[11:10])と仮想アドレス505の11ビット〜
10ビット(VA[11:10])とが1ビットでも一
致しないとヒット線38が”L”となる。
【0154】ヒット線36が”L”となると、インバー
タ308の出力は”H”、NOR回路312の出力は”
L”、NAND回路314の出力は”H”となる。
【0155】NAND回路314の出力が”H”となる
ので、ウエイ選択信号20もミスの状態(”H”)とな
る。
【0156】ここで、PMOSトランジスタ(213,
216)は、アドレスアレイ402のから読み出した3
1ビット〜17ビット(VPN[31:17])、およ
び、11ビット〜10ビット(VPN[11:10]
と、仮想アドレス505の31ビット〜17ビット(V
A[31:17])、および、11ビット〜10ビット
(VA[11:10])とが一致した場合に、ヒット線
(36,38)の電位を”H”に保つための素子であ
る。
【0157】なお、図4では、インバータ(308,3
10)の出力からフィードバックする構成を示している
が、十分大きなスタティックな抵抗でも良いことはいう
までもない。
【0158】エントリに登録されているアドレス変換対
が有効か無効かを示す識別子V(valid)ビット5
01の値37によって、ウエイ選択信号の値を変化させ
なければならないので、図4に示す回路では、NOR回
路312を付加している。
【0159】V(valid)ビット501の値37が
0(”L”)の場合は、アドレスアレイ402から読み
出したタグフィールド(VPN[31:17]およびV
PN[11:10])と仮想アドレス505のタグフィ
ールド(VA[31:17]およびVA[11:1
0])9との比較結果によらず、インバータ309の出
力は”H”となる。
【0160】インバータ309の出力が”H”となるの
で、NOR回路312の出力は”L”、NAND回路3
14の出力は”H”、ウエイ選択信号20も”H”とな
る。
【0161】即ち、図4に示す回路では、V(vali
d)ビット501の値37が0のときは、アドレスアレ
イ402から読み出したタグフィールド(VPN[3
1:17]およびVPN[11:10])と仮想アドレ
ス505のタグフィールド(VA[31:17]および
VA[11:10])9との比較結果によらず、ウエイ
選択信号20はミスの状態となる。
【0162】また、本実施例では、以下に説明するよう
に、ページサイズを示す領域SZ(500)の値16に
よって、アドレスの比較の範囲(連想範囲)を変化させ
ている。
【0163】図1に示すTLBの説明で述べたように、
読み出した領域SZ(500)の値16が0の場合(1
KBページ)は、アドレスアレイ402から読み出した
31ビット〜17ビット(VPN[31:17])、お
よび、11ビット〜10ビット(VPN[11:1
0])と、仮想アドレス505の31ビット〜17ビッ
ト(VA[31:17])、および、11ビット、10
ビット(VA[11:10])とを比較する。
【0164】また、読み出した領域SZ(500)の値
16が1の場合(4KBページ)は、アドレスアレイ4
02から読み出した31ビット〜17ビット(VPN
[31:17])と、仮想アドレス505の31ビット
〜17ビット(VA[31:17])とだけを比較しな
ければならない。
【0165】そのため、図4に示すウエイ選択信号発生
回路では、NAND回路313が付加されている。
【0166】領域SZ(500)の値16が0(”
L”)の場合、インバータ311の出力が”H”となる
ので、NAND回路313の出力は、ヒット線38の出
力、即ち、アドレスアレイ402から読み出した11ビ
ット〜10ビット(VPN[11:10])と、仮想ア
ドレス505の11ビット〜10ビット(VA[11:
10])との比較結果によって変化する。
【0167】アドレスアレイ402から読み出した11
ビット〜10ビット(VPN[11:10])と、仮想
アドレス505の11ビット〜10ビット(VA[1
1:10])とが一致し、ヒット線38が”H”の場合
は、インバータ310の出力が”L”、NAND回路3
13の出力は”H”となる。
【0168】ここで、アドレスアレイ402から読み出
した31ビット〜17ビット(VPN[31:17])
と、仮想アドレス505の31ビット〜17ビット(V
A[31:17])とが一致した場合、NAND回路3
14の出力は”L”となり、ウエイ選択信号20はヒッ
トの状態(”L”)を保つ。
【0169】アドレスアレイ402から読み出した11
ビット〜10ビット(VPN[11:10])と、仮想
アドレス505の11ビット〜10ビット(VA[1
1:10])とが一致せず、ヒット線38が”L”とな
った場合は、インバータ310の出力が”H”、NAN
D回路313の出力は”L”、NAND314の出力
は”H”、ウエイ選択信号20はミスの状態(”H”)
となる。
【0170】一方、読み出した領域SZ(500)の値
16が1の場合は、インバータ311の出力が”L”と
なるので、NAND回路313の出力は、アドレスアレ
イ402から読み出した11ビット〜10ビット(VP
N[11:10])と、仮想アドレス505の11ビッ
ト〜10ビット(VA[11:10])との比較結果に
かかわらず”H”となる。
【0171】したがって、ウエイ選択信号20は、アド
レスアレイ402から読み出した31ビット〜17ビッ
ト(VPN[31:17])と、仮想アドレス505の
31ビット〜17ビット(VA[31:17])との比
較結果、および、V(valid)ビット501の値3
7だけで決定される。
【0172】前記した構成により、ぺージサイズを示す
ビット領域SZ(500)の値16によってコンパレー
タの比較範囲を変化させ、エントリ毎のページサイズ可
変の特性を実現することが可能となる。
【0173】また、図4に示すウエイ選択信号発生回路
では、高速化のために以下の構成を採用している。
【0174】図4では、NMOSトランジスタ109と
NMOSトランジスタ110との2つのトランジスタし
か図示していないが、比較ビット数分、本実施例では、
15個のトランジスタが並列に接続される。
【0175】前記NMOSトランジスタ(109〜11
0)、および、NMOSトランジスタ(111,11
2)は、NOR回路として働き、予めプリチャージされ
たヒット線(36,38)を放電する。
【0176】論理機能を実現するトランジスタがNMO
Sトランジスタだけのいわゆるダイナミック回路なの
で、同一入力容量で比較した場合、CMOSトランジス
タから構成されるスタティックな回路に対して高速化が
達成される。
【0177】また、インバータ(308,310)、N
OR回路312、NAND回路313、NAND31
4、インバータ回路(315,316)の論理しきい値
をずらすことで、さらに高速化できる。
【0178】具体的には、インバータ(308,31
0)、NAND回路314、インバータ回路316は、
出力信号の立ち上がりが速くなるようPMOSトランジ
スタのゲート幅をNMOSトランジスタより大きく設計
し、論理しきい値をVcc/2より高く設定する。
【0179】NOR回路312、NAND回路313、
インバータ回路315は、出力信号の立ち下がりが速く
なるようNMOSトランジスタのゲート幅をPMOSト
ランジスタより大きく設計し、論理しきい値をVcc/
2より低く設定する。
【0180】これにより、プリチャージによりヒットの
状態(”L”)となったウエイ選択信号20が、ミスの
状態(”H”)に変化する場合の遅延時間を短縮するこ
とが可能となる。
【0181】前記ウエイ選択信号20が、ヒットの状態
(”L”)からミスの状態(”H”)に変化する場合の
遅延時間を、順方向の遅延時間と呼び、逆に、ウエイ選
択信号20が、ミスの状態(”H”)からヒットの状態
(”L”)に変化するときの遅延時間を、逆方向の遅延
時間と呼ぶことにする。
【0182】この場合に、ウエイ選択信号20が、ミス
の状態(”H”)からヒットの状態(”L”)に変化す
るときの遅延時間は大きくなるが、アドレス変換時間に
関係するのは順方向の遅延時間だけなので、動作サイク
ル時間内にウエイ選択信号20をヒットの状態(”
L”)とできれば、サイクル時間を増大させることなく
アドレス変換時間を短縮することができる。
【0183】また、論理しきい値をずらすだけでなく、
クロックによる消費電力増とサイクル時間のトレードオ
フを考慮して、図4に示すPMOSトランジスタ(21
4,217)のようにプリチャージと組合せることがで
きることはいうまでもない。
【0184】この場合に、プリチャージを行うと、クロ
ック線40の消費電力は増加するが、逆方向の遅延時間
を短縮することが可能となる。
【0185】図4に図示はしていないが、高速化のため
に、15個のトランジスタが並列に接続されているNM
OSトランジスタ(109〜110)のように1ヒット
線で多入力(図4では15)NOR機能を実現するだけ
でなく、ヒット線増による面積の増大が大きくならない
場合には、NMOSトランジスタ(109〜110)を
分割し、例えば、8入力NOR回路と7入力NOR回路
に分割し、NOR回路312を3入力NOR回路として
負荷容量を均等化し高速化することも可能である。
【0186】図4の場合には、ヒット線36の寄生容量
が大きくなるので、前記したような構成を採用するとよ
い。
【0187】以上説明した構成により、高速な可変比較
範囲のコンパレータを実現することが可能である。
【0188】また、図4に示すウエイ選択信号発生回路
では、占有面積を低減するために以下の構成を採用して
いる。
【0189】前記したように、ヒット線(36,38)
は、高速化のためにダイナミック回路で構成されている
が、実際のレイアウトでは、4ウエイ分のヒット線(3
6,38)が隣接して配置されることになる。
【0190】ヒットするウエイは1つなので、4本の隣
接するヒット線のうち、3本のヒット線の電位は”H”
から”L”に変化し、1本だけが”H”を保つ。
【0191】したがって、ヒットしたヒット線(36,
38)の電位は、カップリングにより、隣接する配線と
の線間容量と総配線容量の比程度の”H”レベルの低下
が生じる。
【0192】高速化のために、インバータ(308,3
10)の論理しきい値を高くした場合には、インバータ
(308,310)の動作余裕が減少するので、ダイナ
ミック回路を構成するヒット線(36,38)は隣接配
線とシールドすることが望ましいが、これは占有面積を
増大させることになる。
【0193】この占有面積の増大を必要最小限に抑える
ために、多入力の論理機能が必要ない部分、即ち、読み
出したV(valid)ビット501の値37と領域S
Z(500)の値16の信号線はシールドせず、V(v
alid)ビット501の値37と領域SZ(500)
の値16を駆動する回路はスタティック回路とする。
【0194】この場合、インバータ(309,311)
の論理しきい値もVcc/2程度とする。
【0195】なお、領域SZ(500)の値16の駆動
回路については、図9で後述する。
【0196】なぜならば、クリティカルパスはヒット線
(36,38)なので、V(valid)ビット501
の値37と領域SZ(500)の値16をダイナミック
回路として高速化しなくても、ヒット線(36,38)
の遅延時間内にV(valid)ビット501の値37
と領域SZ(500)の値16を駆動できれば、全体の
アドレス変換時間に影響がないからである。
【0197】以上説明した構成ににより、占有面積の増
加を抑えつつアドレス変換時間を短縮することが可能と
なる。
【0198】図5、図6は、ウエイセレクタ回路405
の具体的な回路構成を示す回路図であり、図7は、その
動作波形を示す図である。
【0199】図5に示すOR−AND−NOT複合ゲー
ト回路(319,320)およびNOR回路321が、
図1に示すウエイセレクタ回路405を構成する。
【0200】図6は、図5に示すOR−AND−NOT
複合ゲート回路(319,320)をMOSトランジス
タで構成した回路構成を示す回路図である。
【0201】本実施例では、各ビット毎に4ウエイ並べ
ており、図5に示すウエイセレクタ回路405は1ビッ
ト分の回路なので、データアレイのメモリセルアレイの
4列に1つレイアウトされる。
【0202】なお、図5では、メモリセルアレイ1列分
のカラム回路と4ウエイ分のウエイセレクタ回路405
のみを示している。
【0203】4:1セレクタ(マルチプレクサ)におい
て、4つの制御信号が全て同じ状態になっても、出力が
ハイインピーダンスとなったり、定常電流が流れないよ
うにするために、ウエイセレクタ回路405に複合ゲー
ト回路を採用する。
【0204】本実施例においては、図5に示すように、
4:1ウエイセレクタ回路を、図6に示すOR−AND
−NOT複合ゲート回路(319,320)2個と、2
入力NOR回路321の組み合わせで実現する。
【0205】OR−AND−NOT複合ゲート回路31
9のデータ入力には、インバータ318で反転されたセ
ンス線44の信号が入力される。
【0206】センス線(43,44)は、アドレス比較
開始前に”H”にプリチャージされ、また、ウエイ選択
信号(20,48,49,50)も4ウエイ全て”L”
となるので、OR−AND−NOT複合ゲート回路(3
19,320)の出力はアドレス比較開始前には全て”
H”となる。
【0207】OR−AND−NOT複合ゲート回路(3
19,320)の入力とならない方のセンス線43にも
インバータ回路(出力オープン)を置いているのは、セ
ンス線(43,44)対の容量を等しくするためであ
る。
【0208】図5に示すウエイセレクタ回路405の動
作を、図7の動作波形を用いて説明する。
【0209】図5に示すウエイ選択信号(20,48,
49,50)は、図4に示すウエイ選択信号とそれに相
当する他のウエイを選択するウエイ選択信号である。
【0210】図5に示すウエイ選択信号(20,48,
49,50)、および、ウエイセレクタ回路以外の回路
は、図2に示したアドレスアレイ402の回路と同じた
め、タイミングの詳細やプリチャージについての説明は
省略する。
【0211】図5に示すウエイセレクタ回路405は待
機状態(プリチャージされた状態)では、インバータ3
18の出力は”L”となっており、他の列のインバータ
318の出力に相当する45、46、47も”L”とな
っている。
【0212】これにより、MOSトランジスタ(20
8,209,104,105,106)から構成される
センスアンプを動作させ、センス線(43,44)対の
一方の電位が”L”となる時刻以前には、図4に示す回
路で説明したようにウエイ選択信号(20,48,4
9,50)は、プリチャージにより全てのウエイはヒッ
トの状態(”L”)となっている。
【0213】また、OR−AND−NOT複合ゲート回
路(319,320)は、図6に示すウエイ選択信号
(20,48)が共に”L”となっているので出力は”
H”になっている。
【0214】これにより、NOR回路321の2つの入
力は共に”H”となり出力22は”L”になっている。
【0215】読み出し動作を開始させセンスアンプを動
作させることで、センス線(43,44)対の一方の電
位がGND電位(0V)となる。
【0216】このため、インバータ317あるいはイン
バータ318のいずれか一方の出力が”H”になる。
【0217】図5に示すウエイセレクタ回路405で
は、読み出した値が1のときにはセンス線44が”L”
となり、図7に実線で示すように、インバータ318の
出力は”L”から”H”に変化する。
【0218】ウエイ選択信号20が”L”、ウエイ選択
信号(48,49,50)が”H”のとき、即ち、ウエ
イ選択信号20で指されるウエイがヒットした場合、O
R−AND−NOT複合ゲート回路319は”L”を出
力する。
【0219】OR−AND−NOT複合ゲート回路32
0はウエイ選択信号49、50が共に”H”なので出力
は”L”となる。
【0220】NOR回路回路321の2つの入力にはO
R−AND−NOT複合ゲート回路319、および、O
R−AND−NOT複合ゲート回路320の出力”L”
が入力されるため、1ビット分の物理アドレス22は”
H”となる。
【0221】また、読み出した値が0のときには、セン
ス線44はVccにプリチャージされたまま変化せ
ず、”H”の状態を維持する。
【0222】このため、インバータ318の出力は”
L”のまま変化せず、OR−AND−NOT複合ゲート
回路319の信号は変化せず、”H”を出力する。
【0223】このときのウエイ選択信号20が”L”、
ウエイ選択信号(48,49,50)が”H”のとき、
即ち、ウエイ選択信号20で指されるウエイがヒットし
た場合、OR−AND−NOT複合ゲート回路319
は”H”を出力する。
【0224】このときのOR−AND−NOT複合ゲー
ト回路320は前記したように”L”を出力しているた
め、NOR回路回路321の2つの入力には”H”と”
L”の信号が入力されるので1ビット分の物理アドレス
22は”L”となる。
【0225】以上説明したように、図5に示すウエイセ
レクタ回路405が、4入力1選択のセレクタ回路とし
て動作する。
【0226】また、データアレイ403の読み出しデー
タがウエイ選択信号により選択された後、次のサイクル
に備えて待機状態に戻ることは図2および図4の場合と
同じである。
【0227】さらに、図5に示すウエイセレクタ回路4
05では、高速化のために以下の構成を採用している。
【0228】本実施例では、アドレス比較時に、ウエイ
選択信号は、”L”から”H”にしか変化せず、また、
インバータ318の出力18も”L”から”H”へ一方
向にしか変化しない。
【0229】そのため、OR−AND−NOT複合ゲー
ト回路(319,320)の出力の立ち下がりが速くな
るように、OR−AND−NOT複合ゲート回路(31
9,320)のNMOSトランジスタのゲート幅をPM
OSトランジスタよりも大きく設計し、論理しきい値を
Vcc/2よりも低く設定する。
【0230】同様に、OR−AND−NOT複合ゲート
回路(319,320)の出力は”H”から”L”へし
か変化しないことから、NOR回路21の出力は”L”
から”H”にのみ変わる。
【0231】この場合、NOR回路21の出力の立ち上
がりが速くなるように、NOR回路21のPMOSトラ
ンジスタのゲート幅をNMOSトランジスタより大きく
設計し、論理しきい値をVcc/2より高く設定する。
【0232】これにより、センス線(43,44)のプ
リチャージにより”L”となっていたインバータ318
の出力18が、メモリセルから1を読み出したとき”
L”から”H”に変化する場合の遅延時間(順方向の遅
延時間)を短縮できる。
【0233】また、この場合、OR−AND−NOT複
合ゲート回路(319,320)の出力は、図4に示す
アドレス比較開始前のヒット線(36,38)、図4に
示す2入力NAND回路314の入力ゲート、および、
センス線(43,44)のプリチャージにより、”H”
の状態になっており、ウエイ選択信号とインバータ31
8の出力18の変化により”H”から”L”へしか変化
しない。
【0234】このため、アドレス変換時間に関係するの
は順方向の遅延時間だけなので、動作サイクル時間内に
ウエイ選択信号をヒットの状態”L”とし、インバータ
318の出力18を”L”、2入力NAND回路314
の出力を”L”とすることができれば、サイクル時間を
増大させることなくアドレス変換時間を短縮することが
できる。
【0235】図8は、図1に示すセレクタ回路406の
回路構成を示す回路図である。
【0236】図1に示すセレクタ回路406は、可変ペ
ージサイズとするためにページサイズを示す領域SZ
(500)ビットの値で、データアレイ403の領域
([11:10])503から読み出した11ビット〜
10ビット(17)を物理アドレスとして出力するか、
仮想アドレス505の11ビット〜10ビット(VA
[11:10])7をそのまま出力するかを選択する。
【0237】ページサイズの条件は、図1に示したアド
レスアレイ402の中の領域SZ(500)の値によっ
て決定され、領域SZ(500)から読み出した値が1
のときはページサイズが4KBとなり、仮想アドレス5
05の11ビット〜10ビット(VA[11:10])
はオフセットとなるので、仮想アドレス505の11ビ
ット〜10ビット(VA[11:10])7をそのまま
物理アドレスの11ビット〜10ビット([11:1
0])21として出力する。
【0238】また、領域SZ(500)の値が0のとき
はページサイズが1KBとなり、仮想アドレス505の
11ビット〜10ビット(VA[11:10])は仮想
ページ番号となるので、データアレイ403の領域
([11:10])503から読み出した11ビット〜
10ビット(17)を物理アドレスの11ビット〜10
ビット([11:10])21として出力する。
【0239】図8に示すセレクタ回路406は、アドレ
ス変換時間を短縮するために、図5および図6に示すウ
エイセレクタ回路405の前段に置かれ、セレクタ回路
406の出力を、ウエイセレクタ回路405で選択する
構成としている。
【0240】このセレクタ回路406は、仮想アドレス
505の11ビット〜10ビット(VA[11:1
0])およびセンス線(43,44)に接続されている
インバータ回路323の出力を入力としている。
【0241】また、アドレスアレイ402の領域SZ
(500)の値により決定される制御信号14を用い
て、仮想アドレス505の11ビット〜10ビット(V
A[11:10])7、あるいは、データアレイ403
の領域([11:10])503から読み出した11ビ
ット〜10ビット(17)の一方を選択し、ウエイセレ
クタ回路405に出力する。
【0242】次に、図8に示すセレクタ回路406の動
作について説明する。
【0243】図8に示す回路は、PMOSトランジスタ
(227,228,229,230)、NMOSトラン
ジスタ(121,122,123,124)およびイン
バータ(324,325)からなるセレクタ回路406
以外は、図5に示すウエイセレクタ回路405と同じ構
成である。
【0244】ここで、タイミングの詳細やプリチャージ
については、図2に示す比較回路で説明したので省略す
る。
【0245】まず、読み出し動作が開始すると、プリチ
ャージされ”H”の状態になっているセンス線(51,
52)の一方は”L”に電位が変化し、センス線(5
1,52)に接続されているインバータ(322,32
3)の一方の出力は”L”から”H”に変化する。
【0246】前記センス線(51,52)に接続されて
いるインバータ(322,323)の出力は、一方はセ
レクタ回路406の入力となり、もう一方は図5に示す
ウエイセレクタ回路405で説明したようにセンス線
(51,52)対の容量を等しくするために置かれてい
る。
【0247】セレクタ回路406は、図1に示すTLB
では、制御信号11が”L”である場合、セレクタ制御
信号14はページサイズを示す領域SZ(500)の値
によらず”H”となる。
【0248】このセレクタ制御信号14により、セレク
タ回路406はインバータ323の出力を選択し、ウエ
イセレクタ回路405のOR−AND−NOT複合ゲー
ト回路(326,327)へ入力する。
【0249】また、制御信号11が”H”である場合、
読み出した領域SZ(500)の値により、データアレ
イ403の領域([11:10])503から読み出し
た11ビット〜10ビット(17)、あるいは、仮想ア
ドレス505の11ビット〜10ビット(VA[11:
10])7の一方を、OR−AND−NOT複合ゲート
回路(326,327)へ入力し、物理アドレスの11
ビット〜10ビット(21)として出力する。
【0250】前記した如く、制御信号11が”H”で、
かつ、読み出した領域SZ(500)の値が”L”の場
合、ページサイズは1KBとなり、セレクタ制御信号1
4が”H”となるので、セレクタ回路406は、データ
アレイ403の領域([11:10])503から読み
出した11ビット〜10ビット(17)を選択し、OR
−AND−NOT複合ゲート回路(326,327)へ
入力する。
【0251】また、制御信号11が”H”で、かつ、読
み出した領域SZ(500)の値が”H”の場合、ペー
ジサイズは4KBとなり、セレクタ制御信号14が”
L”となるので、セレクタ回路406は、仮想アドレス
505の11ビット〜10ビット(VA[11:1
0])7を選択し、OR−AND−NOT複合ゲート回
路(326,327)へ入力する。
【0252】このようにして、ウエイセレクタ回路40
5はウエイ選択信号が”L”(ヒットの状態)のウエイ
の値を物理アドレス21として出力する。
【0253】以上説明したように、ページサイズが変わ
るとデータアレイ403のオフセットあるいはページ番
号となる領域503と、ウエイセレクタ回路405との
間に、ページサイズを示す領域SZ(500)の値によ
り仮想アドレスを物理アドレスとして出力するか、ペー
ジ番号を物理アドレスとして出力するかを選択するセレ
クタ回路406を設けることでページサイズ可変するこ
とが可能となる。
【0254】図9は、図1に示すページサイズを記憶す
る領域SZ(500)の読み出しおよび書き込み回路の
回路構成を示す回路図である。
【0255】図9中の2入力NAND回路302は、図
1に示すNAND回路302であり、セレクタ制御信号
14を生成する回路である。
【0256】図9に示すページサイズを記憶する領域S
Z(500)の読み出しおよび書き込み回路の動作を説
明する。
【0257】図2、図5および図8の説明で述べたよう
に、プリチャージ回路(PMOSトランジスタ233、
234、235)によりデータ線(56,57)および
センス線(58,59)は、予めVccにプリチャージ
されている。
【0258】読み出し動作により、プリチャージされ”
H”の状態になっているセンス線(58,59)の一方
は”L”に電位が変化し、このセンス線(58,59)
に接続されているインバータ(329,330)の出力
は”L”から”H”に変化する。
【0259】これらのセンス線(58,59)に接続さ
れているインバータ(329,330)の出力は、一方
はセレクタ制御信号14を生成する2入力NAND回路
302の一方の入力となり、もう一方は図4に示すウエ
イ選択信号発生回路に入力する領域SZ(500)の値
16となる。
【0260】セレクタ制御信号14は、読み出された領
域SZ(500)の値が”H”(センス線58の電位
が”L”のとき)、かつ、制御信号11が”H”のと
き”L”となり、それ以外ときは”H”となる。
【0261】また、図9に示す破線で囲まれた400の
回路は、アドレス指定ウエイ選択回路である。
【0262】データ書き込み時は、アドレス指定ウエイ
選択信号60(61)が”L”(”H”)、ライトイネ
ーブル信号64が”H”になり、ワード線が選択された
メモリセル(図9には図示していない)に書込データ4
を書き込むことができる。
【0263】以上説明したように、各エントリ毎にペー
ジサイズを記憶するビットを設けることにより、セット
アソシアティブ方式のTLBで、エントリ毎に異なるペ
ージサイズのアドレス変換対を記憶することが可能とな
る。
【0264】図8に示すセレクタ回路406を高速化す
るために、本実施例ではデータアレイ40の書き込みデ
ータを図10に示すように制御する。
【0265】図8に示すセレクタ回路406を、論理し
きい値をずらしたダイナミック回路とすることで読み出
し動作の高速化を図ることができる。
【0266】しかし、図8に示すデータアレイ403の
領域([11:10])503の11ビット〜10ビッ
トを読み出す回路の場合、読み出した11ビット〜10
ビットのビット値によりウエイセレクタ回路405が逆
方向動作し、アドレス変換時間が大きくなる場合があ
る。
【0267】ここで、逆方向動作は、NOR回路328
の出力21が”H”から”L”に変化することを意味す
る。
【0268】このため、ページサイズが1KBの場合に
は、データアレイ403の11ビット〜10ビットの書
き込みデータ5を、そのままデータアレイ403の領域
([11:10])503に書き込み、また、ページサ
イズが4KBの場合には、セレクタ回路406の制御信
号14が確定するまでの間に、物理アドレスの出力が変
化しないようにデータの書き込みを制御する。
【0269】即ち、読み出し動作が開始してもウエイセ
レクタ回路405の入力信号が、待機状態(プリチャー
ジしている状態)から変化しないような値を、データア
レイ403の領域([11:10])503に書き込
む。
【0270】図8に示すセレクタ回路406の場合、デ
ータアレイ403の領域([11:10])503に書
き込むデータの値をウエイセレクタ回路405の入力信
号が”L”となるように制御する。
【0271】このようにデータアレイ403の領域
([11:10])503に書き込むデータを制御する
ことで逆方向動作をせず、アドレス変換時間の増大を防
ぐことができる。
【0272】図8に示すセレクタ回路406において、
セレクタ回路406の動作はアドレスアレイの領域SZ
(500)の値により決定され、ウエイセレクタ回路4
05への入力信号は、仮想アドレス505の11ビット
〜10ビット(VA[11:10])7、あるいは、デ
ータアレイ403の領域([11:10])503から
読み出された11ビット〜10ビット(17)のいずれ
かが選択される。
【0273】また、データアレイ403の読み出し時間
短縮のために、ウエイセレクタ回路405をダイナミッ
ク回路としている。
【0274】ウエイセレクタ回路405をダイナミック
回路することで、ページサイズが4KBのとき逆方向動
作する場合がある。
【0275】このときのセレクタ回路406およびウエ
イセレクタ回路405の動作を図12を用いて説明す
る。
【0276】図12は、図8に示すセレクタ回路406
および図10に示す制御方法の効果を表す動作波形であ
る。
【0277】図12において、タイミングの詳細および
プリチャージは、図2で説明したので省略する。
【0278】読み出し動作開始前のセンス線(58,5
9)対はプリチャージしてあるので、制御信号11によ
らず、セレクタ制御信号14は”H”となる。
【0279】このため、セレクタ回路406は、PMO
Sトランジスタ228、NMOSトランジスタ124が
ONし、データアレイ403の領域([11:10])
503から読み出された11ビット〜10ビットが、ウ
エイセレクタ回路405のOR−AND−NOT複合ゲ
ート回路326へ入力されている。
【0280】これにより、ウエイセレクタ回路405の
入力信号は”L”となっている。
【0281】読み出し動作が始まると、読み出されるビ
ットによってインバータ(322,323)、インバー
タ(329,330)の出力が反転する。
【0282】また、ウエイ選択信号(20,48,4
9,50)は、図4に示すウエイ選択信号発生回路で説
明したように、プリチャージにより一度全てのウエイ選
択信号がヒットの状態(”L”)となる。
【0283】このとき、物理アドレスは、データアレイ
403の領域([11:10])503から読み出され
た11ビット〜10ビットとなる。
【0284】データアレイ403の領域([11:1
0])503から読み出されたビットが1である場合、
センス線52の電位は下がり、インバータ323の出力
は”L”から”H”へ変化する。
【0285】セレクタ制御信号14が確定し”H”か
ら”L”へ変化するまで、セレクタ回路406はセンス
線52の信号を選択するため、OR−AND−NOT複
合ゲート回路326へは”H”が入力される。
【0286】このとき、全てのウエイにおいてデータア
レイ403の領域([11:10])503から1が読
み出されると、ウエイ選択信号(20,48,49,5
0)が確定する前に、ウエイセレクタ回路405の出力
が変化し、物理アドレスが待機状態”L”から変化して
しまう。
【0287】図6に示すOR−AND−NOT複合ゲー
ト回路において、入力18および45に”H”の信号が
入力された場合、他の入力20および48によらずOR
−AND−NOT複合ゲート回路の出力は”L”とな
る。
【0288】このため、全てのウエイのデータアレイ4
03の領域([11:10])503から読み出された
ビット値が1である場合、OR−AND−NOT複合ゲ
ート回路(326,327)の出力が共に”L”とな
り、NOR回路328に”L”が入力されるため物理ア
ドレス21は”H”となる。
【0289】その後、セレクタ制御信号14が確定し”
L”となると、図8に示すPMOSトランジスタ227
およびNMOSトランジスタ122がONする。
【0290】これにより、セレクタ回路406が、仮想
アドレス505の11ビット〜10ビット(VA[1
1:10])7を選択し、OR−AND−NOT複合ゲ
ート回路326へ入力する。
【0291】このときの、仮想アドレス505の11ビ
ット〜10ビット(VA[11:10])7の値が0で
ある場合、OR−AND−NOT複合ゲート回路326
の出力は”H”に変化し、NOR回路328には”H”
および”L”の信号が入力され、出力21は”L”へ反
転する。
【0292】これはウエイセレクタ回路405をダイナ
ミック回路としたことで、センス線(58,59)の信
号がウエイセレクタ回路405を順方向動作(物理アド
レスが”L”から”H”に変化する動作)させる値の場
合、セレクタ制御信号14が確定する前のセンス線(5
8,59)の変化により動作してしまうために生じる。
【0293】このように、ウエイセレクタ回路405
が、逆方向動作(物理アドレスが”H”から”L”に変
化する動作)をするために物理アドレスの確定が遅れて
しまう。
【0294】このダイナミック回路の逆方向動作を防ぐ
方法として、本実施例では、図10に示す書き込みの制
御方法で説明したように、ページサイズを示す領域SZ
(500)の値が1のとき、予めデータアレイ403の
領域([11:10])503には、OR−AND−N
OT複合ゲート回路(326,327)の入力が”L”
となる値を書き込むよう制御する。
【0295】これにより、ウエイセレクタ回路405の
入力信号が待機状態から変わることなくなり、仮想アド
レス505の11ビット〜10ビット(VA[11:1
0])7を選択することができる。
【0296】このように、ページサイズによりオフセッ
トとなるか、ページ番号となるかが変化するデータアレ
イ403の領域([11:10])503への書き込み
には、外部から入力されるデータアレイ書き込みデータ
5と、ページサイズを示す領域SZ(500)へ書き込
む値4との所定の論理関数(図1に示すNOR回路30
1)の値に制御することにより、アドレス変換時間の増
加を防ぐことが可能となる。
【0297】図8、9に示すデータアレイ403の11
ビット〜10ビットおよび領域SZ(500)のカラム
回路の動作を図12の波形に沿って説明する。
【0298】待機状態では、図12において実線(1
9,53,54,55)で示すように、全てのウエイで
セレクタ回路406が”L”を出力している。
【0299】このとき、OR−AND−NOT複合ゲー
ト回路(326,327)は、ウエイ選択信号(20,
48,49,50)が”L”となっているため、”H”
を出力する。
【0300】これにより、物理アドレス21は”L”を
出力している。
【0301】図10に示す書き込みの制御方法により、
ページサイズが4KBのウエイがある場合、そのウエイ
のデータアレイには0が書き込まれているため、読み出
し動作が開始してもページサイズが4KBのウエイを含
むOR−AND−NOT複合ゲート回路(326,32
7)の出力が変化することはない。
【0302】ここでは、図12に波線で示すセレクタ回
路406の出力19のように、ウエイ選択信号20に対
応するウエイに0が書き込まれている。
【0303】OR−AND−NOT複合ゲート回路(3
26,327)の出力の内どちらか一方が”H”から”
L”に変化しても、前記のように2つの入力が共に”
L”とならない限り、物理アドレス21が変化すること
はない。
【0304】その後、セレクタ制御信号14が”L”、
ウエイ選択信号(48,49,50)が”H”(ミ
ス)、ウエイ選択信号20が”L”(ヒット)の状態に
変化し、セレクタ回路406が仮想アドレス505の1
1ビット〜10ビット(VA[11:10])7を選
択、ウエイセレクタ回路405がセレクタ回路406の
出力19を選択すると、ウエイセレクタ回路405の出
力は変化せず、物理アドレスも変化しないので高速にア
ドレス変換することができる。
【0305】このように、読み出し動作開始後、ウエイ
選択信号およびセレクタ回路406の制御信号14が確
定する前に、1つのウエイでもセレクタ回路406が”
L”を出力すると、”L”が入力されるOR−AND−
NOT複合ゲート回路(326,327)の出力は”
H”のまま変化せず、物理アドレスの出力21も待機状
態から変化することなく”L”のままである。
【0306】また、ウエイ選択信号が確定された後に、
セレクタ回路406が”H”を出力しても、予め遅延時
間が小さくなるようにMOSトランジスタのサイズを設
計している(順方向動作)ため高速に物理アドレス21
を出力することができる。
【0307】このことから、図10に示す書き込みの制
御方法ように、ページサイズが4KBで、セレクタ回路
406が仮想アドレス505の11ビット〜10ビット
(VA[11:10])を選択する場合は、予めデータ
アレイ403の領域([11:10])503の11ビ
ット〜10ビットには、ウエイセレクタ回路405の入
力が”L”となるような値を書き込んでおくことによ
り、アドレス変換時間が大きくなることを防ぐことが出
来る。
【0308】図11は、ページサイズによりオフセット
となるか、ページ番号となるかが変化するビット位置へ
の書き込みデータを制御した場合としない場合のアドレ
ス変換時間を比較した比較結果を示す図である。
【0309】ここでは、ページサイズ領域SZ(50
0)が1(ページサイズが4KBの場合)、データアレ
イ403の領域503のすべてのウエイからの読み出し
データが”1”の場合を比較している。
【0310】この結果、逆方向動作を行なった場合と、
図10に示す書き込みの制御方法により書き込みデータ
を制御した結果では、アドレス変換時間を25%短縮す
ることが可能である。
【0311】[実施例2]本実施例2は、ウエイ選択信
号として、図4に示すウエイ選択信号と逆相の信号を出
力する実施例である。
【0312】図13は、本実施例2のウエイ選択信号発
生回路の回路構成を示す回路図であり、図13に示すウ
エイ選択信号発生回路は、図4に示すウエイ選択信号と
は、逆相のウエイ選択信号を出力する。
【0313】図13に示すウエイ選択信号発生回路は、
図2に示す比較回路で、アドレスアレイ402から読み
出したタグフィールド(VPN[31:17],VPN
[11:10])15と、仮想アドレス505のタグフ
ィールド(VA[31:17],VA[11:10])
9との比較した結果から、ウエイ選択信号を発生する回
路である。
【0314】図13に示すウエイ選択信号発生回路と、
図2に示す比較回路とが、図1に示すコンパレータ40
4として動作する。
【0315】図13に示すウエイ選択信号発生回路が、
前記図4に示すウエイ選択信号発生回路と異なる点は、
ウエイ選択信号のヒットの状態が、図4に示すウエイ選
択信号回路と逆相になるようにしている点である。
【0316】その他の回路の動作については、前記図4
に示すウエイ選択信号発生回路と同じである。
【0317】ウエイ選択信号66およびそれに相当する
信号(図1に示すTLBでは、4ウエイなので4つの信
号がある)は、プリチャージ時はヒットの状態”H”
(前記図4においては”L”)となり、アドレスアレイ
402から読み出したタグフィールド(VPN[31:
17],VPN[11:10])15と、仮想アドレス
505のタグフィールド(VA[31:17],VA
[11:10])9とを比較した結果、ヒットしたウエ
イがある場合は、そのヒットしたウエイのウエイ選択信
号はヒットの状態(”H”)を保ち、他のウエイのウエ
イ選択信号はミスの状態(”L”)となる。
【0318】全てのウエイがミスの場合は、全てのウエ
イのウエイ選択信号はミスの状態(”L”)となる。
【0319】このウエイ選択信号を用いて、ウエイセレ
クタ回路405を制御し、データアレイ403の読み出
しデータを選択し、物理アドレスとして出力する。
【0320】データアレイ403の読み出しデータを選
択した後に、再び、ヒット線(36,38)、NOR回
路312の出力およびNAND回路313の出力をプリ
チャージすることことは、前記図4に示すウエイ選択信
号発生回路と同様である。
【0321】図14は、図13に示すウエイ選択信号回
路を適用した場合に有効なウエイセレクタの回路構成を
示す回路図である。
【0322】図14に示すウエイセレクタ回路405
は、図13に示すウエイ選択信号回路の出力により、ア
ドレスアレイ402から読み出したタグフィールド(V
PN[31:17],VPN[11:10])15と、
仮想アドレス505のタグフィールド(VA[31:1
7],VA[11:10])9とが一致したウエイの物
理アドレスを出力する。
【0323】図14に示すAND−OR−NOT複合ゲ
ート回路(334,335)と、2入力NAND回路3
36とが、図1に示すウエイセレクタ回路405を構成
する。
【0324】図15は、図14に示すAND−OR−N
OT複合ゲート回路(334,335)をMOSトラン
ジスタで構成した回路構成を示す回路図である。
【0325】図1に示すTLBでは、各ビット毎に4ウ
エイ並べており、図14に示すウエイセレクタ回路40
5は1ビット分のセレクタ回路なので、データアレイ4
03のメモリセルアレイの4列に1つレイアウトされ
る。
【0326】なお、図14では、メモリセルアレイ1列
分のカラム回路と4列分のセレクタ回路のみを示してい
る。
【0327】図14に示すウエイセレクタ回路405の
動作について説明する。
【0328】図14において、ウエイ選択信号(66,
71,72,73)は、図13に示すウエイ選択信号と
それに相当する他のウエイを選択するウエイ選択信号で
ある。
【0329】図14に示すAND−OR−NOT複合ゲ
ート回路334の入力には、センス線44の信号が直接
入力されているが、タイミングの詳細やプリチャージは
図2に示す比較回路と同じである。
【0330】図14に示すウエイ選択信号(66,7
1,72,73)およびウエイセレクタ回路以外の回路
は、図2に示したアドレスアレイ402のコンパレータ
回路を除いたカラム回路と同じ回路である。
【0331】センス線(43,44)は、あらかじめV
ccにプリチャージされているので、MOSトランジス
タ(115,116,117,223,224)から構
成されるセンスアンプを動作させことにより、センス線
(43,44)対の一方の電位が”L”となる時刻以前
には、ウエイ選択信号(66,71,72,73はプリ
チャージにより全てのウエイはヒットの状態(”H”)
となっている。
【0332】このため、AND−OR−NOT複合ゲー
ト回路(334,335)の出力は全て”L”になって
おり、2入力NAND回路336の出力22(物理アド
レス)は”H”になっている。
【0333】センスアンプを動作させることで、センス
線(43,44)の一方が”L”となり、読み出し値が
1のときにはセンス線44が”H”となる。
【0334】ウエイ選択信号66が”H”、ウエイ選択
信号(71,72,73)が”L”のとき、AND−O
R−NOT複合ゲート回路334は”L”を出力する。
【0335】AND−OR−NOT複合ゲート回路33
5は、ウエイ選択信号(72,73)が共に”L”なの
で出力は”H”となる。
【0336】2入力NAND回路336には、AND−
OR−NOT複合ゲート回路334およびAND−OR
−NOT複合ゲート回路335の出力”L”および”
H”が入力されるため、1ビット分の物理アドレス22
は”H”となる。
【0337】また、読み出し値が0のときにはセンス線
44は”L”となる。
【0338】ウエイ選択信号66が”H”、ウエイ選択
信号(71,72,73)が”L”のとき、AND−O
R−NOT複合ゲート回路334は”H”を出力する。
【0339】AND−OR−NOT複合ゲート回路33
5は、ウエイ選択信号(72,73)が共に”L”なの
で”H”となる。
【0340】2入力NAND回路336には、AND−
OR−NOT複合ゲート回路334およびAND−OR
−NOT複合ゲート回路335の出力の”H”が入力さ
れるため、1ビット分の物理アドレス22は”L”とな
る。
【0341】図14に示すウエイセレクタ回路405で
も、高速化のために図5に示すウエイセレクタ回路40
5同様、AND−OR−NOT複合ゲート回路(33
4,335)の出力信号の立ち上がりが速くなるよう、
AND−OR−NOT複合ゲート回路(334,33
5)のPMOSトランジスタのゲート幅をNMOSトラ
ンジスタよりも大きく設計し、論理しきい値をVcc/
2よりも高く設定する。
【0342】同様に、AND−OR−NOT複合ゲート
回路(334,335)の出力は”L”から”H”へし
か変化しないことから、NAND回路336の出力信号
の立ち下がりが速くなるように、NAND回路336の
NMOSトランジスタのゲート幅をPMOSトランジス
タより大きく設計し、論理しきい値をVcc/2より低
く設定する。
【0343】これにより、センス線(43,44)のプ
リチャージにより”H”となっていたセンス線(43,
44)の電位が、メモリセルから0を読み出したとき”
H”から”L”に変化する場合の遅延時間(順方向の遅
延時間)を短縮できる。
【0344】図16は、図13に示すウエイ選択信号発
生回路を用いた場合のセレクタ回路406の回路構成を
示す回路図である。
【0345】図16に示すセレクタ回路406は、図1
4に示すウエイセレクタ回路405の前段に置き、セレ
クタ回路406の出力をウエイセレクタ回路405で選
択する。
【0346】このセレクタ回路406は、仮想アドレス
505の11ビット〜10ビット(VA[11:1
0])およびアドレスアレイ402のセンス線(43,
44)の信号を入力とし、図9に示す領域SZ(50
0)の値により決定されるセレクタ制御信号14を用い
て、データアレイ403の領域([11:10])50
3から読み出した11ビット〜10ビット(17)、あ
るいは、仮想アドレス505の11ビット〜10ビット
(VA[11:10])7のいずれかを選択し、ウエイ
セレクタ回路405に出力する。
【0347】図16において、2個のAND−OR−N
OT複合ゲート回路(337,338)と、2入力NA
ND回路339は、図1に示すウエイセレクタ回路40
5として動作し、4ウエイ分のセレクタの出力をウエイ
選択信号(66,71,72,73)により1つのウエ
イを選択し物理アドレス21として出力する。
【0348】図16に示すセレクタ回路406が、仮想
アドレス505の11ビット〜10ビット(VA[1
1:10])7、あるいは、データアレイ403の領域
([11:10])503から読み出した11ビット〜
10ビット(17)のいずれか一方を選択する条件は、
図8に示すセレクタ回路406と同じである。
【0349】2個のAND−OR−NOT複合ゲート回
路(337,338)と、2入力NAND回路339と
から構成されるウエイセレクタ回路405は、ウエイ選
択信号(66,71,72,73)の何れかがヒットの
状態(”H”)のウエイの値(74,75,76,7
7)を物理アドレス21として出力する。
【0350】以上説明したように、ページサイズが変わ
るとデータアレイ403のオフセットあるいはページ番
号となる領域503と、ウエイセレクタ回路405との
間に、ページサイズを示す領域SZ(500)の値によ
り仮想アドレス505を物理アドレスとして出力する
か、ページ番号を物理アドレスとして出力するかを選択
するセレクタ回路406を設けることでページサイズ可
変することが可能となる。
【0351】図16においても、データアレイ読み出し
時間を短縮のためにウエイセレクタ回路405をダイナ
ミック回路としている。
【0352】また、セレクタ回路406の動作はアドレ
スアレイの領域SZ(500)の値により出力する信号
が決まる。
【0353】図16においても、図8と同様に、ページ
サイズが4KBのとき逆方向動作する場合がある。
【0354】この逆方向動作も、データアレイへ403
の書き込みデータを制御することで防ぐことができる。
【0355】読み出し動作開始前のセンス線(51,5
2)対は”H”にプリチャージされているので、制御信
号11によらず、セレクタ制御信号14は”H”とな
る。
【0356】このため、セレクタ回路406は、PMO
Sトランジスタ228、NMOSトランジスタ124が
ONし、データアレイ403のセンス線(43,44)
の電位を選択し、ウエイセレクタ回路405のAND−
OR−NOT複合ゲート回路337へ入力している。
【0357】これにより、ウエイセレクタ回路405の
入力信号は”H”となっている。
【0358】読み出し動作開始直後は、ウエイ選択信号
は、前記したように、プリチャージにより一度全てのウ
エイ選択信号がヒットの状態(”H”)となっており、
セレクタ制御信号14もまた”H”のままである。
【0359】このとき、物理アドレスは、データアレイ
403の領域([11:10])503から読み出され
た11ビット〜10ビットとなる。
【0360】データアレイ403の領域([11:1
0])503から読み出されたビットが0である場合、
センス線52の電位は下がり、セレクタ回路406の入
力は待機状態の”H”から”L”へ変化し、AND−O
R−NOT複合ゲート回路337には”L”が入力され
る。
【0361】このとき、全てのウエイにおいてデータア
レイ403の領域([11:10])503から0が読
み出されると、ウエイ選択信号(66,71,72,7
3)が確定する前に、ウエイセレクタ回路405の出力
が変化し、物理アドレスが待機状態”L”から変化して
しまう。
【0362】図15に示すAND−OR−NOT複合ゲ
ート回路において、入力67および68に”L”の信号
が入力された場合、他の入力66および71によらずA
ND−OR−NOT複合ゲート回路は”H”を出力す
る。
【0363】このため、全てのウエイから読み出された
値が0である場合、AND−OR−NOT複合ゲート回
路(337,338)の出力が共に”H”となり、NA
ND回路339に”H”が入力されるため物理アドレス
21は”L”となる。
【0364】その後、ページサイズが4KBのとき、領
域SZ(500)から読み出した値が1で、セレクタ回
路406の制御信号14が”L”に確定すると、PMO
Sトランジスタ227およびNMOSトランジスタ12
2がONとなる。
【0365】これにより、セレクタ回路406が、仮想
アドレス505の11ビット〜10ビット(VA[1
1:10])7を選択し、AND−OR−NOT複合ゲ
ート回路337へ入力する。
【0366】このときの、仮想アドレス505の11ビ
ット〜10ビット(VA[11:10])7の値が1で
ある場合、AND−OR−NOT複合ゲート回路337
の出力は”L”に変化し、NOR回路339には”L”
および”H”の信号が入力され、出力21は”H”へ反
転する。
【0367】前記反転は、前記図8、図9で説明したよ
うに、ウエイセレクタ回路405をダイナミック回路と
したことにより、ウエイセレクタ回路405が順方向動
作し易くなったことが原因で生じる。
【0368】このダイナミック回路の逆方向動作を防ぐ
方法として、図16では、図17に示すように、ページ
サイズを示す領域SZ(500)の値が1のとき、予め
データアレイ403の領域([11:10])503
(11ビット〜10ビット)には、AND−OR−NO
T複合ゲート回路(337,338)の入力が”H”と
なる値(1)を書き込むよう制御する。
【0369】予めデータアレイ403の領域([11:
10])503に(1)を書き込むためには、図1に示
すNOR回路301に代えて、OR回路を用いればよ
い。
【0370】これにより,ウエイセレクタ回路405の
AND−OR−NOT複合ゲート回路(337,33
8)の入力が”H”となり、ページサイズが4KBのと
き待機状態からセレクタ制御信号14が確定するまで、
出力は変化することなく物理アドレスが決定される。
【0371】このように、予め領域SZ(500)の値
が1でセレクタ回路406がオフセットの値を選択する
場合には、データアレイ403の領域([11:1
0])503)には、ウエイセレクタ回路405の入力
が”H”となるような値を書き込んでおくことにより、
この遅延を防ぎ、アドレス変換時間が大きくなることを
防ぐことが出来る。
【0372】[実施例3]本実施例3は、ウエイセレク
タ回路405が逆方向動作するのを、他の方法で防止す
るようにした実施例である。
【0373】図18は、本実施例3のセレクタ回路40
6の回路構成を示す回路図であり、図18に示すセレク
タ回路406は、図8に示したセレクタ回路406のイ
ンバータ325を2入力のNOR回路340にしたもの
である。
【0374】前記NOR回路340の一方の入力には、
セレクタ制御信号14と同程度の時刻に”L”となるよ
うなセンス線遅延信号78が入力され、他方の入力に
は、図8に示すインバータ325の入力信号がそのまま
入力される。
【0375】ここで、センス線遅延信号78がセレクタ
制御信号14と同時刻に変化する信号であるので、セン
ス線遅延信号78が”L”となるまで、NOR回路34
0の出力19は”L”のまま変化しない。
【0376】これにより、ページサイズが4KBのと
き、セレクタ制御信号14が”H”から”L”に変わる
前に、読み出し動作によってセンス線(51,52)の
信号が変化しても、ウエイセレクタ回路405の入力信
号が変化しないようにすることができる。
【0377】即ち、セレクタ制御信号14が確定する以
前のウエイセレクタ回路405の入力信号の変化を防
ぎ、ウエイセレクタ回路405の逆方向動作を防ぐこと
が可能となる。
【0378】図19は、図18に示すセンス線遅延信号
78を出力する遅延信号生成回路の回路構成を示す回路
図である。
【0379】遅延信号生成回路は、センス線(30,3
1)の電位の変化から遅延信号を生成する2入力NAN
D回路341と、インバータ(342,343,34
4)とから構成され、前記2入力NAND回路341の
それぞれの入力端子は、センス線30およびセンス線3
1に接続されている。
【0380】図19において、遅延信号生成回路以外の
回路は、図2に示すアドレスアレイ402のカラム回路
(コンパレータ回路)と同じである。
【0381】待機状態では、センス線(30,31)の
電位はプリチャージにより電位差はないため、センス線
遅延信号78は”H”の状態となっている。
【0382】ワード線が選択され、読み出し動作が始ま
るとデータ線、センス線(30,31)には電位差が生
じ、MOSトランジスタ(104,105,106,2
05,206)から構成されるセンスアンプを動作させ
ことにより、センス線(30,31)間の電位差は電源
電圧となる。
【0383】これにより、センス線遅延信号78は待機
状態の”H”から”L”に変化する。
【0384】このセンス線遅延信号78を受け、図18
に示すセレクタ回路406はセンス線遅延信号78が”
L”のときのみ、仮想アドレス505の11ビット〜1
0ビット(VA[11:10])7、あるいは、データ
アレイ403の領域([11:10])503から読み
出された11ビット〜10ビット(17)のいずれかを
出力し、それ以外の場合、2入力NOR回路340は”
L”を出力する。
【0385】このように、図18に示すセレクタ回路4
06では、セレクタ制御信号14と同程度の遅延をもつ
センス線遅延信号78を2入力NOR回路340の一入
力信号として、セレクタ回路406の出力を遅らせるこ
とによりアドレス変換時間の増加を防いでいる。
【0386】このように、2入力NOR回路340の入
力信号23が変化しても、センス線遅延信号78が変化
するまでは、ウエイセレクタ回路405の入力信号は変
化せず、物理アドレス21は”L”を保つ。
【0387】その後、セレクタ制御信号14が”H”か
ら”L”に変化し、仮想アドレス505のオフセットア
ドレス7を選択した後、センス線遅延信号78が”L”
になると、NOR回路340はインバータとして働き、
セレクタ回路406により選択した信号を出力する。
【0388】このように、ウエイセレクタ回路405を
ダイナミック回路としたことで、データアレイ403の
領域([11:10])503から読み出された11ビ
ット〜10ビットのビット値が全てのウエイで1であ
り、また、ページサイズが4KBで、仮想アドレス50
5の11ビット〜10ビット(VA[11:10])が
0であるとき、NOR回路340の入力信号は、図8、
図9の説明で述べた原因により変化し、アドレス変換時
間が増加する。
【0389】しかしながら、センス線遅延信号78を、
セレクタ制御信号14と同程度の遅延を持って確定する
信号とすることにより、OR−AND−NOT複合ゲー
ト回路326の入力は、セレクタ制御信号14が確定す
るまで、待機状態のまま変化しない。
【0390】セレクタ制御信号14が確定し、センス線
遅延信号78が”L”になると、OR−AND−NOT
複合ゲート回路326の入力には、仮想アドレス505
の11ビット〜10ビット(VA[11:10])が入
力され、物理アドレス21は変化しないので”L”に確
定する。
【0391】このように、ウエイセレクタ回路405
は、逆方向動作(出力が”H”から”L”に変化)する
ことなく、アドレス変換時間の増加を防ぐことができ
る。
【0392】なお、前記各実施例のページサイズ可変セ
ットアソシアティブTLBにおいては、エントリ毎に1
KBおよび4KBの2種類のページサイズのアドレス変
換対を記憶するようにしたが、エントリ毎に2種類以上
のページサイズのアドレス変換対を記憶することも可能
である。
【0393】図20は、前記各実施例のページサイズ可
変セットアソシアティブTLBにおいて、エントリ毎に
2種類以上のページサイズのアドレス変換対を記憶する
場合のページサイズ可変セットアソシアティブTLBの
要部を示すブロック図である。
【0394】なお、図20では、1ウエイ分しか図示し
ていない。
【0395】各実施例のページサイズ可変セットアソシ
アティブTLBにおいて、エントリ毎に2種類以上のペ
ージサイズのアドレス変換対を記憶する場合には、図2
0に示すように、図1に示すアドレスアレイ402のペ
ージサイズを記憶する領域SZ(500)を複数の領域
(500a,500b〜500n)に分割する。
【0396】同じく、データアレイ403の、エントリ
毎にページサイズが変わることによって、ページ内のア
ドレスとなるか、ページ番号となるかが変化するビット
位置のビット値を記憶する領域503もそれに合わせて
複数の領域(503a,503b〜503n)に分割す
る。
【0397】また、データアレイ403の分割された領
域(503a,503b〜503n)から読み出したそ
れぞれのアドレスは、その出力がウエイセレクタ回路4
05に入力される複数のセレクタ回路(406a,40
6b〜406n)の一方の入力端子に入力する。
【0398】ここで、複数のセレクタ回路(406a,
406b〜406n)の他方の入力端子には、入力され
た仮想アドレスが入力される。
【0399】複数のセレクタ回路(406a,406b
〜406n)は、アドレスアレイ402の分割された領
域(500a,500b〜500n)から読み出したそ
れぞれの値により制御される。
【0400】ここで、複数のNAND回路(302a,
302b〜302n)は、図1と同じく、制御信号11
によりデータアレイ403の分割された領域(503
a,503b〜503n)から読み出したそれぞれのア
ドレスを、複数のセレクタ回路(406a,406b〜
406n)で選択するために設けられている。
【0401】図21は、前記各実施例のページサイズ可
変セットアソシアティブTLBにおいて、エントリ毎に
2種類以上のページサイズのアドレス変換対を記憶する
場合のウエイ選択信号発生回路の回路構成を示す回路図
である。
【0402】前記各実施例のページサイズ可変セットア
ソシアティブTLBにおいて、エントリ毎に2種類以上
のページサイズのアドレス変換対を記憶する場合には、
さらに、コンパレータ404において、アドレスアレイ
402の分割された領域(500a,500b〜500
n)から読み出したそれぞれの値(16a,16b〜1
6n)に基づいて、アドレスの比較範囲(連想範囲)を
変化させなけばならない。
【0403】そのため、図21に示すように、ウエイ選
択信号発生回路に、アドレスアレイ402の分割された
領域(500a,500b〜500n)から読み出した
それぞれの値(16a,16b〜16n)が、一方の入
力端子に入力される複数のNAND回路(313a,3
13b〜313n)を設け、また、NAND回路314
を(n+1)入力のNAND回路314aとする。
【0404】これにより、アドレスアレイ402の分割
された領域(500a,500b〜500n)から読み
出した値が(1)のときに、複数のNAND回路(31
3a,313b〜313n)の出力を”H”として、
(1)が読み出されたアドレスアレイ402の分割され
た領域(500a,500b〜500n)に対応する位
置のアドレスをアドレスの比較範囲(連想範囲)から除
外することが可能となる。
【0405】以上、本発明を実施例に基づき具体的に説
明したが、本発明は、前記実施例に限定されるものでは
なく、その要旨を逸脱しない範囲で種々変更し得ること
は言うまでもない。
【0406】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば、下
記の通りである。
【0407】(1)本発明によれば、アドレスアレイの
第2の領域にページサイズを示す値を記憶し、第2の領
域から読み出した値によりコンパレータで比較する比較
範囲を変更することにより、アドレスアレイのそれぞれ
のエントリに記憶されているページサイズに合ったビッ
トを比較することが可能となり、また、ページサイズが
変化しオフセットのビット位置が変化しても正しいオフ
セットの値を出力することが可能となる。
【0408】(2)本発明によれば、アドレスアレイの
内容と仮想アドレスを比較するコンパレータ回路とし
て、比較のタイミングを必要としない、セルフトリガー
ドダイナミックコンパレータ回路を用いたので、動作マ
ージンを必要とせず、かつ、クロックによる消費電力を
減らすことができる。
【0409】(3)本発明によれば、複数のデータアレ
イの第2の領域に、予め1あるいは0を書き込むことに
より、読み出し動作が開始されても、第1のセレクタ
が、読み出し動作開始前の状態を維持できるので、信号
のレーシングを防止し、高速にアドレス変換を行うこと
が可能となる。
【0410】(4)本発明によれば、第2セレクタの出
力を、第1セレクタを選択する信号が確定した後に、第
1セレクタに出力することにより、信号のレーシングを
防止し、高速にアドレス変換を行うことが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施例である(実施例1)であるペ
ージサイズ可変セットアソシアティブTLBの概略構成
を示すブロック図である。
【図2】図1に示すコンパレータを構成する1ビット分
の比較回路の具体的な回路構成を示す回路図である。
【図3】図2に示すコンパレータの動作波形を示す図で
ある。
【図4】図2に示す1ビット分の比較回路の出力から、
ヒットしたウエイを選択するためのウエイ選択信号発生
回路の回路構成を示す回路図である。
【図5】図1に示すウエイセレクタ回路の具体的な回路
構成を示す回路図である。
【図6】図5に示すOR−AND−NOT複合ゲート回
路をMOSトランジスタで構成した回路構成を示す回路
図である。
【図7】図5に示すウエイセレクタ回路の動作波形を示
す図である。
【図8】図1に示すセレクタ回路の回路構成を示す回路
図である。
【図9】図1に示すページサイズを記憶する領域SZの
読み出しおよび書き込み回路の回路構成を示す回路図で
ある。
【図10】本実施例1における、図1に示すページサイ
ズを示す領域SZへの書き込みの制御方法を説明するた
めの図である。
【図11】図10に示す書き込みの制御方法の効果を示
す図である。
【図12】図8に示すセレクタ回路および図10の制御
方法の効果を表す動作波形である。
【図13】実施例2のウエイ選択信号発生回路の回路構
成を示す回路図である。
【図14】図13に示すウエイ選択信号回路を適用した
場合に有効なウエイセレクタの回路構成を示す回路図で
ある。
【図15】図14に示すAND−OR−NOT複合ゲー
ト回路をMOSトランジスタで構成した回路構成を示す
回路図である。
【図16】図13に示すウエイ選択信号発生回路を用い
た場合のセレクタ回路の回路構成を示す回路図である。
【図17】実施例2における、図1に示すページサイズ
を示す領域SZへの書き込みの制御方法を説明するため
の図である。
【図18】実施例3のセレクタ回路の回路構成を示す回
路図である。
【図19】図18に示すセンス線遅延信号を出力する遅
延信号生成回路の回路構成を示す回路図である。
【図20】前記各実施例のページサイズ可変セットアソ
シアティブTLBにおいて、エントリ毎に2種類以上の
ページサイズのアドレス変換対を記憶する場合のページ
サイズ可変セットアソシアティブTLBの要部を示すブ
ロック図である。
【図21】前記各実施例のページサイズ可変セットアソ
シアティブTLBにおいて、エントリ毎に2種類以上の
ページサイズのアドレス変換対を記憶する場合のウエイ
選択信号発生回路の回路構成を示す回路図である。
【符号の説明】
1…GND端子、2…正の電源端子、23…ワード線、
24,25,41,42,56,57…データ線、3
0,31,43,44,51,52,58,59…セン
ス線、36,38,38a〜38n…ヒット線、100
〜143…NMOSトランジスタ、200〜253…P
MOSトランジスタ、301,312,321,32
8,340…NOR回路、302,302a〜302,
313,313a〜313n,314,314a,33
6,339,341…NAND回路、319,320,
326,327…OR−AND−NOT複合ゲート回
路、334,335,337,338…AND−OR−
NOT複合ゲート回路、303,304,305,30
6,308,309,310,311,315,31
6,317,318,322,323,324,32
4,325,329,330,331,332,33
3,342,343,344…インバータ、400…書
き込みウエイセレクタ、401…アドレスデコーダ、4
02…アドレスアレイ、403…データアレイ、404
…コンパレータ、405…ウエイセレクタ回路、40
6,302a〜302n…セレクタ回路、407…メモ
リセル、500,500a〜500n…ページサイズビ
ット(SZ領域)、501…validビット記憶領
域、502…仮想ページ番号記憶領域、503,503
a〜503n…ページ番号記憶領域、504…物理アド
レス記憶領域、505…仮想アドレス、506…4KB
ページオフセット、507…1KBページオフセット、
508…インデックス。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 橘 大 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 成田 進 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 吉岡 真一 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所半導体事業部内 (72)発明者 石橋 孝一郎 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 樋口 久幸 東京都国分寺市東恋ヶ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 中込 儀延 東京都小平市上水本町5丁目20番1号 株 式会社日立製作所半導体事業部内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 入力される仮想アドレスを、実アドレス
    に変換するメモリ回路を備える半導体集積回路におい
    て、前記メモリ回路が、仮想アドレスの上位アドレスの
    一部を記憶する第1の領域と、ページサイズを示す値を
    記憶する第2の領域とを有する複数のアドレスアレイ
    と、実アドレスの上位アドレスの一部を記憶する第1の
    領域と、少なくとも実アドレスの残りの上位アドレスを
    記憶する第2の領域とを有する複数のデータアレイと、
    入力される仮想アドレスのインデックスアドレスをデコ
    ードして前記複数のアドレスアレイと前記複数のデータ
    アレイの特定の行を選択するデコーダと、前記複数のア
    ドレスアレイの前記デコーダにより選択された第2の領
    域から読み出されたそれぞれの値に基づき比較範囲を変
    更させて、前記複数のアドレスアレイの前記デコーダに
    より選択された第1の領域から読み出されたそれぞれの
    アドレスと前記入力される仮想アドレスの上位アドレス
    の一部とを比較する複数の比較回路と、前記複数のアド
    レスアレイの前記デコーダにより選択された第2の領域
    から読み出されたそれぞれの値に基づいて、前記複数の
    データアレイの前記デコーダにより選択された第2の領
    域から読み出されたそれぞれの実アドレス、あるいは、
    前記入力される仮想アドレスの所定位置のアドレスのい
    ずれか一方を選択する複数の第2のセレクタと、前記複
    数の比較回路の比較結果に基づいて、前記複数のデータ
    アレイの前記デコーダにより選択された第1の領域から
    読み出されたそれぞれの実アドレスの中の1つ、およ
    び、前記第2のセレクタにより選択されたそれぞれのア
    ドレスの中の1つを選択する第1のセレクタとを有すこ
    とを特徴とする半導体集積回路。
  2. 【請求項2】 前記複数のアドレスアレイの第1の領域
    が、各列毎に複数の記憶素子からなるメモリセルと、複
    数のメモリセルが接続されメモリセルの相補信号が伝達
    されるデータ線対と、前記データ線対の電位がスイッチ
    グ素子を介して伝達されるセンス線対と、前記データ線
    対および前記センス線対を電源電位にプリチャージする
    複数のプリチャージ回路と、前記デコーダにより選択さ
    れたメモリセルから読み出した値により生じる前記セン
    ス線対の電位差を増幅するセンスアンプ回路と、前記セ
    ンス線対の電位の変化を検出する検出回路とを有し、前
    記複数の比較回路が、一方の入力端子に、前記複数のア
    ドレスアレイの各列毎に設けられる前記検出回路の出力
    が入力され、他方の入力端子に、仮想アドレスの各ビッ
    トのビット値が入力される複数の排他的論理和回路と、
    前記複数の排他的論理和回路の出力がゲート電極に印加
    される複数のNMOSトランジスタと、前記複数のNM
    OSトランジスタの一方の電極に接続されるヒット線と
    を有することを特徴とする請求項1に記載された半導体
    集積回路。
  3. 【請求項3】 前記メモリ回路が、前記複数のアドレス
    アレイのそれぞれの第2の領域にデータを書き込む書込
    手段を有し、また、前記複数の第2のセレクタが、読み
    出し動作が開始する前に、前記複数のデータアレイの前
    記デコーダにより選択された第2の領域から読み出され
    たそれぞれの実アドレスを選択して前記第1のセレクタ
    に入力し、読み出し動作が開始された後に、前記複数の
    アドレスアレイの前記デコーダにより選択された第2の
    領域から読み出されたそれぞれの値が、前記入力される
    仮想アドレスの所定位置のアドレスを選択する値である
    場合、前記複数のデータアレイの第2の領域から読み出
    されたそれぞれの実アドレスに代えて、前記入力される
    仮想アドレスの所定位置のアドレスを選択して前記第1
    のセレクタに入力する手段を有し、前記書込手段が、前
    記複数のアドレスアレイの第2の領域に書き込むそれぞ
    れの値と、前記複数のデータアレイの第2の領域に書き
    込むそれぞれの実アドレスとの所定の論理をとり、前記
    複数の第2のセレクタが、読み出し動作が開始された後
    に、前記入力される仮想アドレスの所定位置のアドレス
    を選択する時に、前記第1のセレクタが読み出し動作が
    開始する前の状態を維持する値を、前記複数のデータア
    レイのそれぞれの第2の領域に書き込むことを特徴とす
    る請求項1または請求項2に記載された半導体集積回
    路。
  4. 【請求項4】 前記メモリ回路が、前記複数の第2のセ
    レクタと前記第1のセレクタとの間に論理手段を有し、
    また、前記複数の第2のセレクタが、読み出し動作が開
    始する前に、前記複数のデータアレイの前記デコーダに
    より選択された第2の領域から読み出されたそれぞれの
    実アドレスを選択し、読み出し動作が開始された後に、
    前記複数のアドレスアレイの前記デコーダにより選択さ
    れたそれぞれの第2の領域から読み出されたそれぞれの
    値が、前記入力される仮想アドレスの所定位置のアドレ
    スを選択する値である場合、前記複数のデータアレイの
    第2の領域から読み出されたそれぞれの実アドレスに代
    えて、前記入力される仮想アドレスの所定位置のアドレ
    スを選択する手段を有し、前記論理手段が、前記複数の
    第2のセレクタにより選択されたそれぞれのアドレス
    と、前記複数のアドレスアレイの前記デコーダにより選
    択された第2の領域から読み出されたそれぞれの値と同
    程度の遅延を有する信号との間で所定の論理をとって、
    第1のセレクタに出力する手段を有することを特徴とす
    る請求項1または請求項2に記載された半導体集積回
    路。
JP7138053A 1994-09-09 1995-06-05 半導体集積回路 Withdrawn JPH08329687A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7138053A JPH08329687A (ja) 1995-06-05 1995-06-05 半導体集積回路
US08/657,231 US5907867A (en) 1994-09-09 1996-06-03 Translation lookaside buffer supporting multiple page sizes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7138053A JPH08329687A (ja) 1995-06-05 1995-06-05 半導体集積回路

Publications (1)

Publication Number Publication Date
JPH08329687A true JPH08329687A (ja) 1996-12-13

Family

ID=15212890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7138053A Withdrawn JPH08329687A (ja) 1994-09-09 1995-06-05 半導体集積回路

Country Status (1)

Country Link
JP (1) JPH08329687A (ja)

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298394B1 (en) 1999-10-01 2001-10-02 Stmicroelectronics, Ltd. System and method for capturing information on an interconnect in an integrated circuit
US6349371B1 (en) 1999-10-01 2002-02-19 Stmicroelectronics Ltd. Circuit for storing information
US6351803B2 (en) 1999-10-01 2002-02-26 Hitachi Ltd. Mechanism for power efficient processing in a pipeline processor
US6408381B1 (en) 1999-10-01 2002-06-18 Hitachi, Ltd. Mechanism for fast access to control space in a pipeline processor
US6412043B1 (en) 1999-10-01 2002-06-25 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6412047B2 (en) * 1999-10-01 2002-06-25 Stmicroelectronics, Inc. Coherency protocol
US6434665B1 (en) 1999-10-01 2002-08-13 Stmicroelectronics, Inc. Cache memory store buffer
US6449712B1 (en) 1999-10-01 2002-09-10 Hitachi, Ltd. Emulating execution of smaller fixed-length branch/delay slot instructions with a sequence of larger fixed-length instructions
US6457118B1 (en) 1999-10-01 2002-09-24 Hitachi Ltd Method and system for selecting and using source operands in computer system instructions
US6460174B1 (en) 1999-10-01 2002-10-01 Stmicroelectronics, Ltd. Methods and models for use in designing an integrated circuit
US6463553B1 (en) 1999-10-01 2002-10-08 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6487683B1 (en) 1999-10-01 2002-11-26 Stmicroelectronics Limited Microcomputer debug architecture and method
US6496905B1 (en) 1999-10-01 2002-12-17 Hitachi, Ltd. Write buffer with burst capability
US6502210B1 (en) 1999-10-01 2002-12-31 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6530047B1 (en) 1999-10-01 2003-03-04 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6542983B1 (en) 1999-10-01 2003-04-01 Hitachi, Ltd. Microcomputer/floating point processor interface and method
US6546480B1 (en) 1999-10-01 2003-04-08 Hitachi, Ltd. Instructions for arithmetic operations on vectored data
US6553460B1 (en) 1999-10-01 2003-04-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6557119B1 (en) 1999-10-01 2003-04-29 Stmicroelectronics Limited Microcomputer debug architecture and method
US6567932B2 (en) 1999-10-01 2003-05-20 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6574651B1 (en) 1999-10-01 2003-06-03 Hitachi, Ltd. Method and apparatus for arithmetic operation on vectored data
US6590907B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics Ltd. Integrated circuit with additional ports
US6591369B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics, Ltd. System and method for communicating with an integrated circuit
US6598177B1 (en) 1999-10-01 2003-07-22 Stmicroelectronics Ltd. Monitoring error conditions in an integrated circuit
US6598128B1 (en) 1999-10-01 2003-07-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6601189B1 (en) 1999-10-01 2003-07-29 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6615370B1 (en) 1999-10-01 2003-09-02 Hitachi, Ltd. Circuit for storing trace information
US6629115B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method and apparatus for manipulating vectored data
US6629207B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method for loading instructions or data into a locked way of a cache memory
US6633971B2 (en) 1999-10-01 2003-10-14 Hitachi, Ltd. Mechanism for forward data in a processor pipeline using a single pipefile connected to the pipeline
US6665816B1 (en) 1999-10-01 2003-12-16 Stmicroelectronics Limited Data shift register
US6684348B1 (en) 1999-10-01 2004-01-27 Hitachi, Ltd. Circuit for processing trace information
US6693914B1 (en) 1999-10-01 2004-02-17 Stmicroelectronics, Inc. Arbitration mechanism for packet transmission
US6701405B1 (en) 1999-10-01 2004-03-02 Hitachi, Ltd. DMA handshake protocol
US6732307B1 (en) 1999-10-01 2004-05-04 Hitachi, Ltd. Apparatus and method for storing trace information
US6779145B1 (en) 1999-10-01 2004-08-17 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6820195B1 (en) 1999-10-01 2004-11-16 Hitachi, Ltd. Aligning load/store data with big/little endian determined rotation distance control
US6826191B1 (en) 1999-10-01 2004-11-30 Stmicroelectronics Ltd. Packets containing transaction attributes
US6859891B2 (en) 1999-10-01 2005-02-22 Stmicroelectronics Limited Apparatus and method for shadowing processor information
US6918065B1 (en) 1999-10-01 2005-07-12 Hitachi, Ltd. Method for compressing and decompressing trace information
US6928073B2 (en) 1999-10-01 2005-08-09 Stmicroelectronics Ltd. Integrated circuit implementing packet transmission
US7000078B1 (en) 1999-10-01 2006-02-14 Stmicroelectronics Ltd. System and method for maintaining cache coherency in a shared memory system
US7072817B1 (en) 1999-10-01 2006-07-04 Stmicroelectronics Ltd. Method of designing an initiator in an integrated circuit
US7260745B1 (en) 1999-10-01 2007-08-21 Stmicroelectronics Ltd. Detection of information on an interconnect
US7266728B1 (en) 1999-10-01 2007-09-04 Stmicroelectronics Ltd. Circuit for monitoring information on an interconnect
JP4998554B2 (ja) * 2007-06-20 2012-08-15 富士通株式会社 演算処理装置、情報処理装置及び演算処理装置の制御方法
US8874869B2 (en) 2009-08-07 2014-10-28 Panasonic Corporation Semiconductor memory device
JP2016507096A (ja) * 2013-01-15 2016-03-07 クゥアルコム・インコーポレイテッドQualcomm Incorporated 変換索引バッファ(tlb)のための重複検査
WO2019159472A1 (ja) * 2018-02-15 2019-08-22 ソニー株式会社 メモリ管理装置及びメモリ管理方法、並びに情報処理装置

Cited By (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298394B1 (en) 1999-10-01 2001-10-02 Stmicroelectronics, Ltd. System and method for capturing information on an interconnect in an integrated circuit
US6349371B1 (en) 1999-10-01 2002-02-19 Stmicroelectronics Ltd. Circuit for storing information
US6351803B2 (en) 1999-10-01 2002-02-26 Hitachi Ltd. Mechanism for power efficient processing in a pipeline processor
US6408381B1 (en) 1999-10-01 2002-06-18 Hitachi, Ltd. Mechanism for fast access to control space in a pipeline processor
US6412043B1 (en) 1999-10-01 2002-06-25 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6412047B2 (en) * 1999-10-01 2002-06-25 Stmicroelectronics, Inc. Coherency protocol
US6434665B1 (en) 1999-10-01 2002-08-13 Stmicroelectronics, Inc. Cache memory store buffer
US6449712B1 (en) 1999-10-01 2002-09-10 Hitachi, Ltd. Emulating execution of smaller fixed-length branch/delay slot instructions with a sequence of larger fixed-length instructions
US6457118B1 (en) 1999-10-01 2002-09-24 Hitachi Ltd Method and system for selecting and using source operands in computer system instructions
US6460174B1 (en) 1999-10-01 2002-10-01 Stmicroelectronics, Ltd. Methods and models for use in designing an integrated circuit
US6463553B1 (en) 1999-10-01 2002-10-08 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6487683B1 (en) 1999-10-01 2002-11-26 Stmicroelectronics Limited Microcomputer debug architecture and method
US6496905B1 (en) 1999-10-01 2002-12-17 Hitachi, Ltd. Write buffer with burst capability
US6502210B1 (en) 1999-10-01 2002-12-31 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6530047B1 (en) 1999-10-01 2003-03-04 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6542983B1 (en) 1999-10-01 2003-04-01 Hitachi, Ltd. Microcomputer/floating point processor interface and method
US6546480B1 (en) 1999-10-01 2003-04-08 Hitachi, Ltd. Instructions for arithmetic operations on vectored data
US6553460B1 (en) 1999-10-01 2003-04-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6557119B1 (en) 1999-10-01 2003-04-29 Stmicroelectronics Limited Microcomputer debug architecture and method
US6567932B2 (en) 1999-10-01 2003-05-20 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6574651B1 (en) 1999-10-01 2003-06-03 Hitachi, Ltd. Method and apparatus for arithmetic operation on vectored data
US6591340B2 (en) 1999-10-01 2003-07-08 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6590907B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics Ltd. Integrated circuit with additional ports
US6591369B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics, Ltd. System and method for communicating with an integrated circuit
US6598177B1 (en) 1999-10-01 2003-07-22 Stmicroelectronics Ltd. Monitoring error conditions in an integrated circuit
US6598128B1 (en) 1999-10-01 2003-07-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6601189B1 (en) 1999-10-01 2003-07-29 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6615370B1 (en) 1999-10-01 2003-09-02 Hitachi, Ltd. Circuit for storing trace information
US6629115B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method and apparatus for manipulating vectored data
US6629207B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method for loading instructions or data into a locked way of a cache memory
US6633971B2 (en) 1999-10-01 2003-10-14 Hitachi, Ltd. Mechanism for forward data in a processor pipeline using a single pipefile connected to the pipeline
US6665816B1 (en) 1999-10-01 2003-12-16 Stmicroelectronics Limited Data shift register
US6684348B1 (en) 1999-10-01 2004-01-27 Hitachi, Ltd. Circuit for processing trace information
US6693914B1 (en) 1999-10-01 2004-02-17 Stmicroelectronics, Inc. Arbitration mechanism for packet transmission
US6701405B1 (en) 1999-10-01 2004-03-02 Hitachi, Ltd. DMA handshake protocol
US6732307B1 (en) 1999-10-01 2004-05-04 Hitachi, Ltd. Apparatus and method for storing trace information
US6779145B1 (en) 1999-10-01 2004-08-17 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6820195B1 (en) 1999-10-01 2004-11-16 Hitachi, Ltd. Aligning load/store data with big/little endian determined rotation distance control
US6826191B1 (en) 1999-10-01 2004-11-30 Stmicroelectronics Ltd. Packets containing transaction attributes
US6859891B2 (en) 1999-10-01 2005-02-22 Stmicroelectronics Limited Apparatus and method for shadowing processor information
US6918065B1 (en) 1999-10-01 2005-07-12 Hitachi, Ltd. Method for compressing and decompressing trace information
US6928073B2 (en) 1999-10-01 2005-08-09 Stmicroelectronics Ltd. Integrated circuit implementing packet transmission
US7000078B1 (en) 1999-10-01 2006-02-14 Stmicroelectronics Ltd. System and method for maintaining cache coherency in a shared memory system
US7072817B1 (en) 1999-10-01 2006-07-04 Stmicroelectronics Ltd. Method of designing an initiator in an integrated circuit
US7228389B2 (en) 1999-10-01 2007-06-05 Stmicroelectronics, Ltd. System and method for maintaining cache coherency in a shared memory system
US7260745B1 (en) 1999-10-01 2007-08-21 Stmicroelectronics Ltd. Detection of information on an interconnect
US7266728B1 (en) 1999-10-01 2007-09-04 Stmicroelectronics Ltd. Circuit for monitoring information on an interconnect
US7346072B2 (en) 1999-10-01 2008-03-18 Stmicroelectronics Ltd. Arbitration mechanism for packet transmission
JP4998554B2 (ja) * 2007-06-20 2012-08-15 富士通株式会社 演算処理装置、情報処理装置及び演算処理装置の制御方法
US8874869B2 (en) 2009-08-07 2014-10-28 Panasonic Corporation Semiconductor memory device
JP2016507096A (ja) * 2013-01-15 2016-03-07 クゥアルコム・インコーポレイテッドQualcomm Incorporated 変換索引バッファ(tlb)のための重複検査
WO2019159472A1 (ja) * 2018-02-15 2019-08-22 ソニー株式会社 メモリ管理装置及びメモリ管理方法、並びに情報処理装置
JPWO2019159472A1 (ja) * 2018-02-15 2021-01-28 ソニー株式会社 メモリ管理装置及びメモリ管理方法、並びに情報処理装置

Similar Documents

Publication Publication Date Title
JPH08329687A (ja) 半導体集積回路
US5907867A (en) Translation lookaside buffer supporting multiple page sizes
US5299147A (en) Decoder scheme for fully associative translation-lookaside buffer
US11182304B2 (en) Memory array page table walk
US5034636A (en) Sense amplifier with an integral logic function
JP3560266B2 (ja) 半導体装置及び半導体データ装置
US6515894B2 (en) Semiconductor memory apparatus, semiconductor apparatus, data processing apparatus and computer system
JPH08101797A (ja) 変換索引バッファ
JPH04227553A (ja) 高速キャッシュメモリのアレイアーキテクチャ
US5802594A (en) Single phase pseudo-static instruction translation look-aside buffer
JP2001273193A (ja) キャッシュメモリ
US20100023684A1 (en) Method and apparatus for reducing power consumption in a content addressable memory
Hussain et al. Match-line division and control to reduce power dissipation in content addressable memory
US20070280030A1 (en) Contention-free hierarchical bit line in embedded memory and method thereof
US5550774A (en) Memory cache with low power consumption and method of operation
JP3792520B2 (ja) セルフタイム式tlbのメモリアクセス方法
JP2588936B2 (ja) 半導体記憶装置
JPH10188565A (ja) 複数のデジタル値を電気的にリストアおよびアクセスする装置
US5699315A (en) Data processing with energy-efficient, multi-divided module memory architectures
JPH07141259A (ja) キャッシュタグメモリ
US5463751A (en) Memory device having address translator and comparator for comparing memory cell array outputs
JPH05127872A (ja) 半導体集積回路
US6016534A (en) Data processing system for controlling operation of a sense amplifier in a cache
JP5337247B2 (ja) 半導体記憶装置
JPH07169271A (ja) 半導体記憶装置、クロック同期型半導体装置および出力回路

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020806