KR100753174B1 - A mass storage using nand flash memory - Google Patents

A mass storage using nand flash memory Download PDF

Info

Publication number
KR100753174B1
KR100753174B1 KR1020070057407A KR20070057407A KR100753174B1 KR 100753174 B1 KR100753174 B1 KR 100753174B1 KR 1020070057407 A KR1020070057407 A KR 1020070057407A KR 20070057407 A KR20070057407 A KR 20070057407A KR 100753174 B1 KR100753174 B1 KR 100753174B1
Authority
KR
South Korea
Prior art keywords
nand flash
hard disk
flash memory
data
disk controller
Prior art date
Application number
KR1020070057407A
Other languages
Korean (ko)
Inventor
서운식
Original Assignee
엠진 (주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엠진 (주) filed Critical 엠진 (주)
Priority to KR1020070057407A priority Critical patent/KR100753174B1/en
Application granted granted Critical
Publication of KR100753174B1 publication Critical patent/KR100753174B1/en
Priority to TW096144248A priority patent/TW200849016A/en

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
    • 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/0656Data buffering arrangements
    • 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

Abstract

A mass storage based on a NAND flash memory is provided to facilitate extension and control of the NAND flash memory by connecting a plurality of storing parts including a buffer, the NAND flash memory, and a NAND flash memory controller to a hard disk controller, and enabling the NAND flash memory controller to manage the NAND flash memory of each storing part. The hard disk controller(10) manages data I/O(Input/Output) by connecting to a host(30) through a hard disk interface. The storing parts(20) are connected to the hard disk controller through a memory interface. Each storing part includes the buffer, the NAND flash memory(25), and the NAND flash memory controller. The buffer(23) temporarily stores the transceived data by connecting to the hard disk controller through the memory interface. The NAND flash memory controller is connected to the buffer through the memory interface, manages the data I/O by connecting to the NAND flash memory through the NAND interface, and provides an interface between the NAND flash memory and the hard disk controller.

Description

플래시 메모리 기반의 대용량 저장장치{A Mass Storage using NAND Flash Memory}A Mass Storage Using NAND Flash Memory

도 1은 종래기술에 따른 플래시 메모리 기반의 대용량 저장장치의 구성을 도시한 블록도이다.1 is a block diagram illustrating a configuration of a flash memory based mass storage device according to the prior art.

도 2는 본 발명에 따른 플래시 메모리 기반의 대용량 저장장치의 구성을 도시한 블록도이다.2 is a block diagram showing the configuration of a flash memory-based mass storage device according to the present invention.

도 3은 본 발명에서 버퍼가 듀얼포트 디램으로 구현된 일례를 도시한 도면이다.3 is a diagram illustrating an example in which a buffer is implemented as a dual port DRAM in the present invention.

도 4는 버퍼의 제 2 포트 영역 및 공유영역들의 조합을 하드디스크 제어부의 메인 메모리로 이용한 일례를 도시한 도면이다.4 is a diagram illustrating an example of using a combination of a second port area and a shared area of a buffer as a main memory of a hard disk controller.

<주요도면부호에 관한 설명> <Description of main drawing code>

10 : 하드디스크 제어부 20 : 저장부10: hard disk control unit 20: storage unit

21 : 낸드 플래시 제어부 23 : 버퍼21: NAND flash control unit 23: buffer

25 : 낸드 플래시 메모리 27 : 듀얼포트 디램(Dual-Port DRAM)25: NAND flash memory 27: Dual-Port DRAM

30 : 호스트30: host

본 발명은 대용량 저장장치에 관한 것으로서, 보다 상세하게는 하드디스크 제어부에 버퍼, 낸드 플래시 메모리 및 낸드 플래시 제어부를 포함하는 저장부가 다수 개 연결되고, 낸드 플래시 제어부가 각각의 저장부 내의 낸드 플래시 메모리를 담당하도록 함으로써 낸드 플래시 메모리의 확장 및 제어가 용이한 플래시 메모리 기반의 대용량 저장장치에 관한 것이다.The present invention relates to a mass storage device, and more particularly, a plurality of storage units including a buffer, a NAND flash memory, and a NAND flash control unit are connected to a hard disk control unit, and the NAND flash control unit stores the NAND flash memory in each storage unit. The present invention relates to a flash memory-based mass storage device that can easily expand and control a NAND flash memory.

일반적으로 컴퓨터, PMP, MP3 플레이어 등의 가전제품에서는 데이터를 저장하기 위해 하드디스크, 플래시 메모리 등의 저장장치가 사용된다.In general, home appliances such as computers, PMPs, and MP3 players use storage devices such as hard disks and flash memories to store data.

최근에는 정보통신의 발전에 따라 처리해야 할 데이터의 양이 증가하여 보다 대용량의 저장장치가 요구되었고, 이에 따라 다수 개의 저장장치를 연결함으로써 대용량 저장장치가 구현되어 사용되고 있다.Recently, as the amount of data to be processed increases due to the development of information and communication, a larger capacity storage device is required. Accordingly, a mass storage device is implemented and used by connecting a plurality of storage devices.

특히, 이러한 저장장치로는 휴대성 및 내구성이 뛰어난 플래시 메모리가 주로 사용되고 있다.In particular, such a storage device is mainly used flash memory having excellent portability and durability.

도 1은 종래기술에 따른 플래시 메모리 기반의 대용량 저장장치의 구성을 도시한 블록도이다.1 is a block diagram illustrating a configuration of a flash memory based mass storage device according to the prior art.

도 1에 도시된 바와 같이, 종래기술에 따른 플래시 메모리 기반의 대용량 저장장치는 하드디스크 인터페이스를 통해 하드디스크 제어부(100)가 호스트(300)에 연결되고, 하드디스크 제어부(100)에 다수 개의 낸드 플래시 메모리(200)가 연결되어 하드디스크 제어부(100)가 연결된 다수 개의 낸드 플래시 메모리(200)를 제어하는 구조를 취한다.As shown in FIG. 1, in the flash memory based mass storage device according to the related art, a hard disk controller 100 is connected to a host 300 through a hard disk interface, and a plurality of NANDs are provided to the hard disk controller 100. The flash memory 200 is connected to take a structure of controlling the plurality of NAND flash memories 200 to which the hard disk controller 100 is connected.

이때 하드디스크 제어부(100)는 각각의 낸드 플래시 메모리(200)와 데이터 입출력을 위해 낸드 플래시 메모리(200) 수만큼의 버퍼(110)가 설치되고, 버퍼(110)와 낸드 플래시 메모리(200)는 낸드 인터페이스를 통해 연결된다.At this time, the hard disk controller 100 is provided with each of the NAND flash memory 200 and as many buffers 110 as the NAND flash memory 200 for data input and output, the buffer 110 and the NAND flash memory 200 It is connected via the NAND interface.

하지만 이와 같은 대용량 저장장치는 하드디스크 제어부(100)가 연결된 다수 개의 낸드 플래시 메모리(200)를 제어하는 형태로 구현되어 낸드 플래시 메모리(200)의 확장에 한계가 따라 저장 공간이 한정되는 문제점이 있었다.However, such a mass storage device is implemented in a form of controlling a plurality of NAND flash memories 200 to which the hard disk controller 100 is connected, and thus there is a problem in that the storage space is limited due to a limitation in expansion of the NAND flash memory 200. .

또한, MLC(Multi Level Cell)의 낸드 플래시 메모리(200) 특성상 에러 비트(Error bit)가 다량으로 발생되는데, 이러한 다수 개의 낸드 플래시 메모리(200)의 오류 검출 및 정정동작(EDC/ECC)을 하드디스크 제어부(100)가 모두 수행해야 하므로 제어가 어려운 문제점이 있었다.In addition, due to the nature of the NLC flash memory 200 of the MLC (Multi Level Cell), a large number of error bits are generated, and the error detection and correction operations (EDC / ECC) of the plurality of NAND flash memories 200 are hard. Since the disk control unit 100 must perform all, it was difficult to control.

또한, MLC의 낸드 플래시 메모리(200)는 수명이 짧아 이를 적절히 분산하여 사용되도록 하는 알고리즘이 적용되어야 하고, 데이터의 송수신 속도가 낮은 문제점이 있었다.In addition, the NLC flash memory 200 of the MLC has a short lifespan, so that an algorithm for properly distributing and using the NLC flash memory 200 has to be applied.

본 발명은 상기와 같은 문제점을 해결하기 위해 안출된 것으로서, 본 발명의 목적은 하드디스크 제어부에 버퍼, 낸드 플래시 메모리 및 낸드 플래시 제어부를 포함하는 다수 개의 저장부를 연결하고, 낸드 플래시 제어부가 각각의 저장부 내의 낸드 플래시 메모리를 담당하도록 함으로써 낸드 플래시 메모리의 확장 및 제어가 용이한 플래시 메모리 기반의 대용량 저장장치를 제공함에 있다.The present invention has been made to solve the above problems, and an object of the present invention is to connect a plurality of storage units including a buffer, a NAND flash memory and a NAND flash control unit to a hard disk control unit, and the NAND flash control unit stores each of them. It is to provide a flash memory-based mass storage device that is easy to expand and control the NAND flash memory by taking charge of the NAND flash memory in the department.

상기와 같은 목적을 달성하기 위한 본 발명의 일측면에 따르면, 하드디스크 인터페이스를 통해 호스트에 연결되어 데이터의 입출력을 관리하는 하드디스크 제어부 및 메모리 인터페이스를 통해 상기 하드디스크 제어부에 연결되는 다수 개의 저장부를 포함하되, 상기 저장부는 상기 메모리 인터페이스를 통해 상기 하드디스크 제어부에 연결되고 송수신되는 데이터가 임시 저장되는 버퍼, 블럭 단위로 데이터가 접근되는 낸드 플래시 메모리 및 메모리 인터페이스를 통해 상기 버퍼와 연결되고, 상기 낸드 플래시 메모리 와 낸드 인터페이스를 통해 연결되어 데이터의 입출력을 관리하며, 상기 하드디스크 제어부와 상기 낸드 플래시 메모리 간의 인터페이스를 제공하는 낸드 플래시 메모리 제어부가 제공된다.According to an aspect of the present invention for achieving the above object, a hard disk controller connected to the host through a hard disk interface to manage input and output of data and a plurality of storage units connected to the hard disk controller through a memory interface The storage unit includes a buffer connected to the hard disk controller through the memory interface and temporarily storing data transmitted and received, a NAND flash memory to which data is accessed in units of blocks, and connected to the buffer through a memory interface. Provided is a NAND flash memory controller connected to a flash memory through a NAND interface to manage input / output of data and providing an interface between the hard disk controller and the NAND flash memory.

여기서 상기 버퍼가 듀얼포트 디램(Dual-Port DRAM) 또는 듀얼포트 에스램(Dual-Port SRAM) 중 어느 하나이고, 상기 듀얼포트 디램 또는 듀얼포트 에스램은 상기 낸드 플래시 메모리 메모리와의 송수신 데이터가 임시 저장되는 제 1 포트 영역, 상기 하드디스크 제어부와의 송수신 데이터가 임시 저장되는 제 2 포트 영역 및 상기 제 1 포트 영역과 상기 제 2 포트 영역 간에 개재되어 상기 제 1 포트 영역 또는 상기 제 2 포트 영역 중 어느 하나와 함께 사용되는 공유영역을 포함하는 것이 바람직하다.The buffer may be one of dual-port DRAM or dual-port SRAM, and the dual-port DRAM or dual-port SRAM may temporarily transmit / receive data to / from the NAND flash memory memory. Among the first port area or the second port area interposed between the first port area to be stored, the second port area for temporarily transmitting / receiving data to and from the hard disk controller, and the first port area and the second port area. It is preferred to include a shared area used with either.

또한, 상기 하드디스크 제어부와 상기 다수 개의 저장부가 시리얼 통신 포트를 통해 연결된 것이 보다 바람직하다.The hard disk controller and the plurality of storage units may be connected through a serial communication port.

또한, 상기 하드디스크 제어부와 상기 다수 개의 저장부는 환경이나 조건에 맞도록 상기 메모리 인터페이스 또는 상기 시리얼 통신 포트 중 적어도 어느 하나를 통해 선택적으로 데이터가 송수신되는 것이 보다 바람직하다.The hard disk controller and the plurality of storage units may more preferably selectively transmit / receive data through at least one of the memory interface and the serial communication port in accordance with an environment or a condition.

또한, 상기 하드디스크 제어부와 상기 다수 개의 저장부 간에 판독 또는 기록 대상 데이터는 상기 시리얼 통신 포트를 통해 송수신되고, 그 외의 데이터는 상기 메모리 인터페이스를 통해 송수신되는 것이 보다 바람직하다.The data to be read or written between the hard disk controller and the plurality of storage units may be transmitted and received through the serial communication port, and other data may be transmitted and received through the memory interface.

또한, 상기 하드디스크 제어부 및 상기 낸드 플래시 메모리 제어부는 각각 오류를 검출하기 위한 EDC(Error Detection Code) 및 오류를 정정하기 위한 ECC(Error Correction Code)를 포함하는 것이 보다 바람직하다.The hard disk controller and the NAND flash memory controller may each include an error detection code (EDC) for detecting an error and an error correction code (ECC) for correcting an error.

또한, 상기 하드디스크 제어부는 상기 버퍼의 상기 제 2 포트 영역 및 공유영역등의 조합을 메인 메모리로 사용하는 것이 보다 바람직하다.The hard disk controller may further use a combination of the second port area and the shared area of the buffer as the main memory.

또한, 상기 낸드 플래시 제어부가 상기 제 1 포트 영역을 데이터 캐시 메모리로 사용하는 것이 보다 바람직하다.In addition, it is more preferable that the NAND flash controller uses the first port area as a data cache memory.

이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예를 상세하게 설명하기로 한다. Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.

도 2는 본 발명에 따른 플래시 메모리 기반의 대용량 저장장치의 구성을 도시한 블록도이다.2 is a block diagram showing the configuration of a flash memory-based mass storage device according to the present invention.

도 2에 도시된 바와 같이, 본 발명에 따른 플래시 메모리 기반의 대용량 저장장치는 호스트(30)에 하드디스크 제어부(10)가 연결되고, 하드디스크 제어부(10)에 다수 개의 저장부(20)가 연결된 구조를 취한다.As shown in FIG. 2, in the flash memory-based mass storage device according to the present invention, a hard disk controller 10 is connected to a host 30, and a plurality of storage units 20 are connected to the hard disk controller 10. Take a connected structure.

하드디스크 제어부(10)는 연결된 다수 개의 저장부(20)를 제어하기 위한 구성으로서, 하드디스크 인터페이스를 통해 호스트(30)와 연결되고, 메모리 인터페이스를 통해 저장부(20)와 연결되며, 송수신 데이터의 오류를 검출하고 정정하기 위한 EDC(Error Detection Code) 및 ECC(Error Correction Code)를 포함한다.The hard disk controller 10 is a component for controlling a plurality of connected storage units 20. The hard disk controller 10 is connected to the host 30 through a hard disk interface, and is connected to the storage unit 20 through a memory interface. Error Detection Code (EDC) and Error Correction Code (ECC) for detecting and correcting errors.

저장부(20)는 버퍼(23), 낸드 플래시 제어부(21) 및 낸드 플래시 메모리(25)를 포함한다.The storage unit 20 includes a buffer 23, a NAND flash control unit 21, and a NAND flash memory 25.

버퍼(23)는 메모리 인터페이스를 통해 하드 디스크 제어부(10)와 연결되고, 메모리 인터페이스를 통해 낸드 플래시 제어부(21)와 연결되어 하드 디스크 제어부(10)와 낸드 플래시 제어부(21) 간에 송수신되는 데이터를 임시저장한다.The buffer 23 is connected to the hard disk controller 10 through a memory interface, and is connected to the NAND flash controller 21 through a memory interface to transmit and receive data between the hard disk controller 10 and the NAND flash controller 21. Save temporarily.

낸드 플래시 제어부(21)는 낸드 플래시 메모리(25)를 제어하기 위한 구성으로서, 낸드 인터페이스를 통해 다수 개의 낸드 플래시 메모리(25)와 연결되고, 송수신되는 데이터의 오류를 검출하고 정정하기 위한 EDC(Error Detection Code) 및 ECC(Error Correction Code)를 포함한다.The NAND flash control unit 21 is an element for controlling the NAND flash memory 25. The NAND flash control unit 21 is connected to a plurality of NAND flash memories 25 through a NAND interface, and detects and corrects errors in data transmitted and received. Detection Code) and Error Correction Code (ECC).

낸드 플래시 메모리(25)는 블럭 단위로 데이터가 접근되고, 낸드 플래시 제어부(21)의 제어에 의해 데이터가 기록 및 독출된다.In the NAND flash memory 25, data is accessed in units of blocks, and data is written and read out under the control of the NAND flash control unit 21.

종래에는 하드디스크 제어부(10)가 다수 개의 낸드 플래시 메모리(25)를 제어하는 형태로 제공되었던 것에 반해 본 발명에서는 낸드 플래시 제어부(21)가 각 저장부(20) 내의 낸드 플래시 메모리(25)를 제어하도록 함으로써 낸드 플래시 메모리(25)의 제어가 용이하다.In the present invention, the hard disk controller 10 is provided in the form of controlling a plurality of NAND flash memories 25, whereas in the present invention, the NAND flash controller 21 controls the NAND flash memories 25 in each storage unit 20. The control of the NAND flash memory 25 is easy by controlling.

또한, 본 발명에 따른 플래시 메모리 기반의 대용량 저장장치는 EDC 및 ECC가 하드디스크 제어부(10) 및 낸드 플래시 제어부(21)에 각각 포함되어 송수신되는 데이터 오류 검출동작 및 정정동작이 중복 수행됨으로써 데이터의 신뢰성이 향상된다.In addition, in the flash memory-based mass storage device according to the present invention, the EDC and ECC are included in the hard disk controller 10 and the NAND flash controller 21, respectively, so that data error detection and correction operations, which are transmitted and received, are repeatedly performed. Reliability is improved.

여기서, 하드디스크 제어부(10) 및 다수 개의 저장부(20)는 메모리 인터페이스 외에도 시리얼 통신 포트를 통해 연결되어 환경이나 조건에 맞게 메모리 인터페이스 또는 시리얼 통신 포트 중 적어도 어느 하나를 통해 선택적으로 데이터를 송수신하도록 하는 것이 바람직하다.Here, the hard disk controller 10 and the plurality of storage units 20 are connected via the serial communication port in addition to the memory interface to selectively transmit and receive data through at least one of the memory interface or the serial communication port according to the environment or condition. It is desirable to.

또한, 판독 또는 기록 대상 데이터는 비교적 고속의 시리얼 통신 포트를 통해 송수신하고, 그 밖의 데이터는 메모리 인터페이스를 통해 송수신하도록 분산 처리하여 데이터의 처리속도를 향상시키는 것이 보다 바람직하다.Further, it is more preferable to improve the processing speed of data by performing distributed processing so that the data to be read or written is transmitted and received through a relatively high speed serial communication port, and other data is transmitted and received through a memory interface.

이때 시리얼 통신 포트 및 메모리 인터페이스를 통해 송수신되는 데이터의 일괄적인 처리가 가능하도록 대용량의 버퍼(23)를 사용하는 것이 보다 바람직하다.In this case, it is more preferable to use the large-capacity buffer 23 to enable batch processing of data transmitted and received through the serial communication port and the memory interface.

본 발명에 따른 플래시 기반의 대용량 저장장치의 기록 및 독출 동작을 설명하면 하기와 같다.Referring to the recording and reading operation of the flash-based mass storage device according to the present invention.

기록동작Recording operation

호스트(30)로부터 전송된 기록대상 데이터 및 기록 제어신호가 하드디스크 인터페이스를 통해 하드디스크 제어부(10)로 수신되면, 하드디스크 제어부(10)는 EDC플 통해 기록대상 데이터의 오류 검출동작을 수행하고, 만약 오류가 발견되면 ECC를 통해 오류 정정동작을 수행한다.When the recording target data and the recording control signal transmitted from the host 30 are received by the hard disk controller 10 through the hard disk interface, the hard disk controller 10 performs an error detection operation of the recording target data through the EDC player. If an error is found, error correction is performed through ECC.

이후에 하드디스크 제어부(10)는 기록대상 데이터를 메모리 인터페이스를 통해 버퍼(23)로 전송한다.Thereafter, the hard disk controller 10 transmits the recording target data to the buffer 23 through the memory interface.

전송된 기록 데이터는 버퍼(23)에 임시저장되고, 이후에 메모리 인터페이스를 통해 낸드 플래시 제어부(21)로 전송된다.The transferred write data is temporarily stored in the buffer 23 and then transferred to the NAND flash control unit 21 via the memory interface.

낸드 플래시 제어부(21)는 EDC를 통해 수신된 기록대상 데이터의 오류 검출동작을 수행하고, 만약 오류가 발견되면 ECC를 통해 오류 정정동작을 수행한다.The NAND flash control unit 21 performs an error detection operation on the recording target data received through the EDC, and if an error is found, performs the error correction operation through the ECC.

이후에 낸드 플래시 제어부(21)는 낸드 인터페이스를 통해 기록대상 데이터 및 기록 제어신호를 낸드 플래시 메모리(25)로 전송한다.Thereafter, the NAND flash control unit 21 transmits the recording target data and the recording control signal to the NAND flash memory 25 through the NAND interface.

낸드 플래시 메모리(25)는 기록 제어신호에 따라 수신된 기록대상 데이터가 기록된다.The NAND flash memory 25 records received recording target data in accordance with a write control signal.

독출동작Read operation

호스트(30)로부터 전송된 독출 제어신호가 하드디스크 제어부(10)를 통해 낸드 플래시 제어부(21)에 수신되면, 낸드 플래시 제어부(21)는 낸드 인터페이스를 통해 낸드 플래시 메모리(25)로부터 독출대상 데이터를 독출한다. When the read control signal transmitted from the host 30 is received by the NAND flash control unit 21 through the hard disk control unit 10, the NAND flash control unit 21 reads data to be read from the NAND flash memory 25 through the NAND interface. Read out.

낸드 플래시 제어부(21)는 EDC를 통해 독출대상 데이터의 오류 검출동작을 수행하고, 만약 오류가 발견되면 ECC를 통해 오류 정정동작을 수행한다. The NAND flash control unit 21 performs an error detection operation of the data to be read through the EDC, and if an error is found, performs the error correction operation through the ECC.

이후에 낸드 플래시 제어부(21)는 메모리 인터페이스를 통해 버퍼(23)로 전송하여 임시저장되도록 한다.Thereafter, the NAND flash controller 21 transmits the buffer to the buffer 23 through the memory interface to be temporarily stored.

버퍼(23)에 임시저장된 독출대상 데이터는 메모리 인터페이스를 통해 하드디스크 제어부(10)로 전송된다. The read target data temporarily stored in the buffer 23 is transmitted to the hard disk controller 10 through the memory interface.

하드디스크 제어부(10)는 EDC를 통해 수신된 독출대상 데이터의 오류 검출동작을 수행하고, 만약 오류가 발견되면 ECC를 통해 오류 정정동작을 수행한다.The hard disk controller 10 performs an error detection operation on the read target data received through the EDC, and if an error is found, performs the error correction operation through the ECC.

이후에 하드디스크 제어부(10)는 하드디스크 인터페이스를 통해 독출대상 데이터를 호스트(30)로 전송한다.Thereafter, the hard disk controller 10 transmits the read target data to the host 30 through the hard disk interface.

본 발명의 일 실시예에서는 하드디스크 제어부(10)와 저장부(20)는 메모리 인터페이스를 통해 데이터가 송수신되었지만, 다른 실시예에서는 전술한 바와 같이 환경이나 조건에 맞게 메모리 인터페이스 또는 시리얼 통신 포트 중 어느 하나를 통해 선택적으로 데이터의 송수신이 가능하다 In the exemplary embodiment of the present invention, the hard disk controller 10 and the storage unit 20 transmit and receive data through the memory interface. However, in another embodiment, any one of the memory interface or the serial communication port may be adjusted according to an environment or condition as described above. One can selectively send and receive data

또한, 독출 또는 기록 대상 데이터는 시리얼 통신 포트를 통해 송수신하고, 그 밖의 데이터는 메모리 인터페이스를 통해 송수신하는 분산처리도 가능하다.In addition, distributed processing is also possible in which data to be read or written is transmitted and received through the serial communication port, and other data is transmitted and received through the memory interface.

도 3은 본 발명에서 버퍼(23)가 듀얼포트 디램(Dual-Port DRAM;27)으로 구현 된 일례를 도시한 도면이다.FIG. 3 illustrates an example in which the buffer 23 is implemented as a dual-port DRAM 27 in the present invention.

도 3에 도시된 바와 같이, 본 발명에 따른 플래시 메모리 기반의 대용량 저장장치에서 버퍼(23)를 듀얼포트 디램(27) 및 듀얼포트 에스램(Dual-Port SRAM;미도시)으로 구현할 수 있는데, 본 발명에서는 듀얼포트 디램(27)이 사용되었다.As shown in FIG. 3, in the flash memory-based mass storage device according to the present invention, the buffer 23 may be implemented as a dual port DRAM 27 and a dual port SRAM (not shown). In the present invention, a dual port DRAM 27 is used.

이와 같은 듀얼포트 디램(27)은 제 1 포트 영역, 제 2 포트 영역 및 공유영역으로 구분된다.The dual port DRAM 27 is divided into a first port area, a second port area, and a sharing area.

제 1 포트 영역은 낸드 플래시 제어부(21)와의 송수신 데이터를 임시저장하고, 제 2 포트 영역은 하드디스크 제어부(10)와의 송수신 데이터를 임시저장하며, 공유영역은 제 1 포트 영역 또는 제 2 포트 영역 중 어느 하나와 함께 사용된다.The first port area temporarily stores transmission / reception data with the NAND flash control unit 21, the second port area temporarily stores transmission / reception data with the hard disk control unit 10, and the sharing area is a first port area or a second port area. Used with either.

즉, 제 1 포트 영역과 공유영역은 메모리 인터페이스를 통해 낸드 플래시 제어부(21)와의 송수신 데이터가 저장되고, 제 2 포트 영역과 공유영역은 메모리 인터페이스를 통해 하드디스크 제어부(10)와의 송수신 데이터가 저장됨으로써 데이터의 처리 속도가 보다 향상된다.That is, the first port area and the shared area store the data transmitted / received with the NAND flash control unit 21 through the memory interface, and the second port area and the share area store the data transmitted / received with the hard disk controller 10 through the memory interface. This further improves the processing speed of the data.

종래에는 2Kbyte 정도의 저용량 버퍼(23)가 사용되었지만, 본 발명에서는 연결 가능한 낸드 플래시 메모리(25)의 수가 증가하기 때문에 데이터의 처리속도 향상을 위해 16Mbyte ~ 64Mbyte인 대용량의 버퍼(23)가 사용되었다.Conventionally, a low-capacity buffer 23 of about 2 Kbytes has been used. However, in the present invention, since the number of connectable NAND flash memories 25 increases, a large-capacity buffer 23 of 16 Mbytes to 64 Mbytes is used to improve data processing speed. .

특히, 버퍼(23)로서, 듀얼포트 디램(27)을 사용함으로써 하드디스크 제어부(10) 및 낸드 플래시 제어부(21)가 각각의 전용 포트를 통해 데이터의 송수신이 가능하여 성능이 향상된다.In particular, by using the dual port DRAM 27 as the buffer 23, the hard disk controller 10 and the NAND flash controller 21 can transmit and receive data through respective dedicated ports, thereby improving performance.

또한, 낸드 플래시 제어부(21)는 제 1 포트 영역을 데이터 캐시 메모리로 사 용함으로써 이전에 낸드 플래시 메모리(25)로부터 수신한 데이터가 제 1 포트 영역 에 임시 저장되어 있어 동일한 데이터를 재수신할 때는 낸드 플래시 메모리(25)로부터 수신할 필요가 없이 제 1 포트 영역으로부터 수신함으로써 전송 효율이 향상된다.In addition, the NAND flash control unit 21 uses the first port area as the data cache memory so that when data previously received from the NAND flash memory 25 is temporarily stored in the first port area, the same data is received again. The transmission efficiency is improved by receiving from the first port area without having to receive from the NAND flash memory 25.

도 4는 버퍼(23)의 제 2 포트 영역 및 공유영역들의 조합을 하드디스크 제어부(10)의 메인 메모리로 이용한 일례를 도시한 도면이다.4 is a diagram illustrating an example in which a combination of a second port area and a shared area of the buffer 23 is used as a main memory of the hard disk controller 10.

도 4에 도시된 바와 같이, 본 발명에서는 16Mbyte ~ 64Mbyte인 대용량의 버퍼(23)가 사용됨으로써 제 2 포트 영역 및 공유영역들의 조합을 버퍼(23)로서 이용함과 동시에 하드디스크 제어부(10)의 메인 메모리로 이용 가능하다.As shown in FIG. 4, in the present invention, a large-capacity buffer 23 having a size of 16 Mbytes to 64 Mbytes is used to use the combination of the second port area and the shared area as the buffer 23 and at the same time the main portion of the hard disk controller 10. Available as a memory.

64Mbyte ~ 256Mbyte의 용량을 갖는 버퍼(23)가 다수 개 사용되므로 제 2 포트 영역 및 공유영역들의 조합은 대용량을 갖게된다.Since a plurality of buffers 23 having a capacity of 64 Mbyte to 256 Mbyte are used, the combination of the second port area and the shared area has a large capacity.

즉, 하드디스크 제어부(10)는 대용량의 제 2 포트 영역 및 공유영역들의 조합을 메인 메모리로 이용 가능하여 별도의 메인 메모리가 필요없게 된다.That is, the hard disk controller 10 may use a combination of a large capacity second port area and a shared area as the main memory, thereby eliminating the need for a separate main memory.

상기와 같은 본 발명에 따르면, 하드디스크 제어부에 버퍼, 낸드 플래시 메모리 및 낸드 플래시 제어부를 포함하는 저장부가 다수 개 연결되고, 낸드 플래시 제어부가 각각의 저장부 내의 낸드 플래시 메모리를 담당하도록 함으로써 낸드 플래시 메모리의 확장 및 제어가 용이한 효과가 있다. According to the present invention as described above, a plurality of storage units including a buffer, a NAND flash memory and a NAND flash control unit are connected to the hard disk control unit, and the NAND flash control unit is responsible for NAND flash memory in each storage unit. There is an effect of easy expansion and control.

또한, 하드디스크 제어부 및 낸드 플래시 제어부에 각각 EDC 및 ECC를 포함함으로써 송수신되는 데이터의 오류 검출동작 및 정정동작이 중복수행되어 데이터의 신뢰성이 향상되는 효과가 있다.In addition, by including the EDC and the ECC in the hard disk controller and the NAND flash controller, respectively, error detection and correction operations of data transmitted and received are repeatedly performed, thereby improving reliability of data.

또한, 하드디스크 제어부 및 저장부 간에 판독 또는 기록 대상 데이터는 시리얼 통신 포트를 통해 송수신되고, 그 밖의 데이터는 메모리 인터페이스를 통해 송수신되도록 분산처리함으로써 데이터의 처리 속도가 향상되는 효과가 있다.In addition, the data to be read or written is transmitted and received through the serial communication port between the hard disk controller and the storage unit, and the other data is distributed and transmitted through the memory interface, thereby improving the processing speed of the data.

또한, 듀얼포트 디램을 버퍼로 사용함으로써 낸드 플래시 제어부와의 송수신을 담당하는 제 1 포트 영역과 하드디스크 제어부와의 송수신을 담당하는 제 2 포트 영역이 구분되어 데이터의 처리 속도가 향상되는 효과가 있다.In addition, by using the dual port DRAM as a buffer, the first port area for transmitting / receiving with the NAND flash control unit and the second port area for transmitting / receiving with the hard disk controller are distinguished, thereby improving the processing speed of data. .

