KR20050059249A - Flash memory and memory control system - Google Patents

Flash memory and memory control system Download PDF

Info

Publication number
KR20050059249A
KR20050059249A KR1020057006067A KR20057006067A KR20050059249A KR 20050059249 A KR20050059249 A KR 20050059249A KR 1020057006067 A KR1020057006067 A KR 1020057006067A KR 20057006067 A KR20057006067 A KR 20057006067A KR 20050059249 A KR20050059249 A KR 20050059249A
Authority
KR
South Korea
Prior art keywords
flash memory
data
information
state
ratio
Prior art date
Application number
KR1020057006067A
Other languages
Korean (ko)
Other versions
KR100597063B1 (en
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 KR1020057006067A priority Critical patent/KR100597063B1/en
Publication of KR20050059249A publication Critical patent/KR20050059249A/en
Application granted granted Critical
Publication of KR100597063B1 publication Critical patent/KR100597063B1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control

Abstract

The state inside a flash memory is reported to outside and a garbage collection is supported. A state report information generation unit (12) references flag areas f1, f2, f3,..., fn and generates state report information for reporting outside information according to the state of user areas u1, u2, u3,..., un. An output unit (13) outputs the state report information so as to report the state inside the flash memory (10) to outside.

Description

플래시 메모리 및 메모리 제어 방법{FLASH MEMORY AND MEMORY CONTROL SYSTEM} Flash memory and a memory control method {FLASH MEMORY SYSTEM AND MEMORY CONTROL}

본 발명은 플래시 메모리 및 플래시 메모리의 동작을 제어하는 메모리 제어 방법에 관한 것으로, 특히, 데이터가 기억되는 복수의 사용자 영역과, 사용자 영역의 상태를 나타내는 복수의 플래그 영역으로 이루어진 메모리 셀 어레이를 갖는 플래시 메모리 및 그와 같은 플래시 메모리를 제어하는 메모리 제어 방법에 관한 것이다. The present invention relates to a memory control method of controlling the operation of a flash memory and a flash memory, particularly a flash having a memory cell array comprising a plurality of flag area and a plurality of the user area in which data is stored, indicating the state of the user area It relates to a memory control method for controlling a flash memory, such as memory and the like.

플래시 메모리는 전기적으로 소거(재기록) 가능한 불휘발성 메모리로서, 여러 가지 전기 제품에 탑재되어 있다. Flash memory is electrically erasable (re) as a nonvolatile memory, with a number of electrical products. 최근에는 고속 저소비 전력의 FeRAM(Ferroelectric Random Access Memory), MRAM(Magnetoresistive Random Access Memory), OUM(Ovonics Unified Memory) 등의 신형 메모리가 차례 차례로 등장하고 있다. In recent years, and a new memory such as FeRAM (Ferroelectric Random Access Memory), MRAM (Magnetoresistive Random Access Memory), OUM (Ovonics Unified Memory) of high-speed low-power occasions appeared in turn. 그러나, 비용 면에서는, 여전히 플래시 메모리가 우위에 있고, 특히, 카메라가 달린 휴대 전화기나 디지털 카메라 등에서는 그 대부분을 플래시 메모리가 독점하고 있다. However, in terms of cost, flash memory is still there on the edge, in particular a mobile phone or digital camera, etc. with the camera has a flash memory is its most exclusive.

한편, 상기한 장점과는 반대로 다음과 같은 단점을 갖고 있다. On the other hand, the above-described advantages, as opposed to have the following disadvantages: 즉, 플래시 메모리는 데이터의 기록시에 덮어쓰기를 할 수 없기 때문에, 데이터의 기록이나 삭제를 반복하면 분단된 불필요한 영역이 소거되지 않고 남는다. That is, the flash memory is not able to overwrite the time of data recording, it remains without an unnecessary area segmented by repeating the recording or deletion of the data is not erased. 그 때문에, 이 불필요한 영역을 소거하고, 사용하고 있는 영역을 연속한 영역으로 통합하여, 그 결과 사용할 수 있는 영역을 늘리는 처리(이하 폐정보 수집이라 부름)를 실행해야 한다(예컨대, 특허문헌 1 참조). Accordingly, by the erasing of unnecessary regions, and integration into a succession in use zone area, it should execute a process (hereinafter referred to as waste collected information) to increase the area in which a result can be used (for example, Patent Document 1 ).

도 18은 종래의 플래시 메모리를 이용한 데이터 재기록시의 처리 흐름을 도시한 흐름도이다. 18 is a flowchart showing the flow of processing when data is rewritten by using the conventional flash memory.

이하의 처리는 플래시 메모리의 외부에 설치된 CPU(Central Processing Unit)의 제어 하에 행해진다. The following process is performed under the control of a CPU (Central Processing Unit) provided outside the flash memory.

처리가 시작되면, 우선, CPU는 데이터 처리가 기록인지, 그렇지 않으면 무효화 처리인지를 판단하여(S100), 기록이면 데이터 기록 처리를 행하고(S101), 무효화이면 데이터 무효화 처리를 행한다(S102). When processing is started, first, CPU is that the data processing is written, otherwise, performs (S100), the recording is performed for the data recording process (S101), if the invalid data invalidation process to determine if the invalidation process (S102). 다음에 관리 데이터의 갱신을 행하여 (S103), 플래시 메모리 안의 영역 사용률을 계산한다(S1O4). Next, by performing the update of the management data to calculate the usage rate in the region (S103), a flash memory (S1O4). 다음에, 영역 사용률의 계산 결과에 따라 폐정보를 수집할 필요가 있는지 여부를 판단하여(S105), 필요하면 폐정보 수집 처리를 행하고(S106), 필요하지 않으면 그대로 처리를 종료한다. Next, if the area utilization calculation result if necessary (S105) to determine whether there is a need to collect the waste in accordance with the information, required is performed (S106), the information acquisition process of the waste as it is and the process is terminated.

그러나, 상기한 바와 같이, 플래시 메모리의 데이터 재기록 처리 후에, 처리 시간이 긴 폐정보 수집 처리를 실행하므로, 휴대 전화기 등의 장치 전체의 처리 시간을 길게 해 버린다고 하는 문제가 있었다. However, after the data rewriting of the flash memory processing, since processing time is long run the waste collection information processing, there was a problem that to lengthen the processing time of the entire device such as a mobile phone as described above.

이 문제는 플래시 메모리의 데이터 재기록 처리와 폐정보 수집 처리를 다른 타이밍으로 실행시킴으로써 해결할 수 있지만, 그러기 위해서는 폐정보 수집 처리를 실행하는 타이밍을 얻을 필요가 있다. This problem can be solved by executing the data rewriting process and the waste information collection processing of the flash memory, at different timings, there is a need to do so in order to obtain the timing for executing the information acquisition process waste.

특허문헌 1 Patent Document 1

일본 특허 공개 제2000-278730호(단락 번호 [0023]∼[0027], 도 1) JP-A No. 2000-278730 (paragraphs [0023] - [0027], Fig. 1)

도 1은 본 발명의 플래시 메모리의 원리를 설명하는 원리 구성도이다. Figure 1 is a principle diagram for explaining the principle of the inventive flash memory.

도 2는 본 발명의 제1 실시 형태의 플래시 메모리 및 그 외부에 배치되는 회로를 도시한 구성도이다. 2 is a block diagram showing a circuit that is arranged on the flash memory and the outside of the first embodiment of the present invention;

도 3은 플래시 메모리에 데이터를 기록하는 경우의 타이밍 차트이다. 3 is a timing chart for a case of writing data to the flash memory.

도 4는 플래시 메모리의 데이터를 무효화(또는 삭제)하는 경우의 타이밍 차트이다. 4 is a timing chart for a case invalidating (or deleting) the data in the flash memory.

도 5는 인터럽트 신호를 외부에 출력할 때의 타이밍 차트이다. 5 is a timing chart at the time of outputting the interrupt signal to the outside.

도 6은 비율을 재기록할 때의 타이밍 차트이다. 6 is a timing chart of when the ratio rewritten.

도 7은 플래시 메모리의 데이터를 재기록할 때의 처리 흐름을 도시한 흐름도이다. 7 is a flowchart illustrating a processing flow at the time of rewriting data of the flash memory.

도 8은 기록 동작시의 처리 흐름을 도시한 흐름도이다. 8 is a flow chart showing the process flow of the recording operation.

도 9는 무효화 처리를 도시한 흐름도이다. 9 is a flowchart illustrating a revocation process.

도 10은 데이터를 소거하는 처리의 흐름을 도시한 흐름도이다. 10 is a flow chart showing the flow of processing for erasing data.

도 11은 인터럽트 신호 출력시의 플래시 메모리 안에서의 처리 흐름을 도시한 흐름도이다. 11 is a flowchart showing the flow of processing in the flash memory at the time of the interrupt signal output.

도 12는 폐정보 수집 처리의 흐름을 도시한 흐름도이다. 12 is a flow chart showing the flow of the waste collected information processing.

도 13은 본 발명의 제2 실시 형태의 플래시 메모리 및 그 외부에 배치되는 회로를 도시한 구성도이다. Figure 13 is a block diagram showing a circuit that is arranged on the flash memory and the outside of the second embodiment of the present invention.

도 14는 기록 처리 후에 비율을 출력하는 경우의 타이밍 차트이다. 14 is a timing chart for a case of outputting the rate after the recording process.

도 15는 무효화 처리 후에 비율을 출력하는 경우의 타이밍 차트이다. 15 is a timing chart for a case of outputting a void ratio after treatment.

도 16은 제2 실시 형태의 구성에 있어서의 처리 흐름을 도시한 흐름도이다. 16 is a flowchart showing the flow of processing in the configuration of the second embodiment.

도 17은 비율 명령에 따라 비율을 출력할 때의 타이밍 차트이다. 17 is a timing chart at the time of the output ratio according to the ratio command.

도 18은 종래의 플래시 메모리를 이용한 데이터 재기록시의 처리 흐름을 도시한 흐름도이다. 18 is a flowchart showing the flow of processing when data is rewritten by using the conventional flash memory.

본 발명은 이러한 점을 감안하여 이루어진 것으로, 폐정보 수집과 같이 불필요한 데이터를 소거하는 타이밍을 외부에 통지할 수 있는 플래시 메모리를 제공하는 것을 목적으로 한다. The present invention has been made in view of the above points, and an object thereof is to provide a flash memory that can be notified of the timing of erasing the unnecessary data, such as closed-collected information to outside.

또한, 본 발명의 다른 목적은 폐정보 수집과 같이 불필요한 데이터를 소거하는 타이밍을 외부에 통지할 수 있는 플래시 메모리를 제어하는 메모리 제어 방법을 제공하는 것이다. It is another object of the present invention is to provide a memory control method for an unnecessary timing of clearing the data controlling the flash memory that can be notified to the outside as waste collected information.

본 발명에서는 상기 과제를 해결하기 위해서, 도 1에 도시한 바와 같은, 데이터가 기억되는 복수의 사용자 영역(u1, u2, u3, ‥·, un)과, 사용자 영역(u1, u2, u3, …, un)의 상태를 나타내는 복수의 플래그 영역(f1, f2, f3, …, fn)으로 이루어지는 메모리 셀 어레이(11)를 갖는 플래시 메모리(10)에 있어서, 플래그 영역(f1, f2, f3, …, fn)을 참조하여 사용자 영역(u1, u2, u3, …, un)의 상태에 따른 정보를 외부에 통지하기 위한 상태 통지 정보를 생성하는 상태 통지 정보 생성부(12)와, 상태 통지 정보를 출력하는 출력부(13)를 갖는 것을 특징으로 하는 플래시 메모리(10)가 제공된다. In the present invention, in order to solve the above problems, it is also as shown in FIG. 1, a plurality of the user area in which data is stored (u1, u2, u3, ‥ ·, un) and the user area (u1, u2, u3, ... , un), a plurality of flag areas (f1, f2, f3, ..., in the flash memory 10 has a memory cell array 11 formed of fn), the flag area (f1, f2, f3, showing the state of ... , fn) with reference to the user area (u1, u2, u3, ..., status notification information generation section (12 to create a state notice information for indicating information according to the state of the un) to the outside), the status notifications for a flash memory 10, characterized in that the output having an output section 13 that is provided.

상기한 구성에 따르면, 상태 통지 정보 생성부(12)는 플래그 영역(f1, f2, f3, …, fn)을 참조하여 사용자 영역(u1, u2, u3, …, un)의 상태에 따른 정보를 외부에 통지하기 위한 상태 통지 정보를 생성하고, 출력부(13)는 이러한 상태 통지 정보를 외부로 출력함으로써 외부로 플래시 메모리(10) 안의 상태를 통지한다. In the configuration, status notification information generating unit 12 is the information according to the state of the flag areas (f1, f2, f3, ..., fn) with reference to the user area (u1, u2, u3, ..., un) the generating a status notification information for notifying to the outside, and output section 13 notifies the state in the flash memory 10 to the outside by outputting such a state notice information to the outside.

본 발명의 상기 및 다른 목적, 특징 및 이점은 본 발명의 예로서 바람직한 실시 형태를 나타내는 첨부의 도면과 관련된 이하의 설명에 의해 밝혀질 것이다. The foregoing and other objects, features and advantages of the invention will become apparent by the following description relating to the accompanying drawings showing a preferred embodiment by way of example of the present invention.

이하 본 발명의 실시 형태를 도면을 참조하여 설명한다. Hereinafter embodiments of the present invention will be described below.

도 1은 본 발명의 플래시 메모리의 원리를 설명한 원리 구성도이다. Figure 1 is a principle diagram illustrating the principle of the inventive flash memory.

플래시 메모리(10)는 데이터가 기억되는 복수의 사용자 영역(u1, u2, u3, …, un)과, 사용자 영역(u1, u2, u3, …, un)의 상태를 도시한 복수의 플래그 영역(f1, f2, f3, …, fn)으로 이루어진 메모리 셀 어레이(11)와, 플래그 영역(f1, f2, f3, …, fn)을 참조하여, 사용자 영역(u1, u2, u3, …, un)의 상태에 따른 정보를 외부에 통지하기 위한 상태 통지 정보를 생성하는 상태 통지 정보 생성부(12)와, 상태 통지 정보를 출력하는 출력부(13)로 구성된다. Flash memory 10 includes a plurality of the user area (u1, u2, u3, ..., un) and the user area (u1, u2, u3, ..., un), a plurality of flag areas showing the state in which the data is stored ( f1, f2, f3, ..., fn) with the memory cell array 11 consisting of flag areas (f1, f2, f3, ..., with reference to fn), the user area (u1, u2, u3, ..., un) It consists of the information of the state to the state and to generate a status notification information for notifying the outside of the notification information generating unit 12, an output unit 13 for outputting a status notification information.

이하에서는, 복수의 사용자 영역(u1, u2, u3, …, un)을 사용자 영역{ux(x=1, 2, 3, …, n)}이라고 기재하고, 복수의 플래그 영역(f1, f2, f3, …, fn)을 플래그 영역{fy(y=1, 2, 3, …, n)}이라고 기재하기로 한다. Hereinafter, a plurality of the user area (u1, u2, u3, ..., un) a user area {ux (x = 1, 2, 3, ..., n)} as described, a plurality of flag areas (f1, f2, will be f3, ..., fn) a flag area {fy (y = 1, 2, 3, ..., n)} as described.

플래시 메모리(10)의 동작을 설명한다. The operation of the flash memory 10.

메모리 셀 어레이(11)에 있어서, 사용자 영역(ux)에 데이터를 기록하면, 사용자 영역(ux)에 대응한 플래그 영역(fy)은 유효를 나타내는 값이 되고, 데이터가 무효화되면, 플래그 영역(fy)은 무효를 나타내는 값이 된다. In the memory cell array 11, when recording data in the user area (ux), a flag area (fy) corresponding to the user area (ux) is a measure of the effective, if data is invalid, the flag area (fy ) is a measure of the void. 상태 통지 정보 생성부(12)는 플래그 영역(fy)의 값을 참조하여 이것에 대응한 사용자 영역(ux)의 상태에 따른 정보를 외부에 통지하기 위한 상태 통지 정보, 예컨대 사용자 영역(ux)이 무효인 비율(상세하게는 후술)을 생성한다. State notice information generating unit 12 refers to the value of the flag area (fy) by state for indicating information according to the status of the user area (ux) corresponding thereto to the external notification information, such as user area (ux) is It generates the invalid ratio (specifically described later). 그 후, 출력부(13)는 상태 통지 정보를 플래시 메모리(10)의 외부로 출력한다. Then, the output unit 13 outputs the state notification information to the outside of the flash memory 10.

이에 따라, 예컨대, 폐정보 수집을 행하는 플래시 메모리(10)의 외부에 배치되는 CPU 등의 제어부(도시하지 않음)는 플래시 메모리 안의 상태{무효 상태의 사용자 영역(ux)의 비율 등}를 간단히 알 수 있고, 현재 폐정보 수집 처리를 행할 필요가 있는지 여부를 판단할 수 있다. Thus, for example, the control of the CPU or the like arranged on the outside of performing the closed-information collection flash memory 10 (not shown) is simply the status {ratio of the invalid state the user area (ux) and so on} in the flash memory may be, it can be determined whether or not there is a need to perform the acquisition process are waste information.

이하, 본 발명의 실시 형태를 상세하게 설명한다. It will be described in detail below an embodiment of the present invention.

우선, 본 발명의 제1 실시 형태의 플래시 메모리를 설명한다. First, it will be described a first embodiment of a flash memory according to the present invention.

도 2는 본 발명의 제1 실시 형태의 플래시 메모리 및 그 외부에 배치되는 회로를 도시한 구성도이다. 2 is a block diagram showing a circuit that is arranged on the flash memory and the outside of the first embodiment of the present invention;

본 발명의 제1 실시 형태의 플래시 메모리(20)는 메모리 셀 어레이(21), 비율 기억부(22), 비교부(23), 시간 관리부(24), 제어부(25)로 구성된다. The first embodiment of the flash memory 20 of the present invention includes a memory cell array 21, a ratio of the storage 22, a comparison unit 23, the time management unit 24, the control unit 25.

메모리 셀 어레이(21)는 전술한 도 1과 같이 복수의 사용자 영역(ux)과, 복수의 플래그 영역(fy)으로 이루어진다. Memory cell array 21 is composed of a plurality of user areas (ux), and a plurality of flag area (fy), similarly to the FIG. 플래그 영역(fy)은 각 사용자 영역(ux)에 대하여 2비트의 정보를 갖는다. Flag area (fy) has two bits of information for each user area (ux). 플래그 영역(fy)이 "00"의 경우는 그 플래그 영역(fy)에 대응하는 사용자 영역(ux)의 데이터는 소거되어 있는 것을 나타낸다. If the flag area (fy) is "00" shows that data in the user area (ux) corresponding to a flag area (fy) is erased. 플래그 영역(fy)이 "01"의 경우는 그 플래그 영역(fy)에 대응하는 사용자 영역(ux)의 데이터는 유효인 것을 나타낸다. If the flag area (fy) is "01", the data in the user area (ux) corresponding to a flag area (fy) represents that the effect. 플래그 영역(fy)이 "11"인 경우는 그 플래그 영역(fy)에 대응하는 사용자 영역(ux)의 데이터는 무효인 것을 나타낸다. If the flag area (fy) is "11" is data in the user area (ux) corresponding to a flag area (fy) indicates that it is disabled. 사용전의 플래시 메모리(20)의 메모리 셀 어레이(21)는 사용자 영역(ux)의 전 영역에 데이터가 기록되어 있지 않다. The memory cell array 21 of the flash memory 20 prior to use is not data is recorded on the entire area of ​​the user area (ux). 또한 메모리 셀 어레이(21)의 플래그 영역)(fy)의 전 영역에는 데이터가 소거되어 있는 것을 나타내는 값 "00"이 기록되어 있다. In addition, around the area, the value "00" is recorded to indicate that the data is erased in the flag area of ​​the memory cell array (21)) (fy).

비율 기억부(22)에는 미리 소정의 비율이 기억되어 있다. Rate storage unit 22 has stored in advance the predetermined ratio. 예컨대, "80%" 등이라 기억되어 있다. For example, it is stored as such, "80%".

비교부(23)는 메모리 셀 어레이(21)의 플래그 영역(fy)의 상태를 판정하여 사용자 영역(ux)이 무효인 비율을 산출하고, 그 후, 비율 기억부(22)에 저장되어 있는 비율과 비교한다. Comparing section 23 ratio, which is to determine the status of the flag area (fy) of the memory cell array 21 calculates the ratio a user area (ux) is invalid and stores the then ratio storage 22 It compares.

시간 관리부(24)는 어떤 일정한 시간 간격, 예컨대 60초 간격으로 제어부(25)에 신호를 보낸다. Time management unit 24 has a certain time intervals, for example, sends a signal to controller 25 at 60-second intervals.

제어부(25)는 플래시 메모리(20)의 각부를 제어하고, 외부와의 정보의 송수신을 행한다. Controller 25 controls each section of the flash memory 20, and performs transmission and reception of information with the outside. 제어부(25)는 인터럽트 신호선(101), 제어 신호선(102)에 의해 CPU(50)와 접속되어 있다. Controller 25 is connected to the CPU (50) by an interrupt signal line 101, a control signal line 102. 또한 데이터 버스(60), 어드레스 버스(70)와 접속된다. It is also connected to the data bus 60, address bus 70.

CPU(50)는 데이터 버스(60), 어드레스 버스(70)와 접속되어 있고, 데이터 버스는 RAM(Random Access Memory; 80)을 통해 어드레스 버스(70)와 접속된다. CPU (50) is connected with the data bus 60, address bus 70, data bus RAM; is connected to the address bus 70 via a (Random Access Memory 80). CPU(50)는 데이터 버스(60)와 어드레스 버스(70)를 사용하여 플래시 메모리(20)와 RAM(80)의 데이터 기록 및 판독을 행하고, RAM(80)에 기록된 프로그램을 실행한다. CPU (50) performs the data bus 60 and address bus 70 with the flash memory 20 and the data write and read of the RAM (80), and executes a program recorded on a RAM (80).

또, 제1 실시 형태에 있어서, 도 l의 상태 통지 정보 생성부(12)의 기능은 비교부(23)에 포함되고, 출력부(13)의 기능은 제어부(25)에 포함된다. Further, in the first embodiment, is also function of the state notification information generating unit 12 of l is included in the comparison unit 23, a function of the output unit 13 includes a controller 25.

이하, 도 1의 동작을 설명하는 동시에, 본 발명의 제1 실시 형태의 플래시 메모리(20)의 동작을 설명한다. Below, while explaining the operation of Figure 1, the operation of the first embodiment of the flash memory 20 of the present invention.

우선, 기록 동작을 설명한다. First, a description of the write operation.

도 3은 플래시 메모리에 데이터를 기록하는 경우의 타이밍 차트이다. 3 is a timing chart for a case of writing data to the flash memory.

데이터의 기록 처리시의 어드레스 버스(70), 제어 신호선(102), 인터럽트 신호선(101), 데이터 버스(60) 신호의 상태를 나타내고 있다. Address bus 70, a control signal line 102 at the time of the data recording process, and shows the state of the interrupt signal line 101, data bus 60 signals.

RAM(80)에 기록되어 있는 데이터를 플래시 메모리(20)에 기록하는 경우, CPU(50)는 제어 신호선(102)의 신호의 레벨을 "H"(하이 레벨)로 하는 동시에, 데이터 버스(60)를 통해 기록 명령을 제어부(25)로 보낸다. The case of recording the data recorded in the RAM (80) to the flash memory (20), CPU (50) is at the same time to "H" (high level), the signal level of the control signal line 102, a data bus (60 ) and sends it to the controller 25 a write command through. 그 후, 제어 신호선(102)을 "L"(로우 레벨)로 되돌린다. Then, to return the control signal line 102 to "L" (low level). 또한 CPU(50)는 데이터 버스(60)를 통해 RAM(80)으로부터 판독한 데이터를 제어부(25)로 보낸다. In addition, CPU (50) sends the data read from the RAM (80) via a data bus 60 to controller 25. 또한, CPU(50)는 어드레스 버스(70)를 통해 기록 목적지의 어드레스를 제어부(25)로 보낸다. In addition, CPU (50) via an address bus 70 and sends the address of the write destination by the controller 25.

플래시 메모리(20)의 제어부(25)는 도 3과 같이 제어 신호선(102)이 "H"가 되었을 때에, 데이터 버스(60)로부터 데이터의 기록 명령을 수신한다. Controller 25 of the flash memory 20 receives the write command of the data from when the control signal line 102 as shown in Figure 3 is the "H", data bus 60. 다음에, 데이터 버스(60)로부터 데이터를 수신하고, 어드레스 버스(70)로부터 어드레스를 수신하여, 데이터를 어드레스로 지정된 메모리 셀 어레이(21)의 사용자 영역(ux)에 기록한다. Next, by receiving data from data bus 60, it receives an address from the address bus 70, and writes data in the user area (ux) of the memory cell array 21 designated by the address. 또한 제어부(25)는 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 유효인 것을 나타내는 값 "01"을 기록한다. In addition, the controller 25 writes the value "01" indicating that the data is valid in the flag area (fy) corresponding to the user area (ux).

다음에 무효화 처리 및 데이터의 삭제시의 동작을 설명한다. Next will be described an operation at the time of deletion of the revocation processing and data.

도 4는 플래시 메모리의 데이터를 무효화(또는 삭제)하는 경우의 타이밍 차트이다. 4 is a timing chart for a case invalidating (or deleting) the data in the flash memory.

데이터의 무효화(또는 삭제) 처리시의 어드레스 버스(70), 제어 신호선(102), 인터럽트 신호선(101), 데이터 버스(60)의 신호의 상태를 나타내고 있다. An address bus (70) after the revocation of the data (or delete) processing, the control signal line 102, represents the state of the signal on the interrupt signal line 101, a data bus 60.

플래시 메모리(20)에 기록되어 있는 데이터를 무효화(또는 삭제)하는 경우는, CPU(50)는 제어 신호선(102)을 "H"로 하는 동시에, 데이터 버스(60)를 통해 데이터를 무효로 하는 명령을 플래시 메모리(20)의 제어부(25)로 보낸다. When invalidate the data recorded in the flash memory 20 (or delete), CPU (50) is at the same time that the control signal line 102 to "H", the data to be invalid by the data bus 60 It sends a command to the controller 25 in the flash memory 20. 그 후, 제어 신호선(102)을 "L"로 되돌린다. Then, to return the control signal line 102 to "L". 또한 CPU(50)는 어드레스 버스(70)를 통해 무효로 하는 데이터의 어드레스를 제어부(25)로 보낸다. In addition, CPU (50) sends an address of data to be invalidated via an address bus 70 to the controller 25.

플래시 메모리(20)의 제어부(25)는 도 4와 같이, 제어 신호선(102)이 "H"가 되었을 때에, 데이터 버스(60)로부터 무효화(또는 삭제) 명령을 수취한다. Control unit 25 of the flash memory 20 receives the above, when the control signal line 102 is an "H", void from the data bus 60 (or Delete) command in FIG. 다음에, 어드레스 버스(70)로부터 수취한 어드레스로 지정된 메모리 셀 어레이(21)의 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 무효인 것을 나타내는 값 "11"을 기록한다. Next, it writes the value "11" indicating that the data is not valid in the flag area (fy) corresponding to the user area (ux) of the memory cell array 21 specified by the address received from the address bus (70). 데이터의 삭제의 경우는 수취한 어드레스로 지정된 메모리 셀 어레이(21)의 사용자 영역(ux)의 데이터를 삭제하고, 삭제한 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 소거되어 있는 것을 나타내는 값 "00"을 기록한다. For the deletion of the data to delete data in the user area (ux) of the memory cell array 21 designated by the received address, and deletes a user area (ux) in which the data is erased in the flag area (fy) which corresponds to record the value "00" indicates that.

다음에 본 실시 형태의 특징 부분의 동작을 설명한다. The operation of the feature portion of this embodiment in the following.

플래시 메모리(20) 안에서, 전술한 바와 같이 시간 관리부(24)는 어떤 일정한 시간 간격, 예컨대 60초 간격으로 제어부(25)에 신호를 보낸다. In the flash memory 20, the time management unit 24, as described above, a certain time intervals, for example, sends a signal to controller 25 at 60-second intervals. 시간 관리부(24)로부터 신호를 수신한 제어부(25)는 플래그 영역(fy)의 데이터를 판독하고, 판독한 데이터를 비교부(23)로 보낸다. Controller 25 receives a signal from the time management unit 24 has read the data of the flag area (fy), and sends the read data to the comparison unit (23). 플래그 영역(fy)의 데이터를 수취한 비교부(23)는 무효인 것을 나타내는 데이터의 갯수를 하나하나 세어 사용자 영역(ux)의 데이터가 무효인 비율을 산출한다. Flag area (fy), the data comparison unit 23 receives the one of the number of data indicating that an invalid one counted to calculate the ratio of the user data area (ux) is disabled. 또한 비교부(23)는 비율 기억부(22)에 미리 저장되어 있던 비율, 예컨대 "80%"와 비교한다. In addition, comparison unit 23 and compared with the ratio, e.g., "80%" that has been previously stored in the ratio storage 22. 비교 결과, 사용자 영역(ux)의 데이터가 무효인 비율이 비율 기억부(22)에 미리 저장되어 있던 비율보다 큰 경우는 제어부(25)에 신호를 보낸다. The result of comparison, when the data in the user area (ux) void ratio ratio storage unit is larger than the ratio that has been previously stored in section 22 and sends a signal to the controller 25.

비교부(23)로부터 신호를 수취한 제어부(25)는 인터럽트 신호선(101)을 이용하여 인터럽트 신호를 CPU(50)에 송신한다. A comparison section controller 25 receives a signal from the unit 23 transmits the interrupt signal by using the interrupt signal line 101 to the CPU (50).

도 5는 인터럽트 신호를 외부로 출력할 때의 타이밍 차트이다. 5 is a timing chart at the time of outputting the interrupt signal to the outside.

도면에서는, 인터럽트 신호를 출력할 때의 어드레스 버스(70), 제어 신호선(102), 인터럽트 신호선(101), 데이터 버스(60)의 신호의 상태를 나타내고 있다. In the drawings, there is shown the state of the signals of the address bus 70, a control signal line 102, interruption signal line 101, the data bus 60 at the time of outputting the interrupt signal.

도면과 같이 인터럽트 신호선(101)을 "H"로 하고, 인터럽트 신호를 CPU(50)에 송신한다. As shown in the figure the interrupt signal line 101 to "H", and transmits an interrupt signal to the CPU (50). 이 인터럽트 신호는 플래시 메모리(20)가 폐정보 수집 처리를 필요로 하고 있는 것을 외부에 통지하는 신호이다. The interrupt signal is a signal for notifying the outside that which requires a closed-information collection processing flash memory 20.

인터럽트 신호를 수취한 CPU(50)는 RAM(80)에 저장되어 있는 폐정보 수집을 행하는 프로그램을 실행한다. Receiving the interrupt signal to CPU (50) executes a program for performing the waste collecting information stored in the RAM (80). 이것에 의해, 플래시 메모리(20) 안의 불필요한 데이터를 소거하고, 빈 영역을 늘리는 폐정보 수집을 실행한다. Thereby, erasure of unnecessary data in the flash memory 20, and executes the waste collected information to increase the empty area.

또, 미리 비율 기억부(22)에 저장된 비율은 재기록하는 것이 가능하다. In addition, it is possible to rewrite the ratio stored in advance in the ratio storage 22.

도 6은 비율을 재기록할 때의 타이밍 차트이다. 6 is a timing chart of when the ratio rewritten.

도면에서는, 비율을 재기록하는 처리시의 어드레스 버스(70), 제어 신호선(102), 인터럽트 신호선(101), 데이터 버스(60)의 신호의 상태를 나타내고 있다. In the figure, an address bus 70 during the process of rewriting the ratio, the control signal line 102, represents the state of the signal on the interrupt signal line 101, a data bus 60.

플래시 메모리(20)의 비율 기억부(22)에 기억되어 있는 비율을 재기록하는 경우는, 도 6과 같이, CPU(50)는 우선 제어 신호선(102)을 "H"로 하는 동시에, 데이터 버스(60)를 통해 비율 저장 명령을 플래시 메모리(20)의 제어부(25)에 송신한다. The, CPU (50), first control signal line 102 as shown is Fig. 6 if rewriting the ratio stored in the ratio storage unit 22 in the flash memory 20 at the same time by "H", the data bus ( through 60) and transmits a storage command to the rate control unit 25 of the flash memory 20. 그 후, 제어 신호선(102)을 "L"로 되돌린다. Then, to return the control signal line 102 to "L". 다음에, 데이터 버스(60)를 통해 예컨대 RAM(80)에 저장된 재기록용 비율의 데이터를 제어부(25)에 송신한다. Next, the transmission rate of the data for rewriting for example stored in the RAM (80) via a data bus 60 to the controller 25.

제어부(25)는 제어 신호선(102)이 "H"가 되었을 때, 데이터 버스(60)로부터 비율 저장 명령을 수신하고, 다음에 데이터 버스(60)로부터 재기록하는 비율의 데이터를 수신한다. Controller 25 when the control signal line 102 is an "H", the reception ratio stored command from the data bus 60, and then receives the data of the rate at which the rewriting from the data bus 60. 제어부(25)는 수신한 재기록하는 비율의 데이터를 비율 기억부(22)에 보내고, 비율 기억부(22)는 수취한 비율의 데이터를 기억한다. The controller 25 sends the data of the rewritable ratio for receiving a rate storage unit 22, the percentage storing unit 22 stores the data of the received ratios.

이상의 제1 실시 형태의 동작의 흐름을 흐름도에 의해 통합한다. At least the flow of the first embodiment of the operation will be integrated by the flow chart.

도 7은 플래시 메모리의 데이터를 재기록할 때의 처리의 흐름을 도시한 흐름도이다. 7 is a flowchart illustrating the flow of processing at the time of rewriting data of the flash memory.

S10: 기록인지 무효화인지의 판단 S10: determining whether the records that the void

처리가 시작되면, CPU(50)는 실행하는 데이터 처리가 데이터의 기록 처리인지 데이터의 무효화 처리인지를 판단한다. When the process starts, it is determined whether the CPU (50) executes data processing is invalidation processing in that the write processing of data to the data. 데이터의 기록 처리의 경우는 단계 S11로 진행하여, 데이터의 무효화 처리의 경우는 단계 S12로 진행한다. In the case of the data writing process proceeds to step S11, when the invalidation processing of the data, the process proceeds to step S12.

S1: 데이터 기록 처리 S1: data recording process

단계 S10에서, 데이터의 기록 처리를 행한다고 판단되었기 때문에, 데이터의 기록 처리를 실행한다. In step S10, because it is determined to perform the write processing of the data, and executes the write processing of data.

S12: 데이터 무효화 처리 S12: data invalidation process

단계 S10에서, 데이터의 무효화 처리를 행한다고 판단되었기 때문에, 데이터의 무효화 처리를 실행한다. In step S10, because it is determined to perform the invalidation processing of the data, and executes the invalidation processing of the data.

단계 S11 또는 단계 S12의 처리가 종료되면, CPU(50)는 플래시 메모리(20)의 데이터를 재기록하는 처리를 종료한다. When the step S11 or the processing in step S12 ends, the CPU (50) ends the process of rewriting the data in the flash memory 20.

도 8은 기록 동작시의 처리의 흐름을 도시한 흐름도이다. Figure 8 is a flow chart showing the flow of processing of a write operation.

S20: 사용자 영역으로의 데이터 기록 S20: Data written to the user area

기록 처리가 시작되면, 플래시 메모리(20)의 제어부(25)는 도 3에서 도시한 바와 같은 타이밍으로, 메모리 셀 어레이(21)의 사용자 영역(ux)의 지정된 어드레스에 데이터를 기록한다. When the recording processing starts, the control unit 25 of the flash memory 20 and records the data to a designated address in the user area (ux) of the timing as shown in Figure 3, the memory cell array 21.

S21: 플래그 영역에의 "01"의 기록 S21: the recording of "01" in the flag area

단계 S20에서 사용자 영역(ux)에의 기록 처리가 행해지면, 제어부(25)는 데이터를 기록한 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 유효인 것을 나타내는 값 "01"을 기록한다. If the process recorded to the user area (ux) carried out in Step S20, the control unit 25 writes the value "01" in the flag area (fy) corresponding to the user area (ux) recording the data indicating that the data is valid .

도 9는 무효화 처리를 나타내는 흐름도이다. Figure 9 is a flow chart showing a revocation process.

S30: 플래그 영역에의 "11"의 기록 S30: the recording of "11" in the flag area

무효화 처리가 시작되면, 플래시 메모리(20)의 제어부(25)는 도 4에서 도시한 바와 같은 타이밍으로 메모리 셀 어레이(21)의 무효화하는 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 무효인 것을 나타내는 값 "11"을 기록한다. When the invalidation process is started, the flag area (fy) corresponding to the user area (ux) invalidating the flash memory 20. The controller 25 is a timing in the memory cell array 21 as shown in Figure 4 of the data record the value "11" indicating that it is disabled. 그 후, 무효화 처리를 종료한다. Then, it shuts down the invalidation process.

도 10은 데이터를 소거하는 처리의 흐름을 도시한 흐름도이다. 10 is a flow chart showing the flow of processing for erasing data.

S4O: 사용자 영역의 데이터 소거 S4O: a user data area erase

데이터를 소거하는 처리가 시작되면, 플래시 메모리(20)의 제어부(25)는 도 4에서 도시한 바와 같은 타이밍으로 메모리 셀 어레이(21)의 사용자 영역(ux)의 지정 어드레스의 데이터를 소거한다. When starting the processing for erasing the data, the control section 25 of the flash memory 20 erases the data of the designated address in the user area (ux) of the timing to the memory cell array 21 as shown in FIG.

S41: 플래그 영역에의 "OO"의 기록 S41: the recording of "OO" in the flag area

제어부(25)는 소거한 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 소거되고 있는 것을 나타내는 값 "00"을 기록하고, 데이터의 소거 처리를 종료한다. Controller 25 records the value "00" indicating that the data is erased in the flag area (fy) corresponding to the deleted user area (ux), and ends the scavenging process of the data.

도 11은 인터럽트 신호 출력시의 플래시 메모리 안에서의 처리 흐름을 도시한 흐름도이다. 11 is a flowchart showing the flow of processing in the flash memory at the time of the interrupt signal output.

S50: 소정 시간이 경과했는지 여부의 판정 S50: the determination of whether or not a predetermined time has passed

제어부(25)는 시간 관리부(24)로부터, 소정 시간 간격으로 출력되는 신호를 수신하여, 소정 시간(예컨대, 60초) 경과했는지 여부를 판정한다. The controller 25 determines whether or not from the time management unit 24, receives the signal output at a predetermined time interval, that a predetermined time has elapsed (e.g., 60 seconds). 여기서, 소정 시간이 경과했다고 판정된 경우에는, 단계 S51로 진행하고, 소정 시간 경과하고 있지 않다고 판정된 경우, 즉, 시간 관리부(24)로부터의 신호를 수신하지 않는 경우는, 단계 S50을 반복한다. Here, if the predetermined time has elapsed that is determined, when the process proceeds to step S51, and determines that the predetermined time not elapsed, that is, if it does not receive the signal from the time management unit 24, and repeats the steps S50 .

S51: 플래그 영역의 데이터가 "11"인 비율을 산출 S51: calculating the ratio of the flag area of ​​the data "11"

제어부(25)는 비교부(23)에 대응하는 사용자 영역(ux)의 데이터가 무효인 것을 나타내는 플래그 영역(fy)의 데이터 "11"의 비율을 산출시킨다. Controller 25 allows calculating the ratio of the data "11" in the flag area (fy) indicating that the data in the user area (ux) corresponding to the comparison unit 23 is not valid.

S52: 산출한 비율이 소정 비율보다 큰지 여부의 판정 S52: the determination of whether or not the calculated ratio is greater than a predetermined ratio

다음에 제어부(25)는 비율 기억부(22)에 미리 저장된 소정의 비율을 추출하여, 비교부(23)에 보내고, 그래서, 단계 S51의 처리에 의해 산출한 비율과 비교시킨다. Next, the control unit 25 extracts the predetermined ratio previously stored in the ratio storage unit 22, and sent to the comparison unit 23, so that, then compared with the ratio calculated by the processing of step S51. 여기서, 산출한 비율이 미리 저장된 소정 비율(예컨대 80%)보다 큰 경우는 단계 S53으로 진행하고, 그렇지 않은 경우는 단계 S50으로 되돌아간다. Here, if the calculated ratio previously stored is greater than a predetermined ratio (e.g. 80%), and proceeds to step S53, otherwise the process returns to step S50.

S53: 인터럽트 신호를 출력 S53: outputting an interrupt signal

제어부(25)는 무효인 비율이 크기 때문에, 외부에 인터럽트 신호를 출력하여, 폐정보 수집 처리를 요구한다. Controller 25 due to an invalid size ratio, and outputs an interrupt signal to the outside, requires a waste collection information processing. 그 후, 단계 S50으로부터의 처리를 반복한다. Then, the process is repeated from step S50.

도 12는 폐정보 수집 처리의 흐름을 도시한 흐름도이다. 12 is a flow chart showing the flow of the waste collected information processing.

S60: 인터럽트 신호를 수신했는지 여부의 판정 S60: the determination of whether it has received an interrupt signal

CPU(50)는 플래시 메모리(20)의 제어부(25)로부터, 폐정보 수집 처리의 실행을 요구하는 인터럽트 신호를 수신했는지 여부를 판정하고, 수신했다고 판정한 경우는 단계 S61로 진행하고, 수신하지 않는 경우는 단계 S60을 반복한다. CPU (50) is a case where it is determined whether or not from the control section 25 of the flash memory 20, that receives an interrupt signal for requesting execution of the closed information collection processing, and receiving that determination proceeds to step S61, to receive If you do not have to repeat the steps S60.

S61: 폐정보 수집(garbage collection) 처리 S61: Waste collected information (garbage collection) process

CPU(50)는 플래시 메모리(20)에 대하여 폐정보 수집 처리를 실행한다. CPU (50) executes the information acquisition process to the lungs in the flash memory 20. The

폐정보 수집 처리는 사용자 영역(ux)이 무효인 데이터를 소거하고, 유효한 영역을 연속한 영역에 통합하며, 그 결과, 사용할 수 있는 영역을 늘리는 처리이다. Pulmonary data collection process is a user area (ux) the erase the invalid data, and integrating the area contiguous valid area, and a result, processing to increase the area available.

이와 같이, 제1 실시 형태의 플래시 메모리(20)를 이용함으로써 CPU(50)가 실행하는 플래시 메모리(20) 안의 데이터를 재기록하는 프로그램과, 폐정보 수집의 프로그램을 각각 독립된 프로그램으로서 실행할 수 있다. In this way, it is possible first to execute a first embodiment of the flash memory, the flash memory 20, each separate program the program and, in the closed-information collection program for rewriting the data in which the run CPU (50) by using a 20. 또한, 제1 실시 형태의 플래시 메모리(20)에 따르면, 폐정보 수집의 프로그램을 실행하는 타이밍을 인터럽트 신호로서 외부에 통지할 수 있다. Further, according to the first embodiment of the flash memory 20, the timing for executing the program of the waste collected information can be notified to the outside as an interrupt signal.

다음에 본 발명의 제2 실시 형태의 플래시 메모리를 설명한다. It will be described a second embodiment of a flash memory according to the present invention in the following.

도 13은 본 발명의 제2 실시 형태의 플래시 메모리 및 그 외부에 배치되는 회로를 도시한 구성도이다. Figure 13 is a block diagram showing a circuit that is arranged on the flash memory and the outside of the second embodiment of the present invention.

본 발명의 제2 실시 형태의 플래시 메모리(30)는 메모리 셀 어레이(31), 비율 계산부(32), 제어부(33)로 구성된다. Second embodiment of the flash memory 30 of the present invention includes a memory cell array 31, a ratio calculation section 32, the control unit 33.

메모리 셀 어레이(31)는 제1 실시 형태와 마찬가지로, 복수의 사용자 영역(ux)과, 그것에 대응한 플래그 영역(fy)으로 이루어진다. The memory cell array 31 is similar to the first embodiment, and comprises a plurality of user areas (ux), a flag area (fy) corresponding to it.

비율 계산부(32)는 메모리 셀 어레이(31)의 플래그 영역(fy)의 상태를 판정하여 사용자 영역(ux)이 무효인 비율을 산출하고, 산출한 비율을 제어부(33)로 보낸다. Ratio calculation unit 32 determines the state of the flag area (fy) of the memory cell array (31) calculates a ratio of the user area (ux) is invalid, and sends the calculated ratios to the control unit (33).

제어부(33)는 플래시 메모리(30)의 각부를 제어하고, 외부와의 정보의 송수신을 행한다. The control unit 33 controls each section of the flash memory 30, and performs transmission and reception of information with the outside. 제어부(33)는 제어 신호선(102)에 의해 CPU(50)와 접속되어 있다. The control unit 33 is connected to the CPU (50) by a control signal line 102. 또한 데이터 버스(60), 어드레스 버스(70)와 접속된다. It is also connected to the data bus 60, address bus 70. 또한, 제어부(33)는 비율 계산부(32)에서 산출된 비율을 수신하고, 이것을 데이터의 기록 동작 또는 무효화 처리 직후에 외부로 출력한다. Further, the control unit 33 receives the ratio calculated by the ratio calculation unit 32, and outputs it to the outside immediately after the data write operation or invalidating processing.

플래시 메모리(30)의 외부 회로의 구성에 대해서는 제1 실시 형태와 동일하기 때문에 같은 부호로 하고, 설명을 생략한다. It will be omitted with the same reference characters and the description is the same as that of the first embodiment The configuration of the external circuits of the flash memory 30.

또, 제2 실시 형태에 있어서, 도 1의 상태 통지 정보 생성부(12)의 기능은 비율 계산부(32)에 포함되고, 출력부(13)의 기능은 제어부(33)에 포함된다. Further, in the second embodiment, the function of the state of Figure 1 the notification information generating unit 12 is included in the ratio calculation unit 32, a function of the output unit 13 is included in the control unit 33.

본 발명의 제2 실시 형태의 플래시 메모리(30)는 제1 실시 형태의 플래시 메모리(20)와 다르고, 비율 계산부(32)에서 계산한 비율 그 자체를 제어부(33)에 의해 외부로 출력하는 점이 다르다. Flash memory 30 according to the second embodiment of the present invention, the output to the outside by the percentage of the first embodiment is different from the form of a flash memory 20, calculated in the ratio calculation unit 32 itself to the control unit 33 point is different. 또한 시간 관리부(24)를 생략하고, 데이터의 기록 동작 또는 무효화 처리 직후에 외부로 출력한 점이 다르다. Further different point is omitted, the time management unit 24, and outputted to the outside immediately after the recording operation or invalidating processing of the data.

이하, 제2 실시 형태의 동작을 설명한다. Hereinafter, a second embodiment of the operation.

도 14는 기록 처리 후에 비율을 출력하는 경우의 타이밍 차트이다. 14 is a timing chart for a case of outputting the rate after the recording process.

도면에서는, 기록 처리 후에 비율을 출력할 때의, 어드레스 버스(70), 제어 신호선(102), 데이터 버스(60)의 신호 상태를 나타내고 있다. In the drawings, there is shown a signal state when the output ratio after recording process, the address bus 70, a control signal line 102, a data bus 60.

플래시 메모리(30)의 제어부(33)는 도 14와 같이, 제어 신호선(102)이 "H"가 되었을 때에, 데이터 버스(60)로부터 기록 명령을 수취한다. As in the control unit 14, 33 it is also the flash memory 30, when the control signal line 102 is an "H", and receives a write command from the data bus 60. 다음에, 어드레스 버스(70)로부터 수취한 어드레스로 지정된 메모리 셀 어레이(31)의 사용자 영역(ux)에, 데이터 버스(60)를 통해 수신한 데이터를 기록한다. Next, in the user area (ux) of the memory cell array 31 designated by the address received from the address bus 70, and it writes the data received through the data bus 60. 또한, 대응하는 플래그 영역(fy)에 데이터가 유효인 것을 나타내는 값 "01"을 기록한다. In addition, record the value "01" indicating that the data is valid, the corresponding flag area (fy) which. 그 후, 비율 계산부(32)에서 플래그 영역(fy)의 상태를 판정하여 사용자 영역(ux)이 무효인 비율을 산출시킨다. Thereafter, determining the state of the flag area (fy) from the percentage calculation unit 32 then calculates a ratio of the user area (ux) is invalid. 제어부(33)는 비율 계산부(32)에서 산출된 비율을 수취하고, 이것을 데이터 버스(60)에 출력하여 외부에 통지한다. The control unit 33 to the receiving the rate and output it to the data bus (60) calculated by the ratio calculation unit 32 notifies the outside.

도 15는 무효화 처리 후에 비율을 출력하는 경우의 타이밍 차트이다. 15 is a timing chart for a case of outputting a void ratio after treatment.

도면에서는, 무효화 처리 후에 비율을 출력할 때의, 어드레스 버스(70), 제어 신호선(102), 데이터 버스(60)의 신호의 상태를 나타내고 있다. In the drawings, there is shown the state of the signals at the time of outputting a void ratio after processing, the address bus 70, a control signal line 102, a data bus 60.

플래시 메모리(30)의 제어부(33)는, 도 15와 같이, 제어 신호선(102)이 "H"가 되었을 때에, 데이터 버스(60)로부터 무효화 명령을 수취한다. The control unit 33, as shown in Figure 15 of the flash memory 30, when the control signal line 102 is an "H", and receives an invalidation command from the data bus 60. 다음에, 어드레스 버스(70)로부터 수취한 어드레스로 지정된 메모리 셀 어레이(31)의 사용자 영역(ux)에 대응하는 플래그 영역(fy)에 데이터가 무효인 것을 나타내는 값 "11"을 기록한다. Next, it writes the value "11" indicating that the data is not valid in the flag area (fy) corresponding to the user area (ux) of the address bus, the memory cell array 31 designated by the address received from 70. 그 후, 비율 계산부(32)에서 플래그 영역(fy)의 상태를 판정하여 사용자 영역(ux)이 무효인 비율을 산출시킨다. Thereafter, determining the state of the flag area (fy) from the percentage calculation unit 32 then calculates a ratio of the user area (ux) is invalid. 제어부(33)는 비율 계산부(32)에서 산출된 비율을 수취하고, 이것을 데이터 버스(60)에 출력하여 외부에 통지한다. The control unit 33 to the receiving the rate and output it to the data bus (60) calculated by the ratio calculation unit 32 notifies the outside.

도 16은 제2 실시 형태의 구성에 있어서의 처리 흐름을 도시한 흐름도이다. 16 is a flowchart showing the flow of processing in the configuration of the second embodiment.

S70: 기록인지 무효화인지의 판단 S70: determining whether the records that the void

처리가 시작되면, CPU(50)는 실행하는 데이터 처리가 데이터의 기록 처리인지, 데이터의 무효화 처리인지를 판단한다. When processing is started, CPU (50) judges that the data processing is that the recording process of the data, the revocation of the data processing to be executed. 데이터의 기록 처리의 경우는 단계 S71로 진행하고, 데이터의 무효화 처리의 경우는 단계 S72로 진행한다. In the case of the data recording process when the process proceeds to step S71, and the data invalidate the process proceeds to step S72.

S71: 데이터 기록 처리 S71: data recording process

단계 S70에서 데이터의 기록 처리를 행한다고 판단되었기 때문에, 데이터 기록 처리를 실행한다. Because it is determined that performing the recording process of the data in step S70, and executes the data recording process.

S72: 데이터 무효화 처리 S72: data invalidation process

단계 S70에서 데이터의 무효화 처리를 행한다고 판단되었기 때문에, 데이터의 무효화 처리를 실행한다. Because it is determined that performing the invalidation processing of the data in step S70, and executes the invalidation processing of the data.

S73: 산출한 비율의 판독 S73: reads the calculated ratio

CPU(50)는 데이터 버스(60)를 통해 기록 또는 무효화 처리 직후에 플래시 메모리(30)에 의해 산출되어 출력되는 비율을 판독한다. CPU (50) is calculated by the flash memory 30 immediately after the recording processing or void via a data bus 60 and reads out the ratio of the output.

