JPH0746507B2 - 二重ポート読出し/書込みメモリー - Google Patents

二重ポート読出し/書込みメモリー

Info

Publication number
JPH0746507B2
JPH0746507B2 JP1329411A JP32941189A JPH0746507B2 JP H0746507 B2 JPH0746507 B2 JP H0746507B2 JP 1329411 A JP1329411 A JP 1329411A JP 32941189 A JP32941189 A JP 32941189A JP H0746507 B2 JPH0746507 B2 JP H0746507B2
Authority
JP
Japan
Prior art keywords
write
data
ram
read
address
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
JP1329411A
Other languages
English (en)
Other versions
JPH02220293A (ja
Inventor
デービッド・イー・クッシング
ロメオ・クハリレー
ジアン―クオ・シェン
ミン―ツザー・ミウ
Original Assignee
ブル・エッチエヌ・インフォメーション・システムズ・インコーポレーテッド
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 ブル・エッチエヌ・インフォメーション・システムズ・インコーポレーテッド filed Critical ブル・エッチエヌ・インフォメーション・システムズ・インコーポレーテッド
Publication of JPH02220293A publication Critical patent/JPH02220293A/ja
Publication of JPH0746507B2 publication Critical patent/JPH0746507B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Static Random-Access Memory (AREA)
  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)
  • Dram (AREA)

Description

【発明の詳細な説明】 (関連出願) 1.本願と同日付で出願され、本願と同じ譲受け人に譲渡
されたMing−Tzer MiuおよびT.F.Joyceの米国特許出願
第 号「生産ラインの高性能な命令実行方法およ
び装置」 2.本願と同日付で出願され、本願と同じ譲受け人に譲渡
されたD.E.Cushing、R.P.Kelly、R.V.LedouxおよびJian
−Kuo Shenの米国特許出願第 号「多重ユニット
のレジスタ・ファイル・メモリーを自動的に更新する機
構」 3.本願と同日付で出願され、本願と同じ譲受け人に譲渡
されたJian−Kuo Shen、R.P.Kelly、R.V.Ledouxおよび
D.K.Staplin米国特許出願第 号「多重ソースか
らアドレス指定する制御ストア」 4.本願と同日付で出願され、本願と同じ譲受け人に譲渡
されたR.P.Kelly、Jian−Kuo Shen、R.V.Ledouxおよび
C.M.Nibby,Jr.の米国特許出願第 号「制御
ストアの2倍ポンプ・オペレーション」 5.本願と同日付で出願され、本願と同じ譲受け人に譲渡
されたR.P.KellyおよびR.V.Ledouxの米国特許出願第
号「一義的な命令実行開始アドレスを生成する制
御ストア・アドレス・ジェネレータ」 (技術分野) 本発明は、コンピュータのメモリーに関し、特に二重ポ
ート・メモリーに関する。
(従来技術) 多くの処理装置がスクラッチ・パッド・メモリーを共用
するため要求される。同時の要求の場合に競合の問題を
回避するためには、二重ポートの読出しおよび書込みメ
モリーを提供することが望ましい。ほとんどの場合、こ
れらのメモリーは、アクセスがマルチプレクサを介して
制御される個別の集積回路チップから構成されてきた。
このような構成は、入力の読出しおよび書込みポートか
らの独立的な読出しおよび書込みを可能にすることが判
った。
別の試みは、別のアドレスにおける1つの書込みへの遷
移中その時読出されるべく選択される1つのアドレスに
おける記憶セルの内容の重ね書きを避ける読出し/書込
み遅延要素を用いることにより1つの格納場所の同時の
読出し書込みを可能にする特殊な記憶セル構成を提供す
るものである。これは、冗長な記憶要素の使用を不要に
し得るが、特殊なメモリー・セルを必要とし、全メモリ
ー・サイクル時間の増加を結果としてもたらし得る。こ
のような従来技術の二重ポート読出しおよび二重ポート
書込みメモリーの別の短所は、LSIあるいはVLSI技術で
実現される時、大きな領域を占める多数の構成要素を通
常必要とすることである。このような形式の装置の事例
は、米国特許第4,610,004号および同第4,623,990号に開
示されている。
更に、従来技術のメモリーは、書込みが行われるべく限
定された期間を要する。従って、リード・モディファイ
・ライト(読出し変更書込み)操作サイクルの場合は、
処理装置は、書込みが生じるある時間前に安定したデー
タを提供することが要求される。書込み操作は変更操作
が完了するまではできないため、読出し変更書込み操作
サイクル全体を実施するために付加的記憶サイクルが要
求され得るという結果となる。即ち、読出し変更書込み
操作は典型的に略々同じ期間の3サイクルにわたる。従
って、変更操作が指定された時間内に行うことができな
い時は、付加的サイクルが要求される。
従って、本発明の一目的は、標準的なメモリー・セルを
用いて構成される二重ポートの読出し/書込み能力を有
するメモリーの提供にある。
本発明の別の目的は、複数のソースによる2つの異なる
ポートからの読出し/書込みアクセスが可能である最小
限の複雑さの二重読出し/書込みメモリーの提供にあ
る。
(発明の要約) 上記の諸目的は、1つのCPU作動サイクル内で読出し変
更書込み操作サイクルを実行するための手段を含む二重
ポート読出し/書込みレジスタ・ファイル・メモリーの
望ましい実施態様によって達成される。このレジスタ・
ファイル・メモリーは、1つの二重読出しポート/単一
書込みポートRAMを形成するよう構成された1つ以上の
(RAM)アドレス指定可能な多重ビット記憶場所から構
成される。更に、レジスタ・ファイル・メモリーは、2
つの書込みポートに対して指令、アドレスおよびデータ
信号を格納するため複数の対に構成された複数のクロッ
ク制御された入力レジスタを含む。異なる対をなすレジ
スタは、第1の組のマルチプレクサ回路に入力として接
続され、その出力は単一の書込みポートの書込み制御信
号、アドレスおよびデータ入力と接続している。
RAMアレイへの単一書込みポートは、各サイクルの間2
回書込みのために可能化される。こうして、前のサイク
ルの入力レジスタへクロックされたデータをレジスタ・
ファイルの格納場所へ順次書込ませる。前のサイクルに
おいてレジスタ・ファイル・メモリーの代わりに入力レ
ジスタにデータを書込むことにより、書込みに必要な時
間は最小限度に短縮される(この短縮された書込みサイ
クル部を「短縮(された)書込み部分」と称する)。こ
のため、読出し変更書込みサイクルの変更部分を長くす
ること(この延長された変更サイクル部を「拡張変更部
分」と称する)を可能にし、これによりレジスタ・ファ
イル・メモリーを用いる装置あるいはソースの性能を改
善する。この構成は、前掲の関連特許出願において開示
されたシステムの如きパイプライン・システムに使用さ
れる時特に性能の改善をもたらす。
複雑さを軽減するため、書込みはテストも可能にするあ
る予め定められたシーケンスで行われる。即ち、クロッ
ク制御された入力レジスタの両方の対と接続されたソー
スが同じ書込みアドレスを指定する場合、同じ格納場所
が容易に確認できる指定されたシーケンスで2回書込ま
れることになる。
望ましい実施態様においては、書込みデータを格納する
レジスタ対は、マルチプレクサ回路の第2の組に入力と
して接続する。マルチプレクサ回路の各々は、更に別の
入力としてレジスタ・ファイルの読出しポートの異なる
ものを持つように接続される。第2の組のマルチプレク
サ回路の各々の出力は、複数の出力ラッチの異なるもの
と接続されている。レジスタ・ファイル・メモリー、ク
ロック制御された入力レジスタ、マルチプレクサ回路お
よびラッチは、単一の集積回路チップ上に具現される。
更に、書込み中に生じる競合を検出する比較回路がチッ
プ上に含まれる。即ち、もしデータが読出しポートの1
つから読出されているものと同じ格納場所へクロック制
御された入力データ・レジスタの1つから書込まれてい
るならば、比較回路はデータをポートの出力ラッチにロ
ードするための対応する出力マルチプレクサ回路の位置
を使用可能状態にする。このため、正しいデータが常に
各読出しポートから読出されることを保証される。構成
ならびに作動方法の双方に関して本発明の特質と信じら
れる斬新な特徴については、他の目的および利点と共
に、添付図面に関して考察すれば、以降の記述から更に
よく理解されよう。しかし、各図面は例示の目的のため
に示すに過ぎず本発明の限定を意図するものではないこ
とを明瞭に理解すべきである。
(実施例) 第1図は、本発明の教示内容を含むレジスタ・ファイル
・メモリーの基本的構成を示す。第1図から判るよう
に、レジスタ・ファイル・メモリー10は、ランダム・ア
クセス・メモリー(RAM)部分10−1と、レジスタ・フ
ァイル・メモリー10の書込みポートCおよびDに対し1
対のソースにより与えられる書込み指令、アドレスおよ
びデータ信号を格納する1群即ち1組のクロック制御さ
れた入力レジスタ・ブロック10−3とを含む。
レジスタ・ファイル・メモリー10は更に、書込みポート
・レジスタをRAM部10−1の単一書込みポートの書込み
可能、書込みデータおよび書込みアドレス・ターミナル
へ接続する1組の入力マルチプレクサ回路ブロック10−
5を含む。また、多数の出力マルチプレクサ回路ブロッ
ク10−7が含まれ、その各々の入力はRAM部10−1の2
つの読出しポートRA及びRBの一方の書込みポート・デー
タ・レジスタの各々と接続している。各マルチプレクサ
回路の出力は、対をなす出力ラッチ・ブロック10−9の
1つと接続する。レジスタ・ファイル・メモリー10は、
図に示すように書込み可能ターミナルWRITE PULSEおよ
び指令レジスタのマルチプレクサ回路10−50の出力と接
続する書込み制御回路ブロック10−11を有する。このブ
ロックは、一連の書込みパルスに応答して、マルチプレ
クサ回路10−50により与えられる出力書込み指令信号の
関数として書込みパルスをWRITE PULSEターミナルに対
し与えるANDゲートを含む。
レジスタ・ファイル・メモリー10は更に、ファイル・メ
モリーの書込みポートCおよびDの書込みアドレス(WA
C、WAD)を読出しポートRAおよびRBの読出しアドレスと
比較し、ブロック10−9の読出し・ポート・ラッチにロ
ードされる出力データのソースを選択するための複数の
制御信号を生じるように接続される比較回路ブロック10
−14を含む。更に一致が存在しない時、即ち、Cおよび
Dポートのアドレス・レジスタ10−36および10−37によ
り指定される格納場所が読出されるものと同じ格納場所
でない時、RAM部10の読出しポートAおよびBにおける
データがマルチプレクサ回路10−70および10−72の第1
の場所(0)を使用可能にすることにより選択される。
しかし、ポートCまたはDのいずれか一方から書込まれ
る格納場所がポートAまたはBにより読出される格納場
所と同じである時、このポートにより書込まれるデータ
が、マルチプレクサ回路10−70および10−72に第2の
(1)あるいは第3の(2)いずれかの場所を使用可能
にすることにより選択される。比較回路により生成され
る選択信号は、ポートAにおいては、信号RDA、CA0、CA
1と対応し、またポートBにおいては、信号RDB、CB0、C
B1と対応する。
第1図の略図的に示されたRAM部10−1は、各々8ビッ
ト幅である32個の格納場所を保有する。望ましい実施態
様においては、RAM部10−1は、64の格納場所を含み、
多数の32×8ビットの単一書込みの二重メモリー部分か
ら構成されている。この部分は、第2図に示されるよう
に並列に置かれて、所要数の格納場所を提供する。32ビ
ット幅が必要な時には、32×8ビットのRAM部を3つ追
加することにより得られる。
この構成は、レジスタ・ファイル・メモリー10がVLSI形
態で実現される時信号線のレイアウトおよび追跡を容易
にする。更にまた、この構成は、異なる格納場所に格納
されたデータについてのバイト演算の実行を容易にす
る。
メモリー10の残りの要素はまた、標準的な部品で実現さ
れる。例えば、レジスタ・ブロック10−3は従来のDタ
イプのフリップフロップから構成され、ブロック10−9
のラッチは標準的な透過形ラッチから構成することがで
きる。
メモリー10は、本発明の目的においては、周知の方法で
生成されるいくつかのタイミング信号を受け取る。しか
し、これ以上の情報については、関連特許出願を参照さ
れたい。第2図から判るように、レジスタ・ブロック10
−3は、第1図に示されるような、入力ANDゲートによ
りレジスタ10−30乃至10−37の各々のクロック入力ター
ミナルへ与えられる信号CLKと共に、信号Q140に応答し
てクロックされる。マルチプレクサ10−50乃至10−54の
各々は、その状態がどの書込みポート(即ち、位置0あ
るいは1)を選択するかを決定する書込み選択信号WRIT
E SELECTを受け取る。望ましい実施態様においては、
書込みポートCおよびDが常に同じ順序、即ち、それぞ
れ信号WRITE SELECTの2進数0および2進数1の状態
により定義されるポートC、次いでポートDの順に選択
される。
上記の如く第2図は第1図のRAM部10−1を更に詳細に
示す。レジスタ・ファイル・メモリー10は、64の格納場
所のどの半分がアドレス指定されつつあるかを示すため
の別の入力を持つ書込み制御ブロック10−11の重複を除
いて実質的に同じものである。また、ブロック10−7の
マルチプレクサ10−70および10−72内部に含まれる場所
の数は1だけ増加して、両方のRAM部(即ち、RAM0およ
びRAM1)からの出力を提供する。このような変更を除い
て、両方のレジスタ・ファイル・メモリーは同じであ
る。
(動作の説明) 第3図および第4図のタイミング図およびフロー図にお
いては、第1図および第2図の本発明の望ましい実施態
様の作動について次に述べる。第3図においては、いく
つかの機械サイクル即ちCPUサイクルが示されているこ
とが判る。各波形の頭の記号A〜Hが第1図中の波形監
視点A〜Hに対応している。「CPUサイクル」と表示さ
れる唯一のサイクルの全体が示されている。図示のよう
に、CPUサイクルの各々は、読出し部分、変更部分およ
び書込み部分から成る。従来技術においては、これらは
通常3つの等しい長さのサイクルである。
本発明においては、各CPUサイクルは、標準的な期間が5
0ナノ秒である読出し部分と、88ナノ秒の拡張変更部
分、および約2ナノ秒の非常に短い短縮書込み部分とを
有する。このサイクルの読出し部分において、正規の読
出しが行われる。即ち、アドレスは、書込み選択信号WR
ITE SELECTが波形Eで示されるように2進数0である
時波形Gで示される間隔において、読出しポートAおよ
びBに対して与えられる。アドレス指定された格納場所
のデータ内容が読出され、安定状態になると同時に、波
形Eで示されるように、ラッチ・ストローブ信号OLEに
よってブロック10−9のラッチに対してストローブされ
る。信号OLEに前エッジは波形Cのタイミング信号Q70と
一致し、5ナノ秒の最小持続時間を有する。波形Cは、
図示しないタイミング手段によってクロック波形Aから
生成される。その後、読出しデータはラッチの出力へ与
えられ、波形Hで示される持続時間だけ有効な状態を維
持する。
CPUサイクルの拡張変更部分は約88ナノ秒であるが、短
縮書込みは丁度2ナノ秒の持続時間を持ち、これは入力
ソースによりブロック10−3のCおよびDポート・レジ
スタへ与えられる指令、アドレスおよびデータをクロッ
クするため必要な時間に対応する。このため、これらソ
ースのパースペクティブからのCPUサイクルの変更部分
が非常に長く現れることが可能となり、この場合書込み
は同一時間の読出し、変更書込みサイクルの場合に割り
付けられる通常の30ナノ秒とは対照的に、僅かに数ナノ
秒を要するに過ぎない。
波形Dにより示されるように、一旦サイクルの読出し部
分が過ぎると、2つの連続する書込みパルスが与えら
れ、その間2つの連続する書込み操作が行われる。波形
Eにより示されるように、信号WRITE SELECTが2進数
0である最初のパルスの間、ポートCからのデータ(位
置0)は指定された格納場所へ書込まれる。信号WRITE
SELECTが2進数1である2回目の書込みパルスの間、
ポートDからのデータは指定された格納場所へ書込まれ
る。このCPUサイクルの終りに、ソースからのデータが
波形Aの信号CLKの前エッジに応答してポートCおよび
Dのレジスタへクロックされる。
上記の動作は、特に第4図のフローチャートに関して次
のように要約される。1つのCPUサイクルに先立ち、書
込みポート・レジスタに接続されたソースにより生成さ
れる結果を表すデータが既に要求された指令およびアド
レス信号と共にブロック10−3のレジスタに対してクロ
ックされることになることが判るであろう。指令レジス
タ10−30および10−31は各々、2進数1にセットされる
と書込みが生じることを示す1つのビット位置を有す
る。書込みレジスタは各々、上位あるいは最上位ビット
位置が2バイト幅のRAMのどちら(即ち、RAM0またはRAM
1)がアドレス指定されているかを指示するために用い
られる6つのビット位置を含んでいる。即ち、このビッ
ト位置の内容は、入力の1つとしてブロック10−11aお
よび10−11bのANDゲートに対する入力の1つとして与え
られる。
第4図から判るように、サイクルの読出し部分におい
て、通常の二重読出し操作の生起が許容される。即ち、
データは、RAおよびRB読出しポートのアドレス・ターミ
ナルに対して与えられる読出しアドレスによって指定さ
れるRAMの格納場所から読出される。その後、このデー
タは格納場所から読出され、ブロック10−7のマルチプ
レクサ回路を介して与えられ、ストローブ使用可能化信
号OLEによってブロック10−9のラッチ・バッファ・レ
ジスタに対してストローブされる。ブロック10−14の比
較回路が競合状態を検出しないとすれば、2進数1に強
制された信号RDAを有し、その結果マルチプレクサ回路1
0−70および10−72の0位置の選択をもたらすことにな
る。これで、作動サイクルの読出し部分を完了する。
次に、第4図に示されるように、このサイクルの拡張変
更部分が開始される。このサイクル部分の最初の部分の
間に、最初のソース・ポートCが選択されて、信号WRIT
E SELECTによりRAM部10−1へデータを書込む。この
時、信号WRITE SELECTが、Cポート・レジスタ10−34
のデータ内容をマルチプレクサ回路10−52を介してRAM
部10−1のRAM0とRAM1の単一書込みポートの書込みデー
タ入力ターミナルへ与える。同時に、信号WRITE SELEC
Tもまた、Cポート・アドレス・レジスタ10−36の書込
みアドレス内容をマルチプレクサ回路10−54を介してRA
Mポート10−1のRAM0とRAM1の単一書込みポートの書込
みアドレス・ターミナルへ与える。その後、ポートCの
データ・レジスタに格納されたデータが、前のCPUサイ
クルの間に、マルチプレクサ回路10−50を介して与えら
れたCポート・レジスタ10−30から書込み指令信号によ
り使用可能状態にされるブロック10−11のANDゲートを
介して与えられた第3図の最初の書込みパルスに応答し
て、最初の書込みアドレスにより指定される格納場所へ
書込まれる。
この最初の書込み操作の後には、第4図に示される如き
2番目の書込み操作が続く。即ち、この第2のソース・
ポートDは、信号WRITE SELECTが2進数1の状態へ切
り換わる時に選択される。こうして、Dポート・レジス
タ10−35のデータ内容を、マルチプレクサ回路10−52を
介してRAM部10−1のRAM0とRAM1の単一書込みポートの
書込みデータ入力ターミナルへ与えさせる。また同時
に、信号WRITE SELECTは、マルチプレクサ回路10−54
をして、Dポート・アドレス・レジスタ10−37の書込み
アドレス内容をマルチプレクサ回路10−54を介してRAM
ポート10−1のRAM0とRAM1の単一書込みポートの書込み
アドレス・ターミナルへ与えさせる。
またこの時、信号WRITE SELECTは、マルチプレクサ回
路10−50をして、ANDゲートに対する入力としてDポー
ト指令レジスタ10−31の内容を出力として与えさせる。
第3図の第2の書込みパルスに応答して、前のCPUサイ
クルの間にポートDデータ・レジスタに格納されたデー
タが、RAMポート10−1の指定された第2の書込みアド
レスへ書込まれる。第4図から判るように、これでこの
サイクルの変更部分を完了する。
次に、CPUサイクルの書込み部分が実行される。このサ
イクルの部分において、タイミング信号Q140およびCLK
が、ブロック10−3のCおよびDポート・レジスタへ与
えられたデータ、アドレスおよび指令信号を対応するレ
ジスタヘロードさせる。この情報は、第4図に次のCPU
サイクルの変更サイクルの間、RAM部10−1へ書込まれ
る。これで、CPU作動サイクルを完了する。
ブロック10−14の比較回路の動作について更に詳細に考
察することにしよう。もしCPUサイクルの読出し部分の
間にブロック10−14の比較回路が競合を検出するなら
ば、これら回路はブロック10−9のラッチに正しいデー
タを格納させるブロック10−7のマルチプレクサ回路へ
適当な信号を与えるよう作動する。即ち、もし例えば、
読出しポートAと接続されたソースが、ポートCアドレ
ス・レジスタ10−36に格納された書込みアドレスと同じ
である読出しアドレスを指定するならば、ブロック10−
14の比較回路が信号CA0を2進数1に強制するように作
動する。これが、マルチプレクサ回路10−70をして、C
ポート・データ・レジスタ10−34のデータ内容をラッチ
10−90へ入力として与えさせて、要求側のソースが同じ
CPUサイクルの間にこの格納場所へ書込まれるべき最も
新しいデータを受け取ることを保証する。同様に、ブロ
ック10−14の比較回路もまた、前記と同じ書込みアドレ
スと読出しアドレスが同一であるタイプの競合の検出と
同様に、信号CA1を2進数1へ強制することによってD
ポート・データ・レジスタ10−35のデータ内容を選択す
る。比較回路の作動は、読出しポートBを介在させる検
出されたアドレス競合に対するものと同じである。
上記のことから、如何にして本発明のレジスタ・ファイ
ル・メモリーが複雑さを伴うことなく二重ポート読出し
二重ポート書込みメモリーを提供するかが判る。標準的
な二重読出し単一書込みポート・メモリーからこのレジ
スタ・ファイル・メモリーを構成することにより、著し
い空間、複雑さおよびコストの節減が達成される。更
に、各CPUサイクルの順次書込み操作が同じ予め定めた
シーケンスで実行されて、テストを容易にすると同時に
構造を簡単にする。望ましい実施態様においては、ある
従来技術の二重ポート読出し二重ポート書込みメモリー
において必要とされる如く、両方のポートからの同じ格
納場所に対する書込みの制限は一切ない。このことは、
レジスタ・ファイル・メモリーの作動を確認する迅速な
方法を提供することができる。
本発明の望ましい実施態様については、その教示内容か
ら逸脱することなく多くの変更が可能である。例えば、
本発明は、標準的な二重ポート読出し単一ポート書込み
メモリー部分から実現することができる。また、並列に
接続されたバイト幅のメモリー部分を幾つでも用いて、
独立的なバイトアドレス指定を所要のワード・サイズに
与えることも可能である。
本発明の最良の実施態様について示す記したが、頭書の
特許請求の範囲に記載した如き発明の趣旨から逸脱する
ことなくいくつかの変更が可能であり、またこの場合、
本発明の他の特徴を用いずしてある特徴を有効に用いる
ことも可能である。
【図面の簡単な説明】
第1図は本発明の原理を包含するレジスタ・ファイル・
メモリーの望ましい実施態様を示すブロック図、第2図
は第1図の更に詳細なブロック図、第3図は本発明のレ
ジスタ・ファイルのタイミングを示すタイミング図、お
よび第4図は本発明の作動の説明に用いられるフロー図
である。 10……レジスタ・ファイル・メモリー、10−1……ラン
ダム・アクセス・メモリー(RAM)部分、10−3……入
力クロック制御レジスタ・ブロック、10−7……出力マ
ルチプレクサ回路ブロック、10−9……出力ラッチ・ブ
ロック、10−11……書込み制御ブロック、10−14……比
較回路ブロック、10−30……指令レジスタ、10−31……
Dポート指令レジスタ、10−35……Dポート・レジス
タ、10−36……アドレス・レジスタ、10−37……Dポー
ト・アドレス・レジスタ、10−50、10−52、10−54、10
−70、10−72……マルチプレクサ回路。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジアン―クオ・シェン アメリカ合衆国マサチューセッツ州02178, ベルモント,アムハースト・ロード 31 (72)発明者 ミン―ツザー・ミウ アメリカ合衆国マサチューセッツ州01824, チェルムスフォード,チェスナット・ヒ ル・ロード 5 (56)参考文献 特開 昭57−3155(JP,A) 特開 昭55−108068(JP,A)

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】読出し/書込みメモリー・ユニット(10)
    であって、 複数のアドレス指定可能な格納場所を有するランダム・
    アクセス・メモリー(RAM)(10−1)を設け、該RAMは
    書込みデータ、書込みアドレスおよび書込み可能化入力
    ターミナルを含む書込みポートを有し、 1対の信号源から受け取ったデータ、アドレスおよび指
    令を格納する入力レジスタの組(10−3)と、 前記データ、アドレスおよび指令を受け取るために前記
    レジスタの組と接続され、前記データ、アドレスおよび
    指令を前記RAMのデータ書込み、アドレス書込みおよび
    書込み可能化ターミナルの対応するものに供給するため
    に接続されているマルチプレクサ(10−5)と、およ
    び、 各動作サイクル中にタイミング信号を発生するために、
    前記マルチプレクサおよびRAMに接続されたタイミング
    手段を設け、前記タイミング信号は前記マルチプレクサ
    に供給される2値書込み選択信号(WRITE SELECT)
    と、前記RAMの書込み可能化ターミナルに供給される第
    1と第2の逐次的な書込みパルスを有する書込み制御信
    号(WRITE)とを含み、前記RAMは前記第1の書込みパル
    スにより付勢されて、前記書込み選択信号がその一方の
    状態にある時、前記マルチプレクサにより与えられる対
    応する指令に応答して関連するアドレスにより指定され
    た前記複数の場所の1つに前記信号源の1つの前記デー
    タを書込み、また前記RAMは、前記第2の書込みパルス
    信号により付勢されて、前記書込み選択信号がそのもう
    1つの状態にある時、前記マルチプレクサにより与えら
    れる対応する指令に応答して関連するアドレスにより指
    定された前記場所の1つに前記信号源の別の1つの前記
    データを書込むことを特徴とするメモリー。
  2. 【請求項2】各作動サイクルが、読出し部分と、拡張変
    更部分と、短縮書込み部分とを含み、前記第1および第
    2の一連の書込みパルス信号が、前記各作動サイクルの
    前記拡張変更部分の間に生じることを特徴とする請求項
    1記載のメモリー・ユニット。
  3. 【請求項3】更に、1対の入力ターミナルと1つの出力
    ターミナルとを有するANDゲート(10−11)を含み、該
    入力ターミナルの1つは、前記マルチプレクサと接続さ
    れて、前記指令を受け取り、前記入力ターミナルの他の
    1つは、前記書込み制御信号を受け取るように前記タイ
    ミング手段に接続され、前記出力ターミナルは前記書込
    み可能化入力ターミナルと接続され、前記ANDゲート
    は、各作動サイクルの間に、前記書込み選択信号に応答
    して前記マルチプレクサにより与えられる前記指令の関
    数として、前記書込み制御信号の前記第1および第2の
    書込みパルスを連続的に与えることを特徴とする請求項
    1記載のメモリー・ユニット。
  4. 【請求項4】更に、前記RAMが、該RAMに与えられる読出
    しアドレスに応答して前記RAMの格納場所からデータを
    アクセスする1対の読出しポートを有し、 前記RAMの格納場所から読出された前記データを一時的
    に格納する出力ラッチ(10−9)と、 前記読出しポートからのデータを受け取るため前記ラッ
    チと前記RAMとの間に接続され、前記書込みデータを受
    け取るため前記レジスタの組に接続されたデータ・マル
    チプレクサ(10−7)と、 前記レジスタの組と接続されて前記書込みアドレスおよ
    び指令を受け取りかつ前記読出しアドレス(RA、RB)を
    受け取る複数の入力ターミナル(WAC、WAD、CWC、DWC)
    を備えた比較回路(10−14)とを設け、該比較回路は、
    前記データ・マルチプレクサと接続された複数の出力タ
    ーミナル(RDA、RDB、CA0〜CB1)を有し、該比較回路
    は、前記組の出力ターミナルにおいて信号を生じる前記
    読出しアドレスおよび前記書込みアドレスのいずれかの
    間の一致の検出と同時に、前記データ・マルチプレクサ
    をして前記読出しポートからの前記データの代わりに前
    記書込みデータを前記ラッチへ転送させて、各読出しポ
    ートのアクセスに応答して最も後のデータが前記メモリ
    ー・ユニットにより与えらえることを保証することを特
    徴とする請求項2記載のメモリー・ユニット。
  5. 【請求項5】前記比較回路が、 WAC=RAおよびCWC=1、あるいは WAD=RAおよびDWC=1、あるいは WAC=RBおよびCWC=1、あるいは WAD=RBおよびDWC=1 である時、前記読出し/書込みアドレス間で検出された
    一致に対する信号を生成し、 但し、WAC、WADおよびCWC、DWCはそれぞれ前記レジスタ
    の組に格納された前記書込みアドレスおよび指令と対応
    し、またRAおよびPBは前記読出しアドレスに対応するこ
    とを特徴とする請求項4記載のメモリー・ユニット。
  6. 【請求項6】前記書込み選択信号が前記一方および他の
    状態にある時前記マレチプレクサにより与えらえる前記
    アドレスが、各作動サイクルの間同じ格納場所へ異なる
    データを書込むことを可能にするよう該同じ格納場所を
    指定して、メモリーのテストを容易にすることを特徴と
    する請求項1記載のメモリー。
  7. 【請求項7】各作動サイクルの間前記書込み選択信号が
    同じ一連の状態を反復して、前記マルチプレクサをして
    前記書込みデータ、書込みアドレスおよび指令を常に同
    じ順序で選択されることを特徴とする請求項1記載のメ
    モリー・ユニット。
  8. 【請求項8】前記タイミング信号が、各作動サイクルの
    前記短縮書込み部分の間に生じるクロック信号を含み、
    前記タイミング手段が、次の作動サイクルの間に前記RA
    Mへ前記書込みデータを書込むために前記書込みデー
    タ、書込みアドレスおよび指令を格納するため前記レジ
    スタの組へ前記クロック信号を与えることを特徴とする
    請求項2記載のメモリー・ユニット。
  9. 【請求項9】前記RAMが複数のバイト幅のRAM部分を含
    み、各部分が予め定めた数の格納場所を有し、該部分は
    並列に配置されて所要のビット幅の所要数の場所を提供
    することを特徴とする請求項2記載のメモリー・ユニッ
    ト。
  10. 【請求項10】更に、前記RAMが、該RAMに与えられた読
    出しアドレスに応答して前記RAMの格納場所からデータ
    をアクセスする1対の読出しポートを有し、 前記RAMの格納場所から読出された前記データを一時的
    に格納する出力ラッチ(10−9)と、 前記ラッチと前記RAMとの間に接続されたデータ・マレ
    チプレクサ(10−7)とを設け、 前記タイミング信号が更に出力ラッチ使用可能化パルス
    列(OLE)を含み、前記タイミング手段が、各作動サイ
    クルの前記読出し部分の間に前記ラッチへ前記出力ラッ
    チ使用可能化パルス列を与えて前記データ・マルチプレ
    クサから受け取る前記データを一時的に格納させること
    を特徴とする請求項1記載のメモリー・ユニット。
JP1329411A 1988-12-19 1989-12-19 二重ポート読出し/書込みメモリー Expired - Lifetime JPH0746507B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/286,552 US4933909A (en) 1988-12-19 1988-12-19 Dual read/write register file memory
US286552 1988-12-19

Publications (2)

Publication Number Publication Date
JPH02220293A JPH02220293A (ja) 1990-09-03
JPH0746507B2 true JPH0746507B2 (ja) 1995-05-17

Family

ID=23099119

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1329411A Expired - Lifetime JPH0746507B2 (ja) 1988-12-19 1989-12-19 二重ポート読出し/書込みメモリー

Country Status (9)

Country Link
US (1) US4933909A (ja)
EP (1) EP0374829B1 (ja)
JP (1) JPH0746507B2 (ja)
KR (1) KR930004426B1 (ja)
AU (1) AU626363B2 (ja)
CA (1) CA2005953A1 (ja)
DE (1) DE68922975T2 (ja)
DK (1) DK648089A (ja)
YU (1) YU240389A (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0770213B2 (ja) * 1988-10-03 1995-07-31 三菱電機株式会社 半導体メモリ装置
US5107462A (en) * 1989-02-03 1992-04-21 Digital Equipment Corporation Self timed register file having bit storage cells with emitter-coupled output selectors for common bits sharing a common pull-up resistor and a common current sink
US5261064A (en) * 1989-10-03 1993-11-09 Advanced Micro Devices, Inc. Burst access memory
US5115411A (en) * 1990-06-06 1992-05-19 Ncr Corporation Dual port memory system
JP2573395B2 (ja) * 1990-06-11 1997-01-22 株式会社東芝 デュアルポートメモリ装置
JPH05503390A (ja) * 1990-10-26 1993-06-03 マイクロン・テクノロジー・インコーポレイテッド 同時読み書き機能およびクロック歪みに対する耐性を有する高速5ポートレジスタファイル
JPH04184788A (ja) * 1990-11-20 1992-07-01 Fujitsu Ltd 半導体記憶装置
US5249283A (en) * 1990-12-24 1993-09-28 Ncr Corporation Cache coherency method and apparatus for a multiple path interconnection network
JP3169639B2 (ja) * 1991-06-27 2001-05-28 日本電気株式会社 半導体記憶装置
US5257236A (en) * 1991-08-01 1993-10-26 Silicon Engineering, Inc. Static RAM
US5321809A (en) * 1992-09-11 1994-06-14 International Business Machines Corporation Categorized pixel variable buffering and processing for a graphics system
US5315178A (en) * 1993-08-27 1994-05-24 Hewlett-Packard Company IC which can be used as a programmable logic cell array or as a register file
US5581720A (en) * 1994-04-15 1996-12-03 David Sarnoff Research Center, Inc. Apparatus and method for updating information in a microcode instruction
US5751999A (en) * 1994-06-23 1998-05-12 Matsushita Electric Industrial Co., Ltd. Processor and data memory for outputting and receiving data on different buses for storage in the same location
US5745732A (en) * 1994-11-15 1998-04-28 Cherukuri; Ravikrishna V. Computer system including system controller with a write buffer and plural read buffers for decoupled busses
US5566123A (en) 1995-02-10 1996-10-15 Xilinx, Inc. Synchronous dual port ram
US5813037A (en) * 1995-03-30 1998-09-22 Intel Corporation Multi-port register file for a reservation station including a pair of interleaved storage cells with shared write data lines and a capacitance isolation mechanism
US5713039A (en) * 1995-12-05 1998-01-27 Advanced Micro Devices, Inc. Register file having multiple register storages for storing data from multiple data streams
KR100190373B1 (ko) * 1996-02-08 1999-06-01 김영환 리드 패스를 위한 고속 동기식 메모리 장치
US5802579A (en) * 1996-05-16 1998-09-01 Hughes Electronics Corporation System and method for simultaneously reading and writing data in a random access memory
US5987578A (en) * 1996-07-01 1999-11-16 Sun Microsystems, Inc. Pipelining to improve the interface of memory devices
US5923608A (en) * 1997-10-31 1999-07-13 Vlsi Technology, Inc. Scalable N-port memory structures
US6360307B1 (en) 1998-06-18 2002-03-19 Cypress Semiconductor Corporation Circuit architecture and method of writing data to a memory
US7400548B2 (en) * 2005-02-09 2008-07-15 International Business Machines Corporation Method for providing multiple reads/writes using a 2read/2write register file array
US7962698B1 (en) 2005-10-03 2011-06-14 Cypress Semiconductor Corporation Deterministic collision detection
JP4201011B2 (ja) * 2006-03-27 2008-12-24 トヨタ自動車株式会社 蓄熱装置
CN102110464B (zh) * 2009-12-26 2015-06-10 上海芯豪微电子有限公司 宽带读写存储器装置
US8862835B2 (en) * 2011-06-14 2014-10-14 Texas Instruments Incorporated Multi-port register file with an input pipelined architecture and asynchronous read data forwarding
US8862836B2 (en) * 2011-06-14 2014-10-14 Texas Instruments Incorporated Multi-port register file with an input pipelined architecture with asynchronous reads and localized feedback
US10747466B2 (en) * 2018-12-28 2020-08-18 Texas Instruments Incorporated Save-restore in integrated circuits

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4287575A (en) * 1979-12-28 1981-09-01 International Business Machines Corporation High speed high density, multi-port random access memory cell
JPS573155A (en) * 1980-06-05 1982-01-08 Ricoh Co Ltd Input and output control circuit for memory device
US4628489A (en) * 1983-10-03 1986-12-09 Honeywell Information Systems Inc. Dual address RAM
US4610004A (en) * 1984-10-10 1986-09-02 Advanced Micro Devices, Inc. Expandable four-port register file
US4623990A (en) * 1984-10-31 1986-11-18 Advanced Micro Devices, Inc. Dual-port read/write RAM with single array
US4811296A (en) * 1987-05-15 1989-03-07 Analog Devices, Inc. Multi-port register file with flow-through of data

Also Published As

Publication number Publication date
EP0374829B1 (en) 1995-06-07
US4933909A (en) 1990-06-12
DK648089D0 (da) 1989-12-19
DE68922975T2 (de) 1996-03-21
DE68922975D1 (de) 1995-07-13
KR900010561A (ko) 1990-07-07
CA2005953A1 (en) 1990-06-19
DK648089A (da) 1990-06-20
YU240389A (sh) 1994-01-20
AU4692089A (en) 1990-06-21
EP0374829A2 (en) 1990-06-27
EP0374829A3 (en) 1991-05-29
JPH02220293A (ja) 1990-09-03
AU626363B2 (en) 1992-07-30
KR930004426B1 (ko) 1993-05-27

Similar Documents

Publication Publication Date Title
JPH0746507B2 (ja) 二重ポート読出し/書込みメモリー
US7302545B2 (en) Method and system for fast data access using a memory array
US6519675B1 (en) Two step memory device command buffer apparatus and method and memory devices and computer systems using same
JP2740063B2 (ja) 半導体記憶装置
US5732017A (en) Combined program and data nonvolatile memory with concurrent program-read/data write capability
US6385709B2 (en) Multiplexed data transfer arrangement including a multi-phase signal generator for latency control
US5864505A (en) Random access memory with plural simultaneously operable banks
US5893135A (en) Flash memory array with two interfaces for responding to RAS and CAS signals
US4796222A (en) Memory structure for nonsequential storage of block bytes in multi-bit chips
JPH0845277A (ja) 半導体記憶装置
US6370627B1 (en) Memory device command buffer apparatus and method and memory devices and computer systems using same
JPS5953630B2 (ja) メモリ−のアドレス指定装置
KR100317542B1 (ko) 반도체메모리장치
US4992979A (en) Memory structure for nonsequential storage of block bytes in multi bit chips
WO1991007754A1 (en) Read-while-write-memory
JP2696864B2 (ja) メモリ装置
US6751130B2 (en) Integrated memory device, method of operating an integrated memory, and memory system having a plurality of integrated memories
JP3201423B2 (ja) メモリ試験装置
KR100480653B1 (ko) 프로그램판독/데이터기록을동시에수행하는능력을갖는결합된프로그램및데이터비휘발성메모리
JPH05189296A (ja) 単一のビットメモリに対する同時書き込みアクセス装置
JP3285037B2 (ja) メモリ試験装置
JPH0588964A (ja) 固有バースト検知を有するデータ格納システム
JPH05210566A (ja) メモリ装置及びメモリのデータ読取り/書込み方法
JPH05334198A (ja) メモリ制御装置
JPH0628204A (ja) レジスタ保護回路