JPH0827715B2 - 記憶装置 - Google Patents

記憶装置

Info

Publication number
JPH0827715B2
JPH0827715B2 JP5041644A JP4164493A JPH0827715B2 JP H0827715 B2 JPH0827715 B2 JP H0827715B2 JP 5041644 A JP5041644 A JP 5041644A JP 4164493 A JP4164493 A JP 4164493A JP H0827715 B2 JPH0827715 B2 JP H0827715B2
Authority
JP
Japan
Prior art keywords
shift
signal
value
bit
column
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.)
Expired - Lifetime
Application number
JP5041644A
Other languages
English (en)
Other versions
JPH06314195A (ja
Inventor
貴司 中山
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP5041644A priority Critical patent/JPH0827715B2/ja
Priority to US08/204,997 priority patent/US5371711A/en
Priority to DE69410660T priority patent/DE69410660T2/de
Priority to EP94103235A priority patent/EP0614191B1/en
Publication of JPH06314195A publication Critical patent/JPH06314195A/ja
Publication of JPH0827715B2 publication Critical patent/JPH0827715B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1018Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/04Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は記憶装置に関し、特に高
度にパイプライン化し縮小命令セットを有するマイクロ
プロセッサすなわちRISC型のマイクロプロセッサに
おける命令メモリを含む制御用の記憶装置に関する。
【0002】
【従来の技術】VLSI技術および設計技術の急速な進
歩によりマイクロプロセッサの進歩は目覚しく、性能は
年々向上しスーパミニコンピュータの性能に接近できる
ようになってきた。その高性能化技術の一つにRISC
型のマイクロプロセッサがある。RISC型マイクロプ
ロセッサは、従来のコンピュータの命令セットの内の使
用頻度が高い命令のみをハードウエア化することにより
処理の高速化を図ったマイクロプロセッサである。RI
SC型のマイクロプロセッサの性能向上の方法として、
例えば、1989年米国で発行されたアイイーイー・ト
ランザクションズ・オン・コンピュータズ(IEEE
Transacsion on Computes),
第38巻,1989年12月,第1645頁〜第165
8頁所載の論文「ザ・ノンユニフオーム・デストリビュ
ーション・オフ・インストラクションレベル・アンド・
マシン・パラレリズム・アンド・イッツ・エフエクト・
オンパフオーマンス」(The Nonuniform
Distributionof Instructi
on−Level and Machine Para
llelism and Its Effect on
Performance)(文献1)には、スーパス
ケーラ方式とスーパパイプライン方式を以下のように定
義している。
【0003】図5(A)は基準となるRISCプロセッ
サのパイプラインを示す図であり、Instructo
n Fetch(IF)と、Decode(D)と、E
xecute(EX)と、Write Back(W
B)との4つのステージから成る。ステージIFは命令
キャッシュメモリから命令コードの読込を行う。ステー
ジDは命令コードのデコードとレジスタファイルの読出
を行う。ステージEXはレジスタの内容について演算を
行う。ステージWBは演算結果をレジスタファイルに書
込む。クロックサイクル毎にパイプラインステージが進
み、1クロックサイクル毎に1命令が実行できる。
【0004】スーパスケーラ方式は、N個の演算器を用
意してN個の命令を同時に実行する方式である。図5
(B)は、N=2のスーパスケーラの例を示し、1クロ
ックサイクル毎に2命令を実行している。
【0005】一方、スーパパイプライン方式は、図5
(A)の基準のパイプラインをM倍細かくし、かつ、ク
ロックサイクルの期間を1/M倍としたものであり、上
記基準パイプラインのM倍の速さで命令を実行する方式
である。図5(C)は、M=2のスーパパイプラインの
例を示す。スーパパイプラインの2クロックサイクルが
上記基準パイプラインの1クロックサイクルに相当する
ので、クロックサイクル毎の命令実行数は1であるが、
上記基準パイプラインの1クロックサイクルの期間に2
命令を実行する。
【0006】スーパスケーラ方式のマイクロプロセッサ
は、演算器の数が増える分だけハードウェア量が増加
し、チップサイズが大きくなる。それに対し、スーパパ
イプライン方式のマイクロプロセッサは、パイプライン
レジスタと若干の制御論理回路の増加で済むため、ハー
ドウェア量の増加が少ない。
【0007】スーパパイプライン方式を実現する場合の
問題点は、プログラムカウンタのインクリメンタであ
る。
【0008】図6は、従来の32ビットのRISC型マ
イクロプロセッサの基本パイプラインのステージIFで
ある従来の記憶装置の一例を示す図である。従来の記憶
装置は、図6に示すように、30ビットの分岐アドレス
ABが入力される30ビットのプログラムカウンタ(P
C)101と、30ビットのインクリメンタ102と、
PC101の下位ビットをアドレスとする1024語×
32ビットの命令メモリ103と、PC101の出力を
ラッチする30ビットのパイプライン用のレジスタ10
4と、命令メモリ103の出力をラッチする30ビット
のパイプライン用のレジスタ105とを備える。
【0009】次に、従来の記憶装置の動作について説明
する。
【0010】命令の語長が32ビット(4バイト)なの
で、命令語のアドレスの下位2ビットは常に0である。
そのため、上述のように、PC101、インクリメンタ
102、レジスタ104、および分岐アドレスABは、
それぞれ下位2ビットを省略して30ビットの語長とな
っている。
【0011】プログラムを順々に実行している場合に
は、PC101はインクリメンタ102の出力によっ
て、+4(アドレスの下位2ビットは0)ずつ増加す
る。PC101の出力(下位12ビット)をアドレスと
して、命令メモリ103は命令語をレジスタ105に出
力する。
【0012】分岐命令を実行する場合には、分岐先アド
レスはレジスタ104,105からステージD(デコー
ド)以降のハードウェアで行われる。通常、分岐命令は
PC相対アドレッシングであり、PC101の値すなわ
ちレジスタ104の出力に命令コードすなわちレジスタ
105の出力に含まれるオフセット値を加算して分岐先
アドレスが算出される。分岐する場合には、分岐先アド
レスが分岐アドレスABとしてPC101に供給され
る。
【0013】ここで、図6に示す基本パイプラインを、
N=2のスーパパイプライン化することを検討する。命
令メモリ103のスーパパイプライン化は、例えば、1
991年米国で発行されたアイイーイー・ジャーナル・
オフ・ソリッドステート・サーキッツ(IEEE Jo
urnal of Solid−state Circ
uits),第SC−26巻,1991年11月,第1
577頁〜第1585頁所載の論文「ア・2nSサイク
ル,3.8nS・アクセス・512KB CMOS E
CL SRAM・ウィズ・ア・フリイ・パイプラインド
・アーキテクチャ」(A 2−nS Cycle,3.
8−nS Access 512−kbCMOS EC
L SRAM with a Fllly Pipel
inedArchitecture)(文献2)の手
法、すなわち、データの到着を検知して演算し、演算終
了後にスタンバイ状態に戻る回路であるセルフリセッテ
ング回路を用いれば可能である。
【0014】一方、インクリメンタ102のパイプライ
ン化は不可能である。もし、インクリメンタ102にパ
イプラインレジスタを挿入してパイプライン化したとし
ても、2クロックサイクルに1回しかインクリメントで
きない。しかしながら、30ビットのインクリメントは
1クロックサイクルでぱ不可能である。何故なら、演算
(EX)に2ステージ必要とするので、32ビットの加
算に2クロックサイクルかかるからである。
【0015】インクリメンタを用いずに、連続するアド
レスを高速アクセスするメモリについては、特開昭57
−27477号公報(文献3)でDRAMのいわゆるニ
ブルモードでのアクセス方式が以下のように提案されて
いる。すなわち、DRAMにおいて、Y(コラム)デコ
ーダの出力を一旦シフトレジスタで受け、連続アドレス
のアクセスを高速に行う。
【0016】この方式では、確にインクリメンタが無く
ても高速な連続アクセスが可能である。しかし、PC相
対アドレッシングの分岐命令を実現するためには、イン
クリメントしたPCの値が必要である。
【0017】
【発明が解決しようとする課題】上述した従来の記憶装
置は、スーパパイプライン方式のマイクロプロセッサを
実現するために、クロックサイクル毎の命令メモリの連
続アクセスが可能であることと、分岐命令のためのクロ
ックサイクル毎にインクリメントしたPCが必要である
こととの2条件を必要とするのに対し、この2条件の両
方を実現する手段が無いという問題点があった。
【0018】本発明の目的は、上記2条件の両方を実現
する記憶装置を提供することにある。
【0019】
【課題を解決するための手段】本発明の記憶装置は、2
H 行2L 列(H,Lは正の整数)から成るメモリセル
と、プログラムの順序にしたがって連続して番地付けさ
れた前記メモリセルの連続アドレスを指定するアドレス
信号の上位Hビットの符号第1の行アドレス信号と
してデコードし前記メモリセルの前記行を指定する行選
択信号を生成する行デコーダと、前記アドレス信号の下
Lビットの符号第1の列アドレス信号としてデコ
ードし前記メモリセルの前記列を指定する列選択信号を
生成する列デコーダとを備える記憶装置において、前記
選択信号の値を格納しこの行選択信号の値を前記プロ
グラムの進行時のクロックの供給に応答して順次上位の
値にシフトするようシフト動作第1のシフト値を
する2H ビットの第1のシフトレジスタと、前記列
択信号の値を格納しこの列選択信号の値を前記クロック
の供給に応答して順次上位の値にシフトするようシフト
動作第2のシフト値を生成する2L ビットの第2の
シフトレジスタと、各々の入出力の論理を前記行デコー
ダおよび列デコーダの各々と逆論理で構成し前記第1,
第2のシフト値の各々を予め定めた論理にしたがってH
ビットの符号,Lビットの符号にそれぞれエンコードし
て前記第1,第2のシフトレジスタの各々のシフト動作
時の前記メモリセルの第2の行および列アドレス信号を
それぞれ生成する行および列エンコーダと、前記プログ
ラムの進行時には前記クロックの供給に応答して前記第
1および第2のシフトレジスタの前記シフト動作をさせ
前記分岐命令の実行を指示する分岐信号の供給に応答し
て前記シフト動作を停止するとともに前記前記行選択信
号および列選択信号の各々の値の格納動作を行うシフト
制御信号と、前記第1および第2のシフト値がそれぞれ
最上位値である第1および第2の最上位値に達した場合
にそれぞれ第1および第2の最上位値到達信号とを出力
するシフト制御手段とを備えて構成されている。
【0020】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
【0021】図1は本発明の記憶装置の第一の実施例を
示すブロック図であり、従来と同様に32ビットのRI
SC型マイクロプロセッサのステージIFに適用したも
のである。
【0022】本実施例の記憶装置は、図1に示すよう
に、従来と同様のPC101と、レジスタ104,10
5とに加えて、命令メモリ103の代りにPC101の
下位ビットをアドレスとする1024語×32ビットの
パイプライン化した命令メモリであるメモリ300と、
PC101の上位ビットをラッチする20ビットのパイ
プライン用のレジスタ320とを備える。
【0023】メモリ300は、Xデコーダ301と、X
デコーダ301の出力をラッチするシフトレジスタ30
2と、Yデコーダ303と、Yデコーダ303の出力を
ラッチするシフトレジスタ304と、シフトレジスタ3
02の出力によりアクセスされる128行(X),8列
(Y),32ビットのRAMセル305と、シフトレジ
スタ304の制御によりRAMセル305の8列の1つ
を選択する8対1の32ビットのYセレクタ306と、
Yセレクタ306の出力を増幅するセンスアンプ307
と、シフトレジスタ304の出力を3ビットのコードに
符号化するYエンコーダ310と、シフトレジスタ30
2の出力を7ビットのコードに符号化するXエンコーダ
311とを備える。Xエンコーダ311は、シフトレジ
スタ302の出力によりアクセスされる128行
(X),7ビットのROMセル308と、ROMセル3
08の出力を増幅するセンスアンプ309とから成る。
【0024】従来と同様に、命令の語長が32ビット
(4バイト)なので、命令語のアドレスの下位2ビット
は常に0であり、PC101、レジスタ104、および
分岐アドレスABは、それぞれ下位2ビットを省略して
30ビットの語長となっている。
【0025】メモリ300は、シフトレジスタ302,
304がパイプラインレジスタの役割をし、全体で2ク
ロックサイクルで読出せるパイプラインメモリを構成し
ている。
【0026】図2はシフトレジスタ302,304の構
成を示す回路図である。シフトレジスタ302,304
は、デコーダ301,303の出力と下位ビットの出力
を切替るセレクタ401と、クロックCKに同期して動
作しセレクタ401の出力をラッチするエッジトリガ型
のフリップフロップ402と、RAMセル305のワー
ド線またはYセレクタ306を選択するドライバ403
と、分岐命令実行時に分岐することを示す分岐信号SB
とシフトレジスタ304の最上位ビット出力であるシフ
トアウト信号SO1とからシフトレジスタ302の制御
信号を生成しシフト制御信号CSを出力するゲート41
4,415と、シフトアウト信号SO1とシフトレジス
タ302の最上位ビット出力であるシフトアウト信号S
O2と分岐信号SBとからメモリ300の最終番地から
インクリメントしようとすることを検知しエラー信号S
Eを出力するゲート417とを備える。シフトレジスタ
302は128ビット、シフトレジスタ304は8ビッ
トであり、各々のビットは、それぞれセレクタ401、
フリップフロップ402、ドライバ403の各々のビッ
トで構成される。
【0027】これらシフトレジスタ302,304は、
第0ビットから第1,第2,…と上位のビットの方に向
かってシフトする。それぞれの最上位ビット、すなわ
ち、シフトレジスタ302の第127ビットあるいはシ
フトレジスタ304の第7ビットからシフトアウトした
信号は第0ビットに入力される。
【0028】次に、本実施例の動作について説明する。
【0029】まず、従来例と異なりPC101の値は変
化せず最初の値を保持する。また、シフトレジスタ30
2,304は、アクセス対象の1つのビットだけ値が1
であり、他のビットの値は0である。シフトレジスタ3
02の出力信号によりRAMセル305の128行のう
ちの1行が選択され、その選択行を構成する8列×32
ビットのRAMセルの内容がビット線に出力される。そ
の8列のうちの1列がYセレクタ306で選択され、セ
ンスアンプ307で増幅され出力される。
【0030】プログラムを順々に実行している場合に
は、分岐信号SBは0であり、シフトレジスタ304
は、上述のように下位ビットから上位ビットへ順々にシ
フトする。これによって、Yセレクタ306が順々に切
替わり、連続アドレスに対応するRAMセル305の内
容が読出される。
【0031】Yセレクタ306の最上位列が選択される
とき、シフトアウト信号SO1の値が1になる。する
と、シフト制御信号CSが0となり、次のクロックサイ
クルでシフトレジスタ302がシフトし、RAMセル3
05の上記選択行の次の行が選択される。シフトレジス
タ304は一巡して第0ビットが1になり、Yセレクタ
306の最初の列が選択される。これによって、連続ア
ドレスに対応するメモリ300のデータが読出される。
読出された上記データは、レジスタ105にラッチさ
れ、次のパイプラインステージに伝達される。
【0032】分岐命令を実行する場合には、分岐先アド
レスABの計算はレジスタ104および105の出力か
ら、パイプラインステージD(デコード)以降のハード
ウェアで行われる。通常、分岐命令はPC相対アドレシ
ッングであり、PC101の値、すなわちレジスタ10
4の出力PCBに命令コードCIすなわちレジスタ10
5の出力に含まれるオフセット値を加算して、分岐先ア
ドレスABが計算される。分岐する場合には、分岐先ア
ドレスABが信号線106を経由してPC101に供給
される。PC101の値は、下位ビットすなわち第4〜
第2ビットがYデコーダ303に、その上位ビットすな
わち第11〜第5ビットがXデコーダ301にそれぞれ
供給される。上記分岐の場合、分岐信号SBは1であ
り、シフト制御信号CSも1となる。シフトレジスタ3
02,304のシフト動作は停止し、シフトレジスタ3
04にはYデコーダ303の出力値が、シフトレジスタ
302にはXデコーダ301の出力値がそれぞれ供給さ
れる。RAMセル305は、Xデコーダ301の出力値
が指示する行のYデコーダ303の出力値が指示する列
がYセレクタ306により読出され、センスアンプ30
7で増幅されてレジスタ105にラッチされる。
【0033】次に、PC101の値の再構成について説
明する。シフトレジスタ304の8ビットの値は、Yエ
ンコーダ310により3ビットに符号化される。Yエン
コーダ310の論理を表1に示す。
【0034】
【表1】
【0035】表1において、xは0または1のいずれで
も可であることを示す。このxには必ず0が入力され
る。何故なら、表1の論理はYデコーダ303の論理の
入出力を逆にしたもの、すなわちxを0に置き換えたも
のであるからである。
【0036】Yエンコーダ310は、ランダムロジック
で構成可能な規模であるが、Xエンコーダ311は上述
のようにROMセル308とセンスアンプ309とで構
成される。このXエンコーダ311は、シフトレジスタ
302の128ビットの出力を7ビットの符号にエンコ
ードする。これにより、シフトレジスタ302の出力を
RAMセル308およびRAMセル305のそれぞれの
ワード線に対し共有できるのでレイアウト面積を低減で
きる。Xエンコーダ311の論理は表1と同様であり、
Xデコーダ301の論理の入出力を逆にしたものであ
る。
【0037】シフトレジスタ304がシフトすると、Y
エンコーダ310の出力値はインクリメントする。前述
のように、シフトレジスタ304が最上位ビットまでシ
フトすると(Yエンコーダ310の出力=111)、シ
フトレジスタ302がシフトしXエンコーダ311の出
力はインクリメントする。したがって、出力の信号PR
の値は10ビット(7+3ビット)にわたってインクリ
メントする。信号PRの値は、メモリ300のデータ出
力と同期して1ステージ分遅れているため、PC101
の上位ビットを1ステージ分遅延させたレジスタ320
の値と連結されレジスタ104に供給される。これによ
って、レジスタ104,105の出力はステージDとな
り、以降の分岐アドレスの計算が正しく実行できる。
【0038】次に、本発明の第二の実施例について説明
する。図3は本発明の第二の実施例を示すブロック図で
ある。本実施例は、メモリ300を命令キャッシュメモ
リのデータメモリとして用い、タグ用のメモリ500を
追加してブロックサイズが8語(8×32ビット)、ブ
ロック数128個のダイレクトマップ方式のキャッシュ
メモリを構成するものである。
【0039】前述の第一の実施例に対する本実施例の相
違点は、第一の実施例の構成要素101,104,10
5,300,320に加えて、128語×21ビットの
パイプライン化したメモリであるメモリ500と、メモ
リ500のセンスアンプ502の出力と信号レジスタ3
20の出力の下位に1ビットの1を加算した21ビット
の信号PPとが同一かどうかを比較しキャッシュビット
信号BCを出力するコンパレータ511と、データ入替
用のバス520とをさらに備える。
【0040】メモリ500はXデコーダ501と、Xデ
コーダ501の出力をラッチするシフトレジスタ502
と、128語×21ビットのRAMセル503と、21
ビットのセンスアンプ504とを備える。
【0041】図4は、図3のキャッシュメモリのアドレ
ス空間を示す図である。アドレスの最下位ブロック60
1を構成する第1,第0ビットは常に0である。第4〜
第2ビットはブロック内アドレス602を示す。第11
〜第5ビットはキャッシュのインデクス603として用
いられる。第12〜第31ビットはキャッシュのアドレ
スタグ604として用いられる。
【0042】メモリ500には、128個の各ブロック
の20ビットから成るアドレスタグ604と、各ブロッ
クの情報が有効かどうかを示す1ビットのバリッドビッ
トとの計21ビットの情報が格納されている。バリッド
ビットは第11ビットであり、信号PPで付加した1と
同一の位置である。これにより、コンパレータ511で
は、メモリ500の出力であるアドレスタグの値とPC
101のタグ部分とが等しく、かつメモリ500のバリ
ッドビットが1すなわち有効であることが検出できる。
この結果、キャッシュヒット信号BCはキャッシュがヒ
ットしたことを示す信号となる。
【0043】インデクス603に相当するアドレスは、
PC101の第11〜第5ビットから、メモリ500の
Xデコーダ501およびメモリ300のXデコーダ30
1に伝達される。ブロック内アドレス602に相当する
アドレスは、PC101の第4〜第2ビットから、メモ
リ300のYデコーダ303に伝達される。
【0044】分岐する場合には、デコーダ301,30
2からシフトレジスタ302,304に新しいアドレス
が入力される。連続アドレスをアクセスする場合には、
シフトレジスタ304がシフトすることにより、順次新
しいデータがレジスタ105に出力される。同一ブロッ
ク内をアクセスしている間はメモリ500は同一値を出
力する。
【0045】ブロックを越えるアクセスの場合には、シ
フト制御信号CSが1になるため、メモリ300,50
0の各々のシフトレジスタ302,502がシフトして
次のブロックがアクセスされる。
【0046】コンパレータ511により、新しいブロッ
クのキャッシュ内容が有効かどうかを常にチエックす
る。もし、キャッシュミスの発生、すなわちキャッシュ
ヒット信号BCの値が0の場合には、該当のブロックの
内容が主記憶からデータバス520経由で転送されるこ
とにより更新される。このとき、ブロック内アドレスの
インクリメントにメモリ300のシフトレジスタ304
が使用できる。
【0047】最終インデクスすなわちインデクス603
が127からさらにブロックを越えてアクセスする場合
は、PC101のタグ部分すなわちアドレスタグ604
もインクリメントされなければならない。このことは信
号SEにより検出できる。プロセッサの制御回路は、信
号SEが1のとき仮想的な分岐命令を発生させ、分岐ア
ドレス生成回路でインクリメントしたPCの値ABを信
号線106を経由して入力する。このとき、分岐命令を
実行するのと同一の時間的ペナルティ、すなわち、数ク
ロックサイクルのパイプラインのストールが発生する。
しかし、その確率は本実施例の場合1/128未満と極
めて低く、性能への影響は無視できる。
【0048】以上のように、本発明では命令メモリにシ
フトレジスタを挿入してパイプライン化し、パイプライ
ンアクセスと連続アクセスとを可能とするとともに、P
Cの値を再構成するエンコーダを付加することにより、
インクリメンタを省略することでマイクロプロセッサの
動作周波数を大幅に向上できる。
【0049】以上、本発明の実施例を説明したが、本発
明は上記実施例に限られることなく種々の変形が可能で
ある。例えば、命令メモリを2ステージにパイプライン
化したが、さらにパイプラインレジスタを挿入して3ス
テージ以上にパイプライン化することも本発明の主旨を
逸脱しない限り適用できることは勿論である。
【0050】また、第二の実施例のタグ用のメモリにお
いてYセレクタを用いてビット線を短縮し高速化するこ
とも勿論可能である。
【0051】さらに、データ用のメモリとタグ用のメモ
リとでXデコーダとシフトレジスタとを共有し、同じ1
つのメモリとしてレイアウトすることも勿論可能であ
る。
【0052】
【発明の効果】以上説明したように、本発明の記憶装置
は、クロック周波数向上のネックとなっていたインクリ
メンタが不要であることにより、パイプラインのステー
ジ数を増加でき、命令メモリの2ステージ以上のパイプ
ライン化によりマイクロプロセッサのクロック周波数を
2倍以上に向上したスーパパイプライン化が容易に実現
できるという効果がある。
【図面の簡単な説明】
【図1】本発明の記憶装置の第一の実施例を示すブロッ
ク図である。
【図2】図1のシフトレジスタの構成を示す回路図であ
る。
【図3】本発明の記憶装置の第二の実施例を示すブロッ
ク図である。
【図4】本実施例のアドレス空間を示す図である。
【図5】RISC型マイクロプロセッサのパイプライン
とその性能向上方式を示す図である。
【図6】従来の記憶装置の一例を示すブロック図であ
る。
【符号の説明】
101 PC 102 インクリメンタ 103 命令メモリ 104,105,320 レジスタ 300,500 メモリ 301,501 Xデコーダ 302,304,502 シフトレジスタ 303 Yデコーダ 305,503 RAMセル 306 Yセレクタ 307,309,504 センスアンプ 308 ROM 310 Yエンコーダ 311 Xエンコーダ 401 セレクタ 402 フリップフロップ 403 ドライバ 414,415,417 ゲート

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 2H 行2L 列(H,Lは正の整数)から
    成るメモリセルと、プログラムの順序にしたがって連続
    して番地付けされた前記メモリセルの連続アドレスを指
    定するアドレス信号の上位Hビットの符号第1の行
    アドレス信号としてデコードし前記メモリセルの前記行
    を指定する行選択信号を生成する行デコーダと、前記ア
    ドレス信号の下位Lビットの符号第1の列アドレス
    信号としてデコードし前記メモリセルの前記列を指定す
    列選択信号を生成する列デコーダとを備える記憶装置
    において、 前記行選択信号の値を格納しこの行選択信号の値を前記
    プログラムの進行時のクロックの供給に応答して順次上
    位の値にシフトするようシフト動作第1のシフト値
    生成する2H ビットの第1のシフトレジスタと、 前記列選択信号の値を格納しこの列選択信号の値を前記
    クロックの供給に応答して順次上位の値にシフトするよ
    うシフト動作第2のシフト値を生成する2L ビット
    の第2のシフトレジスタと、各々の入出力の論理を前記行デコーダおよび列デコーダ
    の各々と逆論理で構成し前記第1,第2のシフト値の各
    々を予め定めた論理にしたがってHビットの符号,Lビ
    ットの符号にそれぞれエンコードして前記第1,第2の
    シフトレジスタの各々のシフト動作時の前記メモリセル
    の第2の行および列アドレス信号をそれぞれ生成する行
    および列エンコーダと、 前記プログラムの進行時には前記クロックの供給に応答
    して前記第1および第2のシフトレジスタの前記シフト
    動作をさせ前記分岐命令の実行を指示する分岐信号の供
    給に応答して前記シフト動作を停止するとともに前記前
    記行選択信号および列選択信号の各々の値の格納動作を
    行うシフト制御信号と、前記第1および第2のシフト値
    がそれぞれ最上位値である第1および第2の最上位値に
    達した場合にそれぞれ第1および第2の最上位値到達信
    号とを出力するシフト制御手段とを備えることを特徴と
    する記憶装置。
  2. 【請求項2】 前記シフト制御手段が、前記分岐信号と
    前記第2のシフトレジスタの最上位ビット出力である第
    2のシフトアウト信号との第1の論理演算により前記第
    1のシフトレジスタの前記シフト制御信号を生成する第
    1の論理回路 と、 前記分岐信号と前記第1および第2の最上位値到達信号
    との第2の論理演算により前記メモリセルの最終番地か
    らさらにインクリメントしようとすることを検知しエラ
    ー信号を出力する第2の論理回路とを備えることを特徴
    とする請求項1記載の記憶装置。
  3. 【請求項3】 前記第1および第2のシフトレジスタ
    各々が、シフト制御信号の供給に応答してそれぞれ前記
    行選択信号および列選択信号の各々のビット値と前記第
    1,第2のシフト値のそれぞれ1ビット下位の第1,第
    2の下位シフト値の各々のビット値とを切替るセレクタ
    と、前記 クロックの供給に応答して動作し各々の前記セレク
    タの出力値をラッチするフリップフロップとを備えるこ
    とを特徴とする請求項1記載の記憶装置。
JP5041644A 1993-03-03 1993-03-03 記憶装置 Expired - Lifetime JPH0827715B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP5041644A JPH0827715B2 (ja) 1993-03-03 1993-03-03 記憶装置
US08/204,997 US5371711A (en) 1993-03-03 1994-03-03 Instruction memory system for RISC microprocessor capable of preforming program counter relative addressing
DE69410660T DE69410660T2 (de) 1993-03-03 1994-03-03 Instruktionsspeichersystem für RISC-Mikroprozessor, fähig zu relativen Progammzahleradressierung
EP94103235A EP0614191B1 (en) 1993-03-03 1994-03-03 Instruction memory system for risc microprocessor capable of preforming program counter relative addressing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5041644A JPH0827715B2 (ja) 1993-03-03 1993-03-03 記憶装置

Publications (2)

Publication Number Publication Date
JPH06314195A JPH06314195A (ja) 1994-11-08
JPH0827715B2 true JPH0827715B2 (ja) 1996-03-21

Family

ID=12614052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5041644A Expired - Lifetime JPH0827715B2 (ja) 1993-03-03 1993-03-03 記憶装置

Country Status (4)

Country Link
US (1) US5371711A (ja)
EP (1) EP0614191B1 (ja)
JP (1) JPH0827715B2 (ja)
DE (1) DE69410660T2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3233245B2 (ja) * 1993-07-01 2001-11-26 日本電気株式会社 言語処理方法
JP3435783B2 (ja) * 1994-03-17 2003-08-11 株式会社日立製作所 複数組のデータバッファを備える記憶素子及び記憶素子を用いたデータ処理システム
US5835442A (en) * 1996-03-22 1998-11-10 Enhanced Memory Systems, Inc. EDRAM with integrated generation and control of write enable and column latch signals and method for making same
US5745389A (en) * 1996-04-04 1998-04-28 Bull Hn Information Systems Inc. System and mechanism for assigning pre-established electronic addresses to printed circuit boards
US6012137A (en) * 1997-05-30 2000-01-04 Sony Corporation Special purpose processor for digital audio/video decoding
JP4039532B2 (ja) * 1997-10-02 2008-01-30 株式会社ルネサステクノロジ 半導体集積回路装置
US6044460A (en) * 1998-01-16 2000-03-28 Lsi Logic Corporation System and method for PC-relative address generation in a microprocessor with a pipeline architecture
JP2000029778A (ja) * 1998-07-14 2000-01-28 Hitachi Ltd 記憶素子
WO2001025941A1 (en) 1999-10-06 2001-04-12 Cradle Technologies Multiprocessor computer systems with command fifo buffer at each target device
US6351806B1 (en) 1999-10-06 2002-02-26 Cradle Technologies Risc processor using register codes for expanded instruction set
US6633969B1 (en) 2000-08-11 2003-10-14 Lsi Logic Corporation Instruction translation system and method achieving single-cycle translation of variable-length MIPS16 instructions
JP3881869B2 (ja) * 2001-11-05 2007-02-14 株式会社ルネサステクノロジ 半導体記憶装置
JP2005285190A (ja) * 2004-03-29 2005-10-13 Sanyo Electric Co Ltd メモリ
US8371773B2 (en) * 2007-03-26 2013-02-12 Picker Technologies Llc Transport system for fruit and like objects
GB2548604B (en) * 2016-03-23 2018-03-21 Advanced Risc Mach Ltd Branch instruction
GB2548603B (en) * 2016-03-23 2018-09-26 Advanced Risc Mach Ltd Program loop control
US10534610B2 (en) 2016-07-20 2020-01-14 International Business Machines Corporation PC-relative addressing and transmission
CN112559441A (zh) * 2020-12-11 2021-03-26 清华大学无锡应用技术研究院 一种数字信号处理器的控制方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49128644A (ja) * 1973-04-09 1974-12-10
JPS5694589A (en) * 1979-12-27 1981-07-31 Nec Corp Memory device
JPS61110459A (ja) * 1984-11-02 1986-05-28 Nippon Telegr & Teleph Corp <Ntt> 半導体メモリ
JPS6298430A (ja) * 1985-10-24 1987-05-07 Nec Corp マイクロプロセツサ
JPH07114074B2 (ja) * 1985-12-18 1995-12-06 株式会社日立製作所 半導体記憶装置

Also Published As

Publication number Publication date
US5371711A (en) 1994-12-06
DE69410660T2 (de) 1998-12-03
EP0614191B1 (en) 1998-06-03
EP0614191A2 (en) 1994-09-07
DE69410660D1 (de) 1998-07-09
JPH06314195A (ja) 1994-11-08
EP0614191A3 (en) 1994-11-23

Similar Documents

Publication Publication Date Title
JPH0827715B2 (ja) 記憶装置
JP2625277B2 (ja) メモリアクセス装置
US6594728B1 (en) Cache memory with dual-way arrays and multiplexed parallel output
US6510510B1 (en) Digital signal processor having distributed register file
US6678815B1 (en) Apparatus and method for reducing power consumption due to cache and TLB accesses in a processor front-end
US6356990B1 (en) Set-associative cache memory having a built-in set prediction array
US20020026545A1 (en) Data processing apparatus of high speed process using memory of low speed and low power consumption
JPH11203860A (ja) 半導体記憶装置
US5467460A (en) M&amp;A for minimizing data transfer to main memory from a writeback cache during a cache miss
EP0823083A1 (en) System for performing arithmetic operations with single or double precision
US20080244169A1 (en) Apparatus for Efficient Streaming Data Access on Reconfigurable Hardware and Method for Automatic Generation Thereof
US5854943A (en) Speed efficient cache output selector circuitry based on tag compare and data organization
US5504923A (en) Parallel processing with improved instruction misalignment detection
KR0167629B1 (ko) 순차 액세스 동작을 수행하는 메모리 회로
US7702860B2 (en) Memory access apparatus
US5434990A (en) Method for serially or concurrently addressing n individually addressable memories each having an address latch and data latch
JP3997404B2 (ja) キャッシュメモリ及びその制御方法
US5751999A (en) Processor and data memory for outputting and receiving data on different buses for storage in the same location
US7363460B2 (en) Semiconductor memory device having tag block for reducing initialization time
JP2000057777A (ja) 同期型バースト半導体メモリ装置
JP3289284B2 (ja) アドレス加算器付きキャッシュメモリ装置
JPH02126321A (ja) 命令コードのデコード装置
JP3474384B2 (ja) シフタ回路及びマイクロプロセッサ
Silberman et al. A 1.6 ns access, 1 GHz two-way set-predicted and sum-indexed 64-kByte data cache
JP3822687B2 (ja) データ処理システム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960910