S74: 산출한 비율이 소정 비율보다 큰지 여부의 판정 S74: the determination of whether or not the calculated ratio is greater than a predetermined ratio

다음에, CPU(50)는 산출한 비율이 RAM(80)에 저장된 소정 비율(예컨대 80%)보다 큰지 여부를 판정하여, 크면 단계 S75로 진행하고, 그렇지 않으면 처리를 종료한다. Next, the CPU (50) ends the process if it is determined is greater than the calculated ratios are stored in RAM (80) a predetermined ratio (e.g. 80%), the flow goes to step S75 is greater, or.

S75: 폐정보 수집 처리 S75: Waste collected information processing

플래시 메모리(30)로부터 통지된 비율이 소정 비율을 상회한 경우는, CPU(50)는 폐정보 수집 처리가 필요하다고 간주하여 폐정보 수집 처리를 행한다. If the notification rate from the flash memory 30 is one higher than the predetermined ratio, CPU (50) performs a closed-information collection processing to be deemed necessary closed-information collection processing.

이와 같이, 제2 실시 형태의 플래시 메모리(20)는 데이터 기록, 또는 데이터 무효화 처리 직후에 비율을 출력하도록 하였기 때문에, 인터럽트 신호선(101)이 필요 없게 된다. Thus, the flash memory 20 of the second embodiment because it to output ratio immediately after the invalidation data write, or data processing, the interrupt signal line 101 is not required.

다음에 본 발명의 제3 실시 형태를 설명한다. It will be described a third embodiment of the present invention in the following.

제3 실시 형태의 구성은 도 13에서 도시한 제2 실시 형태의 구성도와 동일해지므로 생략한다. A third embodiment of the configuration will be omitted because equal help the configuration of the second embodiment shown in Fig.

제3 실시 형태에서는, CPU(50)가 플래시 메모리(20)에 대하여 비율을 요구하는 비율 출력 명령을 송신하는 점이 제2 실시 형태와 다르다. Third embodiment, the CPU point (50) for transmitting the output ratio command requiring a ratio with respect to the flash memory 20 is different from the second embodiment.

도 17은 비율 출력 명령에 따라 비율을 출력할 때의 타이밍 차트이다. 17 is a timing chart at the time of the output ratio according to the ratio of the output command.

도면에서는, 그 때의 어드레스 버스(70), 제어 신호선(102), 데이터 버스(60)의 신호의 상태를 나타내고 있다. In the drawings, there is shown the state of the signal at that time of the address bus 70, a control signal line 102, a data bus 60.

플래시 메모리(30)의 제어부(33)는 도 17과 같이, 제어 신호선(102)이 "H"가 되었을 때에, 데이터 버스(60)로부터 비율 출력 명령을 수취한다. The control unit 33 as shown in Figure 17 of the flash memory 30, when the control signal line 102 is an "H", and receives a command from the data rate output bus (60). 이것에 따라, 비율 계산부(32)에서 플래그 영역(fy)의 상태를 판정하여 사용자 영역(ux)이 무효인 비율을 산출시킨다. Thus, the ratio calculation unit 32 determines the state of the flag area (fy) and a user area (ux) in accordance with the thus calculated ratio of the void. 제어부(33)는 비율 계산부(32)에서 산출된 비율을 수취하고, 이것을 데이터 버스(60)에 출력하여 외부에 통지한다. The control unit 33 to the receiving the rate and output it to the data bus (60) calculated by the ratio calculation unit 32 notifies the outside.

이와 같이, 제3 실시 형태에서는, 플래시 메모리(20)에 비율 출력 명령을 송신할 때에 비율을 취득하기 때문에, 임의의 타이밍으로 비율을 취득하는 것이 가능하다. Thus, in the third embodiment, since the acquisition rate upon transmitting the output ratio command to the flash memory 20, it is possible to obtain the ratio to the desired timing.

또, 상기한 제1 실시 형태에서는, 일정 시간 간격으로 사용자 영역(ux)이 무효인 비율을 계산하여 플래시 메모리(20) 안에서, 산출한 비율과 미리 저장하고 있던 소정 비율과 비교하여, 산출한 비율이 큰 경우는, 폐정보 수집 처리를 요구하는 인터럽트 신호를 출력하도록 하였다. Further, in the first embodiment above, and in a certain interval of time the user area (ux) by calculating the ratio of invalid flash memory 20, stored in advance and the calculated ratio compared to a predetermined ratio were, a ratio calculated If this is greater, and outputs an interrupt signal to request the information processing waste collection. 한편, 제2 실시 형태에서는, 기록 동작 또는 무효화 처리 직후에, 산출한 비율 그 자체를 출력하는 경우로 하였다. On the other hand, in the second embodiment, immediately after the recording operation or invalidating process, and to the calculated ratio if the output itself. 그러나, 이것에 한정되지 않고, 일정 시간 간격으로 산출한 비율 그 자체를 출력하도록 하여도 좋고, 기록 동작 또는 무효화 처리 직후에, 산출한 비율과 미리 저장하고 있던 소정의 비율과 비교하여, 산출한 비율이 큰 경우는, 폐정보 수집 처리를 요구하는 인터럽트 신호를 출력하도록 하여도 좋다. However, not limited thereto, it may be to the ratio output itself, calculated at a predetermined time interval, to shortly after the recording operation or invalidating process, compared with a predetermined ratio that was previously stored and the calculated ratio, a ratio calculated If the large, it may be to output the interrupt signal to request the information processing waste collection.

또한, 제3 실시 형태에서는, 외부로부터의 비율 출력 명령에 따라 사용자 영역(ux)이 무효인 비율을 출력하도록 하였지만, 제1 실시 형태와 같은 구성으로 하여 외부로부터의 명령이 플래시 메모리에 입력된 경우에, 폐정보 수집 처리를 요구하는 인터럽트 신호를 출력하도록 하여도 좋다. In addition, in the third embodiment, when according to the ratio output command from the outside though the user area (ux) is to output an invalid proportion, the same configuration as in the first embodiment the instruction from the outside is input to the flash memory a, it may be to output the interrupt signal to request the information processing waste collection.

또한, 상기에서는, 플래그 영역(fy)의 값으로서, 소거 상태의 경우는 "00", 유효 상태의 경우는 "01", 무효 상태의 경우는 "11"로서 설명하였지만, 이것에 한정되지 않는다. Also, as the value of the above, the flag area (fy), in the case of the erase state is "01" for "00", a valid state, in the case of the reactive condition has been described as "11", the invention is not limited to this.

이상 설명한 바와 같이 본 발명에서는, 데이터가 기억되는 복수의 사용자 영역과, 사용자 영역의 상태를 나타내는 복수의 플래그 영역으로 이루어진 메모리 셀 어레이를 갖는 플래시 메모리에 있어서, 플래그 영역의 값을 참조하여 사용자 영역의 상태에 따른 정보를 외부에 통지하기 위한 상태 통지 정보를 생성하고, 상태 통지 정보를 외부에 출력하도록 하였기 때문에, 플래시 메모리의 외부에서는, 플래시 메모리 안의 상태를 간단히 알 수 있고, 현재 폐정보 수집 처리를 행할 필요가 있는지 여부를 판단할 수 있다. In the present invention, as described above, in the flash memory having a plurality of the user area and the memory cell array comprising a plurality of flag area indicating the status of the user area in which data is stored, with reference to the value of the flag area in the user area because it generates the state notification information to notify the information of the state to the outside, and to output the state notification information to the outside, the outside of the flash memory, it is possible to know the state in the flash memory simply, the current closed-information collection processing it can be determined whether there is a need to perform.

상기에 대해서는 단순히 본 발명의 원리를 나타낸 것이다. It illustrates a simple principle of the present invention for the above-mentioned. 또한, 다수의 변형, 변경이 당업자에 있어서 가능하고, 본 발명은 상기에 나타내며, 설명한 정확한 구성 및 응용예에 한정되는 것이 아니라, 대응하는 모든 변형예 및 균등물은 첨부한 청구항 및 그 균등물에 의한 본 발명의 범위로 간주된다. In addition, numerous variations and changes are possible to those skilled in the art, the invention is all such modifications and equivalents are the claims and their equivalents attached to, rather than is indicated in the above, limited to the exact construction and applications described, the corresponding It is considered by the scope of the invention.

Claims (12)

  1. 데이터가 기억되는 복수의 사용자 영역과, 상기 사용자 영역의 상태를 나타내는 복수의 플래그 영역으로 이루어진 메모리 셀 어레이를 갖는 플래시 메모리에 있어서, In the plurality of user-space and a flash memory having a memory cell array comprising a plurality of flag area indicating the status of the user area in which data is stored,
    상기 플래그 영역을 참조하여 상기 사용자 영역의 상태에 따른 정보를 외부에 통지하기 위한 상태 통지 정보를 생성하는 상태 통지 정보 생성부와, And a state notice information generation unit for referring to the flag area generates the state notification information to notify the information to the outside according to the state of the user area,
    상기 상태 통지 정보를 출력하는 출력부 An output unit for outputting the status notifications
    를 구비하는 것을 특징으로 하는 플래시 메모리. Flash memory, comprising a step of having a.
  2. 제1항에 있어서, 상기 상태 통지 정보 생성부는 상기 플래그 영역을 참조하여 상기 사용자 영역의 상태가 무효 상태인 비율을 산출하는 것을 특징으로 하는 플래시 메모리. According to claim 1, wherein said state notice information generation unit flash memory, characterized in that for calculating the state is the invalid state the ratio of the user region with reference to the flag area.
  3. 제2항에 있어서, 상기 상태 통지 정보 생성부는 미리 저장된 소정 비율과 상기 무효 상태인 비율을 비교하여, 상기 무효 상태인 비율이 크면, 폐정보 수집이 필요하다는 취지의 상기 상태 통지 정보를 생성하는 것을 특징으로 하는 플래시 메모리. 3. The method of claim 2, to the said state notice information generation unit compares a pre-stored predetermined ratio and the ratio the invalid state, generates the state notification information to the effect that is the invalid state, the ratio is large, it requires a waste collection information flash memory according to claim.
  4. 제2항에 있어서, 상기 출력부는 상기 무효 상태인 비율을 상기 상태 통지 정보로서 출력하는 것을 특징으로 하는 플래시 메모리. The method of claim 2, wherein the output unit, characterized in that the flash memory for outputting the ratio as the invalid state the status notification information.
  5. 제1항에 있어서, 상기 출력부는 일정한 시간 간격으로 상기 상태 통지 정보를 출력할 수 있는 것을 특징으로 하는 플래시 메모리. According to claim 1, wherein the output unit at regular time intervals, characterized in that the flash memory that is capable of outputting the status notification information.
  6. 제1항에 있어서, 상기 출력부는 상기 사용자 영역에의 상기 데이터의 기록 직후 또는 상기 데이터의 무효화 직후에 상기 상태 통지 정보를 출력하는 것을 특징으로 하는 플래시 메모리. The method of claim 1, wherein the output unit to the flash memory outputs said state information notified immediately after the invalidation of the data recording or immediately after the data of the user area.
  7. 제1항에 있어서, 상기 출력부는 상기 상태 통지 정보를 요구하는 정보 요구 신호의 수신 직후에 상기 상태 통지 정보를 출력하는 것을 특징으로 하는 플래시 메모리. The method of claim 1, wherein the output unit to the flash memory outputs said state notice information immediately after reception of the information request signal for requesting the status notification information.
  8. 제3항에 있어서, 상기 소정 비율은 재기록 가능한 것을 특징으로 하는 플래시 메모리. 4. The method of claim 3 wherein the predetermined ratio is a flash memory, characterized in that rewritable.
  9. 데이터가 기억되는 복수의 사용자 영역과, 상기 사용자 영역의 상태를 나타내는 복수의 플래그 영역으로 이루어진 메모리 셀 어레이를 갖는 플래시 메모리의 동작을 제어하는 메모리 제어 방법에 있어서, In the plurality of the user area in which data is stored, the memory control method of controlling the operation of a flash memory having a memory cell array comprising a plurality of flag area indicating the status of the user area,
    상기 플래시 메모리로부터, 폐정보 수집이 필요하다는 취지의 정보를 수신하는 단계와, Comprising the steps of: from the flash memory, it receives information to the effect need for waste collection information,
    상기 정보에 따라 상기 플래시 메모리에 대하여 상기 폐정보 수집을 행하는 단계를 포함하는 것을 특징으로 하는 메모리 제어 방법. The memory control method comprising the step of performing the waste collection information for the flash memory in accordance with the information.
  10. 제9항에 있어서, 상기 플래시 메모리에 상기 정보의 통지를 요구하는 단계를 더 포함하는 것을 특징으로 하는 메모리 제어 방법. 10. The method of claim 9, wherein the memory control according to claim 1, further comprising the step of in the flash memory requires the notification of the information.
  11. 데이터가 기억되는 복수의 사용자 영역과, 상기 사용자 영역의 상태를 나타내는 복수의 플래그 영역으로 이루어진 메모리 셀 어레이를 갖는 플래시 메모리의 동작을 제어하는 메모리 제어 방법에 있어서, In the plurality of the user area in which data is stored, the memory control method of controlling the operation of a flash memory having a memory cell array comprising a plurality of flag area indicating the status of the user area,
    상기 플래시 메모리로부터, 상기 사용자 영역이 무효 상태인 비율을 수신하는 단계와, And a step in which the user domain received an invalid state in rate from the flash memory,
    상기 무효 상태인 비율과 소정 비율을 비교하는 단계와, And wherein the reactive conditions in rate compared with the predetermined ratio,
    상기 소정 비율보다 상기 무효 상태인 비율이 큰 경우는, 상기 플래시 메모리에 대하여 폐정보 수집을 행하는 단계를 포함하는 것을 특징으로 하는 메모리 제어 방법. When the invalid state in rate than the predetermined rate is large, the memory control method comprising the step of performing a closed collecting information for the flash memory.
  12. 제11항에 있어서, 상기 플래시 메모리에 상기 무효 상태인 비율의 통지를 요구하는 단계를 더 포함하는 것을 특징으로 하는 메모리 제어 방법. 12. The process of claim 11, wherein the memory control for the flash memory, characterized by further comprising the step of requesting notification of the invalid state in rate.
KR1020057006067A 2005-04-08 2003-02-28 Flash memory and memory control system KR100597063B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020057006067A KR100597063B1 (en) 2005-04-08 2003-02-28 Flash memory and memory control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020057006067A KR100597063B1 (en) 2005-04-08 2003-02-28 Flash memory and memory control system

Publications (2)

Publication Number Publication Date
KR20050059249A true KR20050059249A (en) 2005-06-17
KR100597063B1 KR100597063B1 (en) 2006-07-06

Family

ID=37252276

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057006067A KR100597063B1 (en) 2005-04-08 2003-02-28 Flash memory and memory control system

Country Status (1)

Country Link
KR (1) KR100597063B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7643339B2 (en) 2006-05-18 2010-01-05 Samsung Electronics Co., Ltd. Multi-bit flash memory devices having a single latch structure and related programming methods, systems and memory cards
US7684238B2 (en) 2006-08-24 2010-03-23 Samsung Electronics Co., Ltd. Methods of programming multi-bit flash memory devices and related devices
US7876613B2 (en) 2006-05-18 2011-01-25 Samsung Electronics Co., Ltd. Multi-bit flash memory devices having a single latch structure and related programming methods, systems and memory cards

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7643339B2 (en) 2006-05-18 2010-01-05 Samsung Electronics Co., Ltd. Multi-bit flash memory devices having a single latch structure and related programming methods, systems and memory cards
US7876613B2 (en) 2006-05-18 2011-01-25 Samsung Electronics Co., Ltd. Multi-bit flash memory devices having a single latch structure and related programming methods, systems and memory cards
US7684238B2 (en) 2006-08-24 2010-03-23 Samsung Electronics Co., Ltd. Methods of programming multi-bit flash memory devices and related devices

Also Published As

Publication number Publication date
KR100597063B1 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
CN1902599B (en) The update data to the nonvolatile memory system and a method for operating the system
CN1277213C (en) A flash memory file system management method
KR101465816B1 (en) Extending flash drive lifespan
US5832493A (en) Flash file management system
DE69432878T2 (en) Information processing system with flash memory and cache memory
US7191308B2 (en) Memory device with preread data management
CN102498522B (en) Container marker scheme for reducing write amplification in solid state devices
EP1244019A2 (en) Memory device comprising a non-volatile memory
US5687368A (en) CPU-controlled garbage-collecting memory module
JP2006236304A (en) Storage device and information processing system
TWI317064B (en) Storage device and host apparatus
Jo et al. FAB: flash-aware buffer management policy for portable media players
JP2004157686A (en) Device and method for memory management
CN102648457B (en) Mixing storage is used to extend SSD life cycle
TWI242711B (en) Nonvolatile memory and control method for nonvolatile memory
TWI394164B (en) Interruptible cache flushing in flash memory systems
TW574647B (en) Data processing method in high-capacity flash EEPROM card system
KR100273030B1 (en) Mobile client computer and flash memory management
JP2007280428A (en) Memory management
US5946714A (en) Semiconductor storage device utilizing address management tables and table state maps for managing data storage and retrieval
EP1189139A1 (en) Recording system, data recording device, memory device, and data recording method
TWI424316B (en) Controller, data storage device, and program product
US7991942B2 (en) Memory block compaction method, circuit, and system in storage devices based on flash memories
KR101017941B1 (en) Memory card
EP0712067A2 (en) Flash disk card

Legal Events

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

Payment date: 20130531

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140612

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee