KR20040080934A - 외부 접속 기기, 호스트 기기 및 데이터 통신 시스템 - Google Patents
외부 접속 기기, 호스트 기기 및 데이터 통신 시스템 Download PDFInfo
- Publication number
- KR20040080934A KR20040080934A KR10-2003-7013536A KR20037013536A KR20040080934A KR 20040080934 A KR20040080934 A KR 20040080934A KR 20037013536 A KR20037013536 A KR 20037013536A KR 20040080934 A KR20040080934 A KR 20040080934A
- Authority
- KR
- South Korea
- Prior art keywords
- command
- register
- host device
- data
- parameter
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/08—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
본 발명은, 호스트 기기가 되는 컴퓨터 등의 정보 처리 장치에 접속되는 외부 접속 기기로서의 메모리 카드이고, 메모리 카드(1)는, 레지스터 회로(13)와, 데이터 버퍼 회로(14)와, 메모리 I/F 컨트롤러(16)와, 플래시 메모리(17)를 구비하고 있다. 레지스터 회로(13) 및 데이터 버퍼 회로(14)는, 전송 프로토콜상에서 정하여진 커맨드(TPC)를 이용하여 호스트 기기로부터 액세스가 된다. TPC에는, 레지스터 회로(13)에 격납하는 파라미터 및 메모리 I/F 컨트롤러(16)에 주는 컨트롤 명령을 동시에 전송하는, 확장 커맨드가 설정되어 있다.
Description
종래, 정보 휴대 단말, 데스크톱형 컴퓨터, 노트형 컴퓨터, 휴대 전화기, 오디오 장치, 가전 장치 등의 호스트 기기의 외부 기억 매체로서, 이들 기기에 대해 장탈 가능하게 되고, 반도체 메모리를 내장한 카드형의 리무벌하는 소형 IC 메모리 장치가 사용되고 있다.
이런 종류의 메모리 장치는, 일반적으로 플래시 메모리 등의 불휘발성의 반도체 메모리(IC 메모리)를 내장하고, 이 반도체 메모리에 정지 화상 데이터, 동화상 데이터, 음성 데이터, 음악 데이터 등의 각종 디지털 데이터를 격납한다. 이 IC 메모리 장치는, 예를 들면, 정보 휴대 단말, 데스크톱형 컴퓨터, 노트형 컴퓨터,휴대 전화기, 오디오 장치, 가전 장치 등등의 호스트 기기의 외부 기억 미디어로서 기능한다.
이와 같은 IC 메모리 장치에서는, 소정의 인터페이스를 통하여, 호스트 기기측으로부터 동작이 제어되고 있다. 일반적으로는, 호스트 기기측으로부터 IC 메모리 장치에 대해 처리 커맨드를 전송하여, 동작 제어가 행하여지고 있다.
본 발명은, 컴퓨터 등의 정보 처리 장치에 접속되는 IC 메모리 장치 등의 외부 접속 기기 및 이 외부 접속 기기가 접속되는 호스트 기기에 관한 것이며, 또한 외부 접속 기기 및 호스트 기기를 이용한 데이터 통신 시스템에 관한 것이다.
본 출원은, 일본에서 2002년 2월 21일에 출원된 일본 특허출원 번호2O02-O45251을 기초로 하여 우선권을 주장하는 것이고, 이 출원은 참조함에 의해, 본 출원에 원용된다.
도 1은 본 발명이 적용된 메모리 카드 및 이 메모리 카드를 이용하는 호스트 기기를 도시한 사시도.
도 2는 메모리 카드를 표면측에서 본 사시도.
도 3은 메모리 카드를 이면측에서 본 사시도.
도 4는 메모리 카드의 내부 블록 구성을 도시한 블록도.
도 5는 메모리 카드와 호스트 기기와의 사이의 데이터 전송을 하기 위한 인터페이스 기능의 구성도.
도 6은 메모리 카드와 호스트 기기와의 사이에 전송되는 신호에 관해 설명을 하기 위한 도면.
도 7은 각 스테이트에서의 통신 내용을 설명하기 위한 도면.
도 8은 라이트계 패킷의 전송시의 패러럴 데이터, 버스 스테이트 및 클록의 타이밍 차트.
도 9는 리드계 패킷의 전송시의 패러럴 데이터, 버스 스테이트 및 클록의 타이밍 차트.
도 10은 라이트계 패킷 및 리드계 패킷의 전송시의 비지 신호 및 레디 신호의 타이밍 차트.
도 11은 스테터스 레지스터군을 구성하는 내부 레지스터를 도시한 도면.
도 12는 INT 레지스터 내의 비트 내용을 도시한 도면.
도 13은 INT 레지스터 내의 각 비트 값에 대응하는 메모리 카드의 동작 상태를 도시한 도면.
도 14는 파라미터 레지스터군을 구성하는 내부 레지스터를 도시한 도면.
도 15는 SET_CMD_TPC시의 전송 데이터를 도시한 도면.
도 16은 EX_SET_CMD_TPC시의 전송 데이터를 도시한 도면.
도 17은 컨트롤 커맨드의 한 예를 도시한 도면.
본 발명의 목적은, 호스트 기기로부터 외부 접속 기기에 대해 효율적으로 처리 커맨드를 주고, 호스트 기기와 외부 접속 기기와의 데이터 전송 처리시간을 단축할 수 있는 외부 접속 기기 및 호스트 기기, 나아가서는 이들 외부 접속 기기 및 호스트 기기를 이용한 데이터 통신 시스템을 제공하는데 있다.
상술한 바와 같은 목적을 달성하기 위해 제안되는 본 발명에 관한 외부 접속 기기는, 호스트 기기에 접속되는 외부 접속 기기로서, 파라미터를 격납하는 파라미터 레지스터와, 호스트 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와, 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하고, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러를 구비하고, 파라미터 레지스터 및 커맨드 레지스터는, 호스트 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)에 의거하여, 해당 호스트 기기로부터 액세스가 된다. TPC의 커맨드 세트에는, 임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 본 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 포함되어 있다.
본 발명에 관한 외부 접속 기기에서는, 호스트 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)로서, 임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 본 기기에 전송하고, 전송한 동작 제어 커맨드를 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 설정되어 있다.
본 발명에 관한 호스트 기기는, 외부 접속 기기가 접속되는 호스트 기기로서, 외부 접속 기기에 대한 동작 제어하는 명령이 나타내여진 전송 제어 커맨드를, 해당 외부 접속 기기에 송신하는 송신 수단을 구비하고 있다. 외부 접속 기기에는, 파라미터를 격납하는 파라미터 레지스터와, 본 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와, 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하고, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러가 구비되어 있다. 송신 수단은, 전송 프로토콜 커맨드(TPC)를 외부 접속 기기에 대해 발행함으로써, 해당 외부 접속 기기의 파라미터 레지스터 및 커맨드 레지스터에 대해 액세스를 행한다. TPC의 커맨드 세트에는, 임의의 동작 제어 커맨드 및 임의의 파라미터를 본 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 포함되어 있다.
본 발명에 관한 호스트 기기에서는, 본 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)로서, 임의의 동작 제어 커맨드 및 임의의 파라미터를 본 기기로부터외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 설정되어 있다.
본 발명의 또다른 목적, 본 발명에 의해 얻어지는 구체적인 이점은, 이하에서 도면을 참조하여 설명되는 실시의 형태의 설명으로부터 한층 분명하게 될 것이다.
이하, 본 발명을 리무벌하는 소형 IC 메모리 장치 및, 이 소형 IC 메모리 장치를 외부 기억 미디어로서 이용하는 데이터 처리 장치에 적용한 예를 들어 설명한다.
또한, 이하의 설명에서, 소형 IC 메모리 장치를 메모리 카드라고 칭하고, 이 메모리 카드가 접속되는 데이터 처리 장치를 호스트 기기라고 칭한다.
우선, 본 발명을 적용한 호스트 기기 및 이 호스트 기기에 접속되는 메모리 카드의 개략을 도 1을 참조하여 설명한다.
본 발명에 관한 메모리 카드(1)는, 내부에 불휘발성의 반도체 메모리(IC 메모리)를 갖고 있고, 정지 화상 데이터, 동화상 데이터, 음성 데이터, 음악 데이터 등의 각종 디지털 데이터를 격납할 수 있다. 이 메모리 카드(1)는, 예를 들면, 정보 휴대 단말, 데스크톱형 컴퓨터, 노트형 컴퓨터, 휴대 전화기, 오디오 장치, 가전 장치 등등의 호스트 기기(2)의 외부 기억 미디어로서 기능한다.
메모리 카드(1)는, 도 1에 도시한 바와 같이, 호스트 기기(2)에 마련되어 있는 삽탈구(3)에 삽입된 상태에서 사용된다. 메모리 카드(1)의 삽탈구(3)에 대한 삽입 및 발취는 유저가 자유롭게 행할 수 있다. 그 때문에, 어느 호스트 기기에 삽입되어 있던 메모리 카드(1)를 빼어내고, 다른 호스트 기기에 삽입할 수도 있다. 즉, 본 메모리 카드(1)는, 다른 호스트 기기간의 데이터의 교환에 이용하는 것이 가능하다.
메모리 카드(1) 및 호스트 기기(2)는, 4비트 패러럴 데이터, 클록 신호, 버스 스테이트 신호의 6개의 신호를 전송하는 6선식 반2중 패러럴 프로토콜을 이용한 패러럴 인터페이스로 데이터의 전송을 행한다.
본 발명에 관한 메모리 카드(1)는, 도 2에 도시한 바와 같이, 거의 직사각형 형상의 박판 형상으로 형성되고, 긴변 방향의 길이(L1)를 50㎜로 하고, 폭(W1)을 21.45㎜로 하고, 두께(D1)를 2.8㎜로 하여 형성되어 있다. 메모리 카드(1)는, 한쪽의 면을 표면(1a)으로 하고, 다른쪽의 면을 이면(1b)으로 하고 있다. 메모리 카드(1) 긴변 방향의 일단측의 이면(1b)측에는, 도 3에 도시한 바와 같이, 10개의 평면 전극인 접속 단자군(4)이 마련되어 있다. 접속 단자군(4)을 구성하는 각 전극은, 메모리 카드(1)의 폭방향으로 병렬하여 마련되어 있다. 전극과 전극과의 각 사이에는, 이면(1b)으로부터 수직으로 세워진 구획편(5)이 마련되어 있다. 각 구획편(5)은, 각 전극에 접속되는 접속 단자가 다른 전극에 접촉하는 것을 방지하도록 한 것이다. 메모리 카드(1)의 이면(1b)의 일단부측의 중앙부에는, 도 3에 도시한 바와 같이, 오(誤)소거 금지용의 슬라이드 스위치(6)가 마련되어 있다.
상술한 메모리 카드(1)가 장착되는 호스트 기기(2)에는, 메모리 카드(1)를 삽탈하기 위한 삽탈구(3)가 마련되어 있다. 삽탈구(3)는, 도 1에 도시한 바와 같이, 호스트 기기(2)의 전면측에 메모리 카드(1)의 폭(W1) 및 두께(D1)에 대응하는 개구로서 형성되어 있다. 삽탈구(3)를 통하여 호스트 기기(2)에 삽입된 메모리 카드(1)는, 접속 단자군(4)을 구성하는 각 전극에 호스트 기기(2)측의 접속 단자가 접속됨으로써, 호스트 기기(2)에의 지지가 도모되고 탈락이 방지된다. 또한, 호스트 기기(2)측의 접속 단자는, 장착되는 메모리 카드(1)에 마련되는 접속 단자군(4)을 구성하는 전극에 대응하여 10개의 접점을 갖는다.
본 발명에 관한 메모리 카드(1)는, 접속 단자군(4)이 마련된 일단측을 삽입단으로 하고, 도 2중 화살표 X1방향을 삽입 방향으로 하여 삽탈구(3)를 통하여 호스트 기기(2)에 장착된다. 호스트 기기(2)에 장착된 메모리 카드(1)는, 접속 단자군(4)을 구성하는 각 전극과 호스트 기기(2)측의 접속 단자의 각 접점이 접속되고, 신호의 수수(授受)가 가능한 상태로 된다.
다음에, 본 발명에 관한 메모리 카드(1)의 내부 구성을, 도 4를 참조하여 설명한다.
본 발명에 관한 메모리 카드(1)는, 도 4에 도시한 바와 같이, 패러럴 인터페이스 회로(I/F)(12)와, 레지스터 회로(13)과, 데이터 버퍼 회로(14)와, ECC 회로(15)와, 메모리 I/F 컨트롤러(16)와, 불휘발성 반도체 메모리(17)와, 발진 제어 회로(18)을 구비하고 있다.
패러럴 I/F 회로(12)는, 6선식 반2중 패러럴 방식의 데이터 전송 프로토콜을 이용하여, 호스트 기기(2)와의 사이에서 데이터의 전송을 행하는 회로이다.
레지스터 회로(13)는, 예를 들면, 호스트 기기로부터 전송되는 메모리 I/F 컨트롤러(16)에 대한 동작 제어 커맨드(이하, 이 동작 제어 커맨드인 것을 컨트롤 커맨드라고 칭한다), 메모리 카드(1) 내의 내부 상태, 컨트롤 커맨드를 실행하는 때에 필요한 여러곳의 파라미터, 불휘발성 반도체 메모리(17) 내의 파일 관리 정보 등을 기억하는 회로이다. 이 레지스터 회로(13)는, 호스트 기기(2) 및 메모리 I/F 컨트롤러(16)의 양자로부터 액세스된다. 또한, 호스트 기기(2)는, 본 메모리 카드의 데이터 전송 프로토콜상에서 규정되는 전송 프로토콜 커맨드(이하, TPC(Transfer Protocol Co㎜and)라고 한다)를 이용하여, 레지스터 회로(13)에 대해 액세스를 행한다. 즉, 레지스터 회로(13)에 격납되는 컨트롤 커맨드나 각종 파라미터에 대해 호스트 기기(2)가 기록이나 판독을 하는 경우에는, TPC를 이용하여 행한다.
데이터 버퍼 회로(14)는, 불휘발성 반도체 메모리(17)에 기록되는 데이터 및 불휘발성 반도체 메모리(17)로부터 판독된 데이터를 일시적으로 보존하는 메모리 회로이다. 즉, 호스트 기기(2)로부터 불휘발성 반도체 메모리(17)에 데이터가 기록되는 경우에는, 기록 대상 데이터가 호스트 기기(2)로부터 데이터 버퍼 회로(14)에데이터 전송 프로토콜에 따라 전송되고, 그 후, 데이터 버퍼 회로(14)에 격납되어 있는 기록 대상 데이터를 메모리 I/F 컨트롤러(16)가 불휘발성 반도체 메모리(17)에 기록한다. 불휘발성 반도체 메모리(17)로부터 호스트 기기(2)에 데이터가 판독되는 경우에는, 메모리 I/F 컨트롤러(16)가 불휘발성 반도체 메모리(17)로부터 판독 대상 데이터를 판독하여 일단 데이터 버퍼 회로(14)에 격납하고, 그 후, 그 판독 대상 데이터가 데이터 전송 프로토콜에 따라 데이터 버퍼 회로(14)로부터 호스트 기기(2)에 전송된다.
또한, 데이터 버퍼 회로(14)는, 소정의 데이터 기록 단위(예를 들면, 플래시 메모리의 페이지 사이즈와 동일한 512바이트)분의 데이터 용량을 갖고 있다. 또한, 호스트 기기(2)는, TPC를 이용하여, 데이터 버퍼 회로(14)에 대해 액세스를 행한다. 즉, 데이터 버퍼 회로(14)에 격납되는 데이터에 대해, 호스트 기기(2)가 기록이나 판독을 하는 경우에는, TPC를 이용하여 행한다.
ECC 회로(15)는, 불휘발성 반도체 메모리(17)에 기록되는 데이터에 대해 오류 정정 코드(ECC)를 부가한다. 또한, ECC 회로(15)는, 불휘발성 반도체 메모리(17)로부터 판독한 데이터에 부가되어 있는 오류 정정 코드에 의거하여, 이 판독 데이터에 대한 오류 정정 처리를 행한다. 예를 들면, 오류 정정 코드는, 512바이트의 데이터 단위에 대해 3바이트분 부가된다.
메모리 I/F 컨트롤러(16)는, 레지스터 회로(13) 내에 격납되어 있는 컨트롤 커맨드에 따라서, 데이터 버퍼 회로(14)와 불휘발성 반도체 메모리(17) 사이의 데이터의 교환의 제어, 불휘발성 반도체 메모리(17)의 데이터의 시큐러티 관리의 제어, 메모리 카드(1)의 그 밖의 펑션의 제어 및 레지스터 회로(13) 내에 격납되어 있는 데이터의 갱신 처리 등을 행한다.
불휘발성 반도체 메모리(17)는, 예를 들면, NAND형의 플래시 메모리 등의 불휘발성의 반도체 메모리이다. 불휘발성 반도체 메모리(17)의 용량은, 예를 들면 16M바이트, 32M바이트, 64M바이트, 128M바이트이다. 불휘발성 반도체 메모리(17)는, 소거 블록 단위가, 예를 들면 16K 바이트이다. 판독 기록 단위는 페이지라고 칭하여지고, 데이터 버퍼 회로(14)와 동일한 512바이트이다. 발진 제어 회로(18)는, 본 메모리 카드(1) 내의 동작 클록을 발생한다.
메모리 카드(1)의 접속 단자에는, VSS 단자, VCC 단자, DATA0 단자, DATA1 단자, DATA2 단자, DATA3 단자, BS 단자, CLK 단자, INS 단자가 마련되어 있다. 또한, VSS 단자는 2개 마련되어 있기 때문에, 메모리 카드(1)에는, 합계 10개의 접속 단자가 마련되어 있는 것으로 된다. 호스트 기기(2)측에도 마찬가지의 접속 단자가 마련되어 있다.
VSS 단자는, VSS(기준 0볼트 전압)가 접속된다. 이 VSS 단자는, 호스트 기기측의 그라운드와 메모리 카드측의 그라운드를 접속하고, 호스트 기기와 메모리 카드와의 0볼트 기준 전위를 일치시킨다. VCC 단자는, 전원 전압(VCC)이 호스트 기기로부터 공급된다.
DATA0 단자는, 메모리 카드(1)와 호스트 기기(2)와의 사이에 전송되는 4비트 패러럴 데이터중의 최하위 비트의 데이터 신호(DATA0)가 입출력된다. DATA1 단자는, 메모리 카드(1)와 호스트 기기(2)와의 사이에 전송되는 4비트 패러럴 데이터중의 하위로부터 2비트째의 데이터 신호(DATA1)가 입출력된다. DATA2 단자는, 메모리 카드(1)와 호스트 기기(2)와의 사이에 전송되는 4비트 패러럴 데이터중의 하위로부터 3비트째의 데이터 신호(DATA2)가 입출력된다. DATA3 단자는, 메모리 카드(1)와 호스트 기기(2)와의 사이에 전송되는 4비트 패러럴 데이터중의 하위로부터 4비트째의 데이터 신호(DATA3)가 입출력된다.
BS 단자는, 버스 스테이트 신호가 호스트 기기로부터 메모리 카드에 입력된다. CLK 단자는, 클록 신호가 호스트 기기(2)로부터 입력된다. INS 단자는, 메모리 카드가 슬롯에 삽입되어 있는지 또는 삽입되지 않았는지를, 호스트 기기(2)가 판단하기 위한 삽입/뽑음 검출에 사용된다. 메모리 카드(1)의 INS 단자는 그라운드에 접속되어 있고, 호스트 기기(2)의 INS 단자는 저항을 통하여 풀업되어 있다.
다음에, 메모리 카드(1)와 호스트 기기(2) 사이의 데이터 전송을 하기 위한 인터페이스의 기능 구성을 도 5를 참조하여 설명한다.
호스트 기기(2)의 인터페이스 기능은, 도 5에 도시한 바와 같이, 파일 매니저(31)와, TPC 인터페이스(32)와, 패러럴 인터페이스(33)로 구성된다. 또한, 메모리 카드(1)의 인터페이스 기능은, 패러럴 인터페이스(33)와, 레지스터(35)와, 데이터 버퍼(36)와, 메모리 컨트롤러(37)와, 메모리(38)로 구성된다.
파일 매니저(31)는, 호스트 기기의 오퍼레이션 시스템상에서, 메모리 카드(1) 내에 격납되어 있는 파일 및, 호스트 기기의 다른 미디어에 격납되어 있는 파일의 관리를 행한다. 파일 매니저(31)는, 호스트 기기(2) 내의 컨트롤러 등에 의해 실현되는 기능이다.
TPC 인터페이스(32)는, 파일 매니저(31)의 하위 레이어로 된다. TPC 인터페이스(32)는, 본 인터페이스의 특유의 커맨드(TPC : Transfer Protocol Comnnd)가 규정된 데이터 전송 프로토콜에 의해, 메모리 카드(1) 내의 레지스터(35) 및 데이터 버퍼(36)에 액세스를 행한다. 이 TPC 인터페이스(32)는, 호스트 기기(2) 내의 컨트롤러 등에 의해 실현되는 기능이다.
패러럴 인터페이스(33, 34)는, TPC 인터페이스(32)의 하위 레이어로 되고, 본 인터페이스 시스템의 물리 계층이다. 패러럴 인터페이스(33, 34)는, 4비트 패러럴 데이터, 클록, 버스 스테이트 신호의 6개의 신호를 전송하는 데이터 전송 프로토콜인 6선식 반2중 패러럴 프로토콜에 따라서, 데이터 전송을 행한다. 패러럴 인터페이스(33, 34)는, 패러럴 인터페이스 회로(12)에 의해 실현되는 기능이다.
레지스터(35)는, 호스트로부터 전송된 컨트롤 커맨드, 메모리 카드의 내부 상태, 메모리(38)에 액세스하는 데이터의 어드레스, 컨트롤 커맨드를 실행하는 때에 필요한 여러곳의 파라미터, 메모리 내의 파일 관리 정보 등을 격납한다. 레지스터(35)는, 메모리 카드(1)의 레지스터 회로(13)상에 실현되는 기능이다.
데이터 버퍼(36)는, 메모리(38)에 기록되는 데이터 및 메모리(38)로부터 판독된 데이터를 일시적으로 보존하는 버퍼 영역이다. 데이터 버퍼(36)는, 메모리 카드(1)의 데이터 버퍼 회로(14)상에 실현되는 기능이다.
메모리 컨트롤러(37)는, 레지스터(35) 내에 격납되어 있는 커맨드 및 각종 정보에 따라서, 데이터 버퍼(36)와 메모리(38)와의 사이의 데이터의 판독, 기록, 소거 및, 레지스터(35) 내의 각종 정보의 갱신 등의 제어를 행한다. 메모리 컨트롤러(37)는, 호스트 기기(2)상의 메모리 I/F 컨트롤러(16)에 의해 실현되는 기능이다.
메모리(38)는, 데이터의 메모리 영역으로서, 메모리 컨트롤러(37)를 통하여 독자적인 모델로서 가상화 되어 있다. 메모리(38)는, 메모리 카드(1)상의 불휘발성 반도체 메모리(17)에 의해 실현되는 기능이다.
이상과 같은 구성의 호스트 기기 및 메모리 카드에서는, 파일 매니저(31)에 관리되어 있는 다른 미디어에 격납되어 있는 데이터를, 상기 패러럴 인터페이스(33, 34)를 통하여 메모리(38)에 전송할 수 있다. 또한, 메모리(38)에 격납되어 있는 데이터를, 상기 패러럴 인터페이스(33, 34)를 통하여 파일 매니저에게 관리되어 있는 다른 미디어에 전송할 수 있다.
다음에, 본 발명에 관한 메모리 카드(1)와 호스트 기기(2)와의 사이의 데이터 전송 프로토콜에 관해 설명한다.
메모리 카드(1) 및 호스트 기기(2)의 데이터 전송 프로토콜의 특징으로서는, 4개 버스 스테이트를 정의하여 전송 데이터의 전송 방향 및 속성을 식별하는 것, 호스트 기기(2)로부터 메모리 카드(1)의 레지스터 회로(13) 및 데이터 버퍼 회로(14)에 대해 TPC를 이용하여 액세스를 행하는 것, 컨트롤 커맨드를 이용하여 호스트 기기(2)가 메모리 카드(1)의 동작 제어를 하는 것, CRC(Cyclic Redundancy Check codes)를 이용하여 메모리 카드(1)와 호스트 기기(2)와의 사이의 전송 데이터의 에러 검출을 행하는 것, 메모리 카드(1)로부터 호스트 기기(2)에의 인터럽트 신호(INT 신호)를 규정하고 있는 것 등이 있다.
메모리 카드(1)와 호스트 기기(2)는, 도 6에 도시한 바와 같이, 버스 스테이트 신호(BS), 4개의 패러럴 데이터 신호, 클록 신호(SCLK)의 6개의 신호로 접속되어 있다.
패러럴 데이터 신호는, 메모리 카드(1)와 호스트 기기(2)와의 사이를 전송되는 데이터 신호이다. 패러럴 데이터 신호는, 4비트 폭의 패러럴 데이터(DATA[3 : 0])를 전송하고, 버스 스테이트 신호에 의해 규정되는 스테이트에 따라서, 그 패러럴 데이터(DATA[3 : 0])의 전송 방향 및 속성이 변화한다.
버스 스테이트 신호는, 패러럴 데이터 신호의 스테이트 및, 각 스테이트에 있어서의 패러럴 데이터 신호의 전송 시작 타이밍을 규정하는 신호이다. 이 버스 스테이트 신호는, 호스트 기기(2)로부터 메모리 카드(1)에 전송된다. 스테이트는, 패킷 통신이 행하여지지 않는 하나의 스테이트(BS0)와, 패킷 통신중의 3개의 스테이트(BS1 내지 BS3)와의 합계 4개의 스테이트로 구분된다. 버스 스테이트 신호는, High와 Low의 전환 타이밍으로, BS0부터 BS3까지 순번대로 스테이트를 전환하여 간다.
클록 신호는, 패러럴 데이터 신호 및 버스 스테이트 신호의 클록이다. 클록 신호는, 호스트 기기로부터 메모리 카드에 전송된다. 클록 신호는, 패킷 통신중의 3개의 스테이트(BS1 내지 BS3)시에는 반드시 출력된다. 각 스테이트에서의 통신 내용은, 도 7에 도시한 바와 같이 된다.
BS0은, 패러럴 데이터 신호의 라인에, 메모리 카드(1)로부터 호스트 기기(2)에의 인터럽트 신호(INT 신호)가 전송 가능한 스테이트이다. INT 신호는, 클록에대해 비동기로 전송된다. BS0에서는, 패킷 통신은 행하여지지 않는다. BS0을 나타내는 버스 스테이트 신호의 신호 레벨은 Low로 나타내여진다. 또한, 이 INT 신호에는, 메모리 카드(1)의 동작 상태가 반영되는데, 그 내용에 관해서는 후술한다.
BS1은, 패러럴 데이터 신호의 라인에, TPC가 전송되는 스테이트이다. BS1을 나타내는 버스 스테이트의 신호 레벨은 High로 나타내여진다. TPC는, 호스트 기기(2)로부터 메모리 카드(1)에 전송된다. TPC는, 호스트 기기(2)가 메모리 카드(1)의 레지스터 회로(13) 및 데이터 버퍼 회로(14)에 액세스하기 위한 커맨드이다. TPC에는, 데이터 버퍼 회로(14)에 대한 데이터의 기록 처리 또는 판독 처리를 행하는 커맨드, 레지스터 회로(13)에 대한 데이터의 기록 처리 또는 판독 처리를 행하는 커맨드, 메모리 I/F 컨트롤러(16)에 주는 컨트롤 커맨드를 레지스터 회로(13)에 기록하는 처리를 행하는 커맨드 등이 있다. TPC 및 컨트롤 커맨드의 구체적인 내용에 관해서는 후술한다.
BS2 및 BS3에서는, 호스트 기기(2)로부터 메모리 카드(1)에 데이터를 전송하는 라이트계 패킷과, 메모리 카드(1)로부터 호스트 기기(2)에 데이터를 전송하는 리드계 패킷에서, 패러럴 데이터 신호상에 전송되는 패러럴 데이터(DATA[3 : 0])의 전송 방향 및 속성이 다르다. 그 패킷의 종류가 라이트계 패킷인지 리드계 패킷인지는, BS1에서 전송되는 TPC의 내용에 의해 결정된다.
도 8에 라이트계 패킷의 타이밍 차트를 도시하고, 라이트계 패킷시의 BS2, BS3의 내용에 관해 설명을 한다.
라이트계 패킷시의 BS2에서는, 패러럴 데이터 신호상의 전송 데이터가, 레지스터 회로(13)나 데이터 버퍼 회로(14)에의 기록 대상 데이터 및 이 기록 대상 데이터의 CRC로 된다. BS2에서는, 패러럴 데이터 신호상의 전송 데이터가, 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
라이트계 패킷시의 BS3에서는, 패러럴 데이터 신호상의 전송 데이터가, 메모리 카드(1)로부터 발생되는 비지(BSY)신호 및 레디(RDY)신호로 된다. 라이트계 패킷시의 BS3에서는, 패러럴 데이터 신호상의 비지 신호 및 레디 신호가, 메모리 카드(1)로부터 호스트 기기(2)에 전송된다. 라이트계 패킷시의 BS3에서는, BS1 및 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된 TPC 및 전송 데이터에 대한 처리가 행하여진다. 메모리 카드(1)는, 그 TPC 및 전송 데이터에 대한 처리를 행하고 있는 한창중(즉, 아직 처리가 완료되지 않는 경우)에는, 호스트 기기(2)에 대해 비지 신호를 송출한다. 그리고, 메모리 카드(1)는, 그 처리가 완료되면 호스트 기기(2)에 대해 레디 신호를 송출한다. 비지 신호 및 레디 신호는, 4개의 패러럴 데이터 신호중, 최하위 비트(DATA0)의 신호 라인만으로 전송된다. 비지 신호는, 최하위 비트(DATA0)의 신호 라인을 high 레벨의 상태로 하는 신호이다. 레디 신호는, 최하위 비트(DATA0)의 신호 라인을, high 레벨과 low 레벨을 1클록마다 교대로 반복하는 상태로 하는 신호이다. 이와 같이, 비지 신호 및 레디 신호를 전송함으로써, 데이터가 전송되지 않는 라이트계 패킷시의 BS3의 타이밍에서의 메모리 카드(1)와 호스트 기기(2)와의 핸드 쉐이크를 확립할 수 있다.
도 9에 리드계 패킷의 타이밍 차트를 도시하고, 리드계 패킷시의 BS2, BS3의 내용에 관해 설명을 한다.
리드계 패킷시의 BS2에서는, 패러럴 데이터 신호상의 전송 데이터가, 메모리 카드(1)로부터 발생되는 비지 신호 및 레디 신호로 된다. 리드계 패킷시의 BS에서는, BS1에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된 TPC에 응하여, 메모리 카드(1)가 데이터의 전송 준비를 행한다. 메모리 카드(1)는, TPC에 대한 데이터의 전송 준비중(즉, 아직 전송 준비가 완료되지 않은 경우)에는, 호스트 기기(2)에 대해 비지 신호를 송출한다. 그리고, 메모리 카드(1)는, 그 전송 준비가 완료되면, 호스트 기기(2)에 대해 레디 신호를 송출한다. 이와 같이, 비지 신호와 레디 신호를 전송함으로써, 데이터가 전송되지 않는 리드계 패킷의 BS2에 있어서의 메모리 카드(1)와 호스트 기기(2)와의 핸드 쉐이크를 확립할 수 있다.
리드계 패킷시의 BS3에서는, 패러럴 데이터 신호상의 전송 데이터가, 레지스터 회로(13)나 데이터 버퍼 회로(14)로부터의 판독 대상 데이터 및 이 판독 대상 데이터의 CRC로 된다. BS3은, 패러럴 데이터 신호상의 전송 데이터가, 메모리 카드(1)로부터 호스트 기기(2)에 전송된다.
도 10에 BS2, BS3에서 발생되는 비지 신호 및 레디 신호의 상세한 타이밍 차트를 도시한다. 이 도 10에 도시한 바와 같이, 비지 신호 및 레디 신호는, 4개의 패러럴 데이터 신호중, 최하위 비트(DATA0)의 신호 라인만으로 전송된다. 다른 비트(DATA1 내지 3)는, low 레벨으로 되어 있다. 호스트 기기(2)는, DATA0에 전송된 신호만을 수신하고, 다른 비트의 신호는 무시한다. 최하위 비트(DATA0)는, 종래의 3선식 반2중 프로토콜을 이용한 메모리 카드의 시리얼 데이터의 전송 라인에 대응하고 있다. 따라서, 본 메모리 카드(1)는, 종래의 메모리 카드와 호환성을 갖고 있다.
다음에, 버스 스테이트가 BS0일 때에 메모리 카드(1)로부터 호스트 기기(2)에 전송되는 INT 신호에 관해 설명을 한다.
메모리 카드(1)에는 불휘발성 반도체 메모리(17)로서 플래시 메모리가 사용되어 있다. 플래시 메모리에 대한 액세스 시간은, 메모리 카드(1)와 호스트 기기(2)와의 사이의 데이터의 전송 시간과 비교하여 상당히 길어진다. 그 때문에, 호스트 기기(2)측의 데이터 처리 시퀀스를 단축하는데는, 데이터 전송 프로토콜상, 메모리 카드(1)측으로부터 처리의 종료 등을 통지하는 인터럽트 요구를 규정하는 것이 유효하게 된다. 즉, 메모리 카드(1)로부터의 인터럽트 요구를 규정함으로써, 플래시 메모리에 대한 액세스 중, 호스트 기기(2)측의 CPU의 처리를 다른 처리에 개방할 수 있다.
BS0에서는, 메모리 카드(1)에 어떠한 인터럽트 요구가 발생하면, 메모리 카드(1)가, 인터럽트 신호(INT 신호)를 호스트 기기(2)에 전송한다. INT 신호는, 클록 신호에는 동기하지 않고, 메모리 카드(1)로부터 출력된다. BS0시에, 패러럴 데이터(DATA[3 : 0])의 신호 라인의 어느 비트가 high 레벨로 된 때에는, 메모리 카드(1)측으로부터 인터럽트 요구가 발생한 것을 나타낸다. 또한, 패러럴 데이터(DATA[3 : O])의 어느 비트도 low 레벨일 때에는, 메모리 카드(1)는 처리의 실행중으로, 인터럽트 요구가 없는 것을 나타낸다.
여기서, 메모리 카드(1)로부터 발생하는 인터럽트의 요인에는, 복수의 것이 존재한다. 예를 들면, 메모리 카드(1)에 주어진 컨트롤 커맨드에 대한 동작 제어가종료된 것을 호스트 기기(2)에 전달하기 위한 인터럽트, 메모리 카드(1)에 주어진 컨트롤 커맨드에 대해 동작 제어를 행한 때에 에러가 발생한 것을 호스트 기기(2)에 전달하기 위한 인터럽트, 호스트 기기(2)에 대해 액세스를 요구하는 인터럽트, 메모리 카드(1)로부터 주어진 컨트롤 커맨드가 실행 불가능한 것을 호스트 기기(2)에 대해 전달하기 위한 인터럽트, 등등이 있다.
메모리 카드(1)에서는, 이상과 같은 각 인터럽트의 각 요인을, 패러럴 데이터(DATA[3 : 0])의 각 비트에 대해 배당하고, 발생한 인터럽트의 요인에 응하여 high 레벨로 하는 라인을 변화시키고 있다. 즉, 메모리 카드(1)에서 발생한 인터럽트의 내용에 응하여, BS0시에 high 레벨으로 되는 비트 위치가 다른 INT 신호가, 메모리 카드(1)로부터 발생된다.
호스트 기기(2)는, BS0시에는, 패러럴 데이터(DATA[3 : 0])의 각 비트의 레벨을 감시함으로써, 메모리 카드(1)로부터 인터럽트 요구가 있은 것을 검출함과 함께, 어느 비트 위치의 레벨이 high로 되어 있는지를 검출하여, 메모리 카드(1)의 인터럽트의 요인도 동시에 검출한다.
이에 대해, 종래의 메모리 카드 시스템에서는, 메모리 카드측으로부터 호스트측으로, 단지 인터럽트 요구가 있는지의 여부만을 통지하고 있다. 그 때문에, 메모리 카드로부터 인터럽트 요구가 있었다고 하더라도, 호스트측이 그 요구와 동시에 인터럽트 요인을 확인할 수 없어서, 반드시, 패킷 통신을 확립하여 메모리 카드측에 인터럽트 요인을 판독하여야 하였다. 이에 대해, 본 발명의 실시의 형태의 메모리 카드(1) 및 호스트 기기(2)에서는, 데이터 라인이 4비트인 것을 이용하여, 각비트에 대해 인터럽트의 각 요인을 할당하고 있기 때문에, 인터럽트 요구와 동시에 그 요인도 호스트 기기(2)가 확인할 수 있다.
따라서 본 발명에서는, 메모리 카드(1)로부터의 인터럽트 요구가 발생한 경우, 호스트 기기(2)가 그 요구 내용을 확인하기 위한 패킷 통신을 행하지 않아도 좋게 된다. 즉, 메모리 카드(1)와 호스트 기기(2)와의 사이의 데이터 전송 시퀀스의 실행시간을 단축할 수 있다.
또한, 본예에서는, 메모리 카드(1)의 INT 신호는, 컨트롤 커맨드에 의거한 동작 상태가 반영하는 INT 레지스터에 격납되어 있는 각 비트 값으로 되어 있다. INT 레지스터는, 레지스터 회로(13) 내의 스테터스 레지스터군 내에 마련되어 있다. 메모리 카드(1)의 패러럴 인터페이스 회로(12)는, 버스 스테이트 신호가 BS0를 나타내고 있는 때에, 이 INT 레지스터의 각 비트 값을 참조하여, 그 비트 값이 유효(1)로 되어 있으면, 그 비트에 대응하는 데이터 라인을 high 레벨로 드라이브하고, 그 비트 값이 무효(0)로 되어 있으면, 그 비트 값에 대응하는 데이터 라인을 low 레벨로 드라이브한다. 이 INT 레지스터의 구체적인 내용, 및, INT 레지스터의 각 값과 패러럴 데이터(DATA[3 : 0])와의 관계에 관해서는, 다음 레지스터 회로의 항에서 설명을 한다.
다음에, 레지스터 회로(13)에 관해 설명을 한다.
레지스터 회로(13)는, 복수의 내부 레지스터에 의해 구성되어 있다. 레지스터 회로(13) 내의 내부 레지스터는, 그 용도에 따라서, 이하의 1 내지 5로 분류된다.
1. 메모리 카드(1)의 스테터스 등이 격납되는 스테터스 레지스터군.
2. 커맨드의 실행 등을 위해 이용되는 파라미터가 격납되는 파라미터 레지스터군.
3. 플래시 메모리의 각 페이지마다 마련되고, 각 페이지의 관리 데이터 등이 가능하게 되는 엑스트라 데이터 레지스터군.
4. 상기 1, 2, 3의 각 레지스터에 대한 액세스 위치를 특정하기 위한 어드레스가 격납되는 레지스터 어드레스 레지스터.
5. 호스트 기기(2)로부터 주어진 컨트롤 커맨드가 격납되는 커맨드 레지스터.
스테터스 레지스터군에는, 도 11에 도시한 바와 같이, INT 레지스터, 스테터스 레지스터, 타입 레지스터, 카테고리 레지스터, 클래스 레지스터의 4개의 내부 레지스터가 있다. 스테터스 레지스터군 내의 각 내부 레지스터는, 메모리 I/F 컨트롤러(16)에 의해 격납하고 있는 값이 갱신된다. 스테터스 레지스터군 내의 각 내부 레지스터는, 호스트 기기(2)로부터는 READ_REG_TPG(READ_REG_TPC는, TPC 중의 하나의 커맨드이고, 그 상세는 후술한다)로 액세스가 가능하고, 호스트 기기(2)로부터는 판독 전용으로 되어 있다. 또한, 스테터스 레지스터군 내의 각 내부 레지스터는, 8비트분의 비트 값이 격납 가능하고, 각각에 어드레스가 설정되어 있다.
·INT 레지스터
INT 레지스터는, 메모리 카드(1)의 동작 상태가 설정되는 레지스터이다. 이 INT 레지스터 내의 값은, 호스트 기기(2)로부터 메모리 카드(1)에 주어진 컨트롤커맨드에 대한 동작 결과에 응하여, 메모리 I/F 컨트롤러(16)에 의해 갱신된다. INT 레지스터는, 도 12에 도시한 바와 같이 8비트의 레지스터이다. INT 레지스터에는, 8비트중, 최하위 비트(D0)와 상위 3비트(D5 내지 D7)에, 동작 상태가 설정되어 있다. 또한 나머지 비트는 리저브로 되어 있다.
INT 레지스터의 비트(D7)는 CED(Co㎜and End) 비트이다. CED 비트는, EX_SET_CMD_TPC 또는 SET_CMD_TPC(TPC 중의 하나의 커맨드이다. 상세는 후술한다)에 의해 세트된 컨트롤 커맨드의 실행이 종료된 것을 나타내는 비트이다. 또한, 여기서 말하는 실행의 종료란, 그 실행이 정상적으로 종료하였는지 에러 종료하였는지에 관계 없이, 실행이 종료된 것을 나타내는 것이다. CED 비트는, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의한 컨트롤 커맨드의 세트시 및 초기 상태시에, 메모리 I/F 컨트롤러(16)에 의해 비트 값이 무효(0)로 되고, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의한 컨트롤 커맨드의 실행이 종료된 때에 메모리 I/F 컨트롤러(16)에 의해 비트 값이 유효(1)로 된다.
INT 레지스터의 비트(D6)는 ERR(Error) 비트이다. ERR 비트는, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 세트된 메모리 액세스 커맨드(컨트롤 커맨드) 및 시큐러티 커맨드(컨트롤 커맨드)를 실행한 결과, 그 실행에 에러가 발생한 것을 나타내는 비트이다. ERR 비트는, 에러가 발생하면 메모리 I/F 컨트롤러(16)에 의해 비트 값이 유효(1)로 되고, 새로운 EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 컨트롤 커맨드가 세트되든지 또는 에러 상태가 해제되면 메모리 I/F 컨트롤러(16)에 의해 비트 값이 무효(0)로 된다.
INT 레지스터의 비트(D5)는 BREQ/PRG(Buffer Request/Progress) 비트이다. BREQ/PRG 비트는, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 세트된 메모리 액세스 커맨드(컨트롤 커맨드) 및 시큐러티 커맨드(컨트롤 커맨드)를 실행한 결과, 그 실행에 의해 발생하는 호스트 기기(2)에 대한 데이터 버퍼 회로(14)에의 액세스 요구 및, 불휘발성 반도체 메모리(17)의 내부 소거 처리나 포맷 처리를 실행한 경우에 있어서의 그 진행 상황을 나타내는 비트이다. 예를 들면, 불휘발성 반도체 메모리(17)에 대한 기록 명령이 있은 경우에 있어서의 데이터 버퍼 회로(14)에 대한 데이터의 기록 요구, 불휘발성 반도체 메모리(17)로부터의 데이터의 판독 명령이 있은 경우에 있어서의 데이터 버퍼 회로(14)로부터의 데이터의 판독 요구, 시큐러티 데이터의 수신 요구 등이 있는 것을 나타내는 비트이다. BREQ/PRG 비트는, 각 요구가 발생한 때 메모리 I/F 컨트롤러(16)에 의해 비트 값이 유효(1)로 되고, 호스트 기기(2)에 의해 그 요구에 대한 TPC에 의한 액세스가 발생한 경우에 메모리 I/F 컨트롤러(16)에 의해 비트 값이 무효(0)로 된다. 또한, BREQ/PRG 비트는, 포맷이나 소거의 진행 상황에 응하여, 메모리 I/F 컨트롤러(16)에 의해 비트 값이 갱신된다.
INT 레지스터의 비트(D0)는 CMDNK(Comnand Nack) 비트이다. CMDNK 비트는, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 세트된 커맨드가 실행할 수 없는 것을 나타내는 비트이다. EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 세트된 컨트롤 커맨드가 실행할 수 없는 때에 메모리 I/F 컨트롤러(16)에 의해 비트 값이 유효(1)로 되고, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 세트된 컨트롤 커맨드가 실행할 수있는 때에 비트 값이 무효(0)로 된다.
INT 레지스터에는 이상과 같은 비트가 설정되어 있다. 이로써, INT 레지스터 내의 각 비트의 값의 조합에 의해, 직전의 컨트롤 커맨드에 대한 메모리 카드(1)의 동작 상태로서, 도 13에 도시한 바와 같은 동작 상태를 나타낼 수 있다.
즉, CED = 1, ERR = 0, BREQ/PRG = 0, CMDNK = 0인 경우에는, 주어진 컨트롤 커맨드의 실행이 정상 종료하였다는 동작 상태를 나타내는 것으로 된다. CED = 1, ERR = 1, BREQ/PRG = 0, CMDNK = 0인 경우에는, 주어진 컨트롤 커맨드의 실행이 에러 종료하였다는 동작 상태를 나타내는 것으로 된다. CED = 0, ERR = 0, BREQ/PRG = 1, CMDNK = 0인 경우에는, 주어진 컨트롤 커맨드의 실행이 정상적으로 행하여지고 있고, 호스트 기기(2)에 대해 액세스 요구를 하고 있다는 동작 상태를 나타내는 것으로 된다. CED = 0, ERR = 1, BREQ/PRG = 1, CMDNK = 0인 경우에는, 주어진 컨트롤 커맨드의 실행에 에러가 발생하고 있고, 호스트 기기(2)에 대해 액세스 요구를 하고 있다는 동작 상태를 나타내는 것으로 된다. CED = 0, ERR = 0, BREQ/PRG = 0, CMDNK = 0인 경우에는, 주어진 컨트롤 커맨드의 실행중이라는 동작 상태를 나타내는 것으로 된다. CED = 0, ERR = 1, BREQ/PRG = 0, CMDNK = 0인 경우에는, 불휘발성 반도체 메모리(17)의 소거 실행중 또는 포맷중이라는 동작 상태를 나타내는 것으로 된다. CED = 1, ERR = 0, BREQ/PRG = 0, CMDNK = 1인 경우에는, 주어진 컨트롤 커맨드의 실행이 불가능하다는 동작 상태를 나타내는 것으로 된다.
또한, INT 레지스터 내의 각 비트는, EX_SET_CMD_TPC 또는 SET_CMD_TPC에 의해 새로운 컨트롤 커맨드가 세트된 때에는, 그 값은, 메모리 I/F 컨트롤러(16)에의해 초기 상태(모든 비트 값이 0인 상태)로 된다.
·INT 레지스터와 INT 신호와의 관계
여기서, 상술한 바와 같이 이 INT 레지스터 내의 각 비트(CED, ERR, BREQ/PRG, CMDNK)는, 그 값이 INT 신호에 반영된다. 메모리 카드(1)의 패러럴 인터페이스 회로(12)는, 스테이트가 BS0일 때에, 이 INT 레지스터의 각 비트의 값(CED, ERR, BREQ/PRG, CMDNK)에 응하여, 패러럴 데이터(DATA[3 : 0])의 각 데이터 라인을 high 레벨 또는 low 레벨로 드라이브한다. INT 레지스터의 각 비트와, 패러럴 데이터의 각 라인의 관계는 이하와 같다.
DATA0 : CED
DATA1 : ERR
DATA2 : BREQ/PRG
DATA3 : CMDNK
패러럴 인터페이스 회로(12)는, 스테이트가 BS0인 기간중에 항상 INT 레지스터 내의 값을 참조하고 있고, INT 레지스터 내의 비트의 값이 유효(1)이면 대응하는 데이터 라인을 high 레벨(1)로 드라이브하고, 무효이면 대응하는 데이터 라인을 low(0)로 드라이브한다. 호스트 기기(2)에서는, 스테이트가 BS0인 기간중에는, 패러럴 데이터(DATA[3 : 0])의 각 데이터 라인의 레벨을 감시하고, 메모리 카드(1)로부터의 인터럽트 요구가 있는지의 여부를 판단한다. 호스트 기기(2)는, 메모리 카드(1)로부터 인터럽트 요구가 있은 경우에는, 즉, 어느 데이터 라인이 low 레벨부터 high 레벨로 변화하였다고 판단한 경우에는, 어느 데이터 라인의 레벨이 high로되어 있는지를 검출하고, 상술한 도 13에 도시한 동작 상태를 검출한다. 그리고, 호스트 기기(2)는, 검출한 동작 상태에 응하여, 대응하는 처리를 행한다.
파라미터 레지스터군 내에는, 도 14에 도시한 바와 같이, 시스템 파라미터 레지스터, 데이터 카운트/시큐러티 파라미터 레지스터, 데이터 어드레스/리비전 넘버 레지스터, TPC 파라미터 레지스터, 커맨드 파라미터 레지스터의 각 내부 레지스터가 마련되어 있다. 파라미터 레지스터군 내의 각 내부 레지스터는, 호스트 기기(2)에 의해 격납하고 있는 값이 갱신되고, 메모리 I/F 컨트롤러(16)가 컨트롤 커맨드를 실행하는 때에, 그 값이 참조된다. 파라미터 레지스터군 내의 각 내부 레지스터는, 호스트 기기(2)로부터는 WAITE_REG_TPC, EX_SET_CMD_TPC(TPC의 하나. 상세에 관해서는 후술한다)로 액세스가 가능하다. 또한, 파라미터 레지스터군 내의 각 내부 레지스터는, 8비트분마다 어드레스가 설정되어 있다.
·데이터 카운트/시큐러티 파라미터 레지스터
데이터 카운트/시큐러티 파라미터 레지스터는, 호스트 기기(2)로부터 메모리 카드(1)에 주어진 메모리 액세스 커맨드(컨트롤 커맨드)를 실행하는 때에 필요하게 되는 데이터 수가 격납된다. 예를 들면, 불휘발성 반도체 메모리(17)로부터 데이터를 판독하는 때에 있어서의 판독 데이터의 데이터 사이즈, 불휘발성 반도체 메모리(17)에 대해 데이터를 기록하는 때에 있어서의 기록 데이터의 데이터 사이즈 등이 설정된다. 또한, 데이터 카운트/시큐러티 파라미터 레지스터는, 시큐러티 커맨드(컨트롤 커맨드)를 실행하는 때에 필요하게 되는 각종 설정치가 격납된다. 이 데이터 카운트/시큐러티 파라미터 레지스터의 사이즈는, 16비트이고, 8비트 단위로2개의 어드레스가 설정되어 있다.
·데이터 어드레스/리비전 넘버 레지스터
데이터 어드레스/리비전 넘버 레지스터는, 호스트 기기(2)로부터 메모리 카드(1)에 주어진 메모리 액세스 커맨드(컨트롤 커맨드)를 실행하는 때에 필요하게 되는 불휘발성 반도체 메모리(17)상의 어드레스가 격납된다. 예를 들면, 불휘발성 반도체 메모리(17)로부터 데이터를 판독하는 때에 있어서의 판독 위치의 선두 어드레스, 불휘발성 반도체 메모리(17)에 대해 데이터를 기록하는 때에 있어서의 기록 위치의 선두 어드레스 등이 설정된다. 또한, 데이터 카운트/시큐러티 파라미터 레지스터는, 시큐러티 커맨드(컨트롤 커맨드)를 실행하는 때에 필요하게 되는 리비전 번호가 격납된다. 이 데이터 카운트/시큐러티 파라미터 레지스터의 사이즈는, 32비트이고, 8비트 단위로 4개의 어드레스가 설정되어 있다.
또한, 데이터 카운트/시큐러티 파라미터 레지스터 및 데이터 어드레스/ 리비전 넘버 레지스터는 메모리 액세스 커맨드(컨트롤 커맨드)의, READ_DATA. READ_INF0, WRITE_DATA, WRITE_INF0 등의 실행시에 참조되는 것으로 된다. 또한, 상기 데이터 카운트/시큐러티 파라미터 레지스터 및 데이터 어드레스/리비전 넘버 레지스터는, TPC의 중의 WRITE_REG_TPC, EX_SET_CMD_TPC에 의해 데이터가 기록되는 것으로 된다. 또한, 이들의 컨트롤 커맨드의 내용에 관해서는, 상세를 후술한다.
레지스터 어드레스 레지스터는, 호스트 기기(2)가, 상기한 스테터스 레지스터군 및 파라미터 레지스터군에 대해 TPC를 이용하여 액세스하는 때에, 액세스하는 레지스터의 선두 어드레스 및 데이터 길이를 미리 설정을 하여 두는 레지스터이다.
상술한 스테터스 레지스터군 및 파라미터 레지스터군에 대해서는, WRITE_REG_TPC(TPC 중의 하나. 상세는 후술한다)로 데이터의 기록이 가능하고, READ_REG_TPC(TPC 중의 하나, 상세는 후술한다)로 데이터의 판독이 가능하다. 그러나, 이들 WRITE_REG_TPC, READ_REG_TPG에는, 레지스터 위치를 특정하는 정보가 인수(引數)로서 포함되어 있지 않다. 따라서, 호스트 기기(2)는, 이들의 WRITE_REG_TPC, READ_REG_TPC를 이용하여 레지스터에 대해 액세스를 행하는 경우에는, 미리, 이 레지스터 어드레스 레지스터에 대해, 스테터스 레지스터군 및 파라미터 레지스터군의 어드레스 및 데이터 길이를 설정한다. 그리고, WRITE_REG_TPC, READ_REG_TPC가 주어진 경우, 메모리 I/F 컨트롤러(16)는, 이 레지스터 어드레스 레지스터에 격납되어 있는 정보를 참조하여, 각 커맨드에 대응하는 처리를 행한다. 또한, 이 레지스터 어드레스 레지스터에 대해 레지스터 어드레스 및 데이터 길이를 격납하는 TPC는, SET_R_W_REG_ADRS_TPC(상세 후술)이다.
커맨드 레지스터는, 호스트 기기(2)로부터 주어지는 컨트롤 커맨드를 격납하는 레지스터이다. 메모리 I/F 컨트롤러(16)는, 이 커맨드 레지스터에 격납된 컨트롤 커맨드에 응하여, 각종의 동작 제어를 행한다. 이 커맨드 레지스터에 대해 컨트롤 커맨드를 격납하는 TPC는, SET_CMD_TPC, EX_SET_CMD_TPC(상세 후술)이다.
다음에, TPC(Transfer Protocol Co㎜and)에 관해 설명을 한다.
TPC는, 본 메모리 카드(1) 및 호스트 기기(2)의 데이터 전송 프로토콜상에서 규정 되어 있는 커맨드이다. TPC는, 호스트 기기(2)가, 메모리 카드(1) 내의 레지스터 회로(13) 및 데이터 버퍼 회로(14)에 대해 액세스를 하는 때에 사용된다. TPC는, 버스 스테이트 신호가, BS1의 타이밍에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다. 이하, 이 TPC의 코드 내용과, 그 구체적인 동작 내용에 관해 설명한다. 이하에, TPC의 한 예를 나타낸다.
READ_LONG_DATA_TPC
READ_SH0RT-DATA_TPC
READ_REG_TPC
GET_INT_TPC
WRITE_L0NG_DATA_TPC
WRITE_SHORT_DATA_TPC
WRITE_REG_TPC
SET_R_W_REG_ADRS_TPC
SET_CMD_TPC
EX_SET_CMD_TPC
READ_L0NG_DATA_TPC는, 데이터 버퍼 회로(14)로부터 512바이트의 데이터를 판독하는 명령이다. 즉, 데이터 버퍼 회로(14) 내에 격납되어 있는 전 데이터를 호스트 기기(2)에 전송하는 명령이다. READ_LONG_DATA_TPC는 리드계의 명령이다. 즉, BS1에서 READ_LONG_DATA_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, BS3에서 데이터 버퍼 회로(14) 내의 512바이트분 데이터가 메모리 카드(1)로부터 호스트 기기(2)에 전송된다.
READ_SHORT_DATA_TPC는, TPC 파라미터 레지스터로 설정되어 있는 데이터 길이의 데이터를, 데이터 버퍼 회로(14)로부터 판독하는 명령이다. 즉, 데이터 버퍼 회로(14) 내에 격납되어 있는 소정량의 데이터를 호스트 기기(2)에 전송하는 명령이다. READ_SHORT_DATA_TPC는 리드계의 명령이다. 즉, BS1에서 READ_SHORT_DATA_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, BS3에서 데이터 버퍼 회로(14) 내의 소정 바이트분 데이터가 메모리 카드(1)로부터 호스트 기기(2)에 전송된다.
READ_REG_TPC는, 어드레스가 설정되어 있는 레지스터의 값을 판독하는 명령이다. 어드레스가 설정되어 있는 레지스터는, 스테터스 레지스터군, 파라미터 레지스터군 및 엑스트라 레지스터군의 각 내부 레지스터이다. 판독되는 레지스터의 어드레스 위치(선두 어드레스 및 데이터 길이)는, 레지스터 어드레스 레지스터에 격납되어 있는 값이다. 즉, 레지스터 내의 값을 참조하는 경우에는, 미리 레지스터 어드레스 레지스터에 대해 목적하는 어드레스 위치를 기록하여 둘 필요가 있다. 이 레지스터 어드레스 레지스터에 어드레스 위치를 기록하는 TPC는, SET_R_W_REG_ADRS_TPC이다. READ_REG_TPC는 리드계의 명령이다. 즉, BS1에서 READ_REG_TPG가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 목적하는 레지스터 내의 소정 비트분 데이터가 BS3에서 메모리 카드(1)로부터 호스트 기기(2)에 전송된다.
GET_INT_TPC는, 스테터스 레지스터군의 내부 레지스터인 INT 레지스터의 값(8비트분의 값)을 판독하는 명령이다. 이 GET_INT_TPC는, 상기한 READ_REG_TPC와 같이 레지스터 어드레스 레지스터에 대해 어드레스 위치를 격납하는 일 없이 INT레지스터의 값을 판독한다. GET_INT_TPC는 리드계의 명령이다. 즉, BS1에서 GET_INT_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, BS3에서 INT 레지스터 내의 8비트분 데이터가 메모리 카드(1)로부터 호스트 기기(2)에 전송된다.
WRITE_LONG_DATA_TPG는, 데이터 버퍼 회로(14)에 대해 12바이트의 데이터를 기록하는 명령이다. 즉, 데이터 버퍼 회로(14)의 전 데이터를, 호스트 기기(2)로부터 데이터 버퍼 회로(14)에 전송하는 명령이다. WRITE_LONG_DATA_TPC는 라이트계의 명령이다. 즉, BS1에서 WRITE_LONG_DATA_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 데이터 버퍼 회로(14)에 기록하는 512바이트분 데이터가 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
WRITE_SHORT_DATA_TPC는, TPC 파라미터 레지스터로 설정되어 있는 데이터 길이의 데이터를, 데이터 버퍼 회로(14)에 대해 기록하는 명령이다. 즉, 소정량의 데이터를, 호스트 기기(2)로부터 데이터 버퍼 회로(14) 내에 전송하는 명령이다. WRITE_SHORT_DATA_TPC는 라이트계의 명령이다. 즉, BS1에서 WRITE_SHORT_DATA_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 데이터 버퍼 회로(14)에 기록하는 소정 바이트분 데이터가 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
WRITE_REG_TPC는, 어드레스가 설정되어 있는 레지스터의 값을 판독하는 명령이다. 어드레스가 설정되어 있는 레지스터는, 스테터스 레지스터군, 파라미터 레지스터군 및 엑스트라 레지스터군의 각 내부 레지스터이지만, 호스트 기기(2)에 의해 기록 가능한 것은 파라미터 레지스터군 및 엑스트라 레지스터군이다. 기록하는 레지스터의 어드레스 위치(선두 어드레스 및 데이터 길이)는, 레지스터 어드레스 레지스터에 격납되어 있는 값이다. 즉, 레지스터 내에 대해 값을 기록하는 경우에는, 미리 레지스터 어드레스 레지스터에 대해 목적하는 어드레스 위치를 기록하여 둘 필요가 있다. 이 레지스터 어드레스 레지스터에 어드레스 위치를 기록하는 TPC는, SET_R_W_REG_ADRS_TPC이다. WRITE_REG_TPC는 라이트계의 명령이다. 즉, BS1에서 WRITE_REG_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 목적하는 레지스터 내에 기록하는 데이터가 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
SET_R_W_REG_ADRS_TPC는, READ_REG_TPG, WRITE_REG_TPC로 액세스하는 레지스터의 어드레스 위치를, 레지스터 어드레스 레지스터의 격납하는 명령이다. SET_R_W_REG_ADRS_TPC는 라이트계의 명령이다. 즉, BS1에서 SET_R_W_REG_ADRS_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 레지스터 어드레스 레지스터에 기록하는 데이터가 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
SET_CMD_TPC는, 메모리 I/F 컨트롤러(16)에 대한 동작 명령인 컨트롤 커맨드를, 커맨드 레지스터에 격납하는 명령이다. SET_CMD_TPC에 의해 커맨드 레지스터 내에 컨트롤 커맨드가 격납되면, 메모리 I/F 컨트롤러(16)는, 이 컨트롤 커맨드에 따른 동작 제어를 행한다. 동작 내용으로서는, 예를 들면, 메모리에 대한 동작 제어, 메모리 이외의 각 펑션에 대한 동작 또는 데이터의 시큐러티에 관한 동작 등이다. 또한, 컨트롤 커맨드의 동작 내용에 따라서는, 파라미터 레지스터 내에 격납되어 있는 값을 참조하여, 동작이 행하여지는 경우가 있다. 이 경우에는,SET_GMD_TPC를 발행하기 전의 패킷에서 미리 상기한 WRITE_REG_TPC를 이용하여, 파라미터 레지스터 내의 소정의 내부 레지스터에 대해 값을 기록하여 둘 필요가 있다. SET_CMD_TPC는 라이트계의 명령이다. 즉, BS1에서 SET_CMD-TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 커맨드 레지스터에 기록되는 컨트롤 커맨드의 코드가 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
EX_SET_CMD_TPC는, 데이터 카운트/시큐러티 파라미터 레지스터 및 데이터 어드레스/리비전 넘버 레지스터에 대해 데이터를 격납하는 동시에, 커맨드 레지스터에 대해 컨트롤 커맨드를 격납하는 명령이다. EX_SET_CMD_TPC에 의해 컨트롤 커맨드로서 메모리 액세스 커맨드가 전송되는 경우에는, 데이터 카운트/시큐러티 파라미터 레지스터에는, 불휘발성 반도체 메모리(17)에 대해 액세스하는 데이터의 데이터량이 격납되고, 데이터 어드레스/리비전 넘버 레지스터에는, 불휘발성 반도체 메모리(17)의 데이터 어드레스가 격납되는 것으로 된다. 또한, EX_SET_CMD_TPC에 의해 컨트롤 커맨드로서 시큐러티 커맨드가 전송되는 경우에는, 데이터 카운트/시큐러티 파라미터 레지스터에는, 시큐러티 관리용의 파라미터가 격납되고, 데이터 어드레스/리비전 넘버 레지스터에는, 시큐러티 관리용의 리비전 넘버가 격납되는 것으로 된다. 이 EX_SET_CMD_TPC에 의해 컨트롤 커맨드를 전송한 경우에는, 메모리 I/F 컨트롤러(16)가 그 컨트롤 커맨드를 실행하기 전에, 데이터 카운트/시큐러티 파라미터 레지스터 및 데이터 어드레스/리비전 넘버 레지스터에 대해 전송 데이터가 격납된다.
EX_SET_CMD_TPC는 라이트계의 명령이다. 즉, BS1에서 EX_SET_CMD_TPC가 호스트 기기(2)로부터 메모리 카드(1)에 발행되면, 컨트롤 커맨드의 코드 등이 BS2에서 호스트 기기(2)로부터 메모리 카드(1)에 전송된다.
여기서, EX_SET_CMD_TPC와 동일한 데이터 전송 동작은, SET_CMD_TPC를 이용하여도 실현할 수 있다. 그러나, 파라미터 레지스터군 내의 내부 레지스터에 격납되어 있는 값을 참조하여 동작 제어를 하는 컨트롤 커맨드를 전송하는 경우, 예를 들면, READ_DATA, READ_INFO, WRITE_DATA, WRITE_INF0 등의 컨트롤 커맨드를 전송하는 경우, 그 참조되는 데이터를 미리 파라미터 레지스터에 전송하여 두어야 한다. 즉, SET_CMD_TPC를 실행하기 전에, SET_R_W_REG_ADRS 및 WRITE_REG_TPC를 전송하여 두어야 한다.
이에 대해, EX_SET_CMD_TPC를 이용한 경우에는, 미리 WRITE_REG_TPC를 이용하여 데이터 카운트/시큐러티 파라미터 레지스터 및 데이터 어드레스/리비전 넘버 레지스터에 데이터를 격납하지 않아도 좋다. 즉, SET_CMD_TPC를 이용하면 3패킷 필요하게 되는 데이터 전송 동작을, EX_SET_CMD_TPC라면 1패킷만으로 실현할 수 있다.
따라서 EX_SET_CMD_TPC를 이용하여 컨트롤 커맨드를 전송하면, SET_R_W_REG_ADRS 및 WRITE_REG_TPC를 전송하는 패킷 시퀀스를 실행하지 않아도 좋고, 처리의 고속화를 도모할 수 있다.
도 15에, SET_CMD_TPC를 실행한 경우의 호스트 기기(2)로부터 메모리 카드(1)에 전송하는 구체적인 전송 데이터 예를 도시한다. 도 16에, EX_SET_CMD_TPC를 실행한 경우의 호스트 기기(2)로부터 메모리 카드(1)에 전송하는구체적인 전송 데이터 예를 도시한다. 이 도 15 및 도 16에 도시한 전송 데이터는, BS2시에 전송되는 것으로 된다.
SET_CMD_TPC를 실행한 경우의 전송 데이터는, 1바이트의 커맨드 코드와, 2바이트의 CRC로 된다. 1바이트의 커맨드 코드는, 메모리 I/F 컨트롤러(16)에 대해 실행시키는 컨트롤 커맨드를 특정하는 코드이다. 커맨드 코드는, 커맨드 레지스터에 격납된다.
EX_SET_CMD_TPC를 실행한 경우의 전송 데이터는, 1바이트의 커맨드 코드와, 2바이트의 카운트/시큐러티 파라미터 데이터와, 2바이트의 어드레스/리비전 넘버 데이터와, 2바이트의 CRC로 된다. 카운트/시큐러티 파라미터 데이터는, 데이터 카운트/시큐러티 파라미터 레지스터에 격납되는 데이터이다. 어드레스/리비전 넘버 데이터는, 데이터 어드레스/리비전 넘버 레지스터에 격납되는 데이터이다.
도 15 및 도 16에 도시한 바와 같이, SET_CMD_TPC의 전송 데이터는, EX_SET_CMD_TPC의 전송 데이터의 쪽이 데이터 길이가 길어진다. 따라서, 호스트 기기(2)는, 데이터 카운트/시큐러티 파라미터 레지스터 및 데이터 어드레스/리비전 넘버 레지스터를 참조하지 않고 실행할 수 있는 커맨드 코드를 전송하는 경우에는, EX_SET_CMD_TPC가 아니라, SET_CMD_TPC를 이용한 쪽이 보다 짧은 패킷으로 된다. 따라서, TPC의 커맨드 세트로서, SET_CMD_TPC와 EX_SET_CMD_TPC를 설정하여 두고, 전송하는 컨트롤 커맨드에 응하여 적응적으로 선택함으로써, 보다 처리를 고속화할 수 있다.
다음에, 컨트롤 커맨드에 관해 설명을 한다.
컨트롤 커맨드는, 호스트 기기(2)로부터, 메모리 카드(1)의 메모리 I/F 컨트롤러(16)에 대해 주어지는 동작 제어 명령이다. 컨트롤 커맨드는, 호스트 기기(2)로부터 TPC의 SET_CMD_TPC 또는 EX_SET_CMD_TPC에 의해 메모리 카드(1) 내의 커맨드 레지스터에 격납된다. 메모리 I/F 컨트롤러(16)는, 커맨드 레지스터 내에 컨트롤 커맨드가 격납되면, 그 컨트롤 커맨드에 대응한 동작 제어를 실행한다. 그리고, 그 동작 제어의 실행과 함께 INT 레지스터 내의 각 값을 적절히 갱신한다.
컨트롤 커맨드는, 메모리 액세스 커맨드, 펑션 커맨드 및 시큐러티 커맨드의 3개의 종류로 분류된다. 메모리 액세스 커맨드는, 메모리 카드(1)상의 불휘발성 반도체 메모리(17)에 대해 액세스를 행하는 커맨드이다. 펑션 커맨드는, 메모리 카드(1)상의 각 펑션에 대해 액세스를 행하는 커맨드이다. 시큐러티 커맨드는, 저작권 보호에 필요한 시큐러티 기능을 실현하기 위한 커맨드이다.
메모리 액세스 커맨드에는, 예를 들면, 불휘발성 반도체 메모리(17)로부터 데이터 버퍼 회로(14)에 데타를 판독하는 커맨드, 데이터 버퍼 회로(14)로부터 불휘발성 반도체 메모리(17)에 데이터를 기록하는 커맨드, 불휘발성 반도체 메모리(17)상의 데이터를 소거하는 커맨드 등이 있다.
펑션 커맨드에는, 예를 들면, 본 메모리 카드(1)를 공장 출하 상태로 되돌리는 포맷 커맨드나 메모리 카드(1)의 발진기(18)의 동작을 정지시키는 슬리프 커맨드 등이 있다.
시큐러티 커맨드에는, 예를 들면, 본 메모리 카드(1)의 고유의 ID를 판독하는 커맨드, 컨텐트 키에 관련되어 있는 키에 대한 조작을 행하는 커맨드, 난수를발생하는 커맨드 등이 있다.
여기서는, 메모리 액세스 커맨드의 한 예를 도 17에 도시한다.
메모리 액세스 커맨드에는, 도 17에 도시한 바와 같이, READ_DATA, WRITE_DATA, READ_INFO, READ_ATRB, STOP, ERASE 등이 있다.
READ_DATA는, 불휘발성 반도체 메모리(17)의 유저 에어리어의 지정 어드레스로부터 데이터를 연속적으로 판독하여 가는 명령이다. 메모리 I/F 컨트롤러(16)는, 이 READ_DATA가 주어지면, 데이터 어드레스/리비전 넘버 레지스터에 격납되어 있는 어드레스를 참조하여, 불휘발성 반도체 메모리(17)상의 이 어드레스에 대해 액세스를 행하고, 이 어드레스로부터 데이터를 판독하여 간다. 판독한 데이터는, 일단 데이터 버퍼 회로(14)에 전송한다. 메모리 I/F 컨트롤러(16)는, 데이터 버퍼 회로(14)가 가득 차면, 즉, 512바이트분 데이터를 판독하면, INT 레지스터의 BREQ/PRG 비트를 유효(1)로 하고, 호스트 기기(2)에 대해 전송 요구의 인터럽트를 발행한다. 그리고, 호스트 기기(2)에 의해 데이터 버퍼 회로(14) 내의 데이터가 판독되면, 계속해서 데이터를 불휘발성 반도체 메모리(17)로부터 데이터 버퍼 회로(14)에 전송하여 간다. 메모리 I/F 컨트롤러(16)는, 데이터 카운트/시큐러티 파라미터 레지스터에 격납되어 있는 데이터 수만큼 데이터를 판독할 때까지, 이상의 처리를 반복한다. 그리고, 에러가 발생하지 않고 최후까지 데이터를 판독하면, INT 레지스터의 CMD 비트를 유효(1)로 하고, 처리를 종료한다. 또한, 처리의 도중에 에러가 발생한 경우에는, INT 레지스터의 CMD 비트를 유효(1)로 함과 함께, ERR 비트를 유효(1)로 하고 처리를 종료한다.
WRITE_DATA는, 데이터 버퍼 회로(14)에 격납되어 있는 데이터를, 불휘발성 반도체 메모리(17)의 유저 에어리어의 지정 어드레스로부터 데이터를 연속적으로 기록하여 가는 명령이다. 메모리 I/F 컨트롤러(16)는, WRITE_DATA가 주어지면, 데이터 어드레스/리비전 넘버 레지스터에 격납되어 있는 어드레스를 참조하여, 불휘발성 반도체 메모리(17)상의 이 어드레스에 대해 액세스를 행하고, 이 어드레스로부터 데이터를 기록하여 간다. 기록하는 데이터는, 데이터 버퍼 회로(14)에 격납되어 있는 데이터이다. 메모리 I/F 컨트롤러(16)는, 데이터 버퍼 회로(14) 속이 비여있으면, 즉, 512바이트분 데이터를 기록하면, INT 레지스터의 BREQ/PRG 비트를 유효(1)로 하고, 호스트 기기(2)에 대해 전송 요구의 인터럽트를 발행한다. 그리고, 호스트 기기(2)에 의해 데이터 버퍼 회로(14) 내에 데이터가 기록되면, 계속해서 데이터를 데이터 버퍼 회로(14)로부터 불휘발성 반도체 메모리(17)에 기록하여 간다. 메모리 I/F 컨트롤러(16)는, 데이터 카운트/시큐러티 파라미터 레지스터에 격납되어 있는 데이터 수만큼 데이터를 기록할 때까지, 이상의 처리를 반복한다. 그리고, 에러가 발생하지 않고 데이터를 최후까지 기록하면, INT 레지스터의 CMD 비트를 유효(1)로 하고, 처리를 종료한다. 또한, 처리의 도중에 에러가 발생한 경우에는, INT 레지스터의 CMD 비트를 유효(1)로 함과 함께, ERR 비트를 유효(1)로 하고 처리를 종료한다.
READ_INF0는, 불휘발성 반도체 메모리(17)의 시스템 에어리어의 인포메이션 북 에어리어의 지정 어드레스로부터 데이터를 연속적으로 판독하여 가는 명령이다. 메모리 I/F 컨트롤러(16)의 처리 순서는, READ_DATA와 동일하다.
WRITE_INFO는, 불휘발성 반도체 메모리(17)의 시스템 에어리어의 인포메이션 북 에리어의 지정 어드레스에 대해 데이터를 연속적으로 기록하여 가는 명령이다. 메모리 I/F 컨트롤러(16)의 처리 순서는, WRITE_DATA와 동일하다.
READ_ATRB는, 불휘발성 반도체 메모리(17)로부터 애트리뷰트 정보를 판독하는 명령이다. 메모리 I/F 컨트롤러(16)는, 이 READ_ATRB가 주어지면, 불휘발성 반도체 메모리(17) 내의 애트리뷰트 정보를 판독하고, 데이터 버퍼 회로(14)에 전송한다.
ST0P은, READ_DATA, WRITE_DATA, READ_INFO, WRITE_INF0, READ_ATRB의 처리의 실행을 도중에 종료하는 명령이다. 메모리 I/F 컨트롤러(16)는, STOP이 주어지면, READDATA, WRITEDATA, READINF0, WRITE_INFO, READ_ATRB의 실행 처리를 정지한다.
ERASE는, 유저 에어리어의 지정 어드레스로부터 데이터를 소거하는 명령이다. 메모리 I/F 컨트롤러(16)는, ERASE가 주어지면, 데이터 어드레스/리비전 넘버 레지스터에 격납되어 있는 어드레스를 참조하여, 이 어드레스에 나타내여진 격납 위치로부터, 데이터 카운트/시큐러티 파라미터 레지스터에 격납되어 있는 데이터 수만큼, 불휘발성 반도체 메모리(17)상의 데이터를 소거한다.
이상, 본 발명을 적용한 리무벌하는 메모리 카드 및, 이 메모리 카드를 외부 기억 미디어로서 이용하는 호스트 기기에 관해 설명을 하였다. 본 발명은, 이와 같은 메모리 카드에 적용하는 것에 한정되는 것이 아니다. 예를 들면, 본 발명을, 호스트 기기의 외부 접속 장치로서, 카메라 장치를 적용하여도 좋다, 이 경우, 메모리 I/F 컨트롤러(16)는, 카메라 장치의 동작 제어를 행하는 것으로 되고, 또한, 컨트롤 커맨드에도, 카메라 제어용의 커맨드가 세트되는 것으로 된다.
또한, 본 발명은, 도면을 참조하여 설명한 상술한 실시예에 한정되는 것이 아니고, 첨부한 청구의 범위 및 그 주지를 일탈하는 일 없이, 다양한 변경, 치환 또는 그 동등한 것을 할 수 있음은 당업자에 있어서 분명하다.
본 발명에 관한 외부 접속 기기 및 호스트 기기는, 본 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)로서, 임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 외부 접속 기기의 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 외부 접속 기기의 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 설정되어 있다. 이로써, 본 발명에서는, 동작 제어 커맨드와 함께, 이 동작 제어 커맨드를 실행하는 때에 필요하게 되는 파라미터를, 동시에 호스트 기기로부터 외부 접속 기기에 전송할 수 있다.
따라서 본 발명에서는, 호스트 기기로부터 외부 접속 기기에 대해 효율적으로 처리 커맨드를 주고, 호스트 기기와 외부 접속 기기와의 데이터 전송 처리 시간을 단축할 수 있다.
Claims (12)
- 호스트 기기에 접속되는 외부 접속 기기에 있어서,파라미터를 격납하는 파라미터 레지스터와,상기 호스트 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와,상기 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하여, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러를 구비하고,상기 파라미터 레지스터 및 커맨드 레지스터는, 상기 호스트 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)에 의거하여, 해당 호스트 기기로부터 액세스가 되고,상기 TPC의 커맨드 세트에는, 임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 본 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 포함되어 있는 것을 특징으로 하는 외부 접속 기기.
- 제 1항에 있어서,외관 형상이 카드형인 것을 특징으로 하는 외부 접속 기기.
- 호스트 기기에 접속되는 외부 접속 기기에 있어서,파라미터를 격납하는 파라미터 레지스터와,상기 호스트 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와,상기 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하여, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러를 구비하고,상기 파라미터 레지스터 및 커맨드 레지스터는, 상기 호스트 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)에 의거하여, 해당 호스트 기기로부터 액세스가 되고,상기 TPC의 커맨드 세트에는,임의의 파라미터를 호스트 기기로부터 본 기기에 전송하고, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 제 1의 레지스터 기록 커맨드와,임의의 동작 제어 커맨드를 호스트 기기로부터 본 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납하는 제 2의 레지스터 기록 커맨드와,임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 본 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 제 3의 레지스터 기록 커맨드가 포함되어 있는 것을 특징으로 하는 외부 접속 기기.
- 제 3항에 있어서,외관 형상이 카드형인 것을 특징으로 하는 외부 접속 기기.
- 외부 접속 기기가 접속되는 호스트 기기에 있어서,파라미터 및 외부 접속 기기에 대한 동작 제어하는 명령이 나타내여진 동작 제어 커맨드를, 해당 외부 접속 기기에 송신하는 송신 수단을 구비하고,상기 외부 접속 기기에는, 파라미터를 격납하는 파라미터 레지스터와, 본 기기로부터 주어지는 상기 동작 제어 커맨드를 격납하는 커맨드 레지스터와, 상기 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하여, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러가 구비되어 있고,상기 송신 수단은, 전송 프로토콜 커맨드(TPC)를 상기 외부 접속 기기에 대해 발행함으로써, 해당 외부 접속 기기의 파라미터 레지스터 및 커맨드 레지스터에 대해 액세스를 행하고,상기 TPC의 커맨드 세트에는,임의의 동작 제어 커맨드 및 임의의 파라미터를 본 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 포함되어 있는 것을 특징으로 하는 호스트 기기.
- 제 5항에 있어서,상기 외부 접속 기기는, 외관 형상이 카드형인 것을 특징으로 하는 호스트 기기.
- 외부 접속 기기가 접속되는 호스트 기기에 있어서,파라미터 및 외부 접속 기기에 대한 동작 제어하는 명령이 나타내여진 전송 제어 커맨드를, 해당 외부 접속 기기에 송신하는 송신 수단을 구비하고,상기 외부 접속 기기에는, 파라미터를 격납하는 파라미터 레지스터와, 상기 본 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와, 상기 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하여, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러가 구비되어 있고,상기 송신 수단은, 전송 프로토콜 커맨드(TPC)를 상기 외부 접속 기기에 대해 발행함으로써, 해당 외부 접속 기기의 파라미터 레지스터 및 커맨드 레지스터에 대해 액세스를 행하고,상기 TPC의 커맨드 세트에는,임의의 파라미터를 본 기기로부터 외부 접속 기기에 전송하고, 전송한 파라미터를 상기 외부 접속 기기의 파라미터 레지스터에 격납하는 제 1의 레지스터 기록 커맨드와,임의의 동작 제어 커맨드를 본 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 외부 접속 기기의 커맨드 레지스터에 대해 격납하는 제 2의 레지스터 기록 커맨드와,임의의 동작 제어 커맨드 및 임의의 파라미터를 본 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 외부 접속 기기의 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 외부 접속 기기의 파라미터 레지스터에 격납하는 제 3의 레지스터 기록 커맨드가 포함되어 있는 것을 특징으로 하는 호스트 기기.
- 제 7항에 있어서,상기 외부 접속 기기는, 외관 형상이 카드형인 것을 특징으로 하는 호스트 기기.
- 호스트 기기와, 해당 호스트 기기에 접속되는 외부 접속 기기를 구비한 데이터 통신 시스템에 있어서,상기 호스트 기기는, 파라미터 및 상기 외부 접속 기기에 대한 동작 제어하는 명령이 나타내여진 전송 제어 커맨드를, 해당 외부 접속 기기에 송신하는 송신 수단을 가지며,상기 외부 접속 기기는, 파라미터를 격납하는 파라미터 레지스터와, 상기 호스트 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와, 상기 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하여, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러를 가지며,상기 외부 접속 기기의 상기 파라미터 레지스터 및 커맨드 레지스터는, 상기호스트 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)에 의거하여, 해당 호스트 기기로부터 액세스가 되고,상기 TPC의 커맨드 세트에는,임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 레지스터 기록 커맨드가 포함되어 있는 것을 특징으로 하는 데이터 통신 시스템.
- 제 9항에 있어서,상기 외부 접속 기기는, 외관 형상이 카드형인 것을 특징으로 하는 데이터 통신 시스템.
- 호스트 기기와, 해당 호스트 기기에 접속되는 외부 접속 기기를 구비한 데이터 통신 시스템에 있어서,상기 호스트 기기는, 파라미터 및 상기 외부 접속 기기에 대한 동작 제어하는 명령이 나타내여진 전송 제어 커맨드를, 해당 외부 접속 기기에 송신하는 송신 수단을 가지며,상기 외부 접속 기기는, 파라미터를 격납하는 파라미터 레지스터와, 상기 호스트 기기로부터 주어지는 동작 제어 커맨드를 격납하는 커맨드 레지스터와, 상기 커맨드 레지스터에 격납되어 있는 동작 제어 커맨드를 참조하여, 그 동작 제어 커맨드에 의해 특정되는 동작 제어를 하는 컨트롤러를 가지며,상기 외부 접속 기기의 상기 파라미터 레지스터 및 커맨드 레지스터는, 상기 호스트 기기로부터 발행되는 전송 프로토콜 커맨드(TPC)에 의거하여, 해당 호스트 기기로부터 액세스가 되고,상기 TPC의 커맨드 세트에는,임의의 파라미터를 호스트 기기로부터 외부 접속 기기에 전송하고, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 제 1의 레지스터 기록 커맨드와,임의의 동작 제어 커맨드를 호스트 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납하는 제 2의 레지스터 기록 커맨드와,임의의 동작 제어 커맨드 및 임의의 파라미터를 호스트 기기로부터 외부 접속 기기에 전송하고, 전송한 동작 제어 커맨드를 상기 커맨드 레지스터에 대해 격납함과 함께, 전송한 파라미터를 상기 파라미터 레지스터에 격납하는 제 3의 레지스터 기록 커맨드가 포함되어 있는 것을 특징으로 하는 데이터 통신 시스템.
- 제 11항에 있어서,상기 외부 접속 기기는, 외관 형상이 카드형인 것을 특징으로 하는 데이터 통신 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2002-00045251 | 2002-02-21 | ||
JP2002045251A JP2003242470A (ja) | 2002-02-21 | 2002-02-21 | 外部接続機器及びホスト機器 |
PCT/JP2003/001799 WO2003071436A1 (fr) | 2002-02-21 | 2003-02-19 | Dispositif de connexion externe, dispositif hote et systeme de communication de donnees |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040080934A true KR20040080934A (ko) | 2004-09-20 |
KR100986884B1 KR100986884B1 (ko) | 2010-10-08 |
Family
ID=27750573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020037013536A KR100986884B1 (ko) | 2002-02-21 | 2003-02-19 | 외부 접속 기기, 호스트 기기 및 데이터 통신 시스템 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7124219B2 (ko) |
EP (1) | EP1477901B1 (ko) |
JP (1) | JP2003242470A (ko) |
KR (1) | KR100986884B1 (ko) |
CN (1) | CN1327368C (ko) |
DE (1) | DE60317635T2 (ko) |
WO (1) | WO2003071436A1 (ko) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005285067A (ja) * | 2004-03-31 | 2005-10-13 | Matsushita Electric Ind Co Ltd | 情報処理端末及び情報処理方法 |
TWI228257B (en) * | 2004-05-06 | 2005-02-21 | Carry Computer Eng Co Ltd | Silicon storage media, controller, and access method thereof |
JP4591754B2 (ja) | 2004-07-30 | 2010-12-01 | ソニー株式会社 | 通信装置、電子機器及び通信システム |
US7565469B2 (en) * | 2004-11-17 | 2009-07-21 | Nokia Corporation | Multimedia card interface method, computer program product and apparatus |
JP4433311B2 (ja) | 2005-09-12 | 2010-03-17 | ソニー株式会社 | 半導体記憶装置、電子機器及びモード設定方法 |
CN100349108C (zh) * | 2005-11-21 | 2007-11-14 | 北京中星微电子有限公司 | 与非门快闪存储器的物理接口、接口方法和管理设备 |
JP4186170B2 (ja) * | 2006-10-23 | 2008-11-26 | セイコーエプソン株式会社 | 情報処理装置 |
KR100877609B1 (ko) * | 2007-01-29 | 2009-01-09 | 삼성전자주식회사 | 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법 |
EP2141634A4 (en) * | 2007-04-20 | 2011-11-02 | Panasonic Corp | INSERT / REMOVE DETECTOR |
JP2009086988A (ja) * | 2007-09-28 | 2009-04-23 | Toshiba Corp | メモリカード |
JP4600509B2 (ja) * | 2008-04-22 | 2010-12-15 | セイコーエプソン株式会社 | 送受信システム並びにマスターデバイス |
US20100142418A1 (en) * | 2008-06-02 | 2010-06-10 | Shinichiro Nishioka | Data communication system, data communication request device, and data communication response device |
US8351356B2 (en) | 2008-06-20 | 2013-01-08 | Panasonic Corporation | Data communication system, communication device, and communication method |
WO2010010686A1 (ja) | 2008-07-22 | 2010-01-28 | パナソニック株式会社 | 通信システム、通信装置及び通信方法 |
US20100030962A1 (en) * | 2008-08-04 | 2010-02-04 | Sherif Sirageldin | Storage facility for data handling devices |
US8166207B2 (en) * | 2008-09-29 | 2012-04-24 | Intel Corporation | Querying a device for information |
WO2010041093A1 (en) | 2008-10-09 | 2010-04-15 | Federico Tiziani | Virtualized ecc nand |
IT1399916B1 (it) | 2010-04-30 | 2013-05-09 | Balluchi | Dispositivo di memoria ad accesso di registro indicizzato |
CN102915207A (zh) * | 2011-08-01 | 2013-02-06 | 建兴电子科技股份有限公司 | 固态储存装置及其数据储存方法 |
JP2014238871A (ja) * | 2014-08-01 | 2014-12-18 | マイクロン テクノロジー, インク. | 単一の仮想化されたeccアルゴリズムを提供するコントローラと、このコントローラを含む記憶システム、及びこの記憶システムを管理する方法 |
US10055236B2 (en) * | 2015-07-02 | 2018-08-21 | Sandisk Technologies Llc | Runtime data storage and/or retrieval |
US11556272B2 (en) * | 2020-09-18 | 2023-01-17 | Kioxia Corporation | System and method for NAND multi-plane and multi-die status signaling |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04139565A (ja) * | 1990-10-01 | 1992-05-13 | Sega Enterp Ltd | マルチcpu装置 |
CN2257612Y (zh) * | 1996-06-03 | 1997-07-09 | 邢伟华 | Ic卡并行快速读写卡 |
JP3586522B2 (ja) * | 1996-09-26 | 2004-11-10 | 日本電気株式会社 | 周辺機器制御装置 |
JP3274624B2 (ja) | 1997-05-13 | 2002-04-15 | 甲府日本電気株式会社 | 多階層バスシステムのタイミング制御装置 |
JPH117505A (ja) * | 1997-06-17 | 1999-01-12 | Fujitsu Ltd | カード型記憶媒体 |
JPH11328084A (ja) * | 1998-05-18 | 1999-11-30 | Hitachi Ltd | ディスク装置のホストインターフェース回路およびディスク装置 |
US6901457B1 (en) * | 1998-11-04 | 2005-05-31 | Sandisk Corporation | Multiple mode communications system |
US6618789B1 (en) * | 1999-04-07 | 2003-09-09 | Sony Corporation | Security memory card compatible with secure and non-secure data processing systems |
US6820203B1 (en) * | 1999-04-07 | 2004-11-16 | Sony Corporation | Security unit for use in memory card |
JP4423711B2 (ja) * | 1999-08-05 | 2010-03-03 | ソニー株式会社 | 半導体記憶装置及び半導体記憶装置の動作設定方法 |
JP4348790B2 (ja) * | 1999-09-20 | 2009-10-21 | ソニー株式会社 | 半導体記憶装置及び半導体記憶装置の動作設定方法 |
JP3249959B2 (ja) * | 1999-10-12 | 2002-01-28 | 株式会社ソニー・コンピュータエンタテインメント | 可搬型記憶装置及びメモリカード |
US6839857B2 (en) * | 2000-01-13 | 2005-01-04 | Sony Computer Entertainment Inc. | Interrupt controller in an interface device or information processing system |
-
2002
- 2002-02-21 JP JP2002045251A patent/JP2003242470A/ja not_active Abandoned
-
2003
- 2003-02-19 CN CNB038002868A patent/CN1327368C/zh not_active Expired - Fee Related
- 2003-02-19 DE DE60317635T patent/DE60317635T2/de not_active Expired - Lifetime
- 2003-02-19 KR KR1020037013536A patent/KR100986884B1/ko not_active IP Right Cessation
- 2003-02-19 EP EP03705333A patent/EP1477901B1/en not_active Expired - Lifetime
- 2003-02-19 US US10/474,911 patent/US7124219B2/en not_active Expired - Lifetime
- 2003-02-19 WO PCT/JP2003/001799 patent/WO2003071436A1/ja active IP Right Grant
-
2006
- 2006-06-06 US US11/447,444 patent/US7360001B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US7360001B2 (en) | 2008-04-15 |
CN1509441A (zh) | 2004-06-30 |
EP1477901A1 (en) | 2004-11-17 |
US7124219B2 (en) | 2006-10-17 |
JP2003242470A (ja) | 2003-08-29 |
DE60317635D1 (de) | 2008-01-03 |
US20040133717A1 (en) | 2004-07-08 |
WO2003071436A1 (fr) | 2003-08-28 |
DE60317635T2 (de) | 2008-10-30 |
EP1477901A4 (en) | 2006-08-30 |
CN1327368C (zh) | 2007-07-18 |
KR100986884B1 (ko) | 2010-10-08 |
US20060224800A1 (en) | 2006-10-05 |
EP1477901B1 (en) | 2007-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100986884B1 (ko) | 외부 접속 기기, 호스트 기기 및 데이터 통신 시스템 | |
US7318113B2 (en) | System and method communication system for reading or writing data to register between external card connection device and host device | |
USRE50067E1 (en) | Storage device including flash memory and capable of predicting storage device performance based on performance parameters | |
US5812814A (en) | Alternative flash EEPROM semiconductor memory system | |
CN107844431B (zh) | 映射表更新方法、存储器控制电路单元与存储器存储装置 | |
KR100483643B1 (ko) | 메모리 장치 | |
US7177975B2 (en) | Card system with erase tagging hierarchy and group based write protection | |
TWI735918B (zh) | 用來進行記憶裝置的存取管理之方法、記憶裝置及其控制器、主裝置以及電子裝置 | |
US20030009607A1 (en) | Method and system for programming a peripheral flash memory via an ide bus | |
EP1496437A1 (en) | Data storing apparatus | |
US8489805B2 (en) | Memory devices operated within a communication protocol standard timeout requirement | |
US5930818A (en) | Information communication system which transmits main data and data for restoring the main data | |
KR20080084082A (ko) | 메모리 카드 및 그것을 포함하는 메모리 시스템 그리고그것의 동작 방법 | |
US20050223144A1 (en) | Information terminal and data transfer method for information terminal | |
KR20190102779A (ko) | 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그것의 동작 방법 | |
JP4334331B2 (ja) | フラッシュメモリのアクセス制御方法 | |
EP4220374A1 (en) | Storage device and operating method of storage device | |
US20230105153A1 (en) | Method and apparatus for performing communications specification version control of memory device in predetermined communications architecture with aid of compatibility management, and associated computer-readable medium | |
KR20210004613A (ko) | 데이터 저장 장치 및 그 동작 방법 | |
JPH03194644A (ja) | 携帯可能電子装置 | |
JP2005100446A (ja) | 情報伝送システム及び情報伝送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130927 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140926 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |