KR19990012215A - Flash memory - Google Patents
Flash memory Download PDFInfo
- Publication number
- KR19990012215A KR19990012215A KR1019970035548A KR19970035548A KR19990012215A KR 19990012215 A KR19990012215 A KR 19990012215A KR 1019970035548 A KR1019970035548 A KR 1019970035548A KR 19970035548 A KR19970035548 A KR 19970035548A KR 19990012215 A KR19990012215 A KR 19990012215A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- sector
- coefficient
- data recording
- physical address
- 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/08—Address circuits; Decoders; Word-line control circuits
-
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
본 발명은 플래쉬 메모리에 관한 것으로, 섹터 정보 저장 영역에는 피지컬 어드레스가 저장되고 데이터 저장 영역의 일부분에 형성된 데이타 기록 계수 저장 영역이 데이타 기록 상위 계수를 저장하는 제 1 영역과, 데이타 기록 하위 계수를 저장하는 제 2 영역으로 분할되어, 각각 데이타 기록 상위 계수와 데이타 기록 하위 계수를 저장하도록 이루어져서, 섹터 정보 테이블에 피지컬 어드레스만을 저장하여 운용함으로써, 섹터 정보 테이블의 크기를 줄일 수 있다. 결과적으로 검색 요소가 감소하였기 때문에 데이타 기록과 판독 시에 섹터 정보 테이블의 검색 시간이 감소하고, 특히 데이타 기록시에 섹터에 기록된 데이타의 유효성을 판단할 필요가 없으므로 데이타를 기록할 프리 섹터를 검색하는데 소요되는 시간 역시 감소함으로써, 전체적인 동작 시간이 감소하는 효과를 제공한다The present invention relates to a flash memory, wherein in a sector information storage area, a physical address is stored and a data recording coefficient storage area formed in a portion of the data storage area stores a first area for storing a data recording upper coefficient, and a data recording lower coefficient It is divided into a second area so as to store data recording upper coefficients and data recording lower coefficients, respectively, and by storing only the physical address in the sector information table, the size of the sector information table can be reduced. As a result, since the search factor is reduced, the search time of the sector information table is reduced during data writing and reading, and in particular, since it is not necessary to determine the validity of the data recorded in the sector at the time of data writing, the free sector to record data is searched. The time taken to reduce is also reduced, thereby reducing the overall operating time.
Description
본 발명은 플래쉬 메모리에 관한 것으로, 특히 섹터 정보 테이블 영역을 줄이고 동작 속도를 개선한 플래쉬 메모리에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to flash memory, and more particularly, to a flash memory having reduced sector information table area and improved operation speed.
플래쉬 메모리는 퍼스널 컴퓨터 등에서 사용되는 보조 기억장치인 하드 디스크나 대용량 플로피 디스크 등을 대체할 수 있는 기억 장치로서, 이이피롬(EEPROM, Electrically Erasable and Programmable ROM)의 진보된 기술을 바탕으로 한다.Flash memory is a storage device that can replace a hard disk or a large floppy disk, which is an auxiliary storage device used in personal computers, and the like, and is based on an advanced technology of EEPROM (Electrically Erasable and Programmable ROM).
플래쉬 메모리라는 명칭이 사용되는 이유는 데이타의 기록과 소거가 일정한 크기의 블록 단위로 한번에 이루어지기 때문에, 이는 단일의 트랜지스터로 단위 메모리 셀을 구현함으로써 가능해진 것이다.The reason why the name flash memory is used is that the writing and erasing of data is performed in a unit of a block of a certain size at once, which is made possible by implementing a unit memory cell with a single transistor.
이와 같은 플래쉬 메모리는 실제로 데이타를 저장하도록 다수개의 섹터로 분할된 사용자 영역과, 분할된 다수 개의 섹터를 관리하는데 필요한 섹터 정보를 저장하는 섹터 정보 테이블 영역으로 구분된다.Such a flash memory is divided into a user area divided into a plurality of sectors to actually store data, and a sector information table area that stores sector information necessary to manage the divided plurality of sectors.
상술한 섹터 정보 테이블과 이에 할당된 사용자 영역 즉 데이타 저장 영역의 구성을 도 1에 나타내었다.The configuration of the above-described sector information table and the user area assigned thereto, namely the data storage area, is shown in FIG.
도 1에 나타낸 바와 같이, 섹터 정보 테이블은 크게 어드레스 영역과 플래그 영역으로 구분되며, 이와 같은 섹터 정보 테이블은 전체 데이타 저장 영역의 크기에 따라 다수 개가 형성된다.As shown in Fig. 1, the sector information table is largely divided into an address area and a flag area. A plurality of sector information tables are formed according to the size of the entire data storage area.
어드레스 영역에는 로지컬 어드레스와 피지컬 어드레스가 저장되는데, 로지컬 어드레스는각각의 섹터를 구분하기 위한 어드레스이며, 피지컬 어드레스는 섹터를 구성하는 메모리 셀 어레이의 어드레스이다.In the address area, a logical address and a physical address are stored. The logical address is an address for distinguishing each sector, and the physical address is an address of a memory cell array constituting the sector.
플래그 영역에는 USED/FREE 플래그와 OLD/NEW 플래그가 저장되는데, USED/FREE 플래그의 값은 섹터의 데이타 저장 영역에 데이타가 저장되어 있는지를 나타내는데, USED/FREE 플래그의 값이 논리값 1일 때는 세트(set)된 상태로서 데이타가 저장되어 있음을 나타내며, 논리값 0일 때는 리세트(reset)된 상태로서 데이타가 저장되어 있지 않은 것을 나타낸다.The USED / FREE and OLD / NEW flags are stored in the flag area. The value of the USED / FREE flag indicates whether data is stored in the data storage area of the sector. When the value of the USED / FREE flag is logical 1, The data is stored in the (set) state, and when the logical value is 0, the data is stored in the reset state.
그러나 데이타가 저장되어 있어서 USED/FREE 플래그가 세트되어 있다 해도, 저장된 데이타가 반드시 유효한 것은 아니다.However, even if the data is stored and the USED / FREE flag is set, the stored data is not necessarily valid.
상술한 USED/FREE 플래그가 세트된 섹터에 저장되어 있는 데이타가 유효한 데이타인지를 나타내는 것이 OLD/NEW 플래그인데, OLD/NEW 플래그의 값이 논리값 1로 세트된 경우에는 저장되어 있는 데이타가 가장 최근에 갱산된 것으로서 유효한 데이타임을 나타내며, 논리값 0으로 리세트된 경우에는 저장되어 있는 데이타가 더이상 유효하지 않음을 나타낸다.The OLD / NEW flag indicates whether the data stored in the above-mentioned USED / FREE flag set sector is valid data. If the value of the OLD / NEW flag is set to logical value 1, the stored data is most recent. It indicates that the data has been revised to valid data, and if it is reset to the logical value 0, the stored data is no longer valid.
즉, USED/FREE 플래그는 데이타를 기록할 때 데이타의 기록이 가능한 섹터를 검색하는데 사용되며, OLD/NEW 플래그는 데이타를 판독할 때 저장되어 있는 데이타가 유효한 데이타인지를 판단하는 기준이 된다.That is, the USED / FREE flag is used to search for a sector in which data can be written when data is written, and the OLD / NEW flag is a criterion for determining whether the data stored when reading the data is valid data.
하나의 섹터에 할당된 데이타 저장 영역은 바이트 단위의 크기를 가지며, 대개 512바이트의 크기로 설계되는 것이 일반적이지만, 실제로는 512 바이트 외에 여분의 저장 영역을 포함한다. 이 여분의 저장 영역에는 웨어 레벨(wear level)계수가 저장되는데, 이 웨어 레벨 개수는 섹터의 데이타 저장 영역에 데이타가 기록된 회수를 나타낸다. 그리고 데이타를 기록할 때 이 웨어 레벨 계수를 검사하여 그 값이 낮은 섹터에 가장 높은 우선 순위를 부여하는 것이다.A data storage area allocated to one sector has a size in bytes, and is generally designed to be 512 bytes in size, but actually includes an extra storage area in addition to 512 bytes. Wear level coefficients are stored in this redundant storage area, which represents the number of times data has been written to the data storage area of the sector. When the data is recorded, the wear level coefficients are examined and the sectors with the lowest values are given the highest priority.
전술한 바와 같이 플래쉬 메모리는 이이피롬의 기술을 바탕으로 하는 기억장치이기 때문에 데이타의 기록과 소거의 회수에 한계가 있으며, 대략 수십만 회의 재기록이 가능하다.As described above, since the flash memory is a memory device based on the technology of Ipyrom, there is a limit in the number of times of data recording and erasing, and approximately hundreds of thousands of rewrites are possible.
따라서 각 섹터의 데이타 저장 영역의 사용 빈도 즉 웨어 레벨 계수를 통하여 각각의 섹터에 이루어지는 데이타의 재기록 회수를 평준화함으로써, 데이타의 재기록 동작이 일부 섹터에 집중되어 피로 현상이 가중되는 것을 방지하는 것이다.Therefore, by using the data storage area of each sector, that is, the wear level coefficient, the number of times of rewriting of data in each sector is equalized, thereby preventing the data rewriting operation from being concentrated in some sectors and increasing the fatigue phenomenon.
만약 상술한 바와 같은 이유로 피로 현상이 일부 섹터에 가중되어 수명을 다하게 된다면, 이로 인하여 플래쉬 메모리 전체를 사용할 수 없기 때문에 각각의 섹터에 발생하는 데이타의 재기록 회수를 평준화하는 것이 플래쉬 메모리에서는 매우 중요하다.If the fatigue phenomenon is weighted to some sectors and the end of life due to the above-mentioned reasons, it is very important in the flash memory to equalize the number of rewrites of data generated in each sector because the entire flash memory is not available. .
이와 같은 종래의 플래쉬 메모리에 데이타를 기록하는 동작과, 저장되어 있는 데이타를 판독하는 동작을 도 2와 도 3의 순서도를 참조하여 설명하면 다음과 같다.The operation of writing data in the conventional flash memory and the operation of reading the stored data will be described with reference to the flowcharts of FIGS. 2 and 3 as follows.
먼저 도 2는 종래의 플래쉬 메모리에 데이타를 기록하는 동작을 나타낸 순서도이다.2 is a flowchart showing an operation of writing data to a conventional flash memory.
호스터(예를 들어 퍼스널컴퓨터의 중앙처리장치와 같은)에서 데이타와 데이타를 기록할 로지컬 어드레스가 발생하면, 플래쉬 메모리 내부의 제어 회로는 각각의 섹터 정보 테이블을 검색하여 호스트에서 발생한 로지컬 어드레스와 동일한 로지컬 어드레스를 갖는 섹터가 존재하는지를 검색한다.When a host (such as a central processing unit of a personal computer) generates a logical address to write data and data to, the control circuit inside the flash memory searches each sector information table to match the logical address generated at the host. Search for whether a sector with a logical address exists.
만약 호스트에서 발생한 로지컬 어드레스와 동일한 로지컬 어드레스를 갖는 섹터가 존재하는 경우에는 해당 섹터의 OLD/NEW 플래그를 세팅하여 무효 섹터로 만든 후에 다음 동작을 수행하는데, 이는 동일한 로지컬 어드레스를 갖는 섹터가 복수개 존재함으로써 발생할 수도 있는 데이타 판독 시의 에러를 막기 위한 것이다.If there is a sector having the same logical address as the logical address generated in the host, the next operation is performed after setting the OLD / NEW flag of the sector to make an invalid sector. This is because a plurality of sectors having the same logical address exist. This is to prevent errors in reading data that may occur.
그러나 호스트에서 발생한 로지컬 어드레스와 동일한 로지컬 어드레스를 갖는 섹터가 존재하지 않는 경우에는 데이타를 기록할 프리 섹터를 확보하기 위하여 USED/FREE 플래그가 리세트되어 있는 프리 섹터를 검색한다.However, if a sector having the same logical address as the logical address generated in the host does not exist, the free sector in which the USED / FREE flag is reset is searched to secure a free sector for recording data.
만약 프리 섹터가 발견되지 않는 경우에는 무효 섹터를 검색하기 위하여 각 섹터의 OLD/NEW 플래그를 검색하고, 무효 섹터가 존재하는 경우에는 발견된 무효 섹터의 데이타를 소거한 다음 프리 섹터를 검색하기 이전의 단계로 돌아간다.If no free sector is found, the OLD / NEW flag of each sector is searched to search for an invalid sector, and if there is an invalid sector, the data of the found invalid sector is erased and before the free sector is searched. Return to step
그러나 프리 섹터가 발견되면 호스트에서 발생한 데이타를 발견된 프리 섹터에 기록한 다음 USED/FREE 플래글르 세팅하여 새로운 데이타가 기록되지 않도록 하고, 웨어 레벨 계수를 1만큼 증가시킨다.However, if a free sector is found, the data generated by the host is recorded in the found free sector and then USED / FREE flagle is set so that no new data is written, and the wear level coefficient is increased by one.
또한 데이타가 갱신된 섹터의 피지컬 어드레스와 호스트에서 발생한 로지컬 어드레스를 섹터 정보 테이블에 각각 저장하여, 후스트에서 발생한 로지컬 어드레스와 데이타가 갱신된 섹터의 피지컬 어드레스와의 새로운 대응 관계를 만든 다음 일련의 데이타 기록 동작이 종료된다.In addition, the physical address of the sector where the data is updated and the logical address of the host are stored in the sector information table, respectively, to create a new correspondence between the logical address generated in the post and the physical address of the sector where the data is updated, and then write a series of data. The operation ends.
도 3은 종래의 플래쉬 메모리에 저장되어 있는 데이타를 판독하는 동작을 나타낸 순서도이다.3 is a flowchart showing an operation of reading data stored in a conventional flash memory.
호스트에서 로지컬 어드레스가 발생하면, 플래쉬 메모리 내부의 제어 회로는 각각의 섹터 정보 테이블을 검색하여 호스트에서 발생한 로지컬 어드레스에 대응하는 피지컬 어드레스를 갖는 섹터가 존재하는지를 검색한다.When a logical address occurs in the host, the control circuit inside the flash memory searches each sector information table to find out whether there is a sector having a physical address corresponding to the logical address generated in the host.
만약 로지컬 어드레스에 대응하는 피지컬 어드레스의 섹터가 발견되지 않으면 이를 제어 회로에 전달하여 적절한 조치가 이루어지도록 하고, 조건을 만족하는 피지컬 어드레스의 섹터가 발견되면 OLD/NEW 플래그의 세팅 여부를 검색하여 데이타의 유효성을 판단한다.If a sector of the physical address corresponding to the logical address is not found, it is transmitted to the control circuit for proper action. If a sector of the physical address that satisfies the condition is found, the OLD / NEW flag is searched to determine whether the data is Determine the validity.
발견된 섹터의 데이타가 무효한 경우에는 다시 조건을 만족하는 피지컬 어드레스를 갖는 섹터를 찾는 작업을 계속하고, 데이타가 유효한 경우에는 이를 판독함으로써 일련의 데이타 판독 동작이 종료된다.If the data of the found sector is invalid, the operation of searching for a sector having a physical address satisfying the condition is continued, and if the data is valid, the series of data reading operations are terminated by reading it.
그러나 이와 같은 데이타 기록과 판독 동작이 이루어지는 종래의 플래쉬 메모리는, 섹터 정보 테이블에 피지컬 어드레스와 로지컬 어드레스 및 USED/FREE 플래그와 OLD/NEW 플래그를 저장하기 때문에 많은 저장 영역이 요구되며, 데이타 기록 및 판독 시에 섹터 정보 테이블의 내용을 검색해야 하기 때문에 이로 인하여 많은 시간이 소요되고, 프리 섹터가 존재하지 않는 경우에는 무효 섹터의 데이타를 삭제하여 프리 섹터로 전환시킨 후에 다시 프리 섹터 검색 과정을 반복함으로써 이 또한 많은 시간이 소요되는 문제가 있다.However, in the conventional flash memory in which such data writing and reading operations are performed, a large storage area is required because the physical address and logical address, the USED / FREE flag, and the OLD / NEW flag are stored in the sector information table. This requires a lot of time because the contents of the sector information table must be searched at a time. There is also a time-consuming problem.
이에 본 발명은 섹터 정보 테이블에 피지컬 어드레스만을 저장하여 운용함으로써, 섹터 정보 테이블의 크기를 줄일 수 있도록 하고, 결과적으로 검색 요소가 감소하였기 이를 활용하여 데이타 기록과 판독 시에 섹터 정보 테이블의 검색 시간을 줄일 수 있도록 하며, 특히 데이타 기록시에 섹터에 기록된 데이타의 유효성을 판단할 필요가 없으므로 데이타를 기록할 프리 섹터를 검색하는데 소요되는 시간을 감소시켜서 전체적인 동작 시간을 줄이는데 목적이 있다.Accordingly, the present invention saves and operates only the physical address in the sector information table, thereby reducing the size of the sector information table. As a result, the search element is reduced. In particular, since it is not necessary to determine the validity of the data recorded in the sector at the time of data recording, the purpose of the present invention is to reduce the overall operation time by reducing the time required to search for a free sector to record data.
도 1은 종래의 플래쉬 메모리의 구성을 나타낸 도면.1 is a diagram showing the configuration of a conventional flash memory.
도 2는 종래의 플래쉬 메모리의 데이타 기록 동작을 나타낸 순서도.2 is a flowchart showing a data writing operation of a conventional flash memory.
도 3은 종래의 플래쉬 메모리의 데이타 판독 동작을 나타낸 순서도.3 is a flowchart showing a data reading operation of a conventional flash memory.
도 4는 본 발명의 플래쉬 메모리의 구성을 나타낸 도면.4 is a diagram showing a configuration of a flash memory of the present invention.
도 5는 본 발명의 플래쉬 메모리의 데이타 기록 동작을 나타낸 순서도.5 is a flowchart showing a data writing operation of the flash memory of the present invention.
도 6은 본 발명의 플래쉬 메모리의 데이타 판독 동작을 나타낸 순서도.Fig. 6 is a flowchart showing a data reading operation of the flash memory of the present invention.
상술한 바와 같은 목적의 본 발명은, 섹터 정보 저장 영역에는 피지컬 어드레스가 저장되고, 데이터 저장 영역의 일부분에 형성된 데이타 기록 계수 저장 영역이 데이타 기록 상위 계수를 저장하는 제 1 영역과, 데이타 기록 하위 계수를 저장하는 제 2 영역으로 분할되어, 각각 데이타 기록 상위 계수와 데이타 기록 하위 계수를 저장하도록 이루어진다.In the present invention as described above, a physical address is stored in a sector information storage area, and a data recording coefficient storage area formed in a portion of the data storage area includes a first area for storing data recording upper coefficients, and a data recording lower coefficient. Is divided into a second area for storing the data recording upper coefficients and the data recording lower coefficients, respectively.
이와 같이 이루어진 본 발명의 일실시예를 도 4 내지 도 6을 참조하여 설명하면 다음과 같다.An embodiment of the present invention made as described above will be described with reference to FIGS. 4 to 6.
먼저 도 4는 본 발명의 플래쉬 메모리의 섹터 정보 테이블과 데이타 저장 영역, 그리고 웨어 레벨 계수 저장 영역의 분할된 상태를 나타낸 도면이다.4 is a diagram illustrating a divided state of a sector information table, a data storage area, and a wear level coefficient storage area of a flash memory of the present invention.
즉, 섹터 정보 테이블에는 피지컬 어드레스를 저장하고, 데이타 저장 영역의 일부분에는 웨어 레벨 계수 저장 영역을 포함하는데, 웨어 레벨 계수 저장 영역에는 웨어 레벨 상위 계수와 웨어 레벨 하위 계수를 저장하도록 이루어진다.That is, a physical address is stored in the sector information table, and a wear level coefficient storage area is included in a part of the data storage area, and the wear level high coefficient and the wear level low coefficient are stored in the wear level coefficient storage area.
상술한 웨어 레벨 상위 계수는 웨어 레벨 하위 계수의 값이 증가하여 일정 값에 이르면 웨어 레벨 상위 계수의 값이 1만큼 증가하도록 이루어지는데, 이와 같은 웨어 레벨 상위 계수는 곧 섹터의 전체적인 웨어 레벨 계수를 나탄내는 것으로서 그 한계값은 플래쉬 메모리의 수명에 의해 결정된다.The above-described wear level upper coefficient increases the value of the wear level upper coefficient by 1 when the value of the wear level lower coefficient increases and reaches a predetermined value. Such a wear level upper coefficient immediately indicates the overall wear level coefficient of the sector. The limit is determined by the lifetime of the flash memory.
도 5는 본 발명의 플래쉬 메모리의 데이타 쓰기 동작을 나타낸 순서도이다.5 is a flowchart illustrating a data write operation of the flash memory of the present invention.
먼저 호스트에서 데이타 및 로지컬 어드레스가 발생하면 플래쉬 메모리의 내부제어 회로에서는 각 섹터 정보 테이블에서 해당 피지컬 어드레스를 검색한다(단계 A).First, when data and logical addresses occur in the host, the internal control circuit of the flash memory searches for the corresponding physical address in each sector information table (step A).
해당 피지컬 어드레스를 갖는 섹터가 발견되면, 발견된 섹터의 웨어 레벨 하위 계수를 검색하여 제어 회로에 설정되어 있는 기준 값과 비교한다.When a sector having the corresponding physical address is found, the wear level lower coefficient of the found sector is searched and compared with the reference value set in the control circuit.
만약 웨어 레벨 하위 계수가 기준 값보다 작거나 같은 경우에는 가장 높은 우선 순위를 부여하여 호스트로부터 전달된 데이타를 발견된 섹터의 데이타 저장 영역에 기록한 다음, 웨어 레벨 하위 계수를 1만큼 증가시키고 일련의 데이타 기록 동작을 종료한다.If the wear level low coefficient is less than or equal to the reference value, give the highest priority to record the data transferred from the host in the data storage area of the found sector, then increase the wear level low coefficient by one and set the data. The recording operation ends.
그러나 웨어 레벨 하위 계수가 기준 값보다 큰 경우에는 각각의 섹터의 웨어 레벨 하위 계수를 검색하여 그 가운에 웨어 레벨 하위 계수가 가장 작은 섹터를 찾는다(단계 B).However, if the wear level lower coefficient is larger than the reference value, the wear level lower coefficient of each sector is searched to find the sector having the smallest wear level lower coefficient (step B).
가장 작은 웨어 레벨 하위 계수의 섹터가 발견되면, 위의 단계 A에서 발견된 섹터의 데이타 및 웨어 레벨 하위 계수와 단계 B에서 발견된 섹터의 데이타 및 웨어 레벨 하위 계수를 서로 교환하여 기록한 다음, 두 섹터의 각각의 웨어 레벨 하위 계수를 1씩 증가시킨다.If the sector with the smallest wear level lower coefficient is found, the data and wear level lower coefficients of the sector found in step A and the data and wear level lower coefficients of the sector found in step B are exchanged and recorded, and then the two sectors are recorded. Increment each wear level lower coefficient by 1 by 1.
이는 곧 웨어 레벨 하위 계수가 작은 섹터의 피지컬 어드레스와 웨어 레벨 하위 계수가 큰 섹터의 피지컬 어드레스를 서로 바꾸어 줌으로써 각 섹터의 웨어 레벨의 평준화를 꾀하는 것이며, 동시에 무효 데이타를 발생시키지 않기 때문에 데이타의 판독 시에 무효 섹터의 판단 과정을 생략할 수 있는 효과를 제공한다.This is to equalize the wear level of each sector by swapping the physical address of a sector having a small wear level lower coefficient and a sector having a large wear level lower coefficient to each other, and at the same time does not generate invalid data. This provides an effect of eliminating the process of determining invalid sectors.
다음 단계는 호스트로부터 전달된 데이타를 단계 B에서 발견된 섹터에 기록하고, 웨어 레벨 하위 계수를 1만큼 중가시킨 다음 일련의 데이타 기록 동작을 종료한다.The next step writes the data delivered from the host to the sector found in step B, adds the wear level lower coefficient by 1 and then ends the series of data write operations.
도 6은 본 발명의 플래쉬 메모리의 데이타 판독 동작을 나타낸 순서도이다.6 is a flowchart showing a data reading operation of the flash memory of the present invention.
먼저 호스트에서 로지컬 어드레스가 발생하면, 이에 대응하는 피지컬 어드레스의 섹터를 검색한다. 목적한 피지컬 어드레스의 섹터가 발견되면 섹터에 저장되어 있는 데이타를 판독하는데, 이미 언급한 바와 같이 본 발명의 섹터에 저장되어 있는 데이타는 모두 유효한 데이타뿐이므로 데이타의 유효성을 판단하기 위한 별도의 과정이 필요치 않다.First, when a logical address occurs in the host, a sector of the corresponding physical address is searched for. If a sector of the desired physical address is found, the data stored in the sector is read. As already mentioned, all data stored in the sector of the present invention are valid data, so a separate process for determining the validity of the data is required. It is not necessary.
따라서 본 발명은, 섹터 정보 테이블에 피지컬 어드레스만을 저장하여 운용함을써, 섹터 정보 테이블의 크기를 줄일 수 있다. 결과적으로 검색 요소가 감소하였기 때문에 데이타 기록과 판독 시에 섹터 정보 테이블의 검색 시간이 감소하고, 특히 데이타 기록 시에 섹터에 기록된 데이타의 유효성을 판단할 필요가 없으므로 데이타를 기록할 프리 섹터를 검색하는데 소요되는 시간 역시 감소함으로써, 전체적인 동작 시간이 감소하는 것이다.Therefore, the present invention can reduce the size of the sector information table by storing and operating only the physical address in the sector information table. As a result, since the search factor is reduced, the search time of the sector information table is reduced at the time of data writing and reading. In particular, since the validity of the data recorded in the sector is not necessary at the time of data writing, the free sector to record the data is searched. The time taken to reduce also decreases, thus reducing the overall operating time.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970035548A KR100261994B1 (en) | 1997-07-28 | 1997-07-28 | Flash memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970035548A KR100261994B1 (en) | 1997-07-28 | 1997-07-28 | Flash memory |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990012215A true KR19990012215A (en) | 1999-02-25 |
KR100261994B1 KR100261994B1 (en) | 2000-07-15 |
Family
ID=19515956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970035548A KR100261994B1 (en) | 1997-07-28 | 1997-07-28 | Flash memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100261994B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010736B2 (en) | 2007-02-13 | 2011-08-30 | Samsung Electronics Co., Ltd. | Nonvolatile semiconductor memory device for supporting high speed search in cache memory |
CN109712660A (en) * | 2017-10-25 | 2019-05-03 | 三星电子株式会社 | Memory device and its control method |
-
1997
- 1997-07-28 KR KR1019970035548A patent/KR100261994B1/en not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010736B2 (en) | 2007-02-13 | 2011-08-30 | Samsung Electronics Co., Ltd. | Nonvolatile semiconductor memory device for supporting high speed search in cache memory |
CN109712660A (en) * | 2017-10-25 | 2019-05-03 | 三星电子株式会社 | Memory device and its control method |
CN109712660B (en) * | 2017-10-25 | 2024-06-04 | 三星电子株式会社 | Memory device and control method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR100261994B1 (en) | 2000-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6172906B1 (en) | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices | |
US5485595A (en) | Flash memory mass storage architecture incorporating wear leveling technique without using cam cells | |
KR101613678B1 (en) | Recovery for non-volatile memory after power loss | |
US6865658B2 (en) | Nonvolatile data management system using data segments and link information | |
US5479638A (en) | Flash memory mass storage architecture incorporation wear leveling technique | |
US5920501A (en) | Flash memory system and method for monitoring the disturb effect on memory cell blocks due to high voltage conditions of other memory cell blocks | |
US5963473A (en) | Flash memory system and method for monitoring the disturb effect on memory cell blocks due to high voltage conditions of other memory cell blocks | |
US5388083A (en) | Flash memory mass storage architecture | |
US5987478A (en) | Virtual small block file manager for flash memory array | |
JP4486938B2 (en) | Processing technique for non-volatile memory system with data sectors having a size different from the memory page size and / or block size | |
US6236601B1 (en) | Semiconductor memory device having faulty cells | |
US6757800B1 (en) | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices | |
KR100218871B1 (en) | Semiconductor disk device | |
US7240178B2 (en) | Non-volatile memory and non-volatile memory data rewriting method | |
US5448577A (en) | Method for reliably storing non-data fields in a flash EEPROM memory array | |
US20070118688A1 (en) | Flash-Memory Card for Caching a Hard Disk Drive with Data-Area Toggling of Pointers Stored in a RAM Lookup Table | |
US20050138271A1 (en) | Rotational use of memory to minimize write cycles | |
KR101468432B1 (en) | Flash memory refresh techniques triggered by controlled scrub data reads | |
US6237110B1 (en) | Apparatus and method accessing flash memory | |
US20040255076A1 (en) | Flash memory controller, memory control circuit, flash memory system, and method for controlling data exchange between host computer and flash memory | |
JP3808842B2 (en) | Storage device having rewritable nonvolatile memory and control method of nonvolatile memory for storage device | |
KR100261994B1 (en) | Flash memory | |
US5479609A (en) | Solid state peripheral storage device having redundent mapping memory algorithm | |
JPH05150913A (en) | Silicon disk with flash memory as storage medium | |
CN111949198A (en) | Bad block management method and device and storage equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20110325 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |