[go: up one dir, main page]

KR20070052325A - 메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 컴퓨터프로그램 - Google Patents

메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 컴퓨터프로그램 Download PDF

Info

Publication number
KR20070052325A
KR20070052325A KR1020077006691A KR20077006691A KR20070052325A KR 20070052325 A KR20070052325 A KR 20070052325A KR 1020077006691 A KR1020077006691 A KR 1020077006691A KR 20077006691 A KR20077006691 A KR 20077006691A KR 20070052325 A KR20070052325 A KR 20070052325A
Authority
KR
South Korea
Prior art keywords
command
memory card
data
transfer
card
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020077006691A
Other languages
English (en)
Other versions
KR100897463B1 (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 KR20070052325A publication Critical patent/KR20070052325A/ko
Application granted granted Critical
Publication of KR100897463B1 publication Critical patent/KR100897463B1/ko
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

전송요구명령을 발행하여 데이터의 전송을 요구하는 호스트장치와 개시명령을 수신하고 나서 종료명령을 수신할 때까지 전송동작을 실행하는 메모리카드 사이의 데이터의 전송을 제어하는 메모리카드 컨트롤러에서, 호스트장치와 메모리카드의 동기를 취하면서 판독전송률에 영향을 미치는 오버헤드의 발생을 억제하는 것을 목적으로 한다. 전송동작의 실행에 의해 메모리카드에서 전송된 데이터량이 호스트장치로부터의 명령에 의해 지정된 데이터량에 이르면 메모리카드에 공급하는 클록 신호의 공급을 정지하고, 그 후 메모리카드에 공급하는 클록 신호의 공급을 정지한 상태에서 수신되는 후속 명령이 선행 명령에 따른 데이터 전송의 종료 어드레스의 다음 어드레스를 개시 어드레스로 지정하고 있는 경우, 메모리카드에 공급하는 클록 신호의 공급을 개시하는 종료제어부(10)를 구비한다.
호스트, 메모리카드, 클록 신호, 정지, 개시, 종료 어드레스, 개시 어드레스

Description

메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 컴퓨터 프로그램{MEMORY CARD CONTROLLER, MEMORY CARD DRIVE DEVICE, AND COMPUTER PROGRAM}
본 발명은 호스트장치와 하나 이상의 메모리카드 사이의 데이터 전송을 제어하는 메모리카드 드라이브 장치에 관한 것으로, 특히 대용량 데이터의 전송을 제어하는 기술의 개량에 관한 것이다.
프로페셔널 용도의 영상기기분야에서는 대용량의 고품질 동화상 데이터에 대응할 필요가 있다. 그러므로 프로페셔널 용도의 영상기기에서 기록매체로 메모리카드를 사용하는 경우에는 복수의 메모리카드를 장착할 수 있는 메모리카드 드라이브 장치의 사용이 제안되어 있다. 복수의 메모리카드를 장착하여 메모리카드 어레이를 형성하는 기술에 대한 선행기술로는 일본국 공개특허 2002-189992호 공보에 개시된 것이 있다.
이하, 메모리카드로 SD 메모리카드(이하 「SD카드」라 한다)를 이용한 PC카드 형태의 메모리카드 드라이브 장치에 대해서 설명한다.
PC카드 형태의 메모리카드 드라이브 장치를 이용하는 경우, 영상기기(이하 「호스트장치」라 한다)와 메모리카드 드라이브 장치는 카드 버스를 통해서 접속되며, 호스트장치에서는 일반 PC카드에 대한 액세스와 동일한 순서로 ATA명령(ATA command)을 이용한 데이터의 기록 및 판독(이하 이를 「데이터 전송」이라 한다)이 요구된다. 통상, ATA명령에 의한 제어에서는 데이터 전송을 개시하는 선두 논리어드레스와 전송 섹터 수가 지시된다.
한편, SD카드에 대한 데이터의 전송지시에는 SD명령을 이용할 필요가 있다. SD명령에 의한 제어에서는 전송의 개시를 지시하는 SD명령(이하 「전송개시명령」이라 한다)이 발행되고 나서 전송의 종료를 지시하는 SD명령(이하 「전송종료명령」이라 한다)이 발행될 때까지의 기간에 계속해서 데이터 전송이 실행된다.
이와 같은 장치 사이의 인터페이스의 차이에 따라서, 메모리카드 드라이브 장치에서는 도 8에 도시한 것과 같이 SD카드의 동작을 제어할 필요가 있다.
도 8은 PC카드 형태의 메모리카드 드라이브 장치에 의해 메모리카드에서 데이터를 판독하는 데이터 판독동작의 일 예를 나타내는 타이밍 차트이다.
호스트장치에서는 (a)단에 도시한 A[1], A[2], A[3], A[4]의 타이밍에 메모리카드 드라이브 장치에 ATA명령이 발행된다. 이에 따라서 메모리카드 드라이브 장치에서는, (c)단에 도시한 바와 같이, ATA명령을 해석하여 S[1], S[2], S[3], S[4]의 타이밍에 전송개시명령과 판독 선두 논리어드레스를 SD카드에 어서트(assert) 한다.
전송개시명령을 수신한 SD카드에서는, (e)단에서 흑색으로 표시한 타이밍에 선두 논리어드레스를 물리어드레스로 변환하고, (f)단에 도시한 타이밍에 내부의 불휘발성 메모리에 기록되어 있는 데이터를 변환한 물리어드레스에서 판독하여 전송한다.
ATA명령에 의해 요구된 데이터량의 데이터가 SD로부터 전송되면, 메모리카드 드라이브 장치에서는 (c)단에서 흑색으로 표시한 타이밍에 SD카드에 대해서 전송종료명령을 발행하여 SD카드의 판독동작을 종료시키는 동시에, (b)단에 도시한 것과 같이, 호스트장치에 전송종료 인터럽트를 발행한다. 이에 의해 호스트장치와 SD카드 사이에서 동기 하여 데이터 전송동작을 실행할 수 있다.
이와 같이, 호스트장치에서 데이터의 전송을 요구하는 ATA명령이 발행될 때마다 메모리카드 드라이브 장치가 전송개시명령 및 전송종료명령의 SD명령을 적절한 타이밍에 발행하여 SD카드의 동작을 제어함으로써, 호스트장치에서는 메모리카드 드라이브 장치에 장착된 복수의 SD카드를 1매의 PC카드와 동일시하여 데이터를 전송할 수 있다.
그러나 메모리카드 드라이브 장치에서 ATA명령을 SD명령으로 변환하는 처리와 메모리카드에서 논리어드레스를 물리어드레스로 변환하는 처리는 ATA명령이 발행될 때마다 필요해지므로, SD카드에서 직접 데이터를 판독하는 경우에 비해 전송률을 감소시키는 오버헤드(overhead)가 되고 있다.
그런데 고품질의 동화상 데이터는 그 데이터량이 수백 메가바이트에서 수 기가바이트에 이르는 경우가 있다. 본래 SD명령을 이용한 제어에서는, 연속하는 영역에 기록되어 있는 대용량의 데이터를 판독하는 경우에는 대용량 데이터의 선두 어드레스를 지정하여 전송개시명령을 발행하고, 데이터의 종단까지 판독을 한 때에 전송종료명령을 발행하면 된다.
그러나 ATA명령을 이용한 제어에서는 1회에 전송할 수 있는 데이터가 최대 64 킬로바이트로 제한된다. 그러므로 이와 같은 대용량의 데이터를 SD카드에서 판독하려고 하면, 호스트장치는 몇백, 몇천 개의 ATA명령을 반복해서 발행하게 된다. 여기서, 복수의 ATA명령에서 메모리카드의 연속하는 영역에 대한 데이터 전송이 요구되어 있었다고 해도, 호스트장치와 메모리카드의 판독동작을 동기시키기 위해서, 메모리카드 드라이브 장치는 64 킬로바이트의 데이터가 판독될 때마다 메모리카드에서의 데이터 전송동작을 종료시킬 필요가 있다.
그 결과, 대용량 데이터의 판독에서는 SD카드에서 직접 데이터를 판독하는 경우에 비해서 전송률에서의 오버헤드의 영향이 현저해진다고 하는 문제가 있다. 특히, 복수의 메모리카드를 어레이로 하여 데이터 판독을 병렬로 하는 경우, 1개의 ATA명령에 따라서 각 메모리카드에서 판독되는 데이터 길이는 장착되는 메모리카드의 수가 많을수록 작아지므로, 오버헤드가 전송률에 미치는 영향은 더 커지게 된다.
본 발명은 판독 가능한 데이터의 길이가 짧은 명령을 이용하여 호스트장치에서 대용량 데이터를 판독하는 지시가 있는 경우에, 호스트장치와 메모리카드 사이의 동기를 취하면서, 오버헤드가 판독 전송률에 미치는 영향을 억제할 수 있는 메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 프로그램을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해, 본 발명의 메모리카드 컨트롤러는, 데이터량을 지정한 명령을 발행하여 데이터의 전송을 요구하는 호스트장치와 전송개시명령을 수신하고 나서 전송종료명령을 수신할 때까지 전송동작을 실행하는 메모리카드 사이의 데이터 전송을 제어하는 메모리카드 컨트롤러로, 상기 호스트장치로부터 순차로 명령을 수신하는 수신수단과, 전송동작의 실행에 의해 전송된 데이터량이 데이터 전송을 요구하는 n번째 명령에 의해 지정되는 데이터량에 달하면 상기 메모리카드가 데이터 전송을 일시정지하도록 하는 일시정지수단과, 메모리카드의 전송동작을 일시정지시킨 상태에 있을 때, 상기 n번째에 이어 수신된 후속 명령이 상기 n번째 명령이 요구하는 데이터 전송의 종료 어드레스의 다음 어드레스에 대한 데이터 전송을 요구하는 명령인 경우, 상기 메모리카드가 상기 일시정지된 전송동작을 재개하도록 하는 재개수단을 포함한다.
상기 구성에 의해 본 발명의 메모리카드 컨트롤러는, 연속하는 영역에 대한 데이터의 전송을 요구하는 명령이 호스트장치에서 계속해서 발행되는 경우에, 명령을 수신할 때마다 전송개시명령을 발행할 필요가 없으므로, 메모리카드 컨트롤러에서의 명령의 변환 및 메모리카드에서의 어드레스 변환 등의 오버헤드가 되는 처리를 감소시킬 수 있다. 한편, 선행 명령에 따른 데이터 전송이 완료하고 나서 호스트장치에서 후속 명령의 발행 처리가 이루어지고 있는 동안에는 메모리카드에서의 데이터 전송동작이 일시정지하고 있으므로, 호스트장치와 메모리카드의 데이터 전송동작의 동기가 상실되지 않는다.
즉, 호스트장치와 메모리카드의 동기를 취하면서, 오버헤드가 되는 처리가 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 데이터 전송은 메모리카드에서 데이터를 판독하는 것이고, 상기 메모리카드에서의 전송동작은 데이터 판독동작으로 해도 된다.
이에 의해, 메모리카드에서 데이터 판독시에, 호스트장치와 메모리카드의 동기를 취하면서, 메모리카드에 대한 전송개시명령의 발행 수를 줄일 수 있어서, 오버헤드가 판독 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 메모리카드에서의 데이터 판독동작의 일시정지 및 재개는 메모리카드에 공급하는 클록 신호의 공급정지 및 재공급에 의해 제어되는 것으로 해도 된다.
이에 의해, 메모리카드에서의 판독동작의 일시정지 및 재개를 고속으로 실현할 수 있게 된다. 따라서 판독동작의 일시정지 및 재개처리가 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 메모리카드 컨트롤러는 전송개시명령 및 전송종료명령의 발행에 의해 메모리카드에서의 데이터 판독동작의 개시 및 종료를 제어하는 명령발행수단을 더 포함하며, 여기서, 상기 일시정지시킨 상태에서 소정 시간 경과한 경우, 상기 재개수단은 클록 신호의 공급을 재개하여 일시정지상태를 해제시키고, 상기 명령발행수단은 전송종료명령을 발행하여 메모리카드에서의 데이터 판독동작을 종료시키는 것으로 해도 된다.
메모리카드의 연속하는 영역에 기록되어 있는 대용량 데이터를 판독하는 경우에는 호스트장치에서 빈번하게 명령이 발행될 것으로 생각된다. 여기서 호스트장치에서 명령이 발행되지 않는 상태가 소정 시간 이상 계속되면, 대용량 데이터의 판독이 종료된 것으로 가정하여, 일시정지시키고 있던 판독동작을 종료시킨다. 그 후, 선행하는 명령과 연속성이 없는 명령이 발행될 것이나, 판독동작을 종료시키고 있으므로, 이와 같은 명령을 신속하게 처리할 수 있다. 또, 판독동작을 일시정지시킨 상태가 소정 시간 이상으로 계속되는 일이 없고, 메모리카드의 동작이 안정된다.
또, 상기 후속 명령이 메모리카드에 액세스를 필요로 하지 않는 명령인 경우, 상기 일시정지수단은 상기 일시정지시킨 상태를 유지하는 것으로 해도 된다.
이에 의해, 다음 다음의 명령이 선행 명령에 따른 데이터 전송의 종료 어드레스와 연속되는 어드레스에 대한 데이터의 전송을 요구하는 명령인 경우에, 메모리카드에 대한 전송개시명령의 발행 수를 줄일 수 있으므로, 오버헤드가 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 메모리카드 컨트롤러는 전송개시명령 및 전송종료명령에 의해 메모리카드에서의 전송동작의 개시 및 종료를 제어하는 명령발행수단을 더 포함하며, 여기서, 상기 후속 명령이 데이터 기록, 및 상기 선행 명령에 따른 데이터 판독의 종료 어드레스와 연속되지 않는 어드레스에서의 데이터 판독 중 어느 하나를 요구하는 명령인 경우, 상기 재개수단은 클록 신호의 공급을 재개하여 일시정지상태를 해제시키고, 상기 명령발행수단은 전송종료명령을 발행하여 메모리카드에서의 데이터 판독동작을 종료시킨 후에, 상기 후속 명령에 따른 전송개시명령을 발행하는 것으로 해도 된다.
이에 의해, 선행 명령에 따른 데이터 전송의 종료 어드레스와 연속되는 어드레스에 대한 데이터의 전송을 요구하는 명령이 계속해서 발행되지 않는 경우에도 전송종료명령의 발행만으로 대처할 수 있으므로, 대폭적인 전송률의 저하를 일으키지 않는다.
또, 상기 데이터 전송은 메모리카드에 데이터를 기록하는 데이터 기록이고, 상기 메모리카드에서의 전송동작은 데이터 기록동작으로 해도 된다.
이에 의해, 메모리카드에 데이터 기록시에, 호스트장치와 메모리카드의 동기를 취하면서, 메모리카드에 대한 전송개시명령의 발행 수를 줄일 수 있으므로, 오버헤드가 기록의 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 메모리카드에서의 데이터 기록동작의 일시정지 및 재개는 메모리카드에 기록하는 기록데이터의 공급 일시정지 및 공급 재개에 의해 제어되는 것으로 해도 된다.
이에 의해, 메모리카드에서의 기록동작의 일시정지 및 재개를 고속으로 실현할 수 있게 된다. 따라서 기록동작의 일시정지 및 재개처리가 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 메모리카드 컨트롤러는 상기 일시정지시킨 상태에서 소정 시간 경과한 경우에 전송종료명령을 발행하여 메모리카드에서의 데이터 기록동작을 종료시키는 명령발행수단을 더 포함하는 것으로 해도 된다.
메모리카드의 연속하는 영역에 기록되어 있는 대용량 데이터를 기록하는 경우에는 호스트장치에서 빈번하게 명령이 발행될 것으로 생각된다. 여기서 호스트장치에서 명령이 발행되지 않는 상태가 소정 시간 이상 계속되면, 대용량 데이터의 기록이 종료된 것으로 가정하여, 일시정지시키고 있던 기록동작을 종료시킨다. 그 후, 선행하는 명령과 연속성이 없는 명령이 발행될 것이나, 기록동작을 일시정지시킨 상태를 종료시키고 있으므로, 이와 같은 명령을 신속하게 처리할 수 있다. 또, 판독동작을 일시정지시킨 상태가 소정 시간 이상으로 계속되는 일이 없고, 메모리카드의 동작이 안정된다.
또, 상기 후속 명령이 메모리카드에 액세스를 필요로 하지 않는 명령인 경우, 상기 일시정지수단은 상기 일시정지시킨 상태를 유지하는 것으로 해도 된다.
이에 의해, 다음 다음의 명령이 선행 명령에 따른 데이터 전송의 종료 어드레스와 연속되는 어드레스에 대한 데이터의 전송을 요구하는 명령인 경우에, 메모리카드에 대한 전송개시명령의 발행 수를 줄일 수 있으므로, 오버헤드가 전송률에 미치는 영향을 억제할 수 있다.
또, 상기 메모리카드 컨트롤러는, 상기 후속 명령이 데이터 판독, 및 상기 선행 명령에 따른 데이터 기록의 종료 어드레스와 연속되지 않는 어드레스에서의 데이터 판독 중 어느 하나를 요구하는 명령인 경우, 전송종료명령을 발행하여 메모리카드에서의 데이터 기록동작을 종료시킨 후에, 상기 후속 명령에 따른 전송개시명령을 발행하는 명령발행수단을 포함하는 것으로 해도 된다.
이에 의해, 선행 명령에 따른 데이터 전송의 종료 어드레스와 연속되는 어드레스에 대한 데이터의 전송을 요구하는 명령이 계속해서 발행되지 않는 경우에도 전송종료명령의 발행만으로 대처할 수 있으므로, 대폭적인 전송률의 저하를 일으키지 않는다.
상기 목적을 달성하기 위해, 본 발명의 메모리카드 드라이브 장치는, 상기 메모리카드 컨트롤러와, 호스트장치와 접속하는 제 1 인터페이스 수단과, 1매 이상의 메모리카드가 설치된 제 2 인터페이스 수단을 포함하며, 상기 메모리카드 컨트롤러는 제 1 인터페이스 수단에서 입력되는 명령에 의거하여 제 2 인터페이스 수단에 설치된 메모리카드에 액세스를 하는 메모리카드 드라이브 장치로 한다.
상기 구성에 의해서 본 발명의 메모리카드 드라이브 장치는, 연속하는 영역에 대한 데이터의 전송을 요구하는 명령이 호스트장치에서 계속해서 발행되는 경우에, 명령을 수신할 때마다 전송개시명령을 발행할 필요가 없으므로, 메모리카드 컨트롤러에서의 명령의 변환 및 메모리카드에서의 어드레스 변환 등의 오버헤드가 되는 처리를 감소시킬 수 있다. 한편, 선행 명령에 따른 데이터 전송이 완료하고 나서 호스트장치에서 후속 명령의 발행 처리가 이루어지고 있는 동안에는 메모리카드에서의 데이터 전송동작이 일시정지하고 있으므로, 호스트장치와 메모리카드의 데이터 전송동작의 동기가 상실되지 않는다.
즉, 호스트장치와 메모리카드의 동기를 취하면서, 오버헤드가 되는 처리가 전송률에 미치는 영향을 억제할 수 있다.
상기 목적을 달성하기 위해, 본 발명의 프로그램은, 데이터량을 지정한 명령을 발행하여 데이터 전송을 요구하는 호스트장치와 전송개시명령을 수신하고 나서 전송종료명령을 수신할 때까지 전송동작을 실행하는 메모리카드 사이의 데이터 전송을 제어하는 메모리카드 컨트롤러용 프로그램으로, 전송동작의 실행에 의해 전송된 데이터량이 데이터 전송을 요구하는 n번째 명령에 의해 지정된 데이터량에 달하면 메모리카드에서의 동작을 일시정지시키는 스텝과, 메모리카드의 전송동작을 일시정지시킨 상태에 있을 때, 상기 n번째 명령에 이어 수신한 명령이 상기 n번째 명령에 따른 데이터 전송의 종료 어드레스의 다음 어드레스에 대한 데이터 전송을 요구하는 경우, 상기 일시정지시킨 상태에서부터 메모리카드에서의 전송동작을 재개시키는 스텝을 메모리카드 컨트롤러의 프로세서가 실행하도록 제어하는 프로그램이다.
상기 구성에 의해 본 발명의 프로그램은, 연속하는 영역에 대한 데이터의 전송을 요구하는 명령이 호스트장치에서 계속해서 발행되는 경우에, 명령을 수신할 때마다 전송개시명령을 발행할 필요가 없으므로, 메모리카드 컨트롤러에서의 명령의 변환 및 메모리카드에서의 어드레스 변환 등의 오버헤드가 되는 처리를 감소시킬 수 있다. 한편, 선행 명령에 따른 데이터 전송이 완료하고 나서 호스트장치에서 후속 명령의 발행 처리가 이루어지고 있는 동안에는 메모리카드에서의 데이터 전송동작이 일시정지하고 있으므로, 호스트장치와 메모리카드의 데이터 전송동작의 동기가 상실되지 않는다.
즉, 호스트장치와 메모리카드의 동기를 취하면서, 오버헤드가 되는 처리가 전송률에 미치는 영향을 억제할 수 있다.
도 1은 본 발명의 메모리카드 드라이브 장치를 사용한 촬영재생시스템을 나타내는 도면이다.
도 2는 본 발명의 촬영재생시스템을 구성하는 각 장치의 내부 구성을 나타내는 도면이다.
도 3은 메모리카드 드라이브(200)의 상세를 나타내는 도면이다.
도 4는 본 실시 예의 메모리카드 컨트롤러에서의 처리순서를 나타내는 플로차트이다.
도 5는 메모리카드 드라이브(200)의 처리순서를 나타내는 도면이다.
도 6은 본 실시 예의 메모리카드 컨트롤러에 의한 판독동작의 일 예를 나타내는 타이밍 차트이다.
도 7은 본 실시 예의 변형 예의 메모리카드 컨트롤러에 의한 데이터의 전송제어의 처리순서를 나타내는 플로차트이다.
도 8은 종래의 메모리카드 컨트롤러의 동작 예를 나타내는 타이밍 차트이다.
이하, 본 발명의 메모리카드 드라이브 장치의 실시 예에 대해서 설명한다. 먼저, 본 발명의 메모리카드 드라이브 장치를 사용한 촬영재생시스템에 대해서 설명한다. 도 1은 본 발명의 메모리카드 드라이브 장치를 사용한 촬영재생시스템을 나타내는 도면이다. 도 1에 도시한 촬영재생시스템은 디지털 비디오테이프와 동등한 영상 품질 및 음성 품질로 촬영한 영상 및 음성을 동화상 데이터로 메모리카드에 기록하고 재생하는 시스템이다.
동화상 데이터의 촬영기능 및 표시기능을 갖는 호스트장치로는 PCMCIA 카드 슬롯을 갖는 퍼스널 컴퓨터나 비디오 카메라 등의 영상기기를 이용할 수 있다. 또, 메모리카드로는 SD카드를 이용한다.
도 1에서 본 발명의 메모리카드 드라이브 장치는 메모리카드 드라이브(200) 이다. 이 메모리카드 드라이브(200)는 SD카드를 장착할 수 있는 SD 슬롯을 4개 구비하고 있고, SD 슬롯에 SD카드(300a~300d)를 장착한 상태로 호스트장치(100a) 또는 호스트장치(100b)의 PCMCIA 카드 슬롯에 삽입되어 사용된다.
도 2는 본 발명의 촬영재생시스템을 구성하는 각 장치의 데이터 전송에 관한 내부 구성을 나타내는 도면이다. 호스트장치(100a)는 영상신호 입출력수단(101), 신호처리수단(102) 및 드라이브 제어수단(103)을 구비하며, 이들 구성에 의해 동화상 데이터의 기록 및 판독 등의 데이터 전송을 메모리카드 드라이브(200)에 요구한다. 여기에서는 호스트장치(100a)의 구성을 도시하고 있으나, 호스트장치(100b)도 동일한 구성을 구비한다.
영상신호 입출력수단(101)은 녹화 또는 재생 등의 동작상태에 따라서 호스트장치가 갖는 카메라 모듈 및 디스플레이 모듈과의 입출력을 제어한다. 신호처리수단(102)은 영상신호 입출력수단(101)에서 입력되는 영상신호를 압축 부호화하여 동화상 데이터를 생성하는 기능과, SD카드에서 판독된 동화상 데이터를 복원하여 영상신호를 생성하는 기능을 갖는 코덱이다. 드라이브 제어수단(103)은 ATA명령의 발행에 의해 메모리카드 드라이브(200)를 제어하는 기능을 가지며, 메모리카드 드라이브(200)의 외부 인터페이스(1)와 카드 버스 규격(card bus standard)에 의해 데이터를 송수신한다. 일반적으로, 데이터의 전송을 요구하는 ATA명령에는 기록 또는 판독 등의 동작을 지정하는 명령부분과 데이터 전송 처의 선두 섹터의 논리어드레스 및 전송할 섹터 수가 포함된다. 여기서, 호스트장치(100a, 100b)는 메모리카드 드라이브(200)에 장착된 4매의 SD카드를 하나의 가상 드라이브로 인식하고, 가상 드라이브 상의 논리어드레스를 이용하여 데이터 전송 처의 선두 섹터의 논리어드레스와 전송할 할 섹터 수를 정해서 ATA명령을 발행한다. 여기서 섹터 수는 SD카드상의 기록블록과 1대1로 대응한다. ATA명령은 본래 디스크 매체를 대상으로 한 명령이므로, 호스트장치(100a, 100b)는 섹터를 이용하여 데이터 전송 처 등의 지정을 표현하고 있다.
메모리카드 드라이브(200)는 외부 인터페이스(1) 및 메모리카드 컨트롤러(2)를 구비한다.
외부 인터페이스(1)는 카드 버스 규격에 의해 호스트장치의 드라이브 제어수단(103)과 데이터를 송수신하는 기능을 갖는다.
메모리카드 컨트롤러(2)는 호스트장치로부터의 ATA명령에 따라서 SD 슬롯에 장착된 SD카드(300a~300d)의 동작을 제어하는 기능을 갖는다. 메모리카드 컨트롤러(2)에 의한 SD카드(300a~300d)의 제어에는 SD명령이 이용된다. 데이터 전송의 개시시에는, 메모리카드 컨트롤러(2)는 ATA명령에 의해 제시되는 가상 드라이브의 논리어드레스를 각 SD카드의 논리어드레스로 변환하고, 변환한 논리어드레스와 함께 기록 또는 판독 등의 데이터 전송의 개시를 지시하는 SD명령을 SD카드에 발행한다. 기록개시를 지시한 경우에는, 그 후에 기록데이터를 순차 SD카드에 전송한다. 데이터 전송의 종료시에는, 메모리카드 컨트롤러(2)는 데이터 전송 종료를 지시하는 STOP 명령을 SD카드에 발행하고, 데이터 전송 완료를 나타내는 전송종료 인터럽트를 호스트장치에 어서트 한다.
메모리카드 컨트롤러(2)는 SD카드에 공급하는 클록 신호의 공급을 제어하는 기능도 가지며, 클록 신호의 공급을 정지함으로써 SD카드의 동작을 일시적으로 중단시키고, 클록 신호의 공급을 재개함으로써 일시적으로 중단하고 있던 SD카드의 동작을 재개시킬 수 있다.
또한, 메모리카드 컨트롤러(2)는 SD카드(300a~300d)를 스트라이핑(striping)에 의해 병렬로 동작시킴으로써 25Mbps 대역에서 데이터를 전송한다. 여기서 스트라이핑이란 기록할 데이터를 기록블록 단위로 분할하여 복수의 메모리카드에 병렬로 기록하는 것이다. 본 실시 예에서는 4매의 SD카드가 장착되어 있으므로 기록할 데이터는 4개로 분할된다.
구체적으로는, 메모리카드 컨트롤러(2)는 SD카드(300a~300d)를 0~3의 카드번호를 부여하여 관리하고 있고, 데이터 기록시에는, 기록할 섹터 번호를 4로 나눈 나머지를 기록카드 번호로 하여, 기록카드 번호를 사용하여 관리하고 있는 SD카드에 데이터를 기록하게 한다. 판독시에는, 섹터 번호를 4로 나눈 나머지를 판독카드 번호로 하여, 판독카드번호를 사용하여 관리하고 있는 SD카드에서 데이터를 판독하게 한다. 이와 같은 스트라이핑에 의해 SD카드(300a~300d)는 하나의 가상 드라이브를 구성한다. 이와 같은 스트라이핑에서는 데이터를 전송할 섹터 수가 장착된 메모리카드의 개수 이상이면 데이터 전송효율이 높아진다.
SD카드(300a~300d)는 재기록 가능한 불휘발성 메모리를 내장한 메모리카드이며, 클록 신호에 동기해서 불휘발성 메모리에 대한 데이터의 기록 및 재생을 한다. SD카드(300a~300d)의 동작은 메모리카드 드라이브(200)에서 발행되는 SD명령에 의해 제어된다.
메모리카드 컨트롤러(2)에서 기록개시명령이 발행되면, SD카드(300a~300d)는 불휘발성 메모리의 물리어드레스와 논리어드레스의 대응을 나타내는 상관테이블(correlation table)을 판독하여, SD명령과 함께 어서트 된 논리어드레스를 물리어드레스로 변환하고, 메모리카드 컨트롤러(2)를 통해서 전송되어 오는 데이터를 변환한 물리어드레스에서부터 기록해 간다. 기록동작시에 메모리카드 컨트롤러(2)에서 STOP 명령이 발행되면 SD카드(300a~300d)는 데이터의 기록동작을 종료하고, 기록결과에 따라서 상관테이블을 갱신한다.
메모리카드 컨트롤러(2)에서 판독개시명령이 발행되면, SD카드(300a~300d)는 불휘발성 메모리의 물리어드레스와 논리어드레스의 대응을 나타내는 상관테이블을 판독하여, SD명령과 함께 어서트 된 논리어드레스를 물리어드레스로 변환하고, 변환한 물리어드레스에서부터 불휘발성 메모리에 기록되어 있는 데이터를 판독하여 메모리카드 컨트롤러(2)에 전송한다. 판독동작시에 메모리카드 컨트롤러(2)에서 STOP 명령이 발행되면 SD카드(300a~300d)는 데이터의 판독동작을 종료한다. 이상이 본 발명의 메모리카드 드라이브 장치를 사용한 촬영재생시스템에 대한 설명이다.
다음에, 본 발명의 메모리카드 드라이브(200)의 내부 구성의 상세에 대해서 설명한다. 도 3은 메모리카드 드라이브(200)의 내부 구성의 상세를 나타내는 도면이다.
외부 인터페이스(1)는 내부에 PCI 타깃(PCI target, 3)과 PCI 버스 마스터(PCI bus master, 4)를 구비한다. PCI 타깃(3)은 호스트장치(100a, 100b)와의 ATA명령의 송수신을 담당하고, PCI 버스 마스터(4)는 호스트장치(100a, 100b)와의 사이에서 DMA(Direct Memory Access)전송에 의해 데이터를 송수신한다. 여기에서는 높은 전송률을 얻기 위해 DMA전송을 이용하고 있으나, 데이터의 송수신에는 다른 전송방식을 이용해도 좋다.
메모리카드 컨트롤러(2)는 명령 해석부(5), 명령 저장부(6), 명령 변환부(7) 및 데이터메모리(11)를 구비한다.
명령 해석부(5)는 PCI 타깃(3)에서 수신된 ATA명령을 해석하여 선두 섹터의 논리어드레스와 전송할 섹터 수를 명령에서 분리한다. 명령 저장부(6)는 과거에 수신된 ATA명령을 저장하여 일시 보유한다. 데이터 메모리(11)는 SD카드와 PCI 버스 마스터(4) 사이의 버퍼 메모리이다.
명령 변환부(7)는 내부에 연속성 체크부(8), 명령 개시/종료 제어부(9) 및 클록 개시/종료 제어부(10)를 구비한다. 명령 변환부(7)는 명령 해석부(5)에서 해석된 ATA명령에 대응하여 SD명령의 발행 및 SD카드에 공급하는 클록의 공급을 제어함으로써 SD카드 300a의 동작을 제어한다. 또한, 도 3에서는 도면이 복잡해지는 것을 피하기 위해서 SD카드 300a와의 인터페이스에 관한 구성만을 도시하고 있으나, 메모리카드 컨트롤러(2)는 실제로는 SD카드 300b~300d 각각에 대해서도 명령 변환부(7)와 동일한 구성을 구비하고 있고, 이들이 스트라이핑의 제어를 실현하고 있다.
연속성 체크부(8)는 연속한 섹터에 대한 데이터의 판독을 요구하는 ATA명령이 계속해서 발행되고 있는가 여부를 판정하여, 판정결과에 따라서 명령 개시/종료 제어부(9) 및 클록 개시/종료 제어부(10)가 SD카드 300a의 동작제어처리를 실행하 게 한다.
명령 개시/종료 제어부(9)는 ATA명령의 종류에 따라서 SD명령을 발행함으로써 SD카드 300a의 기록 및 판독동작을 개시하거나 또는 종료하도록 한다.
클록 개시/종료 제어부(10)는 판독동작중인 SD카드 300a에 공급되는 클록 신호의 공급을 정지하거나 또는 재개함으로써 SD카드 300a에서의 판독동작을 일시정지하거나 또는 재개하도록 한다. 여기서, 클록 개시/종료 제어부(10)가 클록 신호의 공급을 정지시키는 시기는 선행하는 ATA명령에 의해 요구된 데이터가 판독되고 나서 후속하는 ATA명령이 수신되기까지의 기간이다. 이상이 본 발명의 메모리카드 드라이브(200)의 내부 구성의 상세에 대한 설명이다.
이어서, 메모리카드 컨트롤러(2)에서의 처리의 상세에 대해서 도 4를 참조하면서 설명한다. 도 4는 메모리카드 컨트롤러(2)의 처리순서를 나타내는 플로차트이다.
메모리카드 컨트롤러(2)는, 전원 투입 후, 스텝 S 1 및 스텝 S 16으로 이루어지는 처리에서 PCI 타깃(3)에서 ATA명령의 수신을 대기하며, ATA명령이 수신되면(스텝 S 1 : YES) 스텝 S 2 이후의 처리를 실행한다.
스텝 S 2의 처리에서는, 명령 해석부(5)는 수신된 ATA명령을 해석하여 데이터 전송 처의 선두 섹터의 논리어드레스와 전송할 섹터 수를 취득한다. 이하에서는, 전원투입 후 I(I는 자연수)번째에 수신되는 ATA명령의 해석에 의해 얻어진 전송 처의 논리어드레스를 X[I], 전송할 섹터 수를 Y[I]로 표시한다.
스텝 S 3에서는 SD카드에 클록 신호가 공급되고 있는가 여부를 연속성 체크 부(8)가 판정한다.
스텝 S 3의 판정에서 SD카드에 클록 신호가 공급되고 있는 상태이면(스텝 S 3 : No), 명령 개시/종료 제어부(9)는 ATA명령에 의한 요구에 따라서 논리어드레스 X[I]에서부터 기록 또는 판독을 개시하는 명령인 SD명령을 SD카드에 발행한다(스텝 S 4).
스텝 S 4에서 발행된 SD명령이 기록개시명령이면(스텝 S 5 : No), SD카드에서는 명령에 따라서 기록동작이 개시되고, 메모리카드 컨트롤러(2)에서는 스텝 S 9 ~ 스텝 S 8의 처리에 의해 SD카드에서의 기록동작을 제어한다.
스텝 S 6 ~ 스텝 S 8의 처리에서는, 명령 개시/종료 제어부(9)가 기록동작중인 SD카드에 공급되는 기록데이터량을 감시하며, 공급한 데이터량이 ATA명령으로부터 얻은 섹터 수 Y[I]에 이르면(스텝 S 6 : YES) SD카드에 STOP 명령의 SD명령을 발행하여(스텝 S 7), SD명령에 따라서 SD카드에서 기록동작이 종료하며, 논리어드레스와 물리어드레스의 대응을 나타내는 상관테이블이 갱신되면 메모리카드 컨트롤러(2)는 호스트장치에 대해서 명령의 실행완료를 나타내는 인터럽트를 어서트 한다(스텝 S 8). 스텝 S 6 ~ 스텝 S 8의 처리의 실행 후에는 스텝 S 1 및 스텝 S 16으로 이루어지는 루프처리로 복귀한다.
스텝 S 4에서 발행된 SD명령이 판독개시명령이면(스텝 S 5 : Yes), SD카드에서는 명령에 따라서 판독동작이 개시되고, 메모리카드 컨트롤러(2)에서는 스텝 S 9 ~ 스텝 S 11의 처리에 의해서 SD카드에서의 판독동작을 제어한다.
스텝 S 9 ~ 스텝 S 11의 처리에서는, 클록 개시/종료 제어부(10)가 판독중인 SD카드에서 판독되어 전송되어 오는 데이터량을 감시하여, 판독된 데이터량이 ATA명령으로부터 얻어진 섹터 수 Y[I]에 이르면(스텝 S 9 : Yes), SD카드에 공급하는 클록 신호의 공급을 정지하는 동시에 전송 처의 논리어드레스 X[I]와 섹터 수 Y[I]의 합을 산출하여, 산출한 값을 연속개시 어드레스(consecutive start address) Z로 명령 저장부(6)에 기록한다(스텝 S 10). 여기서 기록된 연속개시 어드레스 Z의 값은 다시 스텝 S 10의 처리가 실행되어 새로운 값이 통지될 때까지는 명령 저장부(6)에서 유지된다. 또한, 연속개시 어드레스 Z를 산출하여 명령 저장부(6)에 기록하는 처리는 SD카드에서의 판독동작의 실행중, 즉, 판독된 데이터량이 섹터 수 Y[I]에 이르기 전에 실행하는 것으로 해도 좋다. 이에 의해, 전송률에 영향을 주지 않고 연속개시 어드레스 Z의 산출 및 기록처리를 할 수 있다.
클록 신호의 공급이 정지되고, SD카드가 판독동작을 실행하는 상태인 체로 일시정지하면, 메모리카드 컨트롤러(2)는 호스트장치에 대해서 명령의 실행완료를 나타내는 인터럽트를 어서트 한다(스텝 S 11). 스텝 S 9 ~ 스텝 S 11의 처리의 실행 후에는 스텝 S 1 및 스텝 S 16으로 이루어지는 루프처리로 복귀한다.
상기 스텝 S 9 ~ 스텝 S 11의 처리가 실행된 후에 새로운 ATA명령이 수신된 경우(스텝 S 1 : Yes)의 처리순서에서는, 스텝 S 10에서 SD카드에 공급하는 클록 신호의 공급이 정지되어 있으므로, 스텝 S 3의 판정 후에 스텝 S 12 ~ 스텝 S 15의 처리가 실행된다.
스텝 S 12의 처리에서는, 현재 처리중인 새로운 명령이 현재 일시정지상태에 있는 SD카드의 판독동작이 재개된 경우에 판독되는 데이터를 요구하는 판독명령인 가 여부를 판정하기 위해, 연속성 체크부(8)가 (1) 및 (2)의 조건을 동시에 만족하는가 여부를 판정한다.
(1) 현재 처리중인 새로운 명령이 판독을 요구하는 명령이다.
(2) 이전의 ATA명령에서 스텝 S 10이 실행된 때에 명령 저장부(6)에 기록된 연속개시 어드레스 Z와 현재 처리중인 ATA명령에 의거하여 스텝 S 2에서 취득된 전송 처의 논리어드레스 X[I]가 일치한다.
연속성 체크부(8)로부터 상기 (1) 및 (2)의 조건을 동시에 만족한다는 통지가 있으면(스텝 S 12 : Yes), 클록 개시/종료 제어부(10)는 SD카드에 대한 클록 신호의 공급을 재개한다(스텝 S 13). 클록 신호의 공급이 재개되면 SD카드에서는 일시정지하고 있던 판독동작이 재개된다. 이에 따라서, 메모리카드 컨트롤러(2)에서는 스텝 S 9 ~ 스텝 S 11의 처리에 의해 SD카드에서의 판독동작을 제어한다.
상기 (1) 및 (2)의 조건 중 적어도 하나를 만족하지 않는 경우(스텝 S 12 : No), 즉, 현재 처리중인 새로운 ATA명령이 현재 일시정지상태에 있는 SD카드의 판독동작이 재개된 경우에 판독되는 데이터를 요구하는 판독명령이 아닌 경우에는, 연속성 체크부(8)는 (3)의 조건을 만족하는가 여부를 판단한다(스텝 S 14).
(3) 현재 처리중인 ATA명령이 SD카드에 대한 메모리 액세스를 요하는 명령이다.
연속성 체크부(8)로부터 상기 (3)의 조건을 만족한다는 통지가 있으면(스텝 S 14 : Yes), 클록 개시/종료 제어부(10)는 SD카드에 공급하는 클록 신호의 공급을 재개하고, 명령 개시/종료 제어부(9)는 SD카드에 STOP 명령의 SD명령을 발행한다 (스텝 S 15). 스텝 S 15의 처리의 실행에 따라서 SD카드에서 일시정지하고 있던 판독동작이 종료하면, 메모리카드 컨트롤러(2)에서는 스텝 S 4 이후의 처리가 순서대로 실행된다.
상기 (3)의 조건을 만족하지 않는 경우(스텝 S 14 : No)에는, 메모리카드 컨트롤러(2)에서는 SD카드에 공급하는 클록 신호의 공급을 정지한 상태를 유지하면서, SD카드에 대한 메모리 액세스가 발생하지 않는 ATA명령에 의해 요구된 처리를 실행하고 나서, 스텝 S 11의 처리에서 명령의 실행 완료를 나타내는 인터럽트를 호스트장치에 어서트 하며, 그 후, 스텝 S 1 및 스텝 S 16으로 이루어지는 루프처리에서 다시 다음 ATA명령의 수신을 기다린다.
또한, SD카드에 대한 액세스를 필요로 하지 않는 ATA명령으로는, 구체적으로는 IDENTIFY-DEVICE 명령 등이 있다.
이상의 처리의 흐름 중 스텝 S 11의 처리에서 호스트장치에 명령의 실행완료를 나타내는 인터럽트를 어서트 하는 처리의 흐름에서는, SD카드에 공급하는 클록 신호의 공급을 정지한 상태에서 스텝 S 1 및 스텝 S 16으로 이루어지는 루프처리로 처리를 이행한다. 이 클록 신호의 공급을 정지한 상태에서 소정 시간(예를 들어 1초) 동안 다음의 ATA명령이 수신되지 않은 경우(스텝 S 16 : Yes)에는, 클록 개시/종료 제어부(10)가 SD카드에 공급하는 클록 신호의 공급을 재개하고, 이어서, 명령 개시/종료 제어부(9)가 SD카드에 STOP 명령의 SD명령을 발행(스텝 S 17)함으로써, SD카드에서 일시정지하고 있던 판독동작을 종료시킨다.
이상이 메모리카드 컨트롤러(2)에서의 처리의 상세에 대한 설명이다. 앞에서 설명한 메모리카드 컨트롤러(2)의 처리순서는 전용 하드웨어에 의한 실장, 혹은 당해 처리순서를 컴퓨터 기술언어로 기술한 마이크로 프로세서가 실행하도록 함으로써 실현할 수 있다.
이어서, 앞에서 설명한 것과 같이 구성된 메모리카드 드라이브(200)의 동작의 예를 도 5 및 도 6을 참조하면서 설명한다. 도 5는 메모리카드 드라이브(200)의 처리순서를 나타내는 도면이고, 도 6은 판독동작의 상세를 나타내는 타이밍 차트이다.
도 5 및 도 6에서, A[k](k는 자연수)는 메모리카드 드라이브(200)의 전원투입 후 k번째로 수신되는 ATA명령을 나타내고, DAT[k]는 k번째의 ATA명령에 동기 한 데이터 전송을 나타내며, S[k]는 k번째의 ATA명령에 대응하여 SD카드에 발행되는 SD명령을 나타낸다.
또, 도 6에서, (a)단은 호스트장치로부터 발행되는 ATA명령의 발행처리의 타이밍을 나타내고, (b)단은 ATA명령에 대응한 전송이 완료되었다는 것을 나타내는 인터럽트의 발생 타이밍을 나타내며, (c)단은 메모리카드 드라이브(200)에서의 SD명령의 발행처리의 타이밍을 나타내고, (d)단은 SD카드에 공급하는 클록 신호의 공급형태를 나타내며, (e)단은 논리어드레스에서 물리어드레스로 변환하는 등의, SD카드의 내부 처리의 동작 타이밍을 나타내고, (f)단은 데이터가 전송되는 타이밍을 나타내고 있다.
여기서, A[1] ~ A[4]의 4개의 ATA명령은 어느 것이나 데이터의 판독을 요구하는 ATA명령이나, A[1] ~ A[3]에 의해 판독만 요구되는 데이터는 일련의 동화상 데이터이며, SD카드에서 논리어드레스가 연속되는 기록영역에 기록되어 있다. 그러므로 A[2] 및 A[3] 명령에서는 판독개시 섹터의 번호가 각각 직전의 ATA명령(즉, A[1] 및A[2])에 의한 판독의 종료 섹터의 번호와 연속하고 있다. 한편, A[4]의 ATA명령은 A[1] ~ A[3]와는 관련이 없는 데이터의 판독을 요구하는 명령이며, A[4]의 판독개시 섹터의 번호는 A[3]에 의한 판독의 종료 섹터의 번호와 연속하고 있지 않다.
먼저, 호스트장치에 의해 발행된 A[1]의 ATA명령에 따른 일련의 동작에 대해서 설명한다. A[1]은 리드 명령과 개시 어드레스 및 판독 섹터 수로 구성되어 있으며, A[1]을 수신한 메모리카드 드라이브(200)는 A[1]을 해석하여 판독개시명령과 개시 어드레스로 이루어지는 S[1]을 SD카드에 발행한다. S[1]을 수신한 SD카드는 논리어드레스에서 물리어드레스로의 변환 등의 내부 처리를 한 후에 DAT[1]의 데이터 전송을 실행한다. DAT[1]의 데이터 전송이 시작되면 메모리카드 드라이브(200)는 클록 개시/종료 제어부(10)에 의해 전송 데이터량을 감시하고, DAT[1]의 전송 데이터량이 A[1]로부터 얻어진 판독 섹터 수에 이르면, SD카드에 공급하는 클록 신호의 공급을 정지하고 호스트장치에 인터럽트를 어서트 한다. 또, 이때 클록 개시/종료 제어부(10)에서는 A[1]의 개시 섹터 번호와 판독 섹터 수의 합계가 산출되어 명령 저장부(6)에 기록된다. 이상의 일련의 순서에 의해, 호스트장치 측에서는 A[1]에 따른 판독이 완료되고, SD카드 측에서는 클록 신호의 공급의 정지에 의해 판독이 일시정지된 상태를 유지하게 되어, 그 이상의 데이터가 판독되지 않게 된다. 이에 의해, 호스트장치와 SD카드 사이에서 데이터 전송의 동기가 유지된다.
다음에, 인터럽트의 발생에 의해 A[1]에 따른 DAT[1]의 전송완료를 검지한 호스트장치는 A[2]를 발행한다. A[2]를 수신한 메모리카드 드라이브(200)는 명령 해석부(5) 및 연속성 체크부(8)에서 A[2]를 해석하여 A[1]과 A[2]의 연속성을 확인한다. 여기서 말하는 연속성의 확인은, A[2]가 리드 명령이고, 또한, A[2]의 개시 섹터 번호가 명령 저장부(6)에 기록되어 있는 A[1]의 개시 섹터 번호와 판독 섹터 수의 합계와 같다는 것을 확인함으로써 이루어진다. 메모리카드 드라이브(200)는 연속성을 확인한 후에 클록 개시/종료 제어부(10)에 의해 SD카드에 공급하는 클록 신호의 공급을 재개한다. 클록 신호의 공급이 재개되면, SD카드에서는 일시정지하고 있던 판독동작이 재개되며, 이에 의해 발생하는 데이터의 전송이 A[2]에 대응한 데이터 전송 DAT[2]가 된다. DAT[2]의 데이터 전송이 시작되면, 메모리카드 드라이브(200)는 클록 개시/종료 제어부(10)에 의해 전송 데이터량을 감시하고, 전송 데이터량이 A[2]로부터 얻어진 판독 섹터 수에 이르면 S카드에 공급하는 클록 신호의 공급을 정지하고 호스트장치에 인터럽트를 어서트 한다. 또, 이때 클록 개시/종료 제어부(10)에서는 A[2]의 개시 어드레스와 판독 섹터 수의 합계가 기록된다. 이상의 일련의 순서에 의해, 호스트장치에서는 A[2]에 따른 판독이 완료되고, SD카드 측에서는 판독동작이 다시 일시정지한 상태가 되어, 그 이상의 데이터의 판독이 이루어지지 않는다.
그 후, A[2]에 따른 DAT[2]의 전송처리의 완료가 검출된 호스트장치에서는 A[3]가 발행되며, 이후, 호스트장치, 메모리카드 드라이브(200) 및 SD카드 사이에서 A[2]에 따른 순서와 동일한 순서로 처리가 이루어진다. 그 결과, 명령 저장 부(6)에서는 A[3]의 개시어드레스와 판독 섹터 수의 합계가 기록된 상태가 되고, SD카드에서는 판독동작이 일시정지한 상태가 되며, 호스트장치에서는 A[3]에 따른 인터럽트가 발생한 상태가 된다.
이와 같은 상태에서 인터럽트의 발생에 의해 A[3]에 따른 DAT[3]의 전송의 완료가 검출된 호스트장치는 그 다음에 A[4]를 발행한다. A[4]를 수신한 메모리카드 드라이브(200)는 명령 해석부(5) 및 연속성 체크부(8)에서 A[4]를 해석하여 A[3]과 A[4]의 연속성을 확인한다. 그러나 A[4]는 리드 명령이기는 하나, A[4]의 개시 섹터 번호가 명령 저장부(6)에 기록되어 있는 A[3]의 개시 섹터 번호와 판독 섹터 수의 합계와 같지 않으므로, A[3]와 A[4]의 연속성은 확인되지 않는다. 그래서 메모리카드 드라이브(200)는 SD카드에 공급하는 클록 신호의 공급을 재개하는 동시에 STOP 명령을 발행한다. 이에 의해, SD카드에서는 일시정지하고 있던 판독동작이 종료한다. 그 후, 메모리카드 드라이브(200)는 판독개시명령과 개시 어드레스로 이루어지는 S[4]를 SD카드에 발행한다. S[4]를 수신한 SD카드는 논리어드레스에서 물리어드레스로의 변환 등의 내부 처리를 실행한 후에 DAT[4]의 데이터 전송을 실행한다. DAT[4]의 데이터 전송이 시작되면, 메모리카드 드라이브(200)는 클록 개시/종료 제어부(10)에 의해 전송 데이터량을 감시하여, DAT[4]의 전송 데이터량이 A[4]로부터 얻어진 판독 섹터 수에 이르면 SD카드에 공급하는 클록 신호의 공급을 정지하고, 호스트장치에 인터럽트를 어서트 한다. 또, 이때 클록 개시/종료 제어부(10)에서는 A[4]의 개시 섹터 번호와 판독 섹터 수의 합계를 산출하고, 명령 저장부(6)의 기록을 갱신한다. 이상의 일련의 순서에 의해, 호스트장치 측에서는 A[4]에 따른 판독이 완료되고, SD카드 측에서는 판독동작이 일시정지한 상태가 되며, 그 이상의 데이터가 판독되지 않게 된다.
본 동작 예에서는 호스트장치는 A[4] 이후에 새로운 ATA명령을 발행하지 않는다. 메모리카드 드라이브(200)에서는 SD카드에 공급하는 클록 신호의 공급을 정지한 후에 시간의 경과를 카운트하고 있으나, 다음의 ATA명령이 수신되지 않으므로, 소정 시간이 경과하면 SD카드에 공급하는 클록 신호의 공급을 재개하는 동시에 STOP명령을 발행한다. 이에 의해 SD카드에서는 클록 신호가 공급되고 있고, SD명령의 수신을 대기하는 상태가 된다. 이상이 메모리카드 드라이브(200)의 동작에 대한 설명이다.
앞에서 설명한 동작 예에서는 A[1] 및 A[4]에 따른 일련의 순서로 메모리카드 드라이브(200)에서의 SD명령의 발행처리 및 SD카드 내부에서의 어드레스 변환처리라고 하는 데이터 전송의 오버헤드가 되는 처리가 발생하고 있다. 그러나 A[2] 및 A[3]에 따른 일련의 순서에서는 이들 오버헤드가 되는 처리가 발생하지 않는다.
여기서, 메모리카드 드라이브(200)에서의 SD명령의 발행처리 및 SD카드 내부에서의 어드레스 변환처리의 실행에 요하는 시간을 u라고 하고, DAT[1] ~ DAT[4] 각각에서 나타나는 데이터의 전송에 요하는 시간을 t라고 하면, A[1]의 발행 후에서부터 A[1]에 대응하는 인터럽트의 발생까지의 일련의 처리에 걸리는 시간은 (u+t)가 된다. 이에 대해, A[2] 및 A[3]에서는 이들의 발행 후에서부터 대응하는 인터럽트가 발생할 때까지의 일련의 처리에 걸리는 시간은 t만이 된다.
따라서 A[1] ~ A[3]에 대응하는 일련의 처리에서는 도 8에 도시한 종래의 동 작에 비해 2u만큼 단축되고 있다.
특히, 도 1에 도시하는 바와 같이 복수의 SD카드를 장착하는 경우에는, 하나의 ATA명령에 의해서 1매의 SD카드에서 판독되는 섹터 수는 스트라이핑에 의해 장착된 SD카드의 수에 반비례하여 적어지므로, 데이터의 전송에 요하는 시간 t의 값도 동일하게 작아진다. 그 결과, 장착되는 SD카드의 수에 관계없이 일정한 값이 되는 u와 장착되는 SD카드의 수에 반비례하여 작아지는 t와의 차가 작아진다. 여기서 t=u가 되는 SD카드의 장착 수를 예로 하여 설명하면, A[1] ~ A[3]에 대응하는 일련의 처리에는 도 8에 도시하는 종래의 동작에서는 6u의 시간이 필요하게 되나, 본 실시 예에서는 4u의 시간으로 완료한다. 이를 전송률로 비교하면 6u/4u가 되며, 본 실시 예의 메모리카드 드라이브(200)는 종래 예에 비해서 전송률이 50% 향상된다는 것을 알 수 있다.
본 실시 예의 이와 같은 전송률의 향상은, A[2]와 A[3]과 같이, 판독개시 섹터가 선행하는 ATA명령의 판독종료 섹터와 연속되는 ATA명령이 다수 연속될수록 더 높은 효율을 얻을 수 있다. 예를 들어, 8개의 ATA명령에서 판독개시 섹터가 선행하는 ATA명령의 판독종료 섹터와 연속되는 경우에는 t=u가 되는 SD카드의 장착 개수가 되며, 종래 예에 비해 전송률이 78% 향상된다.
이상과 같이 본 실시 예에서는, 논리어드레스가 연속하는 기록영역에 기록되어 있는 일련의 동화상 데이터를 SD카드에서 판독할 때에, 동화상 데이터의 사이즈가 하나의 ATA명령에 따라서 판독을 할 수 있는 64k바이트를 넘으면, 호스트장치에서는 복수의 ATA명령에 의해 분할하여 동화상 데이터의 판독을 요구한다. 그러나 메모리카드 컨트롤러가 SD카드에 공급하는 클록 신호의 공급을 제어함으로써, SD카드에서는 연속한 1회의 판독동작으로 처리된다.
이에 의해, ATA명령에서 SD명령으로 변환하는 변환처리 및 논리어드레스에서 물리어드레스로 변환하는 변환처리라는 오버헤드가 되는 처리에 의해 판독률에 미치는 영향을 억제하여, 판독률의 향상을 도모할 수 있다.
또, 본 실시 예에서는 연속영역에 기록되어 있는 대용량 데이터의 판독이, 호스트장치에서는 복수의 ATA명령에 따른 복수의 판독동작으로 분할하여 처리되고, SD카드에서는 전송개시명령 및 STOP명령의 세트에 의해 연속적인 판독동작으로 처리된다. 그러나 호스트장치에서 데이터 전송이 이루어지지 않는 기간에는 SD카드에서 판독동작이 일시정지하므로, 호스트장치와 SD카드 사이의 판독동작의 동기는 상실되지 않는다.
또한, 본 실시 예에서는 SD카드의 판독동작시에 전송률을 향상시키는 구성에 대해서 설명하였으나, 본 발명은 SD카드의 기록동작의 제어에 대해서도 동일하게 적용할 수 있다.
이하, 기록 및 판독의 양방의 전송률을 향상시키는 변형 예에 대해서 설명한다. 도 7은 본 실시 예의 변형 예의 메모리카드 컨트롤러에 의한 데이터의 전송제어의 처리순서를 나타내는 플로차트이다. 본 도면에 도시하는 플로차트에서는 도 4에 도시한 플로차트에 비해서 스텝 S 18이 추가되고, 기록처리에 관한 스텝 S 6 ~ 스텝 S 8의 처리순서가 삭제되며, 또, 스텝 S 12의 판정이 스텝 S 19의 판정으로 변경되어 있는 점에 특징이 있다.
그러므로 SD카드에 클록 신호를 공급하고 있는 상태에서 ATA명령이 수신된 때에 스텝 S 19에서 판정되는 연속성의 확인조건이 다음의 (A) 및 (B)로 변경되며, 이들 조건을 동시에 만족하는 경우에 스텝 S 13의 처리의 흐름이 실행된다.
(A) 현재 처리중인 새로운 ATA명령의 종류가 명령 저장부(6)에 기록되어 있는 이전에 처리된 ATA명령의 종류와 일치한다.
(B) 이전의 ATA명령의 처리에서 스텝 S 10이 실행된 때에 명령 저장부(6)에 기록된 연속개시 어드레스 Z와 현재 처리중인 새로운 ATA명령에 의거하여 스텝 S 2에서 취득된 전송 처의 논리어드레스 X[I]가 일치한다.
이에 의해 본 변형 예에서는 기록 또는 판독의 어느 처리라도 연속하는 섹터에 대한 동일한 종류의 ATA명령이 계속해서 발행되면, 기록 또는 판독의 어느 경우에도 전송률을 향상시킬 수 있다.
<기타 변형 예>
본 발명을 상기 실시 예에 의거하여 설명하였으나, 본 발명은 상기 실시 예로 한정되는 것은 물론 아니다. 이하와 같은 경우도 본 발명에 포함된다.
(1) 본 발명은 상기에서 설명한 방법으로 해도 된다. 또, 이들 방법을 컴퓨터에 의해 실현하는 컴퓨터 프로그램으로 해도 되고, 상기 컴퓨터 프로그램으로 이루어지는 디지털 신호로 해도 된다.
또, 본 발명은 상기 컴퓨터 프로그램 또는 상기 디지털 신호를 컴퓨터 판독 가능한 기록매체, 예를 들어 플렉시블 디스크, 하드디스크, CD-ROM, MO, DVD, DVD-ROM, DVD-RAM, BD(Blu-Ray Disc), 반도체 메모리 등에 기록한 것으로 해도 된다. 또, 이들 기록매체에 기록되어 있는 상기 컴퓨터 프로그램 또는 상기 디지털 신호로 해도 된다.
또, 본 발명은 상기 컴퓨터 프로그램 또는 상기 디지털 신호를 전기통신회선 또는 유선통신회선, 인터넷을 대표로 하는 네트워크 등을 경유하여 전송하는 것으로 해도 된다.
또, 본 발명은 마이크로 프로세서와 메모리를 구비한 컴퓨터 시스템으로, 상기 메모리는 상기 컴퓨터 프로그램을 기억하고 있고, 상기 마이크로 프로세서가 상기 컴퓨터 프로그램에 따라서 동작하는 것으로 해도 된다.
또, 상기 컴퓨터 프로그램 또는 상기 디지털 신호를 상기 기록매체에 기록하여 이송함으로써, 또는 상기 컴퓨터 프로그램 또는 상기 디지털 신호를 상기 네트워크 등을 경유하여 이송함으로써, 독립된 다른 컴퓨터 시스템에 의해 실시하는 것으로 해도 된다.
(2) 상기 실시 예에서는 SD카드를 메모리카드로 이용하는 메모리카드 드라이브 장치에 대해서 설명하였다. 그러나 본 발명은 호스트장치에서 발행되는 명령과 다른 사양의 명령이 필요한 메모리카드라면 어떤 메모리카드를 사용해도 상기 실시 예와 동일한 효과를 얻을 수 있음은 물론이다.
(3) 상기 실시 예에서는, SD카드에 공급하는 클록 신호의 공급을 정지하고 나서부터 시간을 카운트하여, 소정 시간이 경과한 후에, 타임아웃 처리로서 SD카드의 데이터 전송동작을 정지시키는 것으로 하였으나, 타임아웃 처리의 실행은 최후에 처리한 ATA명령을 수신하고 나서 소정 시간 경과 후에 실행하는 것으로 해도 된 다.
(상기 실시 예에서는 호스트장치와 카드 버스를 통해서 접속하는 것으로 하였으나, PCI버스나 SCSI를 통해서 호스트장치와 접속하는 것으로 해도 된다.
(5) 상기 실시 예의 변형 예에서는, 기록동작에 대해서도 SD카드에 공급하는 클록 신호의 공급을 정지시켜서 일시정지시키는 구성에 대해서 설명을 하였으나, 기록동작의 일시정지는 SD카드로부터의 기록데이터의 공급을 정지하는 방법에 의해서도 실현할 수 있다.
(6) 상기 실시 예 및 상기 변형 예를 각각 조합시켜도 된다.
본 발명은 SD카드에 전송하는 데이터의 전송을 제어하는 PC카드 형태의 메모리카드 드라이브 장치 등에 적용할 수 있다.

Claims (13)

  1. 데이터량을 지정한 명령을 발행하여 데이터의 전송을 요구하는 호스트장치와 전송개시명령을 수신하고 나서 전송종료명령을 수신할 때까지 전송동작을 실행하는 메모리카드 사이의 데이터 전송을 제어하는 메모리카드 컨트롤러로,
    상기 호스트장치로부터 순차로 명령을 수신하는 수신수단과,
    전송동작의 실행에 의해 전송된 데이터량이 데이터 전송을 요구하는 n번째 명령에 의해 지정된 데이터량에 달하면 상기 메모리카드가 데이터 전송을 일시정지하도록 하는 일시정지수단과,
    메모리카드의 전송동작을 일시정지시킨 상태에 있을 때, 상기 n번째에 이어 수신된 후속 명령이 상기 n번째 명령에 따른 데이터 전송의 종료 어드레스의 다음 어드레스에 대한 데이터 전송을 요구하는 명령인 경우, 상기 메모리카드가 상기 일시정지된 전송동작을 재개하도록 하는 재개수단을 포함하는 메모리카드 컨트롤러.
  2. 청구항 1에 있어서,
    상기 데이터 전송은 메모리카드에서 데이터를 판독하는 것이고,
    상기 메모리카드에서의 전송동작은 데이터 판독동작인 메모리카드 컨트롤러.
  3. 청구항 2에 있어서,
    상기 메모리카드에서의 데이터 판독동작의 일시정지 및 재개는 메모리카드에 공급하는 클록 신호의 공급 일시정지 및 공급 재개에 의해 제어되는 메모리카드 컨트롤러.
  4. 청구항 3에 있어서,
    상기 메모리카드 컨트롤러는 전송개시명령 및 전송종료명령의 발행에 의해 메모리카드에서의 데이터 판독동작의 개시 및 종료를 제어하는 명령발행수단을 더 포함하며,
    여기서, 상기 데이터 판독동작을 일시정지시킨 상태에서 기설정된 시간이 경과한 경우, 상기 재개수단은 클록 신호의 공급을 재개하여 일시정지상태를 해제시키고, 상기 명령발행수단은 전송종료명령을 발행하여 메모리카드에서의 데이터 판독동작을 종료시키는 메모리카드 컨트롤러.
  5. 청구항 3에 있어서,
    상기 후속 명령이 메모리카드에 액세스를 필요로 하지 않는 명령인 경우, 상기 일시정지수단은 상기 데이터 판독동작을 일시정지시킨 상태를 유지하는 메모리카드 컨트롤러.
  6. 청구항 3에 있어서,
    상기 메모리카드 컨트롤러는 전송개시명령 및 전송종료명령에 의해 메모리카드에서의 데이터 판독동작의 개시 및 종료를 제어하는 명령발행수단을 더 포함하 며,
    여기서, 상기 후속 명령이 데이터 기록, 및 상기 n번째 명령이 요구하는 데이터 판독의 종료 어드레스와 연속되지 않는 어드레스에서의 데이터 판독 중 어느 하나를 요구하는 명령인 경우, 상기 재개수단은 클록 신호의 공급을 재개하여 데이터 판독동작의 일시정지상태를 해제시키고, 상기 명령발행수단은, 전송종료명령을 발행하여 메모리카드에서의 데이터 판독동작을 종료시킨 후, 상기 후속 명령에 따른 전송개시명령을 발행하는 메모리카드 컨트롤러.
  7. 청구항 1에 있어서,
    상기 데이터 전송은 메모리카드에 데이터를 기록하는 데이터 기록이고,
    상기 메모리카드에서의 전송동작은 데이터 기록동작인 메모리카드 컨트롤러.
  8. 청구항 7에 있어서,
    상기 메모리카드에서의 데이터 기록동작의 일시정지 및 재개는 메모리카드에 기록하는 기록데이터의 공급 일시정지 및 공급 재개에 의해 제어되는 메모리카드 컨트롤러.
  9. 청구항 8에 있어서,
    상기 메모리카드 컨트롤러는, 데이터 기록동작을 상기 일시정지시킨 상태에서 기설정된 시간을 경과한 경우, 전송종료명령을 발행하여 메모리카드에서의 데이 터 기록동작을 종료시키는 명령발행수단을 더 포함하는 메모리카드 컨트롤러.
  10. 청구항 8에 있어서,
    상기 후속 명령이 메모리카드에 액세스를 필요로 하지 않는 명령인 경우, 상기 일시정지수단은 상기 데이터 기록동작을 일시정지시킨 상태를 유지하는 메모리카드 컨트롤러.
  11. 청구항 8에 있어서,
    상기 메모리카드 컨트롤러는, 상기 후속 명령이 데이터 판독, 및 상기 n번째 명령이 요구하는 데이터 기록의 종료 어드레스와 연속되지 않는 어드레스에 데이터를 기록하는 데이터 기록 중 어느 하나를 요구하는 명령인 경우, 전송종료명령을 발행하여 메모리카드에서의 데이터 기록동작을 종료시킨 후에, 상기 후속 명령에 따른 전송개시명령을 발행하는 명령발행수단을 포함하는 메모리카드 컨트롤러.
  12. 청구항 1에 기재된 메모리카드 컨트롤러와,
    호스트장치와 접속하는 제 1 인터페이스 수단과,
    1매 이상의 메모리카드가 설치된 제 2 인터페이스 수단을 포함하며,
    상기 메모리카드 컨트롤러는 제 1 인터페이스 수단에서 입력되는 명령에 의거하여 제 2 인터페이스 수단에 설치된 메모리카드에 액세스를 하는 메모리카드 드라이브 장치.
  13. 데이터량을 지정한 명령을 발행하여 데이터 전송을 요구하는 호스트장치와 전송개시명령을 수신하고 나서 전송종료명령을 수신할 때까지 전송동작을 실행하는 메모리카드 사이의 데이터 전송을 제어하는 메모리카드 컨트롤러용 프로그램으로,
    전송동작의 실행에 의해 전송된 데이터량이 데이터 전송을 요구하는 n번째 명령에 의해 지정된 데이터량에 달하면 메모리카드에서의 동작을 일시정지시키는 스텝과,
    메모리카드의 전송동작을 일시정지시킨 상태에 있을 때, 상기 n번째 명령에 이어 수신한 명령이 상기 n번째 명령에 따른 데이터 전송의 종료 어드레스의 다음 어드레스에 대한 데이터 전송을 요구하는 경우, 상기 일시정지시킨 상태에서부터 메모리카드에서의 전송동작을 재개시키는 스텝을 메모리카드 컨트롤러의 프로세서가 실행하도록 제어하는 메모리카드 컨트롤러용 프로그램.
KR1020077006691A 2004-10-01 2005-09-29 메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 기록매체 Expired - Lifetime KR100897463B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2004-00289751 2004-10-01
JP2004289751 2004-10-01

Publications (2)

Publication Number Publication Date
KR20070052325A true KR20070052325A (ko) 2007-05-21
KR100897463B1 KR100897463B1 (ko) 2009-05-14

Family

ID=35414960

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077006691A Expired - Lifetime KR100897463B1 (ko) 2004-10-01 2005-09-29 메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 기록매체

Country Status (6)

Country Link
US (1) US7657687B2 (ko)
EP (1) EP1794681B1 (ko)
KR (1) KR100897463B1 (ko)
CN (1) CN100524273C (ko)
DE (1) DE602005009845D1 (ko)
WO (1) WO2006038663A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527185B1 (ko) * 2008-02-29 2015-06-08 삼성전자 주식회사 수동 rfid의 대용량 데이터 전송 방법 및 시스템

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156272B2 (en) * 2006-09-01 2012-04-10 Spansion Llc Multiple communication channels on MMC or SD CMD line
ITMI20070997A1 (it) * 2007-05-17 2008-11-18 Incard Sa Ic card con clock a bassa precisione
JP2008287600A (ja) * 2007-05-18 2008-11-27 Seiko Epson Corp ホスト装置、情報処理装置、電子機器、プログラム及びリード制御方法
US8019923B2 (en) * 2008-12-01 2011-09-13 Sandisk Il Ltd. Memory card adapter
US20110059628A1 (en) * 2009-09-04 2011-03-10 Solid State System Co., Ltd. Secure digital card with two micro-sd cards in striping data access
WO2012117500A1 (ja) * 2011-02-28 2012-09-07 三菱電機株式会社 通信装置
JP5887568B2 (ja) * 2011-06-23 2016-03-16 パナソニックIpマネジメント株式会社 メモリカードコントローラ、メモリカードアダプタおよびメモリカードドライブ
TWM427624U (en) * 2011-08-26 2012-04-21 Power Quotient Int Co Ltd Storage device with communication function and expandable capacity
US20130191569A1 (en) * 2012-01-25 2013-07-25 Qualcomm Incorporated Multi-lane high-speed interfaces for high speed synchronous serial interface (hsi), and related systems and methods
WO2014024350A1 (ja) * 2012-08-07 2014-02-13 パナソニック株式会社 記録装置、アクセス装置、記録システム、及び記録方法
KR102143522B1 (ko) 2013-10-15 2020-08-11 삼성전자 주식회사 솔리드 스테이트 디바이스 카드 및 이를 포함하는 전자 시스템
CN206842898U (zh) * 2014-05-16 2018-01-05 莱尔德技术股份有限公司 起重机控制系统和起重机系统
KR102482527B1 (ko) * 2015-12-18 2022-12-29 삼성전자주식회사 시리얼 인터페이스를 사용하는 저장 장치의 작동 방법과 이를 포함하는 데이터 처리 시스템의 작동 방법
CN107102818A (zh) * 2017-03-16 2017-08-29 山东大学 一种基于sd卡的高速数据存储方法
JP6984499B2 (ja) * 2018-03-12 2021-12-22 オムロン株式会社 FA(Factory Automation)システム、コントローラ、および制御方法
CN108268414B (zh) * 2018-03-26 2023-07-21 福州大学 基于spi模式的sd卡驱动器及其控制方法
CN117880364B (zh) * 2024-03-12 2024-06-11 苏州仰思坪半导体有限公司 一种数据传输方法、系统以及相关装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330178A (ja) * 1996-06-12 1997-12-22 Sony Corp データ記録再生装置
US6029226A (en) * 1996-09-30 2000-02-22 Lsi Logic Corporation Method and apparatus having automated write data transfer with optional skip by processing two write commands as a single write command
JP3275833B2 (ja) * 1997-06-03 2002-04-22 日本電気株式会社 磁気ディスク処理装置
US6427184B1 (en) * 1997-06-03 2002-07-30 Nec Corporation Disk drive with prefetch and writeback algorithm for sequential and nearly sequential input/output streams
US6678755B1 (en) * 2000-06-30 2004-01-13 Micron Technology, Inc. Method and apparatus for appending memory commands during a direct memory access operation
US6820148B1 (en) * 2000-08-17 2004-11-16 Sandisk Corporation Multiple removable non-volatile memory cards serially communicating with a host
JP3923715B2 (ja) * 2000-09-29 2007-06-06 株式会社東芝 メモリカード
JP4759826B2 (ja) * 2000-11-10 2011-08-31 ソニー株式会社 アダプタ装置及びメモリ装置
JP2002189992A (ja) 2000-12-20 2002-07-05 Sony Corp メモリカードドライブと携帯型メモリカードドライブ
JP2003036145A (ja) 2001-07-24 2003-02-07 Sharp Corp Fifoメモリのデータ転送制御装置
US6941405B2 (en) 2001-08-21 2005-09-06 02Micro International Limited System and method capable of offloading converter/controller-specific tasks to a system microprocessor
JP3552213B2 (ja) * 2001-08-31 2004-08-11 株式会社東芝 Sdメモリカードホストコントローラ及びクロック制御方法
JP3577053B2 (ja) * 2002-03-25 2004-10-13 株式会社東芝 電子回路
JP2004021938A (ja) * 2002-06-20 2004-01-22 Oki Electric Ind Co Ltd データ転送制御回路
JP2004095036A (ja) 2002-08-30 2004-03-25 Sanyo Electric Co Ltd 光ディスク再生装置及びその制御方法
JP3886460B2 (ja) * 2003-01-31 2007-02-28 富士通株式会社 複合型記憶装置及びそのカード用基板
JP4255711B2 (ja) * 2003-02-13 2009-04-15 パナソニック株式会社 小型カードアダプタおよび小型カードアダプタが装着される上位装置
US7238051B2 (en) * 2003-07-07 2007-07-03 Matsushita Electric Industrial Co., Ltd. PC card
US6958757B2 (en) * 2003-07-18 2005-10-25 Microsoft Corporation Systems and methods for efficiently displaying graphics on a display device regardless of physical orientation
US7624227B2 (en) * 2003-10-29 2009-11-24 Panasonic Corporation Drive device and related computer program
EP1688866A4 (en) * 2003-11-28 2009-03-25 Panasonic Corp RECORDING DEVICE
JP4799417B2 (ja) * 2004-09-28 2011-10-26 dブロード株式会社 ホストコントローラ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527185B1 (ko) * 2008-02-29 2015-06-08 삼성전자 주식회사 수동 rfid의 대용량 데이터 전송 방법 및 시스템

Also Published As

Publication number Publication date
CN101069167A (zh) 2007-11-07
CN100524273C (zh) 2009-08-05
DE602005009845D1 (de) 2008-10-30
EP1794681A1 (en) 2007-06-13
US20070204077A1 (en) 2007-08-30
KR100897463B1 (ko) 2009-05-14
WO2006038663A1 (en) 2006-04-13
US7657687B2 (en) 2010-02-02
EP1794681B1 (en) 2008-09-17

Similar Documents

Publication Publication Date Title
KR100897463B1 (ko) 메모리카드 컨트롤러, 메모리카드 드라이브 장치 및 기록매체
US7747144B2 (en) Information processing apparatus, information processing method, recording medium, control
US6697902B1 (en) Data storage device and interface device for the data storage device
JP5887568B2 (ja) メモリカードコントローラ、メモリカードアダプタおよびメモリカードドライブ
KR100982118B1 (ko) Fat 방식으로 포맷된 정보 기록 매체에 데이터 파일을 기록하는 기록 장치, 방법, 및 프로그램이 기록되어 있는 컴퓨터가 판독가능한 기록 매체
US8112583B2 (en) Data recording for a hard drive in response to commands
JP2007249938A (ja) Usbホストシステム、avデータ再生装置およびavデータ記録装置
US8452158B2 (en) Recording apparatus, imaging and recording apparatus, recording method, and program
US20050259542A1 (en) Reproduction device and method, recording medium, and program
JP4323476B2 (ja) メモリカードコントローラ、メモリカードドライブ装置、及びプログラム
JP4311288B2 (ja) 記憶装置
US7924675B2 (en) Information recording apparatus, imaging device, information-recording controlling method, and computer program
US6496311B1 (en) Data recording/reproducing unit, data recording method, data reproducing method, data recording/reproducing method, hard disk controller, and AV-data recording/reproducing method
JP2000276856A (ja) データ記録装置及びデータ記録方法並びにデータ再生装置及びデータ再生方法
JP2009230789A (ja) 記憶装置、記憶装置制御方法
US20110194837A1 (en) Recording apparatus, imaging and recording apparatus, recording method, and program
JPH1075265A (ja) データ転送デバイス
US8509597B2 (en) Recording apparatus, imaging and recording apparatus, recording method, and program
JP2004078408A (ja) 記録装置および方法、記録媒体、並びにプログラム
JP4474742B2 (ja) データ記録再生装置およびデータ再記録処理方法
JP2001169238A (ja) ノンリニア編集装置、ノンリニア編集方法、記録媒体、テスト方法
JP2001134387A (ja) 情報再生装置及び情報処理装置
JP2001035078A (ja) データ記録再生装置及びそのデータ転送方法
JPH11184635A (ja) 記録媒体再生装置
JP2003256145A (ja) データ転送システムおよびデータ転送方法

Legal Events

Date Code Title Description
A201 Request for examination
PA0105 International application

Patent event date: 20070323

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20080930

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20090331

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20090506

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20090506

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20120423

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20130419

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20130419

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20140421

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20140421

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20150417

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20150417

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20160418

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20160418

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20180418

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20180418

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20200401

Start annual number: 12

End annual number: 12

PR1001 Payment of annual fee

Payment date: 20220324

Start annual number: 14

End annual number: 14

PR1001 Payment of annual fee

Payment date: 20230321

Start annual number: 15

End annual number: 15

PR1001 Payment of annual fee

Payment date: 20240319

Start annual number: 16

End annual number: 16