WO2001008015A1 - Systeme d'enregistrement, dispositif d'enregistrement de donnees, dispositif a memoire et procede d'enregistrement de donnees - Google Patents

Systeme d'enregistrement, dispositif d'enregistrement de donnees, dispositif a memoire et procede d'enregistrement de donnees Download PDF

Info

Publication number
WO2001008015A1
WO2001008015A1 PCT/JP2000/005056 JP0005056W WO0108015A1 WO 2001008015 A1 WO2001008015 A1 WO 2001008015A1 JP 0005056 W JP0005056 W JP 0005056W WO 0108015 A1 WO0108015 A1 WO 0108015A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
recording
address
sector
cluster
Prior art date
Application number
PCT/JP2000/005056
Other languages
English (en)
French (fr)
Inventor
Shigeo Araki
Kenichi Nakanishi
Original Assignee
Sony Corporation
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 Sony Corporation filed Critical Sony Corporation
Priority to DE60037417T priority Critical patent/DE60037417D1/de
Priority to EP00949931A priority patent/EP1189139B1/en
Publication of WO2001008015A1 publication Critical patent/WO2001008015A1/ja

Links

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1215Formatting, e.g. arrangement of data block or words on the record carriers on cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • 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
    • 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
    • G06F3/064Management of blocks
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/16Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1221Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc cluster, i.e. a data structure which consists of a fixed number of sectors or ECC blocks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1232Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc sector, i.e. the minimal addressable physical data unit
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/16Solid state audio

Definitions

  • the present invention relates to a recording system, a data recording device, a memory device, and a data recording method in which a memory card that is detachable from a device is used as a recording medium.
  • EEPR 0 M Electrically rewritable non-volatile memory
  • EEPR 0 M Electrically rewritable non-volatile memory
  • Flash memory is expected to be a substitute for recording media such as magnetic disks and optical disks.
  • a memory card having a flash memory is configured to be detachable from a device.
  • a digital audio recording / reproducing apparatus that uses a memory card instead of a conventional disc-shaped medium such as a CD (compact disc) or MD (mini disc).
  • a memory card instead of a conventional disc-shaped medium such as a CD (compact disc) or MD (mini disc).
  • a memory card instead of a conventional disc-shaped medium such as a CD (compact disc) or MD (mini disc).
  • still image data and video data can be recorded on a memory card, and can be used as a recording medium for digital still cameras and digital video cameras.
  • a data unit called a segment is divided into a predetermined number of clusters (fixed length), and one cluster is divided into a predetermined number of sectors (fixed length).
  • Clusters are also called blocks, and sectors are ⁇ Also called page.
  • erasing is performed collectively in cluster units, and writing and reading are performed collectively in sector units.
  • one segment is divided into 512 clusters.
  • a segment is a unit for managing a predetermined number of clusters.
  • One cluster is divided into 16 sectors.
  • One cluster has a capacity of 8 KB (K bytes), and one sector has a capacity of 512 B.
  • a memory with a capacity of 16 MB can be configured by using four 4 MB segments.
  • a logical cluster address is allocated to the 16 MB memory space as shown in FIG. 13A.
  • the logical cluster address is represented in hexadecimal.
  • O x means 16 hexadecimal notation.
  • a logical address is an address that is logically handled by a data processing device (software).
  • the physical address is assigned to each cluster in the flash memory, and the correspondence between the cluster and the physical address remains unchanged.
  • the rewriting of data causes deterioration of the insulating film, thereby limiting the number of rewritings. Therefore, it is necessary to prevent repeated and intensive accesses to a certain storage area (cluster). Therefore, when rewriting data at a certain logical address stored at a certain physical address, the flash memory file system does not need to rewrite the updated data to the same cluster again. The updated data is written to an unused cluster. As a result, the logical address before the data is updated The relationship between the address and the physical address changes after updating. By performing such a skipping process, repeated intensive access to the same cluster is prevented, and the life of the flash memory can be extended.
  • the file management system keeps the same. The address can be seen, and subsequent access can be performed properly. Since the correspondence between the logical address and the physical address changes due to the swap processing, a logical-physical address conversion table indicating the correspondence between the two is required. By referring to this table, the physical cluster address corresponding to the specified logical cluster address is specified, and access to the class indicated by the specified physical cluster address becomes possible.
  • the logical-physical address conversion table is stored on the memory by the data processing device. If the memory capacity of the data processing device is small, it can be stored in the flash memory.
  • Figure 13B shows an example of a logical-to-physical address conversion table for segment 1. As shown in Fig. 13B, the logical-to-physical address conversion table associates the logical cluster addresses (2 bytes) arranged in ascending order with the physical cluster addresses (2 bytes). The logical-to-physical address conversion table is managed in segments, and its size increases according to the capacity of the flash memory.
  • Electronic music distribution EMD is being put to practical use.
  • To store music data distributed to the hard disk of a personal computer copy or move the desired music data to a memory card using a personal computer, and insert the memory card into a portable recorder. This makes it easy to listen to your favorite music outside of your home.
  • Data of multiple songs is downloaded from the hard disk to the memory card by parallel writing (high speed), and during playback, the song data is read from the memory card at normal speed.
  • FIG. 14 shows the configuration of a conventional logical address for four storages.
  • the address space of the memory is represented by 11 bits A0, A1, ..., A10.
  • A0 is the LSB (least significant bit) and A10 is the MSB (most significant bit).
  • the storage of each 4 MB is switched by the MSB and the second MSB (A10, A9).
  • 9-bit addresses AO to A8 are allocated to the sectors and segments of each storage.
  • FIG. 16 is a flowchart showing the flow of processing when data is written to consecutive logical sectors 0 to 3;
  • a logical-physical conversion table is created for the segment to be written.
  • step S12 the host sends sector 0. This transfer takes time T.
  • step S13 sector 0 is written to the flash memory.
  • step S15 sector 1 is written to the flash memory.
  • step S 16 the processing of sending sector 2 (step S 16), writing sector 2 (step S 17), sending sector 3 (step S 18), and writing sector 3 (step S 19) are performed in this order. Done. Conventionally, even if, for example, four storages are provided in parallel, the processing cannot be speeded up because access is concentrated on one storage.
  • the data structure of one sector on the flash memory is such that a 16-byte area for recording management information is added to 512-byte data.
  • the management information includes a logical cluster number, cluster management information, and attribute information.
  • the cluster management information is the same for all sections in a cluster, and includes information such as cluster validity / invalidity.
  • the attribute information is information for each sector and includes copyright information and the like. For example, when a flash memory is installed in a device, the host reads the management information and creates a table of logical clusters and physical clusters for the segment.
  • an object of the present invention is to provide a recording system, a data recording device, and a memory device capable of maintaining compatibility between a conventional nonvolatile memory and a file format when the performance at the time of writing is improved by parallel writing. And a data recording method.
  • the invention of claim 1 includes a removable memory device including a nonvolatile memory each including a plurality of clusters each including a plurality of sectors, and a memory device.
  • a data recording device for recording data consisting of a plurality of continuous sectors. Recording system
  • Address designating means for designating an address of a section for recording data, and recording means for recording data for the section designated by the address designating means;
  • the address designating means can designate a plurality of sector addresses in a plurality of classes, and designates an address such that a continuous sector of the recording data is recorded as a continuous sector in a cluster.
  • the recording means is a recording system characterized in that recording can be performed on a plurality of sections at the same time.
  • the invention according to claim 2 is a data recording device which uses a removable memory device including a non-volatile memory as a recording medium,
  • An address designation means for recording data of a plurality of sections in a memory device in parallel is provided.
  • the address designating means can designate a plurality of sector addresses in a plurality of clusters, and designates an address such that continuous sections of recording data are recorded as continuous sectors in a cluster. Data recording device.
  • the invention according to claim 3 is a memory device detachable from a data recording device
  • Interface means disposed between the data recording device and the non-volatile memory and security means
  • the recording means performs recording on a plurality of sectors at the same time so that consecutive sectors of recording data are recorded as continuous sectors in a cluster.
  • a memory device characterized by being possible.
  • the invention according to claim 6 is a data recording method in which one class is constituted by a plurality of sections and data spanning a plurality of clusters is recorded in parallel on a plurality of storages.
  • each cluster is configured on the same storage. Therefore, compatibility of the file format with the existing memory device can be maintained.
  • FIG. 1 is a block diagram showing an overall configuration of an embodiment of the present invention.
  • FIG. 2 is a block diagram schematically showing a configuration of a memory card according to one embodiment of the present invention.
  • FIG. 3 is a block diagram showing a more detailed configuration of the memory card in one embodiment of the present invention.
  • FIG. 4 is a schematic diagram for explaining an address configuration in one embodiment of the present invention.
  • FIG. 5 is a schematic diagram for explaining a parallel write operation in one embodiment of the present invention.
  • FIG. 6 is a timing chart for explaining a write operation according to an embodiment of the present invention.
  • FIG. 7 is a timing chart for explaining a read operation according to one embodiment of the present invention.
  • FIG. 8 is a flowchart for explaining a write operation of one embodiment of the present invention.
  • FIG. 9 is a block diagram for explaining storage switching in one embodiment of the present invention.
  • FIG. 10 is a schematic diagram for explaining switching of storage in one embodiment of the present invention.
  • FIG. 11 is a schematic diagram showing a relationship between a segment and a logical class address according to an embodiment of the present invention.
  • FIG. 12 is a schematic diagram showing a configuration of an example of a flash memory to which the present invention can be applied.
  • FIG. 13 is a schematic diagram showing an example of a logical-physical address conversion table of a flash memory to which the present invention can be applied.
  • FIG. 14 is a schematic diagram for explaining a conventional address configuration.
  • FIG. 15 is a timing chart for explaining a conventional write operation.
  • FIG. 16 is a timing chart for explaining a conventional read operation.
  • FIG. 17 is a flowchart for explaining a conventional write operation.
  • FIG. 18 is a schematic diagram for explaining a sector configuration and management information.
  • FIG. 19 is a schematic diagram for explaining a conventional parallel write operation.
  • FIG. 1 shows the configuration of a system that can commercialize this invention.
  • the host side The data processing device and the memory card are connected via a serial interface.
  • reference numeral 1 denotes a CPU, and a memory 2, a display 3, and an input / output unit 4 are connected to a bus of the CPU 1.
  • a serial interface 5 is arranged between the CPU bus and the memory card 6 surrounded by a broken line.
  • Memory 2 contains R ⁇ M for storing programs and RAM used as a work area.
  • the data processing device is, specifically, a personal computer, a digital still camera, a digital video camera, a digital audio recorder, or the like.
  • the memory card 6 has a flash memory 7.
  • the flash memory 7 is, for example, a NAND flash memory (non-volatile memory). In some cases, the memory card 6 incorporates an encryption circuit to protect the copyright of the stored content.
  • the present invention can be applied to a case where data transmission and reception between the data processing device and the memory card 6 is performed not by a serial interface but by a parallel interface.
  • 4 MB (megabyte) of flash memory
  • one segment is divided into 512 classes and one cluster is divided into 16 sectors. Divided.
  • One cluster has a capacity of 8 KB (K bytes), and one sector has a capacity of 512 1B.
  • a logical cluster address is allocated to the 16 MB of memory space, and as described with reference to FIG. 13B, the logical cluster address is allocated.
  • a logical-to-physical address conversion table indicating the correspondence between the address and the physical cluster address is created for each segment.
  • 4 MBX 4 16 MB
  • the flash memory uses 11-bit physical class addresses AO, A1,..., A10.
  • FIG. 2 shows only parts related to data input / output for simplicity.
  • Data for each memory cell MC0 to MC3 is stored in a data bus and a flash buffer BF0. BFBF 3 respectively. That is, when one page of write data is stored in each of the flash buffers BF0 to BF3 via the data bus, the flash cells BF0 to BF3 are simultaneously transferred to the memory cells MC0 to MC3. The data is transferred to it.
  • the example in FIG. 2 is an example in which one IC package has four storages, but four flash memories in separate packages may be used. Further, a plurality of flash memories having a plurality of storages in a package may be combined.
  • FIG. 3 shows a more specific configuration of the memory card 6 to which the present invention can be applied.
  • the memory card 6 is configured as a control block 11, a flash memory 7, and a one-chip IC.
  • the bidirectional serial interface 5 between the CPU 1 of the data processing unit and the memory card 6 consists of 10 lines.
  • the four main lines are a clock line SCK for transmitting a clock during data transmission, a status line SBS for transmitting status, a data line DI0 for data transmission, and an interrupt line. INT.
  • two GND lines and one VCC line are provided as power supply lines.
  • One line R e s e r ⁇ is an undefined line.
  • the clock line SC ⁇ is used to transmit a clock synchronized with the data.
  • the status line SBS is a line for transmitting a signal indicating the status of the memory card 6.
  • the data line DI ⁇ is a line for inputting and outputting commands and encrypted audio data.
  • the interrupt line INT is a line for transmitting an interrupt signal requesting an interrupt from the memory card 6 to the CPU 1 of the data processing device. When memory card 6 is installed, an interrupt signal is generated. However, in this embodiment, since the interrupt signal is transmitted via the data line DI #, the interrupt line INT is grounded and is not used.
  • the control block 11 has a serial Z-parallel conversion 'parallel / serial conversion' interface cluster (abbreviated as S / P, P / S, IF class). Connected to face 5.
  • S / P, P / S, and IF blocks 12 convert the serial data received from the data processing device into parallel data, take in the control block 11, and convert the parallel data from the control block i1. The data is converted to serial data and sent to the data processing device.
  • a command is transmitted first, and then data is transmitted.
  • the SZP, P / S, and IF blocks 12 store the command in the command register 13 and the data in the page buffer 14 and the write register 15.
  • An error correction encoding circuit 16 is provided in association with the write register 15. For the data temporarily stored in the page buffer 14, the error correction coding circuit 16 generates a redundant code of an error correction code.
  • the output data of the command register 13, page buffer 14, write register 15, and error correction coding circuit 15 is a flash memory interface and sequencer (memory I / F, abbreviated as sequencer) Supplied to 17.
  • the memory IF and sequencer 17 are interfaces between the control block 1I and the flash memory 7, and control the exchange of data between the two. Data is written to flash memory 7 via memory IF and sequencer 17.
  • the data read from the flash memory 7 is supplied to the page buffer 14, the read register 18, and the error correction circuit 19 via the memory IF and the sequencer 17.
  • the data stored in the page buffer 14 is subjected to error correction by the error correction circuit 19.
  • the output of the page buffer 14 and the output of the read register 18 to which error correction has been performed are supplied to the S / P, P / S, and IF blocks 12, and the CPU of the data processing device is connected via the serial interface 5. Supplied to 1.
  • reference numeral 20 denotes a configuration R ⁇ M in which version information of the memory card 6, various attribute information, and the like are stored.
  • the memory card 6 is provided with a switch 21 for preventing erroneous erasure which can be operated by the user as required. When this switch 21 is in the connection prohibition state of erasure, even if a command instructing to erase the flash memory 7 is sent from the data processing device side, the flash memory 7 cannot be erased. Erasing is prohibited.
  • reference numeral 22 denotes an oscillator for generating a clock which is used as a timing reference for processing of the memory card 6.
  • the Syrian interface between the data processing device and the memory card 6 will be described in more detail.
  • a read command is transmitted from the data processing device to the memory card 6, and the memory card 6 receives the read command.
  • a process of reading the data of the address specified by the read command received by the memory card 6 from the flash memory 7 is performed. This processing has been done During this time, a busy signal (high level) is transmitted to the data processing device via the data line DI0.
  • the output of the busy signal is stopped, and the ready signal (low) indicating that the data processing device is ready to send data from the memory card 6 is output. Level) output starts.
  • the data processing device When the data processing device receives the ready signal from the memory card 6, it knows that the process corresponding to the read command is ready, and the memory card 6 decodes the data read to the page buffer. Output to the data processing device via the evening line DI. The state in which each of these processes is performed is indicated by a level change of the status line SBS.
  • a write command is transmitted from the data processing device to the memory card 6 via the data line DI #.
  • the write address is transmitted in connection with the write command.
  • data is written and read in sector units.
  • files are managed in cluster units, and addresses from the data processing device are in cluster units.
  • the data processing device transmits the write data to the memory card 6 via the data line DIO.
  • the received write data is stored in the page buffer.
  • the memory card 6 performs a process of writing the write data to the flash memory 7.
  • a busy signal is output during the writing process, and when the writing process of the writing data is completed in the memory card 6, the output of the busy signal is stopped, and the ready signal (low level) is sent to the data processing device. To send.
  • FIG. 4 shows a configuration of an address in one embodiment.
  • the address space of the memory is represented by 11 bits A0, A1,..., A10.
  • AO is the LSB (least significant bit) and A10 is the MSB (most significant bit).
  • the LSB and the second LSB (A 00, A 1) switch between each 4 MB of storage. Also, 9-bit addresses A2 to A10 are assigned to the sections and segments of each storage.
  • FIG. 5 is a diagram for explaining a file management method in the system of FIG. 1 using the memory card 6 as a storage medium.
  • reference numeral 30 denotes a data file, for example, data of a compressed audio data file.
  • a file is created for each piece of music in the compressed audio data, and the file is recorded in the flash memory 7 of the memory card 6 in sections and read out from the flash memory 7.
  • write sectors are selected from a plurality of clusters so that the sectors are continuously arranged in each cluster, and data is simultaneously written to the selected sectors. Assuming that the size of data 30 matches four classes, data 30 is recorded in four clusters of flash memory 7.
  • the sectors are arranged in the original order in each cluster of each storage.
  • the data of number 0 is stored in the storage.
  • the data is recorded in the first sector of the class 0
  • the data of number 16 is recorded in the first sector of the storage 1 cluster
  • the data of number 32 is recorded in the first sector of the storage 2 cluster.
  • the data of number 48 is recorded in the first section of the storage 3 cluster.
  • the data is read from the flash memory recorded in this way at the river page number for each cluster of data capacity. For example, data is read in order from the first sector of the cluster of storage 0 in FIG. 5, then data is read in order from the first sector of the class 1 of storage 1, and thereafter, the storage is started. Data is read out in order from the cluster of storage 2 to the cluster of storage 3. The order of the read data is the same as the original order .
  • the erasing operation is performed in units of clusters configured for each storage.
  • the data arrangement after the parallel writing in one embodiment is similar to the existing flash memory in that the clusters are arranged in the same storage. It will be composed. Therefore, compatibility with the existing flash memory in the file format can be maintained.
  • FIG. 6 shows a write operation in one embodiment.
  • data is transferred from the host side to a sector-size page buffer, and further, data is transferred from the page buffer to the flash buffer BF0 of storage 0. It takes T time to transfer.
  • data is written to flash memory BF and storage 0.
  • the data of the next sector is transferred and written to storage 1 during the write busy period.
  • the write operation to the storage 0 to the storage 3 is performed in parallel, so that the speed of the write can be increased as compared with the conventional write operation shown in FIG.
  • the time of reading as shown in Fig.
  • FIG. 8 is a flowchart showing a flow of processing when data is written to consecutive logical sectors 0 to 3 belonging to different clusters within a certain segment.
  • step S1 a logical-physical conversion table is created for the segment to be written.
  • step S2 the host sends sector 0 to the page buffer, and the data in sector 0 is transferred from the page buffer to the flash buffer. This transfer takes time T.
  • step S3 in parallel with the transmission of the sector 1, the sector 0 is written to one storage of the flash memory in the step S4.
  • step S5 sector 2 is transmitted, and in step S6, sector 1 is written in parallel to one storage of the flash memory.
  • step S7 the processes of sending sector 3 (step S7), writing sector 2 (step S8), and writing sector 3 (step S9) are performed in the same manner.
  • access is not concentrated on one storage, and the segments are not switched, so that it is necessary to create a logical-physical conversion table. Because there is no processing can be accelerated.
  • FIG. 9 shows a configuration of address supply to four storages in one embodiment
  • the physical address is represented by 11 bits of A0, A1,--., A10.
  • a 0 is the next SB (least significant bit) and
  • a 10 is the MS B (most significant bit).
  • the selection signals CS1, CS2 and CS3 for selecting 3 are generated from the decoder 40.
  • the decoder 40 is provided in the memory IF and the sequencer 17 in the configuration example of FIG.
  • the change in address when the physical address is incremented from 11 to all 1's in the 11th bit is shown in Fig. 10.
  • the address change starts from the first cluster of storage 0, and then the first cluster of storage 1 is specified.
  • the address changes from the first cluster of storage 2 to the first cluster of storage 3 the physical class address changes to move to the second cluster of storage 0 next. I do.
  • FIG. 11 shows the arrangement of segments and logical cluster addresses according to an embodiment of the present invention.
  • the 5 1 2 cluster included in one segment has four clusters. It is composed of 128 clusters included in each storage.
  • a logical-to-physical address conversion table is generated in this segment. Therefore, if the segment is not changed, the logical-physical address conversion table to be referenced or updated does not change, and it is possible to prevent the read performance from being lowered by accessing the table or updating the table. .
  • data can be written simultaneously to consecutive logical cluster addresses, for example, 0X00004 to 0X00007.
  • the logical cluster address is discontinuous, such as 0x0 0 0 0, 0 x 0 2 0 0, O x 0 4 0 0, 0 x 0 6 0 0, one storage Since these addresses exist on the page, it is impossible to write them simultaneously. However, since the probability that the process of writing a continuous logical sector to such a discontinuous cluster address actually occurs is very low, this is not a major problem.
  • the capacity of the I cluster may be 16 KB.
  • the storage capacity of one storage unit is 81 ⁇ 8 (102 class class 8 ⁇ : 8), 16 MB (102 class class xl 6 KB), 321 ⁇ 8 (2 class).
  • the present invention can be applied to flash memories such as 048 class class 1618) and 64 MB (4096 class class X 16 KB).
  • the recording performance is improved because each class is not distributed to a plurality of storages, and the recording is performed in parallel so that the sectors are continuously arranged in each cluster.
  • compatibility with existing flash memory in file format can be maintained.

Description

明 細 書
記録システム、 データ記録装置、 メモリ装置およびデータ記録方法 技術分野
この発明は、 記録媒体として、 機器に着脱自在のメモリカードを使 用するようにした記録システム、 データ記録装置、 メモリ装置および データ記録方法に関する。
背景技術
E E P R 0 M (E l ectr i ca l l y Erasab l e Programmab l e ROM)と呼ばれ る電気的に書き換え可能な不揮発性メモリは、 1 ビッ トを 2個の トラ ンジス夕で構成するために、 1 ビッ ト当たりの占有面積が大きく、 集 積度を高くするのに限界があった。 この問題を解決するために、 全ビ ッ ト一括消去方式によ り 1 ビッ トを 1 トランジスタで実現することが 可能なフラッ シュメモ リ が開発された。 フラッ シュメモ リ は、 磁気デ イスク、 光ディスク等の記録媒体に代わり うるものとして期待されて いる。
フラッシュメモリを有するメモリカードを機器に対して着脱自在に 構成することが知られている。 このメモ リ カー ドを使用すれば、 従来 の C D (コ ンパク トディス ク) 、 M D (ミニディスク) 等のディ スク 状媒体に代えてメモリカードを使用するディジタルオーディオ記録/ 再生装置を実現するこ とができる。 また、 オーディオデータ以外に静 止画データ、 動画データをメモリカードに記録することもでき、 ディ ジ夕ルスチルカメ ラ、 ディ ジタルビデオカメ ラの記録媒体と して使用 するこ とができる。
フラッシュメモリは、 セグメ ン ト と称されるデータ単位が所定数の クラスタ (固定長) へ分割され、 1 クラスタが所定数のセク タ (固定 長) へ分割される。 クラスタは、 ブロッ クとも呼ばれ、 セクタは、 ぺ ージとも呼ばれる。 フラッシュメモリでは、 クラスタ単位で消去が一 括して行われ、 書き込みと読み出しは、 セクタ単位で一括して行われ る。
一例として、 4 M B (メガバィ ト) のフラッシュメモリの場合、 第 1 2図に示すように、 1 セグメ ン トが 5 1 2個のクラスタへ分割され る。 セグメ ン トは、 所定数のクラスタを管理する単位である。 1 クラ スタが 1 6個のセクタへ分割される。 1 クラスタは、 8 K B ( Kバイ ト) の容量とされ、 1 セクタが 5 1 2 Bの容量とされる。 4 M Bのセ グメ ン トを 4個使用して 1 6 M Bの容量のメモリ を構成することがで きる。
1 6 M Bのメモリ空間に対して、 第 1 3図 Aに示すように、 論理ク ラスタア ドレスが割り振られる。 論理クラスタア ドレスは、 5 1 2 X 4 = 2 0 4 8個のクラスタを区別するために 2バイ ト長とされる。 第 1 3図では、 論理クラスタア ドレスが 1 6進で表記されている。 O x は、 1 6進表記を意味する。 論理ア ドレスは、 データ処理装置 (ソフ トウヱァ) が論理的に扱うア ドレスである。 物理ァ ドレスは、 フラッ シュメモリの各クラスタに対して付されたもので、 クラスタと物理ァ ドレスの対応関係は、 不変である。
フラッシュメモリは、 データの書き換えを行う ことにより絶緣膜の 劣化を生じ、 書き換え回数が制限される。 従って、 ある同一の記憶領 域 (クラスタ) に対して繰り返し集中的にアクセスがなされることを 防止する必要がある。 従って、 ある物理ア ドレスに格納されているあ る論理ァ ドレスのデータを書き換える場合、 フラッシュメモリのファ ィルシステムでは、 同一のクラスタに対して更新したデ一夕を再度書 き込むことはせずに、 未使用のクラスタに対して更新したデータを書 き込むようになされる。 その結果、 データ更新前における論理ア ドレ スと物理ア ドレスの対応関係が更新後では、 変化する。 このようなス ヮップ処理を行う ことで、 同一のクラスタに対して繰り返して集中的 にアクセスがされることが防止され、 フラッシュメモリの寿命を延ば すことが可能となる。
論理クラスタア ドレスは、 一旦クラス夕に対して書き込まれたデ一 夕に付随するので、 更新前のデータと更新後のデータの書き込まれる 物理クラスタア ドレスが変更されても、 フアイル管理システムからは 、 同一のァ ドレスが見えることになり、 以降のァクセスを適正に行う ことができる。 スヮップ処理によ り論理ァ ドレスと物理ァ ドレスとの 対応関係が変化するので、 両者の対応を示す論理一物理ァ ドレス変換 テーブルが必要となる。 このテーブルを参照することによって、 指定 した論理クラスタァ ドレスに対応する物理クラスタァ ドレスが特定さ れ、 特定された物理クラスタア ドレスが示すクラス夕に対するァクセ スが可能となる。
論理一物理ア ドレス変換テーブルは、 データ処理装置によってメモ リ上に格納される。 若し、 データ処理装置のメモリ容量が少ない時は 、 フラッシュメモリ中に格納することができる。 第 1 3図 Bは, セグ メ ン ト 1 に関する論理一物理ァ ドレス変換テーブルの一例を示す。 第 1 3図 Bに示すように、 論理一物理ァ ドレス変換テーブルは、 昇順に 並べた論理クラスタァ ドレス ( 2バイ 卜) に物理クラスタア ドレス ( 2バイ ト) をそれぞれ対応させたものである。 また、 論理一物理ア ド レス変換テーブルは、 セグメ ン ト每に管理され、 そのサイズは、 フラ ッシュメモリの容量に応じて大きくなる。
また、 フラッシュメモリの複数のス ト レージを並列動作させること によって、 データの書き込み速度を通常のものより高速とすることが 望ま しい場合がある。 例えばネッ 卜ワークを介して音楽データを配信 する電子音楽配信 E M Dが実用化されつつある。 パーソナルコンピュ 一タのハ一ドデイスクに配信された音楽デ一タを蓄え、 所望の曲のデ 一夕をパーソナルコンピュータによってメモリカードにコピーまたは ムーブし、 そのメモリカードを携帯型のレコーダに装着することによ つて、 簡単に好みの音楽を自宅以外で聞く ことができる。 ハードディ スクからメモリカードに複数の曲のデータを並列書き込み (高速) で ダウンロードし、 再生時には、 通常の速度でメモリカードから曲デー 夕を読み出すようになされる。
第 1 4図は、 4個のス ト レージに対する従来の論理ァ ドレスの構成 を示す。 図の例では、 メモリ のア ド レス空間が A 0 , A 1 , · · · , A 1 0の 1 1 ビッ トで表される。 A 0が L S B (最下位ビッ ト) であ り、 A 1 0が M S B (最上位ビッ 卜) である。 M S Bおよび第 2番目 の M S B ( A 1 0 , A 9 ) によって、 各 4 M Bのス ト レージが切り換 えられる。 また、 各ス ト レージのセクタおよびセグメ ン トに対して、 A O〜A 8の 9 ビッ トのア ドレスが割り振られる。
また、 データを書き込む時には、 第 1 5図に示すような夕イミ ング で動作がなされる。 最初にホス 卜側からセクタサイズのページバッフ ァに対してデータが転送される。 転送のために Tなる時間を要する。 次のライ 卜 ビジーの期間では、 ページバッファからフラッシュメモリ 内部のフラッシュバッファに対してデータが転送され、 ス ト レージに 対してデータが書き込まれる。
読み出し時には、 第 1 6図に示すように、 リ一ドビジーの期間にお いてフラッシュメモリからデータが読み出され、 セクタサイズのぺ一 ジバッファに対して読み出しデータが転送される。 次の転送時間丁に おいて、 ページバッファからホス 卜側に対してデ一夕が転送される。 第 1 7図は、 あるセグメ ン ト内でそれぞれが異なるクラスタに属す る連続する論理セクタ 0 〜 3に対してデ一タを書き込む時の処理の流 れを示すフローチャートである。 最初のステップ S 1 1 では、 書き込 み対象のセグメ ン 卜に関して論理物理変換テーブルが作成される。 ス テツプ S 1 2では、 ホス ト側からセクタ 0が送出される。 この転送に 時間 Tを要する。 そして、 ステップ S 1 3では、 セクタ 0がフラッシ ュメモリに書き込まれる。 ステツプ S 1 では、 ホス 卜側からセクタ 1 が送出され、 ステップ S 1 5では、 セクタ 1 がフラッシュメモリに 書き込まれる。 以下、 セクタ 2の送出 (ステップ S 1 6 ) 、 セク タ 2 の書き込み (ステップ S 1 7 ) 、 セクタ 3の送出 (ステップ S 1 8 ) 、 セクタ 3の書き込み (ステップ S 1 9 ) の処理が順になされる。 従 来では、 例えば 4個のス 卜 レ一ジを並列に備えていても、 一つのス 卜 レ一ジにアクセスが集中するために処理の高速化ができない。
フラッシュメモリ上の 1 セクタのデータ構成は、 第 1 8図に示すよ うに、 5 1 2バイ 卜のデータに対して、 管理情報が記録される 1 6バ ィ ト長のエリアが付加されている。 管理情報は、 論理クラスタ番号、 クラスタ管理情報および属性情報からなる。 クラスタ管理情報は、 あ るクラスタ内の全セク夕で同じ情報とされており、 クラスタの有効/ 無効の情報等を含む。 属性情報は、 セクタ毎の情報であり、 著作権情 報等を含む。 例えばフラッシュメモリが機器に装着される時に、 ホス ト側が管理情報を読み、 そのセグメ ン トについての論理クラスタ と物 理クラスタのテ一ブルを作成する。
メモ リに対する並列書き込みを行う場合、 一般的には、 入力データ を並列データに変換し、 並列化されたデータを同時にメモリ に書く よ うになされる。 フラッシュメモリの書き込み/読み出しは、 セクタ単 位でなされるので、 複数のセク タのデータが並列化される。 第 〖 9図 おいて、 5 0がオーディオファイル等のデータを示す。 ここでは、 1 個のファイルのデータ 5 0のサイズが 4個のクラスタのデ一夕量と一 致しているものと仮定する。 データ 5 0の 5 1 2バイ ト每がフラッシ ュメモリの各セクタに書き込まれる。 例えば先頭の連続する 0、 1、 2、 3の 4セクタ分のデータが同時にス ト レージ 0〜ス ト レージ 3の それぞれのセクタに書き込まれる。
第 1 9図に示したように、 デー夕ファイル 5 0 の連続する 4 セクタ 分のデータが各ス 卜 レージに分散するように並列的な記録を行う と、 同一ス ト レージ内に 1 クラスタが配置される既存のフアイルフォーマ ッ ト と異なるフォーマツ 卜が生じる。 すなわち、 従来のファイルフォ —マツ 卜は、 各ス ト レージの 1 6個のセクタのまとま りをクラスタと して扱い、 クラスタ単位でのデータの消去を行うようにしている。 一 方、 第 1 9図の方法で記録したフラッ シュメモ リでは、 連続する 1 6 セク夕のデータを消去するためには、 4個のス ト レージのそれぞれの 4 セク夕で構成されるクラスタを消去しなければならない。 その結果 、 消去ェリアと 1 または複数のクラスタエリアとがー致しなくなり、 フ ァイルフォーマツ 卜に関して既存のフラッ シュメモリ との互換性が 失われる。
従って、 この発明の目的は、 並列書き込みによ り書き込み時の性能 を向上させる時に、 従来の不揮発性メモリ とファイルフォーマツ 卜の 互換性を保つことが可能な記録システム、 データ記録装置、 メモリ装 置およびデータ記録方法を提供することにある。
発明の開示
上述した課題を解決するために、 請求の範囲 1 の発明は、 それぞれ が複数のセクタからなるクラスタの複数個によつて構成される不揮発 性メモリ を備える、 着脱自在なメモリ装置と、 メモリ装置に対して連 続する複数のセクタからなるデータを記録するデータ記録装置とを備 える記録システムにおいて、
データを記録するセク夕のア ドレスを指定するァ ドレス指定手段と ァ ドレス指定手段により指定されたセク夕に対してデータの記録を 行う記録手段とを備え、
ァ ドレス指定手段は、 複数のクラス夕内の複数のセクタア ドレスを 指定可能であり、 記録データの連続するセク夕がクラスタ内で連続す るセクタとして記録されるようにア ドレスを指定し、
記録手段は、 同時に複数のセク夕に対して記録が可能であることを 特徴とする記録システムである。
請求の範囲 2の発明は、 着脱自在で、 不揮発性メモリ を含むメモリ 装置を記録媒体として使用するデータ記録装置において、
メモ リ装置に対して複数のセク夕のデ一タを並列的に記録するため のァ ド レス指定手段を備え、
ァ ドレス指定手段は、 複数のクラスタ内の複数のセクタア ドレスを 指定可能であり、 記録データの連続するセク夕がクラスタ内で連続す るセクタとして記録されるようにァ ドレスを指定することを特徴とす るデータ記録装置である。
請求の範囲 3の発明は、 データ記録装置に対して着脱自在のメモリ 装置において、
不揮発性メモ リ と、
データの記録を行う記録手段と、
データ記録装置と不揮発性メモリおよびセキュリティ手段との間に 配されたインタフユース手段とを備え、
記録手段は、 記録データの連続するセクタがクラスタ内で連続する セクタとして記録されるように、 同時に複数のセクタに対して記録が 可能であることを特徴とするメモリ装置である。
請求の範囲 6の発明は、 複数のセク夕によって 1 クラス夕が構成さ れ、 複数のクラスタに跨がるデータを複数のス 卜 レージに対して並列 的に記録するデータ記録方法において、
並列書き込み処理後に、 各クラスタ内でセクタが連続して並ぶよう に、 複数のクラスタから書き込みセクタを選択し、
選択した複数の書き込みセクタを並列的に記録することを特徴とす るデータ記録方法である。
この発明では、 並列的にデータを書き込んだ結果、 各クラスタが同 一のス ト レージ上で構成される。 従って、 既存のメモリ装置とファィ ルフォーマツ トの互換性を保つことができる。
図面の簡単な説明
第 1図は、 この発明の一実施形態の全体的構成を示すプロッ ク図で ある。
第 2図は、 この発明の一実施形態におけるメモリ カードの構成を概 略的に示すプロッ ク図である。
第 3図は、 この発明の一実施形態におけるメモリ カー ドのより詳細 な構成を示すプロッ ク図である。
第 4図は、 この発明の一実施形態におけるァ ドレス構成を説明する ための略線図である。
第 5図は、 この発明の一実施形態における並列書き込み動作を説明 するための略線図である。
第 6図は、 この発明の一実施形態の書き込み動作を説明するための タイ ミ ングチャー トである。
第 7図は、 この発明の一実施形態の読み出し動作を説明するための タイ ミ ングチャー トである。 第 8図は、 この発明の一実施形態の書き込み動作を説明するための フローチヤ一卜である。
第 9図は、 この発明の一実施形態におけるス 卜 レ一ジの切り換えを 説明するためのブロッ ク図である。
第 1 0図は、 この発明の一実施形態におけるス ト レージの切り換え を説明するための略線図である。
第 1 1図は、 この発明の一実施形態におけるセグメ ントと論理クラ ス夕ア ドレスの関係を示す略線図である。
第 1 2図は、 この発明を適用できるフラッ シュメモ リ の一例の構成 を示す略線図である。
第 1 3図は、 この発明を適用できるフラッシュメモリの論理—物理 ァ ドレス変換テーブルの一例を示す略線図である。
第 1 4図は、 従来のア ドレス構成を説明するための略線図である。 第 1 5図は、 従来の書き込み動作を説明するためのタイミ ングチヤ —卜である。
第 1 6図は、 従来の読み出し動作を説明するためのタイミ ングチヤ —卜である。
第 1 7図は、 従来の書き込み動作を説明するためのフローチヤ一ト である。
第 1 8図は、 セクタ構成と管理情報を説明するための略線図である 第 1 9図は、 従来の並列書き込み動作を説明するための略線図であ る。
発明を実施するための最良の形態
以下、 この発明の一実施形態について説明する。 第 1図は、 この発 明を 商用できるシステムの構成を示す。 このシステムでは、 ホス ト側 のデータ処理装置とメモリ カー ドとがシリアルイ ンタ一フヱースを介 して接続される。 第 1 図において、 1 が C P Uであり、 C P U 1 のバ スに対してメモリ 2、 ディスプレイ 3および入力/出力部 4が接続さ れる。
シリアルイ ンターフェース 5が C P Uバスと破線で囲んだメモリ力 ー ド 6 との間に配される。 メモリ 2は、 プログラム格納用の R〇 M、 ワークエリアとして使用される R A Mを含む。 データ処理装置は、 具 体的には、 パーソナルコンピュータ、 ディジタルスチルカメラ、 ディ ジタルビデォカメラ、 ディジタルオーディオレコ一ダ等である。 メモ リカ一 ド 6は、 フラッシュメモリ 7 を有する。 フラッシュメモリ 7は 、 例えば N A N D型フラッシュメモリ (不揮発性メモリ) である。 メ モリカード 6には、 記憶されるコンテンッの著作権保護のために、 暗 号化回路が組み込まれる場合もある。
なお、 この発明は、 データ処理装置とメモリカー ド 6 との間のデー タの授受をシリァルイ ンターフエースではなく、 パラレルイ ンターフ ヱースにより行う場合に対しても適用できる。
フラッシュメモリ 7は、 例えば 4 M B X 4 = 1 6 M Bのものである 。 第 1 2図を参照して上述したように、 4 M B (メガバイ ト) のフラ ッシュメモリの場合、 1 セグメ ン トが 5 1 2個のクラス夕へ分割され 、 1 クラスタが 1 6個のセクタへ分割される。 1 クラスタが 8 K B ( Kバイ 卜) バイ トの容量とされ、 1 セクタが 5 1 2' Bの容量とされる 。 そして、 第 1 3図 Aを参照して説明したように、 1 6 M Bのメモリ 空間に対して、 論理クラスタァ ドレスが割り振られ、 第 1 3図 Bを参 照して説明したように、 論理クラスタア ドレスと物理クラスタァ ドレ スとの対応関係を示す論理一物理ァ ドレス変換テーブルがセグメ ント 単位で作成される。 さ らに、 上述したように、 4 M B X 4 = 1 6 M B のフラ ッ シュ メモ リ には、 A O , A 1 , · · · , A 1 0 の 1 1 ビッ ト の物理クラス夕ァ ドレスが使用される。
フラッシュメモ リ 7は、 第 2図に示すように、 並列書き込みが可能 なものとされている。 第 2図は、 簡単のためにデータ入力/出力に関 連する部分のみを示している。 ス ト レージ 0〜ス ト レージ 3にそれぞ れ対応する 4個のメモリセル M C 0〜M C 3が備えられ、 各メモ リセ ル M C 0 ~ M C 3に対するデータは、 データバスおよびフラッシュバ ッファ B F 0〜B F 3 をそれぞれ介して供給される。 すなわち、 デ一 夕バスを介してフラッシュノくッファ B F 0〜 B F 3にそれぞれ 1 ぺ一 ジの書き込みデータが蓄えられると、 フラッ シュバッファ B F 0〜B F 3から同時にメモ リセル M C 0〜M C 3に対してデータが転送され る。 第 2図の例は、 一つの I Cパッケージが 4個のス 卜 レージを備え る例であるが、 別々のパッケージのフラッシュメモリを 4個使用して もよい。 さらに、 複数のス ト レージをパッケージ内に有するフラッシ ュメモ リ を複数個組み合わせても良い。
第 3図は、 この発明を適用できるメモリカード 6のよ り具体的な構 成を示す。 メモリカード 6 は、 コン トロールブロッ ク 1 1 とフラッシ ュメモリ 7 と力 1 チップ I Cとして構成されたものである。 デ一夕処 理装置の C P U 1 とメモリ カー ド 6 との間の双方向シリァルインタフ エース 5は、 1 0本の線からなる。 主要な 4本の線は、 データ伝送時 にクロッ クを伝送するためのクロッ ク線 S C Kと、 ステータスを伝送 するためのステータス線 S B S と、 データを伝送するデ一夕線 D I 0 、 イ ンターラプト線 I N Tとである。 その他に電源供給用線として、 2本の G N D線および 1本の V C C線が設けられる。 1本の線 R e s e r νは、 未定義の線である。
クロッ ク線 S C Κは、 データに同期したクロッ クを伝送するための 線である。 ステータス線 S B Sは、 メモリ カー ド 6のステータスを表 す信号を伝送するための線である。 データ線 D I 〇は、 コマン ドおよ び暗号化されたオーディオデー夕を入出力するための線である。 ィ ン ターラプト線 I N Tは、 メモリカード 6からデータ処理装置の C P U 1 に対しての割り込みを要求するィ ンタ一ラブ卜信号を伝送する線で ある。 メモリカー ド 6 を装着した時にィ ンターラブト信号が発生する 。 但し、 この一実施形態では、 かかるイ ンターラプト信号をデータ線 D I 〇を介して伝送するようにしているので、 イ ンターラプト線 I N Tを接地し、 使用していない。
コ ン トロールブロッ ク 1 1 のシリアル Zパラ レル変換 ' パラレル / シ リ アル変換 ' イ ンタフェースクラスタ ( S / P , P / S , I F クラ ス夕 と略す) 1 2 は、 上述したイ ン夕一フェース 5 と接続される。 S / P , P / S , I Fブロッ ク 1 2は、 データ処理装置から受け取った シリァルデータをパラ レルデ一タに変換し、 コントロールブロッ ク 1 1 に取り込み、 コントロールブロッ ク i 1 からのパラレルデ一タをシ リアルデータに変換してデータ処理装置に送る。
データ線 D I 0を介して伝送されるフォーマッ 卜では、 最初にコマ ン ドが伝送され、 その後にデータが伝送される。 S Z P , P / S , I Fブロッ ク 1 2は、 コマン ドをコマン ドレジス夕 1 3に格納し、 デー タをページバッファ 1 4およびライ ト レジスタ 1 5 に格納する。 ライ 卜 レジスタ 1 5 と関連してエラー訂正符号化回路 1 6が設けられてい る。 ページバッファ 1 4に一時的に蓄えられたデータに対して、 エラ —訂正符号化回路 1 6がエラー訂正符号の冗長コー ドを生成する。 コマン ドレジスタ 1 3、 ページバッファ 1 4 、 ライ ト レジスタ 1 5 およびエラー訂正符号化回路 1 5 の出力データがフラ ッ シュメモリイ ン夕フェースおよびシーケンサ (メモ リ I / F , シーケンサと略す) 1 7に供給される。 メモ リ I F, シーケ ンサ 1 7は、 コ ン ト ロールブ ロッ ク 1 I とフラッシュメモリ 7 とのイ ンタフェースであり、 両者の 間のデータのやり取りを制御する。 メモリ I F, シーケンサ 1 7 を介 してデータがフラッシュメモリ 7に書き込まれる。
フラッシュメモリ 7から読み出されたデータがメモリ I F, シ一ケ ンサ 1 7 を介してページバッファ 1 4、 リー ドレジスタ 1 8、 エラー 訂正回路 1 9に供給される。 ページバッファ 1 4 に記憶されたデータ がエラー訂正回路 1 9によってエラ一訂正がなされる。 エラ一訂正が されたページバッファ 1 4の出力およびリー ドレジスタ 1 8の出力が S / P , P / S , I Fブロッ ク 1 2に供給され、 シリアルイ ンタフエ ース 5 を介してデータ処理装置の C P U 1 に供給される。
なお、 2 0は、 メモリカード 6のバージョ ン情報、 各種の属性情報 等が格納されているコンフィグレーショ ン R〇 Mである。 また、 メモ リカード 6には、 ユーザが必要に応じて操作可能な誤消去防止用のス イッチ 2 1 が備えられている。 このスィ ッチ 2 1 が消去禁止の接続状 態にある場合には、 フラッシュメモリ 7 を消去することを指示するコ マン ドがデー夕処理装置側から送られてきても、 フラッシュメモ リ 7 の消去が禁止される。 さらに、 2 2は、 メモリカード 6の処理のタイ ミ ング基準となるクロッ クを発生する発振器である。
この発明の一実施形態におけるデータ処理装置とメモリカード 6 と の間のシリアンイ ンタフエースについてよ り詳細に説明する。 メモリ カード 6からデータを読み出す時には、 データ処理装置からメモ リ力 一ド 6に対して読み出しコマン ドが送信され、 メモリカード 6が読み 出しコマン ドを受信する。 コマン ドの送信が完了すると、 メモリ力一 ド 6が受信した読み出しコマン ドで指定されたァ ドレスのデータをフ ラッ シュメモ リ 7から読み出す処理を行う。 この処理がなされている 間、 データ線 D I 0を介してビジー信号 (ハイ レベル) がデータ処理 装置に送信される。 そして、 フラッシュメモリ 7からデータの読み出 しが完了すると、 ビジー信号の出力が停止され、 データ処理装置に対 してメモリカード 6からデータを送出する準備ができたことを示すレ ディー信号 (ローレベル) の出力が開始される。
データ処理装置は、 メモリカー ド 6からレディ一信号を受信するこ とによって、 読み出しコマン ドに対応する処理が準備できたことを知 り、 メモリカード 6は、 ページバッファに読み出したデータをデ一夕 線 D I ◦を介してデータ処理装置に対して出力する。 これらの各処理 がなされる状態がステータス線 S B Sのレベル変化で示される。
メモリカード 6のフラッシュメモリ 7に対してデ一タを書き込む時 には、 データ処理装置からメモリカード 6に対してデータ線 D I 〇を 介して書き込みコマン ドが伝送される。 書き込みコマン ドと関連して 書き込みァ ドレスが伝送される。 フラッシュメモリ 7では、 セクタ単 位でデータの書き込み、 読み出しがなされるが、 データ処理装置では 、 クラスタ単位でファイルを管理しており、 データ処理装置からのァ ドレスは、 クラスタ単位である。 次に、 データ処理装置が書き込みデ —夕をデータ線 D I 0を介してメモリ カード 6に伝送する。 メモリ力 ー ド 6では、 受け取った書き込みデー夕がページバッファに蓄えられ る。 書き込みデータの伝送が終了すると、 メモリカード 6 は、 書き込 みデータをフラッ シュメモ リ 7へ書き込む処理を行う。 書き込み処理 の間にビジー信号が出力され、 メモリカード 6において、 書き込みデ 一夕の書き込み処理が終了すると、 ビジ一信号の出力を停止し、 レデ ィー信号 (ローレベル) をデータ処理装置に対して送信する。
並列的な書き込みをシリアルイ ンターフヱ一スを介して行う場合に は、 ス ト レージ 0に書き込むためのコマン ド、 ア ドレス、 データを伝 送した後にビジー信号が立つている状態において、 ス ト レージ 1 に書 き込むためのコマン ド、 ア ドレス、 データと、 ス ト レ一ジ 2 に書き込 むためのコマン ド、 ア ドレス、 データと、 ス ト レ一ジ 3 に書き込むた めのコマン ド、 ア ドレス、 データとを順次伝送する。 そして、 再びス ト レージ 0に書き込むためのコマン ド、 ア ドレス、 データを伝送する 。 この時点では、 以前のス ト レ一ジ 0に対するデータの書き込み処理 が終了しており、 ビジー信号が立ち下がっている。 このような動作を 繰り返すことによって並列的書き込みを行うことができる。 但し、 4 個のシリァルイ ンターフヱースを並列に使用するような方法でもつて 、 同時にコマン ド、 ア ドレス、 デー夕を伝送することも可能である。 上述したこの発明の一実施形態についてさ らに詳細に説明する。 第 4図は、 一実施形態におけるァ ドレスの構成を示す。 メモリ のァ ドレ ス空間が A 0 , A 1 , · · · , A 1 0の 1 1 ビッ トで表される。 A O が L S B (最下位ビッ ト) であり、 A 1 0が M S B (最上位ビッ ト) である。 L S Bおよび第 2番目の L S B ( A 0 0 , A 1 ) によって、 各 4 M Bのス ト レージが切り換えられる。 また、 各ス 卜 レ一ジのセク 夕およびセグメ ン トに対して、 A 2 ~ A 1 0の 9 ビッ トのア ドレスが 割り振られる。
第 5図は、 メモリカード 6 を記憶媒体とする第 1 図のシステムにお いて、 ファイル管理の方法を説明するための図である。 第 5図におい て、 3 0は、 データフアイル例えば圧縮されたオーディォデータファ ィルのデータを示す。 圧縮オーディオデータは、 通常、 曲ごとにファ ィルが作成され、 そのフアイルがセク夕単位でメモリカード 6のフラ ッシュメモリ 7に対して記録され、 フラッシュメモリ 7から読み出さ れる。
このようなデータ 3 0 を並列的にフラッシュメモリ 7に記録する場 合に、 第 5図に示すように、 書き込み処理後に、 各クラスタ内でセク タが連続で並ぶように、 複数のクラスタから書き込みセクタを選択し 、 選択したセクタに対して同時にデータを書き込む。 データ 3 0のサ ィズが 4個のクラス夕に一致しているものとすると、 データ 3 0がフ ラッシュメモリ 7の 4個のクラスタに記録される。
第 5図に示すように、 書き込み後に各ス ト レージの各クラスタ内で 、 セク タが元の順序で並ぶようになされる。 例えば 0, し 2 , 3、 • ' ' と元の順序に従って番号付けされたセクタをス ト レージ 0〜ス 卜 レージ 3に対して並列的に書き込む場合に、 番号 0のデータをス ト レ一ジ 0のクラス夕の先頭セク夕に記録し、 番号 1 6のデータをス 卜 レージ 1 のクラスタの先頭セクタに記録し、 番号 3 2のデータをス ト レージ 2のクラスタの先頭セクタに記録し、 番号 4 8のデータをス ト レ一ジ 3のクラスタの先頭セク夕に記録する。
このように、 セクタ每にデータを番号付けした時に、 クラス夕のセ クタ数に等しい数のオフセッ トを有する番号の 4個のデータ単位を並 列化し、 4個のス ト レージに対して同時に書き込む。 その結果、 フラ ッシュメモリ 7の各ス ト レージでは、 既存のフラッシュメモリ と同様 に同一ス 卜 レージ内で構成されるクラス夕内に、 データが元の順序で 配列される。 従って、 既存のフラッシュメモリのファイルフォーマツ 卜 との互換性が保たれる。
このように記録されたフラッシュメモリからデータ力 1 クラスタ毎 に川頁番に読み出される。 例えば第 5図のス 卜 レージ 0のクラスタの先 頭セクタから順にデータを読み出し、 次に、 ス ト レ一ジ 1 のクラス夕 の先頭セク夕から順にデ一タを読み出し、 以下、 ス 卜レ一ジ 2のクラ スタ、 ス ト レージ 3のクラスタというように順にデータを読み出すよ うになされる。 読み出されたデータの順序は、 元の順序と同一である 。 消去動作は、 各ス 卜 レージ毎に構成されるクラスタ単位でなされる このように、 一実施形態における並列書き込み後のデータ配置は、 既存のフラッシュメモリ と同様に、 同一ス ト レージ内にクラスタが構 成されるものとなる。 従って、 既存のフラッシュメモリ とファイルフ ォーマツ 卜上で互換性を保つことができる。
第 6図は、 一実施形態における書き込み動作を示すものである。 最 初にホス 卜側からセクタサイズのページバッファに対してデータが転 送され、 さらに、 ページノ ッファからス ト レ一ジ 0のフラッシュバッ ファ B F 0に対してデータが転送される。 転送のために Tなる時間を 要する。 次のライ 卜 ビジ一の期間では、 フラッシュバッファ B F ◦力、 ら、 ス ト レ一ジ 0に対してデータが書き込まれる。 最初の転送期間 T の後では、 次のセクタのデ一夕が転送され、 ライ ト ビジーの期間でス 卜 レ一ジ 1 に書き込まれる。 このようにして、 並行してス 卜 レージ 0 〜ス ト レージ 3に対する書き込み動作がなされるので、 第 i 5図に示 される従来の書き込み動作に比して書き込みの高速化が達成される。 読み出し時には、 第 7図に示すように、 リードビジーの期間におい て、 ス ト レージ 0〜 3のそれぞれからデータが読み出され、 セクタサ ィズのフラッシュバッファ B F 0〜 B F 3に対して読み出しデータが 転送される。 次の転送時間 Tにおいて、 フラッシュバッファ B F 0力、 らページバッファに対してデータが転送され、 さらに、 ページバッフ ァからホス ト側に対してデータが転送される。 以下、 フラッシュバッ ファ B F 1 、 B F 2、 B F 3から順にページバッファに対してデータ が出力され、 ページバッファからホス 卜側に対してデータが転送され る。 リードビジ一を順に行う従来の読み出し動作の処理 (第 1 6図) に比して読み出しの高速化が達成される。 第 8図は、 あるセグメ ン 卜内でそれぞれが異なるクラスタに属する 連続する論理セクタ 0〜 3に対してデータを書き込む時の処理の流れ を示すフローチャートである。 最初のステップ S 1 では、 書き込み対 象のセグメ ン 卜に関して論理物理変換テーブルが作成される。 ステツ プ S 2では、 ホス ト側からページバッファに対してセクタ 0が送出さ れ、 ページバッファからフラッシュノ ッファに対してセクタ 0のデ一 夕が転送される。 この転送に時間 Tを要する。 次のステップ S 3では 、 セクタ 1 の送出がなされるのと並行して、 ステップ S 4でセクタ 0 がフラッシュメモリの一つのス 卜 レージに書き込まれる。
ステップ S 5では、 セクタ 2が送出され、 ステップ S 6では、 並行 してセクタ 1 がフラッシュメモリの一つのス ト レージに書き込まれる 。 以下、 セクタ 3の送出 (ステップ S 7 ) 、 セクタ 2の書き込み (ス テツブ S 8 ) 、 セクタ 3の書き込み (ステップ S 9 ) の処理が同様に なされる。 この発明の一実施形態では、 従来のように、 一つのス ト レ ージに対してアクセスが集中することがなく、 また、 セグメ ントが切 り替わらないので、 論理物理変換テーブルを作成する必要がないので 、 処理を高速化することができる。
上述したような並列書き込みを行い、 また、 書き込まれたデータを 読みだす時のス 卜 レージ切り換えの方法の一例について説明する。 第 9図は、 一実施形態における 4個のス ト レージに対するア ドレス供給 の構成を示し、 第 1 0図は、 4 M B x 4 = 1 6 M Bのフラッシュメモ リの物理ァ ドレスを示す。
第 4図を参照して説明したように、 物理ァ ドレスは、 A 0, A 1 , - - . , A 1 0の 1 1 ビッ トで表される。 A 0 がし S B (最下位ビッ 卜) であり、 A 1 0が M S B (最上位ビッ 卜) である。
この発明の一実施形態では、 生成した 1 1 ビッ トのア ドレス A O〜 A 1 0 をフラッシュメモリに与える時に、 ア ドレス A 2〜A 1 0 をセ クタおよびセグメ ン 卜のァ ドレスを規定するァ ドレスとしてフラッシ ュメモ リに供給し、 また、 下位の A 0、 A 1 の 2 ビッ トをス ト レージ 切り換えを規定するァ ドレスとしてフラッシュメモ リに供給する。 す なわち、 第 9図に示すように、 上位側の 9 ビッ 卜のア ドレス A 2〜A 1 0が 4個のス ト レージ ( 0〜 3 ) に対して共通に与えられる。 また 、 下位側の 2 ビッ 卜のア ドレス A 0および A 1 が 2 to 4デコーダ 4 0 に供給され、 デコーダ 4 0から各ス ト レージを選択するための選択信 号 C S O , C S 1 , C S 2 , C S 3が発生する。 (A し A O ) = 0 0の場合には、 ス 卜 レージ 0 を選択する選択信号 C S 0がデコーダ 4 0から発生する。 また、 (A 1 , A 0 ) = 0 1、 ( A 1 , A 0 ) = 1 0、 ( A 1 , A O ) = 1 1 の場合に、 ス ト レージ 1 、 ス ト レージ 2、 ス ト レージ 3 をそれぞれ選択する選択信号 C S 1、 C S 2、 C S 3が デコーダ 4 0から発生する。 デコーダ 4 0は、 第 3図の構成例では、 メモリ I F, シーケンサ 1 7内に設けられる。
このようなス ト レ一ジの切り換えを行う場合、 1 1 ビッ トが全て 0 からこれが全て 1 まで物理ァ ドレスをイ ンク リ メ ン トさせた時のァ ド レス変化を、 第 1 0図において矢印で示す。 すなわち、 ス ト レージ 0 の先頭クラスタからア ドレス変化が開始し、 次にス ト レージ 1 の先頭 クラスタが指定される。 そして、 ス ト レージ 2の先頭クラスタを経て 、 ス 卜 レージ 3の先頭クラスタまでァ ドレスが変化すると、 次にス 卜 レージ 0の第 2番目のクラスタに移るように、 物理クラス夕ア ドレス が変化する。
この発明の一実施形態におけるセグメ ン ト と論理クラスタア ドレス の配置を第 1 1図に示す。 第 1 1 図の論理クラスタア ドレスの配置か ら分かるように、 1 セグメ ン 卜に含まれる 5 1 2 クラスタは、 4個の ス 卜 レージにそれぞれ含まれる 1 2 8個のクラスタによつて構成され る。 このセグメ ン ト每に論理一物理ァ ドレス変換テーブルが生成され る。 従って、 セグメ ン トが変更されなければ、 参照または更新する論 理ー物理ァ ドレス変換テーブルが変わらず、 テーブルをァクセスした り、 テーブルを更新することによる読み出し性能の低下を防止するこ とができる。 また、 連続した論理クラスタア ドレス例えば 0 X 0 0 0 4〜 0 X 0 0 0 7に対して同時にデータを書き込むことができる。 なお、 論理クラスタア ドレスが 0 x 0 0 0 0, 0 x 0 2 0 0 , O x 0 4 0 0 , 0 x 0 6 0 0のように、 不連続な場合には、 一つのス ト レ ージ上にこれらのア ドレスが存在するので、 同時に書き込むことが不 可能である。 しかしながら、 このような不連続なクラスタア ドレスに 対して連続した論理セクタを書き込む処理が実際に発生する確率が非 常に低いので、 大きな問題とならない。
なお、 以上説明した一実施形態では、 1 セクタが 5 1 2 B、 1 クラ ス夕が 8 Kバイ ト、 1 ス ト レージが 5 1 2 クラスタとされる 4 M Bの フラッシュメモリについて説明したが、 これらの値は、 一例であって 他の数値のフラッシュメモリに対しても、 この発明を適用できる。 例 えば I クラスタの容量を 1 6 K Bとしても良い。 また、 1個のス ト レ ージの容量が 81^8 ( 1 0 2 4 クラス夕 8 }: 8 ) 、 1 6 M B ( 1 0 2 4 クラス夕 x l 6 K B ) 、 3 21^8 ( 2 0 4 8 クラス夕 1 6 1 8 ) 、 6 4 MB ( 4 0 9 6 クラス夕 X 1 6 K B ) 等のフラッシュメモリ に対してもこの発明を適用することができる。
この発明によれば、 各クラス夕が複数のス 卜 レージに分散せず、 ま た、 各クラスタ内でセクタが連続的に並ぶように並列的記録がなされ るので、 書き込み処理の性能が向上し、 ファイルフォーマツ ト上で既 存のフラッシュメモリ と互換性を保つことができる。

Claims

請求の範囲
1 . それぞれが複数のセクタからなるクラスタの複数個によって構成 される不揮発性メモ リ を備える、 着脱自在なメモリ装置と、 上記メモ リ装置に対して連続する複数のセクタからなるデータを記録するデー 夕記録装置とを備える記録システムにおいて、
データを記録するセク夕のア ドレスを指定するァ ドレス指定手段と 上記ァ ドレス指定手段により指定されたセクタに対してデータの記 録を行う記録手段とを備え、
上記ァ ドレス指定手段は、 複数のクラスタ内の複数のセクタァ ドレ スを指定可能であり、 上記記録データの連続するセク夕が上記クラス 夕内で連続するセクタとして記録されるようにァ ドレスを指定し、 上記記録手段は、 同時に複数のセクタに対して記録が可能であるこ とを特徴とする記録システム。
2 . 着脱自在で、 不揮発性メモ リ を含むメモ リ装置を記録媒体と して 使用するデータ記録装置において、
メモリ装置に対して複数のセクタのデ一夕を並列的に記録するため のァ ドレス指定手段を備え、
上記ァ ドレス指定手段は、 複数のクラスタ内の複数のセクタァ ドレ スを指定可能であり、 上記記録データの連続するセクタが上記クラス 夕内で連続するセクタとして記録されるようにア ドレスを指定するこ とを特徴とするデータ記録装置。
3 . データ記録装置に対して着脱自在のメモリ装置において、
不揮発性メモリ と、
データの記録を行う記録手段と、
データ記録装置と上記不揮発性メモリおよび上記セキュリティ手段 との間に配されたイ ンタフェース手段とを備え、
上記記録手段は、 上記記録データの連続するセク夕が上記クラス夕 内で連続するセク夕として記録されるように、 同時に複数のセク夕に 対して記録が可能であることを特徴とするメモリ装置。
4 . 請求の範囲 3において、
さ らにア ドレス指定手段を有し、
上記記録手段がデータを記録するァ ドレスが上記ァ ドレス指定手段 によつて指定されることを特徴とするメモ リ装置。
5 . 請求の範囲 3において、
クラスタのセクタ数に等しいオフセッ 卜を有する複数のデータを並 列化し、 並列化されたデータを複数のス 卜 レージに同時に書き込むこ とを特徴とするメモリ装置。
6 . 複数のセクタによって 1 クラスタが構成され、 複数の上記クラス タに跨がるデータを複数のス 卜 レージに対して並列的に記録するデー 夕記録方法において、
並列書き込み処理後に、 各クラスタ内でセク夕が連続して並ぶよう に、 複数のクラスタから書き込みセクタを選択し、
選択した複数の上記書き込みセク夕を並列的に記録することを特徴 とするデータ記録方法。
PCT/JP2000/005056 1999-07-28 2000-07-28 Systeme d'enregistrement, dispositif d'enregistrement de donnees, dispositif a memoire et procede d'enregistrement de donnees WO2001008015A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE60037417T DE60037417D1 (de) 1999-07-28 2000-07-28 Aufnahmesystem, daten-aufnahmevorrichtung, speicher-vorrichtung, und daten-aufnahmeverfahren
EP00949931A EP1189139B1 (en) 1999-07-28 2000-07-28 Recording system, data recording device, memory device, and data recording method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP11/214088 1999-07-28
JP21408899 1999-07-28

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US09/806,133 A-371-Of-International US6388908B1 (en) 1999-07-28 2001-03-26 Recording system, data recording device, memory device, and data recording method
US10/118,402 Continuation US6525952B2 (en) 1999-07-28 2002-04-08 Recording system, data recording apparatus, memory apparatus, and data recording method

Publications (1)

Publication Number Publication Date
WO2001008015A1 true WO2001008015A1 (fr) 2001-02-01

Family

ID=16650039

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2000/005056 WO2001008015A1 (fr) 1999-07-28 2000-07-28 Systeme d'enregistrement, dispositif d'enregistrement de donnees, dispositif a memoire et procede d'enregistrement de donnees

Country Status (7)

Country Link
US (2) US6388908B1 (ja)
EP (1) EP1189139B1 (ja)
KR (1) KR100618298B1 (ja)
CN (1) CN100347684C (ja)
DE (1) DE60037417D1 (ja)
ES (1) ES2293916T3 (ja)
WO (1) WO2001008015A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100422920C (zh) * 2002-06-27 2008-10-01 索尼株式会社 信息处理设备、信息处理方法
US8151035B2 (en) 2004-12-16 2012-04-03 Sandisk Technologies Inc. Non-volatile memory and method with multi-stream updating
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9349479B1 (en) 2014-11-18 2016-05-24 Sandisk Technologies Inc. Boundary word line operation in nonvolatile memory
US9449700B2 (en) 2015-02-13 2016-09-20 Sandisk Technologies Llc Boundary word line search and open block read methods with reduced read disturb
US9552171B2 (en) 2014-10-29 2017-01-24 Sandisk Technologies Llc Read scrub with adaptive counter management
US9653154B2 (en) 2015-09-21 2017-05-16 Sandisk Technologies Llc Write abort detection for multi-state memories
US9978456B2 (en) 2014-11-17 2018-05-22 Sandisk Technologies Llc Techniques for reducing read disturb in partially written blocks of non-volatile memory

Families Citing this family (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100544175B1 (ko) * 1999-05-08 2006-01-23 삼성전자주식회사 링킹 타입 정보를 저장하는 기록 매체와 결함 영역 처리 방법
WO2001008014A1 (en) * 1999-07-28 2001-02-01 Sony Corporation Recording system, data recording device, memory device, and data recording method
TW539950B (en) * 2000-12-28 2003-07-01 Sony Corp Data recording device and data write method for flash memory
US7039780B2 (en) * 2001-06-05 2006-05-02 Hewlett-Packard Development Company, L.P. Digital camera memory system
US6760805B2 (en) * 2001-09-05 2004-07-06 M-Systems Flash Disk Pioneers Ltd. Flash management system for large page size
TW200302966A (en) * 2002-01-29 2003-08-16 Matsushita Electric Ind Co Ltd Memory device, data processing method and data processing program
JP2003233993A (ja) * 2002-02-08 2003-08-22 Matsushita Electric Ind Co Ltd 不揮発性記憶装置の書き換え方法
US6871257B2 (en) * 2002-02-22 2005-03-22 Sandisk Corporation Pipelined parallel programming operation in a non-volatile memory system
KR100463199B1 (ko) * 2002-03-04 2004-12-23 삼성전자주식회사 플렉서블 리던던시 스킴을 갖는 반도체 메모리 장치
US6766425B2 (en) * 2002-05-16 2004-07-20 Delphi Technologies, Inc. Calibration method implementing segmented flash memory and RAM overlay
US6891694B2 (en) * 2002-08-23 2005-05-10 Hitachi Global Storage Technologies Netherlands B.V. Method for writing streaming audiovisual data to a disk drive
US20040054846A1 (en) * 2002-09-16 2004-03-18 Wen-Tsung Liu Backup device with flash memory drive embedded
WO2004082270A1 (ja) * 2003-03-12 2004-09-23 Matsushita Electric Industrial Co., Ltd. カメラレコーダおよびデータ記録媒体
US7774557B2 (en) * 2003-07-29 2010-08-10 Hewlett-Packard Development Company, L.P. Storage access system and method for image forming device
US8195328B2 (en) * 2003-09-19 2012-06-05 Vesta Medical, Llc Combination disposal and dispensing apparatus and method
US7631138B2 (en) * 2003-12-30 2009-12-08 Sandisk Corporation Adaptive mode switching of flash memory address mapping based on host usage characteristics
US8504798B2 (en) 2003-12-30 2013-08-06 Sandisk Technologies Inc. Management of non-volatile memory systems having large erase blocks
US20050251617A1 (en) * 2004-05-07 2005-11-10 Sinclair Alan W Hybrid non-volatile memory system
US7490283B2 (en) 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
TW200539110A (en) * 2004-05-21 2005-12-01 Lite On It Corp Recording method with processing units and apparatus using the same
JP4157501B2 (ja) * 2004-06-30 2008-10-01 株式会社東芝 記憶装置
US7231545B2 (en) * 2004-08-05 2007-06-12 International Business Machines Corporation Apparatus and method to convert data from a first sector format to a second sector format
US7120051B2 (en) * 2004-12-14 2006-10-10 Sandisk Corporation Pipelined programming of non-volatile memories using early data
US7420847B2 (en) * 2004-12-14 2008-09-02 Sandisk Corporation Multi-state memory having data recovery after program fail
US7849381B2 (en) 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7409473B2 (en) 2004-12-21 2008-08-05 Sandisk Corporation Off-chip data relocation
US7212440B2 (en) * 2004-12-30 2007-05-01 Sandisk Corporation On-chip data grouping and alignment
US7706183B2 (en) * 2005-07-27 2010-04-27 Spansion Llc Read mode for flash memory
US7509471B2 (en) * 2005-10-27 2009-03-24 Sandisk Corporation Methods for adaptively handling data writes in non-volatile memories
US7631162B2 (en) 2005-10-27 2009-12-08 Sandisck Corporation Non-volatile memory with adaptive handling of data writes
JP4804479B2 (ja) * 2005-12-13 2011-11-02 スパンション エルエルシー 半導体装置およびその制御方法
US7423915B2 (en) * 2006-01-17 2008-09-09 Spansion Llc Random cache read using a double memory
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US8156403B2 (en) 2006-05-12 2012-04-10 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
CN103258572B (zh) 2006-05-12 2016-12-07 苹果公司 存储设备中的失真估计和消除
WO2007132452A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
US8060806B2 (en) * 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
US7975192B2 (en) * 2006-10-30 2011-07-05 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
CN101601094B (zh) * 2006-10-30 2013-03-27 苹果公司 使用多个门限读取存储单元的方法
US7924648B2 (en) * 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US7706182B2 (en) * 2006-12-03 2010-04-27 Anobit Technologies Ltd. Adaptive programming of analog memory cells using statistical characteristics
WO2008068747A2 (en) 2006-12-03 2008-06-12 Anobit Technologies Ltd. Automatic defect management in memory devices
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7751240B2 (en) * 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
KR100877609B1 (ko) * 2007-01-29 2009-01-09 삼성전자주식회사 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법
WO2008111058A2 (en) * 2007-03-12 2008-09-18 Anobit Technologies Ltd. Adaptive estimation of memory cell read thresholds
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
WO2008139441A2 (en) 2007-05-12 2008-11-20 Anobit Technologies Ltd. Memory device with internal signal processing unit
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) * 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7773413B2 (en) * 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
US8527819B2 (en) * 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
WO2009063450A2 (en) * 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) * 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) * 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) * 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) * 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) * 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) * 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
US8843692B2 (en) * 2010-04-27 2014-09-23 Conversant Intellectual Property Management Inc. System of interconnected nonvolatile memories having automatic status packet
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
WO2012048444A1 (en) * 2010-10-14 2012-04-19 Freescale Semiconductor, Inc. Are Memory controller and method for accessing a plurality of non-volatile memory arrays
CN102622412A (zh) * 2011-11-28 2012-08-01 中兴通讯股份有限公司 一种分布式文件系统中的并发写入方法及装置
JP2014085922A (ja) * 2012-10-25 2014-05-12 Sony Corp 情報処理装置および方法、並びにプログラム
US10796755B2 (en) 2018-04-19 2020-10-06 Micron Technology, Inc. Permutation coding for improved memory cell operations
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH064399A (ja) * 1992-06-22 1994-01-14 Hitachi Ltd 半導体記憶装置
US5572466A (en) * 1992-10-06 1996-11-05 Kabushiki Kaisha Toshiba Flash memory chips

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5291584A (en) * 1991-07-23 1994-03-01 Nexcom Technology, Inc. Methods and apparatus for hard disk emulation
TW212840B (en) * 1992-04-22 1993-09-11 Ibm Multi-bit vector for page aging
CA2284044A1 (en) * 1997-03-21 1998-10-01 Canal + Societe Anonyme Computer memory organization
JPH11203191A (ja) * 1997-11-13 1999-07-30 Seiko Epson Corp 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体
MY122279A (en) * 1999-03-03 2006-04-29 Sony Corp Nonvolatile memory and nonvolatile memory reproducing apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH064399A (ja) * 1992-06-22 1994-01-14 Hitachi Ltd 半導体記憶装置
US5572466A (en) * 1992-10-06 1996-11-05 Kabushiki Kaisha Toshiba Flash memory chips

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Sony, format kotei no flash memory card wo kaihatsu", NIKKEI ELECTRONICS, NIKKEI BP K.K., no. 696, 18 August 1997 (1997-08-18), (TOKYO), pages 13 - 14, XP002933283 *
See also references of EP1189139A4 *
TARO YOSHIO: "Kogata memory card de ongaku chosakuken wo mamoru", NIKKEI ELECTRONICS, NIKKEI BP K.K., no. 739, 22 March 1998 (1998-03-22), (TOKYO), pages 49 - 53, XP002933284 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100422920C (zh) * 2002-06-27 2008-10-01 索尼株式会社 信息处理设备、信息处理方法
US8151035B2 (en) 2004-12-16 2012-04-03 Sandisk Technologies Inc. Non-volatile memory and method with multi-stream updating
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9552171B2 (en) 2014-10-29 2017-01-24 Sandisk Technologies Llc Read scrub with adaptive counter management
US9978456B2 (en) 2014-11-17 2018-05-22 Sandisk Technologies Llc Techniques for reducing read disturb in partially written blocks of non-volatile memory
US9349479B1 (en) 2014-11-18 2016-05-24 Sandisk Technologies Inc. Boundary word line operation in nonvolatile memory
US9449700B2 (en) 2015-02-13 2016-09-20 Sandisk Technologies Llc Boundary word line search and open block read methods with reduced read disturb
US9653154B2 (en) 2015-09-21 2017-05-16 Sandisk Technologies Llc Write abort detection for multi-state memories
US9899077B2 (en) 2015-09-21 2018-02-20 Sandisk Technologies Llc Write abort detection for multi-state memories

