KR102648230B1 - 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법 - Google Patents

낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법 Download PDF

Info

Publication number
KR102648230B1
KR102648230B1 KR1020230094801A KR20230094801A KR102648230B1 KR 102648230 B1 KR102648230 B1 KR 102648230B1 KR 1020230094801 A KR1020230094801 A KR 1020230094801A KR 20230094801 A KR20230094801 A KR 20230094801A KR 102648230 B1 KR102648230 B1 KR 102648230B1
Authority
KR
South Korea
Prior art keywords
data
memory chip
parameter page
value
parameter
Prior art date
Application number
KR1020230094801A
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 KR1020230094801A priority Critical patent/KR102648230B1/ko
Application granted granted Critical
Publication of KR102648230B1 publication Critical patent/KR102648230B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5846Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9038Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30029Logical and Boolean instructions, e.g. XOR, NOT

Abstract

본 발명은 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법에 관한 것으로서, 낸드 플래시형 메모리 장치의 메모리 컨트롤러가 사용 불가능한 환경에서 상기 메모리 장치 내 메모리칩의 파라미터 페이지에 대한 라이브러리를 생성하는 장치에 있어서, 상기 메모리칩의 전원단자에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 상기 메모리칩의 입출력단자에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터를 획득하는 ID 데이터 획득 모듈과, 상기 ID 데이터가 획득되는 경우, 상기 입출력단자에 상기 메모리칩의 파라미터 페이지영역을 호출하기 위한 명령어인 호출 커맨드값 및 호출 주소값을 입력하여 상기 파라미터 페이지영역에 저장된 파라미터 데이터를 로딩하는 데이터 로딩부와, 로딩된 상기 파라미터 데이터의 특정 바이트 위치에 기록된 이진데이터를 추출하여 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값을 부여하는 모드 분류부와, 부여된 모드 분류값에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값에 대한 바이트별 항목값과 상기 파라미터 데이터의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보를 생성하는 복원 정보 생성부와, 상기 파라미터 페이지 복원 정보, 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값, 상기 파라미터 페이지에 대응하여 부여된 상기 모드 분류값을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 생성 및 저장하는 라이브러리 생성부를 포함하는 것을 특징으로 한다.
이에 따라, 낸드 플래시 메모리 장치의 내부 컨트롤러에 물리적인 손상 또는 고장이 발생하여 사용 불가능한 경우에도 메모리칩의 동작 및 명령을 실행 가능하여 데이터 복원 시 필요한 파라미터 데이터를 획득할 수 있는 효과가 있다.

Description

낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법{APPARATUS AND METHOD FOR GENERATING PARAMETER PAGE LIBRARY OF NAND FLASH MEMORY}
본 발명은 낸드 플래시 메모리 장치의 내부 컨트롤러가 사용 불가능한 환경에서 해당 메모리의 파라미터 페이지를 판독 가능함에 따라 메모리칩별 파라미터 페이지 라이브러리를 생성할 수 있는 장치 및 방법에 관한 것이다.
플래시 메모리는 전기적인 신호로 데이터를 읽고 쓸 수 있고 전원이 중단된 이후에도 저장된 데이터가 보존되는 반도체 메모리로서, 메모리 내에서 특정 단위로 읽기/쓰기는 가능하지만 지울 때는 반드시 블록 단위로 지워야 하므로 한 번 기록한 영역은 반드시 지운 다음에 기록 가능한 특징을 가진다.
이러한 플래시 메모리는 크게 병렬 구조인 NOR 방식과 직렬 구조인 NAND 방식으로 나눌 수 있다. 이 중 NAND 방식은 NOR 방식에 비해 데이터 읽기 속도는 느린 반면 메모리 블록이 여러 페이지로 나누어져 있어 쓰기나 지우기 속도가 더 빠르고 단위당 집적도가 NOR보다 우수하다는 점에서, SSD(Solid State Drive)와 USB 메모리 장치 등에 주로 사용되고 있다.
USB 메모리 장치는 플래시 메모리와 컨트롤러가 각각의 칩 형태로 분리되어 하나의 보드에 통합된 형태로 구성된다. 만약 해당 장치에 물리적인 손상 또는 고장이 발생하는 경우, 장치 보드에서 플래시 메모리에 해당하는 메모리칩을 분리하여 데이터 복구 프로그램이 적용된 복구 장비에 장착하면, 데이터 복구 프로그램을 통해 메모리칩의 파라미터 데이터를 이용하여 덤프 데이터를 재조합하는 방식으로 데이터 복구 작업을 수행하게 된다.
그러나, 데이터 복구 프로그램을 이용한다 하더라도 메모리칩의 데이터 영역에 접근하기 위해선, 메모리칩의 메모리 동작을 제어하는 컨트롤러가 정상적으로 동작하는 것이 전제되어야 한다.
따라서, 만일 컨트롤러 자체에 문제가 발생하여 정상적으로 동작하지 않는 경우엔 메모리칩의 데이터를 복구하기가 어려운 문제가 있다.
KR 10-2301761 B1 KR 10-1517834 B1
본 발명의 목적은 상기 문제점을 해결하기 위한 것으로서, 낸드 플래시 메모리 장치의 내부 컨트롤러가 사용 불가능한 환경에서 해당 메모리의 파라미터 페이지를 판독 가능함에 따라 메모리칩별 파라미터 페이지 라이브러리를 생성할 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위한 본 발명의 일면에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치는, 낸드 플래시형 메모리 장치의 메모리 컨트롤러가 사용 불가능한 환경에서 상기 메모리 장치 내 메모리칩의 파라미터 페이지에 대한 라이브러리를 생성하는 장치에 있어서, 상기 메모리칩의 전원단자에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 상기 메모리칩의 입출력단자에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터를 획득하는 ID 데이터 획득 모듈과, 상기 ID 데이터가 획득되는 경우, 상기 입출력단자에 상기 메모리칩의 파라미터 페이지영역을 호출하기 위한 명령어인 호출 커맨드값 및 호출 주소값을 입력하여 상기 파라미터 페이지영역에 저장된 파라미터 데이터를 로딩하는 데이터 로딩부와, 로딩된 상기 파라미터 데이터의 특정 바이트 위치에 기록된 이진데이터를 추출하여 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값을 부여하는 모드 분류부와, 부여된 모드 분류값에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값에 대한 바이트별 항목값과 상기 파라미터 데이터의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보를 생성하는 복원 정보 생성부와, 상기 파라미터 페이지 복원 정보, 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값, 상기 파라미터 페이지에 대응하여 부여된 상기 모드 분류값을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 생성 및 저장하는 라이브러리 생성부를 포함하는 것을 특징으로 한다.
또한, 상기와 같은 목적을 달성하기 위한 본 발명의 다른 일면에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법은, 낸드 플래시형 메모리 장치의 메모리 컨트롤러가 사용 불가능한 환경에서 상기 메모리 장치 내 메모리칩의 파라미터 페이지에 대한 라이브러리를 생성하는 방법에 있어서, 상기 메모리칩의 전원단자에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 상기 메모리칩의 입출력단자에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터를 획득하는 단계와, 상기 ID 데이터가 획득되는 경우, 상기 입출력단자에 상기 메모리칩의 파라미터 페이지영역을 호출하기 위한 명령어인 호출 커맨드값 및 호출 주소값을 입력하여 상기 파라미터 페이지영역에 저장된 파라미터 데이터를 로딩하는 단계와, 로딩된 상기 파라미터 데이터의 특정 바이트 위치에 기록된 이진데이터를 추출하여 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값을 부여하는 단계와, 부여된 모드 분류값에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값에 대한 바이트별 항목값과 상기 파라미터 데이터의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보를 생성하는 단계와, 상기 파라미터 페이지 복원 정보, 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값, 상기 파라미터 페이지에 대응하여 부여된 상기 모드 분류값을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 생성 및 저장하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 낸드 플래시 메모리 장치의 내부 컨트롤러에 물리적인 손상 또는 고장이 발생하여 사용 불가능한 경우에도 메모리칩의 동작 및 명령을 실행 가능하여 데이터 복원 시 필요한 파라미터 데이터를 획득할 수 있는 효과가 있다.
또한, 본 발명에 따르면, 메모리칩별 파라미터 페이지 라이브러리를 구축할 수 있어 메모리칩 이미지나 메모리칩에 기록된 데이터만으로도 해당 메모리의 데이터 복구 시 필요한 정보를 짧은 시간 내 획득할 수 있는 효과가 있다.
본 발명의 효과는 상기에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치의 구성을 개략적으로 나타낸 도면이고,
도 2는 도 1의 ID 데이터 획득 모듈, 메모리 복원 모듈 및 라이브러리 모듈의 내부 구성을 상세히 도시한 블록도이고,
도 3은 도 2의 초기 명령어 입력부 및 데이터 로딩부에 의해 입력되는 명령어의 동작 타이밍도를 나타낸 도면이고,
도 4는 도 2의 모드 분류부에 의해 제1 분류값으로 분류되는 경우에 대응되는 파라미터 페이지의 일부를 나타낸 도면이고,
도 5는 도 2의 모드 분류부에 의해 제2 분류값으로 분류되는 경우에 대응되는 파라미터 페이지의 일례를 나타낸 도면이고,
도 6은 본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법을 나타낸 순서도이고,
도 7은 도 6의 S100 단계를 상세히 나타낸 순서도이고,
도 8은 도 6의 S500 단계와 S700 단계 사이의 데이터 복원 과정을 나타낸 순서도이고,
도 9는 도 6의 S700 단계 이후의 라이브러리 추천 과정을 나타낸 순서도이다.
이상과 같은 본 발명에 대한 해결하려는 과제, 과제의 해결수단, 발명의 효과를 포함한 구체적인 사항들은 다음에 기재할 실시예 및 도면에 포함되어 있다. 본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예를 참조하면 명확해질 것이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
도 1은 본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치의 구성을 개략적으로 나타낸 도면이고, 도 2는 도 1의 ID 데이터 획득 모듈, 메모리 복원 모듈 및 라이브러리 모듈의 내부 구성을 상세히 도시한 블록도이고, 도 3은 도 2의 초기 명령어 입력부 및 데이터 로딩부에 의해 입력되는 명령어의 동작 타이밍도를 나타낸 도면이고, 도 4는 도 2의 모드 분류부에 의해 제1 분류값으로 분류되는 경우에 대응되는 파라미터 페이지의 일부를 나타낸 도면이고, 도 5는 도 2의 모드 분류부에 의해 제2 분류값으로 분류되는 경우에 대응되는 파라미터 페이지의 일례를 나타낸 도면이다.
또한, 도 6은 본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법을 나타낸 순서도이고, 도 7은 도 6의 S100 단계를 상세히 나타낸 순서도이고, 도 8은 도 6의 S500 단계와 S700 단계 사이의 데이터 복원 과정을 나타낸 순서도이고, 도 9는 도 6의 S700 단계 이후의 라이브러리 추천 과정을 나타낸 순서도이다.
이하, 전술한 도면들을 참조하여 본 발명의 바람직한 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법에 대해 설명하면 다음과 같다.
본 발명은 낸드 플래시형 메모리 장치(10)의 메모리 컨트롤러(12)가 사용 불가능한 환경에서 상기 메모리 장치 내 메모리칩(14)의 파라미터 페이지에 대한 라이브러리를 생성하는 장치 및 방법에 관한 것이다.
먼저, 도 1을 참조하면, 본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치는 크게 ID 데이터 획득 모듈(100), 데이터 로딩부(200), 모드 분류부(400), 복원 정보 생성부(500), 메모리 복원 모듈(600), 라이브러리 모듈(700)을 포함하여 구성된다.
ID 데이터 획득 모듈(100)은 메모리칩(14)의 동작 전압을 확인하여 동작시킨 후 메모리칩(14)의 ID 데이터를 획득하기 위한 것이다.
여기서, 상기 ID 데이터는 하나의 메모리칩을 다른 메모리칩과 구별하기 위한 고유 식별 정보에 해당하는 것일 수 있으며, 예컨대, 제조업체 ID, 제조업체의 식별코드, 장치 ID, 장치 식별코드 등의 정보를 포함할 수 있다.
ID 데이터 획득 모듈(100)은 메모리칩(14)의 전원단자(VDD)에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 메모리칩(14)의 입출력단자(I/Ox)에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 메모리칩(14)의 ID 데이터를 획득할 수 있다.
구체적으로, ID 데이터 획득 모듈(100)은 도 2에 도시된 바와 같이 전압 인가부(110), 초기 명령어 입력부(120), 실행 여부 확인부(130), 제어부(140)를 포함할 수 있다.
전압 인가부(110)는 기설정된 복수의 전압 레벨들 중 어느 하나의 전압 레벨에 대응되는 제1 전압값을 초기 세팅 전압(VS)으로 설정하고, 초기 세팅 전압(VS)을 메모리칩(14)의 전원단자(VDD)에 인가한다.
여기서, 초기 세팅 전압(VS)은 메모리칩이 동작 가능하도록 세팅하기 위한 전압을 의미하고, 기설정된 복수의 전압 레벨들은 1.2V, 1.8V, 3.3V를 포함하는 것일 수 있다.
초기 명령어 입력부(120)는 초기 세팅 전압(VS)의 인가 시점을 기준으로 하여, 초기 세팅 전압(VS)이 인가된 상태에서 메모리칩(14)의 입출력단자(I/Ox)에 초기 커맨드값 및 초기 주소값을 포함하는 초기 명령어(CI)를 입력한다.
여기서, 초기 명령어(CI)는 도 3에 도시된 바와 같이 ID 데이터의 독출 명령(Read ID Command)을 나타내는 초기 커맨드값인 "90h"를 포함할 수 있다.
실행 여부 확인부(130)는 초기 명령어(CI)의 입력에 대응하는 ID 독출 명령의 실행에 따른 메모리칩(14)의 ID 데이터의 획득 여부를 확인한다.
실행 여부 확인부(130)는 초기 커맨드값("90h")에 따라 ID 데이터가 로드되었는지 여부를 확인하는 것일 수 있다.
제어부(140)는 실행 여부 확인부(130)의 확인 결과에 기초하여 메모리칩(14)의 ID 데이터를 획득하도록 전압 인가부(110)와 초기 명령어 입력부(120)의 동작을 제어한다.
제어부(140)는 실행 여부 확인부(130)의 확인 결과 ID 데이터가 획득되지 않는 경우, 복수의 전압 레벨들 중 현재 설정된 초기 세팅 전압(VS)과 다른 전압 레벨을 갖는 제2 전압값을 초기 세팅 전압(VS)으로 재설정하여 전원단자(VDD)에 인가한 후 초기 명령어(CI)를 입출력단자(I/Ox)에 재입력하는 동작을 ID 데이터가 획득될 때까지 반복하여 수행하도록 전압 인가부(110) 및 초기 명령어 입력부(120)를 제어할 수 있다.
예컨대, 만일 제1 전압값(1.8V)을 메모리칩(14)의 초기 세팅 전압(VS)으로 설정 및 인가한 상태에서 초기 명령어(CI)를 입력하였으나 확인 결과 ID 데이터가 획득되지 않은 경우, 제어부(140)는 제2 전압값(3.3V)을 초기 세팅 전압(VS)으로 재설정하여 전압단자(VDD)에 인가하도록 전압 인가부(110)를 제어하고, 재설정된 초기 세팅 전압(VS)이 인가된 상태에서 초기 명령어(CI)를 재입력하도록 초기 명령어 입력부(120)를 제어할 수 있다.
이때, ID 데이터 획득 모듈(100)은 실행 여부 확인부(130)에 의해 ID 데이터가 획득된 것으로 확인되면, ID 데이터가 획득된 시점에 메모리칩(14)의 전압단자(VDD)에 인가된 전압값, 즉, 초기 세팅 전압(VS) 값을 메모리칩(14)의 동작 및 명령 실행이 가능한 전압 조건 정보로 저장하는 실행 조건 저장부(150)의 구성을 더 포함할 수도 있다.
데이터 로딩부(200)는 ID 데이터 획득 확인 후 메모리칩(14)의 파라미터 데이터(DP)를 로딩하기 위한 것이다.
데이터 로딩부(200)는 실행 여부 확인부(130)의 확인 결과 ID 데이터가 획득되는 경우, 메모리칩(14)의 입출력단자(I/Ox)에 메모리칩(14)의 파라미터 페이지 영역을 호출하기 위한 명령어(CP)를 입력하여 파라미터 페이지 영역에 저장된 파라미터 데이터(DP)를 로딩한다.
여기서, 파라미터 페이지 영역을 호출하는 명령어(CP)는 도 3에 도시된 바와 같이 제조업체 코드(Make Code)와 장치 코드(Device code)가 포함된 파라미터 페이지에 대한 호출 명령을 나타내는 호출 커맨드값인 "ECh"를 포함할 수 있다.
모드 분류부(400)는 파라미터 데이터(DP)에 포함된 규약 정보에 기초하여 메모리칩(14)에 대한 모드 분류값(M)을 결정하기 위한 것이다.
모드 분류부(400)는 데이터 로딩부(200)에 의해 로딩된 파라미터 데이터(DP)의 특정 바이트 위치에 기록된 이진 데이터를 추출한다.
이때, 모드 분류부(400)에 의해 추출되는 이진 데이터는 파라미터 데이터(DP)의 첫번째 내지 네번째 바이트 데이터인 것이 바람직하다.
한편, 모드 분류부(400)는 추출된 이진 데이터를 아스키코드 기반 문자열로 변환할 수도 있다.
이 경우, 모드 분류부(400)는 파라미터 데이터(DP)의 첫번째 바이트 데이터, 두번째 바이트 데이터, 세번째 바이트 데이터, 네번째 바이트 데이터를 각각 제1 문자열(S1), 제2 문자열(S2), 제3 문자열(S3), 제4 문자열(S4)로 변환하게 된다.
모드 분류부(400)는 추출된 이진 데이터 또는 변환된 문자열 데이터를 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값(M)을 부여한다.
여기서, 복수의 규약 서명 정보는 오픈 낸드 플래시 인터페이스 워킹 그룹(Open NAND Flash Interface)의 약어인 "ONFI"와, JEDEC(국제반도체표준협의기구)에서 공표한 메모리 표준 문서(JEDEC standard)의 약어인 "JESD"를 포함할 수 있다.
모드 분류부(400)는 이진 데이터를 비교 대상으로 이용하는 경우엔, 파라미터 데이터(DP)의 첫번째 바이트 데이터를 규약 서명 정보의 첫번째 문자열("O","J")을 각각 이진 변환한 값과 비교하고, 파라미터 데이터(DP)의 두번째 바이트 데이터를 규약 서명 정보의 두번째 문자열("N","E")을 각각 이진 변환한 값과 비교하고, 파라미터 데이터(DP)의 세번째 바이트 데이터를 규약 서명 정보의 세번째 문자열("F","S")을 이진 변환한 값과 비교하고, 파라미터 데이터(DP)의 네번째 바이트 데이터를 규약 서명 정보의 네번째 문자열("I","D")을 이진 변환한 값과 비교한다.
모드 분류부(400)는 문자열 데이터를 비교 대상으로 이용하는 경우엔, 제1 문자열(S1)을 규약 서명 정보의 첫번째 문자열인 "O" 및 "J"와 비교하고, 제2 문자열(S2)을 규약 서명 정보의 두번째 문자열인 "N" 및 "E"와 비교하고, 제3 문자열(S3)을 규약 서명 정보의 세번째 문자열인 "F" 및 "S"와 비교하고, 제4 문자열(S4)을 규약 서명 정보의 네번째 문자열인 "I" 및 "D"와 비교한다.
모드 분류부(400)는 전술한 비교 결과에 따라 "ONFI"에 대응하는 경우엔 제1 분류값, "JESD"에 대응하는 경우엔 제2 분류값, 제1 분류값 또는 제2 분류값에 해당하지 않는 경우엔 제3 분류값을 모드 분류값(M)으로 부여한다.
복원 정보 생성부(500)는 모드 분류부(400)에 의해 부여된 모드 분류값(M)에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값(M)에 대한 바이트별 항목값과 데이터 로딩부(200)에 의해 로딩된 파라미터 데이터(DP)의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보(IR)를 생성한다.
이때, 도 4에 도시된 제1 분류값(ONFI)에 대응되는 파라미터 페이지의 테이블 데이터와, 도 5에 도시된 제2 분류값(JESD)에 대응되는 파라미터 페이지의 테이블 데이터를 분류값별로 구분하여 저장하는 DB를 더 포함할 수 있다.
여기서, 파라미터 페이지의 테이블 데이터는 바이트 번호와 항목값 정보가 매핑 저장된 테이블 데이터일 수 있으며, 파라미터 페이지 길이는 해당 테이블의 최하단 항목에 대응되는 마지막 바이트 번호에 의해 결정되는 것일 수 있다.
예컨대, "ONFI"에 대한 파라미터 페이지 테이블의 최하단 항목에 대한 마지막 바이트 번호는 '767번'이고, "JESD"에 대한 파라미터 페이지 테이블의 최하단 항목에 대한 마지막 바이트 번호는 '1535번'이 되므로, 제1 분류값(ONFI)과 제2 분류값(JESD)의 파라미터 페이지 길이가 상이하게 된다.
데이터 복원 모듈(600)은 파라미터 페이지 복원 정보(IR)에 기초하여 메모리칩(14)에 원래 저장된 데이터를 복원하기 위한 것이다.
데이터 복원 모듈(600)은 메모리칩(14)의 덤프 데이터를 파라미터 페이지 복원 정보(IR)에 기초하여 재조합함에 따라 메모리칩(14)에 원래 저장된 데이터를 복원할 수 있다.
데이터 복원 모듈(600)은 도 2에 도시된 바와 같이 덤프 추출부(610), 디스크램블링부(620), 데이터 복원부(630)로 구성되며, 덤프 추출부(610)는 메모리칩(14)의 덤프 데이터를 추출하는 동작을 수행하고, 디스크램블링부(620)는 추출된 덤프 데이터를 파라미터 복원 정보(IR)에 기초하여 재조합한 후 XOR 연산을 통해 디스크램블링하는 동작을 수행하며, 데이터 복원부(630)는 디스크램블링된 데이터에 기초하여 메모리칩(14)에 원래 저장된 데이터를 복원하는 동작을 수행하는 것일 수 있다.
라이브러리 모듈(700)은 메모리칩(14)의 파라미터 페이지 정보에 대한 라이브러리를 구축하기 위한 것이다.
구체적으로, 라이브러리 모듈(400)은 도 2에 도시된 바와 같이 카메라부(710), 인터페이스부(720), 이미지 저장부(730), 문자열 추출부(750), 라이브러리 생성부(740), 라이브러리 추천부(760)를 포함할 수 있다.
라이브러리 생성부(740)는 파라미터 페이지 복원 정보(IR), 메모리칩(14)의 ID 데이터를 획득한 시점에 전원단자(VDD)에 인가된 초기 세팅 전압값(VS), 파라미터 페이지에 대응하여 부여된 모드 분류값(M)을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리(L)를 생성 및 저장할 수 있다.
카메라부(710)는 메모리칩(14)의 전면 또는 저면을 촬영한 이미지를 획득하여 이미지 저장부(730)로 전달한다.
인터페이스부(720)는 사용자 단말기(30)를 통해 메모리칩(14)의 전면 또는 저면 이미지를 사용자로부터 입력받아 이미지 저장부(730)로 전달한다.
이미지 저장부(730)는 카메라부(710) 또는 인터페이스부(720)로부터 전달된 이미지를 획득하여 저장한다.
문자열 추출부(750)는 기설정된 문자열 추출 알고리즘을 이용하여 이미지 저장부(730)에 저장된 이미지에 포함된 문자열을 추출한다.
이 경우, 라이브러리 생성부(740)는, 전술한 파라미터 페이지 복원 정보(IR), 초기 세팅 전압값(VS), 모드 분류값(M)과 더불어 메모리칩(14)에 대응하여 저장된 이미지와 이로부터 추출된 문자열값을 함께 매칭하여 저장함에 따라 파라미터 페이지 라이브러리(L)를 메모리칩별로 생성 및 저장할 수 있다.
라이브러리 추천부(760)는 기저장된 파라미터 페이지 라이브러리에 기초하여 새로 저장한 메모리칩 이미지와 유사한 메모리칩의 파라미터 페이지 라이브러리를 추천하기 위한 것이다.
라이브러리 추천부(760)는 이미지 저장부(730)에서 소정 메모리칩에 대한 칩이미지를 신규로 저장하여 문자열 추출부(750)에서 상기 칩이미지에 포함된 대상 문자열을 추출한 경우, 추출된 대상 문자열을 라이브러리 생성부(740)에 의해 기저장된 메모리칩별 파라미터 페이지 라이브러리와 비교한 결과에 기초하여 가장 유사한 문자열값을 가지는 파라미터 페이지 라이브러리를 추천하는 추천 정보를 생성할 수 있다.
이때, 기저장된 파라미터 페이지 라이브러리에는 메모리칩 이미지로부터 추출된 문자열값이 메모리칩별로 사전 저장된 상태인 것이 바람직하다.
전술한 도 1 및 도 2에 도시된 구성요소들에 대한 설명을 바탕으로 하여 본 발명에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법을 도 6 내지 도 9를 참조하여 설명하면 다음과 같다.
본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법은 크게 ID 데이터 획득 단계(S100), 파라미터 데이터 로딩 단계(S200), 이진 데이터 추출 단계(S300), 모드 분류값 부여 단계(S400), 복원 정보 생성 단계(S500), 메모리 복원 단계(S600), 라이브러리 생성 단계(S700)를 포함한다.
먼저, ID 데이터 획득 단계(S100)는 메모리칩(14)의 동작 전압을 확인하여 동작시킨 후 메모리칩(14)의 ID 데이터를 획득하기 위한 것이다.
여기서, 상기 ID 데이터는 하나의 메모리칩을 다른 메모리칩과 구별하기 위한 고유 식별 정보에 해당하는 것일 수 있으며, 예컨대, 제조업체 ID, 제조업체의 식별코드, 장치 ID, 장치 식별코드 등의 정보를 포함할 수 있다.
상기 S100 단계에서는, 메모리칩(14)의 전원단자(VDD)에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 메모리칩(14)의 입출력단자(I/Ox)에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 메모리칩(14)의 ID 데이터를 획득할 수 있다.
구체적으로, 상기 S100 단계는, 도 7에 도시된 바와 같이 제1 전압값을 초기 세팅 전압(VS)으로 설정하는 단계(S112)와, 설정된 초기 세팅 전압(VS)을 메모리칩(14)의 전원단자(VDD)에 인가하는 단계(S114)와, 메모리칩(14)의 입출력단자(I/Ox)에 초기 명령어(CI)를 입력하는 단계(S120)와, 초기 명령어(CI)의 입력에 대응하는 ID 독출 명령의 실행에 따른 메모리칩(14)의 ID 데이터의 획득 여부를 확인하는 단계(S130)와, 확인 결과 ID 데이터가 획득되지 않는 경우, 복수의 전압 레벨들 중 현재 설정된 초기 세팅 전압(VS)과 다른 전압 레벨을 갖는 제2 전압값을 초기 세팅 전압(VS)으로 재설정하는 단계(S140)와, 전술한 S114, S120, S130 및 S140 단계를 ID 데이터가 획득될 때까지 반복하여 수행하도록 제어하는 단계를 포함할 수 있다.
여기서, 초기 세팅 전압(VS)은 메모리칩이 동작 가능하도록 세팅하기 위한 전압을 의미하고, 기설정된 복수의 전압 레벨들은 1.2V, 1.8V, 3.3V를 포함하는 것일 수 있다.
여기서, 초기 명령어(CI)는 도 3에 도시된 바와 같이 ID 데이터의 독출 명령(Read ID Command)을 나타내는 초기 커맨드값인 "90h"를 포함할 수 있다.
상기 S130 단계에서는, 초기 커맨드값("90h")에 따라 ID 데이터가 로드되었는지 여부를 확인하는 것일 수 있다.
이때, 만일 ID 데이터가 획득된 것으로 확인되면, ID 데이터가 획득된 시점에 메모리칩(14)의 전압단자(VDD)에 인가된 전압값, 즉, 초기 세팅 전압(VS) 값을 메모리칩(14)의 동작 및 명령 실행이 가능한 전압 조건 정보로 저장하는 단계(미도시)를 더 포함할 수도 있다.
다음으로, 파라미터 데이터 로딩 단계(S200)는 상기 S100 단계에 의한 ID 데이터 획득 확인 후 메모리칩(14)의 파라미터 데이터(DP)를 로딩하기 위한 것이다.
상기 S200 단계에서는, 상기 S130 단계의 확인 결과 ID 데이터가 획득되는 경우, 메모리칩(14)의 입출력단자(I/Ox)에 메모리칩(14)의 파라미터 페이지 영역을 호출하기 위한 명령어(CP)를 입력하여 파라미터 페이지 영역에 저장된 파라미터 데이터(DP)를 로딩한다.
여기서, 파라미터 페이지 영역을 호출하는 명령어(CP)는 도 3에 도시된 바와 같이 제조업체 코드(Make Code)와 장치 코드(Device code)가 포함된 파라미터 페이지에 대한 호출 명령을 나타내는 호출 커맨드값인 "ECh"를 포함할 수 있다.
다음으로, 이진 데이터 추출 단계(S300)는 상기 S200 단계에 로딩된 파라미터 데이터(DP)의 특정 바이트 위치에 기록된 이진 데이터를 추출한다.
이때, 상기 S300 단계에 추출되는 이진 데이터는 파라미터 데이터(DP)의 첫번째 내지 네번째 바이트 데이터인 것이 바람직하다.
또한, 상기 S300 단계에 의해 추출된 이진 데이터를 아스키코드 기반 문자열로 변환하는 단계(S350)를 더 포함할 수도 있다.
이 경우, 상기 S350 단계에 의해 파라미터 데이터(DP)의 첫번째 바이트 데이터, 두번째 바이트 데이터, 세번째 바이트 데이터, 네번째 바이트 데이터를 각각 제1 문자열(S1), 제2 문자열(S2), 제3 문자열(S3), 제4 문자열(S4)로 변환된다.
다음으로, 모드 분류값 부여 단계(S400)는 파라미터 데이터(DP)에 포함된 규약 정보에 기초하여 메모리칩(14)에 대한 모드 분류값(M)을 결정하기 위한 것이다.
상기 S400 단계에서는, 상기 S300 단계에 추출된 이진 데이터 또는 상기 S350 단계에 변환된 문자열 데이터를 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값(M)을 부여한다.
여기서, 복수의 규약 서명 정보는 오픈 낸드 플래시 인터페이스 워킹 그룹(Open NAND Flash Interface)의 약어인 "ONFI"와, JEDEC(국제반도체표준협의기구)에서 공표한 메모리 표준 문서(JEDEC standard)의 약어인 "JESD"를 포함할 수 있다.
상기 S400 단계에서는, 상기 S300 단계에 추출된 이진 데이터를 비교 대상으로 이용하는 경우엔, 파라미터 데이터(DP)의 첫번째 바이트 데이터를 규약 서명 정보의 첫번째 문자열("O","J")을 각각 이진 변환한 값과 비교하고, 파라미터 데이터(DP)의 두번째 바이트 데이터를 규약 서명 정보의 두번째 문자열("N","E")을 각각 이진 변환한 값과 비교하고, 파라미터 데이터(DP)의 세번째 바이트 데이터를 규약 서명 정보의 세번째 문자열("F","S")을 이진 변환한 값과 비교하고, 파라미터 데이터(DP)의 네번째 바이트 데이터를 규약 서명 정보의 네번째 문자열("I","D")을 이진 변환한 값과 비교한다.
상기 S400 단계에서는, 상기 S350 단계에 변환된 문자열 데이터를 비교 대상으로 이용하는 경우엔, 제1 문자열(S1)을 규약 서명 정보의 첫번째 문자열인 "O" 및 "J"와 비교하고, 제2 문자열(S2)을 규약 서명 정보의 두번째 문자열인 "N" 및 "E"와 비교하고, 제3 문자열(S3)을 규약 서명 정보의 세번째 문자열인 "F" 및 "S"와 비교하고, 제4 문자열(S4)을 규약 서명 정보의 네번째 문자열인 "I" 및 "D"와 비교한다.
상기 S400 단계에서는, 전술한 비교 결과에 따라 "ONFI"에 대응하는 경우엔 제1 분류값, "JESD"에 대응하는 경우엔 제2 분류값, 제1 분류값 또는 제2 분류값에 해당하지 않는 경우엔 제3 분류값을 모드 분류값(M)으로 부여한다.
다음으로, 복원 정보 생성 단계(S500)는 상기 S400 단계에 부여된 모드 분류값(M)에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값(M)에 대한 바이트별 항목값과 데이터 로딩부(200)에 의해 로딩된 파라미터 데이터(DP)의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보(IR)를 생성한다.
이때, 상기 S400 단계와 상기 S500 단계 사이에, 도 4에 도시된 제1 분류값(ONFI)에 대응되는 파라미터 페이지의 테이블 데이터와, 도 5에 도시된 제2 분류값(JESD)에 대응되는 파라미터 페이지의 테이블 데이터를 분류값별로 구분하여 저장하는 단계(미도시)를 더 포함할 수 있다.
여기서, 파라미터 페이지의 테이블 데이터는 바이트 번호와 항목값 정보가 매핑 저장된 테이블 데이터일 수 있으며, 파라미터 페이지 길이는 해당 테이블의 최하단 항목에 대응되는 마지막 바이트 번호에 의해 결정되는 것일 수 있다
다음으로, 메모리 복원 단계(S600)는 상기 S500 단계에 생성된 파라미터 페이지 복원 정보(IR)에 기초하여 메모리칩(14)에 원래 저장된 데이터를 복원하기 위한 것이다.
상기 S600 단계에서는, 메모리칩(14)의 덤프 데이터를 추출하여 파라미터 페이지 복원 정보(IR)에 기초하여 재조합한 후 XOR 연산을 통해 디스크램블링함에 따라 메모리칩(14)에 원래 저장된 데이터를 복원할 수 있다.
구체적으로, 상기 S600 단계는, 도 8에 도시된 바와 같이 메모리칩(14)의 덤프 데이터를 추출하는 단계(S612)와, 추출된 덤프 데이터를 파라미터 복원 정보(IR)에 기초하여 재조합한 후 XOR 연산을 통해 디스크램블링하는 단계(S614~S620)와, 디스크램블링된 데이터에 기초하여 메모리칩(14)에 원래 저장된 데이터를 복원하는 단계(S630)를 포함할 수 있다.
다음으로, 라이브러리 생성 단계(S700)는 메모리칩(14)의 파라미터 페이지 정보에 대한 라이브러리를 구축하기 위한 것이다.
상기 S700 단계에서는, 파라미터 페이지 복원 정보(IR), 메모리칩(14)의 ID 데이터를 획득한 시점에 전원단자(VDD)에 인가된 초기 세팅 전압값(VS), 파라미터 페이지에 대응하여 부여된 모드 분류값(M)을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리(L)를 생성 및 저장한다.
이때, 상기 S700 단계 이전에는, 메모리칩(14)의 전면을 촬영한 이미지 또는 사용자 입력에 따른 메모리칩(14)의 전면 이미지를 획득하여 저장하는 단계(S71)와, 기설정된 문자열 추출 알고리즘을 이용하여 메모리칩(14)에 대응하여 저장된 이미지에 포함된 문자열을 추출하는 단계(S72)를 더 포함할 수 있다.
여기서, 상기 S71 단계는 카메라를 통해 메모리칩(14)의 전면 또는 저면을 촬영한 이미지를 획득하여 저장하는 것이거나 또는 사용자 단말기(30)를 통해 사용자로부터 입력받은 메모리칩(14)의 전면 또는 저면 이미지를 획득하여 저장하는 것일 수 있다.
여기서, 상기 S72 단계는 기설정된 문자열 추출 알고리즘을 이용하여 상기 S71 단계에 저장된 메모리칩 이미지에 포함된 문자열을 추출하는 것일 수 있다.
이 경우, 상기 S700단계는, 메모리칩(14)에 대한 파라미터 페이지 복원 정보(IR)와, 메모리칩(14)의 ID 데이터를 획득한 시점에 전원단자(VDD)에 인가된 전압값(VS)과, 메모리칩(14)의 파라미터 페이지에 대응하여 부여된 모드 분류값(M)과, 상기 S71 단계 및 상기 S72 단계에 의해 메모리칩(14)에 대응하여 저장된 이미지와 이로부터 추출된 문자열값을 함께 매칭하여 저장함에 따라 파라미터 페이지 라이브러리(L)를 메모리칩별로 생성 및 저장하는 것일 수 있다.
한편, 본 발명의 일 실시예에 따른 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법의 경우, 전술한 과정들과 더불어 도 9에 도시된 라이브러리 추천 과정(S730~S764)을 더 포함할 수도 있다.
상기 라이브러리 추천 과정은, S700 단계에 저장된 메모리칩별 파라미터 페이지 라이브러리에 각 메모리칩 이미지와 이로부터 추출된 문자열값이 매칭 저장된 상태를 전제로 하여 수행되며, 구체적으로, 소정 메모리칩에 대한 칩이미지를 신규로 획득하여 저장하는 단계(S730)와, 저장된 칩이미지에 포함된 대상 문자열을 기설정된 문자열 추출 알고리즘을 이용하여 추출하는 단계(S750)와, 추출된 대상 문자열을 메모리칩별 파라미터 페이지 라이브러리와 비교한 결과에 기초하여 가장 유사한 문자열값을 가지는 파라미터 페이지 라이브러리를 추천하는 추천 정보를 생성하는 단계(S764)를 포함할 수 있다.
이에 따라, 전술한 본 발명에 의하면, 낸드 플래시 메모리 장치의 내부 컨트롤러에 물리적인 손상 또는 고장이 발생하여 사용 불가능한 경우에도 메모리칩의 동작 및 명령을 실행 가능하여 데이터 복원 시 필요한 파라미터 데이터를 획득할 수 있다.
또한, 본 발명에 의하면, 메모리칩별 파라미터 페이지 라이브러리를 구축할 수 있어 메모리칩 이미지나 메모리칩에 기록된 데이터만으로도 해당 메모리의 데이터 복구 시 필요한 정보를 짧은 시간 내 획득할 수 있다.
이상, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며 특허청구범위 내에서 다양하게 실시될 수 있다.
특히, 전술한 내용은 후술할 발명의 청구범위를 더욱 잘 이해할 수 있도록 본 발명의 특징과 기술적 강점을 다소 폭넓게 상술하였으므로, 상술한 본 발명의 개념과 특정 실시예는 본 발명과 유사 목적을 수행하기 위한 다른 형상의 설계나 수정의 기본으로써 즉시 사용될 수 있음이 해당 기술 분야의 숙련된 사람들에 의해 인식되어야 한다.
또한, 상기에서 기술된 실시예는 본 발명에 따른 하나의 실시예일 뿐이며, 해당 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술적 사상의 범위에서 다양한 수정 및 변경된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 따라서, 개시된 실시예는 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 하고, 이러한 다양한 수정 및 변경 또한 본 발명의 기술적 사상의 범위에 속하는 것으로 전술한 본 발명의 청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
10: 메모리 장치 12: 메모리 컨트롤러
14: 메모리칩 20: 라이브러리 생성장치
100: ID 데이터 획득 모듈 110: 전압 인가부
120: 초기 명령어 입력부 130: 실행 여부 확인부
140: 제어부 150: 실행 조건 저장부
200: 데이터 로딩부 400: 모드 분류부
500: 복원 정보 생성부 600: 메모리 복원 모듈
610: 덤프 추출부 620: 디스크램블링부
630: 데이터 복원부 700: 라이브러리 모듈
710: 카메라부 720: 인터페이스부
730: 이미지 저장부 740: 라이브러리 생성부
750: 문자열 추출부 760: 라이브러리 추천부

Claims (10)

  1. 낸드 플래시형 메모리 장치의 메모리 컨트롤러가 사용 불가능한 환경에서 상기 메모리 장치 내 메모리칩의 파라미터 페이지에 대한 라이브러리를 생성하는 장치에 있어서,
    상기 메모리칩의 전원단자에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 상기 메모리칩의 입출력단자에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터를 획득하는 ID 데이터 획득 모듈;
    상기 ID 데이터가 획득되는 경우, 상기 입출력단자에 상기 메모리칩의 파라미터 페이지영역을 호출하기 위한 명령어인 호출 커맨드값 및 호출 주소값을 입력하여 상기 파라미터 페이지영역에 저장된 파라미터 데이터를 로딩하는 데이터 로딩부;
    로딩된 상기 파라미터 데이터의 특정 바이트 위치에 기록된 이진데이터를 추출하여 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값을 부여하는 모드 분류부;
    부여된 모드 분류값에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값에 대한 바이트별 항목값과 상기 파라미터 데이터의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보를 생성하는 복원 정보 생성부; 및
    상기 파라미터 페이지 복원 정보, 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값, 상기 파라미터 페이지에 대응하여 부여된 상기 모드 분류값을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 생성 및 저장하는 라이브러리 생성부;를 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치.
  2. 제1항에 있어서,
    상기 ID 데이터 획득 모듈은,
    기설정된 복수의 전압 레벨들 중 어느 하나의 전압 레벨에 대응되는 제1 전압값을 초기 세팅 전압으로 설정하고 상기 메모리칩의 전원단자에 인가하는 전압 인가부;
    상기 초기 세팅 전압의 인가 시점을 기준으로 상기 메모리칩의 입출력단자에 상기 초기 커맨드값 및 상기 초기 주소값을 포함하는 초기 명령어를 입력하는 초기 명령어 입력부;
    상기 초기 명령어의 입력에 대응하는 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터의 획득 여부를 확인하는 실행 여부 확인부; 및
    상기 ID 데이터가 획득되지 않는 경우, 상기 복수의 전압 레벨들 중 현재 설정된 상기 초기 세팅 전압과 다른 전압 레벨을 갖는 제2 전압값을 상기 초기 세팅 전압으로 재설정하여 상기 전원단자에 인가한 후 상기 초기 명령어를 상기 입출력단자에 재입력하는 동작을 상기 ID 데이터가 획득될 때까지 반복하여 수행하도록 상기 전압 인가부 및 상기 초기 명령어 입력부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치.
  3. 제1항에 있어서,
    상기 메모리칩의 덤프 데이터를 추출하여 상기 파라미터 페이지 복원 정보에 기초하여 재조합한 후 XOR 연산을 통해 디스크램블링함에 따라 상기 메모리칩에 원래 저장된 데이터를 복원하는 데이터 복원 모듈;을 더 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치.
  4. 제1항에 있어서,
    상기 메모리칩의 전면을 촬영한 이미지 또는 사용자 입력에 따른 상기 메모리칩의 전면 이미지를 획득하여 저장하는 이미지 저장부; 및
    기설정된 문자열 추출 알고리즘을 이용하여 상기 메모리칩에 대응하여 저장된 이미지에 포함된 문자열을 추출하는 문자열 추출부;를 더 포함하며,
    상기 라이브러리 생성부는,
    상기 메모리칩에 대한 상기 파라미터 페이지 복원 정보와, 상기 메모리칩의 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값과, 상기 메모리칩의 상기 파라미터 페이지에 대응하여 부여된 모드 분류값과, 상기 메모리칩에 대응하여 저장된 이미지와 이로부터 추출된 문자열값을 함께 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 메모리칩별로 생성 및 저장하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치.
  5. 제4항에 있어서,
    상기 이미지 저장부에서 소정 메모리칩에 대한 칩이미지를 신규로 저장하여 상기 문자열 추출부에서 상기 칩이미지에 포함된 대상 문자열을 추출한 경우, 추출된 대상 문자열을 상기 메모리칩별 파라미터 페이지 라이브러리와 비교한 결과에 기초하여 가장 유사한 문자열값을 가지는 파라미터 페이지 라이브러리를 추천하는 추천 정보를 생성하는 라이브러리 추천부;를 더 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치.
  6. 낸드 플래시형 메모리 장치의 메모리 컨트롤러가 사용 불가능한 환경에서 상기 메모리 장치 내 메모리칩의 파라미터 페이지에 대한 라이브러리를 생성하는 방법에 있어서,
    상기 메모리칩의 전원단자에 기설정된 전압레벨에 대응되는 초기 세팅 전압을 인가하고, 상기 메모리칩의 입출력단자에 초기 커맨드값 및 초기 주소값을 입력하여 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터를 획득하는 단계;
    상기 ID 데이터가 획득되는 경우, 상기 입출력단자에 상기 메모리칩의 파라미터 페이지영역을 호출하기 위한 명령어인 호출 커맨드값 및 호출 주소값을 입력하여 상기 파라미터 페이지영역에 저장된 파라미터 데이터를 로딩하는 단계;
    로딩된 상기 파라미터 데이터의 특정 바이트 위치에 기록된 이진데이터를 추출하여 기설정된 복수의 규약 서명 정보와 비교한 결과에 따라 모드 분류값을 부여하는 단계;
    부여된 모드 분류값에 대응하여 기설정된 파라미터 페이지 길이 및 바이트별 항목값 정보에 기초하여, 해당 모드 분류값에 대한 바이트별 항목값과 상기 파라미터 데이터의 내용을 바이트 순서대로 매칭하여 파라미터 페이지 복원 정보를 생성하는 단계;
    상기 파라미터 페이지 복원 정보, 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값, 상기 파라미터 페이지에 대응하여 부여된 상기 모드 분류값을 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 생성 및 저장하는 단계;를 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법.
  7. 제6항에 있어서,
    상기 ID 데이터를 획득하는 단계는,
    기설정된 복수의 전압 레벨들 중 어느 하나의 전압 레벨에 대응되는 제1 전압값을 초기 세팅 전압으로 설정하고 상기 메모리칩의 전원단자에 인가하는 단계;
    상기 초기 세팅 전압의 인가 시점을 기준으로 상기 메모리칩의 입출력단자에 상기 초기 커맨드값 및 상기 초기 주소값을 포함하는 초기 명령어를 입력하는 단계;
    상기 초기 명령어의 입력에 대응하는 ID 독출 명령의 실행에 따른 상기 메모리칩의 ID 데이터의 획득 여부를 확인하는 단계; 및
    상기 ID 데이터가 획득되지 않는 경우, 상기 복수의 전압 레벨들 중 현재 설정된 상기 초기 세팅 전압과 다른 전압 레벨을 갖는 제2 전압값을 상기 초기 세팅 전압으로 재설정하여 상기 전원단자에 인가한 후 상기 초기 명령어를 상기 입출력단자에 재입력하는 동작을 상기 ID 데이터가 획득될 때까지 반복하여 수행하도록 상기 전압 인가 및 상기 초기 명령어 입력을 제어하는 단계;를 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법.
  8. 제6항에 있어서,
    상기 파라미터 페이지 복원 정보를 생성하는 단계 이후에,
    상기 메모리칩의 덤프 데이터를 추출하여 상기 파라미터 페이지 복원 정보에 기초하여 재조합한 후 XOR 연산을 통해 디스크램블링함에 따라 상기 메모리칩에 원래 저장된 데이터를 복원하는 단계;를 더 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법.
  9. 제6항에 있어서,
    상기 파라미터 페이지 라이브러리를 생성하는 단계 이전에,
    상기 메모리칩의 전면을 촬영한 이미지 또는 사용자 입력에 따른 상기 메모리칩의 전면 이미지를 획득하여 저장하는 단계; 및
    기설정된 문자열 추출 알고리즘을 이용하여 상기 메모리칩에 대응하여 저장된 이미지에 포함된 문자열을 추출하는 단계;를 더 포함하며,
    상기 파라미터 페이지 라이브러리를 생성하는 단계는,
    상기 메모리칩에 대한 상기 파라미터 페이지 복원 정보와, 상기 메모리칩의 상기 ID 데이터를 획득한 시점에 상기 전원단자에 인가된 전압값과, 상기 메모리칩의 상기 파라미터 페이지에 대응하여 부여된 모드 분류값과, 상기 메모리칩에 대응하여 저장된 이미지와 이로부터 추출된 문자열값을 함께 매칭하여 저장함에 따라 파라미터 페이지 라이브러리를 메모리칩별로 생성 및 저장하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법.
  10. 제9항에 있어서,
    상기 파라미터 페이지 라이브러리를 생성하는 단계 이후에,
    소정 메모리칩에 대한 칩이미지를 신규로 획득하여 저장하는 단계;
    상기 문자열 추출 알고리즘을 이용하여 상기 칩이미지에 포함된 대상 문자열을 추출하는 단계; 및
    추출된 대상 문자열을 상기 메모리칩별 파라미터 페이지 라이브러리와 비교한 결과에 기초하여 가장 유사한 문자열값을 가지는 파라미터 페이지 라이브러리를 추천하는 추천 정보를 생성하는 단계;를 더 포함하는 것을 특징으로 하는 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 방법.
KR1020230094801A 2023-07-20 2023-07-20 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법 KR102648230B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230094801A KR102648230B1 (ko) 2023-07-20 2023-07-20 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230094801A KR102648230B1 (ko) 2023-07-20 2023-07-20 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102648230B1 true KR102648230B1 (ko) 2024-03-18

Family

ID=90474028

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230094801A KR102648230B1 (ko) 2023-07-20 2023-07-20 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102648230B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020004313A (ko) * 2000-07-04 2002-01-16 이재영 광학 문자 인식을 이용한 반도체 마킹 검사 시스템 및 방법
KR20020061677A (ko) * 2001-01-17 2002-07-25 삼성전자 주식회사 광학적 문자 인식을 통한 반도체 제품의 마킹 결함 검사방법
KR101517834B1 (ko) 2013-07-31 2015-05-06 남기훈 네트워크 통신에 기반을 둔 스마트 디바이스의 데이터 복구 방법
CN110781026A (zh) * 2019-10-25 2020-02-11 宁波三星医疗电气股份有限公司 嵌入式设备数据存储与修复方法、装置和嵌入式设备
CN112579350A (zh) * 2020-11-10 2021-03-30 福建联迪商用设备有限公司 一种支持nv参数备份还原的方法及系统
KR102301761B1 (ko) 2020-06-26 2021-09-14 김태원 Usb 메모리의 데이터 복구 장치
KR20230026726A (ko) * 2021-08-18 2023-02-27 세종대학교산학협력단 병렬 회로를 이용한 저지연 방식의 실시간 메모리 연속 수집 기법 및 IoT 메모리 재현 기술

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020004313A (ko) * 2000-07-04 2002-01-16 이재영 광학 문자 인식을 이용한 반도체 마킹 검사 시스템 및 방법
KR20020061677A (ko) * 2001-01-17 2002-07-25 삼성전자 주식회사 광학적 문자 인식을 통한 반도체 제품의 마킹 결함 검사방법
KR101517834B1 (ko) 2013-07-31 2015-05-06 남기훈 네트워크 통신에 기반을 둔 스마트 디바이스의 데이터 복구 방법
CN110781026A (zh) * 2019-10-25 2020-02-11 宁波三星医疗电气股份有限公司 嵌入式设备数据存储与修复方法、装置和嵌入式设备
KR102301761B1 (ko) 2020-06-26 2021-09-14 김태원 Usb 메모리의 데이터 복구 장치
CN112579350A (zh) * 2020-11-10 2021-03-30 福建联迪商用设备有限公司 一种支持nv参数备份还原的方法及系统
KR20230026726A (ko) * 2021-08-18 2023-02-27 세종대학교산학협력단 병렬 회로를 이용한 저지연 방식의 실시간 메모리 연속 수집 기법 및 IoT 메모리 재현 기술

Similar Documents

Publication Publication Date Title
US8051331B2 (en) Memory card and its initial setting method
US7376012B2 (en) Memory system and data writing method
CN100492277C (zh) 在安全的引导载入程序中使用散列法的方法和装置
US7376825B2 (en) System and method for accessing vital data from memory
US8572361B2 (en) Configuration of a multilevel flash memory device
CN109062827B (zh) 闪存控制装置、闪存控制系统以及闪存控制方法
JPH0259940A (ja) 携帯可能電子装置
KR19990023469A (ko) 불휘발성 반도체 메모리의 제어방법
JP2006092019A (ja) コントローラ、メモリカード及びその制御方法
WO1998028745A1 (en) Nonvolatile writeable memory with fast programming capability
WO1998028748A1 (en) Method and apparatus for improved data retention in nonvolatile memory via equalization of cell voltage levels
JP2005284700A (ja) メモリカード
JP2004103032A (ja) データ管理装置、データ管理方法、不揮発性メモリ、不揮発性メモリを有する記憶装置及びデータ処理システム
JP2008009932A (ja) 半導体記憶装置およびその制御方法
US20060195833A1 (en) Data-burning method and system thereof based on auto-detection of computer platform
JP2645368B2 (ja) 電気的にプログラム可能なromにデータをプログラムする方法
US20060155918A1 (en) Method of controlling a semiconductor memory device applied to a memory card
KR102648230B1 (ko) 낸드 플래시 메모리의 파라미터 페이지 라이브러리 생성 장치 및 방법
KR102648229B1 (ko) 낸드 플래시 메모리 데이터 복원 정보 생성 장치
CN105989887B (zh) 抹除操作配置方法、存储器控制电路单元与存储器
US20030225962A1 (en) Memory card and memory card system
US20100232228A1 (en) Memory device, memory system and programming method
US10705743B2 (en) Memory control device, control method of flash memory, and method for generating security feature of flash memory
TW200815991A (en) A NAND flash memory controller exporting a logical sector-based interface
KR20030042013A (ko) 메모리 장치에서의 데이터 관리 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant