KR20030095820A - Access control device for memory and method thereof - Google Patents
Access control device for memory and method thereof Download PDFInfo
- Publication number
- KR20030095820A KR20030095820A KR1020020033394A KR20020033394A KR20030095820A KR 20030095820 A KR20030095820 A KR 20030095820A KR 1020020033394 A KR1020020033394 A KR 1020020033394A KR 20020033394 A KR20020033394 A KR 20020033394A KR 20030095820 A KR20030095820 A KR 20030095820A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- mapping
- memories
- page
- pages
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/107—Programming all cells in an array, sector or block to the same state prior to flash erasing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
Abstract
Description
본 발명은 메모리 억세스 제어장치 및 방법에 관한 것으로, 보다 상세하게는, 메모리의 억세스 횟수 및 억세스 속도를 향상시킬 수 있는 메모리 억세스 제어장치 및 방법에 관한 것이다.The present invention relates to a memory access control apparatus and method, and more particularly, to a memory access control apparatus and method that can improve the number of times and the access speed of the memory.
플래시 메모리는 블록단위로 데이터를 삭제하고 페이지단위로 데이터를 기록하는 착탈가능한 메모리 장치이다. 이러한 플래시 메모리에 대한 삭제동작은 시리얼하게 진행된다. 종래기술에 따르면 연결되어 있는 각각의 플래시 메모리의 어드레스를 시리얼하게 관리어드레스에 매핑한다. 그리고, 플래시 컨트롤러가 매핑된 어드레스를 기초로 대응되는 플래시 메모리 중 해당되는 플래쉬 메모리를 선택하여 억세스한다.The flash memory is a removable memory device that deletes data in units of blocks and writes data in units of pages. The erase operation for the flash memory proceeds serially. According to the prior art, the address of each connected flash memory is serially mapped to the management address. The flash controller selects and accesses a corresponding flash memory among the corresponding flash memories based on the mapped address.
그런데, 플래시 메모리는 일반 메모리와 달리 데이터를 기록하기 위해서는 블록단위의 삭제동작을 먼저 수행해야 한다. 어드레스를 시리얼하게 관리하는 종래기술에 의하면 복수의 블럭에 걸쳐 데이터를 기록하려고 하면 동일 플래쉬 메모리를 계속 억세스하게 된다.However, unlike a general memory, a flash memory must first perform a block-by-block erasing operation to write data. According to the prior art of serially managing an address, attempting to write data over a plurality of blocks continuously accesses the same flash memory.
한편, 플래시 메모리에서의 삭제동작은 다른 동작에 비해 시간이 훨씬 많이 소요된다. 따라서 플래시 메모리는 한번에 여러 개의 데이터를 동시에 삭제하도록, 즉 블록 단위로 삭제하도록 구성되어 있다. 그러나 이러한 구성으로 인해 한 블록을 삭제하고 난 후 다음 블록을 삭제해야 하므로 삭제하려고 하는 블록의 수만큼의 시간이 소요되는 단점이 있다.On the other hand, the erasing operation in the flash memory takes much longer than other operations. Therefore, the flash memory is configured to delete several data at the same time, that is, block by block. However, this configuration has the disadvantage that it takes as much time as the number of blocks to be deleted since the next block must be deleted after one block is deleted.
또한, 종래기술과 같이 시리얼로 플래시 메모리의 어드레스를 제어할 경우에는 삭제동작 수행 후 데이터를 기록해야 하므로 동작속도가 느리다는 문제가 있다. 예를 들어, 5블록에 걸쳐 데이터를 기록하고자 한다면 5번의 삭제동작 및 5번의 기록동작을 수행해야 한다. 이는 일반 메모리와 달리 1과 0을 메모리에 직접 기록할 수 없고 오직 0만을 쓸 수 있는 플래시 메모리의 구조에 기인한 것이다. 즉, 삭제동작을 수행하여 플래시 메모리의 데이터가 모두 1로 바꾼 후 기록동작을 수행하여 필요한 위치에 0을 기록하게 된다. 이러한 이유로 플래시 메모리에서는 항상 데이터를 쓰기 전에 반드시 삭제동작을 수행하여야 한다.In addition, when controlling the address of the flash memory serially as in the prior art, since the data must be written after the erase operation, there is a problem that the operation speed is slow. For example, if data is to be recorded over five blocks, five erase operations and five write operations must be performed. This is due to the structure of flash memory, which, unlike general memory, cannot write 1s and 0s directly into memory, but only 0s. That is, the erase operation is performed to change all the data in the flash memory to 1, and then the write operation is performed to write 0 to the required position. For this reason, the flash memory always has to be erased before writing data.
또한, 종래기술에 따르면, 플래시 메모리는 동일 플래시 메모리에서 동시에 여러 개의 블록을 삭제할 수 없기 때문에 하나의 블록에 대해 삭제동작 및 기록동작을 수행한 후 다음 블록에 대해 삭제동작 및 기록동작을 수행하여야 하는 단점이 있다.In addition, according to the related art, since the flash memory cannot delete several blocks at the same time from the same flash memory, it is necessary to perform the delete operation and the write operation on the next block after performing the delete operation and the write operation on one block. There are disadvantages.
본 발명이 이루고자 하는 기술적 과제는, 메모리에의 억세스 횟수를 감소시키고 억세스 속도를 향상시킬 수 있는 억세스 제어장치 및 방법을 제공하는 데 있다.It is an object of the present invention to provide an access control apparatus and method capable of reducing the number of accesses to a memory and improving the access speed.
도 1은 플래시 메모리의 내부구조를 도시한 도면,1 is a diagram illustrating an internal structure of a flash memory;
도 2는 본 발명에 따른 메모리 억세스 제어장치에 대한 일실시예의 구성을 도시한 블록도,2 is a block diagram showing the configuration of an embodiment of a memory access control apparatus according to the present invention;
도 3은 본 발명에 따른 메모리 억세스 제어방법에 대한 일실시예의 수행과정을 도시한 흐름도,3 is a flowchart illustrating a process of performing an embodiment of a memory access control method according to the present invention;
도 4는 본 발명에 따른 삭제용 어드레스 매핑 테이블의 일예를 도시한 도면, 그리고,4 is a diagram illustrating an example of an address mapping table for deletion according to the present invention;
도 5는 본 발명에 따른 기록용 어드레스 매핑 테이블의 일예를 도시한 도면이다.5 is a diagram showing an example of a recording address mapping table according to the present invention.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 메모리 억세스 제어장치는, 연결되어 있는 메모리 개수 및 상기 메모리 각각의 페이지크기를 검출하는 메모리 검출부; 검출된 상기 메모리의 개수 및 상기 페이지크기에 따라 관리용 어드레스를 페이지단위로 분할하고, 분할된 상기 관리용 어드레스의 페이지 각각을 검출된 상기 메모리 각각의 페이지과 순환순차적으로 매핑하는 제1매핑부; 및 상기 제1매핑부의 매핑결과를 기초로 상기 메모리에 대한 기록동작을 순환순차적으로 수행하도록 제어하는 제어부를 갖는다.In accordance with another aspect of the present invention, there is provided a memory access control apparatus, including: a memory detector configured to detect a number of connected memories and a page size of each of the memories; A first mapping unit for dividing a management address into page units according to the number of detected memories and the page size, and cyclically mapping each of the divided pages of the management address with each of the detected pages; And a controller configured to cyclically perform a write operation on the memory based on the mapping result of the first mapping unit.
바람직하게는, 상기 관리용 어드레스를 복수의 상기 페이지로 구성된 블록의크기에 따라 블록단위로 분할하고, 분할된 상기 관리용 어드레스를 검출된 상기 메모리 각각의 블록과 순환순차적으로 매핑하는 제2매핑부;를 더 구비하며, 상기 제어부는 상기 제2매핑부의 매핑결과를 기초로 복수의 상기 메모리에 대한 삭제동작을 동시에 수행하도록 제어한다.Preferably, the second mapping unit divides the management address into block units according to a size of a block composed of a plurality of pages, and cyclically maps the divided management address to each of the detected blocks. The controller further controls to simultaneously perform an erase operation on the plurality of memories based on the mapping result of the second mapping unit.
상기 제1매핑부는 페이지단위로 분할된 상기 관리용 어드레스와 상기 메모리 각각에 대해 대응되는 순위의 페이지를 순차적으로 매핑한 후 대응되는 다음 순위의 페이지를 순차적으로 매핑하며, 상기 제2매핑부는 블록단위로 분할된 상기 관리용 어드레스와 상기 메모리 각각에 대해 대응되는 순위의 블록을 순차적으로 매핑한 후 대응되는 다음 순위의 블록을 순차적으로 매핑한다.The first mapping unit sequentially maps pages of a corresponding rank for each of the management address divided by the page and the memory, and sequentially maps pages of a corresponding next rank, and the second mapping unit sequentially blocks. The blocks of ranks corresponding to the management addresses divided by the memory are sequentially mapped to each of the memories, and the blocks of the next ranks corresponding to the next rank are sequentially mapped.
상기 제어부는 특정한 상기 메모리에 대한 기록동작의 수행중에 발생하는 프로그램 타임에 다른 상기 메모리에 대한 기록동작을 수행하도록 제어한다.The control unit controls to perform a write operation on another memory at a program time occurring during the execution of a write operation on a specific memory.
바람직하게는, 상기 메모리는 블록단위로 데이터에 대한 삭제동작이 수행되고 상기 블록을 구성하는 페이지단위로 데이터에 대한 기록동작이 수행되는 플래시 메모리이며, 연결된 복수의 상기 플래시 메모리에 대해 동시에 데이터의 삭제동작을 수행하고 순환순차적으로 데이터의 기록동작을 수행한다.Preferably, the memory is a flash memory in which a data erasing operation is performed in units of blocks and a data operation is performed in units of pages constituting the block, and data is simultaneously deleted for a plurality of connected flash memories. An operation is performed and data recording operation is performed in a sequential order.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 메모리 억세스 제어방법은, 연결되어 있는 메모리의 개수 및 상기 메모리 각각의 페이지크기를 검출하는 검출단계; 검출된 상기 메모리의 개수 및 상기 페이지크기에 따라 관리용 어드레스를 페이지단위로 분할하는 제1분할단계; 분할된 상기 관리용 어드레스의 페이지 각각을 검출된 상기 메모리 각각의 페이지와 순환순차적으로 매핑하는 제1매핑단계: 및 상기 제1매핑단계의 매핑결과를 기초로 상기 메모리에 대해 순환순차적으로 기록동작을 수행하는 기록단계;를 포함한다.According to another aspect of the present invention, there is provided a memory access control method, including: detecting a number of connected memories and a page size of each of the memories; A first dividing step of dividing a management address into page units according to the detected number of memories and the page size; A first mapping step of cyclically mapping each of the divided pages of the management address with each of the detected pages of the memory; and cyclically writing operations to the memory based on the mapping result of the first mapping step. It includes; recording step to perform.
바람직하게는, 상기 관리용 어드레스를 복수의 상기 페이지로 구성된 블록의 크기에 따라 블록단위로 분할하는 제2분할단계; 분할된 상기 관리용 어드레스를 검출된 상기 메모리 각각의 블록과 순환순차적으로 매핑하는 제2매핑단계; 및 상기 제2매핑단계의 매핑결과를 기초로 복수의 상기 메모리에 대해 동시에 삭제동작을 수행하는 삭제단계;를 더 포함한다.Preferably, the second division step of dividing the management address in block units according to the size of the block consisting of a plurality of the page; A second mapping step of cyclically mapping the divided management address with each detected block of the memory; And a deleting step of simultaneously deleting a plurality of the memories based on the mapping result of the second mapping step.
상기 제1매핑단계는 페이지단위로 분할된 상기 관리용 어드레스와 상기 메모리 각각에 대해 대응되는 순위의 상기 페이지를 순차적으로 매핑한 후 대응되는 다음 순위의 페이지를 순차적으로 매핑하며, 상기 제2매핑단계는 블록단위로 분할된 상기 관리용 어드레스와 상기 메모리 각각에 대해 대응되는 순위의 블록을 순차적으로 매핑한 후 대응되는 다음 순위의 블록을 순차적으로 매핑한다.The first mapping step sequentially maps the management address divided by the page unit and the pages of the corresponding ranks for each of the memories, and sequentially maps the pages of the next next rank, and the second mapping step. Sequentially maps the blocks of ranks corresponding to each of the management addresses divided by the block unit and the memory, and then sequentially maps the blocks of the next rank corresponding thereto.
상기 기록단계는 특정한 상기 메모리에 대한 기록동작의 수행중에 발생하는 프로그램 타임에 다른 상기 메모리에 대한 기록동작을 수행한다.The write step performs a write operation on another memory at a program time occurring during the execution of the write operation on a particular memory.
바람직하게는, 상기 메모리는 블록단위로 데이터에 대한 삭제동작이 수행되고 상기 블록을 구성하는 페이지단위로 데이터에 대한 기록동작이 수행되는 플래시 메모리이며, 연결된 복수의 상기 플래시 메모리에 대해 동시에 데이터의 삭제동작을 수행하고 순환순차적으로 데이터의 기록동작을 수행한다.Preferably, the memory is a flash memory in which a data erasing operation is performed in units of blocks and a data operation is performed in units of pages constituting the block, and data is simultaneously deleted for a plurality of connected flash memories. An operation is performed and data recording operation is performed in a sequential order.
이로써, 삭제동작의 수행시 연결되어 있는 복수개의 메모리에 대한 삭제동작을 동시에 수행할 수 있고, 기록동작의 수행시 프로그램 타임동안 다른 메모리에대한 기록동작을 수행할 수 있어 전체적인 메모리의 데이터 기록시간이 단축된다.As a result, when the erase operation is performed, the erase operation may be simultaneously performed on a plurality of connected memories, and when the write operation is performed, the write operation may be performed on other memories during the program time. It is shortened.
이하에서, 첨부된 도면들을 참조하여 본 발명에 따른 메모리 억세스 제어장치 및 방법에 대해 상세하게 설명한다.Hereinafter, a memory access control apparatus and method according to the present invention will be described in detail with reference to the accompanying drawings.
다종의 메모리 장치 중 플래시 메모리는 디지털 휴대전화, 디지털 카메라, 랜스위치, 노트북 컴퓨터의 PC 카드, 디지털 셋톱박스, 내장 컨트롤러 등과 같은 다양한 장치들에 사용되는 저장매체이다. 플래시 메모리는 지속적으로 전원이 공급되는 비휘발성 메모리로서 블록단위의 데이터삭제 및 페이지단위의 데이터기록이 가능하다. 플래시 메모리는 EEPROM의 변형 중 하나인데, 바이트 단위로 데이터를 기록 및 삭제하는 EEPROM과는 달리 블록단위로 동작하기 때문에 EEPROM보다 속도가 빠르다.Among the various memory devices, flash memory is a storage medium used in various devices such as digital mobile phones, digital cameras, LAN switches, PC cards of notebook computers, digital set-top boxes, and internal controllers. Flash memory is a non-volatile memory that is continuously powered, and can erase data in units of blocks and write data in units of pages. Flash memory is one of the variants of EEPROM, which is faster than EEPROM because it operates in blocks, unlike EEPROM, which writes and deletes data in bytes.
도 1은 플래시 메모리의 내부구조를 도시한 도면이다. 플래시 메모리(100)의 블록(110)의 크기는 플래시 메모리(100)의 크기에 따라 상이하다. 일반적으로 하나의 블록(110)은 16페이지, 32페이지, 또는 64페이지로 구성되는 데 도 2에는 하나의 블록(110)이 16페이지로 구성된 플래시 메모리의 내부구조가 도시되어 있다. 하나의 페이지(120)가 528바이트인 플래시 메모리를 사용할 경우 하나의 블록을 삭제하면 8K 또는 16K 바이트의 데이터를 기록할 수 있다. 이러한 플래시 메모리에서 삭제는 블록단위로 수행되며 기록은 페이지단위로 수행된다.1 is a diagram illustrating an internal structure of a flash memory. The size of the block 110 of the flash memory 100 is different depending on the size of the flash memory 100. In general, one block 110 is composed of 16 pages, 32 pages, or 64 pages, and FIG. 2 shows an internal structure of a flash memory in which one block 110 is composed of 16 pages. When one page 120 uses 528 bytes of flash memory, one block may be erased to record 8K or 16K bytes of data. In such flash memory, erasing is performed block by block and writing is performed by page.
도 2는 본 발명에 따른 메모리 억세스 제어장치에 대한 일실시예의 구성을 도시한 블록도이며, 도 3은 본 발명에 따른 메모리 억세스 제어방법에 대한 일실시예의 수행과정을 도시한 흐름도이다.2 is a block diagram illustrating an embodiment of a memory access control apparatus according to the present invention, and FIG. 3 is a flowchart illustrating a process of performing an embodiment of the memory access control method according to the present invention.
도 2 및 도 3을 참조하면, 플래시 메모리 억세스 제어장치(200)는 플래시 메모리 검출부(210), 크기 검출부(220), 어드레스 매핑부(230), 및 제어부(240)를 갖는다.2 and 3, the flash memory access control apparatus 200 includes a flash memory detector 210, a size detector 220, an address mapping unit 230, and a controller 240.
전원이 공급되면 플래시 메모리 검출부(210)는 컨트롤 버스(250) 및 데이터 버스(252)를 통해 연결되어 있는 플래시 메모리(260-1 내지 260-4)를 검출한다(S300). 플래시 메모리 검출부(210)의 검출결과는 제어부(240)로 제공되며, 제어부(240)는 검출결과를 기초로 연결되어 있는 플래시 메모리(260-1 내지 260-4)의 개수를 파악할 수 있다. 이러한 플래시 메모리 검출부(210)의 검출동작은 플래그 앤 플레이 방식으로 이루어질 수도 있다. 즉, 전원의 공급여부와 관계없이 버스에 플래시 메모리가 추가적으로 연결되면 플래시 메모리 개수를 증가시키는 방법을 채용할 수 있다.When the power is supplied, the flash memory detector 210 detects the flash memories 260-1 through 260-4 connected through the control bus 250 and the data bus 252 (S300). The detection result of the flash memory detector 210 may be provided to the controller 240, and the controller 240 may determine the number of flash memories 260-1 to 260-4 connected based on the detection result. The detection operation of the flash memory detector 210 may be performed in a flag and play manner. That is, if a flash memory is additionally connected to the bus regardless of whether power is supplied, a method of increasing the number of flash memories may be employed.
한편, 크기 검출부(220)는 연결되어 있는 플래시 메모리(260-1 내지 260-4) 각각에 대한 페이지크기 및 복수의 페이지로 구성된 블록크기를 검출한다(S310). 크기 검출부(220)의 검출동작 수행시기는 플래시 메모리 검출부(220)의 검출동작 수행시기와 동일하다. 또한, 플래시 메모리 검출부(210)가 크기 검출부(220)의 기능을 수행하도록 구성할 수도 있다. 크기 검출부(220)의 검출결과는 제어부(240)로 제공된다.Meanwhile, the size detector 220 detects a page size and a block size including a plurality of pages for each of the connected flash memories 260-1 to 260-4 (S310). The timing of performing the detection operation of the size detector 220 is the same as the timing of performing the detection operation of the flash memory detector 220. In addition, the flash memory detector 210 may be configured to perform the function of the size detector 220. The detection result of the size detector 220 is provided to the controller 240.
어드레스 매핑부(230)는 제어부(240)로부터 연결되어 있는 플래시 메모리(260-1 내지 260-4)의 개수, 플래시 메모리(260-1 내지 260-4) 각각에 대한 페이지크기 및 블록의 크기를 입력받아 관리용 어드레스와 플래시 메모리(260-1 내지 260-4)의 블록 및 페이지를 매핑한 매핑 테이블을 작성한다. 어드레스 매핑부(230)는 삭제용 어드레스 매핑부(232) 및 기록용 어드레스 매핑부(234)를 갖는다. 한편, 어드레스 매핑부(230)는 플래시 메모리 검출부(210) 및 크기 검출부(220)로부터 연결되어 있는 플래시 메모리(260-1 내지 260-4)의 개수, 플래시 메모리(260-1 내지 260-4) 각각에 대한 페이지크기 및 블록크기를 직접 입력받을 수도 있다.The address mapping unit 230 may determine the number of flash memories 260-1 to 260-4, the page size and the block size of each of the flash memories 260-1 to 260-4 connected from the controller 240. A mapping table is created by mapping the management addresses and blocks and pages of the flash memories 260-1 to 260-4. The address mapping unit 230 includes a deletion address mapping unit 232 and a recording address mapping unit 234. The address mapping unit 230 may include the number of flash memories 260-1 to 260-4 connected from the flash memory detector 210 and the size detector 220, and the flash memories 260-1 to 260-4. You can also directly input the page size and block size for each.
삭제용 어드레스 매핑부(232)는 연결되어 있는 플래시 메모리(260-1 내지 260-4)의 개수 및 플래시 메모리(260-1 내지 260-4) 각각의 블록크기를 기초로 삭제용 어드레스 매핑 테이블을 작성한다(S320). 도 4에는 삭제용 어드레스 매핑부(232)에서 작성한 삭제용 어드레스 매핑 테이블의 일예가 도시되어 있다.The deletion address mapping unit 232 may delete the address mapping table based on the number of the flash memories 260-1 to 260-4 connected and the block sizes of the flash memories 260-1 to 260-4. It creates (S320). 4 shows an example of an address mapping table for deletion created by the address mapping unit 232 for deletion.
도 4를 참조하면, 관리용 어드레스(410)를 일정 단위(예를 들면, 하나의 단위는 16페이지)로 나누어 관리블록을 구성한다. 이 경우, 페이지 0에서 15까지는 첫번째 관리블록에 해당되고, 페이지 16에서 31은 두번째 관리블록에 해당된다. 또한, 각각의 관리블록은 순환순차적으로 각각의 플래시 메모리(260-1 내지 260-4)의 블록에 대응시킨다. 즉, 페이지가 0에서 15인 첫번째 관리블록은 제1플래시 메모리(260-1)의 첫번째 블록에 대응되며, 페이지가 16에서 31인 두번째 관리블록은 제2플래시 메모리(260-2)의 첫번째 블록에 대응된다.Referring to FIG. 4, the management address 410 is divided into predetermined units (for example, one unit is 16 pages) to form a management block. In this case, pages 0 to 15 correspond to the first management block, and pages 16 to 31 correspond to the second management block. Each management block also corresponds to a block of each flash memory 260-1 to 260-4 in a sequential order. That is, the first management block with pages 0 to 15 corresponds to the first block of the first flash memory 260-1, and the second management block with pages 16 to 31 is the first block of the second flash memory 260-2. Corresponds to.
복수의 플래시 메모리(260-1 내지 260-4)에 대한 삭제동작을 수행할 경우에 연결되어 있는 모든 플래시 메모리(260-1 내지 260-4)를 동시에 인에이블시킨다. 그리고, 삭제명령과 페이지를 기록하여 동일한 위치에 있는 블록(예를 들면, 각각의 플래시 메모리의 첫번째 블록)에 대해 동시에 삭제동작을 수행한다(S340). 이와 달리, 제1플래시 메모리(260-1)의 임의의 블록에 대한 삭제동작을 수행하면서 제2플래시 메모리(260-2)의 임의의 블록에 대한 삭제동작을 수행하고 계속해서 모든 플래시 메모리에 대한 삭제동작을 수행할 수도 있다.When the erase operation is performed on the plurality of flash memories 260-1 to 260-4, all of the connected flash memories 260-1 to 260-4 are simultaneously enabled. Then, the erase command and the page are recorded, and the erase operation is simultaneously performed on blocks (for example, the first block of each flash memory) at the same position (S340). In contrast, while performing an erase operation on an arbitrary block of the first flash memory 260-1, an erase operation is performed on an arbitrary block of the second flash memory 260-2, and then continuously performed on all flash memories. The delete operation may be performed.
본 발명과 같이 어드레스를 블록단위로 나누어 관리를 할 경우 제1플래시 메모리(260-1)에 대한 삭제동작을 수행하면서 제2플래시 메모리(260-2)에 대한 삭제동작을 수행하는 방식으로 동시에 4개의 블록에 대한 삭제동작을 수행할 수 있다. 즉, 5개의 블록에 걸쳐 삭제동작을 수행하는 경우에 동시에 4개의 플래시 메모리(260-1 내지 260-4)에 대한 삭제동작을 수행한 후 다음에 1개의 플래시 메모리에 대해서만 삭제동작을 수행하면 되므로 2회의 블록 삭제 시간만 소요된다.When the address is divided and managed in units of blocks as in the present invention, the erase operation is performed on the first flash memory 260-1 while the erase operation is performed on the second flash memory 260-2. The delete operation may be performed on four blocks. That is, when the erase operation is performed over five blocks, the erase operation may be performed on the four flash memories 260-1 to 260-4 at the same time, and then the erase operation may be performed on only one flash memory. Only two block deletions are required.
기록용 어드레스 매핑부(234)는 연결되어 있는 플래시 메모리(260-1 내지 260-2)의 개수 및 플래시 메모리(260-1 내지 260-2) 각각의 페이지크기를 기초로 기록용 어드레스 매핑 테이블을 작성한다(S420). 도 5에는 기록용 어드레스 매핑부(234)에서 작성된 기록용 어드레스 매핑 테이블의 일예가 도시되어 있다.The write address mapping unit 234 may write a write address mapping table based on the number of flash memories 260-1 to 260-2 connected and the page sizes of the flash memories 260-1 to 260-2. It creates (S420). FIG. 5 shows an example of a recording address mapping table created by the recording address mapping unit 234. As shown in FIG.
도 5를 참조하면, 관리용 어드레스(510)의 어드레스를 페이지별로 순차적으로 제1플래시 메모리(260-1)의 첫번째 페이지, 제2플래시 메모리(260-2)의 첫번째 페이지, …, 제4플래시 메모리(260-4)의 마지막 페이지에 대응시킨다. 이와 같이 구성하면 어드레스 7은 제4플래시 메모리(260-4)의 두번째 페이지에 대응된다.Referring to FIG. 5, the first page of the first flash memory 260-1, the first page of the second flash memory 260-2,. It corresponds to the last page of the fourth flash memory 260-4. In this configuration, the address 7 corresponds to the second page of the fourth flash memory 260-4.
작성된 기록용 어드레스 매핑 테이블을 이용하여 플래시 메모리(260-1 내지 260-4)에 데이터를 순환순차적으로 기록한다(S350). 이 때, 데이터의 기록은 페이지 단위로 이루어진다. 순환순차적 기록방식에 의하면, 1번 페이지의 데이터는 제1플래시 메모리(260-1)의 1번 페이지에 기록되고 2번 페이지의 데이터는 제2플래시 메모리(260-2)의 1번 페이지에 기록된다. 상술한 바와 같이 데이터가 각각의 플래시 메모리(260-1 내지 260-4)에 순환순차적으로 기록되도록 어드레스를 관리하면 5개의 블록에 걸친 데이터의 기록시 약 3회의 블록 기록 시간만 요구된다.The data is cyclically recorded in the flash memories 260-1 to 260-4 using the created write address mapping table (S350). At this time, data recording is performed in units of pages. According to the cyclic sequential recording method, data of page 1 is written in page 1 of the first flash memory 260-1 and data of page 2 is written in page 1 of the second flash memory 260-2. do. As described above, if the address is managed such that data is written to each of the flash memories 260-1 to 260-4 in a sequential order, only about three block writing times are required when writing data over five blocks.
플래시 메모리에 데이터가 입력되도 내부에서 200~500uSec 정도의 별도의 프로그램 타임이 소요된다. 따라서, 제1플래시 메모리(260-1)에 데이터를 기록하고 내부 프로그래밍하고 있는 동안에 제2플래시 메모리(260-2)에 데이터를 기록할 수 있어 약 3회의 블록 기록 시간만으로 데이터를 기록할 수 있게 된다. 결과적으로 5개의 블록에 걸쳐 데이터를 기록하기 위해 소요되는 총시간은 2회의 블록 삭제 시간과 약 3회의 블록 기록 시간을 합한 시간이다.Even if data is input to the flash memory, it takes about 200 ~ 500uSec extra program time internally. Therefore, data can be written to the second flash memory 260-2 while data is written to the first flash memory 260-1 and internally programmed, so that data can be written with only about three block write times. do. As a result, the total time required to record data over five blocks is the sum of two block erase times and about three block write times.
상술한 실시예에는 어드레스 매핑을 위해 삭제용 및 기록용 매핑 테이블을 이용하는 경우를 예로 들었으나 소프트웨어적으로 블록 단위 또는 페이지 단위로 어드레스를 매핑할 수도 있다. 또한, 상술한 실시예에서는 플래시 메모리를 예로 들어 설명하였으나, 이외에도 블록단위로 데이터를 삭제하거나 페이지단위로 데이터를 저장하는 다른 메모리 장치에도 본 발명에 따른 메모리 억세스 제어장치 및 방법을 적용할 수 있다.In the above-described embodiment, the case of using the erasing and writing mapping table for address mapping is exemplified. However, the addresses may be mapped in units of blocks or pages in software. In the above-described embodiment, the flash memory has been described as an example. In addition, the memory access control apparatus and method according to the present invention can be applied to other memory devices that delete data in units of blocks or store data in units of pages.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. Computer-readable recording media include any type of recording device that stores data that can be read by a computer system. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, and floppy. Disks, optical data storage, and the like, and also include those implemented in the form of carrier waves (eg, transmission over the Internet). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.Although the preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific preferred embodiments described above, and the present invention belongs to the present invention without departing from the gist of the present invention as claimed in the claims. Various modifications can be made by those skilled in the art, and such changes are within the scope of the claims.
본 발명에 따르면, 블록 단위로 어드레스를 매핑시킴으로써 삭제동작의 수행시 연결되어 있는 복수개의 메모리에 대한 삭제동작을 동시에 수행할 수 있고, 페이지 단위로 어드레스를 매핑시킴으로써 기록동작의 수행시 프로그램 타임동안 다른 메모리에 대한 기록동작을 수행할 수 있어 전체적인 메모리의 데이터 기록시간이 단축된다. 이러한 시간단축효과는 메모리의 수가 많을수록 커진다.According to the present invention, it is possible to simultaneously perform an erase operation on a plurality of memories that are connected when performing an erase operation by mapping an address in units of blocks, and different program times during execution of a write operation by mapping addresses in units of pages. Since the write operation to the memory can be performed, the data writing time of the entire memory is shortened. This shortening effect increases as the number of memories increases.
Claims (13)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0033394A KR100479170B1 (en) | 2002-06-14 | 2002-06-14 | Access control device for memory and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0033394A KR100479170B1 (en) | 2002-06-14 | 2002-06-14 | Access control device for memory and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030095820A true KR20030095820A (en) | 2003-12-24 |
KR100479170B1 KR100479170B1 (en) | 2005-03-28 |
Family
ID=32387110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-0033394A KR100479170B1 (en) | 2002-06-14 | 2002-06-14 | Access control device for memory and method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100479170B1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100626393B1 (en) * | 2005-04-07 | 2006-09-20 | 삼성전자주식회사 | Non-volatile memory device and multi-page copyback method thereof |
KR100771609B1 (en) * | 2005-03-21 | 2007-10-31 | 엘지전자 주식회사 | Method of Time-Shift function in Digital MultimediA Broadcasting a receiving set |
KR100851118B1 (en) * | 2006-03-07 | 2008-08-08 | 히다찌 시스템즈 & 서비시즈, 리미티드 | Data management and control system in semiconductor flash memory, semiconductor flash memory accommodation apparatus, monitor camera apparatus, and data management method in semiconductor flash memory |
CN101310255B (en) * | 2005-09-20 | 2012-11-07 | 高通股份有限公司 | Method and device for detecting configuration of memory device in processing system |
WO2014157817A1 (en) * | 2013-03-25 | 2014-10-02 | 아주대학교산학협력단 | Method for mapping page address based on flash memory and system therefor |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3143161B2 (en) * | 1991-08-29 | 2001-03-07 | 三菱電機株式会社 | Non-volatile semiconductor memory |
JPH06175917A (en) * | 1992-12-02 | 1994-06-24 | Hitachi Ltd | Flash memory |
JP2739838B2 (en) * | 1995-05-31 | 1998-04-15 | 日本電気株式会社 | Flash memory and erasing method thereof |
JP3702515B2 (en) * | 1995-12-04 | 2005-10-05 | 富士通株式会社 | Flash memory control method and flash memory control unit |
KR100319598B1 (en) * | 1998-03-18 | 2002-04-06 | 김영환 | Flash memory array access method and device |
-
2002
- 2002-06-14 KR KR10-2002-0033394A patent/KR100479170B1/en not_active IP Right Cessation
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100771609B1 (en) * | 2005-03-21 | 2007-10-31 | 엘지전자 주식회사 | Method of Time-Shift function in Digital MultimediA Broadcasting a receiving set |
KR100626393B1 (en) * | 2005-04-07 | 2006-09-20 | 삼성전자주식회사 | Non-volatile memory device and multi-page copyback method thereof |
CN101310255B (en) * | 2005-09-20 | 2012-11-07 | 高通股份有限公司 | Method and device for detecting configuration of memory device in processing system |
KR100851118B1 (en) * | 2006-03-07 | 2008-08-08 | 히다찌 시스템즈 & 서비시즈, 리미티드 | Data management and control system in semiconductor flash memory, semiconductor flash memory accommodation apparatus, monitor camera apparatus, and data management method in semiconductor flash memory |
WO2014157817A1 (en) * | 2013-03-25 | 2014-10-02 | 아주대학교산학협력단 | Method for mapping page address based on flash memory and system therefor |
KR101453313B1 (en) * | 2013-03-25 | 2014-10-22 | 아주대학교산학협력단 | Method for Page-level address mapping using flash memory and System thereof |
US20160048448A1 (en) * | 2013-03-25 | 2016-02-18 | Ajou University Industry-Academic Cooperation Foundation | Method for mapping page address based on flash memory and system therefor |
US9830260B2 (en) | 2013-03-25 | 2017-11-28 | Ajou University Industry-Academic Cooperation Foundation | Method for mapping page address based on flash memory and system therefor |
Also Published As
Publication number | Publication date |
---|---|
KR100479170B1 (en) | 2005-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11748258B2 (en) | Method for managing a memory apparatus | |
US11232041B2 (en) | Memory addressing | |
US8386698B2 (en) | Data accessing method for flash memory and storage system and controller using the same | |
US8190811B2 (en) | Defragmentation of solid state memory | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
US8650379B2 (en) | Data processing method for nonvolatile memory system | |
KR100725271B1 (en) | USB-SD Memory with multiple DMA channels, and data storing method thereof | |
EP2306321A1 (en) | Increasing memory performance in flash memory devices by performing simultaneous write operation to multiple devices | |
US20050055497A1 (en) | Faster write operations to nonvolatile memory by manipulation of frequently-accessed sectors | |
KR100533682B1 (en) | Data managing device and method for flash memory | |
WO2009096180A1 (en) | Memory controller, nonvolatile storage device, and nonvolatile storage system | |
US8127072B2 (en) | Data storage device and method for accessing flash memory | |
WO1999030239A1 (en) | Memory and access method | |
US20110035543A1 (en) | Memory drive that can be operated like optical disk drive and method for virtualizing memory drive as optical disk drive | |
US8819332B2 (en) | Nonvolatile storage device performing periodic error correction during successive page copy operations | |
US8380920B2 (en) | Flash storage device and data access method of flash memory | |
KR100479170B1 (en) | Access control device for memory and method thereof | |
JP2008084184A (en) | Memory controller | |
US20050204115A1 (en) | Semiconductor memory device, memory controller and data recording method | |
US11461225B2 (en) | Storage device, control method of storage device, and storage medium | |
JP4334331B2 (en) | Flash memory access control method | |
KR100688463B1 (en) | Method for writing and erasing data of physical memory | |
WO2009090692A1 (en) | Semiconductor memory device and semiconductor memory system | |
KR100538338B1 (en) | Method for Uniformly Distributing Memory Blocks of Flash Memory and Data Storage Device Using The Method | |
US8122183B2 (en) | Data managing method for flash memory and flash memory device using the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120306 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |