JPWO2006035500A1 - Data storage system and memory card - Google Patents

Data storage system and memory card Download PDF

Info

Publication number
JPWO2006035500A1
JPWO2006035500A1 JP2006537602A JP2006537602A JPWO2006035500A1 JP WO2006035500 A1 JPWO2006035500 A1 JP WO2006035500A1 JP 2006537602 A JP2006537602 A JP 2006537602A JP 2006537602 A JP2006537602 A JP 2006537602A JP WO2006035500 A1 JPWO2006035500 A1 JP WO2006035500A1
Authority
JP
Japan
Prior art keywords
data
target
bit
memory card
storage system
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
JP2006537602A
Other languages
Japanese (ja)
Inventor
鈴木 慎一
慎一 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Publication of JPWO2006035500A1 publication Critical patent/JPWO2006035500A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

例えば、ターゲット側のメモリ内容を5A’hとして、イニシエータからターゲットに向けたデータ転送により、当該メモリ内容を5B’hに更新する場合を例とすると、イニシエータは、ターゲットに向けて、更新有りのビットを‘1’、更新無しのビットを‘0’とする各ビット毎の更新有無を示すデータ01’hを送信し、ターゲットは、01’hのデータを受けて、自身のメモリ内容のデータの中から更新有りのビットに該当するビット(ここでは最後のビット)のデータを反転して再格納する。  For example, in the case where the memory content on the target side is 5A′h and the memory content is updated to 5B′h by data transfer from the initiator to the target, for example, the initiator is updated toward the target. The data 01'h indicating the presence / absence of update for each bit is transmitted with the bit set to '1' and the bit without update to '0', and the target receives the data of 01'h and receives the data of its own memory The data of the bit corresponding to the updated bit (in this case, the last bit) is inverted and stored again.

Description

本発明は、データ記憶システムおよびメモリカードに関し、特に、メモリカードを代表とするストレージ機器とこれに対してデータを読み書きするイニシエータとを含めたデータ記憶システムに適用して有効な技術に関するものである。   The present invention relates to a data storage system and a memory card, and more particularly to a technique effective when applied to a data storage system including a storage device represented by a memory card and an initiator for reading and writing data to and from the storage device. .

本発明者が検討したところによれば、データ記憶システムの技術に関しては、以下のような技術が考えられる。   According to a study by the present inventor, the following technologies can be considered for the data storage system.

例えば、SD(Secure Digital)メモリカードやメモリースティック(登録商標)などの各種メモリカード規格、USB(Universal Serial Bus)やIEEE(the Institute of Electrical and Electronics Engineers)1394などのネットワーク型の通信形態をとるシリアルバス規格、及びATA(AT Attachment)やSCSI(Small Computer System Interface)などのストレージ関連規格では、バス上のデータ転送は、特に最適化されない生のデータを用いて行われる。   For example, various memory card standards such as SD (Secure Digital) memory card and Memory Stick (registered trademark), USB (Universal Serial Bus) and IEEE (the Institute of Electrical and Electronics Engineers) 1394 network communication type communication type such as 1394. In the bus standard and storage-related standards such as ATA (AT Attachment) and SCSI (Small Computer System Interface), data transfer on the bus is performed using raw data that is not particularly optimized.

すなわち、例えば図6に示すようなデータ転送となる。図6は、本発明の前提として検討した従来技術のデータ記憶システムにおいて、そのデータ転送方式の一例を説明する図であり、(a)はシステム構成の簡略図、(b)は動作フロー図である。図6では、データ送信側をイニシエータ60、受信側をターゲット61とし、イニシエータ60が、ターゲット61の5A’h(16進数で「5A」、以降同様の表記を用いる)の値を持つメモリ空間のN番地(Nは0以上の整数)に1バイトのデータA(=5B’h)を書き込む場合を例としている。この場合、下記(1)〜(6)のような処理が行われる。   That is, for example, data transfer as shown in FIG. 6A and 6B are diagrams for explaining an example of the data transfer method in the conventional data storage system examined as a premise of the present invention. FIG. 6A is a simplified diagram of the system configuration, and FIG. 6B is an operation flow diagram. is there. In FIG. 6, the data transmission side is an initiator 60, the reception side is a target 61, and the initiator 60 is a memory space having a value of 5A'h (hexadecimal "5A", the same notation is used hereinafter) of the target 61. In this example, 1-byte data A (= 5B′h) is written at address N (N is an integer of 0 or more). In this case, the following processes (1) to (6) are performed.

(1)イニシエータ60は、ターゲット61に書き込み先頭アドレス(=N)と書き込みサイズ(=1バイト)を設定し、ライトコマンドを送信する。   (1) The initiator 60 sets a write head address (= N) and a write size (= 1 byte) in the target 61, and transmits a write command.

(2)ターゲット61は、イニシエータ60からライトコマンドを受信すると、その内容を解析し、書き込みアドレスとサイズを抽出する。   (2) Upon receiving a write command from the initiator 60, the target 61 analyzes the content and extracts the write address and size.

(3)抽出後、ターゲット61は、イニシエータ60からのデータ受信の準備をする。   (3) After extraction, the target 61 prepares for data reception from the initiator 60.

(4)イニシエータ60は、ターゲット61に生のデータA(=5B’h)を送信する。   (4) The initiator 60 transmits raw data A (= 5 B′h) to the target 61.

(5)ターゲット61は、イニシエータ60からデータAを受信する。   (5) The target 61 receives data A from the initiator 60.

(6)ターゲット61は、自身の対応するメモリ空間(ここではN番地からの1バイト分)をデータAに更新する。   (6) The target 61 updates its corresponding memory space (here, one byte from address N) to data A.

ところで、前記のようなデータ記憶システムの技術について、本発明者が検討した結果、以下のようなことが明らかとなった。   By the way, as a result of examination by the present inventor on the technology of the data storage system as described above, the following has been clarified.

例えば、図6で述べたようなデータ転送方式においては、イニシエータとターゲットとの間で生のデータが転送されるため、特に、対応するアドレスのデータ内容の変化が転送前と転送後で少ない場合に、例えば、以下のような問題が発生する。   For example, in the data transfer method as described in FIG. 6, since raw data is transferred between the initiator and the target, the change in the data content of the corresponding address is particularly small before and after the transfer. For example, the following problems occur.

(1)ターゲット側で、受信データを自身のメモリやレジスタに書き込み更新する場合、全て上書きを行うと電力と時間を無駄に消費する。また、データバスにおいて、‘H’および‘L’の論理信号が高頻度で変化するため、ノイズや無駄な電力が発生する。   (1) On the target side, when the received data is written and updated in its own memory or register, if all are overwritten, power and time are wasted. Further, in the data bus, the logic signals of “H” and “L” change with high frequency, so that noise and useless power are generated.

(2)そこで、ターゲット側で、更新するビットのみに着目してデータ更新を行う方法が考えられるが、その更新するビットの検出に手間を要す。すなわち、データ更新は、更新が必要なビットのみを反転する方法を用いると効率が向上する。しかし、その方法を適用した場合、生データを基に反転するビットを検出する際に、更新前のメモリの内容と生データの内容を比較する必要があり効率が低下する。   (2) Therefore, on the target side, a method of updating data by focusing only on the bit to be updated can be considered, but it takes time to detect the bit to be updated. That is, the efficiency of data update is improved by using a method of inverting only the bits that need to be updated. However, when this method is applied, when detecting the bit to be inverted based on the raw data, it is necessary to compare the contents of the memory before update with the contents of the raw data, resulting in a reduction in efficiency.

(3)一般に、メモリへのアクセスは、デバイスドライバなどのシステムソフトウエアで行う場合が多い。システムソフトウエアは、アセンブラ言語やC言語などビット演算に適した言語で作成されるので、生データを扱うのは効率が良くない。   (3) In general, access to the memory is often performed by system software such as a device driver. Since system software is created in a language suitable for bit operations such as assembler language and C language, it is not efficient to handle raw data.

そこで、本発明の目的は、データを記憶する際の時間的な効率を向上させることが可能なデータ記憶システムおよびメモリカードを提供することにある。   Accordingly, an object of the present invention is to provide a data storage system and a memory card capable of improving the time efficiency when storing data.

また、本発明の他の目的は、データを記憶する際に省電力化を可能にするデータ記憶システムおよびメモリカードを提供することにある。   Another object of the present invention is to provide a data storage system and a memory card that can save power when data is stored.

本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。   The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。   Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows.

本発明によるデータ記憶システムは、データの反転が必要な場合とデータの保持が必要な場合とでそれぞれ異なる信号レベルを備えた第1データを送信するイニシエータと、予め第2データが記憶され、第1データを受信し、第1データの前記信号レベルに基づいて第2データを反転または保持することで第2データを更新するターゲットとを有するものである。   In the data storage system according to the present invention, an initiator that transmits first data having different signal levels when data inversion is required and data holding is required, and second data is stored in advance. And a target for updating the second data by inverting or holding the second data based on the signal level of the first data.

すなわち、ターゲットのメモリ等を更新する際に、従来技術のようにターゲットに向けて生データを送信することで更新を行うのではなく、ターゲットのメモリ等に既に記憶されているデータを反転するか否かの情報を送信することで更新を行う。これによって、ターゲットのメモリ等において、例えば、‘H’データを‘H’データに、または‘L’データを‘L’データに上書き更新するような処理を低減でき、書き込み時間の効率化や書き込み電力の効率化を図ることが可能になる。   In other words, when updating the target memory, etc., whether to update the data already stored in the target memory, etc., instead of updating by sending raw data to the target as in the prior art Update is done by sending information on whether or not. As a result, in the target memory or the like, for example, the process of overwriting and updating 'H' data to 'H' data or 'L' data to 'L' data can be reduced. It becomes possible to improve the efficiency of electric power.

ここで、前記ターゲットとしては、例えば、ストレージ機器などが挙げられる。   Here, examples of the target include a storage device.

また、本発明によるデータ記憶システムは、データを送信するイニシエータと、前記送信したデータを受信するターゲットとを有するものである。そして、イニシエータは、ターゲットに記憶されている複数ビットの第2データに対して、反転が必要となるビットと反転が不必要となるビットをそれぞれ第1の信号レベルと第2の信号レベルに対応させた複数ビットの第1データを形成し、この複数ビットの第1データを前記ターゲットに向けて送信するものとなっている。一方、ターゲットは、複数ビットの第1データを受信し、この受信した複数ビットの第1データの中から第1の信号レベルに該当するビットを検出し、複数ビットの第2データに対して、当該検出したビットに対応するビットのデータを反転することで第2データの記憶を更新するものとなっている。   A data storage system according to the present invention includes an initiator that transmits data and a target that receives the transmitted data. Then, the initiator corresponds to the first signal level and the second signal level for the bit that needs to be inverted and the bit that does not need to be inverted with respect to the second data of the plurality of bits stored in the target. The plurality of bits of the first data are formed, and the plurality of bits of the first data are transmitted to the target. On the other hand, the target receives first data of a plurality of bits, detects a bit corresponding to the first signal level from the received first data of the plurality of bits, and for the second data of the plurality of bits, The storage of the second data is updated by inverting the bit data corresponding to the detected bit.

すなわち、イニシエータからターゲットのメモリ等に向けて、例えば、1バイトのデータを書き込むような場合、その1バイト中の8ビットの中で第1の信号レベルとなっているビットがあった場合に、そのビットに対応するメモリ等内のビットのデータを反転し、メモリ等のデータの更新を行う。   That is, for example, when writing 1-byte data from the initiator to the target memory or the like, when there is a bit having the first signal level among the 8 bits in the 1-byte, The bit data in the memory or the like corresponding to the bit is inverted, and the data in the memory or the like is updated.

ここで、前記ターゲットでは、例えば、ターゲットが備えたコンピュータを用いてシステムソフトウエアの処理が行われ、このシステムソフトウエアの処理は、複数ビットの第1データに対し、それぞれのビットの信号レベルを判定するステップと、この判定したビットの信号レベルが第1の信号レベルであった場合に限り、複数ビットの第2データの中から当該判定したビットに対応するビットのデータを読み出し、この読み出したデータを反転して書き戻しを行うステップとを含むものとなっている。   Here, in the target, for example, system software processing is performed using a computer provided in the target, and the system software processing is performed by setting the signal level of each bit with respect to the first data of a plurality of bits. Only when the signal level of the determined bit and the determined bit is the first signal level, the bit data corresponding to the determined bit is read from the second data of the plurality of bits, and the read And a step of inverting the data and writing back.

すなわち、デバイスドライバ等のシステムソフトウエアの処理によって、ターゲットで受信したデータの信号レベルを判定して、この判定結果に基づいてメモリ等への書き込みを制御する機能を実現させる。   That is, the function of determining the signal level of data received by the target by processing of system software such as a device driver and controlling writing to the memory or the like based on the determination result is realized.

また、本発明によるメモリカードは、イニシエータから、書き込みアドレスを含むコマンドと、データの反転または保持に対応してそれぞれ異なる信号レベルが割り当てられたデータとが入力された際に、前記書き込みアドレスに記憶されているデータを、前記入力されたデータの信号レベルに基づいて反転または保持することで、前記書き込みアドレスに記憶されているデータの更新を行うものである。   The memory card according to the present invention stores the write address when a command including the write address and data assigned with different signal levels corresponding to inversion or retention of data are input from the initiator. The data stored in the write address is updated by inverting or holding the stored data based on the signal level of the input data.

ここで、メモリカードとしては、例えば、SDメモリカードまたはMMCカードなどが挙げられる。この場合、前記コマンドとして、このようなメモリカードが一般的に備えているブロックまたは複数ブロックへの書き込みコマンドと同様なプロトコルを用いて、新たにブロックまたは複数ブロックへの書き込みコマンドを設けるとよい。   Here, examples of the memory card include an SD memory card and an MMC card. In this case, a new write command to a block or a plurality of blocks may be provided as the command using a protocol similar to a write command to a block or a plurality of blocks generally provided in such a memory card.

本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。   Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.

イニシエータからターゲットに向けて、ターゲットのメモリ等のデータを反転する場合と保持する場合とでそれぞれ異なる信号レベルを備えたデータを転送することで、データを記憶する際の時間的な効率を向上させることが可能になる。さらに、データを記憶する際に省電力化を図ることが可能になる。   Improving the time efficiency when storing data by transferring data with different signal levels depending on whether the data in the target memory or the like is inverted and retained from the initiator to the target It becomes possible. Furthermore, it is possible to save power when storing data.

本発明の一実施の形態によるデータ記憶システムにおいて、その構成の一例を示すシステム概略図である。1 is a system schematic diagram showing an example of the configuration of a data storage system according to an embodiment of the present invention. 本発明の一実施の形態によるデータ記憶システムにおいて、イニシエータとターゲットとの間のデータ転送方式を従来技術と比較して説明するための概念図である。FIG. 5 is a conceptual diagram for explaining a data transfer method between an initiator and a target in comparison with a conventional technique in a data storage system according to an embodiment of the present invention. 本発明の一実施の形態によるデータ記憶システムにおいて、その動作の一例を示す図であり、(a)はシステム構成の簡略図、(b)は動作フロー図である。In the data storage system by one embodiment of this invention, it is a figure which shows an example of the operation | movement, (a) is a simplified diagram of system configuration, (b) is an operation | movement flowchart. 本発明の一実施の形態によるデータ記憶システムにおいて、従来技術のデータ転送方式を用いた場合と本発明のデータ転送方式を用いた場合とで、ターゲットのシステムソフトウエア処理を対比する図であり、(a)は従来技術を用いた場合の処理フローの一例、(b)は本発明を用いた場合の処理フローの一例である。In the data storage system according to an embodiment of the present invention, it is a diagram comparing the system software processing of the target in the case of using the conventional data transfer method and the case of using the data transfer method of the present invention, (A) is an example of a processing flow when the conventional technique is used, and (b) is an example of a processing flow when the present invention is used. 本発明の一実施の形態のデータ記憶システムにおいて、ターゲットにメモリカードを用いる場合に定義されるメモリカードのコマンド仕様の一例を示す説明図であり、(a)は、CMD60の仕様例、(b)は、CMD61の仕様例を示すものである。In the data storage system of one embodiment of this invention, it is explanatory drawing which shows an example of the command specification of the memory card defined when using a memory card as a target, (a) is a specification example of CMD60, (b ) Shows a specification example of CMD61. 本発明の前提として検討した従来技術のデータ記憶システムにおいて、そのデータ転送方式の一例を説明する図であり、(a)はシステム構成の簡略図、(b)は動作フロー図である。In the data storage system of the prior art examined as a premise of the present invention, it is a figure explaining an example of the data transfer system, (a) is a simplified diagram of the system configuration, (b) is an operation flow diagram.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.

図1は、本発明の一実施の形態によるデータ記憶システムにおいて、その構成の一例を示すシステム概略図である。図1に示すデータ記憶システムは、データを送信するイニシエータ10と、データを受信するターゲット11から構成され、イニシエータ10とターゲット11との間が通信ネットワーク12で接続されている。イニシエータ10およびターゲット11としては、例えば、メモリカードホスト機器、USB機器、またはIEEE1394機器などが挙げられる。   FIG. 1 is a system schematic diagram showing an example of the configuration of a data storage system according to an embodiment of the present invention. The data storage system shown in FIG. 1 includes an initiator 10 that transmits data and a target 11 that receives data, and the initiator 10 and the target 11 are connected by a communication network 12. Examples of the initiator 10 and the target 11 include a memory card host device, a USB device, and an IEEE 1394 device.

イニシエータ10およびターゲット11は、それぞれ同様な構成となっており、例えば、アプリケーション13aと、ファイルシステム13bと、デバイスドライバ13cと、インタフェースコントローラ13dと、メモリおよび/またはレジスタ等を備えた記憶部13eとを含むものとなっている。   The initiator 10 and the target 11 have the same configuration, for example, an application 13a, a file system 13b, a device driver 13c, an interface controller 13d, and a storage unit 13e including a memory and / or a register. Is included.

アプリケーション13aは、例えば、フォルダやファイルの操作を行う機能を備えたエクスプローラや、音楽データの再生機能等を備えたオーディオプレーヤーなどといったソフトウエアである。ファイルシステム13bは、例えば、アプリケーション13aによって処理が可能なように、デバイスドライバ13cを介して入出力したデータをファイルに変換するシステムソフトウエアである。具体例としては、FAT16やFAT32などのFAT(File Allocation Table)準拠のもの等が挙げられる。デバイスドライバ13cは、インタフェースコントローラ13dの制御や、トランザクションおよびコマンドシーケンスの管理などを行うソフトウエアである。   The application 13a is software such as an explorer having a function of operating folders and files, an audio player having a music data reproduction function, and the like. The file system 13b is system software that converts data input / output via the device driver 13c into a file so that processing can be performed by the application 13a, for example. Specific examples include those conforming to FAT (File Allocation Table) such as FAT16 and FAT32. The device driver 13c is software that performs control of the interface controller 13d, management of transactions and command sequences, and the like.