또한, 낸드 플래시 제어부는 제 1 포트 영역을 데이터 캐시 메모리로 사용하여 데이터의 전송효율이 향상되는 효과가 있다.In addition, the NAND flash controller has an effect of improving data transmission efficiency by using the first port area as a data cache memory.

또한, 하드디스크 제어부는 버퍼의 제 2 포트 영역 및 공유영역들의 조합을 메인 메모리로 사용함으로써 별도의 메인 메모리가 필요없는 효과가 있다.In addition, the hard disk controller uses a combination of the second port area and the shared area of the buffer as the main memory, thereby eliminating the need for a separate main memory.

비록 본 발명이 상기 언급된 바람직한 실시예와 관련하여 설명되어졌지만, 발명의 요지와 범위로부터 벗어남이 없이 다양한 수정이나 변형을 하는 것이 가능하다. 따라서 첨부된 특허청구의 범위는 본 발명의 요지에서 속하는 이러한 수정이나 변형을 포함할 것이다.Although the present invention has been described in connection with the above-mentioned preferred embodiments, it is possible to make various modifications or variations without departing from the spirit and scope of the invention. Accordingly, the appended claims will cover such modifications and variations as fall within the spirit of the invention.

Claims (8)

하드디스크 인터페이스를 통해 호스트에 연결되어 데이터의 입출력을 관리하는 하드디스크 제어부; 및A hard disk controller connected to a host through a hard disk interface to manage input and output of data; And 메모리 인터페이스를 통해 상기 하드디스크 제어부에 연결되는 다수 개의 저장부를 포함하되,Including a plurality of storage connected to the hard disk controller via a memory interface, 상기 저장부는The storage unit 상기 메모리 인터페이스를 통해 상기 하드디스크 제어부에 연결되고 송수신되는 데이터가 임시 저장되는 버퍼;A buffer connected to the hard disk controller through the memory interface and temporarily storing data transmitted and received; 블럭 단위로 데이터가 접근되는 낸드 플래시 메모리; 및 A NAND flash memory in which data is accessed in units of blocks; And 메모리 인터페이스를 통해 상기 버퍼와 연결되고, 상기 낸드 플래시 메모리 와 낸드 인터페이스를 통해 연결되어 데이터의 입출력을 관리하며, 상기 하드디스크 제어부와 상기 낸드 플래시 메모리 간의 인터페이스를 제공하는 낸드 플래시 메모리 제어부를 포함하는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.And a NAND flash memory controller connected to the buffer through a memory interface, connected to the NAND flash memory and a NAND interface to manage input / output of data, and providing an interface between the hard disk controller and the NAND flash memory. A flash memory based mass storage device. 제 1 항에 있어서,The method of claim 1, 상기 버퍼가 듀얼포트 디램(Dual-Port DRAM) 또는 듀얼포트 에스램(Dual-Port SRAM) 중 어느 하나이고,The buffer is either dual-port DRAM or dual-port SRAM, 상기 듀얼포트 디램 또는 듀얼포트 에스램은The dual port DRAM or dual port SRAM 상기 낸드 플래시 메모리 메모리와의 송수신 데이터가 임시 저장되는 제 1 포트 영역;A first port region in which data transmitted / received with the NAND flash memory memory is temporarily stored; 상기 하드디스크 제어부와의 송수신 데이터가 임시 저장되는 제 2 포트 영역; 및A second port area in which data transmitted / received with the hard disk controller is temporarily stored; And 상기 제 1 포트 영역과 상기 제 2 포트 영역 간에 개재되어 상기 제 1 포트 영역 또는 상기 제 2 포트 영역 중 어느 하나와 함께 사용되는 공유영역을 포함하는 것을 특징으로 하는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.And a shared area interposed between the first port area and the second port area and used together with any one of the first port area and the second port area. Storage. 제 1 항에 있어서,The method of claim 1, 상기 하드디스크 제어부와 상기 다수 개의 저장부가 시리얼 통신 포트를 통해 연결된 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.And the hard disk controller and the plurality of storage units are connected through a serial communication port. 제 3 항에 있어서,The method of claim 3, wherein 상기 하드디스크 제어부와 상기 다수 개의 저장부는 상기 메모리 인터페이스 또는 상기 시리얼 통신 포트 중 적어도 어느 하나를 통해 선택적으로 데이터가 송수신되는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.And the hard disk controller and the plurality of storage units selectively transmit and receive data through at least one of the memory interface and the serial communication port. 제 3 항에 있어서,The method of claim 3, wherein 상기 하드디스크 제어부와 상기 다수 개의 저장부 간에 판독 또는 기록 대상 데이터는 상기 시리얼 통신 포트를 통해 송수신되고, 그 외의 데이터는 상기 메모리 인터페이스를 통해 송수신되는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.Data to be read or written between the hard disk controller and the plurality of storage units are transmitted and received through the serial communication port, and other data is transmitted and received through the memory interface. 제 1 항에 있어서,The method of claim 1, 상기 하드디스크 제어부 및 상기 낸드 플래시 메모리 제어부는 각각 오류를 검출하기 위한 EDC(Error Detection Code) 및 오류를 정정하기 위한 ECC(Error Correction Code)를 포함하는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.The hard disk controller and the NAND flash memory controller respectively include an error detection code (EDC) for detecting an error and an error correction code (ECC) for correcting an error. 제 2 항에 있어서,The method of claim 2, 상기 하드디스크 제어부는 상기 버퍼의 상기 제 2 포트 영역 및 공유영역들의 조합을 메인 메모리로 사용하는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.The hard disk controller uses a combination of the second port area and the shared area of the buffer as a main memory. 제 2 항에 있어서,The method of claim 2, 상기 낸드 플래시 제어부가 상기 제 1 포트 영역을 데이터 캐시 메모리로 사용하는 것을 특징으로 하는 플래시 메모리 기반의 대용량 저장장치.And the NAND flash controller uses the first port area as a data cache memory.
KR1020070057407A 2007-06-12 2007-06-12 A mass storage using nand flash memory KR100753174B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070057407A KR100753174B1 (en) 2007-06-12 2007-06-12 A mass storage using nand flash memory
TW096144248A TW200849016A (en) 2007-06-12 2007-11-22 Mass storage device using NAND flash memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070057407A KR100753174B1 (en) 2007-06-12 2007-06-12 A mass storage using nand flash memory

Publications (1)

Publication Number Publication Date
KR100753174B1 true KR100753174B1 (en) 2007-08-30

Family

ID=38615710

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070057407A KR100753174B1 (en) 2007-06-12 2007-06-12 A mass storage using nand flash memory

Country Status (2)

Country Link
KR (1) KR100753174B1 (en)
TW (1) TW200849016A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010096153A3 (en) * 2009-02-18 2010-11-25 Micron Technology, Inc. Data integrity in memory controllers and methods

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020032136A (en) * 2000-10-25 2002-05-03 박성훈 Large capacity auxiliary storage device using memory
KR20050035836A (en) * 2005-01-24 2005-04-19 주식회사 퍼스터 Multiple nand flash memory interface
KR20050059984A (en) * 2003-12-15 2005-06-21 삼성전자주식회사 Flash memory device and flash memory system including buffer memory
KR20050069218A (en) * 2003-12-31 2005-07-05 삼성전자주식회사 Flash memory system capable of inputting/outputting sector dara at random
KR100589227B1 (en) 2005-05-23 2006-06-19 엠텍비젼 주식회사 Apparatus capable of multi-interfacing memories and interfacing method of the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020032136A (en) * 2000-10-25 2002-05-03 박성훈 Large capacity auxiliary storage device using memory
KR20050059984A (en) * 2003-12-15 2005-06-21 삼성전자주식회사 Flash memory device and flash memory system including buffer memory
KR20050069218A (en) * 2003-12-31 2005-07-05 삼성전자주식회사 Flash memory system capable of inputting/outputting sector dara at random
KR20050035836A (en) * 2005-01-24 2005-04-19 주식회사 퍼스터 Multiple nand flash memory interface
KR100589227B1 (en) 2005-05-23 2006-06-19 엠텍비젼 주식회사 Apparatus capable of multi-interfacing memories and interfacing method of the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010096153A3 (en) * 2009-02-18 2010-11-25 Micron Technology, Inc. Data integrity in memory controllers and methods
US8468417B2 (en) 2009-02-18 2013-06-18 Micron Technology, Inc. Data integrity in memory controllers and methods
US9015553B2 (en) 2009-02-18 2015-04-21 Round Rock Research, Llc Data integrity in memory controllers and methods

Also Published As

Publication number Publication date
TW200849016A (en) 2008-12-16

Similar Documents

Publication Publication Date Title
US10402318B2 (en) Mapping table updating method, memory control circuit unit and memory storage device
US9520992B2 (en) Logical-to-physical address translation for a removable data storage device
US9983799B2 (en) Trim command processing method, memory control circuit unit and memory storage apparatus
US8612791B2 (en) Method of selective power cycling of components in a memory device independently by turning off power to a memory array or memory controller
US20160231941A1 (en) Solid state memory (ssm), computer system including an ssm, and method of operating an ssm
US8738842B2 (en) Solid state disk controller and data processing method thereof
KR101431205B1 (en) Cache memory device and data processing method of the device
US9223696B2 (en) Data storage device for holding erasure of victim block having valid page copied to merge block and method of operating the same
JP2013544414A (en) Transaction log restore
US10061695B2 (en) Memory system and operating method thereof
KR20100137156A (en) Data storage system and channel driving method thereof
CN106920575B (en) Data storage device and operation method thereof
US11733895B2 (en) Control method of flash memory controller and associated flash memory controller and storage device
US10747462B2 (en) Data processing system and operating method thereof
US11593008B2 (en) Control method for flash memory controller and associated flash memory controller and storage device
TW201626225A (en) Method and system for using NAND page buffers to improve the transfer buffer utilization of a solid state drive
JP2023500823A (en) Capacity expansion for memory subsystem
WO2010024506A1 (en) Flash based storage device using page buffer as write cache and method of using the same
US20220269440A1 (en) Control method for flash memory controller and associated flash memory controller and storage device
US10001928B2 (en) Memory management method, memory control circuit unit and memory storage device
KR20190091035A (en) Memory system and operating method thereof
KR100753174B1 (en) A mass storage using nand flash memory
KR100685324B1 (en) A system for accessing nand flash memory at random using dual-port dram and a controller thereof
US11586379B2 (en) Memory system and method of operating the same
CN110069427A (en) The operating method of Memory Controller and Memory Controller

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110914

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee