KR101777383B1 - Apparatus and method for overwritting flash memory - Google Patents
Apparatus and method for overwritting flash memory Download PDFInfo
- Publication number
- KR101777383B1 KR101777383B1 KR1020160125130A KR20160125130A KR101777383B1 KR 101777383 B1 KR101777383 B1 KR 101777383B1 KR 1020160125130 A KR1020160125130 A KR 1020160125130A KR 20160125130 A KR20160125130 A KR 20160125130A KR 101777383 B1 KR101777383 B1 KR 101777383B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- memory area
- area
- ready
- protection
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 519
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000002360 preparation method Methods 0.000 claims abstract description 19
- 238000003860 storage Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 16
- 230000007547 defect Effects 0.000 claims description 8
- 238000012790 confirmation Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 1
- 230000008859 change Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 239000000470 constituent Substances 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
본 발명은 플래시 메모리의 덮어쓰기 방법 및 장치에 관한 것으로서, 본 발명의 실시 예에 따른 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하는지를 확인하는 이벤트 확인 단계; 상기 플래시 메모리의 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경하는 메모리 변경 단계; 덮어쓰기(Cycle) 횟수가 가장 많은 이전 메모리 영역을 준비(Ready) 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 제1 메모리 교체 단계; 및 상기 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정하는 메모리 설정 단계를 포함한다.The present invention relates to a flash memory overwriting method and apparatus, and more particularly, to an event checking step for checking whether a memory replacement event occurs in a plurality of memory areas of a flash memory according to an embodiment of the present invention. A memory changing step of changing a protection memory area exceeding a protection time in a plurality of memory areas of the flash memory to a preparation memory area; A first memory replacement step of replacing a previous memory area having the largest number of overwrite cycles with a memory area having a least overwrite frequency among the ready memory areas; And a memory setting step of setting the replaced previous memory area as a protected memory area.
Description
본 발명은 플래시 메모리의 덮어쓰기 방법 및 장치에 관한 것으로서, 더욱 상세하게는 항공기용 블랙박스 플래시 메모리 장치의 수명 극대화를 위한 플래시 메모리의 덮어쓰기 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for overwriting a flash memory, and more particularly, to a method and apparatus for overwriting a flash memory for maximizing the life of a black box flash memory device for an aircraft.
항공기는 사고조사용으로 음성/비행 데이터를 저장할 수 있는 블랙박스가 필수적으로 장착되어야 한다. 블랙박스는 충돌 및 추락 상황의 극한환경을 견뎌낼 수 있는 데이터 저장 매제를 포함하는 사고 보호 메모리(Crash-Protected Memory, CPM) 장치가 필요하다. 이러한 사고 보호 메모리(CPM)에 기록되는 데이터는 여러 가지 제약 사항이 있다.The aircraft must be equipped with a black box capable of storing voice / flight data by accident. The black box needs a Crash-Protected Memory (CPM) device that includes a data storage device that can withstand the extreme environments of crashes and crashes. The data recorded in this accident protection memory (CPM) has various restrictions.
항공기용 블랙박스는 사고조사용 오디오 데이터를 기록하는 조종실 음성 기록 장치(Cockpit Voice Recorder, CVR)와 비행 데이터를 기록하는 비행 기록 장치(Flight Data Recorder, FDR) 등으로 기록하는 데이터 종류에 따라 각각의 장비로 개발되었다. 그러나 최근에는 여러 종류의 데이터를 하나의 장비에서 기록하는 결합 기록 장치(Combined Recorder) 형태로 개발되는 추세이다.The black box for aircraft is divided into a Cockpit Voice Recorder (CVR) for recording incident audio data and a Flight Data Recorder (FDR) for recording flight data. Equipment. However, in recent years, it has been developed in the form of a combined recorder in which various kinds of data are recorded in one apparatus.
결합 기록 장치에서 다른 종류의 데이터는 물리적 저장 매체를 분리하는 것이 ED-112 등 사고조사용 블랙박스 규격에서 정의하고 있다. 이러한 이종의 데이터는 시간당 저장 데이터의 양과 기록한 데이터를 보존해야 하는 시간이 다르기 때문에 플래시 메모리의 수명이 데이터의 종류에 따라 달라질 수 있다. 예를 들어, 오디오 데이터는 2시간마다 한 번씩 메모리를 가득 채워 덮어쓰기가 발생한다. 비행 데이터는 그 시간이 30시간, 비디오 데이터는 1시간이라면 분리된 메모리에 각각 데이터를 저장하면, 비디오 데이터를 저장하는 메모리 칩의 수명이 가장 빨리 다할 수 있다. 사고 보호 메모리 장치는 극한환경 노출에 대비한 특수한 장치이기 때문에,메모리 모듈만 교체하기는 불가능하고 전체 장치를 교체해야 한다 따라서, 아직 수명이 다하지 않은 플래시 칩들이 있지만, 비디오 데이터 기록 영역 때문에 전체 장치를 교체해야 하는 한계가 있다.Other types of data in coupled recording devices are defined in the accidental black box specification, such as ED-112, to separate physical storage media. Since the amount of data stored per hour differs from the time required to store the recorded data, the lifetime of the flash memory may vary depending on the type of data. For example, audio data is overwritten by overwriting the memory once every two hours. If the flight data is 30 hours and the video data is 1 hour, if the data is stored in separate memory, the life of the memory chip storing the video data may be shortest. Since an accident protection memory device is a special device for exposure to extreme environmental conditions, it is impossible to replace only the memory module and the entire device must be replaced. Therefore, although there are flash chips that have not yet reached their end of life, There is a limit to be replaced.
기술적 제약 사항을 살펴보기로 한다.Let's look at technical constraints.
첫째, 사고조사용 블랙박스용 플래시 메모리는 사고 보호 메모리 장치로 제작하여 극한환경을 감내해야 한다.First, flash memory for crash black box should be built as an accident protection memory device and endure the extreme environment.
둘째, 결합 기록 장치 타입의 블랙박스는 플래시에 기록하는 영역이 데이터 종류에 따라 물리적으로 분리되어야 한다.Secondly, the black box of the coupled recorder type requires that the area to be recorded in the flash be physically separated according to the data type.
셋째, 데이터 종류의 영역마다 모두 기록했을 때 오래된 데이터부터 덮어쓰기 해야 한다.Third, when data is recorded for every area of the data type, the old data must be overwritten.
넷째, 데이터 종류별로 보존해야 하는 최근 데이터 시간은 상이하다. 예컨대, 오디오 데이터는 최근 2시간 분량,비행 데이터는 최근 25시간 분량, 이미지(영상) 데이터는 최근 30분 분량 등으로 상이하다.Fourthly, the latest data time to be stored for each data type is different. For example, the audio data is different in the last two hours, the flight data in the last 25 hours, and the image (image) data in the last 30 minutes.
다섯째, 사고 보호 메모리는 장치의 특성상, 단일(Single) 메모리 칩이나 메모리 모듈만 따로 교체가 불가하여 새로 제작해야 한다.Fifth, due to the characteristics of the device, only a single memory chip or memory module can not be replaced.
이러한 제약 사항으로부터 파생되는 문제점을 살펴보기로 한다.The problems derived from these constraints will be discussed.
첫째, 현재 기술로는 플래시 메모리는 덮어쓰기를 할 수 있는 한계 횟수가 있다. 예컨대, 덮어쓰기 횟수는 10 만회 정도만 가능하다.First, with current technology, flash memory has a limit number of times to overwrite. For example, the number of overwriting times is only about 100,000 times.
둘째, 데이터 종류별로 영역을 고정하면 필링 레이트(filling rate)가 다르기 때문에 시간이 지날수록 덮어쓰기 횟수의 차이가 발생하여 특정 메모리가 먼저 수명이 다하게 된다.Second, since the filling rate is different depending on the type of data, the number of times of overwriting is different as time passes, and the specific memory first reaches its lifetime.
셋째, 플래시 메모리 칩 가격에 비해 CPM 장치는 특수 하우징을 사용하여 제작 비용이 비싸다는 단점이 있다.Third, the CPM device has a disadvantage in that the manufacturing cost is expensive due to the use of the special housing, compared to the flash memory chip price.
본 발명의 실시 예들은 항공기용 블랙박스 플래시 메모리의 수명 극대화를 위한 플래시 메모리의 덮어쓰기 방법 및 장치를 제공하고자 한다.Embodiments of the present invention provide a method and apparatus for overwriting a flash memory for maximizing the life of a black box flash memory for an aircraft.
본 발명의 실시 예들은 항공기용 블랙박스 플래시 메모리에서 동적으로 데이터 종류에 따른 메모리 영역을 변경함으로써, 항공기용 블랙박스 플래시 메모리 장치의 수명을 극대화할 수 있는, 플래시 메모리의 덮어쓰기 방법 및 장치를 제공하고자 한다.Embodiments of the present invention provide a method and apparatus for overwriting a flash memory capable of maximizing the life of a black box flash memory device for an aircraft by changing a memory area according to a data type dynamically in an airplane black box flash memory I want to.
또한, 본 발명의 실시 예들은 사고 보호 메모리 내부의 플래시 메모리의 웨어 레벨링(Wear-Leveling)이 가능하여,사고 보호 메모리의 수명을 극대화할 수 있는, 플래시 메모리의 덮어쓰기 방법 및 장치를 제공하고자 한다.Embodiments of the present invention also provide a method and apparatus for overwriting a flash memory capable of performing wear-leveling of a flash memory in an accident protection memory, thereby maximizing the life of the accident protection memory .
본 발명의 제1 측면에 따르면, 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하는지를 확인하는 이벤트 확인 단계; 상기 플래시 메모리의 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경하는 메모리 변경 단계; 덮어쓰기(Cycle) 횟수가 가장 많은 이전 메모리 영역을 준비(Ready) 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 제1 메모리 교체 단계; 및 상기 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정하는 메모리 설정 단계를 포함하는 플래시 메모리의 덮어쓰기 방법이 제공될 수 있다.According to a first aspect of the present invention, there is provided an information processing method comprising: an event checking step of checking whether a memory replacement event occurs in a plurality of memory areas of a flash memory; A memory changing step of changing a protection memory area exceeding a protection time in a plurality of memory areas of the flash memory to a preparation memory area; A first memory replacement step of replacing a previous memory area having the largest number of overwrite cycles with a memory area having a least overwrite frequency among the ready memory areas; And a memory setting step of setting the replaced previous memory area as a protected memory area.
상기 메모리 변경 단계는, 상기 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하는지를 확인하는 단계; 보호 메모리 영역이 존재하면, 보호 메모리 영역의 보호 시간이 초과되는지를 확인하는 단계; 및 보호 메모리 영역의 보호 시간이 초과되면, 보호 시간이 초과된 보호 메모리 영역을 준비 메모리 영역으로 변경하는 단계를 포함할 수 있다.Wherein the memory changing step comprises: checking whether a protected memory area exists in a plurality of memory areas of the flash memory; Confirming whether the protection time of the protection memory area is exceeded when the protection memory area exists; And changing the protected memory area exceeding the protection time to the ready memory area when the protection time of the protected memory area is exceeded.
상기 준비 메모리 영역으로 변경하는 단계는, 보호 시간이 초과된 보호 메모리 영역을 기설정된 최소 보존 시간이 이후에 덮어쓰기가 허용되는 준비 메모리 영역으로 변경할 수 있다.The step of changing to the ready memory area may change the protected memory area for which the protection time has been exceeded to a ready memory area in which a predetermined minimum storage time is allowed to be overwritten later.
상기 제1 메모리 교체 단계는, 상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하는 단계; 준비 메모리 영역이 존재하면, 덮어쓰기 횟수가 가장 많은 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 단계; 및 준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료하는 단계를 포함할 수 있다.Wherein the first memory replacement step comprises: checking whether a preparation memory area exists in a plurality of memory areas of the flash memory; Replacing a memory area having the largest overwrite frequency with a memory area having the smallest overwrite frequency among the ready memory areas when the ready memory area exists; And if the ready memory area does not exist, terminating the memory replacement process.
상기 방법은, 고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 제2 메모리 교체 단계를 더 포함할 수 있다.The method may further include a second memory replacing step of replacing the fault memory area with a memory area having the smallest overwrite frequency among the ready memory areas.
상기 제2 메모리 교체 단계는, 상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하는 단계; 준비 메모리 영역이 존재하면, 고장 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 단계; 및 준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료하는 단계를 포함할 수 있다.Wherein the second memory replacement step comprises: checking whether a preparation memory area exists in a plurality of memory areas of the flash memory; Replacing the fault memory area with a memory area having the smallest overwriting frequency among the ready memory areas if a ready memory area exists; And if the ready memory area does not exist, terminating the memory replacement process.
상기 메모리 설정 단계는, 상기 교체된 이전 메모리 영역을 기설정된 최소 보존 시간 이내에 덮어쓰기가 허용되지 않는 보호 메모리 영역으로 설정할 수 있다.The memory setting step may set the replaced previous memory area as a protected memory area in which overwriting is not allowed within a preset minimum storage time.
한편, 본 발명의 제2 측면에 따르면, 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하는지를 확인하는 이벤트 확인부; 상기 플래시 메모리의 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경하는 메모리 변경부; 덮어쓰기(Cycle) 횟수가 가장 많은 이전 메모리 영역을 준비(Ready) 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 메모리 교체부; 및 상기 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정하는 메모리 설정부를 포함하는 플래시 메모리의 덮어쓰기 장치가 제공될 수 있다.According to a second aspect of the present invention, there is provided an information processing apparatus including an event checking unit for checking whether a memory replacement event occurs in a plurality of memory areas of a flash memory; A memory changing unit for changing a protection memory area exceeding a protection time in a plurality of memory areas of the flash memory into a preparation memory area; A memory replacement unit for replacing a previous memory area having the largest number of overwrite cycles with a memory area having a least overwrite number among the ready memory areas; And a memory setting unit for setting the replaced previous memory area as a protected memory area.
상기 메모리 변경부는, 상기 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하는지를 확인하고, 보호 메모리 영역이 존재하면, 보호 메모리 영역의 보호 시간이 초과된 보호 메모리 영역을 준비 메모리 영역으로 변경할 수 있다.The memory change unit may check whether a protected memory area exists in a plurality of memory areas of the flash memory and change the protected memory area that exceeds the protection time of the protected memory area to the prepared memory area when the protected memory area exists.
상기 메모리 변경부는, 보호 시간이 초과된 보호 메모리 영역을 기설정된 최소 보존 시간이 이후에 덮어쓰기가 허용되는 준비 메모리 영역으로 변경할 수 있다.The memory change unit may change the protected memory area for which the protection time has been exceeded to a ready memory area in which a predetermined minimum storage time is allowed to be overwritten thereafter.
상기 메모리 교체부는, 상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하고, 준비 메모리 영역이 존재하면, 덮어쓰기 횟수가 가장 많은 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하고, 준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료할 수 있다.Wherein the memory replacement unit checks whether a ready memory area exists in a plurality of memory areas of the flash memory and, if a ready memory area exists, stores a memory area having the largest overwrite frequency in a memory Area, and if the ready memory area does not exist, the memory replacement process can be terminated.
상기 메모리 교체부는, 고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체할 수 있다.The memory replacement unit can replace the fault memory area with the memory area having the smallest overwrite frequency among the ready memory areas.
상기 메모리 교체부는, 상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하고, 준비 메모리 영역이 존재하면, 고장 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하고, 준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료할 수 있다.Wherein the memory replacement unit checks whether a ready memory area exists in a plurality of memory areas of the flash memory and, if a ready memory area exists, replaces a fault memory area with a memory area having the smallest overwrite frequency among the ready memory areas, If the ready memory area does not exist, the memory replacement process can be terminated.
상기 메모리 설정부는, 상기 교체된 이전 메모리 영역을 기설정된 최소 보존 시간 이내에 덮어쓰기가 허용되지 않는 보호 메모리 영역으로 설정할 수 있다.The memory setting unit may set the replaced previous memory area as a protected memory area that is not allowed to be overwritten within a predetermined minimum storage time.
본 발명의 실시 예들은 항공기용 블랙박스 플래시 메모리의 수명 극대화를 위한 것이다.Embodiments of the present invention are for maximizing the life of a black box flash memory for an aircraft.
본 발명의 실시 예들은 항공기용 블랙박스 플래시 메모리에서 동적으로 데이터 종류에 따른 메모리 영역을 변경함으로써, 항공기용 블랙박스 플래시 메모리 장치의 수명을 극대화할 수 있다.Embodiments of the present invention can maximize the lifetime of a black box flash memory device for an aircraft by dynamically changing memory areas according to data types in an airplane black box flash memory.
또한, 본 발명의 실시 예들은 사고 보호 메모리 내부의 플래시 메모리의 웨어 레벨링(Wear-Leveling)이 가능하여,사고 보호 메모리의 수명을 극대화할 수 있다.In addition, embodiments of the present invention enable wear-leveling of a flash memory in an accident protection memory, thereby maximizing the life of the accident protection memory.
도 1은 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치의 구성도이다.
도 2a 내지 도 2e는 플래시 메모리의 일반적인 덮어쓰기 과정에 대한 설명도이다.
도 3a 내지 도 3e는 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 과정에 대한 설명도이다.
도 4는 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치에서의 메모리 상태 천이에 대한 설명도이다.
도 5는 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 방법에 대한 흐름도이다.1 is a block diagram of a flash memory overwriting apparatus according to an embodiment of the present invention.
2A to 2E are explanatory diagrams of a general overwrite process of the flash memory.
FIGS. 3A to 3E are explanatory diagrams of a process of overwriting a flash memory according to an embodiment of the present invention.
4 is an explanatory diagram of a memory state transition in an overwrite apparatus of a flash memory according to an embodiment of the present invention.
5 is a flowchart illustrating a method of overwriting a flash memory according to an embodiment of the present invention.
이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 설명한다. 본 발명에 따른 동작 및 작용을 이해하는 데 필요한 부분을 중심으로 상세히 설명한다. 본 발명의 실시 예를 설명하면서, 본 발명이 속하는 기술 분야에 익히 알려졌고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. The present invention will be described in detail with reference to the portions necessary for understanding the operation and operation according to the present invention. In describing the embodiments of the present invention, description of technical contents which are well known in the art to which the present invention belongs and which are not directly related to the present invention will be omitted. This is for the sake of clarity of the present invention without omitting the unnecessary explanation.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 동일한 명칭의 구성 요소에 대하여 도면에 따라 다른 참조부호를 부여할 수도 있으며, 서로 다른 도면임에도 동일한 참조부호를 부여할 수도 있다. 그러나 이와 같은 경우라 하더라도 해당 구성 요소가 실시 예에 따라 서로 다른 기능을 갖는다는 것을 의미하거나, 서로 다른 실시 예에서 동일한 기능을 갖는다는 것을 의미하는 것은 아니며, 각각의 구성 요소의 기능은 해당 실시 예에서의 각각의 구성 요소에 대한 설명에 기초하여 판단하여야 할 것이다.In describing the constituent elements of the present invention, the same reference numerals may be given to constituent elements having the same name, and the same reference numerals may be given to different drawings. However, even in such a case, it does not mean that the corresponding component has different functions according to the embodiment, or does not mean that it has the same function in different embodiments, and the function of each component is different from that of the corresponding embodiment Based on the description of each component in FIG.
도 1은 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치의 구성도이다.1 is a block diagram of a flash memory overwriting apparatus according to an embodiment of the present invention.
도 1에 도시된 바와 같이, 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치(100)는 복수의 메모리 영역에 데이터를 쓰는 작업을 수행한다.As shown in FIG. 1, an
본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치(100)는 이벤트 확인부(110), 메모리 변경부(120), 메모리 교체부(130) 및 메모리 설정부(140)를 포함한다.The
이하, 도 1의 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치(100)의 각 구성요소들의 구체적인 구성 및 동작을 설명한다.The specific configuration and operation of each component of the flash
이벤트 확인부(110)는 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하는지를 확인한다.The
메모리 변경부(120)는 플래시 메모리의 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경한다.The memory change unit 120 changes the protection memory area where the protection time has been exceeded in the plurality of memory areas of the flash memory to the preparation memory area.
여기서, 메모리 변경부(120)는, 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하는지를 확인한다. 상기 확인 결과, 보호 메모리 영역이 존재하면, 메모리 변경부(120)는, 보호 메모리 영역의 보호 시간이 초과된 보호 메모리 영역을 준비 메모리 영역으로 변경할 수 있다. 메모리 변경부(120)는, 보호 시간이 초과된 보호 메모리 영역을 기설정된 최소 보존 시간이 이후에 덮어쓰기가 허용되는 준비 메모리 영역으로 변경할 수 있다.Here, the memory change unit 120 confirms whether or not a protected memory area exists in a plurality of memory areas of the flash memory. If it is determined that the protection memory area exists, the memory change unit 120 may change the protection memory area where the protection time of the protection memory area is exceeded to the preparation memory area. The memory change unit 120 may change the protected memory area for which the protection time has been exceeded to a ready memory area in which a predetermined minimum storage time is allowed to be overwritten later.
메모리 교체부(130)는 덮어쓰기(Cycle) 횟수가 가장 많은 이전 메모리 영역을 준비(Ready) 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체한다.The
여기서, 메모리 교체부(130)는, 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인한다. 상기 확인 결과, 준비 메모리 영역이 존재하면, 메모리 교체부(130)는, 덮어쓰기 횟수가 가장 많은 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체할 수 있다. 반면, 상기 확인 결과, 준비 메모리 영역이 존재하지 않으면, 메모리 교체부(130)는, 메모리 교체 과정을 종료할 수 있다. 메모리 교체부(130)는, 고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체할 수 있다.Here, the
또한, 메모리 교체부(130)는, 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인한다. 상기 확인 결과, 준비 메모리 영역이 존재하면, 메모리 교체부(130)는, 고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체할 수 있다. 반면, 상기 확인 결과, 준비 메모리 영역이 존재하지 않으면, 메모리 교체부(130)는 메모리 교체 과정을 종료할 수 있다.The
한편, 메모리 설정부(140)는 메모리 교체부(130)에서 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정한다. 메모리 설정부(140)는 메모리 교체부(130)에서 교체된 이전 메모리 영역을 기설정된 최소 보존 시간 이내에 덮어쓰기가 허용되지 않는 보호 메모리 영역으로 설정할 수 있다.On the other hand, the
도 2a 내지 도 2e는 플래시 메모리의 일반적인 덮어쓰기 과정에 대한 설명도이다.2A to 2E are explanatory diagrams of a general overwrite process of the flash memory.
우선, 고려되어야 사항을 살펴보면, 시간당 데이터양이 다르기 때문에, 메모리 필링 레이트(filling rate)가 달라진다. 예컨대, 음성(Voice)은 4Hr/Turn, 비행 데이터는 36Hr/Turn의 필링 레이트를 가진다. 상기에서 필링 레이트는 메모리에 기록하는 데이터가 채워지는 속도를 의미한다. 또한, 필수 저장 시간은 항공기 종류별로 다르다. 예컨대, 음성(Voice)은 2시간 이상 필수로 저장되어야 한다. 비행 데이터는 25시간 이상 필수로 저장되어야 한다. 따라서 예비 메모리 영역이 1개 이상 필요하게 된다.First, considering the matters to be considered, since the amount of data per hour is different, the memory filling rate is changed. For example, Voice has 4Hr / Turn and flight data has a fill rate of 36Hr / Turn. In this case, the filling rate means a rate at which data to be written into the memory is filled. In addition, the required storage time differs for each type of aircraft. For example, a voice must be stored as essential for at least two hours. Flight data must be stored as required for at least 25 hours. Therefore, at least one spare memory area is required.
기록 영역은 데이터 종류별로 구분되어 있다. 음성 및 비행 데이터는 ED-112 규격에 따라 물리적으로 구분되어 있다. 여기서, 동적인 재배치를 위한 예비(Reserved) 영역이 필요하다.The recording area is divided into data types. Voice and flight data are physically separated according to the ED-112 standard. Here, a reserved area for dynamic relocation is required.
일례로, 사고 보호 메모리에는 플래시 메모리 칩이 8개 있다. 저장하는 데이터 종류는 음성 데이터와 비행 데이터 2종류이다. 음성 데이터는 플래시 메모리 칩이 2개가 사용되어 4시간 동안 가득 채우게 된다. 기록된 데이터는 최소 2시간 동안 보존해야 한다. 비행 데이터는 플래시 메모리 칩 4개가 사용되어 36시간 동안 가득 채우게 된다. 기록된 데이터는 죄소 25시간 동안 보존해야 한다. 비행 데이터는 하나의 메모리 칩에 16초 이상의 연속 데이터를 저장할 수 없는 ED-112의 제약에 의해 덮어쓰기 방식이 적용된다. 음성 및 비행 데이터 모두 메모리 공간이 가득 차면 오래된 데이터부터 덮어 써야 한다.For example, there are eight flash memory chips in the accident protection memory. There are two kinds of data to be stored: voice data and flight data. The voice data is occupied for two to four hours using two flash memory chips. Recorded data should be retained for a minimum of 2 hours. The flight data is filled with four flash memory chips for 36 hours. Recorded data should be kept for 25 hours. Flight data is overwritten by the constraint of ED-112, which can not store more than 16 seconds of continuous data on one memory chip. Both voice and flight data should be overwritten with old data if memory space is full.
도 2a에 도시된 바와 같이, 기본 상태는 8개의 플래시 메모리 중에서 1번, 2번 메모리에 음성 데이터가 기록되고, 3번 내지 6번 메모리에 비행 데이터가 기록된다.As shown in FIG. 2A, in the basic state, voice data is recorded in
도 2b에 도시된 바와 같이, 4시간이 지나면 음성 데이터 영역이 모두 가득 차게 된다. 예비(Reserved) 영역인 7번 및 8번으로 옮겨서 음성 데이터는 계속 기록된다. 여기서, 도면에 도시된 턴(Turn) 숫자는 메모리를 가득 채운 횟수이다.As shown in FIG. 2B, after four hours have elapsed, all the voice data areas are filled up. The voice data is continuously recorded in the reserved areas 7 and 8. Here, the number of turns shown in the drawing is the number of times the memory is filled.
도 2c에 도시된 바와 같이, 8시간이 지나면 7번 및 8번 메모리 영역도 새로운 음성 데이터로 가득 차게 된다. 음성 데이터는 다시 1번, 2번 메모리로 옮겨서 가장 오래된 영역부터 덮어쓰기 하며 기록된다. 이때, 이미 최소 보존 시간인 2시간이 지났기 때문에 문제는 없다. 4시간에 한 번씩 이런 기록에 따라 음성 데이터 영역 교체가 이루어진다.As shown in FIG. 2C, after 8 hours, the memory areas 7 and 8 are filled with new voice data. The voice data is moved to the first and second memories again and overwritten from the oldest area. At this time, there is no problem since the minimum retention time of 2 hours has passed. Replace the voice data area with this record once every four hours.
도 2d에 도시된 바와 같이, 36시간이 지나 비행 데이터 영역이 모두 채워지면,비행 데이터 영역은 그때 남은 예비(Reserved) 영역으로 메모리 교체가 이루어진다. 그 예비 영역은 4시간 전의 음성 데이터가 채워져 있던 영역이기에 새로운 비행 데이터에 의해 덮어 쓰여 져도 문제가 없다.As shown in FIG. 2D, when the flight data area is filled up after 36 hours, the flight data area is replaced with a reserved area that is then left. Since the reserved area is the area filled with voice data four hours ago, there is no problem even if it is overwritten by new flight data.
도 2e에 도시된 바와 같이, 40시간이 지나 다시 음성 데이터 영역의 교체가 이루어질 때 문제가 발생하게 된다. 음성 데이터 영역으로 교체된 영역은 앞으로 4시간 이내에 모두 덮여 쓰여 지게 된다. 그러면 기록한 비행 데이터를 최소 25시간을 보존해야 하는 제약을 위배하게 된다.As shown in FIG. 2E, when the audio data area is replaced again after 40 hours, a problem occurs. The area replaced with the voice data area will be overwritten within the next 4 hours. This breaches the constraint of keeping at least 25 hours of recorded flight data.
이와 같이, 필링 레이트(Filling Rate)가 빠른 영역이 느린 영역의 데이터를 최소 보존 시간 이내에 덮어쓰기 할 수 있기 때문에 보완이 필요하다.As described above, it is necessary to supplement the data in the area where the fast filling rate is slow, within the minimum storage time.
도 3a 내지 도 3e는 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 과정에 대한 설명도이다.FIGS. 3A to 3E are explanatory diagrams of a process of overwriting a flash memory according to an embodiment of the present invention.
본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 과정에서는 일반적인 예비(Reserved) 메모리 영역을 준비(Ready) 메모리 영역 영역과 보호(Protection) 메모리 영역으로 세분화되어 있다.In the overwriting process of the flash memory according to the embodiment of the present invention, a general reserved memory area is subdivided into a ready memory area and a protection memory area.
준비 메모리 영역은 턴(Turn) 또는 결함 발생 시 교체 가능한 영역을 나타낸다. 또한, 보호 메모리 영역은 기존 데이터를 보존해야 하는 영역을 나타낸다. 여기서, 준비 메모리 영역과 보호 메모리 영역의 판단 기준은 기존 데이터의 기설정된 필수 보존 시간이 될 수 있다. 예컨대, 판단 기준은 음성이 2시간, 비행 데이터가 25시간이 될 수 있다.The ready memory area indicates a turnable area or a replaceable area when a defect occurs. Also, the protected memory area represents an area in which existing data should be stored. Here, the judgment criterion of the preparation memory area and the protection memory area may be the predetermined required storage time of the existing data. For example, the criterion may be 2 hours for voice and 25 hours for flight data.
본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치(100)는 일반적인 예비(Reserved) 영역을 두 종류로 구분한다. 보호 메모리 영역 영역은 기설정된 최소 보존 시간이 지나지 않았을 때 덮어쓰기를 할 수 없는 영역이고,준비 메모리 영역은 기설정된 최소 보존시간이 지나 덮어쓰기가 허용되는 영역이다. 따라서,본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치(100)는 준비 메모리 영역에 필링 레이트가 빠른 영역을 할당할 수 있다. 그리고 단일 플래시 칩에 결함이 발생한 경우, 플래시 메모리의 덮어쓰기 장치(100)는 고장(Failure) 메모리 영역으로 설정한다. 그래서 해당 플래시 칩을 사용하지 못하도록 한다면, 단일 플래시 칩 결함으로 사고 보호 메모리를 교체할 필요가 없다.The
도 3a에 도시된 바와 같이, 기본 상태는 8개의 플래시 메모리 중에서 1번, 2번 메모리에 음성 데이터가 기록되고, 3번 내지 6번 메모리에 비행 데이터가 기록된다.As shown in FIG. 3A, in the basic state, voice data is recorded in
도 3b에 도시된 바와 같이, 4시간이 지나면 음성 데이터 영역이 모두 가득 차게 된다. 플래시 메모리의 덮어쓰기 장치(100)는 1번 메모리를 보호 메모리 영역으로 설정하고, 2시간 이후에 준비 메모리 영역으로 변경하는 것을 설정한다. 또한, 플래시 메모리의 덮어쓰기 장치(100)는 7번 메모리에 음성 데이터 1을 기록한다.As shown in FIG. 3B, after 4 hours have elapsed, the voice data area becomes full. The
도 3c에 도시된 바와 같이, 8시간이 지나면 1번 메모리는 준비 메모리 영역으로 변경된다. 플래시 메모리의 덮어쓰기 장치(100)는 2번 메모리를 보호 메모리 영역으로 설정하고, 2시간 이후에 준비 메모리 영역으로 변경하는 것을 설정한다. 또한, 플래시 메모리의 덮어쓰기 장치(100)는 8번 메모리에 음성 데이터 2를 기록한다.As shown in FIG. 3C, after eight hours, the
도 3d에 도시된 바와 같이, 36시간이 지나 비행 데이터 영역이 모두 채워지면,플래시 메모리의 덮어쓰기 장치(100)는 2번 메모리가 준비 메모리 영역으로 변경되고, 그 변경된 준비 메모리 영역에 비행 데이터 1을 기록한다. 그리고 플래시 메모리의 덮어쓰기 장치(100)는 3번 메모리를 보호 메모리 영역으로 설정하고, 25시간 이후에 준비 메모리 영역으로 변경하는 것을 설정한다. 또한, 플래시 메모리의 덮어쓰기 장치(100)는 1번 메모리에 음성 데이터 1을 기록한다.As shown in FIG. 3D, when all of the flight data areas are filled in after 36 hours, the
도 3e에 도시된 바와 같이, 40시간이 지나면, 플래시 메모리의 덮어쓰기 장치(100)는 1번 메모리를 보호 메모리 영역으로 설정하고, 2시간 이후에 준비 메모리 영역으로 변경하는 것을 설정한다. 이때, 3번 메모리는 도 3d으로부터 4시간이 지났기 때문에, 21시간 이후에 준비 메모리 영역으로 변경되는 것으로 설정되어 있다. 또한, 플래시 메모리의 덮어쓰기 장치(100)는 7번 메모리에 음성 데이터 1을 기록한다.As shown in FIG. 3E, after 40 hours, the
이와 같이, 음성 데이터 영역의 교체가 이루어질 때 문제가 발생하지 않게 된다. 또한, 기록한 비행 데이터는 최소 25시간을 보존해야 하는 제약을 위배하지 않게 된다.As described above, no problem occurs when the audio data area is replaced. In addition, the recorded flight data will not violate the constraint of at least 25 hours of storage.
한편, 플래시 메모리의 덮어쓰기 장치(100)는 데이터 기록 중에서 단일 메모리 결함이 발생하는 경우, 결함이 발생한 메모리를 고장 메모리 영역으로 표시한다. 그리고 플래시 메모리의 덮어쓰기 장치(100)는 고장 메모리 영역을 준비 메모리 영역으로 교체한다.On the other hand, when a single memory defect occurs in the data recording, the
일례로, 본 발명의 실시 예는 용이한 설명을 위해 두 종류의 데이터 즉, 음성 데이터 및 비행 데이터와, 8개의 메모리 칩에 적용한 것이다. 본 발명의 실시 예는 3가지 이상의 데이터 종류와 n 개의 메모리 칩에 대해 같은 방법으로 적용할 수 있다.For example, the embodiment of the present invention is applied to two kinds of data, that is, voice data and flight data, and eight memory chips for easy explanation. Embodiments of the present invention can be applied to three or more types of data and n memory chips in the same manner.
도 4는 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 장치에서의 메모리 상태 천이에 대한 설명도이다.4 is an explanatory diagram of a memory state transition in an overwrite apparatus of a flash memory according to an embodiment of the present invention.
플래시 메모리 상태의 천이가 도 4에 나타나 있다. The transition of the flash memory state is shown in FIG.
도 4에 도시된 바와 같이, 플래시 메모리 상태는 준비 메모리 상태(401), 기록 메모리 상태(402), 보호 메모리 상태(403) 및 고장 메모리 상태(404)의 4개의 메모리 상태로 구분된다.As shown in FIG. 4, the flash memory state is divided into four memory states:
우선, 준비 메모리 상태(401)에서 메모리 영역의 교체 이벤트(예컨대, 턴 발생 또는 결함 발생)가 발생하게 되면, 메모리 영역은 기록 메모리 상태(402)로 이동하게 된다.First, when a replacement event (for example, a turn occurrence or a fault occurrence) of a memory area occurs in the
교체 이벤트가 턴 발생인 경우, 기록 메모리 상태(402)에서 메모리 영역은 보호 메모리 상태(403)로 이동하게 된다.If the replacement event is a turn-on, the memory area in the
보호 메모리 상태(403)에서 기설정된 최소 보호 시간이 지나게 되면, 메모리 영역은 준비 메모리 상태(401)로 복귀하게 된다.When the predetermined minimum guard time has elapsed in the protected
한편, 교체 이벤트가 결함 발생인 경우, 기록 메모리 상태(402)에서 메모리 영역은 고장 메모리 상태(404)로 이동하게 된다.On the other hand, if the replacement event is a fault occurrence, the memory area in the
도 5는 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 방법에 대한 흐름도이다.5 is a flowchart illustrating a method of overwriting a flash memory according to an embodiment of the present invention.
도 5에 도시된 바와 같이, 플래시 메모리의 덮어쓰기 장치(100)는 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하는지를 확인한다.As shown in FIG. 5, the
상기 확인 결과(S110), 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하면, 플래시 메모리의 덮어쓰기 장치(100)는 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하는지를 확인한다(S120). 반면, 상기 확인 결과(S110), 플래시 메모리의 복수 메모리 영역에서 메모리 교체 이벤트가 발생하지 않으면, 플래시 메모리의 덮어쓰기 장치(100)는 메모리 교체 이벤트가 발생하는지를 확인하는 S110 과정을 반복적으로 수행한다.As a result of the check (S110), when a memory replacement event occurs in a plurality of memory areas of the flash memory, the
상기 확인 결과(S120), 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하면, 플래시 메모리의 덮어쓰기 장치(100)는 보호 메모리 영역의 보호 시간이 초과되는지를 확인한다(S130). As a result of the check (S120), if there is a protected memory area in a plurality of memory areas of the flash memory, the
상기 확인 결과(S130), 보호 메모리 영역의 보호 시간이 초과하면, 플래시 메모리의 덮어쓰기 장치(100)는 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경한다(S140). 즉, S140 과정에서, 플래시 메모리의 덮어쓰기 장치(100)는 보호 시간이 초과된 보호 메모리 영역을 기설정된 최소 보존 시간이 이후에 덮어쓰기가 허용되는 준비 메모리 영역으로 변경할 수 있다.If the protection time of the protection memory area is exceeded (S130), the
한편, 상기 확인 결과(S120), 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하지 않으면, 플래시 메모리의 덮어쓰기 장치(100)는 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인한다(S150). On the other hand, if it is determined in step S120 that the protected memory area does not exist in the plurality of memory areas of the flash memory, the
상기 확인 결과(S150), 복수 메모리 영역에서 준비 메모리 영역이 존재하면, 플래시 메모리의 덮어쓰기 장치(100)는 덮어쓰기 횟수가 가장 많은 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체한다(S160). 반면, 상기 확인 결과(S150), 준비 메모리 영역이 존재하지 않으면, 플래시 메모리의 덮어쓰기 장치(100)는 메모리 교체 과정을 종료한다.As a result of the check (S150), if there is a ready memory area in a plurality of memory areas, the
덮어쓰기 횟수가 가장 많은 이전 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체한 후, 플래시 메모리의 덮어쓰기 장치(100)는 그 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정한다(S170).After replacing the old memory area having the largest overwrite frequency with the memory area having the smallest overwrite frequency among the ready memory area, the
한편, 상기 확인 결과(S130), 보호 메모리 영역의 보호 시간이 초과하지 않으면, 플래시 메모리의 덮어쓰기 장치(100)는 준비 메모리 영역이 존재하는지를 확인하는 S150 과정을 수행한다.On the other hand, if the protection time of the protection memory area is not exceeded (S130), the
한편, 고장 메모리 영역을 교체하고 보호 메모리 영역으로 설정하는 실시 예에 대해서 살펴보기로 한다.Meanwhile, an embodiment will be described in which the fault memory area is replaced and the protection memory area is set.
상기 확인 결과(S150), 복수 메모리 영역에서 준비 메모리 영역이 존재하면, 플래시 메모리의 덮어쓰기 장치(100)는 S160 과정에서 고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체할 수 있다.As a result of the check (S150), if there is a ready memory area in a plurality of memory areas, the
고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체한 후, 플래시 메모리의 덮어쓰기 장치(100)는 S170 과정에서 그 교체된 고장 메모리 영역을 보호 메모리 영역으로 설정할 수 있다.After replacing the fault memory area with a memory area having the smallest overwrite frequency among the ready memory areas, the
이와 같이, 항공기용 블랙박스 소프트웨어에 본 발명의 실시 예에 따른 플래시 메모리의 덮어쓰기 방법을 적용하면, 사고 보호 메모리 내부의 모든 메모리들이 운용시간이 흐를수록 웨어-레벨링(Wear-Leveling)이 적용되어 수명이 극대화될 수 있다. 단일 메모리 칩의 결함으로 사고 보호 메모리를 교체할 필요가 없어진다.If the overwriting method of the flash memory according to the embodiment of the present invention is applied to the black box software for aircraft, wear-leveling is applied as the operating time of all memories in the accident protection memory The life span can be maximized. The failure of a single memory chip eliminates the need to replace accidental memory.
이상에서 설명한 실시 예들은 그 일 예로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or essential characteristics thereof. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
100: 플래시 메모리의 덮어쓰기 장치
110: 이벤트 확인부
120: 메모리 변경부
130: 메모리 교체부
140: 메모리 설정부100: Overwriting device of flash memory
110: Event confirmation unit
120: Memory change section
130: memory replacement unit
140: memory setting unit
Claims (15)
상기 플래시 메모리의 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경하는 메모리 변경 단계;
덮어쓰기(Cycle) 횟수가 가장 많은 이전 메모리 영역을 준비(Ready) 메모리 영역 중에서 상기 결함과 관련된 고장 메모리 영역을 제외하고 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 제1 메모리 교체 단계; 및
상기 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정하는 메모리 설정 단계
를 포함하는 플래시 메모리의 덮어쓰기 방법.A check is made as to whether or not a memory replacement event occurs in a plurality of memory areas of the flash memory and whether or not the memory replacement event has occurred based on whether or not a protection time has been exceeded for each memory area and whether a defect has occurred in each memory area An event confirmation step;
A memory changing step of changing a protection memory area exceeding a protection time in a plurality of memory areas of the flash memory to a preparation memory area;
A first memory replacement step of replacing a previous memory area having the largest number of overwrite cycles with a memory area having a least overwrite frequency, excluding a fault memory area related to the defects in a ready memory area; And
A memory setting step of setting the replaced previous memory area as a protected memory area
And overwriting the flash memory.
상기 메모리 변경 단계는,
상기 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하는지를 확인하는 단계;
보호 메모리 영역이 존재하면, 보호 메모리 영역의 보호 시간이 초과되는지를 확인하는 단계; 및
보호 메모리 영역의 보호 시간이 초과되면, 보호 시간이 초과된 보호 메모리 영역을 준비 메모리 영역으로 변경하는 단계
를 포함하는 플래시 메모리의 덮어쓰기 방법.The method according to claim 1,
Wherein, in the memory changing step,
Confirming whether a protected memory area exists in a plurality of memory areas of the flash memory;
Confirming whether the protection time of the protection memory area is exceeded when the protection memory area exists; And
When the protection time of the protection memory area is exceeded, changing the protection memory area exceeding the protection time to the preparation memory area
And overwriting the flash memory.
상기 준비 메모리 영역으로 변경하는 단계는,
보호 시간이 초과된 보호 메모리 영역을 기설정된 최소 보존 시간이 이후에 덮어쓰기가 허용되는 준비 메모리 영역으로 변경하는 플래시 메모리의 덮어쓰기 방법.3. The method of claim 2,
Wherein the step of changing to the ready memory area comprises:
A method for overwriting a protected memory area that has exceeded a protection time to a ready memory area in which a predetermined minimum holding time is allowed to be overwritten at a later time.
상기 제1 메모리 교체 단계는,
상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하는 단계;
준비 메모리 영역이 존재하면, 덮어쓰기 횟수가 가장 많은 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 단계; 및
준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료하는 단계
를 포함하는 플래시 메모리의 덮어쓰기 방법.The method according to claim 1,
Wherein the first memory replacement step comprises:
Confirming whether a ready memory area exists in a plurality of memory areas of the flash memory;
Replacing a memory area having the largest overwrite frequency with a memory area having the smallest overwrite frequency among the ready memory areas when the ready memory area exists; And
If the ready memory area does not exist, the step of terminating the memory replacement process
And overwriting the flash memory.
고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 제2 메모리 교체 단계
를 더 포함하는 플래시 메모리의 덮어쓰기 방법.The method according to claim 1,
A second memory replacement step of replacing the fault memory area with a memory area having the smallest overwrite frequency among the ready memory areas
And overwriting the flash memory.
상기 제2 메모리 교체 단계는,
상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하는 단계;
준비 메모리 영역이 존재하면, 고장 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 단계; 및
준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료하는 단계
를 포함하는 플래시 메모리의 덮어쓰기 방법.6. The method of claim 5,
Wherein the second memory replacement step comprises:
Confirming whether a ready memory area exists in a plurality of memory areas of the flash memory;
Replacing the fault memory area with a memory area having the smallest overwriting frequency among the ready memory areas if a ready memory area exists; And
If the ready memory area does not exist, the step of terminating the memory replacement process
And overwriting the flash memory.
상기 메모리 설정 단계는,
상기 교체된 이전 메모리 영역을 기설정된 최소 보존 시간 이내에 덮어쓰기가 허용되지 않는 보호 메모리 영역으로 설정하는 플래시 메모리의 덮어쓰기 방법.The method according to claim 1,
Wherein the memory setting step comprises:
And setting the replaced old memory area as a protected memory area that is not allowed to be overwritten within a preset minimum storage time.
상기 플래시 메모리의 복수 메모리 영역에서 보호 시간이 초과된 보호(Protective) 메모리 영역을 준비 메모리 영역으로 변경하는 메모리 변경부;
덮어쓰기(Cycle) 횟수가 가장 많은 이전 메모리 영역을 준비(Ready) 메모리 영역 중에서 상기 결함과 관련된 고장 메모리 영역을 제외하고 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 메모리 교체부; 및
상기 교체된 이전 메모리 영역을 보호 메모리 영역으로 설정하는 메모리 설정부
를 포함하는 플래시 메모리의 덮어쓰기 장치.A check is made as to whether or not a memory replacement event occurs in a plurality of memory areas of the flash memory and whether or not the memory replacement event has occurred based on whether or not a protection time has been exceeded for each memory area and whether a defect has occurred in each memory area An event confirmation unit;
A memory changing unit for changing a protection memory area exceeding a protection time in a plurality of memory areas of the flash memory into a preparation memory area;
A memory replacement unit for replacing a previous memory area having the largest number of overwrite cycles with a memory area having a least overwrite frequency except for a fault memory area related to the defect among a ready memory area; And
A memory setting unit for setting the replaced previous memory area as a protected memory area,
And an overwrite device for overwriting the flash memory.
상기 메모리 변경부는,
상기 플래시 메모리의 복수 메모리 영역에서 보호 메모리 영역이 존재하는지를 확인하고, 보호 메모리 영역이 존재하면, 보호 메모리 영역의 보호 시간이 초과된 보호 메모리 영역을 준비 메모리 영역으로 변경하는 플래시 메모리의 덮어쓰기 장치.10. The method of claim 9,
Wherein the memory changing unit comprises:
And a protection memory area in which the protection time of the protection memory area is exceeded when the protection memory area exists, into the preparation memory area, in the presence of the protection memory area in the plurality of memory areas of the flash memory.
상기 메모리 변경부는,
보호 시간이 초과된 보호 메모리 영역을 기설정된 최소 보존 시간이 이후에 덮어쓰기가 허용되는 준비 메모리 영역으로 변경하는 플래시 메모리의 덮어쓰기 장치.11. The method of claim 10,
Wherein the memory changing unit comprises:
And overwrites the protected memory area that has exceeded the protection time with a predetermined minimum storage time later in a ready memory area that is allowed to be overwritten.
상기 메모리 교체부는,
상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하고, 준비 메모리 영역이 존재하면, 덮어쓰기 횟수가 가장 많은 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하고, 준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료하는 플래시 메모리의 덮어쓰기 장치.10. The method of claim 9,
The memory-
And a step of replacing a memory area having the largest overwrite frequency with a memory area having the smallest overwrite frequency among the ready memory areas, if a ready memory area is present in the plurality of memory areas of the flash memory, An overwrite device of the flash memory that terminates the memory replacement process when the ready memory area does not exist.
상기 메모리 교체부는,
고장 메모리 영역을 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하는 플래시 메모리의 덮어쓰기 장치.10. The method of claim 9,
The memory-
An overwriting device in the flash memory that replaces the fault memory area with the memory area with the least number of overwriting cycles.
상기 메모리 교체부는,
상기 플래시 메모리의 복수 메모리 영역에서 준비 메모리 영역이 존재하는지를 확인하고, 준비 메모리 영역이 존재하면, 고장 메모리 영역을 상기 준비 메모리 영역 중 덮어쓰기 횟수가 가장 적은 메모리 영역과 교체하고, 준비 메모리 영역이 존재하지 않으면, 메모리 교체 과정을 종료하는 플래시 메모리의 덮어쓰기 장치.14. The method of claim 13,
The memory-
A spare memory area is replaced with a memory area having the smallest overwriting frequency among the spare memory areas and a spare memory area is present in the spare memory area, If not, the flash memory overwriting device terminates the memory replacement process.
상기 메모리 설정부는,
상기 교체된 이전 메모리 영역을 기설정된 최소 보존 시간 이내에 덮어쓰기가 허용되지 않는 보호 메모리 영역으로 설정하는 플래시 메모리의 덮어쓰기 장치.10. The method of claim 9,
Wherein the memory setting unit comprises:
And sets the replaced old memory area to a protected memory area that is not allowed to be overwritten within a preset minimum storage time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160125130A KR101777383B1 (en) | 2016-09-28 | 2016-09-28 | Apparatus and method for overwritting flash memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160125130A KR101777383B1 (en) | 2016-09-28 | 2016-09-28 | Apparatus and method for overwritting flash memory |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101777383B1 true KR101777383B1 (en) | 2017-09-11 |
Family
ID=59926081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160125130A KR101777383B1 (en) | 2016-09-28 | 2016-09-28 | Apparatus and method for overwritting flash memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101777383B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101083054B1 (en) | 2010-05-24 | 2011-11-16 | 엘아이지넥스원 주식회사 | Flash memory overwriting method and device |
-
2016
- 2016-09-28 KR KR1020160125130A patent/KR101777383B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101083054B1 (en) | 2010-05-24 | 2011-11-16 | 엘아이지넥스원 주식회사 | Flash memory overwriting method and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100781976B1 (en) | Method for Providing Block State Information in Semiconductor Memory Device Having Flash Memory | |
US8151137B2 (en) | Systems and methods for governing the life cycle of a solid state drive | |
US8176367B2 (en) | Systems and methods for managing end of life in a solid state drive | |
CN104461391A (en) | Method and system for managing and processing metadata of storage equipment | |
US20170060768A1 (en) | Supporting invalidation commands for non-volatile memory | |
CN103513942B (en) | The reconstructing method of raid-array and device | |
CN106339276B (en) | A kind of data reconstruction method and system based on data backup status | |
CN102033793A (en) | Snapshot method and solid-state hard disk | |
CN102999399B (en) | The method and apparatus that a kind of JBOD array is automatically renewed | |
CN104615381B (en) | A kind of redundant arrays of inexpensive disks of video monitoring system | |
WO2015145552A1 (en) | Nonvolatile memory device and storage device having nonvolatile memory device | |
JP2013222435A (en) | Semiconductor storage device and method of controlling the same | |
CN101526885A (en) | Method for improving capability of redundant array of independent disk and controller therefor | |
CN105224891A (en) | Magnetic disc optic disc fused data method for secure storing, system and device | |
CN108255630A (en) | A kind of method for reducing solid state disk powered-off fault processing time | |
KR20150038290A (en) | Flash translation layer (FTL) database journaling schemes | |
KR102574354B1 (en) | Efficient data storage usage associated with ungraceful shutdown | |
CN103729149A (en) | Data storage method | |
US20090083503A1 (en) | System of creating logical volume and method thereof | |
CN103678025A (en) | Method for processing disk failures of redundant arrays of independent disks | |
CN105095352B (en) | Data processing method and device applied to distributed system | |
KR101777383B1 (en) | Apparatus and method for overwritting flash memory | |
CN109753224B (en) | Storage structure and storage structure configuration method | |
CN100492323C (en) | Method and apparatus for protecting caching content and caching controller thereof | |
US8335885B2 (en) | Storage device and method of accessing a status thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20160928 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20170306 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20160928 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20170317 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20170724 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20170905 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20170905 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20200805 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20220608 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20230509 Start annual number: 7 End annual number: 7 |