なお、図1には示していないが、イニシエータ10およびターゲット11は、例えば、マイクロプロセッサ等のコンピュータを備えており、これによって前述したようなソフトウエアが実行される。また、前述したようなソフトウエアは、イニシエータ10およびターゲット11がPC(Personal Computer)等の場合、ファイルシステムを含むOSと、アプリケーションと、デバイスドライバといった構成でもよい。   Although not shown in FIG. 1, the initiator 10 and the target 11 include, for example, a computer such as a microprocessor, and thereby the software as described above is executed. Further, the software as described above may be configured such as an OS including a file system, an application, and a device driver when the initiator 10 and the target 11 are PCs (Personal Computers) or the like.

インタフェースコントローラ13dは、イニシエータ10とターゲット11との間を接続した通信ネットワーク12を介して、コマンド送信、レスポンス受信、データ送受信などを行うハードウエアである。通信ネットワーク12は、例えば、メモリカードへの配線ライン、USBケーブル、IEEE1394ケーブルなどが挙げられ、通信ネットワーク12上では、電気的信号によりデータ転送が行われる。記憶部13eのメモリは、例えば、ファイルやシステムに必要なデータが格納され、レジスタは、例えば、機器の動作制御など特定の用途等に使用される。   The interface controller 13d is hardware that performs command transmission, response reception, data transmission / reception, and the like via the communication network 12 that connects the initiator 10 and the target 11. Examples of the communication network 12 include a wiring line to a memory card, a USB cable, an IEEE 1394 cable, and the like, and data transfer is performed by an electrical signal on the communication network 12. The memory of the storage unit 13e stores, for example, files and data necessary for the system, and the register is used for specific applications such as device operation control.

また、イニシエータ10とターゲット11との間のデータ転送は、必ずしも有線の通信ネットワークを用いて行う必要はなく、例えば、インタフェースコントローラ13dを無線コントローラとして、無線によるデータ転送であってもよい。   The data transfer between the initiator 10 and the target 11 is not necessarily performed using a wired communication network. For example, the data transfer may be performed wirelessly using the interface controller 13d as a wireless controller.

このようなシステム構成において、本発明の特徴は、デバイスドライバ13cおよびインタフェースコントローラ13dに新たな機能を持たせることで、図2に示すような新たなデータ転送方式に対応することにある。図2は、本発明の一実施の形態によるデータ記憶システムにおいて、イニシエータとターゲットとの間のデータ転送方式を従来技術と比較して説明するための概念図である。   In such a system configuration, the feature of the present invention resides in that a new function is provided to the device driver 13c and the interface controller 13d to cope with a new data transfer method as shown in FIG. FIG. 2 is a conceptual diagram for explaining the data transfer method between the initiator and the target in comparison with the prior art in the data storage system according to the embodiment of the present invention.

図2においては、例えば、ターゲット側のメモリ内容を5A’hとして、イニシエータからターゲットに向けたデータ転送により、当該メモリ内容を5B’hに更新する場合を想定している。まず、従来技術においては、イニシエータからターゲットに向けて生のデータである5B’h(2進数で「01011011」)が転送され、イニシエータ側のメモリ内容が5B’hに上書き格納される。   In FIG. 2, for example, it is assumed that the memory content on the target side is 5A'h, and the memory content is updated to 5B'h by data transfer from the initiator to the target. First, in the prior art, 5B′h (binary “01011011”), which is raw data, is transferred from the initiator to the target, and the memory content on the initiator side is overwritten and stored in 5B′h.

一方、本発明においては、イニシエータからターゲットに向けて、各ビット毎の更新有無を示すデータが転送される。すなわち、図2において、更新有りのビットに‘1’(‘H’レベル)を、更新無しのビットに‘0’(‘L’レベル)を設定した場合、最後のビットのみが更新有りとなるので01’hというデータを転送している。そして、ターゲット側は、01’hのデータを受けて、自身のメモリ内容のデータの中から更新有りのビットに該当するビット(ここでは最後のビット)のデータを反転して再格納する。   On the other hand, in the present invention, data indicating whether or not each bit is updated is transferred from the initiator to the target. That is, in FIG. 2, when “1” (“H” level) is set to the bits with update and “0” (“L” level) is set to the bits without update, only the last bit is updated. Therefore, the data 01'h is transferred. Then, the target side receives the data 01'h, inverts the data of the bit corresponding to the updated bit (the last bit in this case) from the data of its own memory contents, and stores it again.

通常、SDメモリカード、メモリースティックなどに対する各種メモリカード規格、USB、IEEE1394などネットワーク型の通信形態をとるシリアルバス規格、及びATAやSCSIなどのストレージ規格では、データはメモリやレジスタに割り当てられたアドレスと1対1に対応付けられる。また、メモリやレジスタへのアクセスは、ビットマップイメージで処理される。   Usually, in various memory card standards for SD memory cards, memory sticks, etc., serial bus standards such as USB and IEEE 1394, and storage standards such as ATA and SCSI, data is assigned to addresses assigned to memories and registers. One-to-one correspondence. Access to the memory and registers is processed with a bitmap image.

そこで、データをビットマップイメージで考え、データ転送により更新する(反転する)ビットを‘1’に、そのままの値を保持するビットを‘0’となるように変更する。そして、ターゲットに対して、更新する(反転する)ビット情報を持つデータを転送する。これによって、データ内容の変更が少ない場合には、メモリやレジスタの値のビット単位での更新が容易となり、データ更新の効率化などを図ることが可能になる。すなわち、具体的には、例えば次のような効果を得ることができる。   Therefore, the data is considered as a bitmap image, and the bit that is updated (inverted) by data transfer is changed to ‘1’, and the bit that holds the value is changed to ‘0’. Then, data having bit information to be updated (inverted) is transferred to the target. As a result, when there is little change in the data content, it is easy to update the value of the memory or register in bit units, and it is possible to improve the efficiency of data update. Specifically, for example, the following effects can be obtained.

(1)受信データを自身のメモリやレジスタに書き込み更新する場合、更新が必要なビットの検出が容易かつ効率的になり高速に処理できる。更に、書き込み更新に際し、更新が必要なビットのみに書き込みを行えばよい。したがって、例えば更新が必要なビットが少ない状況においては、全てのビットを上書き更新する場合に比べて書き込み時間を短縮でき、書き込みに伴う電力も節約できる。   (1) When the received data is written and updated in its own memory or register, it is easy and efficient to detect bits that need to be updated, and processing can be performed at high speed. Furthermore, when writing and updating, it is sufficient to write only to the bits that need to be updated. Therefore, for example, in a situation where there are few bits that need to be updated, the writing time can be shortened compared to the case where all bits are overwritten and updated, and the power associated with writing can be saved.

(2)データバスにおいて、論理信号が変化する頻度を低くできるため、ノイズや無駄な電力の発生を抑えられる。   (2) Since the frequency with which the logic signal changes in the data bus can be reduced, the generation of noise and wasteful power can be suppressed.

(3)ビット演算に適したデータを受信するため、システムソフトウエアでの処理を効率的に行える。   (3) Since data suitable for bit operation is received, processing by system software can be performed efficiently.

(4)受信データを書き込み更新する時間が短縮され、この時間を製品の他機能(マルチメディアデータのデコード等)に割り当てることができる。   (4) The time for writing and updating received data is shortened, and this time can be allocated to other functions of the product (decoding multimedia data, etc.).

(5)イニシエータとターゲットを含むシステム全体として、省電力化を図ることが可能になる。また、システムの開発期間(特に、ソフトウエア)が短縮できる。   (5) The entire system including the initiator and the target can save power. In addition, the system development period (especially software) can be shortened.

なお、このような効果は、転送するデータ内で更新する箇所が少ないほど大きくなる。一般に、文章などを更新し保存する場合は、更新する部分は少ない。それゆえ、USBフラッシュメモリ、ATA接続などのハードディスクといったデータの保存を目的としたストレージ機器などに適用して特に有益なものとなる。   Such an effect becomes more significant as the number of locations to be updated in the transferred data is smaller. In general, when updating and saving sentences, there are few parts to be updated. Therefore, the present invention is particularly useful when applied to a storage device for storing data such as a USB flash memory or a hard disk such as an ATA connection.

また、これに限らず、本発明は、転送するデータとメモリ/レジスタの対応するアドレスが1対1に対応付けられる製品全てに適用可能である。特に、ファイルシステムのシステム領域の更新は、セクタ単位(512バイト等)で行われ、更新する部分は2〜3バイト程度とわずかであり、また、前述した1対1の対応関係を備えている。したがって、このようなファイルシステムを持つ製品に適用した場合に効果が大きくなる。   Further, the present invention is not limited to this, and the present invention can be applied to all products in which data to be transferred and corresponding addresses of the memory / register are associated one-to-one. Particularly, the update of the system area of the file system is performed in units of sectors (512 bytes or the like), and the portion to be updated is as small as about 2 to 3 bytes, and has the one-to-one correspondence described above. . Therefore, the effect becomes large when applied to a product having such a file system.

つぎに、これまでに説明したようなデータ転送方式を用いたデータ記憶システム全体としての動作の一例を図3を用いて説明する。図3は、本発明の一実施の形態によるデータ記憶システムにおいて、その動作の一例を示す図であり、(a)はシステム構成の簡略図、(b)は動作フロー図である。   Next, an example of the operation of the entire data storage system using the data transfer method as described above will be described with reference to FIG. FIG. 3 is a diagram showing an example of the operation of the data storage system according to the embodiment of the present invention, where (a) is a simplified diagram of the system configuration and (b) is an operation flow diagram.

図3(a),(b)においては、イニシエータ30が、ターゲット31における5A’hの値を持つメモリ空間のN番地(Nは0以上の整数)に1バイトのデータA(=5B’h)を書き込む場合を想定している。以下、図3(b)中の番号に対応させて動作の説明を行う。   3A and 3B, the initiator 30 has 1-byte data A (= 5B′h) at the N address (N is an integer of 0 or more) of the memory space having the value of 5A′h in the target 31. ) Is assumed. The operation will be described below in correspondence with the numbers in FIG.

(1)イニシエータ30は、ターゲット31に対して、書き込み先頭アドレス(=N)と書き込みサイズ(=1)を設定し、ライトコマンドを送信する。   (1) The initiator 30 sets a write head address (= N) and a write size (= 1) to the target 31 and transmits a write command.

(2)ターゲット31は、イニシエータ30からライトコマンドを受信すると、その内容を解析し、書き込みアドレスとサイズを抽出する。   (2) Upon receiving a write command from the initiator 30, the target 31 analyzes the content and extracts the write address and size.

(3)抽出後、ターゲット31は、イニシエータ30からのデータ受信準備をする。   (3) After extraction, the target 31 prepares to receive data from the initiator 30.

(4)イニシエータ30は、ターゲット31に対して、更新が必要なビットの情報を持ったデータA’(=01’h(2進数で「00000001」))を送信する。この場合、生データA(=5B’h(2進数で「01011011」))を転送する場合と比べてデータの変化(‘0’→‘1’または‘1’→‘0’)が少ないので、データバスのノイズが抑えられる。   (4) The initiator 30 transmits data A ′ (= 01′h (“00000001” in binary number)) having information on bits that need to be updated to the target 31. In this case, since the data change ('0' → '1' or '1' → '0') is smaller than when the raw data A (= 5B'h (binary number "01011011")) is transferred. Data bus noise can be suppressed.

(5)ターゲット31は、イニシエータ30からデータA’を受信する。   (5) The target 31 receives data A ′ from the initiator 30.

(6)ターゲット31は、自身の対応するメモリをデータAに更新する。このデータ更新に際しては、更新が必要なビットのみをデータ反転する方法が用いられるが、データA’自体に更新が必要なビットの情報が備わっているので容易にこの更新方法を用いることが可能になる。   (6) The target 31 updates its corresponding memory to data A. When updating the data, a method of inverting only the bits that need to be updated is used. However, since the data A ′ itself has information on the bits that need to be updated, the updating method can be easily used. Become.

すなわち、本発明のデータ転送方式を用いることで、このような更新方法に伴うターゲット側のシステムソフトウエア処理等が、図4に示すように容易かつ効率的なものとなる。図4は、本発明の一実施の形態によるデータ記憶システムにおいて、従来技術のデータ転送方式を用いた場合と本発明のデータ転送方式を用いた場合とで、ターゲットのシステムソフトウエア処理を対比する図であり、(a)は従来技術を用いた場合の処理フローの一例、(b)は本発明を用いた場合の処理フローの一例である。   That is, by using the data transfer method of the present invention, the system software processing on the target side associated with such an updating method becomes easy and efficient as shown in FIG. FIG. 4 compares the target system software processing in the data storage system according to the embodiment of the present invention when the conventional data transfer method is used and when the data transfer method of the present invention is used. FIG. 4A is an example of a processing flow when the conventional technique is used, and FIG. 4B is an example of a processing flow when the present invention is used.

なお、ここでは、ターゲット31のN番地の内容(=データN)を更新する場合を例として説明する。まず、従来技術においては、例えば図4(a)に示すような処理フローとなり、以下のような処理が行われる。   Here, a case where the contents (= data N) of the N address of the target 31 are updated will be described as an example. First, in the prior art, for example, a processing flow as shown in FIG. 4A is performed, and the following processing is performed.

S401aにおいて、ターゲット31がデータAを受信する。そしてS402aに移行する。   In S401a, the target 31 receives the data A. Then, the process proceeds to S402a.

S402aにおいて、N番地のデータ更新のため、ターゲット31のメモリよりデータNを取り出す。そしてS403aに移行する。   In S402a, data N is extracted from the memory of the target 31 for updating the data at address N. Then, the process proceeds to S403a.

S403aにおいて、ビット取り出し用カウンタを初期化する。そしてS404aに移行する。   In S403a, a bit extraction counter is initialized. Then, the process proceeds to S404a.

S404aにおいて、データAのIビット目を取り出し、それをA[I]とする。そしてS405aに移行する。   In S404a, the I-th bit of data A is extracted and is designated as A [I]. Then, the process proceeds to S405a.

S405aにおいて、データNのIビット目を取り出し、それをN[I]とする。そしてS406aに移行する。   In S405a, the I-th bit of data N is taken out and is designated as N [I]. Then, the process proceeds to S406a.

S406aにおいて、N[I]とA[I]が互いに異なっているかを比較する。異なっている場合は、S407aに移行し、そうでない場合は、S408aへ移行する。   In S406a, it is compared whether N [I] and A [I] are different from each other. If they are different, the process proceeds to S407a. Otherwise, the process proceeds to S408a.

S407aにおいて、比較の結果互いに異なっていれば、ターゲットのメモリにおけるN番地のIビット目に該当するデータを反転する。そしてS408aに移行する。   In S407a, if they are different from each other as a result of comparison, the data corresponding to the I-th bit of the N address in the target memory is inverted. Then, the process proceeds to S408a.

S408aにおいて、ビット取り出し用カウンタが有効か否かを判定する。有効ならばS409aに移行し、そうでない場合は終了する。   In step S408a, it is determined whether the bit extraction counter is valid. If it is valid, the process proceeds to S409a, and if not, the process ends.

S409aにおいて、ビット取り出し用カウンタが有効であれば、それを1増やす。そして、S404aに移行し、処理を繰り返す。   In S409a, if the bit extraction counter is valid, it is incremented by one. And it transfers to S404a and repeats a process.

一方、本発明においては、例えば図4(b)に示すような処理フローとなり、以下のような処理が行われる。   On the other hand, in the present invention, for example, the processing flow shown in FIG. 4B is performed, and the following processing is performed.

S401bにおいて、ターゲット31はデータA’を受信する。そして、S403bに移行する。   In S401b, the target 31 receives the data A '. Then, the process proceeds to S403b.

S403bにおいて、ビット取り出し用カウンタを初期化する。そして、S404bに移行する。   In S403b, a bit extraction counter is initialized. Then, the process proceeds to S404b.

S404bにおいて、データA’のIビット目を取り出し、それをA’[I]とする。そして、S406bに移行する。   In S404b, the I-th bit of the data A 'is taken out and set as A' [I]. Then, the process proceeds to S406b.

S406bにおいて、A’[I]が‘1’であるか否かを判定する。そうである場合はS407bに移行し、そうでない場合はS408bに移行する。   In S406b, it is determined whether A ′ [I] is “1”. If so, the process proceeds to S407b, and otherwise, the process proceeds to S408b.

S407bにおいて、判定の結果‘1’であれば、ターゲット31のメモリにおけるN番地のIビット目に該当するデータを反転する。そして、S408bに移行する。   In S407b, if the result of determination is “1”, the data corresponding to the I-th bit of address N in the memory of the target 31 is inverted. Then, the process proceeds to S408b.

S408bにおいて、ビット取り出し用カウンタが有効か否か判定する。有効である場合はS409bに移行し、そうでない場合は終了する。   In S408b, it is determined whether the bit extraction counter is valid. If it is valid, the process proceeds to S409b, and if not, the process ends.

S409bにおいて、ビット取り出し用カウンタが有効であれば、それを1増やす。そして、S404bに移行し、処理を繰り返す。   In S409b, if the bit extraction counter is valid, it is incremented by one. And it transfers to S404b and repeats a process.

このように、本発明のデータ転送方式を用いることで、従来技術と比較して、S402aのデータNを取り出す処理とS405aのデータNのIビット目を取り出す処理を省略することができる。これによって、システムソフトウエアの処理およびこのソフトウエア処理に伴うハードウエア処理が容易かつ効率的となる。   As described above, by using the data transfer method of the present invention, the process of extracting the data N in S402a and the process of extracting the I-th bit of the data N in S405a can be omitted as compared with the prior art. As a result, the processing of the system software and the hardware processing accompanying this software processing become easy and efficient.

つぎに、これまでに述べたようなデータ転送方式を、例えば、SDメモリカードまたはMMC(MultiMediaCard(登録商標))カードといったメモリカードをターゲットとするカードシステムへ適用する例を説明する。   Next, an example will be described in which the data transfer method as described above is applied to a card system that targets a memory card such as an SD memory card or an MMC (MultiMediaCard (registered trademark)) card.

SDメモリカード規格またはMMCカード規格では、ブロックへの書き込みコマンドとしてCMD24(=WRITE_BLOCK)、複数ブロックへの書き込みコマンドとしてCMD25(=WRITE_MULTIPLE_BLOCK)が定義されている。そこで、本発明のデータ転送方式を適用した書き込みコマンドとして、SDメモリカード規格またはMMCカード規格で予約されているコマンドを使用する。   In the SD memory card standard or the MMC card standard, CMD24 (= WRITE_BLOCK) is defined as a write command to a block, and CMD25 (= WRITE_MULTIPLE_BLOCK) is defined as a write command to a plurality of blocks. Therefore, a command reserved in the SD memory card standard or the MMC card standard is used as a write command to which the data transfer method of the present invention is applied.

つまり、ブロックへの書き込みコマンドとして、例えば、CMD60(=DIFFERENTIAL_WRITE_BLOCK)を、複数ブロックへの書き込みコマンドとして、例えば、CMD61(DIFFERENTIAL_WRITE_MULTIPLE_BLOCK)を定義する。CMD60とCMD61を使用したイニシエータおよびターゲット間の書き込み命令プロトコルは、それぞれCMD24とCMD25と全く同様とし、データ内容だけをビット反転情報を持つものに変更する。すなわち、CMD60とCMD61のコマンドフォーマットは、それぞれ図5(a),(b)のようになる。   That is, for example, CMD60 (= DIFFERENTIAL_WRITE_BLOCK) is defined as a write command to the block, and CMD61 (DIFFERENTIAL_WRITE_MULTIPLE_BLOCK) is defined as the write command to a plurality of blocks. The write command protocol between the initiator and target using CMD60 and CMD61 is exactly the same as that of CMD24 and CMD25, respectively, and only the data content is changed to one having bit inversion information. That is, the command formats of CMD60 and CMD61 are as shown in FIGS. 5 (a) and 5 (b), respectively.

図5(a),(b)は、本発明の一実施の形態のデータ記憶システムにおいて、ターゲットにメモリカードを用いる場合に定義されるメモリカードのコマンド仕様の一例を示す説明図であり、(a)は、CMD60の仕様例、(b)は、CMD61の仕様例を示すものである。   5A and 5B are explanatory diagrams showing an example of command specifications of a memory card defined when a memory card is used as a target in the data storage system according to the embodiment of the present invention. a) shows a specification example of CMD60, and (b) shows a specification example of CMD61.

CMD60は、図5(a)に示すように、adtc(addressed(point−to−point)data transfer commands)タイプのコマンドとなっている。このタイプでは、CMDラインから指定された特定のメモリカードに対してコマンドが発行され、この特定のメモリカードがレスポンスを返した後に、DATラインを通してメモリカードに向けたデータ転送が行われる。このデータ転送により、メモリカードにおいては、CMD60の発行時に引数で指定したアドレスから、SET_BLOCKLENコマンドにより指定したブロックサイズ分のデータ書き込みが行われる。そして、メモリカードに向けて転送されるデータは、これまでに説明したようなビット反転情報を持つデータである。   As shown in FIG. 5A, the CMD 60 is an addressc (addressed (point-to-point) data transfer commands) type command. In this type, a command is issued to a specific memory card designated from the CMD line, and after the specific memory card returns a response, data transfer to the memory card is performed through the DAT line. By this data transfer, in the memory card, data writing for the block size specified by the SET_BLOCKLEN command is performed from the address specified by the argument when the CMD60 is issued. The data transferred to the memory card is data having bit inversion information as described above.

一方、CMD61は、図5(b)に示すように、CMD60と同様にadtcタイプのコマンドとなっている。そして、ホストからメモリカードに向けたデータ転送により、メモリカードにおいては、CMD61の発行時に引数で指定したアドレスから、連続してデータ書き込みが行われ、STOP_TRANSMISSIONコマンドにより停止するまで複数ブロックに書き込みが行われる。そして、メモリカードに向けて転送されるデータは、これまでに説明したようなビット反転情報を持つデータである。   On the other hand, as shown in FIG. 5B, the CMD 61 is an adtc type command as with the CMD 60. Then, by data transfer from the host to the memory card, the memory card continuously writes data from the address specified by the argument when issuing the CMD61, and writes to a plurality of blocks until it is stopped by the STOP_TRANSMISION command. Is called. The data transferred to the memory card is data having bit inversion information as described above.

このように、SDメモリカードおよびMMCカードといったメモリカードに新たなコマンドを定義し、メモリカード内に、当該コマンドに対応するための機能としてコマンド判定機能や前述したようなビット反転情報を処理する機能等を設けることで、メモリカードのデータ転送効率を向上させることが可能となる。   In this manner, a new command is defined in a memory card such as an SD memory card or an MMC card, and a command determination function or a function for processing the bit inversion information as described above is a function for responding to the command in the memory card. Etc., the data transfer efficiency of the memory card can be improved.

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。   As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.

本発明のデータ記憶システムおよびメモリカードは、SDメモリカードおよびメモリースティックなどの各種メモリカードや、USBフラッシュメモリなどといったシリアル転送のストレージ機器を含むデータ記憶システムに適用して特に有益なものである。また、これらに限らず、ATA接続などのハードディスクや、SDオーディオなどのメモリカードホスト機器、IEEE1394で接続されたDVDドライブといった各種ストレージ機器や、更に、ストレージ機器に限らず記憶媒体を備えアドレスとデータが1対1で割り当てられた様々な機器を含むデータ記憶システムに対して広く適用可能である。   The data storage system and memory card of the present invention are particularly useful when applied to a data storage system including various memory cards such as an SD memory card and a memory stick, and a serial transfer storage device such as a USB flash memory. Further, the present invention is not limited to these, and various storage devices such as a hard disk such as an ATA connection, a memory card host device such as SD audio, a DVD drive connected by IEEE 1394, and a storage medium, not limited to a storage device. Is widely applicable to data storage systems including various devices assigned one-to-one.

Claims (9)

データの反転が必要な場合とデータの保持が必要な場合とでそれぞれ異なる信号レベルを備えた第1データを送信するイニシエータと、
予め第2データが記憶され、前記第1データを受信し、前記第1データの前記信号レベルに基づいて前記記憶された第2データを反転または保持することで、前記記憶された第2データを更新するターゲットとを有することを特徴とするデータ記憶システム。
An initiator that transmits first data having different signal levels when data inversion is required and data holding is required;
Second data is stored in advance, the first data is received, and the stored second data is inverted or held based on the signal level of the first data, thereby storing the stored second data A data storage system having a target to be updated.
請求項1記載のデータ記憶システムにおいて、
前記ターゲットは、ストレージ機器であることを特徴とするデータ記憶システム。
The data storage system of claim 1, wherein
The data storage system, wherein the target is a storage device.
データを送信するイニシエータと、前記送信したデータを受信するターゲットとを有するデータ記憶システムであって、
前記イニシエータは、前記ターゲットに記憶されている複数ビットの第2データに対して、反転が必要となるビットと反転が不必要となるビットをそれぞれ第1の信号レベルと第2の信号レベルに対応させた複数ビットの第1データを形成し、前記複数ビットの第1データを前記イニシエータに向けて送信し、
前記ターゲットは、前記複数ビットの第1データを受信し、前記受信した複数ビットの第1データの中から前記第1の信号レベルに該当するビットを検出し、前記複数ビットの第2データに対して、前記検出したビットに対応するビットのデータを反転することで前記複数ビットの第2データの記憶を更新することを特徴とするデータ記憶システム。
A data storage system having an initiator for transmitting data and a target for receiving the transmitted data,
The initiator corresponds to the first signal level and the second signal level, respectively, for a bit that needs to be inverted and a bit that does not need to be inverted with respect to second data of a plurality of bits stored in the target. Forming a plurality of bits of first data, transmitting the plurality of bits of first data to the initiator,
The target receives the first data of the plurality of bits, detects a bit corresponding to the first signal level from the received first data of the plurality of bits, and outputs the second data of the plurality of bits. Then, the data storage system updates the storage of the second data of the plurality of bits by inverting the data of the bit corresponding to the detected bit.
請求項3記載のデータ記憶システムにおいて、
前記ターゲットでは、前記ターゲットが備えたコンピュータを用いてソフトウエアの処理が行われ、
前記ソフトウエアの処理は、
前記複数ビットの第1データに対し、それぞれのビットの信号レベルを判定するステップと、
前記判定したビットの信号レベルが第1の信号レベルであった場合に限り、前記複数ビットの第2データの中から前記判定したビットに対応するビットのデータを読み出し、前記読み出したデータを反転して書き戻しを行うステップとを含むことを特徴とするデータ記憶システム。
The data storage system of claim 3, wherein
In the target, software processing is performed using a computer provided in the target,
The processing of the software is as follows:
Determining a signal level of each bit for the plurality of first bits of data;
Only when the signal level of the determined bit is the first signal level, the bit data corresponding to the determined bit is read from the second data of the plurality of bits, and the read data is inverted. And a step of writing back the data storage system.
請求項3または4記載のデータ記憶システムにおいて、
前記ターゲットは、ファイルシステムを含むストレージ機器であることを特徴とするデータ記憶システム。
The data storage system according to claim 3 or 4,
The data storage system, wherein the target is a storage device including a file system.
イニシエータから、書き込みアドレスを含むコマンドと、データの反転または保持に対応してそれぞれ異なる信号レベルが割り当てられたデータとが入力された際に、前記書き込みアドレスに記憶されているデータを、前記入力されたデータの信号レベルに基づいて反転または保持することで、前記書き込みアドレスに記憶されているデータの更新を行うことを特徴とするメモリカード。   When an initiator receives a command including a write address and data assigned with different signal levels corresponding to data inversion or retention, the data stored in the write address is input. A memory card, wherein the data stored in the write address is updated by inversion or holding based on the signal level of the data. 請求項6記載のメモリカードにおいて、
前記メモリカードは、SDメモリカードまたはMMCカードであることを特徴とするメモリカード。
The memory card according to claim 6, wherein
The memory card is an SD memory card or an MMC card.
請求項7記載のメモリカードにおいて、
前記コマンドは、ブロックへの書き込みコマンドであることを特徴とするメモリカード。
The memory card according to claim 7,
The memory card according to claim 1, wherein the command is a write command to a block.
請求項7記載のメモリカードにおいて、
前記コマンドは、複数ブロックへの書き込みコマンドであることを特徴とするメモリカード。
The memory card according to claim 7,
The memory card, wherein the command is a write command to a plurality of blocks.
JP2006537602A 2004-09-29 2004-09-29 Data storage system and memory card Pending JPWO2006035500A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/014228 WO2006035500A1 (en) 2004-09-29 2004-09-29 Data storage system and memory card

Publications (1)

Publication Number Publication Date
JPWO2006035500A1 true JPWO2006035500A1 (en) 2008-07-31

Family

ID=36118652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006537602A Pending JPWO2006035500A1 (en) 2004-09-29 2004-09-29 Data storage system and memory card

Country Status (2)

Country Link
JP (1) JPWO2006035500A1 (en)
WO (1) WO2006035500A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2007008544A (en) * 2005-01-13 2007-09-07 Samsung Electronics Co Ltd Host device, portable storage device, and method for updating meta information regarding right objects stored in portable storage device.

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05191454A (en) * 1992-01-16 1993-07-30 Nec Corp Data transfer system
JP2002268941A (en) * 2001-03-09 2002-09-20 Fujitsu Ltd Semiconductor device
JP2002358222A (en) * 2001-06-04 2002-12-13 Hitachi Ltd Data dual system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05191454A (en) * 1992-01-16 1993-07-30 Nec Corp Data transfer system
JP2002268941A (en) * 2001-03-09 2002-09-20 Fujitsu Ltd Semiconductor device
JP2002358222A (en) * 2001-06-04 2002-12-13 Hitachi Ltd Data dual system and method

Also Published As

Publication number Publication date
WO2006035500A1 (en) 2006-04-06

Similar Documents

Publication Publication Date Title
US7010638B2 (en) High speed bridge controller adaptable to non-standard device configuration
US7058748B1 (en) ATA device control via a packet-based interface
US8255661B2 (en) Data storage system comprising a mapping bridge for aligning host block size with physical block size of a data storage device
US7007127B2 (en) Method and related apparatus for controlling transmission interface between an external device and a computer system
US5564114A (en) Method and an arrangement for handshaking on a bus to transfer information between devices in a computer system
US7069350B2 (en) Data transfer control system, electronic instrument, and data transfer control method
US20060174049A1 (en) USB to SATA bridge system
JP2008547068A (en) USB-SD storage device having a plurality of DMA channels, storage method thereof and recording medium
US20070079015A1 (en) Methods and arrangements to interface a data storage device
US7409477B2 (en) Memory card having a processor coupled between host interface and second interface wherein internal storage code provides a generic interface between host interface and processor
US7165124B2 (en) Data transfer control system, electronic instrument, program, and data transfer control method
US20120317313A1 (en) Disk device assigned id codes for storage areas of a storage device
US20130275652A1 (en) Methods and structure for transferring additional parameters through a communication interface with limited parameter passing features
US20110072168A1 (en) Data transfer system with different operating modes
CN106919343B (en) Peripheral interface circuit and peripheral memory system
KR100843199B1 (en) High speed IDE interface device and method for the same
US20050198425A1 (en) Combined optical storage and flash card reader using single ide or sata port and method thereof
CN115113799A (en) Host command execution method and device
JPWO2006035500A1 (en) Data storage system and memory card
US20060277326A1 (en) Data transfer system and method
US20070005813A1 (en) Peripheral device and method for interpreting redefined frame information structure
US7934024B2 (en) Method for reading and writing non-standard register of serial advanced technology attachment (SATA) device
US20040186949A1 (en) XIP system and method for serial memory
US20040230734A1 (en) Data transfer control system, electronic instrument, and data transfer control method
TW200413940A (en) Method and apparatus for handling data transfers

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100518