Also Published As

Publication number Publication date
KR20010079944A (ko) 2001-08-22
US6525952B2 (en) 2003-02-25
US20020110014A1 (en) 2002-08-15
KR100618298B1 (ko) 2006-09-01
DE60037417D1 (de) 2008-01-24
EP1189139A4 (en) 2006-05-10
EP1189139A1 (en) 2002-03-20
CN100347684C (zh) 2007-11-07
CN1320242A (zh) 2001-10-31
ES2293916T3 (es) 2008-04-01
EP1189139B1 (en) 2007-12-12
US6388908B1 (en) 2002-05-14

Similar Documents

Publication Publication Date Title
WO2001008015A1 (fr) Systeme d'enregistrement, dispositif d'enregistrement de donnees, dispositif a memoire et procede d'enregistrement de donnees
KR100684061B1 (ko) 기록 시스템, 데이터 기록 장치, 메모리 장치 및 데이터기록 방법
US5905993A (en) Flash memory card with block memory address arrangement
US8291155B2 (en) Data access method, memory controller and memory storage system
JP4611024B2 (ja) ブロック内のページをグループ化する方法及び装置
KR101700720B1 (ko) 호스트에 연결될 수 있는 통신 디바이스에 의해 포함된 대용량 스토리지를 위한 플래시 메모리를 제어하기 위한 방법, 및 상기 방법을 수행하기 위한 컴퓨터 프로그램 물건
WO2002054247A1 (fr) Enregistreur de donnees et procede d'enregistrement de donnees dans une memoire flash
JP2007317224A (ja) メモリシステム
JPWO2005103903A1 (ja) 不揮発性記憶システム
WO1999030239A1 (fr) Memoire et procede d'acces
JP2009503743A (ja) データファイルを直接記憶するメモリブロックの管理
JPWO2007105688A1 (ja) メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
JP2012058770A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP3694501B2 (ja) 記憶装置
JP2005078378A (ja) データ記憶装置及び不揮発性メモリに対するデータ書き込み方法
US20040019761A1 (en) Flash storage medium having a NAND-type flash memory
US20050204115A1 (en) Semiconductor memory device, memory controller and data recording method
JP2004326523A (ja) 書き換え可能な不揮発性メモリを備えた記憶装置及び記憶装置用不揮発性メモリの制御方法
JP4218406B2 (ja) 情報記録再生方法
KR100490603B1 (ko) 플래시 메모리 동작 제어 방법 및 장치
KR100538338B1 (ko) 플래시 메모리의 블록 균등 분산 기법 및 이를 이용한데이터 저장 장치
JP3158329B2 (ja) データ記録再生装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 00801521.X

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

WWE Wipo information: entry into national phase

Ref document number: 09806133

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1020017003965

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2000949931

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1020017003965

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2000949931

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1020017003965

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 2000949931

Country of ref document: EP