JP3863280B2 - メモリ装置、sramセル、およびデータ転送方法 - Google Patents
メモリ装置、sramセル、およびデータ転送方法 Download PDFInfo
- Publication number
- JP3863280B2 JP3863280B2 JP05352898A JP5352898A JP3863280B2 JP 3863280 B2 JP3863280 B2 JP 3863280B2 JP 05352898 A JP05352898 A JP 05352898A JP 5352898 A JP5352898 A JP 5352898A JP 3863280 B2 JP3863280 B2 JP 3863280B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- cell
- ports
- sram
- port
- 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 - Fee Related
Links
Images
Landscapes
- Static Random-Access Memory (AREA)
- Semiconductor Memories (AREA)
- Dram (AREA)
Description
【発明の分野】
この出願は、メモリ装置に関し、より特定的には、ダイナミックランダムアクセスメモリ(DRAM)と、3つの入出力(IO)ポートを持つセルを有するスタティックランダムアクセスメモリ(SRAM)とを組込む、マルチポートランダムアクセスメモリ(MPRAM)に関する。
【0002】
【背景技術】
コンピュータグラフィックスシステムを開発するには、3Dグラフィックスデータ等の大量のデータを記憶することのできる、高速メモリが必要となる。そのようなメモリの1つに、より高速なSRAMキャッシュメモリを利用することによってDRAMメインメモリ性能を改良するように開発された、最も共通にアクセスされるデータを記憶するための、キャッシュ式のメモリがある。たとえば、米国特許番号第5,566,318号は、シングルチップ上でSRAMキャッシュメモリをDRAMと統合する、強化されたDRAMを開示する。SRAMキャッシュとDRAMメモリアレイとの間には、センスアンプと列書込選択レジスタとが結合される。列デコーダは、SRAMキャッシュと関連して、SRAMの所望の列へのアクセスを提供する。行デコーダはDRAMメモリアレイと関連して、DRAMの特定の行へのアクセスを可能にする。入出力制御およびデータラッチは、SRAMからデータを受取って、データ入出力線を介してデータ出力を提供する。DRAMメモリアレイからアクセスされる現時点のデータの行は、SRAMキャッシュメモリ内に保持される。キャッシュ「ミス」が検出された場合には、キャッシュメモリ全体がDRAMメモリアレイから、DRAMからキャッシュメモリへのバスを通じて、再び満たされる。
【0003】
RAMの速度および性能を改良するために、2つの別個の入出力ポートがメモリアレイにアクセスできるようにする、デュアルポートRAMが開発されてきている。しかしながら、デュアルポートRAMは、データの入力および出力を有効に制御することができない。なぜなら、ポート同士を交換できないためである。たとえば、データトラフィックは、それらポートのうち一方に負荷がかかりすぎて他方の負荷が不足する場合にも、ポート間で再配分することができない。
【0004】
したがって、交換可能なポートを有するマルチポートRAMチップを提供することが所望される。
【0005】
さらに、デュアルポートRAMはグラフィックスコントローラ等の外部装置に対して、メモリアレイへの書込または読出アクセスのうちどちらか一方のみしか一度に提供できない。たとえば、一方ポートがメモリアレイに対してデータを書込むのに使用されている間に、他方ポートがメモリアレイからデータを読出すことはできない。
【0006】
異なるポートからの読出アクセスおよび書込アクセスを同時に行なうことが可能な、マルチポートRAMを提供することが望まれる。
【0007】
RAM内のデータ読出および書込の速度は、RAMが活性化される瞬間と、有効なデータが入力または出力に現われる瞬間との間のスイッチング遅延によって制限される。たとえば、DRAM読出動作は、行アドレスストローブ/RASおよび列アドレスストローブ/CASをローレベルに切換えることによって起動され得る。たとえば、データ読出における遅延は、/RAS信号がローに遷移する瞬間と、有効なデータが出力に現われる瞬間との間の遅延に対応する、RASの待ち時間によって決定される。
【0008】
DRAMの動作が起動された後にSRAMの書込または読出動作を続行するために、DRAMとSRAMとの並行の動作を提供することが所望される。これは、RASの待ち時間によって生じるRAMのスイッチング遅延を排除することによって、RAM内のデータ転送の帯域幅を増すことができるであろう。
【0009】
SRAMが外部IOポートおよびDRAMからのアクセスを支持できるようにするためには、MPRAMの外部IOポートおよびDRAMに結合された多数のIOポートを有する、SRAMセルを提供することが所望される。
【0010】
【発明の開示】
したがって、この発明の1つの利点は、交換可能な入出力ポートを有するマルチポートメモリチップを提供することである。
【0011】
この発明の別の利点は、異なるポートからの読出および書込アクセスが同時に行なわれることを可能にする、マルチポートRAMを提供することである。
【0012】
この発明のさらなる利点は、DRAMの動作とSRAMの動作とを並行に実行できるようにする、マルチポートRAMを提供することである。
【0013】
この発明の別の利点は、MPRAMの外部IOポートおよびDRAMに結合された多数のIOポートを有するセルから構成されるSRAMを有する、マルチポートRAMを提供することである。
【0014】
この発明の上記および他の利点は、シングルチップ上に配されて第1および第2の外部入出力ポートを有するメモリ装置を提供することによって、少なくともいくぶん達成される。第1のメモリは、データを記憶するよう構成され得る。第1のメモリよりも小さい記憶容量を有する第2のメモリは、入出力ポートに結合されて、それらポートから出力されるべきデータを記憶し、かつ、ポートから入力されるデータを受取る。第2のメモリは、第1および第2の外部入出力ポートにそれぞれ結合されて、それらが記憶セルへのデータの書込および記憶セルからのデータの読出をできるようにするための第1および第2のポートと、第1のメモリに結合されて、それが記憶セルへのデータの書込および記憶セルからのデータの読出をできるようにするための第3のポートとを有する、記憶セルを含む。たとえば、第2のメモリは、複数のラインに配された、トリプルポートSRAM記憶セルを含み得る。
【0015】
この発明の第1の局面に従えば、第1、第2および第3のポートの各々は、記憶セル内に書込まれるべきデータを受取るための入力データ線と、記憶セルから読出されるデータを転送するための出力データ線と、記憶セルに入力されるデータを制御するための書込制御線と、記憶セルから出力されるデータを制御するための読出制御線とを含み得る。
【0016】
この発明のさらなる局面に従えば、記憶セルは、入力データ線に応答してデータをラッチするためのラッチ回路を有し得る。第1、第2および第3の入力パスゲートは、対応する書込制御線内の信号によって活性化されて、データが対応するポートの入力データ線を介してラッチ回路に渡されるようにする。第1、第2および第3の出力パスゲートは、対応する読出制御線内の信号によって活性化されて、データが対応する出力データ線を介してラッチ回路から転送されるようにする。
【0017】
この発明の別の局面に従えば、2以上の読出制御信号が同時に出力パスゲートに供給されて、記憶セルへの多重読出アクセスが同時に提供され得る。
【0018】
この発明のさらなる局面に従えば、第3のポートは、外部入出力ポートから記憶セルへのアクセスと並行に行なわれる、第1のメモリと記憶セルとの間のデータ転送を支持できる。
【0019】
この発明の別の局面に従えば、第1のポートは、第2のポートを介して行なわれる記憶セルからのデータ読出と並行して、記憶セルへのデータ書込を支持できる。
【0020】
この発明の方法に従えば、SRAMとDRAMとを有するマルチポートRAM内でデータを転送するために、以下のステップが実行される。すなわち:
SRAM記憶セル内に、その第1および第2のデータポートのうち一方を介してデータエレメントを書込むステップと、
そのデータエレメントを、SRAM記憶セルから、その第3のデータポートを介してDRAMに読出すステップとを含む。
【0021】
さらに、SRAM記憶セル内のデータを修正するために、以下のステップが実行され得る。すなわち:
SRAM記憶セルから第1のデータポートを介してデータを読出すステップと、
そのデータを修正するステップと、
修正されたデータを第2のデータポートを介してSRAM記憶セル内に書込むステップとを含む。
【0022】
この発明のこれらおよび他の目的ならびに利点は、以下の詳細な説明から当業者には容易に明らかとなろう。詳細な説明には、この発明の好ましい実施例のみを示しかつ説明しており、この発明を実現するのに考えられるベストモードを単に例示しているにすぎない。理解されるように、この発明は他のおよび異なる実施例が可能であり、そのいくつかの詳細は、すべてこの発明から離れることのない、種々の明らかな観点から修正が可能である。したがって、ここに提示する図面および説明は、例示のためのものと見なされるべきであって、限定を加えるものではないと考えられたい。
【0023】
【この発明を実行するためのベストモード】
この発明は、メモリ装置分野の全般に適用が可能であるが、この発明を実行するためのベストモードは、一つには、図1に示すマルチポートRAM(MPRAM)10の実現に基づく。シングルチップ上に配されるMPRAM10は、DRAM12を含み、DRAM12は、各々が4メガビットの、個別にアドレス可能な4つのメモリバンクに分割される。各バンクは512行×32列×256ビットで構成されたメモリアレイを含む。後により詳細に説明するように、単一の256ビットグローバル入出力(IO)バス14が、DRAM12の4つのバンクすべてによって共有され、DRAM12をSRAM16に接続する。
【0024】
4キロビットSRAM16は、16ライン×16ワード×16ビットとして構成され得る。DRAM12とSRAM16との間の各々の256ビット転送は、SRAM16内の16ラインのうち1ラインを置換するかまたは更新する。
【0025】
MPRAM10は、2つの同一でありかつ独立した、16ビットIOポートAおよびBを有する。ポートAおよびBの各々は、SRAM16の各セルに対して読出アクセスおよび書込アクセスを提供する。IOデータピン18および20はそれぞれ、ポートAおよびBに接続されて、16ビットデータDQAおよびDQBの入力および出力を提供する。
【0026】
ポートAおよびBのためのSRAM制御信号SCAおよびSCBはそれぞれ、ポートA制御回路22およびポートB制御回路24を介して供給されて、データ読出または書込、およびバースト終了等のSRAMの動作を規定する。ポートAおよびBのためのライトイネーブルコマンド/WEAおよび/WEBは、それぞれ、ポート制御回路22および24を介して提供されて、SRAMの書込動作を復号化する。さらに、ポート制御回路22および24は、ライトパービット動作モードを可能にするために、また、バーストを終了させるために、特別機能コマンドSFAおよびSFBをそれぞれ受取ることも可能である。
【0027】
マスタクロック信号CLKが与えられるクロック発生器26は、MPRAM動作のための内部クロックを提供する。MPRAMのすべての入力信号は、マスタクロックCLKの立上がり端縁を基準とする。マスタクロックイネーブル信号CKEはクロック発生器26に供給されて、内部クロック発生をイネーブルする。チップ選択信号/SDおよび/SSは、それぞれ、DRAM12およびSRAM16にチップ選択機能を提供する。
【0028】
ポート制御回路22および24、ならびにクロック発生器26は、SRAM16に対する書込および読出アクセスを制御するSRAM制御回路28に結合される。データ書込またはデータ読出のための、IOデータピン18および20の各々とSRAM16との間のデータ転送経路は、2ステージパイプラインとして構成される。
【0029】
SRAM16へのデータ書込のために、ポートAおよびBのためにそれぞれ書込コマンドWAおよびWBが、第1のクロックサイクル時にSRAM制御回路28によって発せられ得る。書込まれるべきデータは、第2のクロックサイクル時に供給される。SRAM16のアドレスされるラインおよびワードは、ポート制御回路22および24に供給される、それぞれポートAおよびBのための8ビットアドレス信号ADAおよびADBによって判定される。たとえば、アドレスされるラインは、アドレス信号ADAおよびADBの上位4ビットによって規定され、アドレスされる16ビットのワードは、アドレス信号ADAおよびADBの下位4ビットによって決定され得る。
【0030】
SRAM16からのデータ読出のために、読出コマンドRAおよびRBが、第1のクロックサイクル時にSRAM制御回路28によって発せられ得る。データは、第2のクロックの立上がり端縁においてアクセスされて、第3のクロックサイクル時に有効にされる。書込動作と同様、SRAM16のアドレスされるラインおよびワードは、ポートAおよびBのそれぞれのためのアドレス信号ADAおよびADBによって判定される。たとえば、アドレスされるラインは、アドレス信号ADAおよびADBの上位4ビットによって規定され、アドレスされる16ビットのワードは、アドレス信号ADAおよびADBの下位4ビットによって決定され得る。
【0031】
下により詳細に説明するように、ポートAおよびBは独立しており、SRAM16内のいかなるロケーションに対しても、同時に、データの読出および書込を提供できる。しかしながら、ユーザは、両方のポートから同時に同じSRAMセルに書込むことができないようにされている。IOバッファ30および32がそれぞれ、ポートAおよびBに結合されて、読出動作および書込動作中にデータをバッファする。
【0032】
IOバッファ30および32にそれぞれ接続されたライトパービットマスクレジスタ34および36は、ポートAおよびBからのマスクされた書込動作を行なうのに使用される。SRAM制御回路は、ポートAおよびBに対してそれぞれマスクされた書込コマンドMWAおよびMWBを発して、SRAM16から読出されるかまたはSRAM16に書込まれるDQAデータおよびDQBデータをマスクする。ピン38および40はそれぞれ、ポートAおよびBに対して2ビットのマスク制御データDQMAおよびDQMBを供給する。マスク制御データDQMAおよびDQMBのいずれかのビットがハイにされると、それぞれ、読出されるかまたは書込まれるDQAデータおよびDQBデータがマスクされる。たとえば、マスク制御データDQMAおよびDQMBの上位ビットがそれぞれ、DQAおよびDQBデータの上位バイトを制御する。マスク制御データDQMAおよびDQMBの下位ビットがそれぞれ、DQAデータおよびDQBデータの下位バイトを制御し得る。ロードマスクレジスタコマンドLMRAおよびLMRBがそれぞれポートAおよびBのためにSRAM制御回路28によって発せられて、ライトパービットレジスタ34および36をロードすることが可能である。
【0033】
MPRAM10は、SRAM16とDRAM12とが並行に動作することを可能にする。DRAM制御回路42は、制御信号/RASおよび/CASによって規定されるDRAM制御コマンドを形成する。2ビットのバンクアドレスコマンドBAは、4つのDRAMバンクのうち1つを選択する。11ビットのアドレスコマンドADDは、DRAMの行および列アドレス、DRAMの転送動作、および、SRAM16内のラインのうち、データがそのラインからDRAM12に転送され得るライン、または、データがそのラインにDRAM12から転送され得るライン、を選択する。たとえば、ADDコマンドの下位9ビットがDRAM行アドレスを選択し、下位5ビットがDRAM列アドレスを選択し、ADDコマンドの2ビットがDRAM転送動作を規定するのに使用され得る。また、上位4ビットが、SRAM内の16ラインのうち1ラインを選択することが可能である。
【0034】
DRAM制御回路42は、DRAM読出転送コマンドDRTを形成して、データの32ブロックのうちADDコマンドによって指定された1ブロックを、SRAM16内の16ラインのうち1ラインへと転送させる。DRAM書込転送コマンドDWTもまたDRAM制御回路42によって形成されて、SRAMの16ラインのうちADDコマンドによって指定された1ラインから、DRAM12内の32ブロックのうち1ブロックに、データが転送される。
【0035】
データ転送レジスタ44は、DRAM12とSRAM16との間に配されて、DRAM12とSRAM16との間のデータ転送を支持する。DRAM書込転送をマスクするのに、32ビットのバイトライトイネーブルマスクレジスタ46が使用される。このレジスタ46は、ロードマスクレジスタコマンドLMRが発せられると、ポートAまたはポートBのいずれかからロードされ得る。レジスタ46内の各ビットは、256ビットのグローバルIOバス14の1バイトをマスクする。バイトライトイネーブルマスクレジスタ46と、ライトパービットマスクレジスタ34および36とは、それぞれ、DRAM12およびSRAM16への書込中に、バイパスされ得る。
【0036】
MPRAM10は、プログラマブルバーストモードを有する。このモードは、ポートAおよびBからSRAM16に書込まれるデータのバーストのために、または、SRAM16からポートAおよびBに読出されるデータのバーストのために、ユーザが1、2、4および8のバースト長を選択できるようにする。順次またはインタリーブバーストが選択され得る。DRAM制御回路42によって発せられるセットモードレジスタコマンドSMRは、内部モードレジスタ内にバーストの長さおよび種類をプログラムできるようにする。モードレジスタ内にプログラムされるモードレジスタコード(MRC)は、ADDコマンドを使用して入力され得る。MRCは、それが次のSMRコマンドによってオーバライトされるまで、または、MPRAM10に電力が供給されなくなるまで、モードレジスタ内に記憶される。SMRコマンドは、DRAM12およびSRAM16がアイドル状態にあるときに発せられ得る。バースト終了コマンドBTAおよびBTBは、SRAM制御回路28によって発せられて、ポートAおよびBからのまたはそれらへのバーストシーケンスをそれぞれ、終了させることができる。
【0037】
図2は、SRAM16、DRAM12、外部ポートAおよびB、ポートA制御回路22、ポートB制御回路24、およびDRAM制御回路42の間の相互接続を概略的に示す。SRAM16は、各ラインが256個の記憶セルを有する、16ラインで構成され得る。3つのIOポートA、B、およびDは、SRAM16と、外部ポートAおよびBと、DRAM12との間のデータ転送を支持する。SRAMポートA、B、およびDの各々は、IOデータバスおよびコントロールバスを有する。
【0038】
SRAMポートAおよびBは、外部メモリコントローラが外部ポートAおよびBをそれぞれ介してSRAM16にアクセスできるようにする。ポートA入出力および制御回路162とポートB入出力および制御回路164とは、SRAMポートAおよびBのための、データの転送と、制御およびアドレス信号とを支持する。たとえば、16ビットのデータDQAおよびDQBは、それぞれ、外部ポートAおよびBのIOデータピン18および20と、SRAMポートAおよびBとの間で転送される。SRAMポートAおよびBを介した外部ポートAおよびBからの読出および書込SRAMアクセスは、ポートA制御回路22およびポートB制御回路24にそれぞれ供給される、制御およびアドレス信号によって制御される。
【0039】
SRAMポートDは、SRAM16とDRAM12との間のデータ転送を支持する。たとえば、SRAMポートDは、グローバルIOバス14に結合され得る。DRAM制御回路42は、ポートDを介する読出および書込SRAMアクセスを制御する。グローバルIOバス14を介したSRAM16とDRAM12との間のデータ転送は、この出願と同時に出願されて、ここに引用により援用される、「共有グローバルバスを有するマルチポートRAM(“MULTI-PORT RAM HAVING SHARED GLOBAL BUS ”)」と題された、本出願人の同時係属中の出願SN
内により詳細に開示されている。
【0040】
図3を参照して、SRAM16の各記憶セル160は、3つのポートA、B、およびDを有し、その各々は、データIO線および制御線を備える。ポートA、B、およびDのデータIO線は、それぞれ、SRAM16のA、B、およびDポートのデータIOバスに結合される。ポートA、B、およびDの制御線は、それぞれ、SRAMポートA、B、およびDのコントロールバスに接続される。
【0041】
図4に示すように、SRAMセル160の各ポートは、読出および書込データ経路と、読出および書込アドレス制御線とを有する。書込アドレス線WYA、WYB、およびWYDは、それぞれ、セルポートA、B、およびDに対して書込アドレス信号を提供する。読出アドレス線RXA、RXB、およびRXDは、それぞれ、セルポートA、B、およびDに対して読出アドレス信号を提供するのに使用される。入力データ線WLA、WLB、およびWLDは、外部ポートAおよびB、ならびにDRAM12からのデータを、セルポートA、B、およびDを介してSRAMセル160内に書込むことを可能にする。出力データ線RLA、RLB、およびRLDは、セルポートA、B、およびDを介した、セル160から外部ポートAおよびBならびにDRAM12への、データの読出を支持する。
【0042】
たとえば、外部ポートAからセル160内に書込まれるべきデータは、入力データ線WLA上に置かれる。セル160をアドレスするために書込アドレス線WYA上に提供される書込アドレス信号は、ADAアドレス信号に基づいて、ポートA制御回路22によって生成される。
【0043】
外部ポートAからのデータ読出を行なうために、ポートA制御回路22は、ADAアドレス信号に基づいて、読出アドレス信号を生成する。読出アドレス信号は、セル160をアドレスするために、読出アドレス線RXA上に提供される。読出されたデータは、出力データ線RLAを介して、外部ポートAに転送される。外部ポートBからのセル160への読出および書込アクセスは、出力データ線RLB、読出アドレス線RXB、入力データ線WLBおよび書込アドレス線WYBを使用して、同様の方法で行なわれる。
【0044】
DRAM12は、入力データ線WLDおよび出力データ線RLDをそれぞれ介して、セル160へのデータの書込およびセル160からのデータの読出を行なう。データ読出を行なうために、セル160は読出アドレス線RXDを介してアドレスされる。読出アドレス信号は、ADDアドレス信号に基づいてDRAM制御回路42によって生成される。ADDアドレスに基づいてDRAM制御回路42によって形成されたセル160への書込アドレス信号は、書込アドレス線WYD上に提供される。
【0045】
図5は、論理1値を含むトリプルポートSRAMセル160内に、外部ポートAから論理0値を書込む動作を示す。その後、セル160によってそのポートAを介して受取られたデータは、セルポートDを介してDRAM12に読出される。図5に示すように、外部ポートAからの論理0は、内部クロック信号CLKの立上がり端縁上で、SRAMセル160のWLAデータ線上に置かれる。WYA線にはポートA制御回路22から書込アドレス信号が供給されて、ポートAデータがセル160内に記憶されるのを可能にする。
【0046】
その後、DRAM制御回路42はセル160のRXD線に読出アドレス信号を供給して、記憶されたデータがDRAM12に読出されるようにする。論理0値は、セル160のRLDデータ線を介して、SRAMセル160からDRAM12に転送される。
【0047】
したがって、外部ポートAおよびDRAM12は、同じSRAMセルに対して書込および読出アクセスを並行に行なうことが可能となる。
【0048】
図6に、トリプルポートSRAMセル160の例示的な構成を示す。セル160は、入力データ線WLA、WLBおよびWLDと、インバータI1、I2、およびI3によって形成されてデータをラッチするためのラッチ回路との間にそれぞれ接続された、入力パストランジスタQ1、Q2、およびQ3を含み得る。インバータI1およびI2は、交差結合される。インバータI3は、インバータI1の出力に結合される。インバータI1〜I3の各々は、MOSトランジスタの対によって設けられ得る。
【0049】
出力パストランジスタQ4、Q5、およびQ6は、ラッチ回路と、出力データ線RLA、RLB、およびRLDとの間にそれぞれ、接続される。パストランジスタQ1、Q2、およびQ3のゲートはそれぞれ、書込アドレス線WYA、WYBおよびWYDに接続される。パストランジスタQ4、Q5、およびQ6のゲートはそれぞれ、読出アドレス線RXA、RXB、およびRXDに接続される。たとえば、MOSトランジスタが、入力および出力パストランジスタとして使用され得る。
【0050】
外部ポートAおよびBのうちの1つまたはDRAM12がSRAMセル160へのデータの書込を開始すると、対応する書込アドレス信号が入力パストランジスタQ1〜Q3のうち1つを活性化して、入力データ線のうちの1本に供給されたデータがラッチ回路I1〜I3内に流れるようにする。2以上のポートから単一のSRAMセル160に同時に書込アクセスがなされた場合には、無効データが提供されるおそれがある。したがって、MPRAM10は、外部ポートAとBとの両方から、または、DRAM12と外部ポートのうち一方との両方から、同じSRAMセルに対して並行に書込ができないようにされる。
【0051】
読出アドレス信号は、1または複数の出力パストランジスタQ4〜Q6を活性化して、データがラッチ回路から対応する出力データ線に送られることを可能にする。したがって、トリプルポートSRAMセル160は、多重読出動作が並行して行なわれるのを支持することができる。
【0052】
SRAM動作は、ポートA、B、およびDのどの1つからも、一度に1つの動作のみが行なわれ得るため、トリプルポートSRAMセル160は、最高3つの動作が並行して行なわれるのを支持することができる。たとえば、ポートAおよびDにセル160から読出を行なうのと並行して、ポートAがセル160への書込を行なうことが可能である。
【0053】
したがって、トリプルポートSRAMセル160は、MPRAM10が、ポートAおよびBを介して外部メモリコントローラからSRAM16に対して読出および書込アクセスを行なうのと並行に、ポートDを介してDRAM12にまたはDRAM12からSRAMデータを読出すかまたは書込むことを可能にする。したがって、DRAMおよびSRAMの動作は、同時に行なうことが可能となる。
【0054】
外部ポートAおよびBの両方が各SRAMセル160へのアクセスを有するため、外部ポートAおよびBに結合された外部メモリコントローラは、読出サイクルと書込サイクルとの間で待つ必要なく、SRAM16内のデータを修正することが可能である。すべてのクロックサイクル上で、外部ポートのうち一方ポートが読出動作を行ない、他方ポートが書込動作を行なうことができる。たとえば、図7(A)および(B)に示すように、第1のクロックサイクル上で、ポートBはSRAMセル160からデータエレメントD1を読出すことができる。ただし、外部メモリコントローラがデータエレメントD1を修正するのに、1クロックサイクルを要するものと仮定する。その後、ポートAは、その修正されたデータエレメントD1をSRAMセル160内に書込むことができる。それ以後のデータエレメントD2、D3およびD4は、同様に修正される。したがって、SRAM16のための読出−修正−書込(RMW)サイクルの帯域幅は、格段に改善される。
【0055】
以上に、SRAM、DRAM、および2つの外部IOポートを有する、メモリを説明した。各SRAMセルは、外部IOポートに結合された2つのIOポートと、DRAMにおよびDRAMからデータを転送するための1つのIOポートとを備える。このトリプルポートSRAMセルは、ラッチ回路に結合されて、外部IOポートおよびDRAMから供給されたデータを書込むための3本の入力データ線と、ラッチシステムに結合されて、記憶されたデータを外部IOポートおよびDRAMに読出すための3本の出力データ線とを含む。3本の書込アドレス線および3本の読出アドレス線は、外部IOポートおよびDRAMによって行なわれるデータ書込および読出動作のために、SRAMセルのアドレス指定を行なう。
【0056】
この開示においては、この発明の好ましい実施例のみを示しかつ説明しているが、この発明は、前掲の請求の範囲に示した本発明の概念の範囲内で、変更および修正が可能であると理解されたい。
【図面の簡単な説明】
【図1】マルチポートRAMチップのアーキテクチャを示すブロック図である。
【図2】マルチポートRAM内のSRAMの構成を示すブロック図である。
【図3】各SRAMセルのポートを示す図である。
【図4】SRAMセルのデータおよびアドレス線を示す図である。
【図5】SRAMセルへのデータ書込およびSRAMセルからのデータ読出を示すタイミング図である。
【図6】SRAMセルの例示的な回路図である。
【図7】(A)および(B)は、SRAM内の読出−修正−書込サイクルを示す図である。
【符号の説明】
10 マルチポートRAM
12 DRAM
14 グローバル入出力バス
16 SRAM
22 ポートA制御回路
24 ポートB制御回路
162 ポートA入出力および制御回路
164 ポートB入出力および制御回路
Claims (18)
- シングルチップ上に、
データ入出力を提供するための第1および第2の外部入出力ポートと、
データを記憶するための第1のメモリと、
前記第1のメモリよりも小さい記憶容量を有し、かつ前記第1および第2の外部入出力ポートに結合されて、前記第1または第2の外部入出力ポートから出力されるべきデータを記憶し、かつ前記第1または第2の外部入出力ポートから入力されるデータを受取るための、第2のメモリとを含み、
前記第2のメモリは、記憶セルを含み、前記記憶セルは、前記第1および第2の外部入出力ポートにそれぞれ結合されて前記記憶セルへのアクセスを可能にするための第1および第2のポートと、前記第1のメモリに結合されて、前記第1のメモリが前記第1および第2の外部入出力ポートの少なくとも一方と並行して前記記憶セルにアクセスすることを可能にするための第3のポートとを有する、メモリ装置。 - 前記第2のメモリは、各々が複数のトリプルポート記憶セルを有する複数のラインで構成される、請求項1に記載のメモリ装置。
- 前記記憶セルの第1、第2、および第3のポートの各々は、前記記憶セル内に書込まれるべきデータを受取るための入力データ線と、前記記憶セルから読出されるデータを転送するための出力データ線とを含む、請求項1に記載のメモリ装置。
- 前記記憶セルの第1、第2および第3のポートの各々は、前記記憶セル内に入力されるデータを制御するための書込制御線と、前記記憶セルから出力されるデータを制御するための読出制御線とをさらに含む、請求項3に記載のメモリ装置。
- 前記記憶セルは、前記入力データ線に応答してデータをラッチするためのラッチ回路を含む、請求項4に記載のメモリ装置。
- 前記記憶セルは、対応する書込制御線内の書込制御信号にそれぞれ応答して、前記第1、第2または第3のポートの入力データ線を介してデータが前記ラッチ回路に送られることを可能にするための第1、第2および第3の入力パスゲートをさらに含む、請求項5に記載のメモリ装置。
- 前記記憶セルは、第1、第2および第3の読出制御信号にそれぞれ応答して、前記第1、第2および第3のポートの出力データ線を介してデータを前記ラッチ回路から転送するための第1、第2および第3の出力パスゲートをさらに含む、請求項6に記載のメモリ装置。
- 前記第1、第2および第3の読出制御信号のうち2以上の信号が前記出力パスゲートに並行に供給されて、前記記憶セルへの多重読出アクセスが同時に提供される、請求項7に記載のメモリ装置。
- 前記第1のポートは、前記第2のポートを介して行われる前記記憶セルからのデータ読出動作と並行して前記記憶セルへのデータ書込動作を可能にする、請求項1に記載のメモリ装置。
- 前記記憶セルはSRAMセルである、請求項1に記載のメモリ装置。
- 第1および第2の外部データポートとDRAMとを有するメモリチップ上に配されたSRAMセルであって、前記SRAMセルは、
データをラッチするためのラッチ回路と、
前記第1および第2の外部データポートと前記ラッチ回路との間の双方向のデータ転送を行うための第1および第2のポートと、
前記DRAMが前記ラッチ回路へ前記第1および第2の外部データポートと並行してアクセスすることを可能にする第3のポートとを有する、SRAMセル。 - 前記第1および第2のポートは、前記ラッチ回路を前記第1および第2の外部データポートにそれぞれ結合するための、第1および第2の入力データ線ならびに第1および第2の出力データ線を含む、請求項11に記載のSRAMセル。
- 前記第3のポートは、前記ラッチ回路を前記DRAMに結合するための、第1および第2の入力データ線ならびに第1および第2の出力データ線を含む、請求項12に記載のSRAMセル。
- 前記第1および第2のポートは、前記第1および第2の外部データポートに前記SRAMセルへの書込および読出アクセスを提供するための、第1および第2の書込制御線ならびに第1および第2の読出制御線をさらに含む、請求項13に記載のSRAMセル。
- 前記第3のポートは、前記DRAMに前記SRAMセルへの書込および読出アクセスを提供するための、第3の書込制御線と第3の読出制御線をさらに含む、請求項14に記載のSRAMセル。
- 前記第1、第2および第3の入力データ線と前記ラッチ回路との間にそれぞれ結合されて、前記第1、第2および第3の書込制御線にそれぞれ接続されたゲート電極を有する、第1、第2および第3の入力パストランジスタをさらに含む、請求項15に記載のSRAMセル。
- 前記第1、第2および第3の出力データ線と前記ラッチ回路との間にそれぞれ結合されて、前記第1、第2および第3の読出制御線にそれぞれ接続されたゲート電極を有する、第1、第2および第3の出力パストランジスタをさらに含む、請求項16に記載のSRAMセル。
- 第1および第2の外部入出力ポートと、DRAMと、前記第1および第2の外部入出力ポートに結合された第1および第2のデータポートならびに前記DRAMに結合された第3のデータポートを持つSRAM記憶セルとを有するメモリ装置における、データ修正方法であって、
前記SRAM記憶セルから前記第1のデータポートを介してデータを読出すステップと、
前記読出されたデータを修正するステップと、
前記第2のポートを介して該修正されたデータを前記SRAM記憶セルに書込むステップと、
前記データを前記SRAM記憶セルから前記第3のデータポートを介して前記DRAMに読出すステップとを含む、方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US4005397P | 1997-03-07 | 1997-03-07 | |
US93643197A | 1997-09-24 | 1997-09-24 | |
US60/040053 | 1997-09-24 | ||
US08/936431 | 1997-09-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10326491A JPH10326491A (ja) | 1998-12-08 |
JP3863280B2 true JP3863280B2 (ja) | 2006-12-27 |
Family
ID=26716680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05352898A Expired - Fee Related JP3863280B2 (ja) | 1997-03-07 | 1998-03-05 | メモリ装置、sramセル、およびデータ転送方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3863280B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100322534B1 (ko) * | 1999-06-18 | 2002-03-18 | 윤종용 | 디램 에스램 복합 반도체장치 및 이를 이용한 데이터 전송방법 |
JP2004192694A (ja) * | 2002-12-10 | 2004-07-08 | Renesas Technology Corp | 半導体記憶装置 |
US8370557B2 (en) * | 2008-12-19 | 2013-02-05 | Intel Corporation | Pseudo dual-port SRAM and a shared memory switch using multiple memory banks and a sideband memory |
US9287370B2 (en) * | 2012-03-02 | 2016-03-15 | Semiconductor Energy Laboratory Co., Ltd. | Memory device comprising a transistor including an oxide semiconductor and semiconductor device including the same |
-
1998
- 1998-03-05 JP JP05352898A patent/JP3863280B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10326491A (ja) | 1998-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6167487A (en) | Multi-port RAM having functionally identical ports | |
US6088760A (en) | Addressing system in a multi-port RAM having main and cache memories | |
JP2851503B2 (ja) | 集積回路記憶装置 | |
US6282603B1 (en) | Memory with pipelined accessed and priority precharge | |
US4577293A (en) | Distributed, on-chip cache | |
KR100391730B1 (ko) | 캐시의 사용이 선택될 수 있는 반도체 메모리 디바이스와, 반도체 메모리 디바이스 액세스 방법, 및 데이터 처리 시스템 | |
JP3304413B2 (ja) | 半導体記憶装置 | |
US8730759B2 (en) | Devices and system providing reduced quantity of interconnections | |
US7990798B2 (en) | Integrated circuit including a memory module having a plurality of memory banks | |
JP3280704B2 (ja) | 半導体記憶装置 | |
JP2004500673A5 (ja) | ||
JPH1031886A (ja) | ランダムアクセスメモリ | |
US5946262A (en) | RAM having multiple ports sharing common memory locations | |
JPH04307495A (ja) | 半導体記憶装置 | |
US5787489A (en) | Synchronous SRAM having pipelined enable | |
US5542067A (en) | Virtual multi-port RAM employing multiple accesses during single machine cycle | |
US6101579A (en) | Multi-port memory device having masking registers | |
WO2003091883A1 (en) | Destructive-read random access memory system buffered with destructive-read memory cache | |
JP2000268560A (ja) | 半導体集積回路装置 | |
US20040190362A1 (en) | Dram and access method | |
US6157990A (en) | Independent chip select for SRAM and DRAM in a multi-port RAM | |
US6253298B1 (en) | Synchronous SRAM having pipelined enable | |
JP3863280B2 (ja) | メモリ装置、sramセル、およびデータ転送方法 | |
US20020141275A1 (en) | Packet-based integrated circuit dynamic random access memory device incorporating an on-chip row register cache to reduce data access latencies | |
US6205514B1 (en) | Synchronous SRAM having global write enable |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050201 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050428 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050509 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050728 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060328 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060609 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060609 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060719 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060829 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060928 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091006 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |