KR20060106993A - 플래시 메모리 데이터 저장 방법 - Google Patents

플래시 메모리 데이터 저장 방법 Download PDF

Info

Publication number
KR20060106993A
KR20060106993A KR1020050028413A KR20050028413A KR20060106993A KR 20060106993 A KR20060106993 A KR 20060106993A KR 1020050028413 A KR1020050028413 A KR 1020050028413A KR 20050028413 A KR20050028413 A KR 20050028413A KR 20060106993 A KR20060106993 A KR 20060106993A
Authority
KR
South Korea
Prior art keywords
data
storage
input
stored
flash memory
Prior art date
Application number
KR1020050028413A
Other languages
English (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 KR1020050028413A priority Critical patent/KR20060106993A/ko
Publication of KR20060106993A publication Critical patent/KR20060106993A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62HCYCLE STANDS; SUPPORTS OR HOLDERS FOR PARKING OR STORING CYCLES; APPLIANCES PREVENTING OR INDICATING UNAUTHORIZED USE OR THEFT OF CYCLES; LOCKS INTEGRAL WITH CYCLES; DEVICES FOR LEARNING TO RIDE CYCLES
    • B62H5/00Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles
    • B62H5/02Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles for locking the steering mechanism
    • B62H5/04Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles for locking the steering mechanism acting on the handlebars or equivalent
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62HCYCLE STANDS; SUPPORTS OR HOLDERS FOR PARKING OR STORING CYCLES; APPLIANCES PREVENTING OR INDICATING UNAUTHORIZED USE OR THEFT OF CYCLES; LOCKS INTEGRAL WITH CYCLES; DEVICES FOR LEARNING TO RIDE CYCLES
    • B62H5/00Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles
    • B62H5/005Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles acting on the stand
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62HCYCLE STANDS; SUPPORTS OR HOLDERS FOR PARKING OR STORING CYCLES; APPLIANCES PREVENTING OR INDICATING UNAUTHORIZED USE OR THEFT OF CYCLES; LOCKS INTEGRAL WITH CYCLES; DEVICES FOR LEARNING TO RIDE CYCLES
    • B62H5/00Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles
    • B62H5/08Appliances preventing or indicating unauthorised use or theft of cycles; Locks integral with cycles preventing the drive

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 플래시 메모리 데이터 저장 방법에 관한 것이다.
본 발명의 다수의 섹터를 포함하는 플래시 메모리에 데이터를 저장하는 방법은 입력되는 데이터를 데이터 인덱스와 함께 입력 순서에 따라 순차적으로 데이터 저장 영역에 저장하는 단계, 상기 데이터 저장 영역내 모든 섹터에 데이터 저장 공간이 없는 경우, 데이터 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하고, 입력되는 데이터를 상기 데이터 저장 공간에 저장하는 단계 및 상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하여 데이터 정렬 정보를 작성하는 단계를 포함한다.
플래시 메모리, 데이터 저장

Description

플래시 메모리 데이터 저장 방법 {METHOD FOR STORING DATA IN FLASH MEMORY}
도 1 은 다수의 섹터를 포함하는 플래시 메모리의 구성에 대한 개념도이다.
도 2 는 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법에 사용되는 플래시 메모리의 내부 구성도이다.
도 3 은 본 발명의 제 1 실시예에 따른 플래시 메모리의 데이터 영역의 구성도이다.
도 4 는 본 발명의 제 1 실시예에 따른 플래시 메모리의 데이터 영역의 상세 구성도이다.
도 5 는 본 발명의 제 1 실시예에 따른 이벤트 영역의 구성도이다.
도 6 는 본 발명의 제 1 실시예에 따른 이벤트 데이터 영역의 섹터별 구성도이다.
도 7은 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법의 순서도이다.
도 8 은 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법 중데이터 저장 방법의 개념도이다.
본 발명은 플래시 메모리 데이터 저장 방법, 특히 영상 감시 시스템에서 촬영되는 영상 데이터를 플래시 메모리에 효율적으로 저장하는 플래시 메모리 데이터 저장 방법에 관한 것이다.
플래시 메모리는 가전기기, 통신 기기 또는 휴대 기기 등과 같은 임베디드 시스템(Embedded System)에서 사용되는 메모리로서, 전원이 꺼진 뒤에도 데이터를 보관할 수 있고, 데이터를 용이하게 쓰고 지울 수 있는 장점이 있다.
일반적으로, 플래시 메모리, 특히 NOR 타입의 플래시 메모리는 고가여서 데이터의 저장용으로 사용하기 보다는 프로그램 코드의 저장용으로 사용되고 있다.
도 1 은 다수의 섹터(sector)로 구성되는 플래시 메모리의 구성을 개념적으로 보여준다.
도 1에서 보여지는 바와 같이, 플래시 메모리는 다수의 섹터를 포함한다. 플래시 메모리 내 데이터 저장은 각 섹터 마다 이루어지며, 각 섹터내 데이터 저장은 섹터내 저장 공간의 용량 까지 가능하다. 그러나 데이터 저장후 섹터내 남아 있는 저장 공간의 용량이 새로운 데이터 저장을 위해 부족한 경우, 새로운 데이터 저장을 위해서 그 섹터 내 저장된 데이터 전부를 삭제하여야 하는 단점이 있다.
즉, 플래시 메모리의 한 섹터에 데이터를 저장하고자 할 때, 해당 섹터는 데이터가 존재하지 않는 초기화 상태여야 하며, 만약 섹터에 기 저장된 데이터가 있다면 그 섹터 전체에 저장된 데이터를 삭제하여 초기화하여야 한다.
그런데, 섹터 당 삭제 가능 회수는 플래시 메모리의 특성마다 차이는 있으나 일정 회수 미만으로 그 한계가 있다. 따라서 플래시 메모리의 수명을 연장하기 위해 플래시 메모리의 효율적인 데이터 저장 방법이 요구 되고 있다.
종래의 플래시 메모리 데이터 저장 방법으로 플래시 메모리의 섹터 단위의 수명을 연장하기 위해 섹터 단위의 저장 횟수 정보 등을 별도로 저장하는 방법, 또는 복잡한 파일 시스템 구조 등을 사용하여 데이터를 읽고 쓰는 방법이 알려져 있다.
그러나 이와 같은 종래의 방법들은 데이터 저장 및 삭제 과정이외에 섹터 당 데이터의 저장 및 삭제 회수를 카운트하기 위한 별도의 복잡한 구성을 요구하는 바, 감시 지역에서 촬영된 영상을 발생 시간 별로 순차적으로 저장하는 영상 감시 시스템에 적용되기 어려운 문제가 있다.
본 발명은 데이터를 플래시 메모리에 효율적으로 저장하는 플래시 메모리 데이터 저장 방법을 제공하고자 한다.
본 발명은 데이터를 플래시 메모리에 효율적으로 저장하는 데이터 관리 시스템이 탑재된 플래시 메모리를 제공하고자 한다.
또한, 본 발명은 플래시 메모리 저장 기능을 갖는 프로그램이 기록된 저장 매체를 제공하고자 한다.
상기와 같은 기술적 과제의 해결을 위한, 본 발명의 한 특징에 따른 다수의 섹터를 포함하는 플래시 메모리에 데이터를 저장하는 방법은 입력되는 데이터를 데이터 인덱스와 함께 입력 순서에 따라 순차적으로 데이터 저장 영역에 저장하는 단계, 상기 데이터 저장 영역내 모든 섹터에 데이터 저장 공간이 없는 경우, 데이터 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하고, 입력되는 데이터를 상기 데이터 저장 공간에 저장하는 단계 및 상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하여 데이터 정렬 정보를 작성하는 단계를 포함한다.
본 발명의 또 다른 특징에 따른 다수의 섹터를 포함하는 플래시 메모리는 입력되는 데이터를 데이터 인덱스와 함께 순차적으로 데이터 저장 영역에 저장하는 데이터 저장 모듈, 데이터가 저장되지 않은 섹터를 검색하는 데이터 검색 모듈, 상기 데이터 저장 영역 내 모든 섹터에 데이터 저장 공간이 없는 경우, 입력되는 데이터 크기에 대응하는 크기로 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하는 데이터 삭제 모듈, 및 상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하는 데이터 정렬 모듈을 포함하는 데이터 관리 시스템이 프로그램 코드 영역에 탑재된다.
본 발명의 또 다른 특징에 따른 다수의 섹터를 포함하는 플래시 메모리에 데이터를 저장하는 프로그램이 기록된 매체는 입력되는 데이터를 데이터 인덱스와 함께 입력 순서에 따라 순차적으로 데이터 저장 영역에 저장하는 기능, 상기 데이터 저장 영역내 모든 섹터에 데이터 저장 공간이 없는 경우, 데이터 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하고, 입력되는 데이터를 상 기 데이터 저장 공간에 저장하는 기능, 및 상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하여 데이터 정렬 정보를 작성하는 기능을 포함하는 플래시 메모리 데이터 저장 방법을 수행하는 프로그램이 기록된다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
이하, 도 2 내지 8을 참조하여 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법을 설명한다. 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 관리 시스템에 사용되는 플래시 메모리로는 특별한 제한은 없으나 NOR 타입의 플래시 메모리가 이용될 수 있다.
도 2 는 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법에 사용되는 플래시 메모리의 내부 구성을 보여준다.
플래시 메모리는 프로그램 수행을 위한 프로그램 코드가 저장되는 프로그램 코드 영역(100)과 데이터의 저장을 위한 데이터 영역(200)으로 구별될 수 있다. 구체적으로, 512 kByte 크기의 플래시 메모리라면 어드레스는 0 번지부터 0x0007ffff 번지까지일 수 있다. 본 발명의 제 1 실시예에서는 도 2에서 볼 수 있는 바와 같이, 플래시 메모리를 0x00030000 번지를 기준으로 프로그램 코드 영역(100)과 데이터 영역(200)으로 구분하였다.
도 3 은 본 발명의 제 1 실시예에 따른 플래시 메모리의 데이터 영역(200)의 구성을 보여준다.
도 3에서 볼 수 있는 바와 같이, 데이터 영역(200)은 인덱스 영역(220)과 이벤트 데이터 영역(260)을 포함할 수 있다.
인덱스 영역(220)은 데이터 읽기, 저장 및 검색을 위한 정보를 저장한다. 구체적으로 인덱스 영역(220)은 직전에 저장된 이벤트 데이터 정보 및 해당 이벤트 데이터에 대한 정보를 포함할 수 있다. 인덱스 영역(220)에 저장되는 정보는 데이터 읽기, 저장 및 검색시 참조된다. 본 발명의 제 1 실시예에서는 인덱스 영역(220)으로서 플래시 메모리의 한 섹터의 전부를 사용할 수 있다.
한편, 이벤트 데이터 영역(260)은 각 이벤트 데이터가 저장되는 장소이다.
도 3 에서 도시되는 데이터 영역(200)은 한 섹터의 크기가 64kbyte 인 경우 인덱스 영역(220)의 어드레스가 0x0003ffff 번지까지이고 이벤트 데이터 영역(260)이 0x00040000 부터 0x0007ffff인 구체 예를 보여준다.
본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법은 영상 감시시스템에 적용될 수 있다. 이때, 영상 감시 시스템은 감시 영역에서 발생되는 이벤트 데이터를 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법에 따라 발생 시간 별로 순차적으로 플래시 메모리에 저장 관리한다. 여기서, 이벤트는 영상 감시 시스템에서 감시되는 감시 영역에서 촬영된 영상 데이터를 의미한다.
도 4 는 본 발명의 제 1 실시예에 따른 플래시 메모리의 데이터 영역(200)의 구성을 보다 상세하게 보여준다.
도 4에서 볼 수 있는 바와 같이, 이벤트 데이터 영역(260)은 이벤트 데이터 의 저장을 위한 다수의 이벤트 영역(이벤트 #1 내지 이벤트 #N)을 포함하며, 각 이벤트 영역은 이벤트 #N 인덱스 영역(262) 및 이벤트 #N 데이터 영역(264)을 포함할 수 있다.
이벤트 #N 인덱스 영역(262)은 이벤트 데이터 저장 정보, 이벤트 데이터 크기 정보, 또는 이벤트 발생 시간 정보 등을 포함할 수 있다. 본 발명의 제 1 실시예에 따른 플래시 메모리 저장 방법이 영상 감시 시스템에 적용되는 경우 이벤트 #N 인덱스 영역(262)에 해당 이벤트를 촬영한 감시 카메라 인식 정보가 추가 저장될 수 있다.
본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법은 입력되는 각 이벤트 데이터를 각 이벤트 영역(이벤트 #1 내지 이벤트 #N)에 입력되는 순서에 따라 순차적으로 저장한다.
도 5 는 본 발명의 제 1 실시예에 따른 이벤트 영역의 구성을 상세하게 보여준다.
도 5 에서, 이벤트 #N 인덱스 영역(262)은 구체적으로 14 바이트 크기로 설정되는데, 이벤트 #N 인덱스 영역(262)은 이벤트 데이터가 저장되는 시작 어드레스 4 바이트, 영상 크기 2바이트, 카메라 ID 2 바이트, 이벤트 발생 시간 6 바이트를 포함할 수 있다.
이벤트 #N 데이터 영역(264)은 이벤트 데이터가 저장되며, 해당 이벤트 데이터의 크기 만큼의 바이트가 할당된다. 구체적으로, 영상 감시 시스템에 사용되는 플래시 메모리의 경우 이벤트 데이터는 카메라에 의해 촬영된 영상 데이터이며, 이 벤트 #N 데이터 영역(264)에 영상 데이터의 크기 만큼의 바이트가 할당된다.
도 6 는 본 발명의 제 1 실시예에 따른 이벤트 데이터 영역(260)을 섹터 별로 도시한 구성을 보여준다.
이벤트 #1 내지 #N 은 이벤트 데이터 영역(260) 중 첫 번째 섹터에서부터 순차적으로 저장된다. 이때, 한 섹터에 새로운 이벤트 데이터를 저장할 만큼의 용량이 더 이상 없을 경우 다음 섹터에 이벤트 데이터를 저장한다. 도 6 은 이벤트 # 1 내지 이벤트 #N 영역이 섹터 #1 내지 섹터 #M 에 순차적으로 배열되는 구성을 보여준다.
이하, 도 7 및 도 8을 참조하여 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법을 구체적으로 설명한다.
도 7은 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법의 순서도를 보여준다. 또한, 도 8 은 본 발명의 제 1 실시예에 따른 플래시 메모리 데이터 저장 방법 중 데이터 저장 방법에 대한 개념도를 보여준다.
이벤트 데이터가 플래시 메모리 내에 입력되는 경우, 플래시 메모리내 데이터가 기록되지 않은 섹터의 유무를 검색한다(s100).
검색 결과, 플래시 메모리내 데이터가 저장되지 않은 섹터가 존재하는 경우, 입력되는 이벤트 데이터를 순차적으로 이벤트 데이터 영역(260)의 각 이벤트 영역(이벤트 #1 내지 이벤트 #N)에 저장한다(s200).
이벤트 데이터 저장시, 해당 이벤트에 대한 이벤트 인덱스를 이벤트 데이터와 함께 저장할 수 있다. 이벤트 인덱스는 이벤트 데이터 정보, 이벤트 데이터 크 기 정보, 이벤트를 촬영한 카메라 ID 정보, 또는 이벤트 발생 시간 정보를 포함할 수 있다. 여기서, 이벤트 데이터 정보는 이벤트 데이터가 시작되는 위치 정보를 포함한다. 또한, 이벤트 인덱스는 직전 이벤트 데이터 정보 및 해당 이벤트 데이터 정보를 포함할 수 있다. 즉, 이벤트 #N 인덱스는 이벤트 #N 데이터 정보뿐만 아니라 이벤트 #(N-1) 데이터 정보를 포함할 수 있다.
한편, 플래시 메모리의 각 섹터의 용량을 대응하는 크기의 임시 저장 장소를 두고, 이벤트 데이터들을 섹터의 용량의 대응하는 크기가 될 때 까지 임시 저장 장소에 임시 저장한 후, 섹터에 저장하는 방법을 사용할 수 있다. 이 경우, 섹터에 이벤트 데이터를 저장할 때, 그 섹터의 용량에 대응하는 이벤트 데이터의 양을 한번에 저장할 수 있으므로, 이베트 데이터 기록시 섹터의 용량을 최대한 활용할 수 있으므로, 플래시 메모리 내의 섹터의 저장 및 삭제 회수를 최소화 할 수 있다.
한편, 플래시 메모리에 데이터가 저장되지 않은 섹터가 존재하지 않는 경우, 섹터들 중에서 가장 오래된 섹터를 검색한다(s300). 여기서 가장 오래된 섹터는 가장 오래전에 이벤트 데이터가 기록된 섹터를 의미한다.
이러한 섹터 검색은 이벤트 데이터와 함께 저장되는 이벤트 인덱스를 이용하여 수행된다.
이하, 섹터 검색 방법에 대하여 구체적으로 설명한다.
먼저, 인덱스 영역(220)에 저장된 인덱스 정보로부터 최근에 저장된 이벤트에 대한 이벤트 정보를 수득한다.
다음으로, 수득된 이벤트 정보를 이용하여 이벤트 데이터 영역(260)에서 각 각의 이벤트 영역(이벤트 #1 내지 이벤트 #N)을 검색하여 최근 데이터가 저장된 이벤트 영역을 검색한다.
그 후 최근 데이터가 저장된 이벤트 영역으로부터 이벤트 인덱스를 이용하여 이벤트들을 저장 순서대로 순차적으로 정렬한다.
구체적으로, 검색된 최근 데이터가 저장된 이벤트 영역이 이벤트 #N 라고 할 때, 이벤트 #N 인덱스를 참조하여 이벤트 #N 데이터에 대한 정보 및 이벤트 # (N-1) 데이터에 대한 정보를 수득한다. 그 후 이벤트 #(N-1) 인덱스를 참조하여 이벤트#(N-1) 데이터에 대한 정보와 이벤트#(N-2) 데이터에 대한 정보를 수득한다. 이러한 방법을 반복하여 이벤트 #N 에서부터 이벤트 #1 까지 모든 이벤트 영역을 정렬하여 데이터 정렬 정보를 수득한다.
그 후, 수득된 데이터 정렬 정보를 이용하여 가장 오래전에 저장된 이벤트 #1 영역을 포함하는 섹터를 검색한다.
다음으로, 검색된 플래시 메모리 섹터 내 저장된 이벤트 데이터들을 임시 버퍼에 저장한다(s400). 본 발명의 제 2 실시예에서 임시 버퍼로서 플래시 메모리가 아닌 다른 저장 장치로서 SDRAM을 사용할 수 있으나, 임시 버퍼로서 사용되는 임시 저장 장치로는 특별히 제한되지 않는다.
검색된 해당 섹터내 저장 공간을 검색하고, 입력되는 이벤트 데이터가 섹터 내 빈 공간 내에 기록이 가능 한 경우, 빈 공간에 기록하나, 섹터 내에 충분한 빈 공간이 존재하지 않는 경우 가장 오래된 이벤트 데이터를 삭제하여 입력되는 이벤트 데이터를 위한 공간을 확보한다.
여기서, 해당 섹터네 저장된 이벤트 데이터들중 가장 오래된 이벤트 데이터인지 여부의 판단은 그 이벤트 데이터와 함께 저장된 이벤트 인덱스에 저장된 이벤트 데이터 정보를 통하여 판단될 수 있다. 해당 섹터 내 이벤트 데이터들 중 이벤트 발생 시간이 가장 최후인 이벤트 데이터를 가장 오래된 이벤트 데이터로 판단한다. 한편, 데이터 정렬 정보를 이용하여 가장 오래된 이벤트 데이터를 판단할 수 있다.
그 후, 현재 발생한 새로운 이벤트 데이터를 임시 버퍼 내에 저장하여(s500), 해당 섹터에 대응하는 이벤트 데이터 정보를 구성한다.
그 후, 해당 섹터에 대응하는 임시 버퍼에 저장된 이벤트 데이터들을 해당 섹터에 저장한다(s600).
이와 같은 임시 버퍼의 사용으로 해당 섹터 내에 저장된 다른 이벤트 데이터의 손실 없이 새로운 이벤트 데이터를 저장할 수 있게 된다.
이하, 본 발명의 제 1 실시예에 따른 플래시 메모리 저장 방법에 의해 저장된 이벤트 데이터를 읽는 방법에 대하여 설명한다.
먼저, 플래시 메모리의 인덱스 영역(220) 내에 저장된 데이터 정렬 정보를 이용하여, 검색하고자 하는 이벤트 인덱스의 어드레스를 수득한다.
구체적으로, 특정 시간 내에 촬영된 이벤트 데이터를 검색하고자 하는 경우, 특정 시간에 대응하는 정보를 갖는 이벤트 데이터에 대한 정보를 인덱스 영역(220)에서 검색하고, 검색된 이벤트 데이터에 대한 어드레스 정보를 확인한다. 즉, 검색하고자 하는 이벤트가 N 번째 이벤트라면 이벤트 #N 인덱스의 어드레스를 수득한 다. 그 후, 이벤트 데이터에 대한 어드레스를 통해 해당 이벤트 영역을 찾아, 이벤트 데이터 정보를 수득한다. 즉, 이벤트 #N 인덱스를 이용하여 이벤트 #N 데이터에 대한 정보를 수득한다.
앞서 설명한 바와 같이, 본 발명의 제 1 실시예에 따른 플래시 메모리 저장 방법은 플래시 메모리의 저장 공간 중 프로그램 코드 영역(100)이외의 데이터 영역(200)에 데이터를 저장할 때 메모리 공간을 효율적으로 활용하여 데이터를 순차적으로 저장하는 방법을 제공한다.
이하 본 발명의 제 2 실시예에 따른 플래시 메모리 저장 기능을 포함하는 데이터 관리 시스템이 프로그램 코드 영역에 탑재된 플래시 메모리에 대하여 설명한다.
본 발명의 제 2 실시예에 따른 데이터 관리 시스템은 데이터 저장 모듈, 데이터 검색 모듈, 데이터 삭제 모듈 및 데이터 정렬 모듈을 포함한다.
데이터 저장 모듈은 입력되는 데이터를 데이터 인덱스와 함께 순차적으로 데이터 저장 영역에 저장한다. 데이터 검색 모듈은 데이터 저장 영역으로부터 데이터가 저장되지 않은 섹터를 검색한다. 데이터 삭제 모듈은 상기 데이터 검색 모듈로부터 데이터가 저장되지 않은 섹터가 존재하지 않음을 알려주는 신호를 받는 경우, 저장 순서가 빠른 데이터 순서대로 입력되는 데이터 크기에 대응하는 크기 만큼의 데이터를 삭제한다. 데이터 삭제 모듈은 입력되는 데이터 크기에 대응하는 저장 영역이 확보되는 경우 데이터 저장 모듈에게 입력되는 데이터를 저장하도록 한다. 데이터 정렬 모듈은 데이터 인덱스를 이용하여 저장 영역에 저장된 데이터 를 저장 순서대로 정렬하여, 데이터 삭제 모듈에 제공한다.
여기서, 데이터 인덱스는 해당 데이터 정보 및 직전 데이터 정보를 포함하며, 데이터 정렬 모듈은 직전 데이터 정보를 이용하여 저장된 데이터들을 저장 순서대로 정렬할 수 있다.
이하 본 발명의 제 3 실시예에 따른 플래시 메모리 저장 기능을 갖는 프로그램이 저장된 기록 매체에 대하여 설명한다.
본 발명의 제 3 실시예에 따른 플래시 메모리 저장 기능은 이벤트 데이터를 순차적으로 각 이벤트 영역에 저장하는 기능, 플래시 메모리 내 가장 오래된 섹터를 검색하는 기능, 검색된 섹터 내에 새로 발생한 이벤트 데이터를 저장하는 기능, 및 검색된 섹터 내 가장 오래된 순서대로 이벤트 데이터를 삭제하는 기능을 포함할 수 있다.
이와 같은 본 발명의 제 2 실시예에 따른 플래시 메모리 저장 기능을 갖는 프로그램은 기록 매체 또는 플래시 메모리의 프로그램 코드 영역(100)에 탑재될 수 있다. 따라서 본 발명의 제 2 실시예에 따른 플래시 메모리 저장 기능을 갖는 프로그램이 탑재된 기록 매체는 플래시 메모리 저장 기능을 갖는 프로그램이 탑재된 플래시 메모리일 수 있다.
상기에서는 본 발명의 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명의 범위에 속하는 것은 당연하다.
본 발명에 따른 플래시 메모리 저장 방법은 파일 시스템 구조로 이벤트 데이터를 저장하면서, 영상 데이터를 순차적으로 검색할 수 있는 검색 기능을 제공할 수 있다. 또한, 본 발명에 따른 플래시 메모리 저장 방법은 특히 NOR 타입 플래시 메모리에 심플하면서도 효과적인 영상 방법을 제공한다. 본 발명의 플래시 메모리 저장 방법은 임베디드형 시스템의 NOR 타입 플래시 메모리의 사용시 메모리를 효율적으로 활용할 수 있어, 적은 용량의 메모리 사용할 수 있다. 따라서, 원가를 절감할 수 있으며 플래시 메모리의 삭제(Erase) 횟수를 줄여 수명 또한 향상 시킬 수 있다.

Claims (14)

  1. 다수의 섹터를 포함하는 플래시 메모리에 데이터를 저장하는 방법에 있어서,
    입력되는 데이터를 데이터 인덱스와 함께 입력 순서에 따라 순차적으로 데이터 저장 영역에 저장하는 단계;
    상기 데이터 저장 영역내 모든 섹터에 데이터 저장 공간이 없는 경우, 데이터 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하고, 입력되는 데이터를 상기 데이터 저장 공간에 저장하는 단계; 및
    상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하여 데이터 정렬 정보를 작성하는 단계를 포함하는 플래시 메모리 데이터 저장 방법.
  2. 제 1 항에 있어서,
    상기 데이터 저장 영역내 하나 이상의 섹터에 데이터 저장 공간이 존재하는 경우, 입력되는 데이터를 해당 섹터의 데이터 저장 공간에 저장하는 단계를 추가 포함하는 플래시 메모리 데이터 저장 방법.
  3. 제 1 항에 있어서,
    상기 데이터 삭제 및 저장 단계에서,
    상기 데이터 정렬 정보를 이용하여 저장 순서가 빠른 순서대로 데이터를 삭제하는 플래시 매모리 데이터 저장 방법.
  4. 제 1 항에 있어서,
    상기 데이터 삭제 및 저장 단계가
    삭제 예정 데이터를 포함하는 섹터의 전체 데이터를 임시 버퍼에 저장하는 단계;
    삭제 예정 데이터를 삭제하는 단계;
    입력되는 데이터를 저장하는 단계; 및
    상기 임시 버퍼에 저장된 데이터를 상기 섹터에 저장하는 단계를 포함하는 플래시 메모리 데이터 저장 방법.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 데이터 인덱스는 현재 입력되는 데이터 정보 및 직전에 입력된 데이터 정보를 포함하는 플래시 메모리 데이터 저장 방법.
  6. 제 1 항 또는 제 2 항에 있어서,
    상기 데이터 인덱스는 데이터 크기 정보 및 데이터 입력 시간 정보를 포함하는 플래시 메모리 데이터 저장 방법.
  7. 제 5 항에 있어서,
    상기 데이터 인덱스에 저장된 상기 직전에 입력된 데이터 정보를 이용하여 직전에 저장된 데이터의 데이터 인덱스를 검색하는 과정을 반복 수행함으로써, 저장된 데이터들을 저장 순서대로 정렬하여 데이터 정렬 정보를 작성하는 플래시 메모리 데이터 저장 방법.
  8. 제 6 항에 있어서,
    상기 데이터 인덱스에 저장된 상기 데이터 입력 시간 정보로부터 저장된 데이터들을 저장 순서대로 정렬하는 플래시 메모리 데이터 저장 방법.
  9. 제 1 항 또는 제 2 항에 있어서,
    상기 데이터 저장 단계가
    입력되는 데이터를 소정 크기의 임시 저장 장소에 순차적으로 기록하는 단계; 및
    상기 임시 저장 장소에 새로운 입력 데이터를 저장할 만큼의 공간이 존재하지 않는 경우, 상기 임시 저장 장소에 저장된 전체 데이터를 해당 섹터에 저장하는 단계를 포함하는 플래시 메모리 데이터 저장 방법.
  10. 제 9 항에 있어서,
    상기 임시 저장 장소의 크기가 해당 섹터의 용량에 대응하는 크기인 플래시 메모리 데이터 저장 방법.
  11. 다수의 섹터를 포함하는 플래시 메모리에 있어서,
    입력되는 데이터를 데이터 인덱스와 함께 순차적으로 데이터 저장 영역에 저장하는 데이터 저장 모듈;
    데이터가 저장되지 않은 섹터를 검색하는 데이터 검색 모듈;
    상기 데이터 저장 영역 내 모든 섹터에 데이터 저장 공간이 없는 경우, 입력되는 데이터 크기에 대응하는 크기로 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하는 데이터 삭제 모듈; 및
    상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하는 데이터 정렬 모듈을 포함하는 데이터 관리 시스템이 프로그램 코드 영역에 탑재된 플래시 메모리.
  12. 제 11 항에 있어서,
    상기 데이터 인덱스는 현재 입력되는 데이터 정보 및 직전에 입력된 데이터 정보를 포함하며,
    상기 데이터 인덱스에 저장된 직전에 입력된 데이터 정보를 이용하여 직전에 저장된 데이터의 데이터 인덱스를 검색하는 과정을 반복 수행함으로써, 저장된 데이터들을 저장 순서대로 정렬하는 플래시 메모리.
  13. 다수의 섹터를 포함하는 플래시 메모리에 데이터를 저장하는 프로그램이 기록된 매체에 있어서,
    입력되는 데이터를 데이터 인덱스와 함께 입력 순서에 따라 순차적으로 데이터 저장 영역에 저장하는 기능;
    상기 데이터 저장 영역내 모든 섹터에 데이터 저장 공간이 없는 경우, 데이터 저장 순서가 빠른 순서대로 데이터를 삭제하여 데이터 저장 공간을 준비하고, 입력되는 데이터를 상기 데이터 저장 공간에 저장하는 기능; 및
    상기 데이터 인덱스를 이용하여 저장된 데이터를 저장 순서대로 정렬하여 데이터 정렬 정보를 작성하는 기능을 포함하는 플래시 메모리 데이터 저장 방법을 수행하는 프로그램이 기록된 컴퓨터가 읽기 가능한 매체.
  14. 제 13 항에 있어서,
    상기 데이터 인덱스는 현재 입력되는 데이터 정보 및 직전에 입력된 데이터 정보를 포함하며,
    상기 데이터 인덱스에 저장된 직전에 입력된 데이터 정보를 이용하여 직전에 저장된 데이터의 데이터 인덱스를 검색하는 과정을 반복 수행함으로써, 저장된 데이터들을 저장 순서대로 정렬하는 프로그램이 기록된 컴퓨터가 읽기 가능한 매체.
KR1020050028413A 2005-04-06 2005-04-06 플래시 메모리 데이터 저장 방법 KR20060106993A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050028413A KR20060106993A (ko) 2005-04-06 2005-04-06 플래시 메모리 데이터 저장 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050028413A KR20060106993A (ko) 2005-04-06 2005-04-06 플래시 메모리 데이터 저장 방법

Publications (1)

Publication Number Publication Date
KR20060106993A true KR20060106993A (ko) 2006-10-13

Family

ID=37627381

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050028413A KR20060106993A (ko) 2005-04-06 2005-04-06 플래시 메모리 데이터 저장 방법

Country Status (1)

Country Link
KR (1) KR20060106993A (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100881669B1 (ko) * 2006-12-18 2009-02-06 삼성전자주식회사 비휘발성 데이터 저장장치의 정적 데이터 영역 검출 방법,마모도 평준화 방법 및 데이터 유닛 병합 방법과 그 장치
KR100907477B1 (ko) * 2007-07-16 2009-07-10 한양대학교 산학협력단 플래시 메모리에 저장된 데이터의 인덱스 정보 관리 장치및 방법
KR101442974B1 (ko) * 2013-05-08 2014-09-23 재단법인대구경북과학기술원 차량주행 정보 관리 방법 및 시스템
US9058253B2 (en) 2007-07-04 2015-06-16 Samsung Electronics Co., Ltd. Data tree storage methods, systems and computer program products using page structure of flash memory
KR101863206B1 (ko) * 2017-05-16 2018-05-31 성균관대학교산학협력단 버퍼 풀 관리 장치 및 버퍼 풀 관리 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100881669B1 (ko) * 2006-12-18 2009-02-06 삼성전자주식회사 비휘발성 데이터 저장장치의 정적 데이터 영역 검출 방법,마모도 평준화 방법 및 데이터 유닛 병합 방법과 그 장치
US8028121B2 (en) 2006-12-18 2011-09-27 Samsung Electronics Co., Ltd. Method and apparatus for detecting static data area, wear-leveling, and merging data units in nonvolatile data storage device
US9058253B2 (en) 2007-07-04 2015-06-16 Samsung Electronics Co., Ltd. Data tree storage methods, systems and computer program products using page structure of flash memory
KR100907477B1 (ko) * 2007-07-16 2009-07-10 한양대학교 산학협력단 플래시 메모리에 저장된 데이터의 인덱스 정보 관리 장치및 방법
KR101442974B1 (ko) * 2013-05-08 2014-09-23 재단법인대구경북과학기술원 차량주행 정보 관리 방법 및 시스템
KR101863206B1 (ko) * 2017-05-16 2018-05-31 성균관대학교산학협력단 버퍼 풀 관리 장치 및 버퍼 풀 관리 방법

Similar Documents

Publication Publication Date Title
KR101392174B1 (ko) 소거 대상 블록의 매핑 테이블을 저장하는 플래시 메모리 제어장치 및 방법
KR100791325B1 (ko) 비휘발성 메모리를 관리하는 장치 및 방법
US8838875B2 (en) Systems, methods and computer program products for operating a data processing system in which a file delete command is sent to an external storage device for invalidating data thereon
KR101447188B1 (ko) 플래시 메모리에 최적화된 입출력 제어 방법 및 장치
US9122580B2 (en) Flash memory system and managing and collecting methods for flash memory with invalid page messages thereof
US6862604B1 (en) Removable data storage device having file usage system and method
US20060129750A1 (en) Method and apparatus for storing multimedia data in nonvolatile storage device in units of blocks
RU2319227C2 (ru) Способ запоминания с двойным протоколированием и носитель данных для него
US20020112116A1 (en) Methods, systems, and computer program products for storing data in collections of tagged data pieces
US20050216687A1 (en) Data managing method and data access system for storing all management data in management bank of non-volatile memory
US9262339B2 (en) Managing write operations in a computerized memory
CN112463020A (zh) 基于Flash的数据存取方法、装置及设备
KR20060106993A (ko) 플래시 메모리 데이터 저장 방법
TWI399642B (zh) 具區塊管理之非揮發性記憶體
CN111897675B (zh) 一种手机端f2fs文件系统的近期删除文件恢复方法
US20020133683A1 (en) Method and system for reducing fragmentation
CN114185849A (zh) 文件操作方法、文件操作系统、电子设备及存储介质
CN108304331B (zh) 基于NorFlash的环形队列式数据存储方法及装置
KR101433860B1 (ko) 파일을 효율적으로 관리할 수 있는 정보 처리 장치
CN110968268B (zh) 一种基于spiflash的存储管理方法及存储结构
CN111324284B (zh) 一种存储器
KR100652616B1 (ko) 이동 통신 단말기의 부팅 시간 단축 방법
CN113703668B (zh) 固态硬盘的信息查询方法、系统、电子设备及存储介质
CN111324285A (zh) 一种存储器
KR100521155B1 (ko) 플래시 메모리의 정보기록장치 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application