KR100389987B1 - 음성 메모리 디바이스상에 저장된 정보용 분산 디렉토리 - Google Patents

음성 메모리 디바이스상에 저장된 정보용 분산 디렉토리 Download PDF

Info

Publication number
KR100389987B1
KR100389987B1 KR1019960700433A KR19960700433A KR100389987B1 KR 100389987 B1 KR100389987 B1 KR 100389987B1 KR 1019960700433 A KR1019960700433 A KR 1019960700433A KR 19960700433 A KR19960700433 A KR 19960700433A KR 100389987 B1 KR100389987 B1 KR 100389987B1
Authority
KR
South Korea
Prior art keywords
block
data
stored
memory
flash
Prior art date
Application number
KR1019960700433A
Other languages
English (en)
Other versions
KR960704268A (ko
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 내셔널 세미콘덕터 코포레이션
Publication of KR960704268A publication Critical patent/KR960704268A/ko
Application granted granted Critical
Publication of KR100389987B1 publication Critical patent/KR100389987B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/64Automatic arrangements for answering calls; Automatic arrangements for recording messages for absent subscribers; Arrangements for recording conversations
    • H04M1/65Recording arrangements for recording a message from the calling party
    • H04M1/6505Recording arrangements for recording a message from the calling party storing speech in digital form
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

전자 메모리 디바이스에 저장된 복수개의 정보 항목에 대한 디렉토리는 메모리의 연속 에러없는 부분에 보유되지 않는다. 그 대신에, 상기 디바이스의 메모리 영역은, 하나 이상의 정보 항목에 각각 지정되는 블록으로 분할된다. 각각의 블록은, 에러가 없을 필요는 없지만, 어떤 에러 (들) 의 존재에도 불구하고, 에러 보정 알고리즘의 일조로 본래의 데이타가 정확히 판독될수 있는 메모리의 " 회복가능한 " 부분을 지니는데 필요하다. 블록용 디렉토리 데이타는 상기 블록에 저장됨으로써, 상기 디렉토리 데이타를 저장하는데 필요한 메모리의 연속 부분의 길이를 현저하게 감소시킨다.

Description

음성 메모리 디바이스상에 저장된 정보용 분산 디렉토리
발명의 배경
본 발명은 메모리에 저장된 데이타용 디렉토리를 제공하는 것에 관한 것이며, 구체적으로 기술하면, 상기 디렉토리의 저장용 메모리에 에러없는 섹터를 지닐 필요성을 없애는 기술에 관한 것이다.
전자 메모리 디바이스중 잘 알려져 있는 2 가지 형태는 다이나믹 랜덤 액세스 메모리 ( DRAM ) 및 섬광 " 전기적으로 소거가능하고 프로그램가능한 판독 전용 메모리 " ( FLASH ) 이다. DRAM 및 FLASH 디바이스는 이들이 걸함없거나 주로 그렇게 되는 것을 요구하는 용도에 종종 사용된다. 그러나, 상기 메모리에 있어서의 몇가지의 결함을 허용할 수 있는 여러 용도가 있다. 한가지 예는 음성 및 다른 음성 정보 저장의 분야, 예컨대 전화 응답기가 있다. 사람의 귀나 두뇌의 어느 정도 관용하는 성질에 기인하여, 그러한 정보에 관한 데이타 일부의 손실이나 변경은 허용될 수 있다. 결과적으로, 에러없는 메모리를 사용하는 것이 반드시 필요하지 않다. 그 대신에, 특정화된 결함 레벨을 갖는 메모리 디바이스는 충분한 정도의 성능을 제공할 수 있으며, 그러한 디바이스를 사용함에 있어서의 이점은 상기 디바이스가 상당한 비용 절감 상태에서 얻어질 수 있다는 점이다.
결함없는 등급보다 낮은 등급의 질을 지니고 비용을 더욱 감소시키는 DRAM은 또한 이완된 AC 및 DC 사양을 지닐수 있지만, 그럼에도 불구하고 상기에 기술한 형태의 용도에 사용될 수 있는 것은 음성 DRAM ( ARAM ) 으로서 흔히 알려져 있으며, 4P4001JD - 4N 으로서 미합중국, 아이다호, 보이스에 소재하는 Micron Customer Manufacturing Services 로부터 입수할 수 있다. 본 명세서에서 사용되는 "등급 ( grade ) " 라는 용어는 상기 ARAM 에 저장되고 여전히 상기 ARAM 또는 그의 일부가 사용되는 것을 허용하는 데이타에서의 에러의 수를 나타내고, 이는 음성 저장 포맷/압축 알고리즘, 저장방법 및 바람직한 음성/가격 절충에 의존한다. 이러한 목적에 대한 필적할만한 특성을 지니는 FLASH는 본 명세서에는 AFLASH로서 언급되어 있다.
여러 정보 항목은 그와 관련된 연관 데이타 단위를 저장함으로써 메모리에 보유될수 있다. 예를들면, 전화 응답기와 같은 용도에 있어서, 상기 정보 항목은 녹음된 음성 메시지이다. 각각의 메시지는 한 항목의 정보로서 간주될 수 있다. 데이타의 디지탈 비트가 메모리에 저장되는데, 그러한 비트는 서로 연관되어 결합된 상태로 하나의 녹음된 메시지를 구성한다. 상기 메모리는 음성 정보뿐만 아니라 녹음된 음성 메시지상에 정보를 포함하는 디렉토리를 저장하여야 한다. ARAM 에 저장된 디렉토리를 처리하는데 2가지 해결방안, 즉 (1) 정적 데이타 및 (2) 쓰레기 수집이 사용되어 왔다.
코드번호 NSW - VC - BCSX4 하에서 미합중국, 캘리포니아, 산타 클라라에 소재하는 National Semiconductor Corporation 으로 부터 입수할수 있는 " NSVOICE Revision, 2.2 " 소프트웨어 패키지에서 사용되는 바와같은 정적 데이타 방법에 있어서, 메모리의 데이타 저장영역은 블록으로 가상적으로 분할된다. 각각의 블록은한 메시지 또는 메시지 일부를 포함한다. 어떤 메시지 일부는 단위 블록당 한 엔트리가 형성되는 디렉토리에 전용된다. 예를들면, 한 엔트리는 데타가 연관 블록에 저장되는 것을 메시지 갯수 단위로서 식별하는 바이트와 같은 데이타 단위를 유지하는 저장 장소일 수 있다. 어떤 값은 빈 블록 또는 사용될수 없는 블록을 나타내도록 예약된다. 초기에, 수신된 음성 메시지 (들)로 부터 유도된 데이타는 제 1의 " n "개 빈 블록에 저장된다. 한 블록이 데이타 저장용으로 사용되는 경우, 상기 블록은 메시지 수와 같은 식별 코드 ( ID ) 와 함께 표시된다. 특정의 메시지가 소거되는 경우, 해당 ID를 지니는 매 블록마다 또다른 메시지를 기록함에 있어서의 차후 사용을 위해 "비워 " 있는 것처림 표시된다. 따라서, 결국 상기 디렉토리는 한 메시지를 형성하도록 메모리 전반에 걸쳐 분산된 블록을 연결시킬 수 있으며, 상기 메모리의 데이타 저장 부분은 서로 산포된 비고 채워진 블록을 지닐수 있다.
미합중국, 캘리포니아, 산 조세에 소재하는 DSP Group, Inc. 로부터 입수할수 있는 모델 D6055A 응답기에서 사용되는 바와같은 쓰레기 수집 해결 방안에 있어서, 데이타는 빈 블록이 전혀 개입되지 않고서 순차적으로 메시지가 줄지어 항상 저장된다. 한 메시지가 소거될때, 결과적으로 생기는 " 홀 ( hole ) " 은 " 쓰레기 수집 " 이라 불리우는 공정으로 나머지 저장 데이타 모두를 복사함으로써 꽉 들어찬다. 디렉토리는 각 메시지의 개시 및 빈 메모리의 개시에 대한 포인터를 포함한다. 상기 복사된 데이타는 그후 필요에 따라 제 1의 " m " 블록을 채워서 상기 "홀 " 을 꽉 채우도록 매모리내에 순차적으로 재저장된다. 이러한 방식으로 인한 데이타의 반복 이동에 기인하여, 데이타 모두에 대한 에러 보정을 적용하는 것이 필요하다. 이는 복사시 에러의 축적에 기인한 데이타의 질에 있어서의 저하를 방지한다.
상기에 기술한 해결방안 모두의 사용에 따르는 주요 단점은 디렉토리 데이타를 보유할 충분한 용량을 지니며 "회복될수 있는" 메모리의 부분이 길고 연속적일 필요가 있다. " 회복될수 있는 " 이라는 용어는, 이러한 부분에 기록된 본래의 데이타가 상기 부분에 에러가 없거나 에러 보정 코드를 사용함으로써 회복될수 있다는 것을 의미한다. 디렉토리에 저장된 데이타는 상기 데이타에서의 어떠한 변질도 허용될수 없을 정도로 매우 중요하다.
선행기술의 시스템을 동작시키는 경우, 메모리 검사 절차는 볼록을 "양호" 하거나 " 불량 " 한 것으로 분류하도록 실행된다. 불량 블록은 그러한 방식으로 표시되어 메시지 데이타의 저장용으로 사용되지 않는다. 상기 표시는 상기 불록에 대한 적절한 디렉토리 엔트리에 저장되어 있는 특정의 예약값으로 이행된다. 따라서, 예를들면, 4 × 1 Mbyte ARAM은 행의 길이 (즉, 4096 비트) 를 각각 지니는 1024 개의 블록으로 분할된다. 제 1의 4개 블록은 디렉토리에 전용되며, 에러가 없다. 상기 디렉토리는 각각 8 비트로 이루어져 있는 1024 개의 엔트리를 포함한다. 각각의 그러한 엔트리는 한 블록과 관련되어 있다. 또한, 상기 디렉토리는 발생시간 및 데이타와 같은 메시지 관련 데이타의 메시지당 32 비트를 저장한다. 최대 128 개의 메시지가 저장될 수 있다. 그러므로, 4 Kbit 는 상기 메시지 관련 정보 모두를 저장하는데 필요하다. 따라서, 선행기술의 디렉토리는 디렉토리 정보에 대하여는 8 Kbit를, 그리고 상기 메시지 관련 정보에 대하여는 4 Kbit 를 필요로하며 전체적으로는 12 Kbit 를 필요로 한다.
선행기술에시 연속적인 12 Kbit의 에러없는 부분인 그러한 회복가능한 부분에 대한 필요성은 메모리 디바이스의 사양이 이완될수 있는 범위를 제한한다. 결과적으로, DRAM 보다는 오히려 ARAM 을 사용하는 것으로부터 생기는 비용 절감은, 제조된 디바이스의 질의 여러 등급밖에 나서, 보다 높은 등급이 길고 연속적이며 회복가능한 부분에 대해 이러한 요구를 만족시키는데 사용되어야 하기때문에 달리 DRAM 이 비용 절감할 수 있는 것보다 적다. 물론, 디렉토리는 또한 스태틱 RAM 과 같은 개별 디바이스에 저장될수 있지만, 이는 또한 총체적인 시스템 비용을 증가시킨다.
상기 2가지 해결 방안의 또다른 단점은 FLASH 메모리와 함께 사용하기에는 비실용적이라는 점이다. FLASH 메모리는 (a) 메모리의 큰 영역부분 또는 심지어 전체 메모리를 동시에 소거함으로써만 소거가능하고, (b) 100,000 과 같은 제한된 횟수의 기록/소거 사이클을 지니는 특성을 갖는다. 이들 2가지 특성의 컴비네이션은 AFLASH 의 사용가능 수명을 극히 제한할 수 있다. 이는 데이타의 블록중 어느 하나가 소거 또는 기록될때마다 디렉토리가 변경되어야 하기 때문이다. 디렉토리가 N 블록과 함께 동시에 소거가능하고, 예를들면 N = 10인 경우, 디렉토리가 100,000 번 사이클링되어진 것처럼, 상기 블록 각각은 단지 100,000 사이클만큼 적게 직면할수 있다 (메모리 블록의 변화 횟수가 메모리 블록을 순차적으로 변경함으로써와 같이 동등하게 되어진 경우). 따라서, 상상컨대 상기 볼록은 상기 디렉토리를 저장하는 블록의 보다 많은 사용이 없다면 남아있는 사용가능 수명의 90 % 를 지닐수있다.
발명의 개요
본 발명의 제 1 목적은 전자 메모리 디바이스의 에러 없는 부분을 필요로 하지 않는 메모리에 저장된 데이타용 디렉토리를 제공하는 것이다.
본 발명의 제 2 목적은 에러 보정을 허용하는 특성을 지니는 길이가 길며 연속적인 회복가능한 부분을 필요로 하지 않는 메모리에 저장된 데이타용 디렉토리를 제공하는 것이다.
본 발명의 제 3 목적은 사용 수명을 부당하게 제한하지 않고서도 내부에 저장된 데이타의 디렉토리를 유지하기 위해 FLASH 메모리 디바이스와 함께 사용될수 있는 실용적인 기술을 제공하는 것이다.
본 발명의 제 4 목적은 낮은 등급 및 적절히 낮은 비용의 메모리 디바이스에 저장된 데이타의 디렉토리를 유지할 수 있는 기술을 제공함으로써 비용을 절감하는 것이다.
이들 및 다른 목적은 복수개의 정보 항목과 관련된 데이타를 전자 메모리 디바이스에 저장하는 장치에 관한 본 발명의 한 실시태양에 의해 달성된다. 상기 장치는 한 단위의 데이타를 저장하기에 제각기 적합한 다수개의 저장 장소를 각각 포함하는 복수개의 블록으로 분할되는 데이타 저장 영역을 지니는 전자 메모리 디바이스를 포함하는데, 상기 블록 각각은, 결함있는 디바이스의 부품에 기인하여 저장된 데이타에 어떤 에러가 존재할지라도 본래의 데이타가 정확히 판독될수 있도록 지정된 부품에 회복가능한 부품을 지닌다. 단독 블록당 한 정보 항목과 관련된 데이타를 저장하고, 블록내에 관련 데이타가 저장되는 정보항목에 유일한 식별코드를 상기 블록의 지정된 부품에 저장함으로써 상기 복수개의 정보항목에 대한 디렉토리를 저장하기 위한 수단이 제공된다.
본 발명의 다른 한 실시태양은 복수개의 정보항목에 관한 데이타를 전자 메모리 디바이스에 저장하는 방법에 관한 것이다. 상기 방법은 비록 결함있는 디바이스의 부품에 기인하여 저장된 데이타에 어떤 에러가 존재할 수 있더라도 본래의 데이타가 정확히 판독될수 있도록 지정된 부품에 회복가능한 부분을 각각 지니는 복수개의 블록으로 상기 디바이스의 데이타 저장 영역을 분할하는 단계를 포함한다. 한 정보 항목에 관련된 데이타는 단위 블록으로 저장된다. 디렉토리 데이타는, 블록에 관련 데이타가 저장되는 정보 항목에 유일한 식별코드를 포함하면서, 상기 블록의 지정된 부품에 저장된다.
제 1 도는 메모리 디바이스에 저장된 데이타가 어떠한 방식으로 본 발명에 따라 배치되는 지를 나타낸 것이다.
제 2 도는 본 발명에 따라 메모리 디바이스의 디렉토리 부분 및 데이타 부분으로 데이타를 저장하는데 사용되는 단계의 플로우 챠트이다.
제 3 도는 제 2 도에 도시된 단계중 한가지 단계의 세부를 보여주는 플로우 챠트이다.
제 4 도는 본 발명에 따라 메모리 디바이스로부터 데이타를 검색하는데 사용되는 단계의 플로우 챠트이다.
제 5 도는 제 4 도에 도시된 단계중 한가지 단계의 세부를 보여주는 플로우 챠트이다.
제 6 도는 제 4 도에 도시된 단계중 다른 한가지 단계의 세부를 보여주는 플로우 챠트이다.
제 7 도는 ARAM 디바이스를 소거하는데 사용되는 단계의 플로우 챠트이다.
제 8 도는 AFLASH 디바이스를 소거하는데 사용되는 단계의 플로우 챠트이다.
바람직한 실시예에 대한 상세한 설명
메모리의 에러없는 부분을 지니지 않고, 더우기 길이가 길고, 연속적이며, 회복가능한 부분이 에러 보정을 허용하는 특성을 지니지 않으면서 ARAM 또는 AFLASH 디바이스에 저장된 데이타용 디렉토리 정보를 신뢰성 있게 보유하는 것이 본 발명으로 가능하다. 하기에 설명되겠지만, 이는 상기 메모리 디바이스의 필요한 사양을 이완시킴으로써 가격을 절감하고, 또한 FLASH 형태의 메모리 디바이스를 사용하는 것을 가능하게 하는 여러가지 중요한 이점을 지닌다.
제 1 도에서 알수 있는 바와같이, ARAM 또는 FLASH 디바이스중 어느 하나일 수 있는 메모리 디바이스 (1) 는 복수개의 블록 (3) 으로 분할된다. ARAM 에 있어서, 이와같이 디바이스 (1) 를 복수개의 블록 (3) 으로 분할하는 것은 가상 분할에 의해 행해진다. 이는 블록의 지정이 상기 디바이스상에서 물리적으로 행해지는 것이 아니라, 오히려 공지된 방식의 소프트웨어 (이에 대한 세부는 반드시 필요하다고 생각지 않는다) 에 의해 행해진다. 이하는 대조적으로, AFLASH 디바이스를 여러개의 블록으로 분할하는 것은 물리적으로 행해진다. 어느 경우든, 디바이스 (1) 의메모리 용량, 각 블록의 사이즈, 및 블록의 갯수는 ARAM 제조업자, 특히 전화 응답기의 설계자와 같은 ARAM 의 사용자, 또는 예를들면 상기 디바이스가 적용되는 용도에서의 특정한 사용의 요구를 토대로 하는 이들 모두에 의해 내려질수 있는 설계 결정이다. 블록 (3) 의 각각은 복수개의 페이지 (5) 로 분할된다. 각 블록을 페이지로 분할하는 편리한 방식은 각행의 디바이스 (1) 를 한 페이지로서 사용하는 것이다. 그러나, 한 행 또는 복수개의 행의 부분은 한 페이지를 구성하도록 마찬가지로 지정될수 있다.
본 발명의 현저한 실시태양에 의하면, 전체적인 디렉토리는 메모리의 길이가 길고, 연속적이며, 회복가능한 부분에 저장된 일련의 순차적인 바이트로서 더이상 유지되지 않는다. 그 대신에, 상기 디렉토리는 그의 일부가 블록 (3) 의 각각에 저장되도록 분산되어 있다. 보다 구체적으로 기술하면, 제 1 도에 도시된 바와같이, 블록 (3) 의 각각은 디렉토리 부분 (7) 을 포함한다. 디렉토리 부분 (7) 은 각 블록의 제 1 페이지의 개시부분에 배치되어 있다. 디바이스 (1) 의 디렉토리 부분 (7) 은 " 회복가능 " 하여야 한다. 수정된 해밍턴 코드로서 알려져 있는 한 에러 보정기술에 의하면, 알고리즘은 데이타의 n - 비트의 각 그룹에 에러 보정 정보로서 알려져 있는 것의 m - 비트의 다른 그룹을 추가시킨다. 알고리즘은, 한 에러가 데이타의 n + m 비트의 어느 곳에서 발생한 경우 (즉, 한 비트가 1 에서 0 으로 또는 0 에서 1 로 변한 경우, 본래 데이타의 회복을 가능하게 한다. 이는 또한 2 개의 에러가 발생한 경우를 식별하지만, 그러한 경우에 본래 데이타가 회복될수 없다. 2 개 이상의 에러는 식별된다는 보장을 받을 수 없으며 잘못된 결과를 초래시킨다. 그러한 알고리즘의 하드웨어 구현의 한 예는 n = 32 이고 m = 7 일 경우 미합중국, 캘리포니아, 산타 클라라에 소재하는 National Semicondurtor Corporation 에 의해 제조된 74 - F420 과 같은 TTL 디바이스에서 찾아볼 수 있다. 바람직한 실시예에서, m = 4 이고 n = 4 인데, 이는 결함의 형태 및 결함 비트의 장소에 관계없이 " 회복가능한 " 메모리의 바이트당 한 에러를 지니는 것을 허용한다. 이러한 기술은 1986 년 제 2 판 Prentice - Hall 중 Richard W.Hamming 의 " Coding and Information Theory " 및 1988 년 MIT Press Series in Computer Systems 중 Benjamin Arazi 의 " A Common Sense Approach to the Theory of Error Correcting Codes " 에 기술되어 있는데, 이들은 본 발명에 참고가 된다. 에러 보정을 이행하기 위하여, 에러보정 정보는 메시지 정보의 저장에 앞서 발생되고, 2 가지 형태의 정보는 한 단위로서 저장된다. 데이타가 ARAM 으로부터 검색 또는 판독되는 경우, 에러 보정 정보는 메시지 정보와 함께 판독되고, 알고리즘은 본래의 데이타를 회복시키도록 사용된다. 본 명세서에서 사용되는 바와같이, 메모리의 회복가능한 부분 " 으로부터 판독하는 " 또는 그러한 회복가능한 부분 " 으로 기록하는 " 용어로 언급되는 단계의 순서는 에러 보정절차를 포함한다.
상기 디바이스의 " 회복가능한 부분 " 에 의존하는 방금 기술한 본 발명의 특징에 기인하여, 선행기술에 의해 부가되는 사양의 이완에 관한 제한은 상당히 용이해졌다. 메모리의 결함없는 부분에 디렉토리를 수용하는 것이 반드시 필요하지 않다. 메모리가 에러 보정을 허용하는 특성을 지니는 경우, 선행기술의 해결 방안들도 결함없는 부분을 반드시 필요로 하지 않는다는 점에 유념해야 한다. 그러나,그러한 해결방안은 메모리의 " 회복가능한 " 부분의 길이가 길고, 연속적인 블록을 필요로 한다. 그러한 연속적인 블록은 메모리 디바이스의 가격을 올리는 것에 대해 바람직하지 못한 영향을 주기에 충분한 심한 제한일수 있다. 그와는 대조적으로, 단지 메모리의 " 회복가능한 " 부분의 비교적 짧고 연속적인 블록만이 본 발명에 필요하다. 예를들면, 상기에 기술한 선행기술의 해결방안들에 있어서, 8 Kbit는 디렉토리용으로 사용되고, 4 Kbit 는 메시지가 녹음된 시간 및 일자와 같은 메시지 관련 정보를 보유하는데 사용된다. 후자의 데이타는 또한 에러에 민감하다. 본 발명에서는, 각 디렉토리 부분 (7) 을 이루는 순차적인 비트의 그러한 연속 부분의 전형적인 갯수는 선행 기술의 12 Kbit 와는 대조적으로 하기에 설명되는 바와같이 60 비트이다.
상기 디렉트리 부분 (7) 의 각각은 디렉토리의 필드로 분류되는 다음과 같은 정보를 포함한다. 상기 디렉토리의 제 1 필드는 정보항목에 유일한 식별 코드를 저장하기 위한 것이다. 전화 응답기의 이러한 예에서, 상기 식별 코드는 메시지 번호이다. 특정의 음성 메시지와 관련된 블록 모두는 영향을 받은 블록 모두에 대해 이러한 필드에 저장되는 동일한 메시지 번호가 달린다. 제 2 필드는 이러한 메시지 번호에 속하는 데이타가 저장되는 제 1 블록이 현재 블록인지를 나타내는 플래그를 저장하는데 사용되는 비트이다. 제 3 필드는 동일 메시지에 속하는 데이타가 저장되는 다음 블록을 지적하는 연결 데이타를 저장한다.
개 4 필드는 블록에 특정한 포맷 정보를 저장한다. 상기에 설명되었던 바와 같이, 전화 응답기에 사용되는 ARAM 및 AFLASH 디바이스는 예를들면 허용될 수 있는 불량한 비트수를 지닐수 있다. 예를들면 이러한 불량한 비트는, 예를들면 에러에 대한 음성 저장 포맷 또는 음성 압축 알고리즘의 허용한계, 및 음성에 대한 사용자의 선호 및 가격사이의 절충에 의존하여 총체적으로 0.5 % 의 메모리 용량일 수 있다. 상기 포맷 정보는, 페이지가 음성정보를 저장하는데 사용하기에 충분히 높은 질인지 결정이 내려질 수 있도록 페이지마다 배치되는데, 이러한 경우에, 한 비트를 사용하므로 상기 페이지는 "양호한" 것으로 표시된다. 그러하지 않을 경우, 상기 페이지는 " 불량 " 한 것으로 표시된다.
각 필드의 바람직한 사이즈는 메시지 수에 대해 8 비트이며, 제 1 블록 표시에 대해 1 비트이고, 연결 데이타에 대해 4 비트이며, 포맷 데이타에 대해 8 비트이므로, 총체적으로 28 비트이다 (단위 블록당 8 페이지라고 가정하는 경우). 그 이외에도, 4 바이트 (즉, 32 비트) 는 총체적으로 60 비트인 경우 상기에 기술한 메시지 관련 정보용으로 사용가능하게 된다. 1024 개의 행을 갖는 4 × 1 Mbyte ARAM 에 대하여, 이들 행은 256 개의 블록으로 가상적으로 분할될수 있고, 그럼으로써 최대 256 개의 메시지를 허용할 수 있는데, 그 이유는 각 블록이 한 메시지에 전용되기 때문이다. 60 비트가 블록 각각에 대한 디렉토리에 필요한 경우, 분산된 디렉토리의 용량은 15 Kbit 이여야 한다. ARAM 의 에러없는 부분이 상기 디렉토리를 수용하는데 사용되는 경우, 15 Kbit 용량은 충분하다. 그러나, ARAM 의 부분에 에러가 없는 경우, 회복가능한 부분은 에러 보정 정보를 저장하도록 증가된 용량을 지녀야 한다. 예를들면, 4 비트 데이타 그룹으로 운영하는 해밍턴 에러 보정 알고리즘에 대해, 4 비트의 에러 보정 정보는 매 4 비트의 메시지 정보용으로 저장된다. 이는 각 8 비트에 대해 하나 이하의 에러를 지니는 것을 허용하면서 본래 데이타를 회복시킨다. 그러한 경우에, 디렉토리 사이즈는 30 Kbit 가 된다. ARAM 의 등급이 보다 높아짐으로써 보다 적은 에러 보정 정보 (예컨대 32 비트 데이타 + 7 비트 에러 보정 정보)를 필요로 하는 경우, 디렉토리 사이즈에 있어서의 증가는 보다 작다.
전력이 ARAM 에 새로이 인가될때마다, 또는 상기 전화 응답기의 수명에 있어서 AFLASH 가 한번인 경우, 초기화 절차 (도시되지 않음) 가 이행되는데, 이 경우 포맷 정보는 각 블록 (3) 의 디렉토리를 이루는 제 4 필드로 저장된다. 이러한 포맷 정보는 통상적으로 알려진 절차에 따라 상기 디바이스 (1) 의 이전에 행해진 분석으로부터 사용될수 있다. 또한, 상기 블록 각각은 이러한 블록으로 정보를 받아들이기 위해 " 비어 " 있는 것으로 표시된다. 본 발명에 의하면, 상기 블록들은 메시지 번호 필드의 유리한 사용에 의해 " 비어 " 있는 것으로 표시될수 있다. 특정의 번호를 이러한 메시지 필드로 저장하는 것은 " 빈 " 블록을 표시하는 것으로 간주될수 있다. 따라서 예를들면, 2 진 값 11111111 은 그러한 빈 블록의 표시이다. 초기에, 상기 블록 모두는 각각의 메시지 번호로 저장되는 이러한 값을 지닌다.
지금부터 제 2 도를 참조하면, 초기화 단계 (9) 는 새로운 메시지가 메모리에 저장될때마다 실행된다. 예를들면, 착신 음성 메시지의 수신이 검출되어진 경우, 전화 응답기 (본 명세서에서는 기술되지 않음) 의 제어 회로는 상기 착신 음성 메시지에 메시지 번호를 지정한다. 그렇게 행해지는 경우, 경로 선택은 내부로 데이타의 저장을 허용하도록 비어있는 블록을 찾기 위해 단계 (11) 로 진행한다. 단계 (11) 의 세부사항은 제 3 도에 도시되어 있다.
제 3 도에 있어서, 단계 (15) 는 디바이스 (1) 의 제 1 블록 (3) 의 상태에 관해 검사될 제 1 블록 (3) 의 번호를 유도한다. ARAM 의 경우에, 검사될 제 1 블록은 불록 (0) 이다. AFLASH 에 대하여는, 상기에 기술한 바와같이, 기록/소거 사이클의 제한에 관하여 블록 각각에 의해 직면하게 되는 변화의 수를 가능한한 동일하게 하는것이 매우 유리하다. 결과적으로, 검사될 제 1 블록은 최종의 녹음 블록의 표기법을 기초로하여 선택된다. 그러한 표기법은 또다른 메모리 (도시되지 않음) 에 저장될수 있다. 상기 블록으로부터의 녹음은 그후 연이은 빈 블록 (들) 에 순차적으로 속행된다. 변형예는 그러한 표기법을 유지할 필요성을 없애는 대신에, 임의 번호 생성기로 한 블록을 선택하는 것이다. 어떠한 공지된 형태의 임의 번호 생성기라도 사용될수 있다. 임의로 뽑혀진 번호 (R) 가 호출된다고 하자. 상기 AFLASH 의 제 1 블록으로부터 시작할때, " R " 번째의 사용되지 않은 블록이 선택되며 메시지의 저장은 상기 블록으로부터 시작된다. 이는 통계적인 방법이므로, AFLASH 에서의 블록 모두의 사용을 완전히 동일하게 할수 없다.
단계 (15) 가 마무리되면, 단계 (17) 는 그후 현재 블록의 메시지 필드를 판독하고, 단계 (19) 는 상기 현재 블록이 " 비어 " 있는 상태를 지니는 지를 검사한다. 이는 메시지 번호 필드가 11111111 인지의 여부를 결정함으로써 행해진다. 그러하지 않을 경우, 단계 (21) 는 디바이스 (1) 가 내부에 더 이상의 블록 (3) 을 지니는지의 여부를 검사한다. ARAM 에서, 이는 ARAM 에서 사용될수 있는 블록이 번호순서중 가장 큰 번호블록 (예컨대, 256 개의 블록을 지니는 예에서 번호 255) 이도달되어졌는지의 여부를 검사하는 것을 의미한다. AFLASH 의 경우, 블록 번호 (10) 가 상기한 내용에 따라 제 1 블록이도록 단계 (15) 에 의해 선택된 경우, 단계 (21) 는 다른 모든 블록을 통해 사이클링하고, 블록 번호 (0) 로 복귀하며 최종 블록인 것으로 간주되는 단계 번호 (9) 로 진행한다. 단계 (21) 는 더이상의 블록이 사용될수 있다고 결정하는 경우, 현재 블록의 번호는 단계 (23) 에 의해 1 만큼 증분되고, 서브루틴은 한번 더 단계 (17) 를 이행하도록 복귀한다. 그러나, 단계 (21) 는 더이상의 블록이 사용될수 없다는 것을 나타내는 부정 응답을 야기시키는 경우, 이는 메모리가 가득차 있다는 사실을 나타낸다. 결과적으로, 전화 응답기는 단순하 전화를 걸거나 어떠한 메시지도 녹음될수 없다고 전화건 사람에게 알릴수 있다. 물론, 다른 선택 사양이 또한 사용될수 있지만, 그러한 선택 사양이 전혀 없는 세부사항은 본 발명을 설명하는데 필요하다고 생각된다. 단계 (19) 는 빈 블록이 사용될수 있다는 것을 나타내는 긍정 응답을 야기시키는 경우, 상기 블록 번호는 단계 (27) (제 2 도 참조) 에 의해 사용되도록 단계 (25) 에 의해 출력된다.
음성 메시지의 저장이 개시될수 있는 빈 블록을 식별하는 단계 (11) 이외에도, 단계 (13) 는 또한, 음성 메시지의 길이가 단일 블록의 메모리 용량을 초과하는 경우에 필요한 다음의 빈 블록을 찾는다. 상기 다음의 빈 블록은 현재 블록을 발견하도록 제 3 도에 도시된 바와같은 동일한 방식으로 식별된다. 결과적으로, 단계 (11) 및 단계 (13) 의 출력은 현재의 블록뿐만 아니라 다음의 빈 블록 모두에 대한 블록 번호이다. 그러나, 메모리의 가득참이 단계 (13) 의 일부로서 단계 (21) 에 의해 직면하게 되는경우, 단계 (13) 는 현재 블록에 저장된 연결 정보가 현재블록 자체의 번호이라는 것을 나타낸다. 이러한 기능은 제 3 도에 파선으로 나타낸 박스 (22) 에 포함되어 상기 박스 (22) 를 단계 (11) 에만 사용하는 다른 박스와 식별한다. 그 자체를 지적하는 블록은 하기에 설명되는 바와같이, 메시지의 종료에 대한 신호로서 간주된다.
지금부터 제 2 도를 참조하면, 단계 (11) 및 단계 (13) 에 의해 형성되는 현재 블록번호 및 다음 블록번호 정보는 블록 (27) 에의해 사용된다. 상기 현재 블록번호는 그러한 현재 블록을 액세스하는데 사용되며 상기 메시지 번호는 그의 메시지 번호 필드로 기록된다. 또한, 상기 다음의 빈 블록의 블록번호는 연결데이타로서 디렉토리 부분 (7) 의 제 3 필드에 저장된다. 단계 (29) 에서 이는 현재 메시지 (즉, 적어도 메시지의 개시부분) 에 속하는 데이타가 저장되고 있는 제 1 블록인지 결정이 내려진다. 그러한 결정은 당업자에게 자명한 공지된 기술에 의해 내려진다. 현재 블록이 상기 제 1 블록이라고 결정되는 경우, 제 2 필드의 플래그는 단계 (31) 에 따라 적절하게 표시된다. 그러하지 않을 경우, 상기 플래그는 단계 (32) 에 따라 적절하게 표시된다. 어느 경우든, 상기 경로선택은 현재 블록의 제 4 필드에 저장된 포맷 정보를 판독하고 이를 사용하여 데이타를 현재 블록내에 기록하기 위해 단계 (37) 로부터 개시하는 단계의 순서를 이행하는 단계 (33) 로 진행한다.
단계 (37) 는 현재 페이지이도록 현재 블록의 제 1 페이지를 설정한다. 단계 (39) 는 내부로 데이타를 저장할 목적으로 현재 페이지가 타당한 지를 결정한다. 이는 단계 (33) 로부터 사용될수 있는 포맷 데이타를 검사함으로써 행해진다. 현재 페이지가 데이타 저장에 적합한 경우, 데이타는 단계 (41) 에 따라, 내부로 기록된다. 여러 공지된 기술중 어느 기술이라도 이러한 목적으로 사용될수 있으므로 어떠한 세부 사항도 필요하다고 생각되지 않는다.
디바이스 (1) 에서의 저장하기 위한 데이타를 얻는 한가지 방법이 하기에 " FIFO " (도시되지 않음) 로서 언급되는 선입 선출 저장 디바이스를 통해서 라는 것을 이러한 시점에서 지적하는 것이 주목할만하다. 상기 FIFO 는 하드웨어나 소프트웨어에서 구현될수 있다. 데이타는 전화선으로부터 수신됨에 따라 상기 FIFO 에 저장된다. 이러한 데이타는 본 발명을 구현하기 위해 본 명세서에서 기술되는 여러 단계의 동작을 제어하는 클록의 타이밍 요건에 따라 상기 FIFO 로부터 검색된다. 그러한 FIFO 는 대체로 본 명세서에서 데이타 생성기로서 언급되는 것의 한 예이다. 따라서, 단계 (41) 는 상기 데이타 생성기로부터 데이타를 검색하고 이를 현재 블록의 현재 페이지내로 기록한다.
FIFO 의 정상 동작에 있어서, 특정 갯수의 비트가 검색된다. 일단 그러한 갯수의 비트가 단계 (41) 에 따라 디바이스 (1) 에 저장되는 경우, 단계 (43) 는 데이타 생성기가 비어있는지를 결정한다. 그러하지 않을 경우, 이는 추가 데이타가 현재 페이지에의 저장을 위해 FIFO 에 남아 있다는 것을 의미한다. 그러나, 또다른 데이타가 현재 페이지내에 기록될 수 있기전에, 단계 (45) 는 현재 페이지가 채워져 있는지를 결정한다. 이는 현재 페이지가 데이타 생성기로부터 현재 페이지로 전달되는 비트의 수를 받아들이기에 충분한 용량을 지니는 지를 결정함으로써 행해진다. 현재 페이지가 아직도 채워져 있지않은 경우, 단계 (41) 는 다시 이행된다. 그러나, 단계 (45) 는 현재 페이지가 채워져 있다는 것을 나타내는 경우, 단계 (47)는 현재 페이지가 블록의 최종 페이지인지를 결정한다. 그러하지 않을 경우, 현재 페이지 번호는 단계 (49) 에 따라, 1 만큼 증분되고, 경로 선택은 단계 (39) 로 다시 향하게 됨으로써 새로이 지정된 현재 페이지가 데이타의 저장에대해 유효한지의 여부에 대해 검사될수 있게한다. 그러나, 단계 (47) 는 현재 페이지가 현재 블록의 최종 페이지인 것을 나타내는 경우, 단계 (51) 는 제 3 필드에 저장된 연결 블록의 앞서 결정된 번호를 사용하여 물론 이후 현재 블록이되는 상기 연결 블록으로 가게한다. 단계 (51) 로부터 경로 선택은 새로이 지정된 현재 블록이 연결될 다음의 빈 블록을 결정하는 단계 (13) 로 복귀한다. 그러나, 단계 (52) 는 현재 블록이 그 자체에 연결된다고 결정하는 경우, 이는 메시지 종료 상태를 나타내며, 단계 (54) 는 메시지 녹음을 종단한다.
단계 (43) 에서 내려지는 결정이 긍정이고, 결과적으로 데이타 생성기가 비어있다는 것을 나타내는 경우, 단계 (53) 는 메시지 종료 신호가 수신되었는지를 결정한다. 이는 메시지 정보의 일부일수 있는 통상적인 사용에 있어서의 신호를 기초로하여 내려지는 종래의 결정이다. 예를들면, 그러한 신호는 상대방이 상대방으로부터의 대화 종단을 나타내는 수초의 기간에 걸쳐 측정되는 바와같은 낮은 라인 에너지로 전화를 걸었으며, 그리고/또는 메시지 길이상의 국부 타임 아웃이 도달되었다는 것을 니타내는 교환기에 의해 전송되는 라인 신호일 수 있다. 단계 (53) 로부터 보다 많은 메시지가 여전히 전송되고 있다는 것이 자명한 경우, 미리 결정된 지속기간의 대기 단계 (55) 는 도달하리라고 기대된 데이타에 대한 추가시간을 허용하는데 사용된다. 단계 (43) 는 이후 반복된다. 그러나, 단계 (53) 는 메시지 종료 신호가 획득되었다는 것을 나타내는 경우, 디바이스 (1) 로의 어떠한 또다른 데이타 저장도 필요하지 않으며, 경로 선택은 종료에 도달됨으로써 메시지 녹음이 정지되게 한다.
상기에 기술한 바와같이 본 발명에 따라 디바이스 (1) 에 저장된 데이타의 저장은 제 4 도 내지 제 6 도와 연관지어 하기에 설명된다. 구체적으로 기술하면, 제 4 도에 따른 동작은 재생 모드로 전화응답기를 작동시키는 사용자로부터 개시될수 있다. 이는, 최종 또는 사용자가 특히 메시지 번호를 명시할 수 있을 때까지 음성 메시지 모두가 제 1 사용자로부터 순차적으로 재생되는 것을 요구함으로써 종래의 방식으로 행해질 수 있다. 어느 경우든지, 제 4 도의 개시부분에서는 특정 메시지 번호가 요구되었다고 가정된다. 따라서, 단계 (61) 는 이러한 특정 메시지 번호에 해당하는 데이타가 저장되었던 제 1 블록을 찾는다. 단계 (61) 의 세부사항은 제 5 도에 도시되어 있으며, 이는 지금부터 기술된다.
이러한 시점에서 디바이스 (1) 의 블록 (3) 중 하나가 관심을 갖는 메시지용 데이타를 포함하는 제 1 블록인지를 알 도리가 전혀 없다. 따라서, 디바이스 (1) 의 어느 한 블록으로 부터 개시하여 모든 블록을 순환적으로 스캐닝하는 것이 가능하다. 예를들면, 블록번호 10 이 선택된 블록인 경우, 블록번호 10 의 제 1 필드에 저장된 메시지 번호는 단계 (63) 에 따라 판독된다. 단계 (65) 는 저장된 메시지 번호가 관심을 갖는 메시지와 동일한 번호인지를 결정한다. 그러한 경우, 단계 (67) 는 제 2 필드에 저장된 데이타를 판독하고, 단계 (69) 는 이것이 메시지의 제 1 블록이라는 것을 플래그가 나타내는지를 결정한다. 그러한 경우, 이러한 서브루틴은 제 4 도의 단계 (81) (이는 하기에 설명됨) 로 진행함으로써 배출된다. 그러나, 현재 블록이 메시지의 제 1 블록이 아닌 경우, 단계 (71) 는 현재 블록이 검사될 사용가능한 디바이스 (1) 의 최종 사용가능 블록인지를 결정한다. 현재 블록이 최종 블록이 아닌경우, 단계 (73) 는 현재 블록 번호의 값을 1 만큼 증분하고, 서브루틴은 블록번호 11 용으로 단계 (63) 를 이행하도록 복귀한다. 그러나, 현재 블록번호가 최종 사용가능 블록번호 (즉, 블록번호 9) 인 경우, 단계 (75) 는 관심을 갖는 요구된 메시지 번호가 존재하지 않는다는 것을 보여주도록 에러 표시를 발생시킨다. 이는 예를들면 사용자에 대한 가시적 또는 음성적 표시일 수 있다.
지금부터 제 4 도를 참조하면, 일단 관심을 갖는 메시지의 제 1 블록이 단계 (61) 에 따라 식별되어진 경우, 단계 (81) 는 제 4 필드에 저장된 포맷 데이타를 판독하고, 그후 단계 (83) 는 현재 블록에 저장된 데이타를 판독하도록 진행한다. 이것이 어떠한 방식으로 행해지는가에 대한 세부사항은 제 6 도에 도시되어 있으며, 이는 지금부터 설명될 것이다. 단계 (85) 는 현재 페이지로서 현재 블록의 제 1 페이지 번호를 설정시킨다. 단계 (87) 는 그후 현재 페이지가 유효한 것으로 간주되는지, 결과적으로는 유효 데이타를 포함하도록 현재 페이지가 의존될수 있는지를 결정하도록 상기 포맷 데이타를 검사한다. 그러한 경우, 단계 (89) 는 상기 페이지로부터 데이타를 판독하고 상기 데이타를 음성으로 변환시키는 적절한 데코딩 회로 (도시되지 않음) 에 상기 데이타를 전송한다. 여러 공지된 기술중 어느 하나라도 이러한 목적으로 사용될수 있음으로써, 어떠한 세부사항이라도 필요하다고 생각되지 않는다. 단계 (89) 는 또한 해밍턴 에러 보정 알고리즘에의해 요구되는 동작을 포함한다.
현재 페이지로부터 데이타 검색 다음에, 단계 (91) 는 더 이상의 페이지가 현재 블록에 존재하는지를 결정한다. 그러한 경우에, 현재 페이지의 값은 단계 (93) 에 따라 1 만큼 증분된다. 서브 루틴은 그후 한번 더 단계 (87) 를 이행하도록 복귀된다. 그러나, 현재 페이지가 현재 블록의 최종 페이지인 경우, 상기 동작은 메시지 종료 신호가 수신되었는지를 결정하는 단계 (95) (이러한 시점에서 제 4 도로 복귀) 로 진행한다. 그러한 신호는 메시지 데이타의 일부로 형성될 수 있거나, 단계 (13) 와 연관지어 상기에 기술된 바와같이 연결 블록으로서 그 자체를 지적하는 블록의 결과일 수 있다. 메시지 종료 신호가 수신되어진 경우, 데이타 검색 동작이 완료되며, 이러한 경로 선택은 종료에 도달되었다. 그러나, 단계 (95) 에 의해 내려진 결정이 부정인 경우, 단계 (97) 는 상기에 기술된 바와같이, 제 3 필드에 저장된 데이타에 의해 현재 블록에 연결되는 다음 블록을 식별한다. 연결 블록의 메시지 번호 및 연결 번호는 그후 단계 (99) 에 따라 판독된다. 단계 (101) 는 다음 연결 블록의 메시지 번호가 관심을 갖는 현재 메시지 번호와 동일한 지를 검사한다. 그러한 경우, 단계 (102) 는 블록의 연결 데이타가 그 자체를 지적하는지를 검사한다. 상기에 설명된 바와같이, 이는 메시지 종료 표시이므로, 긍정적인 발견은 경로 선택의 종단을 초래시킨다. 그러나, 연결 데이타가 또다른 블록을 지적하는 경우, 단계 (103) 는 현재 블록의 값을 다음 블록의 값으로 대체시키고, 새로이 지정된 현재 블록번호는 그후 단계 (81) 로 복귀하고 이것과 차후 단계를 상기에 방금 제공된 설명에 따라 반복시킴으로써 처리된다. 단계 (101) 에 의해 내려지는 결정이 부정인 경우, 이는 연결 블록이 관심을 갖는 메시지로부터 데이타를 저장하는데 사실상 필요하지 않다는 것을 나타내는데, 그 이유는 상기 블록이 또다른 메시지에 결국 할당됨으로써 메시지 검색이 종료되는 것으로 간주되기 때문이다. 메시지 종료가 예를들면 앞서 생긴 단계 (95) 에 의해 결정될수 있지만, 단계 (101, 102) 는 메시지 신호 표시가 어떤 경우에는 메모리 에러에 기인하여 메모리에 저장된 메시지 정보에서 발견되지 않기 때문에 유용하다. 그러한 경우에, 단계 (101, 102) 에의해 결정되는 연결 표시의 종료는 메시지 재생을 종단시킨다.
상기에 상세하게 기술된 메시지 저장 및 메시지 검색 동작에 부가하여, 전화 응답기 용도에서 이행될 필요가 있는 또다른 중요한 태스크는 영향을 받은 블록이 새로운 데이타를 저장할 목적으로 재사용될수 있도록 저장된 데이타를 소거하는 것이다. 제 7 도는 이것이 ARAM 에 대해 어떠한 방식으로 행해지는지를 설명한 것이고, 제 8 도는 그러한 소거가 AFLASH 디바이스에 대해 어떠한 방식으로 이행되는지를 보여준다.
지금부터 제 7 도를 참조하면, 단계 (110) 는 소거될 특정 메시지 번호를 수신한 다음에, 상기 메시지 번호에 속하는 제 1 블록을 찾는다. 이러한 동작은 제 5 도와 관련하여 상기에 기술된 바와 동일하다. 일단 관심을 갖는 메시지 번호에 대한 제 1 블록이 식별되어진 경우, 단계 (112) 는 " 빈 " 블록, 즉 본 예에서 11111111 로 표시되는 바와같이 상기에 설명된 번호로 제 1 필드의 메시지 번호 데이타를 변경시킨다. 단계 (114) 는 현재 블록에 연결되는 다음 블록을 식별하고, 단계 (116) 는 메시지 번호 필드에 저장된 데이타 및 다음 연결 블록의 연결 데이타 필드를 판독한다. 단계 (118) 는 동일한 메시지 번호가 다음 연결 블록에 저장되는지를 결정하고, 그러한 경우, 단계 (119) 는 경로 선택이 종단된다는 것을 나타내도록 블록이 그 자체를 지적하는지를 검사한다. 그러나, 연결 데이타가 또다른 블록을 지적하는 경우, 그 흐름은 단계 (119) 로부터 단계 (112) 로 복귀하여 그러한 블록을 마찬가지로 " 비어 " 있는 것으로 지정한다. 이는 다음 연결 블록이 서브루틴을 종료로 야기시키는 서로 다른 메시지 번호를 지닌다는 것을 단계 (118) 가 발견할때까지 반복된다.
제 8 도는 ARAM 을 소거하기 위해 제 7 도에서 설명된 동작과 상이할 필요성이 있는 AFLASH 를 소거하기 위한 동작을 설명한다. 이러한 동작은 다른 형태의 메모리 디바이스의 경우에 가능한 것과 같은 특정하게 지정된 비트에서라기 보다는 오히려 대형 비트 그룹에서의 소거를 필요로하는 AFLASH 의 상기 기술한 동작 특성에 기인하여, 그리고 새로운 데이타를 기록하기에 앞선 소거의 필요성에 기인하여 필요하다. 이러한 실시예에서, AFLASH 가 블록 (3) 의 단위로 소거될수 있다고 가정된다. 구체적으로 기술하면, 일단 메시지 번호가 소거를 위해 지정되어진 경우, 단계 (120) 는 그러한 메시지 번호의 제 1 블록을 찾는다. 이러한 동작은 제 5 도에서 상기에 기술된 동일한 동작이다. 단계 (122) 는 연결 데이타를 판독하고 단계 (124) 는 포맷 데이타를 판독하며, 상기 데이타 모두는 임시 메모리 (도시되지 않음) 에 저장된다. 단계 (126) 는 그후 총체적인 현재 블록에 있는 모든 메모리 장소를 동시에 소거하며, 단계 (128) 는 그후 현재 블록의 적합한 부분으로 포맷 데이타를 재기록하는데, 그 이유는 이러한 데이타가 영구히 보유되어야 하기 때문이다. 단계 (130) 는 그후 다음 연결 블록을 식별하도록 임시 저장된 연결 정보를 검색한다. 단계 (132) 는 다음 연결 블록의 메시지 번호가 동일한지를 결정하고, 그러한 경우, 단계 (133) 는 경로 선택이 종단된다는 것을 나타내도록 블록이 그 자체를 지적하는지를 검사한다. 그러나, 연결 데이타가 또다른 블록을 지적하는 경우, 상기 동작은 상기에 기술된 바와같이 단계 (133) 로부터 단계 (122) 로 복귀한다. 그러나, 단계 (132) 에 의해 내려진 결정이 부정인 경우, 소거 동작은 종료에 도달된 것으로 간주된다.
제 8 도에 도시된 기술의 변형예에 있어서, 단계 (122, 124, 126) 는 블록을 유효 또는 무효인 것으로 표시하는데 특정하게 지정된 비트가 플래그로서 사용되는 단계로 대체될수 있다. 그러나, 블록은 메시지 번호로서 00000000 을 입력하여 특정하게 지정된 비트에 대한 필요성을 없앰으로써 표시되는것이 바람직스럽다. 그후, 관련 블록 모두가 이러한 방식으로 플래그될때까지 단계 (130, 132, 133, 122) 가 반복된다. 그러한 경우, 소거 단계는 무효로 표시된 블록 모두에 대해 이행된다. 상기 소거 동작후, 단계 (128) 는 포맷 데이타를 다시 소거 블록으로 기록한다. 메모리의 한 부분에 보유된 여러 메시지에 대해 표시 단계를 반복하는 것이 또한 가능하며, 그후 그러한 부분에 있는 모든 블록은 모두 소거된다.
상기에 기술된 발명을 이해하면 ARAM 과 함께 FLASH 를 사용하는 것이 매우 유리하다는 것을 알수있다. 본 발명에 의해 가능해지는 그러한 디바이스에 대한 이완된 사양에 기인하여, 상당한 비용 절감이 달성된다. 더우기, 어느 FLASH 디바이스의 경우라도 상기 디바이스의 한 블록이 변경될때마다 디렉토리를 소거하는 것이더이상 필요하지 않다. 그 대신에, 각각의 블록을 전용된 디렉토리와 관련시킴으로써, 변경되고 있는 단지 그러한 하나의 블록만이 적절하게 변경된 디렉토리를 지닐 필요성이 있다. 메모리에 있는 데이타에 가해지는 변화가 블록 사이에 동일하게 분산되어, 각 블록이 실질적으로 동일한 횟수의 기록/소거 사이클에 직면하도록 AFLASH 를 적절하게 제어함으로써, 상기 AFLASH 의 사용 수명은 길어지고, 결과적으로 관심을 갖는 계획된 용도에서 AFLASH 의 사용을 실용적이게 한다.
본 발명의 특정 실시예가 상기에 상세히 기술되었지만, 본 발명에 대한 여러 변형예는 당업자에게는 자명해질 것이다. 예를들면, 제 2 도에 도시된 동작의 흐름은 단지 한번만 디렉토리를 액세스하도록 지정된다. 연결 블록은 이후에 현재 블록을 선택하는 단계 (11) 가 바로 오는 단계 (13) 에 의해 선택되고, 제 3 필드는 결과적으로 그러한 시점에서 완료될 수 있다. 물론, 이를테면, 단계 (47) 후에 단계 (13) 를 이행하고 경로 선택에서의 그러한 시점에서 디렉토리로 복귀함으로써 제 3 필드로 연결 데이타를 기록하는 것이 또한 가능하다. 그러나, 그렇게 행하는것을 없애는 것이 컴퓨터 처리시간에 대하여 보다 효과적일 수 있다. 기타 가능한 변형예는 상기에 언급된 것과는 다른 여러 공지된 에러 보정방법중 어느 하나의 사용을 포함한다. 또한, 단위 블록당 페이지의 수는, 포맷 데이타를 한 필드가 저장할 필요성을 없애는 단위 블록당 단일 페이지만을 지니면서, 변화될수 있다. 그 대신에, 그러한 데이타는 미리 결정된 메시지 번호로서 저장될 수 있다. 더군다나, 디렉토리를 저장하기 위한 " 회복가능한 " 영역은 제 1 페이지의 개시부분과 달리 블록의 일부에 배치될수 있다. 그 이외에도, 데이타의 분산은 이를테면 4 개의 블록에 대한 디렉토리 데이타가 그들중 하나의 " 회복가능한 " 영역에 저장될수 있을 정도일 수 있다. 따라서, 한 예로서 제 1 도의 실시예를 사용하는 경우, 일련의 4 개의 그러한 블록 (31, 32, 33, 34) 중 블록 (31) 의 제 1 페이지는 상응하는 디렉토리 부분 (71) 을 지니며 나머지 블록은 각각의 디렉토리 부분 (72, 73, 74) 을 지닌다. 따라서, 블록 (31) 의 " 회복가능한 " 영역 (7) 은, 단지 블록 (31) 에 대한 디렉토리 데이타를 저장하는 경우보다 길이가 4 배 정도 길다. 비록 이러한 해결 방안이 보다 길이가 길며, 연속적인 회복가능 부분을 필요로 하지만, 그의 이점은 선행기술의 해결방안과 비교해볼때 여전히 대단하다. 또다른 가능한 변형예는 상기에 기술된 제 2 및 제 3 필드에 대한 필요성을 없앤다. 단지 제 1 필드, 즉, 메시지 번호 데이타는 필요한 경우 제 4 필드의 포맷 데이타와 함께 보유된다. 블록번호 0 으로부터 개시하여 빈 블록을 항시 탐색하고 나머지 블록을 통해 배열함으로써 메시지가 저장된다면, ARAM 에 대하여는 제 2 및 제 3 필드에 대한 필요성이 제거될수 있다. 따라서, 블록번호 0 - 104 가 데이타를 포함하고 있기때문에 블록번호 105 가 제 1 의 빈 블록인 것으로 나타나는 경우, 메시지의 개시부분은 블록번호 105 에 저장된다. 추가 블록이 필요한 경우, 번호 순서상, 다음의 빈 블록이 선택된다. 따라서, 메시지가 메모리로부터 검색되는 경우, 메시지 번호의 조사는 또한 블록번호 0 에서 개시되며 그와 동시에 제 1 블록이 판독된 후에 다른 블록에 대한 조사는 번호 순서상 ARAM 의 나머지 블록을 통해 계속된다. 따라서, 이러한 해결방안의 경우 관심을 갖는 관련 메시지 번호로의 조사에 의해 직면하게 되는 제 1 블록은 그러한 메시지의 제 1 블록인 것으로 추정된다. 이는 제 2 필드에 대한 필요성을 없앤다. 동일한 메시지 번호를 갖는 다른 모든 블록마다 상기 블록이 포함하고 있는 메시지 데이타에 대해 적절한 순서로 직면하게 되는 것으로 추정된다. 이는 제 3 필드에 대한 필요성을 없앤다. 지금까지 본 발명이 음성 정보, 특히 음성에 적용될수 있는 것으로 특정하게 기술되었지만, 본 발명은 어느 정도까지 에러를 허용하는 어느 정보의 저장 및 검색에 사용될 수 있다. 이들 및 다른 그러한 변형 모두는 첨부된 청구범위에 의해 정의된 바와같이 본 발명의 범위에 속하는 것으로 의도된다.

Claims (23)

  1. 복수개의 정보 항목과 관련된 데이타를 전자 메모리 디바이스에 저장하는 장치로서,
    한 단위의 데이타를 저장하기에 각각 적합한 여러 저장 장소를 각각 포함하며, 결함있는 디바이스 부품에 기인하여 저장된 데이타에 어떤 에러가 존재할 수 있지만 본래의 데이타가 정확히 판독될수 있도록 지정된 부품에 회복가능한 부분을 각각 지니는 복수개의 블록으로 분할된 데이타 저장 영역을 지니는 전자 메모리 디바이스,
    단위 블록당 하나의 정보 항목과 관련된 데이타를 저장하고, 관련 데이타가 그의 블록에 저장되는 정보항목에 유일한 식별 코드를 상기 블록의 지정 부품에 저장함으로써 상기 복수개의 정보 항목에 대한 디렉토리를 저장하는 수단을 포함하는 장치.
  2. 제 1 항에 있어서, 상기 저장수단은 동일한 식별코드가 저장되는 상기 블록중 하나를 식별하도록 연결 데이타를 각 블록의 지정된 부품에 부가적으로 저장하는 장치.
  3. 제 2 항에 있어서, 상기 저장수단은 상기 블록이 정보 항목의 개시부분과 관련된 데이타를 포함하고 있는지를 나타내도록 각 블록 데이타의 지정된 부품에 부가적으로 저장하는 장치.
  4. 제 3 항에 있어서, 상기 저장 수단은 미리 결정된 저장장소 그룹이 그로부터 본래 데이타의 정확한 판독을 각각 가능하게 하는 것으로 간주되는지를 나타내도록 각 블록의 지정된 부품에 포맷 데이타를 부가적으로 포함하는 장치.
  5. 제 4 항에 있어서, 특정한 정보 항목에 유일하며 상기 블록의 지정된 부품에 저장된 식별 코드를 갖는 블록을 탐색하여 내부에 저장된 데이타를 판독함으로써 특정한 정보항목과 관련된 저장 데이타를 검색하는 판독 수단을 부가적으로 포함하는 장치.
  6. 제 5 항에 있어서, 특정한 정보항목에 유일하며 소거될 블록의 지정된 부품에 저장된 식별 코드를 지니고, 내부에 새로운 데이타의 저장을 가능하게하는 소거될 블록을 탐색하는 소거 수단을 부가적으로 포함하는 장치.
  7. 제 6 항에 있어서, 상기 전자 디바이스는 랜덤 액세스 메모리 ( RAM ) 인 장치.
  8. 제 7 항에 있어서, 상기 소거 수단은 새로운 데이타를 받아들이도록 비어 있는 것으로 소거될 블록을 나타내기 위하여 소거될 블록의 지정된 부품에 코드를 저장하는 장치.
  9. 제 6 항에 있어서, 상기 전자 디바이스는 섬광 " 전기적으로 소거가능하고 프로그램가능한 판독 전용 메모리 " ( FLASH ) 인 장치.
  10. 제 9 항에 있어서, 상기 저장 수단은 상기 FLASH 에 의해 직면하게 되는 기록/소거 사이클의 횟수를 실질적으로 동일하게 하는 장치.
  11. 제 9 항에 있어서, 상기 소거수단은 상기 소거된 블록에 저장된 데이타를 소거하는 장치.
  12. 제 1 항에 있어서, 특정한 정보 항목에 유일하며 블록의 지정된 부품에 저장된 식별 코드를 지니는 블록을 탐색하여 내부에 저장된 데이타를 판독함으로써 특정한 정보 항목과 관련된 저장 데이타를 검색하는 판독 수단을 부가적으로 포함하는 장치.
  13. 제 1 항에 있어서, 특정한 정보 항목에 유일하며 소거될 블록의 지정된 부품에 저장된 식별 코드를 지니고, 내부로 새로운 데이타의 저장을 가능하게 하는 소거될 블록을 탐색하는 소거 수단을 부가적으로 포함하는 장치.
  14. 제 1 항에 있어서, 상기 전자 디바이스는 랜덤 액세스 메모리 ( RAM ) 인 장치.
  15. 제 1 항에 있어서, 상기 전자 디바이스는 섬광 " 전기적으로 소거가능하고 프로그램가능한 판독 전용 메모리 " ( FLASH ) 인 장치.
  16. 제 15 항에 있어서 상기 저장 수단은 상기 FLASH 블록에 의해 직면하게되는 기록/소거 사이클의 횟수를 실질적으로 동일하게 하는 장치.
  17. 복수개의 정보 항목과 관련된 데이타를 전자 메모리 디바이스에 저장하는 방법으로서,
    결함있는 디바이스 부품에 기인하여 어떤 에러가 저장 데이타애 존재할 수 있지만 본래의 데이타가 정확히 판독될 수 있도록 지정된 부품에 회복가능한 부분을 각각 지니는 복수개의 블록으로 상기 디바이스의 데이타 저장 영역을 분할하는 단계,
    디렉토리 데이타를 저장하도록 상기 블록 각각의 지정된 부품을 지정하는 단계,
    단위 블록당 하나의 정보 항목과 관련된 데이타를 상기 블록에 저장하는 단계, 및
    관련 데이타가 그의 블록에 저장되도록 상기 정보 항목에 유일한 식별 코드를 포함하는 디렉토리 데이타를 상기 블록의 지정된 부품에 저장하는 단계
    를 포함하는 방법.
  18. 제 17 항에 있어서, 특정한 정보 항목에 유일하며 상기 블록의 지정된 부품에 저장된 식별 코드를 지니는 블록을 탐색하여, 내부에 저장된 데이타를 판독함으로써 특정한 정보 항목과 관련된 저장 데이타를 검색하는 단계를 부가적으로 포함하는 방법.
  19. 제 17 항에 있어서, 특정한 정보항목에 유일하며 소거될 블록의 지정된 부품에 저장된 식별 코드를 지니고, 내부로 새로운 데이타의 저장을 가능하게 하는 소거될 블록을 탐색하는 단계를 부가적으로 포함하는 방법.
  20. 제 19 항에 있어서, 상기 전자 디바이스는 랜덤 엑세스 메모리 ( RAM ) 이며, 새로운 데이타를 받아들이도록 비어있는 것으로 소거될 블록을 나타내기 위하여 소거될 블록의 지정된 부품에 코드를 저장하는 단계를 부가적으로 포함하는 방법.
  21. 제 19 항에 있어서, 상기 전자 디바이스는 섬광 " 전기적으로 소거가능하고 프로그램가능한 판독 전용 메모리 " ( FLASH ) 이며 상기 저장 수단은 상기 FLASH 블록에 의해 직면하게되는 기록/소거 사이클의 횟수를 실질적으로 동일하게 하는단계를 포함하는 방법.
  22. 제 21 항에 있어서, 상기 소거될 블록에 있는 데이타를 소거하는 단계를 부가적으로 포함하는 방법.
  23. 제 17 항에 있어서, 상기 전자 디바이스는 섬광 " 전기적으로 소거가능하고 프로그램가능한 판독 전용 메모리 " ( FLASH ) 이며 상기 저장수단은 상기 FLASH 블록에 의해 직면하게 되는 기록/소거 사이클의 횟수를 실질적으로 동일하게 하는 단계를 포함하는 방법.
KR1019960700433A 1993-07-28 1994-06-24 음성 메모리 디바이스상에 저장된 정보용 분산 디렉토리 KR100389987B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/098,203 US5600821A (en) 1993-07-28 1993-07-28 Distributed directory for information stored on audio quality memory devices
US08/098203 1993-07-28

Publications (2)

Publication Number Publication Date
KR960704268A KR960704268A (ko) 1996-08-31
KR100389987B1 true KR100389987B1 (ko) 2004-03-24

Family

ID=22267968

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960700433A KR100389987B1 (ko) 1993-07-28 1994-06-24 음성 메모리 디바이스상에 저장된 정보용 분산 디렉토리

Country Status (6)

Country Link
US (1) US5600821A (ko)
EP (1) EP0711436B1 (ko)
JP (1) JPH09500997A (ko)
KR (1) KR100389987B1 (ko)
DE (1) DE69405000T2 (ko)
WO (1) WO1995004321A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3215237B2 (ja) * 1993-10-01 2001-10-02 富士通株式会社 記憶装置および記憶装置の書き込み/消去方法
JP2938732B2 (ja) * 1993-11-10 1999-08-25 松下電送システム株式会社 メモリ管理装置とこれを用いたファクシミリ装置
JP3141726B2 (ja) * 1995-06-07 2001-03-05 日本電気株式会社 ディジタル音声データ蓄積装置
IL122139A (en) * 1996-03-11 2001-04-30 Koninkl Philips Electronics Nv Install the article for storing speech signals
US5781564A (en) * 1996-06-05 1998-07-14 Thomson Consumer Electronics, Inc. Method and apparatus for detecting and concealing data errors in stored digital data
FR2752072B1 (fr) * 1996-08-01 1999-01-29 Solaic Sa Carte a circuit integre comportant des fichiers classes selon une arborescence
WO2004075057A1 (en) * 1997-06-12 2004-09-02 Thomson Consumer Electronics, Inc. A method and apparatus for detecting and concealing data errors in stored digital data
JP3072722B2 (ja) * 1997-06-20 2000-08-07 ソニー株式会社 フラッシュメモリを用いるデータ管理装置及びデータ管理方法並びにフラッシュメモリを用いる記憶媒体
US6215860B1 (en) * 1997-09-16 2001-04-10 Lucent Technologies, Inc. Elastic buffer for data storage with speech data
US6298421B1 (en) 1998-01-12 2001-10-02 Brother Kogyo Kabushiki Kaisha Data storage device
US6330638B1 (en) * 1998-09-18 2001-12-11 Agere Systems Guardian Corp. Synchronous audio DRAM storing audio and code data
US6286079B1 (en) 1999-01-11 2001-09-04 International Business Machines Corporation Interruptible inventory of a mass data storage library
US6393517B1 (en) * 1999-08-31 2002-05-21 Sony Corporation SCSI port filter driver for enhanced audio data
EP1187379B1 (en) 2000-08-01 2005-03-16 Command Audio Corporation Method and signal for transmitting a broadcast program to a wireless receiver
US20020118799A1 (en) * 2001-02-28 2002-08-29 Detlef Michael J. Telephone answering device with enhanced voice quality
US8825493B2 (en) * 2011-07-18 2014-09-02 At&T Intellectual Property I, L.P. Method and apparatus for social network communication over a media network
US8370567B1 (en) * 2012-03-23 2013-02-05 DSSD, Inc. Storage system with self describing data

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3518737A1 (de) * 1985-05-24 1986-11-27 Telefonbau Und Normalzeit Gmbh, 6000 Frankfurt Sprachspeicheranordnung fuer ein fernmelde-, insbesondere fernsprechendgeraet
JP2664137B2 (ja) * 1985-10-29 1997-10-15 凸版印刷株式会社 Icカード
JPH07109717B2 (ja) * 1986-05-31 1995-11-22 キヤノン株式会社 メモリ書き込み制御方法
JP2685173B2 (ja) * 1986-05-31 1997-12-03 キヤノン株式会社 メモリ書き込み制御方法
US4794474A (en) * 1986-08-08 1988-12-27 Dictaphone Corporation Cue signals and cue data block for use with recorded messages
JP2514954B2 (ja) * 1987-03-13 1996-07-10 三菱電機株式会社 Icカ−ド
US4998009A (en) * 1987-03-31 1991-03-05 Canon Kabushiki Kaisha Information recording method for recording data and directories in a plurality of blocks comprising divided recording areas
US4914529A (en) * 1988-07-18 1990-04-03 Western Digital Corp. Data disk defect handling using relocation ID fields
EP0369052A1 (en) * 1988-11-17 1990-05-23 International Business Machines Corporation Data base access system
EP0617363B1 (en) * 1989-04-13 2000-01-26 SanDisk Corporation Defective cell substitution in EEprom array
JPH03232029A (ja) * 1989-12-08 1991-10-16 Fuji Photo Film Co Ltd メモリカードの記憶管理方式
JPH06342396A (ja) * 1990-07-02 1994-12-13 Internatl Business Mach Corp <Ibm> 共有データのアクセスを直列化する方法及び装置
JPH0498342A (ja) * 1990-08-09 1992-03-31 Mitsubishi Electric Corp 半導体記憶装置
JP2730375B2 (ja) * 1992-01-31 1998-03-25 日本電気株式会社 半導体メモリ
US5434910A (en) * 1992-10-22 1995-07-18 International Business Machines Corporation Method and system for providing multimedia substitution in messaging systems
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system

Also Published As

Publication number Publication date
US5600821A (en) 1997-02-04
EP0711436B1 (en) 1997-08-13
KR960704268A (ko) 1996-08-31
EP0711436A1 (en) 1996-05-15
JPH09500997A (ja) 1997-01-28
DE69405000T2 (de) 1998-03-19
WO1995004321A1 (en) 1995-02-09
DE69405000D1 (de) 1997-09-18

Similar Documents

Publication Publication Date Title
KR100389987B1 (ko) 음성 메모리 디바이스상에 저장된 정보용 분산 디렉토리
US5566314A (en) Flash memory device employing unused cell arrays to update files
JP3937214B2 (ja) エラー訂正回数を記録する記憶装置
US5579502A (en) Memory card apparatus using EEPROMS for storing data and an interface buffer for buffering data transfer between the EEPROMS and an external device
US7240178B2 (en) Non-volatile memory and non-volatile memory data rewriting method
US5438575A (en) Data storage system with stale data detector and method of operation
KR0121800B1 (ko) 메모리 카드장치
CN112486852B (zh) 一种固态硬盘及其地址映射方法
KR840005869A (ko) 디지탈 데이타를 비디오 형식으로 저장하는 방법 및 장치
US20010011334A1 (en) Memory device
KR100327286B1 (ko) 어드레스백업기능을갖는디지털음성기록재생장치및어드레스정보의관리방법
US6483901B1 (en) Non-volatile memory platform for digital answering systems
CN110309081B (zh) 基于压缩存储和地址映射表项的ftl读写数据页的方法
US4198681A (en) Segmented storage logging and controlling for partial entity selection and condensing
JP2001250386A (ja) 半導体メモリ
US5497376A (en) Method and device for detecting and correcting errors in memory modules
EP0492450A2 (en) Memory card having an eeprom
JPH0793212A (ja) データ記憶装置
US7810012B1 (en) Format for randomized data block in a storage device
US7051183B2 (en) Circuit for recording digital waveform data and method of doing the same
CN115994054A (zh) 一种基于可合并区间树的异步增量记录方法
JP2006146808A (ja) メモリ管理装置、及びメモリ管理方法
KR100380601B1 (ko) 아이피씨용 에프아이에프오의 번지 관리 시스템 및 방법
JP3524774B2 (ja) 情報記録再生装置
CN113504873A (zh) 一种通信设备及其存储数据的方法

Legal Events

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

Payment date: 20080402

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee