[go: up one dir, main page]

JP2004171561A - メモリ構成要素内でデータを管理するメモリ・コントローラ - Google Patents

メモリ構成要素内でデータを管理するメモリ・コントローラ Download PDF

Info

Publication number
JP2004171561A
JP2004171561A JP2003381101A JP2003381101A JP2004171561A JP 2004171561 A JP2004171561 A JP 2004171561A JP 2003381101 A JP2003381101 A JP 2003381101A JP 2003381101 A JP2003381101 A JP 2003381101A JP 2004171561 A JP2004171561 A JP 2004171561A
Authority
JP
Japan
Prior art keywords
data
circuit
transfer
memory
compression
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.)
Pending
Application number
JP2003381101A
Other languages
English (en)
Inventor
Steven L Pline
スティーヴン・エル・プライン
Andrew M Spencer
アンドリュー・エム・スペンサー
Kenneth J Eldredge
ケネス・ジェイ・エルドリッジ
Michael Altree
マイケル・アルテュリー
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2004171561A publication Critical patent/JP2004171561A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)
  • Dram (AREA)

Abstract

【課題】 さらに高い性能、さらに速いデータ転送レート、および、さらに安価であるような、SRAMおよびDRAMによる解決策に代る他の方法を提供すること。
【解決手段】 本発明は、いくつかの選択可能なデータ転送モードの1つで、データを転送するデータ記憶システムを具備する。このデータ記憶システムの一実施形態は、メモリ構成要素内でデータを管理するメモリ・コントローラを備える。このメモリ・コントローラは、複数のデータ入出力(I/O)端子と、複数の組の転送端子を持つスイッチング回路を備える。標準転送回路は、一方の組の転送端子に接続され、また、高速シリアル転送回路は、他方の組の転送端子に接続される。このメモリ・コントローラは、データ転送パスに接続されている圧縮/復元エンジンをさらに備えることができる。
【選択図】図2

Description

本発明は、一般に、データの格納および検索に関する。さらに具体的に言えば、本発明は、いくつかの選択可能なデータ転送モードの1つで、データをメモリカードに書込み、データをメモリカードから読み出すシステムおよび方法に関する。
開発者は、ディジタルデータを格納する様々なタイプの固体メモリ素子を製造してきた。これらのメモリ素子は、ここ数年に人気が高まってきたメモリカードとして知られているものにパッケージ化されることもある。
メモリカードは、ディジタルカメラやカムコーダー、音楽プレーヤ、PDA(携帯情報端末)、パーソナル・コンピュータなどの様々な用途に用いられる。このメモリカードは、通常、サイズが極めて小さく、かつ、特定の物理仕様またはフォーム・ファクタ(form factor)を持っている。通常のメモリカードは、約2メガバイト(MB)から約1ギガバイト(GB)までの範囲のデータ記憶容量を持っている。
多くのメモリカードが大容量のメモリを提供するが、大きなファイルをメモリに格納しメモリからファイルを検索する際のデータ転送レート(data transfer rate)は、やや遅いということがある。例えば、1秒当たり5枚の写真を撮ることのできるディジタルカメラを写真撮影者が使用する場合、また、それぞれの写真が、約5MBのデータを取り込む場合には、メモリカードは、少なくとも25MB/秒のレートでデータを格納できなければならない。現行のメモリカードは、そのような転送レートには対応していない。別の例では、写真撮影者が、約100枚の写真をメモリに格納し、かつ、それぞれの写真が約5MBである場合には、これらの写真は、512MBのメモリカードに格納できる。しかしながら、低速データ転送レートでは、これらの写真をコンピュータにアップロードするのに、20分までの時間がかかる場合がある。
低速データ転送レートに対する解決策の1つは、ホスト装置(例えば、ディジタルカメラ)に、大容量のSRAM(static random access memory)およびDRAM(dynamic random access memory)を供給することであった。SRAMとDRAMは揮発性メモリであって、これらのメモリは、不揮発性メモリ素子に対して、データ・バッファとして働くことがある。このデータ・バッファは、データがメモリ素子に書き込まれるかメモリ素子から読み出されるときに、データが失われないようにデータを一時的に格納する。しかしながら、不揮発性メモリ素子中のデータ転送レートが遅いので、データは、データ・バッファの中でバックアップされる場合があり、この場合ユーザは、最後にデータが不揮発性メモリに格納されるまで、追加情報を格納できない。この解決策の別の問題は、SRAMとDRAMが比較的に高価であって、ホスト装置のコストを押し上げることが多いことである。したがって、この業界においては、さらに高い性能、さらに速いデータ転送レート、および、さらに安価であるような、SRAMおよびDRAMによる解決策に代る他の方法を提供し、前述の欠陥や欠点に取り組む必要性がある。
この開示は、いくつかの選択可能なデータ転送モードの1つで、データを転送するデータ記憶システムを具備する。このデータ記憶システムの一実施形態は、メモリ構成要素内でデータを管理するメモリ・コントローラを備える。このメモリ・コントローラは、複数のデータ入出力(I/O)端子と、複数の組の転送端子を持つスイッチング回路を備える。標準転送回路は、一方の組の転送端子に接続され、また、高速シリアル転送回路は、他方の組の転送端子に接続される。このメモリ・コントローラは、データ転送パスに接続されている圧縮/復元エンジンをさらに備えることができる。
このデータ記憶システムの他の実施形態は、着脱自在にホストに付けられるメモリカードを含む。このメモリカードは、少なくとも1つのメモリ・バンクと、このメモリ・バンクに接続されているメモリ・コントローラとを含む。このメモリ・コントローラは、標準転送モードと高速シリアル転送モードとを切り替えるスイッチング回路(switching circuit、切替え回路)と、データを圧縮および復元する圧縮/復元エンジンとを備える。
本発明の多くの面は、以下の図面を参照すれば、よりよく理解できる。同じ参照数字は、いくつかの図を通じて、それぞれの対応する部分を表す。
この開示は、従来技術の欠点を克服するシステムおよび方法を述べている。これらのシステムおよび方法は、データ転送レートを高めて、さらに短い記憶時間や検索時間を提供する一方で、Secure Digital(商標)、MultiMediaCard(商標)、Memory Stick(商標)などの常用されるメモリカードのうちの任意の1つのフォーム・ファクタに合致することで、現在のメモリカードを向上させる。本明細書に述べられるメモリ・コントローラは、好ましくは、メモリカード中に設けられるものであって、データを転送するときにたどる複数のパラレル・パス(path、経路)のなかから、データ転送パスを選択できるようにするスイッチング回路を含む。このようなパスの1つには、エンコーディング/デコーディング法(例えば、8b/10bのエンコーディング)によって、データとクロックが組み合わされるか、あるいは分離される高速シリアル転送モードで、データを転送する回路が含まれる。このメモリ・コントローラは、いくつかの選択可能なデータ転送パス間で切り替えるように構成できるだけでなく、リアルタイムでデータを圧縮するようにも構成でき、これにより、媒体の記憶容量が高められる。データパス・スイッチング回路は、圧縮回路とは別個の面と見なすことができる。それゆえ、データパス・スイッチング回路は、別々に構築されて、圧縮回路付き、または圧縮回路なしのメモリ・コントローラに組み込むことができるが、逆も同様である。
データ記憶システム100の一実施形態の全体図は、図1に示されている。この図は、ホスト102がメモリ・コントローラ104に接続され、さらに、メモリ・コントローラ104がメモリ106に接続されている状態を示している。ホスト102は、メモリ106からデータを読み出し、かつ/または、データをメモリ106に書き込む任意のタイプのユーザ装置であってもよい。例えば、ホスト102は、ディジタルカメラ内の処理システムであることがあり、また、この処理システムは、データ書込みモードでは、ディジタル形式でイメージを取り込んで、この取り込まれたイメージを表わすディジタルデータをメモリ106に書き込むことができる。次に、データ読取りモードでは、ディジタルカメラ処理システムは、メモリ106からデータを検索して、データをコンピュータにアップロードするか、あるいは、イメージを、例えば液晶ディスプレイ(LCD)上に表示することができる。別法として、ホスト102は、オーディオ・プレーヤの処理システムであることがあり、また、この処理システムは、メモリ106から音楽データを読み取り、一組のスピーカを使って、聞き取れるように音楽を再生する。このオーディオ・プレーヤ処理システムは、音楽をメモリ106に記録できるように、データ書込み機能を含む。ホスト102は、オプションとして、PDA(携帯情報端末)の処理システム、ディジタル・カムコーダの処理システムなどの、メモリ106を利用する他の任意の公知のシステムとして構成されてもよい。
メモリ・コントローラ104は、ホスト102とメモリ106との間に電気的に接続されている。メモリ・コントローラ104は、データ書込みコマンドの間は、ホスト102からメモリ106へのデータ転送、またデータ読出しコマンドの間は、メモリ106からホスト102へのデータ転送を管理する。好ましい実施形態では、メモリ・コントローラ104とメモリ106は、コントローラ機能と記憶能力を含むタイプのメモリカード上に一まとめにされる。しかしながら、代替実施形態により、メモリ・コントローラ104は、ホスト102内に設けられることがある。このような代替実施形態では、メモリ・コントローラ104が、特定のアルゴリズムを用いてデータを圧縮して、その圧縮されたデータを別のメモリ構成要素に格納するときには、そのデータは、同一のホスト102により、あるいは、同一の圧縮および復元のアルゴリズムを含むメモリ・コントローラを持つホストによってのみ、読み直すことができる。
図2は、メモリ・コントローラ104とメモリ106がメモリカード200に納められているデータ記憶システム100の一実施形態である。メモリカード200は、任意のサイズ、形状、ピン配置、記憶容量を持ってもよい。例えば、MultiMediaCard(商標)、Secure Digital(商標)、Memory Stick(商標)などの、今日、市場で用いられている公知のメモリカードの任意の1つと同じフォーム・ファクタおよび仕様を持つメモリカード200が形成されることがある。メモリカード200は、現在ある上記および他のメモリ素子と上位互換性があり、また将来開発されるメモリ素子と互換性があるかもしれない。
メモリ106は、図2に複数のメモリ・バンク202として示されているが、ただ1つのメモリ・バンク202として構成されることもある。メモリ・バンク202の数は、メモリ・コントローラ104内の記憶インターフェース回路のデータ転送レートだけでなく、特定のメモリ・バンク202がデータを転送できる能力にも左右されることがある。この数は、さらに、以下でさらに詳しく述べられるように、所望のデータ転送レートによって決まることもある。データは、好ましくは、ブロック単位またはセクタ単位で、メモリ・コントローラ104とメモリ・バンク202との間で転送される。データの各ブロックまたは各セクタは、ホスト102がデータにアクセスするブロックサイズであればどれにも合致するように、例えば512バイトなどの所定のブロック・サイズを持つこともある。メモリ・バンク202は、高速データ転送速度でのデータブロックの高性能転送に対応するメモリ構成要素、例えば、MRAM(magnetic random access memory)またはARS(atomic resolution storage)などを含む。
さらに図2に示されるものは、ホスト102とメモリ・コントローラ104との間のインターフェース・ライン204である。インターフェース・ライン204は、ホスト102の端子を、メモリカード200のコンパチブル端子に電気的に連絡する接続端子、ピン、パッド、導体などを含むことがある。代表的なメモリカードには、特定の端子が入っており、これらの端子は、特定のシステムに固有のものであって、コンパチブル構成を持つホストとしか結合されない。異なるホスト/カード・システムの端子およびラインの場所と名称の違いにもかかわらず、代表的なシステムのインターフェース・ライン204は、複数のデータ・ラインD1、D2、…、DN、少なくとも1つのクロック・ライン(CLK)、少なくとも1つのコマンド・ライン(CMD)、少なくとも1つの電源ライン(Vdd)、少なくとも1本の接地(グラウンド)ライン(GND)を含む。ほとんどのメモリカードの仕様は、普通なら、少なくとも2本のデータ・ラインを要求する。図2に示される例では、データ・ラインの数は、Nの数である。好ましくは、データ記憶システム100は、以下に述べられるように、半二重差動送受信を可能にするために、少なくとも3本のデータ・ラインを持つフォーム・ファクタを含む。5本以上のデータ・ラインが利用できる場合には、以下にも述べられるように、全二重差動送受信構成を実現することができる。
図3は、ホスト102の一実施形態のブロック図を示している。図3に示されるホスト102の実施形態は、ユーザ装置処理システム300も含む。ユーザ装置処理システム300は、ハードウェアおよび/またはソフトウェアにおいて構成された動作命令に加え、ユーザ回路とランダムアクセスメモリ(RAM)を含むことができる。ユーザ装置処理システム300のユーザ回路は、オリジナル・データを生成するデータ・ソースまたはデータ回路を含むことができる。または、メモリ106から検索されたデータを利用するための宛先装置または宛先回路を含むことができる。ディジタルカメラの例では、ユーザ装置処理システム300は、イメージをディジタル方式で取り込み、これらのイメージをディジタルデータに変換し、そのディジタル・イメージデータをRAMに一時的に格納する写真取り込み回路を含むことができる。これと同一の例では、ディジタルカメラは、以前に取り込まれたイメージを表示するLCDをさらに含むことができる。このイメージは、メモリ106から検索されたデータから再現される。ユーザ装置処理システム300は、データを送るか、または受け取る複数の入力(I/O)端末を含む。標準転送モードでは、データは、ユーザ装置処理システム300と標準転送回路304との間のSLOW DATAバス302に沿って転送される。高速シリアル転送モードでは、データは、ユーザ装置処理システム300と高速シリアル転送回路306との間のFAST DATAバス305に沿って転送される。追加の転送モードが求められる場合には、追加のパラレル・ブランチ(parallel branch)をホスト内に接続することができる。
標準転送回路304には、データの転送を標準転送モードで実行する電気回路が入っている。標準転送回路304は、データ書込み処理の間は、パラレル・データをバス302からライン308に転送し、また、データ読出し処理の間は、パラレル・データをライン308からバス302に転送するように構成されている。標準転送回路304で行われる重要な作業は、低速データバス302からのデータを、ライン308でサポートされる幅にフォーマットすることである。他の機能は、送られるデータに、巡回冗長検査文字(CRC)を付けることと、受け取られたデータ上のCRCをデコードすることを含むこともできる。
高速シリアル転送回路306には、高速差動シリアル転送プロトコルを用いて、データを転送できる電気回路が入っている。高速シリアル転送回路306は、少なくとも100MB/秒のレートでデータを転送できることがある。このような転送レートでは、大容量のファイルは、数分という従来技術のダウンロード時間とは異なり、1秒以内にダウンロードできる。
高速シリアル転送回路306は、ホスト制御論理回路318からシステム・クロック信号CLKを受け取って、フェーズ・ロックド・ループ(PLL)回路を用いて、「高速クロック」速度までクロック周波数を逓倍する。高速シリアル転送回路306は、ユーザ装置処理システム300と高速シリアル転送回路306との間でデータを転送している間、一時的にデータを保持するバッファをさらに含む。高速シリアル転送回路306は、好ましくは、誤り検出・訂正回路、同期検出回路、8ビット〜10ビットのエンコーダ、10ビット〜8ビットのデコーダを備えて、クロックとデータをエンコードし易くし、クロックとデータを分離できるようにし、さらに、データをデコードし易くする。シリアル・データをパラレル・データに変換し、パラレル・データをシリアル・データに変換するシリアル/デシリアル(deserial)回路は、好ましくは、高速シリアル転送回路306に含まれる。
データ書込みコマンドの間、高速シリアル転送回路306は、アップコンバートされた高速クロック(FAST CLK)信号を、ユーザ装置処理システム300に送る。ユーザ装置処理システム300が、FAST CLK信号を受け取ると、高速シリアル転送回路306は、高速クロック速度にて、FAST DATAバス305に沿って、ユーザ装置処理システム300からシリアル・データを引き出す。
さらに、高速シリアル転送回路306は、ライン310に沿って、データを送り、受け取る2つの差動増幅器を含む。送信差動増幅器は、ディジタルデータをシリアル差動形式に変換し、そのシリアル差動データを、正の送信ライン(DT+)と負の送信ライン(DT−)に沿って送る。受信差動増幅器は、正の受信ライン(DR+)と負の受信ライン(DT−)からシリアル差動データを受け取って、そのシリアル差動データをディジタル形式に変換する。メモリ・コントローラ104がビジーであって、さらに多くのデータを受け取れる状態にないときには、DTラインとDRラインのほかに、BUSYラインも追加して、メモリ・コントローラ104から信号を供給することもある。BUSYラインはまた、エラーが発生したことを伝えるために、用いられることもある。高速シリアル転送回路306が、BUSY信号を受け取る場合には、メモリ・コントローラ104が、再び、受け取れる状態になるまで、データの転送は停止される。所定の時間、ビジーのままであるBUSYラインは、エラーを表わすことがある。
スイッチング回路312は、標準転送回路304に通じるライン308と、高速シリアル転送回路306に通じるライン310に接続される。ライン310は、「DT+」、「DT−」、「DR+」、「DR−」と標記されている。ここで、「DT」は、高速シリアル転送回路306から送られるデータを表わし、また、「DR」は、高速シリアル転送回路306により受け取られるデータを表わしている。スイッチング回路312は、データ転送の別々のパスを選択できるようにするいくつかの内部スイッチング要素を含む。データは、高速シリアル転送モードか、あるいは標準転送モードで、スイッチング回路312を通じて転送されることがある。ホスト102は、標準転送モードで始動し、また、要求に応じて、高速シリアル転送モードに切り替えるように構成されることがある。高速シリアル転送モードでは、スイッチング回路312のスイッチング要素は、スイッチング回路312の出力側に接続されたライン314を、高速シリアル転送回路306に通じるライン310に電気的に結合するように、構成されている。標準転送モードでは、これらのスイッチング要素は、ライン314を、標準転送回路304に通じるライン308に電気的に結合するように、構成されている。
ライン314は、スイッチング回路312とコネクタ316との間に接続されている。コネクタ316は、使用されるどちらのタイプのメモリカード200にも、適正に接続できるようにする物理特性を含む。コネクタ316は、インターフェース・ライン204に接続される出力端子とI/O端子を両方とも含む。CLK端子、Vdd端子、GND端子は、通常、それぞれのインターフェース・ライン204に沿って、システム・クロック信号、電源電圧、接地電圧を供給する出力端子として構成されている。これらの出力は、通常、ホスト102のホスト制御論理回路318により生成される。
さらに、コネクタ316は、データを送り、データを受け取るデータ端子D1、D2、...、DNなどのI/O端子を含む。コマンド端子(CMD)は、ホスト102とメモリ・コントローラ104との間で、コマンドを送り、コマンドを受け取るためのI/O端子として構成されることがある。CMD端子は、メモリ・コントローラ104から応答を受け取って、コマンドの状態をホスト102に通知する。例えば、メモリ・コントローラ104は、CMDラインに沿って、信号をホスト102に戻して、ホスト102からのコマンドが適正に受け取られたかどうか示すことがある。コマンドを送っているときに、エラーが検出された場合には、メモリ・コントローラ104は、検出されたエラーのタイプを示すエラーコードとともに、エラー応答を送ることがある。
図3に示されるホスト102の構成要素は、ホスト制御論理回路318により制御される。ホスト制御論理回路318は、制御信号を、ユーザ装置処理システム300、標準転送回路304、高速シリアル転送回路306、スイッチング回路312に供給する。ホスト制御論理回路318は、信号を様々な回路に供給して、高速シリアル転送モードか、標準転送モードのいずれかを選択する。さらに多くの転送モードが求められる場合には、ホスト102は、オプションとして、選択される追加の転送回路を含むこともある。
さらに、ホスト制御論理回路318は、標準転送モードでは転送される大量のデータを処理できる程度に速くはないことを判定できる回路またはソフトウェアを含むことができる。それにより、高速シリアル転送モードに切り替えることができる。その他、ホスト制御論理回路318は、ユーザがさらに速い転送レートを必要とするときに、高速シリアル転送モードを要求するユーザ入力を受け取ることができる。ホスト制御論理回路318は、信号を、高速シリアル転送回路306か、標準転送回路304のいずれかに送る。それにより適正な回路が、選択されたモードで動作可能になる。さらにホスト制御論理回路318は、スイッチング回路312に信号を送ることにより、適宜にスイッチング要素を設定する。さらにホスト制御論理回路318は、システム・クロックとして使用される基準クロック信号を供給するための、発振器または他のタイプのクロッキング装置を含む。さらにホスト制御論理回路318は、CMDラインに沿って、コマンド信号をメモリ・コントローラ104に供給する。
図4Aと図4Bを参照すると、メモリ・コントローラ104の一実施形態が示されている。メモリ・コントローラ104の構成要素は、必要に応じて1つの特定用途向け集積回路(ASIC)として、まとめて製造することができる。D1、D2、…、DN、CLK、CMD、Vdd、GNDのインターフェース・ライン204は、上述のホスト102のコネクタ316と、メモリ・コントローラ104のコネクタ400との間に、着脱自在に接続される。コネクタ400は、コネクタ316に対応するように構成される。言い替えれば、コネクタ400のコンタクトの位置は、コネクタ316のレセプタクル(図示されてない)内のコンタクトの形状および位置に合致する。メモリカード200をレセプタクルに差し込むと、コネクタ400のコンタクトは、コネクタ316のコンタクトに電気的に結合される。コネクタ400は、使用されている特定のメモリカード・システムのフォーム・ファクタにより構成される。ホスト102内で生成されるデータは、これらのコネクタを通じて、メモリカード200に送られることがある。ホスト102が、メモリ・バンク202からデータを検索するときには、このデータは、メモリカード200から、コネクタを介して、ホスト102に送られる。
メモリ・コントローラ104は、ホスト102のスイッチング回路312と同じやり方で設定できる第1のスイッチング回路404をさらに含む。メモリ・コントローラ104の第1のスイッチング回路404は、コネクタ400と第1のスイッチング回路404との間に接続されたライン402に沿って、データを受け取り、データを送る。第1のスイッチング回路404は、第1のスイッチング回路404と標準転送回路408との間に接続されているライン406に、あるいは、第1のスイッチング回路404と高速シリアル転送回路412との間に接続されているライン410に、ライン402を結合できるようにするスイッチング要素を含む。ライン410は、「DR+」、「DR−」、「DT+」、「DT−」と標記されている。ここで、「DR」は、ホスト102から受け取られるデータを表わし、また「DT」は、ホスト102に送られるデータを表わしている。「+」と「−」の記号は、上述のように、シリアル差動方式で用いられる正と負のラインを表わしている。
メモリ・コントローラの標準転送回路408と高速シリアル転送回路412は、それぞれホストの標準転送回路304と高速シリアル転送回路306に類する回路を含むことができる。同様に、標準転送回路408と高速シリアル転送回路412は、回路304と回路306とほぼ同一の機能を果たす。
SLOW DATAバス414は、標準転送回路408のI/O端子に接続される。FAST DATAバス415は、高速シリアル転送回路412のI/O端子に接続される。バス414とバス415は、第2のスイッチング回路416にも接続される。第2のスイッチング回路416は、第1のスイッチング回路404と共同して働いて、標準転送回路408か、高速シリアル転送回路412のいずれかをデータ転送パスに接続する。データは、データバス417に沿って、圧縮/復元エンジン418に転送される。圧縮/復元エンジン418は、データ書込みコマンドの間、データを圧縮する回路を含む。これらのスイッチング回路と、様々なデータ転送パスは、データパス・スイッチング処理を行うために、圧縮/復元エンジン418の動作に左右されない。同様に、圧縮/復元エンジン418は、圧縮および復元の処理を行うために、データパス・スイッチング設定の動作に左右されない。それゆえ圧縮/復元エンジン418を、任意選択(オプション)機構にして、本明細書に開示されるデータ記憶システム100に追加することができる。データ読出しコマンドの間、圧縮/復元エンジン418は、復元回路を利用する。知られているアルゴリズムを復元回路に用いて圧縮されたすべてのデータを復元するためである。このスイッチング構成の高速データ転送速度は、圧縮/復元エンジン418により加速され、比較的遅い媒体で、同一高速レートにてデータを受けとることができるようにしている。圧縮/復元エンジン418が格納のためにメモリ106に送る情報はさらに少ないから、圧縮されたデータの格納は、圧縮されてないデータよりも速くできる。圧縮機能をメモリ・コントローラ104に追加するもう1つの利点は、メモリに求められる記憶スペースがさらに小さくなり、それにより、ユーザが、さらに多くのデータを格納できることである。データをメモリ106に書き込んでいる間に、データを圧縮することにより、データがメモリ106中に占める記憶スペースがさらに小さくなる。それゆえ、メモリ106の記憶容量は、このようなデータの圧縮により、事実上、大きくすることができる。
圧縮されたデータは、圧縮/復元エンジン418と、高速転送レートでデータを処理できるバッファ420との間で転送される。書込みコマンドの間、バッファ420は、高速格納のために、この圧縮データを編成できる回路を含む記憶装置インターフェース422にデータを送る。記憶装置インターフェース422は、複数のメモリ・バンク202に通じる複数のパスの間でシリアル・データを分配するシーケンサを含むことができる。好ましくは、記憶装置インターフェース422は、追加バッファを含む。追加バッファは、圧縮データがメモリ・バンク202に転送されようとするときに、その圧縮データを一時的に保持する。記憶装置インターフェース422は、圧縮データにパリティを付加する誤り訂正符号(ECC)回路をさらに含む。この回路は、圧縮データがメモリ106から読み直されるときに、エラーを検出および訂正できるようにする。圧縮/復元エンジン418と記憶装置インターフェース422の順序は、逆にされる場合がある。このような場合には、データの圧縮は、データをメモリ・バンク202に格納する前に最後に行われる機能であり、また、データの復元は、メモリ・バンク202からデータを読み出すときに最初に行われる機能である。
図4Aと図4Bのメモリ・コントローラ104は、メモリ・コントローラ104に制御機能を提供するメモリ制御論理回路424をさらに含む。メモリ制御論理回路424は、ホスト102からCMDラインに沿ってコマンドを受け取り、要求されたコマンドを実行するのに適した回路に信号を供給する。ホスト102からコマンドを受け取るときに、エラーが発生する場合には、メモリ制御論理回路424は、CMDラインを介して、エラーコードをホスト102に戻して、そのエラーをホスト102に知らせる。CLKラインは、システム・クロック信号をメモリ制御論理回路424に供給して、メモリ・コントローラ104をホスト102と同期させる。
メモリ制御論理回路424は、第1のスイッチング回路404、標準転送回路408、高速シリアル転送回路412、第2のスイッチング回路416に信号を供給して、標準転送モードと高速シリアル転送モードのいずれかを選択する。データ転送パスは、高速シリアル転送モードを選択するときに、高速シリアル転送回路412を通過し、また、標準転送モードを選択するときに、標準転送回路408を通過する。メモリ制御論理回路424は、適切な転送回路408または412を使用可能にし、対応する設定を、スイッチング回路404および416に開始させる。
データ記憶システム100の構成要素は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組合せで実施されることもある。この開示された実施形態では、ホスト制御論理回路318とメモリ制御論理回路424は、メモリに格納され、かつ適切な命令実行システムによって実行されるソフトウェアまたはファームウェアで実施されることがある。代替実施形態の場合のように、これらのプロセッサは、ハードウェアで実施される場合には、すべて当技術分野において知られている以下の技術の任意のもの、またはその組合せを用いて実施されることもある。これらの技術とは、データ信号に論理機能を実施する論理ゲートを持つディスクリート論理回路、適切な組合せ論理ゲートを持つASIC、PGA(programmable gate array)、FPGA(field programmable gate array)などである。
一般に、ホスト102とメモリ・コントローラ104の実施形態は、上述の通り、図3、図4A、図4Bに示されるように構成されることがある。次に、ホスト102とメモリ・コントローラ104の個々の構成要素をさらに定義する図5〜図11を参照して、ホスト102とメモリ・コントローラ104の一般構成要素が述べられている。以下の構成要素の代替実施形態は、この開示をはっきりと理解している当業者により実施できることに留意されたい。
図5と図6は、データ記憶システム100が半二重モードで動作するように構成されているときに、それぞれホスト102とメモリ・コントローラ104の一部の実施形態を表わしている。図5は、ホスト102のうち、スイッチング構成を作り上げる部分を示しており、標準転送回路304、高速シリアル転送回路306、スイッチング回路312の詳細図から成っている。高速シリアル転送回路306からの出力は、半二重構成でスイッチング回路312に連絡され、ここで、DT+ラインとDR+ラインは正の端子を共有し、またDT−ラインとDR−ラインは負の端子を共有している。
スイッチング回路312は、データ記憶装置100が動作しているときのデータ転送モードを示す信号をホスト制御論理回路318から受け取るスイッチ制御回路500を含む。スイッチ制御回路500がホスト制御論理回路318からコマンドを受け取ると、スイッチ制御回路500は、所望のモードを持続させる。それゆえ、ホスト制御論理回路318は、その要求を、一度だけ起動しなければならない。また、スイッチ制御回路500は、別の状態に設定し直されるまで、所望の状態を保持する。スイッチ制御回路500は、所望の状態を保持するレジスタを含むことがある。スイッチ制御回路500は、一定の信号を、複数のスイッチ502に供給して、別の状態が要求されるまで、スイッチ502を所望の状態に保つ。
標準転送モードが要求されるときには、スイッチ制御回路500は、標準転送回路304を通るデータ・ラインD1、D2、…、DNが、コネクタ316に通じるライン314に電気的に接続されるような状態に、スイッチ502を設定する。標準転送回路304では、SLOW DATAバス302に沿ったデータが、低速処理回路503に入力され、そこで、パラレル・ラインまたはシリアル・ラインが、Nの数のデータ・ラインD1、D2、…、DNを持つ形式に変換される。データ・ラインD1、D2、…、DNは、プッシュプル・トランシーバ504に接続される。プッシュプル・トランシーバ504は、データ信号を、一方の方向に、または他方の方向に駆動する駆動増幅器を含む。データ・ラインD1、D2、…、DNに沿ったプッシュプル・トランシーバ504は、さらに、スイッチ502の一方の側の第1の組のコンタクトに接続される。SLOW DATAバス302は、標準転送モードに切り替えられると、プッシュプル・トランシーバ504を介して、データ・ライン314に接続される。
高速シリアル転送モードでは、スイッチ制御回路500は、高速シリアル転送回路306からの正のラインと負のラインを、データ・ライン314のラインD2とラインD3に接続するように、スイッチ502を代替状態に設定する。シリアル差動信号の正の部分は、データ・ラインD2に接続され、また、その負の部分は、D3に接続される。BUSYラインは、データ・ラインD1に接続されていて、メモリ・コントローラ104がビジーで、さらに多くのデータを受け取れる状態にないときに、メモリ・コントローラ104から信号を受け取る。ビジー信号に応答して、ホスト102は、メモリ・コントローラ104が「ビジーでない」信号を送るまで、追加データを送るのを延ばす。残りのデータ・ラインD4、D5、...、DNは、半二重高速シリアル転送モードでは使用されない。図5は、図示される配置で、データ・ラインD1、D2およびD3を用いている状態を示しているが、ホストは、BUSYライン、正のライン、負のラインに対して、3本の任意データ・ラインをどれでも使用できるように構成されることがある。どのデータ・ラインを使用するのかは、ホスト102の物理特性に基づいて、決定されることがある。
BUSY端子、正の端子、負の端子を含むスイッチ502の第2の組のコンタクトは、それぞれ、スイッチ対512とスイッチ対514を介して、差動増幅器508と差動増幅器510に接続される。スイッチ制御回路500は、データを送るとき、すなわち、言い替えれば、ホスト102からのデータが、メモリ・コントローラ104を通じて、メモリ106に書き込まれるときには、スイッチ対512を閉じることがある。スイッチ制御回路500が、スイッチ対512を閉じると、DT+はD2ラインに接続され、またDT−はD3ラインに接続される。スイッチ制御回路500は、メモリ106からデータを読み取ると、スイッチ対514を閉じて、DR+およびDR−をD2およびD3に接続する。差動増幅器508および510は、高速処理回路506に接続される。高速処理回路506は、CLKラインからクロック信号を受け取って、その内部クロックを基準クロック信号と同期化させるフェーズ・ロックド・ループ(PLL)回路を含む。さらに、PLL回路は、高速シリアル転送モードでの使用のために、クロック周波数を逓倍する。高速処理回路506は、データを、例えば8ビットのパラレル形式からシリアル形式に、あるいは、その逆に変換するシリアル/デシリアル回路をさらに含む。データ信号とクロック信号は両方とも、高速シリアル転送モードでデータを送るために、データ・ストリームに組み込まれる。
データ書込みコマンドの間、スイッチ対512が閉じられて、高速処理回路506は、差動増幅器508を通じて、逐次、データを送り、データ・ラインD2およびD3に沿って、差動データを出力させる。読出しコマンドの間、スイッチ対514が閉じられて、差動増幅器510は、データ・ラインD2およびD3から差動データを受け取って、ディジタル・データを高速処理回路506に送る。
スイッチ502と、スイッチ対512および514は、第1のコンタクトと複数の選択可能なコンタクトとの間の代替接続を提供するか、あるいは、代替の開放状態または閉じ状態を提供するシリコンまたは他の方法で作られた任意タイプの電気デバイスまたはトランジスタベースのデバイスから成ることもある。スイッチ502の代替接続設定は、この一群のデータ・ライン314から、複数の組のライン、例えばライン302またはDTラインとDRラインへの代替パスを提供する。
オプションとして、データ記憶システム100は、上述のように、ホスト102とメモリ・コントローラ104が、選択可能なパスを3つ以上含むように、構成されることがある。さらに、パスと転送回路が追加されることがあり、それにより、追加のデータ転送モードが選択できる。追加のパスが含まれる実施形態では、ライン314が、他のパスに沿って、追加の転送回路を介して接続されるように、追加端子を持つスイッチ502が設定されることもある。
図6は、メモリ・コントローラ104のうち、図5に示されるホスト102の半二重構成と共同して動作するように設計されたスイッチング部分の一実施形態のブロック図である。このメモリ・コントローラの第1のスイッチング回路404は、ホストのスイッチング回路312とほぼ同一であることもある。スイッチ制御回路600は、メモリ制御論理回路424からコマンドを受け取って、所望のデータ転送モードに切り替える。好ましくは、スイッチ制御回路500および600は、両側で転送モードが一致するように、同期化される。この点に関して、同期を持続させるために、ホスト制御論理回路318は、コマンドを、CMDラインに沿ってメモリ制御論理回路424に送って、メモリ・コントローラ・プロセッサ424に、スイッチ制御回路600を、要求されるデータ転送モードに切り替えるように指示する。スイッチ制御回路600は、スイッチ602にて、一定の信号を維持して、スイッチ602を所望の状態に保つ。高速シリアル転送モードでは、データ・ライン402は、DRラインとDTラインに電気的に結合される。標準転送モードでは、データ・ライン402は、標準転送回路408を介して、SLOW DATAバス414に結合される。
プッシュプル・トランシーバ604と低速処理回路605は、データ・ライン402と、標準転送回路408中のSLOW DATAバス414との間に接続される。スイッチ602のそれぞれの一端子は、スイッチ対612および614に接続される。スイッチ対612は、データ・ライン402のラインD2およびD3を差動増幅器608に接続する。高速シリアル転送モードでのデータ書込みコマンドの間、スイッチ対612は閉じられて、ラインDR+とラインDR−に沿った差動信号が、差動増幅器608に入力され、それにより、信号が、高速処理回路606の入力側に供給される。高速シリアル転送モードでのデータ読出しコマンドの間、スイッチ制御回路600は、スイッチ対614を閉じて、高速処理回路606が、出力信号を、第2の差動増幅器610に供給する。差動増幅器610は、シリアル差動出力を、DT+ラインとDT−ラインに沿って、データ・ライン402のラインD2とラインD3に送る。
上述の図5と図6は、半二重構成の一例を示している。半二重構成の他の方法として、図7と図8は、全二重モードで動作するホスト102およびメモリ・コントローラ104の一実施形態を提供している。この2組の図の主な違いを説明する。図5と図6の半二重構成では、正のラインDT+とラインDR+が共通の正の端子を共有し、また、負のラインDT−とラインDR−が共通の負の端子を共有している。それゆえ図5と図6では、データが、同一のラインD2およびD3上で、送られるかまたは受け取られる。差動シリアル・データは、データ・ラインD2およびD3に沿って、一方の方向にまたは他方の方向に転送される。図7と図8では、差動増幅器508、510、608、610からの4つの出力が、4つのデータ・ラインD2、D3、D4、D5に連絡される。上述のように、DT+、DT−、DR+、DR−の信号を転送する特定のデータ・ラインとして、データ・ラインD1、D2、…、DNをどれでも、自由に選択できる。2つの追加データ・ラインを利用すれば、シリアル差動信号を、2つのデータ・ラインに沿って送り、また、別のシリアル差動信号を、2つの異なるデータ・ラインに沿って同時に受け取ることができる。
全二重モードでのホスト102を示す図7では、スイッチ制御回路700は、データ記憶システム100を標準転送モードまたは高速シリアル転送モードで動作させる要求に基づいて、5つのスイッチ702を設定している。図5の半二重モードと比較して、図7は、データ・ライン314と、標準転送回路304および高速シリアル転送回路306を通る交互パスとの間に追加された2つの追加スイッチ702を示している。高速シリアル転送モードでは、スイッチ制御回路700は、ラインD1、D2、D3、D4、D5を、それぞれ、BUSYラインと、データ端子DT+、DT−、DR+、DR−に接続するように、図7に示される通りスイッチ702を設定する。スイッチ制御回路700は、書込みコマンドの間、スイッチ対712を閉じ、また、読出しコマンドの間、スイッチ対714を閉じる。送信と受信が同時であるかもしれないから、全二重モードでは、スイッチ対712および714がオプションであることもある。このような理由で、スイッチ対712および714は、除去されるか、あるいは、貫流接続線(flow-through connection)に代えられることもある。
図8は、図7に示されるホスト102の全二重構成と共同して動作する、全二重構成でのメモリ・コントローラ104を示している。図8は、図6と同様である。ただし、スイッチ制御回路800は、3つではなくて、5つのスイッチ802を設定する。差動増幅器608および610は、半二重モードの場合のように2本しかないデータ・ラインに接続されるのではなくて、全二重モードでは、データ・ラインD2、D3、D4、D5に接続される。これらの接続は、スイッチ対812および814を通じて行われ、この場合も、全二重モードではオプションであることもある。
図9は、圧縮/復元エンジン418の一実施形態を示している。データ書込みモードでは、圧縮/復元エンジン418に入ってくるデータは、データ入力制御回路900、圧縮回路902、圧縮検出回路904に進む。圧縮回路902は、入ってくるデータを圧縮して、この圧縮データを、データ入力制御回路900と圧縮検出回路904に送る。入ってくるデータを受け取って、そのデータを圧縮回路902に圧縮させる圧縮検出回路904は、入ってくるデータと圧縮データを比較して、圧縮回路902による圧縮に先立って、入ってくるデータがすでに圧縮されているかどうか判定する。すでに圧縮されているデータを圧縮回路902が圧縮するときに、データの圧縮のために圧縮回路902で用いられたアルゴリズムが、実際に、このデータを展開することがあるという事実に基づいて、圧縮検出回路904は、このような判定を行うことがある。それゆえ、このデータが、さらなる圧縮に対応してない場合、あるいは、このデータが、圧縮されないで、圧縮回路902で展開される場合には、圧縮検出回路904は、このデータがすでに圧縮されていると判定する。
圧縮検出回路904は、データ入力制御回路900に、入ってくるデータか、圧縮回路902からの圧縮データのいずれかを選ぶように指示する信号を、データ入力制御回路900に送る。圧縮検出回路904は、追加信号を圧縮回路902に送って、用いられる圧縮アルゴリズムが有効でないことを、圧縮回路902に知らせる場合がある。その結果、圧縮回路902は、アルゴリズムが無効であることを通知するときに、別のアルゴリズムに切り替えることがある。圧縮検出回路904は、入ってくるデータがすでに圧縮されているかどうか、データ入力制御回路900に通知する。入ってくるデータがすでに圧縮されている場合には、データ入力制御回路900は、圧縮回路902からのデータを無視して、すでに圧縮されている入ってくるデータを選択する。入ってくるデータが、これまで圧縮されたことがない場合には、データ入力制御回路900は、入ってくるデータを無視して、圧縮回路902からの圧縮データを選択する。データ入力制御回路900は、転送されるデータが、圧縮回路902からの圧縮データであるか、前に圧縮された入ってくるデータであるかどうか示すことのできる圧縮指示記号といっしょに、その選択されたデータを転送する。さらに、この圧縮指示記号は、入ってくるデータを圧縮するために圧縮回路902が使用したアルゴリズムのタイプに関する情報も含むことがある。
データがメモリ106から読み出されると、そのデータは、圧縮/復元エンジン418の復元部分に入力される。格納されたデータは、データ出力制御回路906、復元回路908、圧縮記号検出回路910に進む。圧縮記号検出回路910は、圧縮検出回路904が格納データを圧縮したかどうか判定するために、圧縮指示記号を検出し、また、もし圧縮した場合には、使用されたアルゴリズムも検出する。圧縮記号検出回路910が、どのように格納データを圧縮したか決定すると、圧縮記号検出回路910は、この格納データを復元する方法を復元回路908に指示する信号を復元回路908に送る。さらに、圧縮記号検出回路910は、この格納データが、圧縮回路902中の公知の圧縮アルゴリズムにより圧縮されたかどうか、データ出力制御回路906に通知する。それに応答して、データ出力制御回路906は、復元されてないデータか、復元回路908で復元されたデータのいずれかを選択する。データ出力制御回路906は、選択されたデータを、圧縮/復元エンジン418の出力側に転送する。
図10と図11は、図4に示されるように、メモリ・コントローラ104の圧縮/復元エンジン418と、メモリ・バンク202との間のインターフェースとして働く記憶装置インターフェース422の2つの例証実施形態を示している。書込みコマンドでは、記憶装置インターフェース422は、データ・ブロックをメモリ・バンク202に転送し、また読出しコマンドでは、記憶装置インターフェース422は、メモリ・バンク202から、データ・ブロックを検索する。図10の実施形態では、記憶装置インターフェース422は、シリアル・データをバッファ420から高速ECC回路1000に転送する。ECC回路1000は、いくつかのブランチに沿って、対応する数のバッファ1004に至るパスに沿ってデータを送る高速シーケンサ1002に接続されている。データ書込みコマンドの間、ECC回路1000は、バッファ420からデータを受け取って、そのデータに、パリティ・ビットを付加する。このデータをメモリ・バンク202から読み出すときに、ECC回路1000は、エラーの対象となるデータを検出し、データ中に訂正可能なエラーがあれば、それを訂正し、次に、パリティ・ビットを取り除いて、その訂正されたデータを、バッファ420に送り戻す。
データ書込みコマンドの間、高速シーケンサ1002は、ECC回路1000からのシリアル・データを、複数のパラレル・パスに分ける。パスの数は、例えば4つであるか、あるいは、それぞれのバッファ1004の転送レートにバッファの数を掛けたものが、高速シリアル転送モードの間、データの転送を高速に維持するに充分な大きさであるような任意の個数であってもよい。バッファ1004は、シーケンサ1002により分けられたパスに沿ってデータを一時的に格納し、このデータをブロックにし、これらのデータ・ブロックを、対応するメモリ・バンク202の中に転送する。データ記憶システム100が標準転送モードであるときには、バッファ1004の1つを除く全部は、使われてないときにアイドル状態にある場合があることに留意されたい。このような場合に、一度に、1つしかバッファ1004を使用しないために、節電が実現できる。
図11は、記憶装置インターフェース422の代替実施形態を示している。ここでは、データ書込みコマンドの間、高速の区分バッファ1100は、シリアル・データを受け取って、そのデータを高速シーケンサ1102に転送し、そこで、このデータが、いくつかの別々のパスに沿って、別々のブロックに分けられる。データの各ブロックは、それぞれECC回路1104に入力され、ECC回路1104は、データにパリティを付加する。パリティが付加されたデータ・ブロックをメモリ・バンク202に格納する。データ読出しコマンドの間、ECC回路1104は、異なるメモリ・バンク202からデータ・ブロックを検索し、エラーがあれば、それを検出し、エラーを訂正し、パリティ・ビットを取り除き、これらのデータ・ブロックをシーケンサ1102に送る。次に、シーケンサ1102は、これらのデータ・ブロックを、つなぎ合わせて元どおりにし、そのデータを、区分バッファ1100に逐次に送り戻す。
次に、図1〜図11に関して上に詳しく述べられたデータ記憶システム100を動作させる方法を参照する。図12は、データ書込みコマンドの例証実施形態を示しており、ここでは、ホスト102において生成されたデータをメモリ106に書き込む。図13は、メモリ106からデータを読み出す、ホスト102で要求されるデータ読出しコマンドの例証実施形態を示している。
図12は、通常、ホスト102で起動されるデータ書込みコマンドを示している。第1のステップは、ブロック1200に示されるように、スイッチング回路を標準転送モードに初期設定するものである。判断ブロック1202に示されるように、ホスト102が、高速シリアル転送モードを要求したかどうか判定するステップを実行する。高速シリアル転送モードを要求する場合には、ブロック1204に示されるステップを実行する。ホスト制御論理回路318とメモリ制御論理回路424は、信号を、スイッチング回路312および404のスイッチ制御回路500、600、700、800に送る。スイッチ制御回路500、600、700、800は、高速シリアル転送モードでデータを転送できるようにする状態に、スイッチ502、602、702、802を設定する。高速シリアル転送モード用のコマンドが出されていない場合には、流れは、ブロック1206に進む。標準転送モードは、特定的に高速シリアル転送モードが要求されている場合を除き、データ記憶システム100を、いつもとどめているデフォルト・モードであることがあるものとする。しかしながら、データ記憶システム100は、高速シリアル転送モードがデフォルト・モードであるように、逆のやり方で構成されることもある。3つ以上の転送モードが利用できる実施形態では、判断ブロック1202は、いくつかの異なる転送モードの中から選択する選択ステップを含むことがある。
データ書込み方法は、ホスト102とメモリ・コントローラ104が、2つ以上のデータ転送モードのいずれか1つで、データをメモリ106に書き込む時点において、終了することがある。メモリ・コントローラ104が、圧縮/復元エンジン418とともに構成されるときには、図12の残りのステップが、データ書込み方法で行われることがある。
ブロック1206において、圧縮回路902は、圧縮/復元エンジン418に入ってくるデータを圧縮する。次に、圧縮検出回路904は、ブロック1208に示されるように、この入ってくるデータと、圧縮回路902から出力された圧縮データを比較する。圧縮検出回路904は、このような比較を利用して、入ってくるデータが、比較回路902で比較される前に圧縮されたかどうか判定する。判断ブロック1210は、入ってくるデータが、すでに圧縮されているかどうか判定するステップを示し、もし圧縮されている場合には、ステップの流れを制御して、ステップ1212に進める。このステップにおいて、圧縮検出回路904は、データ入力制御回路900に信号を送って、圧縮データではなくて、入ってくるデータを選択する。データ入力制御回路900は、入ってくるデータを選択し、ブロック1214に示されるように、メモリ106に格納されている現時点のデータが「圧縮されてない」ことを示す圧縮標識をさらに付加する。
判断ブロック1210において、入ってくるデータが、圧縮回路902によりデータが圧縮されるまでに圧縮されなかったと、圧縮検出回路904が判定する場合には、方法の流れは、ブロック1216に進む。このステップにおいて、圧縮検出回路904は、入ってくるデータが、これまで圧縮されなかったことと、新たに圧縮されたデータが選択されることを、データ入力制御回路900に信号で伝える。データ入力制御回路900は、圧縮回路902からの圧縮データを選択し、「圧縮された」データとしてメモリ106に書き込まれる現在データにフラグを付ける圧縮標識を付加する(ブロック1218)。ブロック1212および1216の選択ステップと、ブロック1214および1218の圧縮標識付加ステップの後で、流れは、ブロック1220に進み、そこで、選択されたデータ、および対応する圧縮標識が、メモリ106に格納される。
図13は、データ読出し方法の一実施形態を示している。ブロック1306、1308、1310、1312、1314、1316は、データ読出し方法のうち、復元をともなう部分にかかわるステップをさす。データ記憶システム100が圧縮/復元エンジン418を含むときには、これらのステップに従ってもよい。データ記憶システム100が圧縮や復元を含まないときには、これらのステップを飛ばしてもよい。さらに、データ記憶システム100が、スイッチング回路312、404、416を含むスイッチング構成、標準転送回路304および408、高速シリアル転送回路306および412を備えているときには、ブロック1300、1302、1304に示されるステップに従ってもよい。データ記憶システム100が、スイッチング構成を含まないときには、これらのステップを飛ばしてもよい。それゆえ、圧縮および復元のステップは、データ転送モード・スイッチング・ステップとは別個のものと見なされることがある。代替実施形態として、スイッチング構成をメモリ106と圧縮/復元エンジン418との間に置く一実施形態がデータ記憶システム100に含まれるときには、圧縮および復元のステップは、データ転送モード・スイッチング・ステップと入れ替えられてもよい。
図13は、異なる転送モードの切替えにかかわるステップを示している。ブロック1300において、スイッチング回路を、標準転送モードに初期設定する。ホスト制御論理回路318とメモリ制御論理回路424は、対応するスイッチ制御回路500、600、700、または800に信号を送って、標準転送回路304および408をデータ転送パスに結合するように、スイッチ502、602、702、802と、スイッチ対512、514、612、614、712、714、812、814を設定する。判断ブロック1302において、データ記憶システム100は、高速シリアル転送モードで動作するように、コマンドが出されているかどうか判定する。高速シリアル転送モードが要求されていると、判断ブロック1302で判定される場合には、流れはブロック1304に進み、そこで、データ記憶システム100は、高速シリアル転送回路306および412をデータ転送パスに結合するように、これらのスイッチおよびスイッチ対を設定する。データ転送モードが設定され、かつ、適正な転送回路が切り替えられて、データ転送パスにつながると、データは、必要に応じて、さらに復元されてもよい。
図13に示される実施形態は、復元回路908が、ブロック1306に示される通り、メモリ106からの格納データを復元するステップをさらに含む。ブロック1308において、圧縮記号検出回路910は、格納データにともなう圧縮標識を検出する。判断ブロック1310において、圧縮記号検出回路910は、この圧縮標識が、「圧縮された」という標識であるかどうかさらに判定する。もし、「圧縮された」という標識であれば、ステップの流れがブロック1312に進み、そこで、圧縮記号検出回路910は、復元回路908からの復元データが選択されることを、データ出力制御回路906に信号で伝える。それに応答して、データ出力制御回路906は、その復元データを選択する。ステップ1310とステップ1312は、データの圧縮の間に利用されるタイプの圧縮アルゴリズムを検出するステップと、この利用されるタイプの圧縮アルゴリズムによりデータを復元するよう、復元回路908に指示するステップをさらに含むことがある。判断ブロック1310が、「圧縮されてない」という標識があると判定する場合には、この流れは、ブロック1314に進み、そこで、圧縮記号検出回路910は、データ出力制御回路906に信号を送って、復元回路908からの復元データではなく、じかにメモリ106からの復元されてないデータを選択する。ここで、適切な組のデータを選択したデータ出力制御回路906は、ブロック1316に示されるように、圧縮の間に付加された圧縮標識を取り除いて、そのデータを、ホスト102に転送する(ブロック1318)。
図12と図13の流れ図は、データ書込みとデータ読出しのソフトウェアの可能な実施例のアーキテクチャ、機能、動作を示している。この点に関して、各ブロックは、指定した論理機能(1つまたは複数)を実施する1つまたは複数の実行命令を含むコードのモジュール、セグメント、または一部を表わしている。いくつかの代替実施例では、これらのブロック内に記された機能は、図12と図13に記された順序から外れて行われる場合があることにも留意されたい。例えば、図13に連続して示される2つのブロック1310および1312は、実際は、ほぼ同時に実行されるか、あるいは、これらのブロックは、時には、下にさらに明らかにされるように、関係する機能に応じて、逆の順序で実行されることがある。
データの書込みおよび読出しの方法は、命令実行のシステム、装置、またはデバイスから命令を取り出して、この命令を実行することのできるコンピュータ・ベースのシステム、プロセッサ制御のシステム、または他のシステムなどの命令実行のシステム、装置、またはデバイスで用いられる任意のコンピュータ読取り可能媒体に織り込むことのできるプログラムであって、かつ、論理機能を実施する実行命令の番号付きリストを含むプログラムとして構成されることがある。本明細書に関連して、「コンピュータ読取り可能媒体」とは、命令実行のシステム、装置、またはデバイスで用いられるプログラムを含み、格納し、やり取りし、伝播させ、あるいは、移送することのできる任意の媒体であることもある。コンピュータ読取り可能媒体は、例えば、電子式、磁気式、光学式、電磁式、赤外線式、または半導体式のシステム、装置、デバイス、または、伝播媒体であることもある。コンピュータ読取り可能媒体のさらに具体的な例には、一本または複数の電線を有する電気接続部、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能なPROM(EPROMまたはフラッシュ・メモリ)、および、光ファイバがある。プログラムは、例えば、紙または他の媒体のオプティカル・スキャニングにより、電子的に取り込まれ、次に、コンパイルされ、翻訳されるなどして、必要に応じて適切なやり方で処理され、次に、コンピュータ・メモリに格納されるから、このコンピュータ読取り可能媒体は、プログラムを印刷している紙または他の適切な媒体でさえあり得ることに留意されたい。さらに、本発明の範囲は、ハードウェアまたはソフトウェアで構成される媒体に織り込まれたロジックに、この開示の実施形態の機能を具現することを含む。
本発明の上述の実施形態は、本発明の原理を明確に理解するために記述された可能な実施の例にすぎないことが強調されたい。本発明の原理から逸脱しなければ、本発明の上述の実施形態に、多くの変更および変形を行うことができる。このような変更および変形はすべて、この開示の範囲内で、本発明に含まれ、かつ、併記の特許請求の範囲により保護されることになっている。
データ記憶システムの一実施形態の全体図のブロック図。 図1のデータ記憶システムの例証実施形態を示すブロック図。 図1と図2に示されるホストの一実施形態の詳細を示すブロック図。 図1と図2に示されるメモリ・コントローラの一形態を示すブロック図。 図1と図2に示されるメモリ・コントローラの一形態を示すブロック図。 図3に示されるホストの一部の一実施形態(半二重構成の一例である)のブロック図。 図5に示される半二重の実施形態と共同して動作するように構成された、図4に示されるメモリ・コントローラの一部の一実施形態のブロック図。 図3に示されるホストの一部の一実施形態(全二重構成の一例である)のブロック図。 図7に示される全二重の実施形態と共同して動作するように構成された、図4に示されるメモリ・コントローラの一部の一実施形態のブロック図。 図4の圧縮/復元エンジンの例証実施形態を示すブロック図。 図4の記憶装置インターフェースの第1の実施形態のブロック図。 図4の記憶装置インターフェースの第2の実施形態のブロック図。 例証データ書込みコマンドのステップを示すフローチャート。 例証データ読出しコマンドのステップを示すフローチャート。
符号の説明
102 ホスト
104 メモリ・コントローラ
106 メモリ
200 メモリ構成要素
202 メモリ・バンク
300 ユーザ装置処理システム
304 標準転送回路
306 高速シリアル転送回路
312 スイッチング回路
316 ホスト・コネクタ
318 論理回路
402 データ入出力(I/O)端子
404 スイッチング回路
406、410 転送端子
408 標準転送回路
410 転送端子
412 高速シリアル転送回路
418 圧縮/復元エンジン
422 記憶装置インターフェース
424 論理回路
602、802 第1の複数のスイッチ
606 処理回路
608 受信シリアル差動増幅器
610 送信差動増幅器
612、614、812、814 第2の複数のスイッチ
900 データ入力制御回路
902 圧縮エンジン
904 圧縮検出器
906 データ出力制御回路
908 復元エンジン
910 復元検出器

Claims (10)

  1. 複数のデータ入出力(I/O)端子と複数の組の転送端子を有するスイッチング回路と、
    前記転送端子の一方の組に接続された標準転送回路と、
    前記転送端子の別の組に接続された高速シリアル転送回路と、
    前記標準転送回路と前記高速シリアル転送回路に接続された圧縮/復元エンジンと、
    を備える、メモリ構成要素内でデータを管理するメモリ・コントローラ。
  2. 前記圧縮/復元エンジンとメモリとの間に接続された記憶装置インターフェースと、
    前記スイッチング回路、前記標準転送回路、前記高速シリアル転送回路、前記圧縮/復元エンジン、前記記憶装置インターフェースに接続された論理回路と、
    をさらに備え、
    前記スイッチング回路は、第1の複数のスイッチおよび第2の複数のスイッチをさらに備え、該第1の複数のスイッチは、前記複数の組の転送端子のうちの一組に前記データI/O端子を接続し、該第2の複数のスイッチは、前記高速シリアル転送回路を半二重モードに設定し、前記スイッチング回路は、高速シリアル転送モードにおいて、2つのデータ・ラインに沿って差動シリアル・データを送るかまたは受け取るように、前記第2の複数のスイッチを設定し、
    ホストからの高速データ転送モードを起動するためのコマンドに応答して、前記論理回路が、前記スイッチング回路に信号を送って、前記高速シリアル転送回路に接続されている前記転送端子に前記データI/O端子を接続するように前記第1の複数のスイッチを設定する請求項1に記載のメモリ・コントローラ。
  3. 前記圧縮/復元エンジンとメモリとの間に接続された記憶装置インターフェースと、
    前記スイッチング回路、前記標準転送回路、前記高速シリアル転送回路、前記圧縮/復元エンジン、前記記憶装置インターフェースに接続された論理回路と、
    をさらに備え、
    前記スイッチング回路は、第1の複数のスイッチおよび第2の複数のスイッチをさらに備え、該第1の複数のスイッチは、前記複数の組の転送端子のうちの一組に前記データI/O端子を接続し、該第2の複数のスイッチは、前記スイッチング回路は、前記高速シリアル転送回路を全二重モードに設定し、高速シリアル転送モードにおいて、4つのデータ・ラインに沿って差動シリアル・データを同時に送りかつ受け取るように、前記第2の複数のスイッチを設定し、
    ホストからの高速データ転送モードを起動するためのコマンドに応答して、前記論理回路)が、前記スイッチング回路に信号を送って、前記高速シリアル転送回路に接続されている前記転送端子に前記データI/O端子を接続するように前記第1の複数のスイッチを設定する請求項1に記載のメモリ・コントローラ。
  4. 前記圧縮/復元エンジンが、
    前記データが、圧縮された形式にあるかどうか検出する圧縮検出器と、
    前記データが、圧縮された形式にないことが前記圧縮検出器で検出されると、入ってくるデータを圧縮する圧縮エンジンと、
    前記入ってくるデータと前記圧縮データのいずれかを選択し、前記選択されたデータに圧縮記号を付加して、前記データを、圧縮されたものか、あるいは圧縮されてないものとして識別するデータ入力制御回路と、
    メモリから検索された前記データに付加された前記圧縮記号を検出する復元検出器と、
    メモリから検索された前記データを復元する復元エンジンと、
    メモリから検索された前記データと前記復元データのいずれかを選択するデータ出力制御回路と、を備える請求項1に記載のメモリ・コントローラ。
  5. 複数のメモリ・バンクと、
    前記複数のメモリ・バンクに接続されたメモリ・コントローラと、
    を備えるメモリカードであって、
    前記メモリ・コントローラが、
    複数の選択可能なデータ転送モードの1つに設定できるスイッチング要素を持つスイッチング回路を備え、それぞれの選択可能なデータ転送モードは、複数のデータ転送パスの少なくとも1つを含み、
    第1の組のデータ転送パスに沿って接続された標準転送回路と、
    第2の組のデータ転送パスに沿って接続された高速シリアル転送回路と、
    を備えるメモリカード。
  6. MultiMediaCard(商標)、Secure Digital(商標)、Memory Stick(商標)の1つに対応したフォーム・ファクタ、あるいは、別々のコマンド・ラインとデータ・ラインを持つ他のメモリカードのフォーム・ファクタを持つ本体をさらに具備する請求項5に記載のメモリカード。
  7. 前記メモリ・バンクが、ARS(atomic resolution storage)装置とMRAM(magnetic random access memory)装置の少なくとも1つを備える請求項5に記載のメモリカード。
  8. ホストと、
    前記ホストと電気的にやり取りするメモリ構成要素と、
    を備える、データを格納するシステムであって、
    前記メモリ構成要素が、
    少なくとも1つのメモリ・バンクと、
    パラレル転送モードと高速シリアル転送モードとを切り替えるスイッチング回路と、データを圧縮および復元する圧縮/復元エンジンとを具備する、前記少なくとも1つのメモリ・バンクに接続されたメモリ・コントローラと、を備えるシステム。
  9. 前記ホストが、
    データ・ソースと宛先回路を含むユーザ装置処理システムと、
    スイッチング回路と、
    前記ユーザ装置処理システムと前記スイッチング回路の間に接続された標準転送回路と、
    前記ユーザ装置処理システムと前記スイッチング回路との間に接続された高速シリアル転送回路と、
    前記スイッチング回路に制御信号を供給して、前記スイッチング回路を、前記パラレル転送モードと前記高速シリアル転送モードのいずれかで動作させるように設定する論理回路と、
    ホスト・コネクタを備え、該ホストコネクタは、前記論理回路が前記スイッチング回路を設定して、前記パラレル転送モードで動作させるときには、前記スイッチング回路を介して前記標準転送回路に接続され、一方で、前記論理回路が前記スイッチング回路を設定して、前記高速シリアル転送モードで動作させるときには、前記スイッチング回路を介して前記高速シリアル転送回路に接続される、請求項8に記載のシステム。
  10. メモリ・コントローラが、
    プッシュプル・トランシーバを備える標準転送回路と、
    高速シリアル転送回路と、をさらに備え、
    前記高速シリアル転送回路が、
    システム・クロック速度を速めるフェーズ・ロックド・ループ回路とシリアル/デシリアル回路を備える処理回路と、
    前記処理回路からシリアル・ディジタル・データを引き出して、前記シリアル・ディジタル・データを、正と負の成分を含むシリアル差動形式に変換するように構成された送信差動増幅器と、
    シリアル差動データを受け取って、前記シリアル差動データをシリアル・ディジタル形式に変換して、前記シリアル・ディジタル・データを前記処理回路に出力するように構成された受信シリアル差動増幅器と、
    を備える請求項8に記載のシステム。
JP2003381101A 2002-11-15 2003-11-11 メモリ構成要素内でデータを管理するメモリ・コントローラ Pending JP2004171561A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/295,651 US20040098545A1 (en) 2002-11-15 2002-11-15 Transferring data in selectable transfer modes

Publications (1)

Publication Number Publication Date
JP2004171561A true JP2004171561A (ja) 2004-06-17

Family

ID=29735801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003381101A Pending JP2004171561A (ja) 2002-11-15 2003-11-11 メモリ構成要素内でデータを管理するメモリ・コントローラ

Country Status (4)

Country Link
US (1) US20040098545A1 (ja)
JP (1) JP2004171561A (ja)
DE (1) DE10334423A1 (ja)
GB (1) GB2395585B (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006082793A1 (ja) * 2005-02-07 2006-08-10 Matsushita Electric Industrial Co., Ltd. SD(Secure Digital)カード、ホストコントローラ
JP2008523499A (ja) * 2004-12-09 2008-07-03 ラムバス・インコーポレーテッド ワークロード適応型エンコード/デコードを備えるメモリインターフェース
JP2010508600A (ja) * 2006-10-31 2010-03-18 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド デュアルモードメモリ相互接続を備えたメモリコントローラ
JP2010512588A (ja) * 2006-12-12 2010-04-22 モサイド・テクノロジーズ・インコーポレーテッド 直列および並列モードを有するメモリシステムおよび方法
WO2011070837A1 (en) * 2009-12-09 2011-06-16 Kabushiki Kaisha Toshiba Semiconductor device and memory system
JP2011527041A (ja) * 2008-07-02 2011-10-20 マイクロン テクノロジー, インク. マルチモードメモリデバイス及び方法
JP2012059348A (ja) * 2010-09-03 2012-03-22 Samsung Electronics Co Ltd 半導体メモリ装置
JP2013529813A (ja) * 2010-06-22 2013-07-22 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 帯域幅適応型メモリ圧縮
JP2014225296A (ja) * 2014-08-13 2014-12-04 株式会社東芝 ホスト機器
CN104471590A (zh) * 2012-02-05 2015-03-25 麦修斯资源有限公司 输送系统和将数据与输送系统正运送的物品相关联的方法
JP2022534451A (ja) * 2019-08-05 2022-07-29 サイプレス セミコンダクター コーポレーション バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6471635B1 (en) * 2000-02-10 2002-10-29 Obtech Medical Ag Anal incontinence disease treatment with controlled wireless energy supply
US6464628B1 (en) * 1999-08-12 2002-10-15 Obtech Medical Ag Mechanical anal incontinence
CA2695722C (en) 2000-02-10 2015-04-21 Urologica Ag Controlled urinary incontinence treatment
ATE391468T1 (de) 2000-02-10 2008-04-15 Potencia Medical Ag Mechanische vorrichtung zur impotenzbehandlung
BR0108142B1 (pt) * 2000-02-11 2009-01-13 aparelho para tratamento controlado da impotência.
WO2001047441A2 (en) * 2000-02-14 2001-07-05 Potencia Medical Ag Penile prosthesis
AU778113B2 (en) 2000-02-14 2004-11-18 Implantica Patent Ltd. Male impotence prosthesis apparatus with wireless energy supply
FI20035041A0 (fi) * 2003-03-31 2003-03-31 Nokia Corp Menetelmä tiedon tallentamiseksi muistiin, järjestelmä, elektroniikkalaite ja muistikortti
US6961269B2 (en) * 2003-06-24 2005-11-01 Micron Technology, Inc. Memory device having data paths with multiple speeds
US20040268046A1 (en) * 2003-06-27 2004-12-30 Spencer Andrew M Nonvolatile buffered memory interface
US7673080B1 (en) * 2004-02-12 2010-03-02 Super Talent Electronics, Inc. Differential data transfer for flash memory card
JP3989472B2 (ja) * 2004-07-30 2007-10-10 シャープ株式会社 画像データ処理回路およびそれを備えてなる画像処理装置
US20060069857A1 (en) * 2004-09-24 2006-03-30 Nec Laboratories America, Inc. Compression system and method
CA2594177C (en) 2004-12-27 2012-10-16 Research In Motion Limited Memory full pipeline
WO2006071884A2 (en) * 2004-12-27 2006-07-06 The Regents Of The University Of Michigan Oligonucleotide based therapeutics
JP2006343815A (ja) * 2005-06-07 2006-12-21 Matsushita Electric Ind Co Ltd 通信装置、通信方法、通信システム
US20070006300A1 (en) * 2005-07-01 2007-01-04 Shay Zamir Method and system for detecting a malicious packed executable
JP2007287085A (ja) * 2006-04-20 2007-11-01 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP2007287084A (ja) * 2006-04-20 2007-11-01 Fuji Xerox Co Ltd 画像処理装置及びプログラム
RU2315372C1 (ru) * 2006-06-13 2008-01-20 Российская Федерация в лице Федерального агентства по атомной энергии Репрограммируемое постоянное запоминающее устройство
JP4795138B2 (ja) * 2006-06-29 2011-10-19 富士ゼロックス株式会社 画像処理装置及びプログラム
JP4979287B2 (ja) 2006-07-14 2012-07-18 富士ゼロックス株式会社 画像処理装置及びプログラム
US20080104352A1 (en) * 2006-10-31 2008-05-01 Advanced Micro Devices, Inc. Memory system including a high-speed serial buffer
US7861140B2 (en) * 2006-10-31 2010-12-28 Globalfoundries Inc. Memory system including asymmetric high-speed differential memory interconnect
US20080120315A1 (en) * 2006-11-21 2008-05-22 Nokia Corporation Signal message decompressor
US7587571B2 (en) * 2006-11-29 2009-09-08 Qimonda Ag Evaluation unit in an integrated circuit
US20080228998A1 (en) * 2007-03-16 2008-09-18 Spansion Llc Memory storage via an internal compression algorithm
US8566695B2 (en) * 2007-03-30 2013-10-22 Sandisk Technologies Inc. Controlling access to digital content
AU2009209514A1 (en) * 2008-01-28 2009-08-06 Milux Holding Sa An implantable drainage device
EP4342517A3 (en) 2008-01-29 2024-06-12 Implantica Patent Ltd. Apparatus for treating reflux disease (gerd) and obesity
US8521979B2 (en) 2008-05-29 2013-08-27 Micron Technology, Inc. Memory systems and methods for controlling the timing of receiving read data
US7979757B2 (en) 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
US8756486B2 (en) 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US7855931B2 (en) 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8127204B2 (en) 2008-08-15 2012-02-28 Micron Technology, Inc. Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system
AU2009302955B2 (en) 2008-10-10 2017-01-05 Implantica Patent Ltd. Fastening means for implantable medical control assembly
US8600510B2 (en) 2008-10-10 2013-12-03 Milux Holding Sa Apparatus, system and operation method for the treatment of female sexual dysfunction
EP3120896A1 (en) 2008-10-10 2017-01-25 Kirk Promotion LTD. A system, an apparatus, and a method for treating a sexual dysfunctional female patient
CA3004121C (en) 2008-10-10 2020-06-16 Medicaltree Patent Ltd. Heart help device, system, and method
US8469874B2 (en) 2008-10-10 2013-06-25 Milux Holding Sa Heart help device, system, and method
EP3851076A1 (en) 2008-10-10 2021-07-21 MedicalTree Patent Ltd. An improved artificial valve
US10952836B2 (en) 2009-07-17 2021-03-23 Peter Forsell Vaginal operation method for the treatment of urinary incontinence in women
US9949812B2 (en) 2009-07-17 2018-04-24 Peter Forsell Vaginal operation method for the treatment of anal incontinence in women
US8510487B2 (en) * 2010-02-11 2013-08-13 Silicon Image, Inc. Hybrid interface for serial and parallel communication
TWI401570B (zh) * 2010-03-30 2013-07-11 Imicro Technology Ltd 用於差分資料傳輸之快閃記憶卡
US8217813B2 (en) 2010-04-29 2012-07-10 Advanced Micro Devices, Inc. System and method for low-latency data compression/decompression
KR101649357B1 (ko) * 2010-05-10 2016-08-19 삼성전자주식회사 데이터 저장 장치, 그것의 동작 방법, 그리고 그것을 포함한 스토리지 서버
US8400808B2 (en) 2010-12-16 2013-03-19 Micron Technology, Inc. Phase interpolators and push-pull buffers
US8760188B2 (en) 2011-06-30 2014-06-24 Silicon Image, Inc. Configurable multi-dimensional driver and receiver
US9071243B2 (en) 2011-06-30 2015-06-30 Silicon Image, Inc. Single ended configurable multi-mode driver
US20130268726A1 (en) * 2011-07-01 2013-10-10 Xin Guo Dual Mode Write Non-Volatile Memory System
US8885435B2 (en) 2012-09-18 2014-11-11 Silicon Image, Inc. Interfacing between integrated circuits with asymmetric voltage swing
US9306563B2 (en) 2013-02-19 2016-04-05 Lattice Semiconductor Corporation Configurable single-ended driver
US9171597B2 (en) 2013-08-30 2015-10-27 Micron Technology, Inc. Apparatuses and methods for providing strobe signals to memories
US9141541B2 (en) 2013-09-20 2015-09-22 Advanced Micro Devices, Inc. Nested channel address interleaving
US20180107728A1 (en) * 2014-12-31 2018-04-19 International Business Machines Corporation Using tombstone objects to synchronize deletes
US20180107535A1 (en) * 2014-12-31 2018-04-19 International Business Machines Corporation Vault redundancy reduction within a dispersed storage network
US20180101434A1 (en) * 2014-12-31 2018-04-12 International Business Machines Corporation Listing types in a distributed storage system
US10656866B2 (en) * 2014-12-31 2020-05-19 Pure Storage, Inc. Unidirectional vault synchronization to support tiering
US10095421B2 (en) 2016-10-21 2018-10-09 Advanced Micro Devices, Inc. Hybrid memory module bridge network and buffers
US10394468B2 (en) * 2017-02-23 2019-08-27 International Business Machines Corporation Handling data slice revisions in a dispersed storage network
US10635602B2 (en) 2017-11-14 2020-04-28 International Business Machines Corporation Address translation prior to receiving a storage reference using the address to be translated
US10901738B2 (en) 2017-11-14 2021-01-26 International Business Machines Corporation Bulk store and load operations of configuration state registers
US10698686B2 (en) 2017-11-14 2020-06-30 International Business Machines Corporation Configurable architectural placement control
US10761751B2 (en) 2017-11-14 2020-09-01 International Business Machines Corporation Configuration state registers grouped based on functional affinity
US10642757B2 (en) 2017-11-14 2020-05-05 International Business Machines Corporation Single call to perform pin and unpin operations
US10592164B2 (en) 2017-11-14 2020-03-17 International Business Machines Corporation Portions of configuration state registers in-memory
US10761983B2 (en) * 2017-11-14 2020-09-01 International Business Machines Corporation Memory based configuration state registers
US10664181B2 (en) 2017-11-14 2020-05-26 International Business Machines Corporation Protecting in-memory configuration state registers
US10496437B2 (en) 2017-11-14 2019-12-03 International Business Machines Corporation Context switch by changing memory pointers
US10558366B2 (en) 2017-11-14 2020-02-11 International Business Machines Corporation Automatic pinning of units of memory
US11593026B2 (en) 2020-03-06 2023-02-28 International Business Machines Corporation Zone storage optimization using predictive protocol patterns

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0361679U (ja) * 1989-10-17 1991-06-17
JPH04117589A (ja) * 1990-09-07 1992-04-17 Sharp Corp Icカード
JPH07168671A (ja) * 1993-12-16 1995-07-04 Matsushita Electric Ind Co Ltd 入出力制御装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8006A (en) * 1851-04-01 Horseshoe-nail machine
JP2862177B2 (ja) * 1989-07-19 1999-02-24 株式会社東芝 Icカードおよびicカードの制御方法
US5237460A (en) * 1990-12-14 1993-08-17 Ceram, Inc. Storage of compressed data on random access storage devices
JP3173171B2 (ja) * 1991-12-19 2001-06-04 カシオ計算機株式会社 情報転送システム
US5553306A (en) * 1992-12-29 1996-09-03 International Business Machines Corporation Method and apparatus for controlling parallel port drivers in a data processing system
US5488711A (en) * 1993-04-01 1996-01-30 Microchip Technology Incorporated Serial EEPROM device and associated method for reducing data load time using a page mode write cache
JPH1020974A (ja) * 1996-07-03 1998-01-23 Fujitsu Ltd バス構造及び入出力バッファ
US6721860B2 (en) * 1998-01-29 2004-04-13 Micron Technology, Inc. Method for bus capacitance reduction
TW587252B (en) * 2000-01-18 2004-05-11 Hitachi Ltd Semiconductor memory device and data processing device
US6404647B1 (en) * 2000-08-24 2002-06-11 Hewlett-Packard Co. Solid-state mass memory storage device
JP2002086702A (ja) * 2000-09-12 2002-03-26 Canon Inc 記録機構、インクジェット記録装置及び記録装置付き撮像装置
US7089390B2 (en) * 2001-02-16 2006-08-08 Broadcom Corporation Apparatus and method to reduce memory footprints in processor architectures
US6854045B2 (en) * 2001-06-29 2005-02-08 Intel Corporation Hardware emulation of parallel ATA drives with serial ATA interface
US6845420B2 (en) * 2001-10-11 2005-01-18 International Business Machines Corporation System for supporting both serial and parallel storage devices on a connector
CN1582469A (zh) * 2001-11-01 2005-02-16 迈特尔股份有限公司 数字音频装置
US20030158991A1 (en) * 2002-02-01 2003-08-21 Klaus-Peter Deyring Transceiver circuitry for sending and detecting OOB signals on serial ATA buses

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0361679U (ja) * 1989-10-17 1991-06-17
JPH04117589A (ja) * 1990-09-07 1992-04-17 Sharp Corp Icカード
JPH07168671A (ja) * 1993-12-16 1995-07-04 Matsushita Electric Ind Co Ltd 入出力制御装置

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008523499A (ja) * 2004-12-09 2008-07-03 ラムバス・インコーポレーテッド ワークロード適応型エンコード/デコードを備えるメモリインターフェース
WO2006082793A1 (ja) * 2005-02-07 2006-08-10 Matsushita Electric Industrial Co., Ltd. SD(Secure Digital)カード、ホストコントローラ
JP2010508600A (ja) * 2006-10-31 2010-03-18 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド デュアルモードメモリ相互接続を備えたメモリコントローラ
JP2010512588A (ja) * 2006-12-12 2010-04-22 モサイド・テクノロジーズ・インコーポレーテッド 直列および並列モードを有するメモリシステムおよび方法
JP2014017005A (ja) * 2006-12-12 2014-01-30 Mosaid Technologies Inc 直列および並列モードを有するメモリシステムおよび方法
JP2011527041A (ja) * 2008-07-02 2011-10-20 マイクロン テクノロジー, インク. マルチモードメモリデバイス及び方法
US11762800B2 (en) 2009-12-09 2023-09-19 Kioxia Corporation Semiconductor device and memory system
JP2011123609A (ja) * 2009-12-09 2011-06-23 Toshiba Corp 半導体装置及びメモリシステム
WO2011070837A1 (en) * 2009-12-09 2011-06-16 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US8781024B2 (en) 2009-12-09 2014-07-15 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US12141091B2 (en) 2009-12-09 2024-11-12 Kioxia Corporation Semiconductor device and memory system
US10877917B2 (en) 2009-12-09 2020-12-29 Toshiba Memory Corporation Semiconductor device and memory system
US9111048B2 (en) 2009-12-09 2015-08-18 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US9471527B2 (en) 2009-12-09 2016-10-18 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US11176079B2 (en) 2009-12-09 2021-11-16 Toshiba Memory Corporation Semiconductor device and memory system
US9720870B2 (en) 2009-12-09 2017-08-01 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US9996493B2 (en) 2009-12-09 2018-06-12 Toshiba Memory Corporation Semiconductor device and memory system
US10482052B2 (en) 2009-12-09 2019-11-19 Toshiba Memory Corporation Semiconductor device and memory system
JP2013529813A (ja) * 2010-06-22 2013-07-22 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 帯域幅適応型メモリ圧縮
JP2012059348A (ja) * 2010-09-03 2012-03-22 Samsung Electronics Co Ltd 半導体メモリ装置
CN104471590B (zh) * 2012-02-05 2017-06-09 麦修斯资源有限公司 输送系统和将数据与输送系统正运送的物品相关联的方法
CN104471590A (zh) * 2012-02-05 2015-03-25 麦修斯资源有限公司 输送系统和将数据与输送系统正运送的物品相关联的方法
JP2014225296A (ja) * 2014-08-13 2014-12-04 株式会社東芝 ホスト機器
JP2022534451A (ja) * 2019-08-05 2022-07-29 サイプレス セミコンダクター コーポレーション バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法
US11449441B2 (en) 2019-08-05 2022-09-20 Cypress Semiconductor Corporation Multi-ported nonvolatile memory device with bank allocation and related systems and methods
JP7185804B2 (ja) 2019-08-05 2022-12-07 サイプレス セミコンダクター コーポレーション バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法
JP7216247B1 (ja) 2019-08-05 2023-01-31 サイプレス セミコンダクター コーポレーション バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法
JP2023018104A (ja) * 2019-08-05 2023-02-07 サイプレス セミコンダクター コーポレーション バンク割り当てを備えたマルチポート不揮発性メモリデバイスおよび関連するシステムおよび方法

Also Published As

Publication number Publication date
DE10334423A1 (de) 2004-06-03
US20040098545A1 (en) 2004-05-20
GB2395585B (en) 2005-08-03
GB2395585A (en) 2004-05-26
GB0325847D0 (en) 2003-12-10

Similar Documents

Publication Publication Date Title
JP2004171561A (ja) メモリ構成要素内でデータを管理するメモリ・コントローラ
US7111142B2 (en) System for quickly transferring data
US7039780B2 (en) Digital camera memory system
JP5378378B2 (ja) 変更検出を許容するコード化リムーバブル記憶装置
TW386207B (en) Memory card interface apparatus
US6601056B1 (en) Method and apparatus for automatic format conversion on removable digital media
US7478260B2 (en) System and method for setting a clock rate in a memory card
JP2004362530A (ja) 最良の圧縮管理メカニズムを具えたストレージデバイス
JP2004348945A (ja) データ圧縮機能を有する取外し可能記憶装置
JPH07505001A (ja) バッファ及びフレーム索引作成
US20110181756A1 (en) Image processing apparatus and electronic camera that reduce the length of time required to complete reproduction of recorded image data
US7415588B2 (en) Electronic device with an automatic backup function
US20060282472A1 (en) System and method for data transmission management
WO2002063451A1 (en) A portable storage medium for digital picture data
US20060109752A1 (en) Direct connection of a data storage device and a consumer electronic device
JP2004265343A (ja) メモリカード
JPH0546461A (ja) メモリカード装置
CN1249568C (zh) 动态图像摄影机的数字式动态与静态图像捉取转接器
JP3552280B2 (ja) 情報転送装置及び情報記録装置
JP3100146U (ja) 圧縮管理メカニズムを具えたストレージデバイス
JPH0547189A (ja) メモリカード装置
GB2402514A (en) Storage device for compressing data for writing to solid state memory
CN1225696C (zh) 多接口无线储存装置
JPH0546459A (ja) メモリカード装置
JP3100145U (ja) 拡張可能なストレージデバイス

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20061012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100226

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100525

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100525

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100625

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110524

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110712

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20110826