문맥 (context)
종래의 컴퓨터 시스템들은 전형적으로 여러 기능적인 구성요소들을 포함한다. 이러한 구성요소들은 중앙 처리 장치(CPU), 메인 메모리, 입력/출력("I/O") 장치들, 및 대량 저장장치를 포함할 수 있다. 종래의 시스템들에서, 메인 메모리는 시스템 버스 또는 로컬 메모리 버스를 통하여 CPU에 결합된다. 메인 메모리는 실행 시간에 메인 메모리에 저장되는 프로그램 정보 및/또는 데이터로의 CPU 액세스를 제공하는데 사용된다. 전형적으로, 메인 메모리는 랜덤 액세스 메모리(RAM) 회로들로 구성된다. CPU 및 메인 메모리를 갖는 컴퓨터 시스템은 종종 호스트 시스템이라 칭해진다.
대량 저장 장치는 전형적으로 데이터를 유지하는데 사용된다. 일반적으로, 대량 저장장치에 저장된 프로그램은 CPU에 의해 실행되기 전에 메인 메모리에 카피된다. 통상적인 대량 저장 장치들로는 플로피 디스크들, 하드 디스크들, 광 디스크들 및 테이프 드라이브들이 있다.
부가적으로, 플래시 메모리는 비휘발성 저장을 제공하는데 사용될 수 있다. 호스트 시스템은 인터페이스를 통하여 플래시 메모리(또한, 본 명세서에 걸쳐 교환 가능하게 "플래시 장치", "플래시" 또는 "플래시 카드"라 칭해짐)와 인터페이싱한다. 플래시 메모리는 전형적으로 정보를 저장하기 위한 비휘발성 메모리 셀 어레이들을 포함한다.
플래시 메모리 시스템들은 가장 통상적으로는, 퍼스널 컴퓨터, 카메라 등과 같은 다양한 호스트들과 제거 가능하게 접속되지만, 또한 이와 같은 호스트 시스템들에 내장될 수 있는 메모리 카드 또는 플래시 드라이브의 형태로 제공된다.
플래시 메모리 제어기는 전형적으로 메모리 어레이의 작동들을 제어한다. 메모리 제어기는 마이크로프로세서, 어떤 비휘발성 판독 전용 메모리("ROM"), 휘발성 랜덤-액세스 메모리("RAM") 및 하나 이상의 특별 회로들, 예를 들어, 데이터가 메모리 제어기를 통과할 때 데이터로부터 ECC를 계산하는 에러 수정-코드 회로("ECC")를 포함한다.
초기 세대의 상업적인 플래시 메모리 시스템들에서, 메모리 셀들의 직사각형 어레이는 표준 디스크 드라이브 섹터의 데이터 량, 즉, 512 바이트를 각각 저장하는 많은 수의 그룹들의 셀들로 분할되었다. 16 바이트와 같은 부가적인 데이터 량이 또한 통상적으로 에러 수정 코드(ECC) 및 사용자 데이터 및/또는 상기 사용자 데이터가 저장되는 메모리 셀 그룹과 관련된 아마도 다른 오버헤드 데이터를 저장하기 위하여 각 그룹에 포함된다. 각각의 이와 같은 그룹 내의 메모리 셀들은 함께 소거 가능한 최소 수의 메모리 셀들이다. 즉, 소거 단위는 실제로 포함되는 임의의 오버헤드 데이터 및 하나의 데이터 섹터를 저장하는 메모리 셀들의 수이다. 이 유형의 메모리 시스템의 예들은 미국 특허 출원 번호 5,602,987 및 6,426,893에 설명되어 있다. 플래시 메모리의 특성은 메모리 셀들이 데이터로 재프로그래밍되기 전에 소거될 필요가 있다는 것이다.
종래의 시스템들에서, 호스트는 파일 시스템을 유지하고 파일 데이터를 논리적 클러스터들에 할당하고, 여기서 클러스터 크기는 전형적으로 고정된다. 플래시 장치는 다수의 논리적 섹터들로 분할되고, 호스트는 다수의 논리적 섹터들을 포함하는 클러스터들 내에서 공간을 할당한다. 클러스터는 논리적 어드레스들은 서브-디비젼(sub-division)이며, 클러스터 맵은 파일 할당 테이블("FAT")로서 지정된다. FAT는 통상적으로 저장 장치 자체 상에 저장된다.
종래의 시스템들에서, 데이터를 메모리에 기록할 때, 호스는 통상적으로 특정 논리적 어드레스들을 섹터들, 클러스터들 또는 메모리 시스템의 연속적인 가상 어드레스 공간 내의 다른 데이터 단위들에 할당한다. 디스크 운영 체제(DOS)와 같이, 호스트는 메모리 시스템의 논리적 어드레스 공간 내의 어드레스들로 데이터를 기록하고, 상기 어드레스들로부터 데이터를 판독한다. 메모리 시스템 내의 제어기는 호스트로부터 수신된 논리적 어드레스들을 데이터가 실제로 저장되는 메모리 어레이 내의 물리적 어드레스들로 번역하고 나서, 이러한 어드레스 번역들을 추적한다. 메모리 시스템의 데이터 저장 용량은 적어도 메모리 시스템에 대해 규정된 전체 논리적 어드레스 공간에 걸쳐 어드레싱 가능한 데이터 량만큼 크다.
본 발명자는 상술된 공동-계류중인 특허 출원들에서 개시된 바와 같이, 개별적인 장치들(즉, 대량 저장장치 및 플래시 메모리)을 단일 대량 저장 시스템으로 병합하는 개념을 이전에 조사하였다. 이러한 통합된 장치들은 호스트 및 병합된 저장 시스템들 사이에 데이터를 전달하기 위하여 논리적 인터페이스가 사용되는 경우에 작동한다.
다른 파일 저장 시스템들(또는 포맷들)이 현재 개발되고 있어서, 호스트는 파일 대 논리적 어드레스 맵핑을 수행하지 않아도 된다.
따라서, 호스트 시스템이 통상적이지 않은 파일 저장 포맷을 사용하는 플래시 메모리 시스템 및 논리적 인터페이스를 사용하는 종래의 논리적 어드레스 공간/포맷을 여전히 기반으로 하는 대량 저장 장치로/로부터 데이터를 효율적으로 기록/판독하도록 하는 방법 및 시스템이 필요로 된다.
지시문 (instruction)
주어진 원문을 읽고 필요한 정보를 파악하여, 원문에 근거해 질문에 답하라.
질문 (question)
플래시 메모리 제어기를 구성하는 요소에는 무엇이 포함되는가?
추론 과정 (compact_reasoning)
-
1과제 해석
task_interpretation플래시 메모리 제어기를 구성하는 구체적인 구성 요소들을 찾는 작업이다.
-
2정보 추출
information_extraction본문에서 '플래시 메모리 제어기'와 관련된 기술적 구성 요소가 언급된 문장을 탐색한다.
- 플래시 메모리 제어기는 전형적으로 메모리 어레이의 작동들을 제어한다. 메모리 제어기는 마이크로프로세서, 어떤 비휘발성 판독 전용 메모리("ROM"), 휘발성 랜덤-액세스 메모리("RAM") 및 하나 이상의 특별 회로들, 예를 들어, 데이터가 메모리 제어기를 통과할 때 데이터로부터 ECC를 계산하는 에러 수정-코드 회로("ECC")를 포함한다.
-
3근거 선택
evidence_selection제어기의 구성 요소로 명시된 항목들을 선별한다.
- 마이크로프로세서, 어떤 비휘발성 판독 전용 메모리("ROM"), 휘발성 랜덤-액세스 메모리("RAM") 및 하나 이상의 특별 회로들, 예를 들어, 데이터가 메모리 제어기를 통과할 때 데이터로부터 ECC를 계산하는 에러 수정-코드 회로("ECC")
-
4논리 통합
logical_integration추출된 구성 요소들을 나열하여 답변 구조를 형성한다.
-
5결론 도출
conclusion_formulation선별된 구성 요소들을 바탕으로 최종 답변을 도출한다.
- 마이크로프로세서, 어떤 비휘발성 판독 전용 메모리("ROM"), 휘발성 랜덤-액세스 메모리("RAM") 및 하나 이상의 특별 회로들, 예를 들어, 데이터가 메모리 제어기를 통과할 때 데이터로부터 ECC를 계산하는 에러 수정-코드 회로("ECC")
-
6답변 생성
answer_generation질문에 대해 명확한 리스트 형식으로 답변을 작성한다.
- 마이크로프로세서, 어떤 비휘발성 판독 전용 메모리("ROM"), 휘발성 랜덤-액세스 메모리("RAM") 및 하나 이상의 특별 회로들, 예를 들어, 데이터가 메모리 제어기를 통과할 때 데이터로부터 ECC를 계산하는 에러 수정-코드 회로("ECC")
최종 답변 (final_answer)
플래시 메모리 제어기는 마이크로프로세서, 비휘발성 판독 전용 메모리(ROM), 휘발성 랜덤-액세스 메모리(RAM), 그리고 데이터로부터 ECC를 계산하는 에러 수정-코드 회로(ECC)와 같은 하나 이상의 특별 회로들을 포함한다.
핵심 해석 (core_interpretation)
플래시 메모리 제어기는 마이크로프로세서, ROM, RAM, 그리고 ECC 회로 등을 포함하여 구성된다.