KR20090129095A - System for processing high speed data using duplex buffer - Google Patents
System for processing high speed data using duplex buffer Download PDFInfo
- Publication number
- KR20090129095A KR20090129095A KR1020080055193A KR20080055193A KR20090129095A KR 20090129095 A KR20090129095 A KR 20090129095A KR 1020080055193 A KR1020080055193 A KR 1020080055193A KR 20080055193 A KR20080055193 A KR 20080055193A KR 20090129095 A KR20090129095 A KR 20090129095A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- buffer
- flash memory
- interface
- memory unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Read Only Memory (AREA)
Abstract
Description
본 발명은 이중버퍼를 이용한 고속 데이터 처리 시스템에 관한 것으로, 보다 상세하게는, ATA/IDE 인터페이스 또는 기타 다른 인터페이스를 통해 외부에서 입력된 데이터를 이중 버퍼를 통함으로써 고속으로 플래시 메모리부에 기록하거나 플래시 메모리부에 기록된 데이터를 이중 버퍼를 통하여 고속으로 외부로의 독출을 제어할 수 있도록 하는 시스템에 관한 것이다.The present invention relates to a high-speed data processing system using a double buffer, and more particularly, to write or flash data to a flash memory unit at high speed by a double buffer of data input from the outside through the ATA / IDE interface or other interface The present invention relates to a system capable of controlling the reading of data recorded in the memory unit to the outside at high speed through a double buffer.
종래의 데이터 처리 시스템에 있어서, 데이터의 입출력시 병목 현상 등으로 인한 시스템 성능 저하를 해결하고자, 플래시 메모리를 기반으로 한 데이터 저장장치가 개발되고 있다. 이러한 저장장치는 작동시 열, 소음 등이 발생하지 않고, 충격에도 강한 특성을 갖고 있으며, 데이터의 처리속도도 또한 고속으로 처리할 수 있는 이점을 갖고 있다.In a conventional data processing system, a data storage device based on a flash memory has been developed to solve a system performance degradation caused by a bottleneck or the like during input / output of data. Such a storage device does not generate heat, noise, etc. during operation, has a strong characteristic against shock, and also has an advantage of processing data at a high speed.
도 3은 종래의 데이터 처리 시스템을 나타내는 것으로, 도 3에 나타낸 바와 같이, 외부의 호스트와 연결되는 인터페이스(31)와 데이터의 기록 및 독출을 행하는 플래시 메모리부(34a 내지 34n)와 데이터의 기록 및 독출을 제어하는 컨트롤 러(32)와 플래시 메모리부(34a 내지 34n)에 대한 데이터의 기록 및 독출을 임시 저장하는 버퍼(33)로 구성된다.FIG. 3 shows a conventional data processing system. As shown in FIG. 3, an
일반적으로, 데이터에 대한 기록 시 플래시 메모리부(34a 내지 34n)의 동작은 SDRAM과 같은 버퍼(33)의 동작시간에 비하여 긴 시간 특성을 갖는다.In general, the operation of the
따라서, 최근의 대용량의 데이터가 증가하고 이를 고속으로 처리하는 시스템에 있어서, 종래의 데이터 처리 시스템은 데이터에 대해 기록 및 독출시 병목현상으로 인한 효율적인 데이터 처리에 문제가 발생한다.Therefore, in a system of recently increasing a large amount of data and processing it at high speed, a conventional data processing system has a problem in efficient data processing due to a bottleneck when writing and reading data.
본 발명은 상기와 같은 문제점을 해결하기 위해 안출된 것으로서, 본 발명의 목적은 이중 버퍼를 사용함으로써 대용량의 데이터를 효율적이고 또한 고속으로 처리할 수 있는 데이터 처리 시스템을 제공할 수 있도록 하는 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to provide a data processing system capable of efficiently and rapidly processing a large amount of data by using a double buffer.
상기와 같은 목적을 달성하기 위한 본 발명의 이중버퍼를 이용한 고속 데이터 처리시스템은 플래시 메모리부와, 외부 호스트와 연결되는 인터페이스와, 상기 인터페이스에 연결되어 외부 호스트의 제어명령에 따라 상기 플래시 메모리부에 데이터의 기록 및 독출 동작을 제어하는 컨트롤러와, 상기 플래시 메모리부에 기록될 상기 데이터를 상기 인터페이스틀 통하여 임시로 저장하거나, 상기 플래시 메모리부로부터 독출될 상기 데이터를 임시 저장하는 제 1 및 제 2버퍼를 포함하여 구성된다.A high-speed data processing system using a double buffer of the present invention for achieving the above object is a flash memory unit, an interface connected to an external host, and connected to the interface in accordance with the control command of the external host in the flash memory unit A controller for controlling the operation of writing and reading data, and first and second buffers for temporarily storing the data to be written to the flash memory unit through the interface frame or temporarily storing the data to be read from the flash memory unit. It is configured to include.
또한, 본 발명에 따른 이중버퍼를 이용한 고속 데이터 처리시스템에서 제 1버퍼에 데이터가 저장될 공간이 없으면, 제 2버퍼에 데이터가 저장되며 동시에 제 1버퍼에 저장된 데이터는 인터페이스 또는 플래시 메모리부로 출력되고, 또한 제 2버퍼에 데이터가 저장될 공간이 없으면, 제 1버퍼에 데이터가 저장되며 동시에 제 2버퍼에 저장된 데이터는 인터페이스 또는 플래시 메모리부로 출력되는 것을 특징으로 한다.In addition, in the high-speed data processing system using the double buffer according to the present invention, if there is no space to store the data in the first buffer, the data is stored in the second buffer and at the same time the data stored in the first buffer is output to the interface or flash memory unit In addition, if there is no space to store data in the second buffer, the data is stored in the first buffer and at the same time the data stored in the second buffer is characterized in that output to the interface or flash memory unit.
상기와 같은 본 발명에 따르면, 이중 버퍼를 사용함으로써 플래시 메모리부에 있어서 대용량의 데이터에 대한 기록 및 독출 동작을 효율적으로 행할 뿐만 아니라 고속으로 처리할 수 있는 효과가 있다.According to the present invention as described above, the use of the double buffer has the effect that the flash memory unit can efficiently perform the writing and reading operations for a large amount of data as well as processing at high speed.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예를 상세하게 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.
도 1은 본 발명에 따른 이중버퍼를 이용한 고속 데이터 처리 시스템의 개념적인 구성을 도시한 블록도이다.1 is a block diagram showing the conceptual configuration of a high-speed data processing system using a double buffer according to the present invention.
도 1에 도시된 바와 같이, 데이터 처리 시스템은 ATA/IDE 인터페이스(11), 인터페이스(11)와 연결되는 컨트롤러(12), SDRAM으로 구성된 제 1버퍼(13) 및 제 2버퍼(14)와, 데이터를 저장하기 위한 플래시 메모리부(15)로 구성된다.As shown in FIG. 1, the data processing system includes an ATA /
인터페이스(11)는 도시하지는 않았지만, 외부 호스트(host)와 연결되고, 이 외부 호스트의 제어 명령에 따라 컨트롤러(12)는 플래시 메모리부(15a 내지 15n)에 대하여 데이터의 기록 및 독출 동작을 제어한다. 또한, 컨트롤러(12)는 제 1버퍼(13) 및 제 2버퍼(14)에 대한 제어동작도 수행한다.Although not shown, the
플래시 메모리부(15)는 데이터 기록 및 삭제 가능한 적어도 하나의 플래시 메모리(15a 내지 15n)를 포함하여 구성되어, 컨트롤러(12)의 제어 따라 동작이 수행된다.The
또한, 제 1버퍼(13) 및 제 2버퍼(14)는 휘발성 메모리, 예를 들면, SDRAM으로 구성되어 컨트롤러(12)의 제어에 따라 플래시 메모리부(15)에 대한 데이터의 기 록 및 독출 동작 시 데이터가 임시로 저장된다.In addition, the
다음은, 상기와 같이 구성된 이중버퍼를 이용한 고속 데이터 처리 시스템에 대한 동작을 설명한다.The following describes the operation of the high speed data processing system using the double buffer configured as described above.
도 2는 본 발명에 따른 이중버퍼를 이용한 고속 데이터 처리를 도시한 것으로, 도 2에 나타낸 바와 같이, 외부 호스트의 제어 명령에 따라, 데이터를 플래시 메모리부(15)에 저장하는 경우, ATA/IDE 인터페이스(11)를 통해 입력된 데이터는 컨트롤러(12)의 제어에 의해 제 1버퍼(13)에 저장된다(S21). 이후, 제 1버퍼(13)에 데이터가 가득 찼는지를 확인 한 후(S22), 제 1버퍼(13)에 빈 공간이 없으면, 이후 입력되는 데이터는 제 2버퍼(14)에 저장된다(S23). 이와 동시에, 제 1버퍼(13)에 저장된 데이터는 적어도 하나의 플래시 메모리(15a 내지 15n)로 구성된 플래시 메모리부(15)에 출력되어 저장된다(S24). FIG. 2 illustrates high-speed data processing using a double buffer according to the present invention. As shown in FIG. 2, when data is stored in the
이후, 제 2버퍼(14)에 빈 공간이 있는지를 확인하여(S25), 빈 공간이 없으면, 컨트롤러(12)는 제 1버퍼(13)에 저장된 데이터가 모두 플래시 메모리부(15)로 출력되었는지를 확인하고(S26), 제 1버퍼(13)에 빈 공간이 있으면, 입력되는 데이터를 제 1버퍼(13)에 저장함(S27)과 동시에 제 2버퍼(14)에 저장된 데이터를 플래시 메모리부(15)로 출력한다(S31). 이때, 제 1버퍼(13)에 데이터가 남아 있으면, 컨트롤러(12)는 인터페이스(11)로부터의 데이터 입력을 잠시 대기시키고(S28), 제 1버퍼의 데이터가 모두 출력되면(S29), 인터페이스(11)에 대한 잠시 대기 상태를 해지한 후(S30), 제 1버퍼(13)에 데이터를 저장한다(S27).Thereafter, the second buffer 14 is checked whether there is an empty space (S25), and if there is no empty space, the
다음에, 제 1버퍼(13)에 데이터가 저장된 후, 컨트롤러(12)는 제 2버퍼(14) 에 빈 공간이 있는지를 확인하여(S32) 빈 공간이 있으면, 입력되는 데이터를 제 2버퍼(14)에 저장한다(S33). 만약 제 2버퍼(14)에 빈 공간이 없다고 확인되면, 컨트롤러(12)는 인터페이스(11)로부터의 데이터 입력을 잠시 대기시키고(S34), 제 2버퍼(14)의 데이터가 모두 출력되면(S35), 인터페이스(11)에 대한 잠시 대기 상태를 해지한 후(S36), 제 2버퍼(13)에 데이터를 저장한다(S33). 동시에, 제 1버퍼(13)에 저장된 데이터를 출력한다(S37). 이후, 계속하여 인터페이스(11)를 통하여 데이터가 입력되면(S38), 단계(S26)에서의 일련의 동작을 반복하고, 더이상 입력될 데이터가 없으면, 제 2버퍼(14)에 저장된 데이터를 플래시 메모리부(15)에 출력한 후(S39), 동작을 종료한다.Next, after the data is stored in the
상술한 이중버퍼를 이용한 고속 데이터 처리는 인터페이스(11)를 통해 입력된 데이터를 플래시 메모리부(15)에 기록하는 경우에 대하여 설명하였으나, 플래시 메모리부(15)에 기록된 데이터를 인터페이스(11)를 통해 외부로 출력하는 경우도 동일한 방법으로 설명될 수 있다.Although the above-described high speed data processing using the double buffer has been described in the case of writing the data input through the
도 1은 본 발명에 따른 이중버퍼를 이용한 고속 데이터 처리 시스템의 개념적인 구성을 도시한 블록도이다.1 is a block diagram showing the conceptual configuration of a high-speed data processing system using a double buffer according to the present invention.
도 2는 본 발명에 따른 이중버퍼를 이용한 고속 데이터 처리를 도시한 플로어 차트이다.2 is a floor chart illustrating high-speed data processing using a double buffer according to the present invention.
도 3은 종래의 데이터 처리 시스템의 개념적인 구성을 도시한 블록도이다.3 is a block diagram showing the conceptual configuration of a conventional data processing system.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080055193A KR20090129095A (en) | 2008-06-12 | 2008-06-12 | System for processing high speed data using duplex buffer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080055193A KR20090129095A (en) | 2008-06-12 | 2008-06-12 | System for processing high speed data using duplex buffer |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090129095A true KR20090129095A (en) | 2009-12-16 |
Family
ID=41689226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080055193A KR20090129095A (en) | 2008-06-12 | 2008-06-12 | System for processing high speed data using duplex buffer |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20090129095A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110054788A (en) * | 2009-11-18 | 2011-05-25 | 삼성전자주식회사 | Apparatus and method for storing data using non-volatile buffer |
KR20200138911A (en) * | 2019-06-03 | 2020-12-11 | 주식회사 원세미콘 | High speed NAND memory system and high speed NAND memory package device |
-
2008
- 2008-06-12 KR KR1020080055193A patent/KR20090129095A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110054788A (en) * | 2009-11-18 | 2011-05-25 | 삼성전자주식회사 | Apparatus and method for storing data using non-volatile buffer |
KR20200138911A (en) * | 2019-06-03 | 2020-12-11 | 주식회사 원세미콘 | High speed NAND memory system and high speed NAND memory package device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4704759B2 (en) | Data management apparatus and method for flash memory | |
JP4768504B2 (en) | Storage device using nonvolatile flash memory | |
KR102584018B1 (en) | Apparatus, system and method for caching compressed data background | |
JP6142081B2 (en) | Volatile memory architecture and related controllers in non-volatile memory devices | |
US8069324B2 (en) | Storage device with manual learning | |
US20080148108A1 (en) | Separate Handling of Read and Write of Read-Modify-Write | |
US20150370630A1 (en) | Flash memory control apparatus utilizing buffer to temporarily storing valid data stored in storage plane, and control system and control method thereof | |
US20120278539A1 (en) | Memory apparatus, memory control apparatus, and memory control method | |
JP5914148B2 (en) | SSD (solid state drive) device | |
JP2007293440A (en) | Storage device using nonvolatile cache memory and its control method | |
US8914592B2 (en) | Data storage apparatus with nonvolatile memories and method for controlling nonvolatile memories | |
JP2008046964A (en) | Information recording device and control method therefor | |
JPWO2006051780A1 (en) | Nonvolatile memory device and method of accessing nonvolatile memory device | |
TWI403897B (en) | Memory device and data management method thereof | |
KR101127686B1 (en) | Semiconductor memory device | |
KR20070057337A (en) | Solid state disk including buffer | |
JP2007193439A (en) | Storage device using nonvolatile cache memory and control method thereof | |
US9047923B1 (en) | Fast shingled tracks recording | |
US7598891B2 (en) | Data development device and data development method | |
KR20090129095A (en) | System for processing high speed data using duplex buffer | |
US20210096985A1 (en) | Memory controller and storage device including the same | |
CN105278871A (en) | Implementing enhanced performance with read before write to phase change memory to avoid write cancellations | |
US8285932B2 (en) | Mass storage system with improved usage of buffer capacity | |
US20090313422A1 (en) | Flash memory control apparatus having sequential writing procedure and method thereof | |
US8539170B2 (en) | Decoding circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |