KR101276559B1 - 더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스 - Google Patents

더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스 Download PDF

Info

Publication number
KR101276559B1
KR101276559B1 KR1020097011295A KR20097011295A KR101276559B1 KR 101276559 B1 KR101276559 B1 KR 101276559B1 KR 1020097011295 A KR1020097011295 A KR 1020097011295A KR 20097011295 A KR20097011295 A KR 20097011295A KR 101276559 B1 KR101276559 B1 KR 101276559B1
Authority
KR
South Korea
Prior art keywords
bus
memory system
dummy data
memory
period
Prior art date
Application number
KR1020097011295A
Other languages
English (en)
Other versions
KR20090095578A (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
Priority claimed from US11/566,685 external-priority patent/US7917719B2/en
Application filed by 쌘디스크 코포레이션 filed Critical 쌘디스크 코포레이션
Publication of KR20090095578A publication Critical patent/KR20090095578A/ko
Application granted granted Critical
Publication of KR101276559B1 publication Critical patent/KR101276559B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은, 분리 가능 모듈들을 위한 물리적 인터페이스 표준들의 타임아웃 제한들을 변경하기 위한 방법들 및 시스템들에 관한 것이다. 버스 활성화를 유지하기 위해 더미 데이터 블록들을 사용함으로써, 버스 타임아웃 요구조건들(어느 하나의 방향에서)은 속여질 수 있고, 이에 따라 타임아웃 기간 내에 신뢰성 있게 적합하지 않은 보다 복잡한 처리 동작들이 수행될 수 있다. 이것은 메모리 시스템이 특정 사양의 버스 타임아웃을 초과할 수 있는 시간 기간 동안 애플리케이션들을 실행하거나 데이터를 처리하게 한다. 메모리 시스템의 제어기는 준비된 신호를 디어서트(deassert)하고 메모리 시스템이 막 타임아웃될 때까지 "비지" 상태에서 컴퓨터 시스템을 접속하는 버스를 홀딩한다. 기입 동작 동안, 제어기는 기입 버스 타임아웃 기간이 만료되기 전에 컴퓨터 시스템으로부터 더미 데이터 블록들을 수신하여, 타임아웃 기간이 리셋되게 한다. 판독 동작 동안, 제어기는 판독 버스 타임아웃 기간이 만료되기 전에 컴퓨터 시스템에 더미 데이터 블록들을 전송하여, 버스 타임아웃 기간이 리셋되게 한다.

Description

더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스{PORTABLE MODULE INTERFACE WITH TIMEOUT PREVENTION BY DUMMY BLOCKS}
본 출원은, 2006년 4월 12일에 출원된 U.S. 출원 제 11/566,685호의 우선권을 주장한다.
본 출원은, 휴대용 전자 모듈에 대한 인터페이스에 관한 것이고, 보다 구체적으로는 견고하게 미리 정의된 인터페이스에 기능성을 추가한 아키텍쳐에 관한 것이다.
분리 가능한 메모리 모듈들은 1990년대 이후 매우 중요하게 되었기 때문에, 제거 가능한 디스크들 또는 특정 백업 매체에 의해 이전에 만족되었던 많은 확고한 휴대성 분야들을 넘겨받았다. 상기 모듈들은 통상적으로 메모리 블록(통상적으로 플래시), 플러스 I/O 및 제어 기능들을 동작시키는 제어기를 포함한다. 이들 메모리 모듈들이 보다 대중적이기 때문에, 그들의 능력들은 물론 증가되고, 비트당 비용은 감소되었다. 그러나, 적어도 두 개의 다른 중요한 방향들로의 개발이 유도되었다: 첫째, 상기 모듈들에 대한 인터페이스는 이와 같은 컴퓨터들과 다른 많은 휴대용 전자 시스템들로 설계되었다. (상기 시스템들의 예들은 카메라들 및 비디오레코더들, 휴대 전화, 개인 정보 단말기 장치들(PDA), 음악 및 비디오 플레이어들, 및 이들의 혼합들을 포함한다). 둘째, 보다 높은 레벨의 기능성은 간단한 판독 및 기입을 넘어서는 기능들(예를 들어, 데이터 보안 및 보호에 관련됨)을 제공하기 위하여 몇몇 메모리 모듈들로 설계되었다.
몇몇 물리적 층 프로토콜들은 여러 가지 중에서 MMC, SD(및 변형들 및 세습), CF, 메모리 스틱, 및 USB 에 사용되었다. 많은 상기 프로토콜들은 분리 가능 모듈들이 예측할 수 없게 삽입 또는 제거되기 때문에 매우 확고한 동작을 위해 설계되었다. 확고한 동작을 보장하는 특징들 중 하나는 엄격한 타임아웃 룰들이다. 예를 들어, SD 카드 물리 층 사양은 명확하게 표준 용량 SD 카드에 대한 판독 타임아웃이 100ms 이하, 기입 타임아웃은 250ms 이하일 것을 요구한다. (이들 요구조건들은 카드 액세스가 진행중인 동안 시스템이 "행(hang)"이거나 시작되지 않는 것을 보장하는 것을 돕는다). 만약 호스트가 주어진 타임아웃에 임의의 응답을 갖지 못하면, 카드가 응답하지 못하고 복구(예를 들어, 카드, 전력 사이클, 거절 등을 리셋) 할 것이 예상된다. (SD Specifications Part 1, Physical Layer Simplified Specification Version 2.00, at sections 4.6, 4.6.1, and 4.6.2 참조. 이런 전체 문서는 본 명세서에 참조로 포함되어 있다).
그러나, 확고한 동작을 보장하는 것을 돕는 타임아웃 룰들은 보다 많은 기능이 모듈 내에 설계되었기 때문에 그 자체가 어려움들을 유발할 수 있다. 특히, 판독 및 기입 타임아웃 요구조건들은 유효성 같은 복잡한 데이터 처리 동작이 목표된 판독 또는 기입 동작 타임아웃 이전에 완료될 수 없는 것을 의미한다.
최대 타임아웃 값들은 필수적으로 변화하기 쉽지 않다. 예를 들어, 인터페이 스 프로토콜 룰들은 호스트측의 FPGA 또는 ASIC에 배선될 수 있다. 이것은 레거시 하드웨어에 강제 배선이 회피될 수 없기 때문에, 진보된 모듈들의 도입에 있어서 문제이다.
버스 타임아웃이 발생할 때, 호스트는 전력 사이클, 복구 처리, 기입 중지 또는 전력 중단을 시작하여, 카드 동작이 중지되게 한다. 그러나, 적법한 판독/기입 동작들 타임아웃 때 문제가 발생한다. 이것은 카드가 타임아웃 기간보다 완료하는데 보다 많은 시간을 소비하는 동작들을 수행할 때 발생한다. 따라서, 주어진 아키텍쳐의 현재 부분은 보다 복잡한 동작들로 순방향 이동을 막는다.
제거 가능한 메모리 개발 중 특정한 곤란한 영역은 디지털 콘텐트 보호이다. 광범위한 노력이 이루어져서, 카피라이트 자료가 사용자들에 의해 자유롭게 분배되지 않고 카피라이트 콘텐트의 편리한 판매, 운송 및 사용이 이루어지도록 한다. 이런 방향에서 하나의 이정표는 정보 기술, 고객 전자 제품, 보안 기술, 콘텐트 소유자, 및 디지털 음악의 보안을 보호하는데 수반되는 인터넷 서비스 제공자들을 나타내는 180개가 넘는 회사와 조직체들의 산업 포럼에 의해 시작된 Secure Digital Music Initiative(SDMI)이다. 다른 이정표는 UDAC-MB-Universal Distribution with Access Control-Media Base로, 이는 사용자가 콘텐트의 카피를 생성, 재생 및 교환하도록 편리하고 합법적인 방식을 제공하는, 콘텐트 보호 보안 멀티미디어카드, 또는 이와 다른 미디어에 콘텐트를 전달하는 보호 기술이다. 이 기술은 라이센스 키 및 인크립트된 콘텐트의 독립 전달을 위한 방법을 바탕으로 한다. UDAC-MB는 일반적으로 Keitaide-Music(KdM) 표준이 뒤따른다.
콘텐트에서 다른 중요한 단계는, SanDisk Corporation에 의해 2005년 발표된 TrustedFlashTM architecture이다. TrustedFlash는 모바일 폰들, 랩탑 컴퓨터들, PDA들 및 다른 휴대용 장치들에서 교환 가능하게 사용하기 위해 소비자들이 플래시 메모리 카드들 상 프리미엄 음악, 영화들 및 게임들을 구매하게 한다. 음악 프로듀서들 및 음악 스튜디오들은 이들 제공자들에 의해 요구되는 보다 우수한 보안 및 디지털 권리 관리 솔루션들을 제공하기 때문에, TrustedFlash 제품들 상 프리미엄 콘텐트를 발매할 수 있을 것이다. 소비자들은 모바일 폰 또는 PC를 통하여 온라인 디지털 음악 서비스들로부터 프리미엄 콘텐트를 다운로드할 것이다.
TrustedFlash 기술에서, 카드 자체는 디지털 권리들의 관리자로서 작동하여, 콘텐트 보호 시스템을 타협하지 않고 카드(와 그 콘텐트)를 다른 지원된 장치들에 전달하기 위한 자유를 소비자들에게 제공한다. TrustedFlash 카드들은 비보안 호스트 장치들에서 정규 카드들로서 기능한다.
TrustedFlash 카드들은 내장 처리기, 메모리 카드들 및 대부분의 소비자 전자 장치들에 이미 존재하는 것보다 높은 레벨의 보안을 제공하기 위해 설계된 고성능 암호화 엔진 및 변경 방지 기술로 인해 매우 안전하고, TrustedFlash 플랫폼상에 형성된 카드들은 전체 디지털 권리 관리 능력들을 제공하여, 대칭 및 비대칭 알고리즘 모두 같은 산업 부안 표준들을 지원한다.
TrustedFlash는 또한 신용 카드 지불들, 대량 수송 수단 액세스 및 일회 패스워드 인증 같은 모바일 거래 애플리케이션들 및 안전한 온라인 금융 트랜잭션들 로 확장되는 것으로 예상된다.
콘텐트 보호를 위한 아키텍쳐들은 콘텐트 유효화 및 노드 유효화를 위한 암호화 알고리즘들, 및/또는 파일 액세스(예를 들어, 사적 키 파일들을 위해) 중 제한들, 및/또는 하나의 파일이 휴대용 매체에 "체크아웃"될 때 트랙을 유지하는 파일 관리 오버헤드 절차를 요구할 것이다. 이 모두는 처리 오버헤드를 부가한다. 상기 시스템들에서, 이것은 휴대용 데이터 모듈과 데이터 교환이 간단한 판독 또는 기입 동작들보다 훨씬 복잡하다는 것을 의미한다.
진보된 콘텐트 보호 특징들을 실행하기 위하여, 데이터 모듈은 정교하고 높은 데이터베이스 보전을 홀딩 및 유지하여야 한다. 상기 데이터베이스 아키텍쳐에서, 전체적인 보전 검사는 매(EVERY) 액세스시 필요할 수 있다. 암호화 계산들은 통상적으로 보전 검사를 위해 필요하고, 상기 데이터베이스를 동작시키기 위한 오버헤드는 과중할 수 있다. 따라서 진보된 메모리 모듈에 대한 판독 또는 기입은 단지 표면적으로만 간단하고, 실질적인 계산은 각각의 액세스 동안 인터페이스의 카드측 상에서 완료되어야 한다. 이런 부가된 오버헤드는 고정된 타임아웃에 대해 문제들일 수 있다.
콘텐트 보호 및 모바일 데이터 인터페이스싱에 대한 많은 정보는 다음 웹사이트들에서 발견될 수 있고, 그 모두(본 출원의 출원일 같은 버전들에서) 본 명세서에 참조 문서로 포함되어 있다: http://www.keitaide-music.org/; http://www.mmca.org/technology/; http//www.sdcard.org/; http://sdmi.org.
보안 애플리케이션들에 대한 부가적인 정보는 2006년 6월 11일 출원된 U.S. 출원 11/557,028, 및 다른 인용된 자료들에서 발견될 수 있고, 그 모두는 본 명세서에 참조 문서로 포함되어 있다.
더미 블록들에 의한 타임아웃을 방지하는 휴대용 모듈 인터페이스
본 출원은 보안 기능들 같은 보다 높은 레벨 기능을 데이터 전달 동작들에 부가하면서 버스 타임아웃 요구조건들에 부합하는 새로운 방법들을 개시한다. 이것은 예를 들어 판독 및/또는 기입 동작들에 더미 동작들을 포함함으로써 달성되므로, 버스 타임아웃은 보다 복잡한 기능들을 위해 요구된 다수의 처리와 충돌하지 않는다. 호스트가 카드 인터페이스에 관련된 보안 동작을 시작할 때, 또한 타임아웃을 회피하는데 충분한 다수의 더미 동작들을 프로그램할 수 있다.
개시된 기술들은 다양한 실시예들에서 적어도 다음 장점 중 하나 또는 그 이상을 제공한다:
- 과도한 타임아웃이 회피된다.
- 보다 복잡한 기능들은 현재 인터페이스들에 부가될 수 있다.
- 새로운 인터페이스 소프트웨어가 업데이트될 때, 새로운 더미 블록 시리지 파라미터들은 또한 업데이트되어, 과도한 타임아웃은 회피된다.
- 고정된 최대 타임아웃 값은, 보다 많은 시간이 필요한 절차가 인터페이스 상에서 추구될 다수의 더미 블록들을 간단히 프로그램할 수 있기 때문에, 변경된다.
- 개선된 보안 기능들은 휴대용 모듈 인터페이스 정의들에 부가될 수 있다.
- 진보된 보안 데이터베이스 기능을 포함하는 휴대용 모듈들은 레거시 장비에 의해 액세스될 수 있다.
개시된 발명들은 본 발명의 중요한 샘플 실시예들을 나타내고 참조로써 명세서에 통합된 첨부 도면들을 참조하여 기술될 것이다.
도 1a와 1b는 샘플 컴퓨터 시스템과 메모리 시스템 실시예들의 블록도.
도 2는 샘플 실시예에 따른 기입 동작을 도시하는 일반적인 흐름도.
도 3은 샘플 실시예에 따른 판독 동작을 도시하는 일반적인 흐름도.
본 출원의 다수의 혁신적인 지침들은 현재 바람직한 실시예들(예를 들어, 그리고 제한하지 않고)을 특히 참조하여 기술될 것이다.
본 발명의 다양한 실시예들에 따라, 메모리 시스템(예를 들어, 메모리 카드)이 기입 또는 판독 버스 타임아웃 사양을 초과하게 하는 시스템 및 방법이 기술된다.
도 1(a)는 본 발명의 실시예들이 실행될 수 있는 것과 관련한 하드웨어 및 오퍼레이팅 환경을 도시한다. 이런 환경은 처리기(15), 메모리(25) 및 메모리(25)를 포함하는 다양한 시스템 구성요소들을 처리기(15)에 동작 가능하게 결합하는 버스(30)를 포함하는 컴퓨터 시스템(10) 형태의 범용 컴퓨팅 장치를 포함한다. 하나 또는 하나 이상의 처리기(15)가 있을 수 있다. 컴퓨터 시스템(10)은 통상적인 컴퓨터, 분배 컴퓨터, 또는 임의의 다른 컴퓨터 타입일 수 있고; 본 발명은 이것으로 제한되지 않는다.
버스(30)는 인터페이스(90)에 접속되고, 상기 버스(30)는 메모리 버스 또는 메모리 제어기, 주변 버스, 및 임의의 다양한 버스 아키텍쳐들을 사용하는 로컬 버스를 포함하는 임의의 몇몇 타입의 버스 구조들일 수 있다. 인터페이스(90)는 도 1(b)에 도시된 메모리 시스템(100) 같은 메모리(25) 및 I/O 디바이스들 사이에서 데이터 및 명령들을 전달하는 직접 메모리 액세스(DMA) 제어기를 포함한다. 메모리(25)는 기본 입력/출력 시스템(BIOS)(50)을 가진 판독 전용 메모리(ROM)(40) 및 랜덤 액세스 메모리(RAM)(45)를 포함한다. RAM(45)은 다양한 시간들에서 동작하는 시스템(70), 애플리케이션 프로그램들(75), 프로그램 데이터(85) 및 이하에 보다 상세히 논의되는 드라이버들을 포함하는 프로그램 모듈들(80)을 포함할 수 있다.
상기된 바와 같은 메모리 시스템들(100)은 도 1(b)에 기능적으로 표현될 수 있다. 비휘발성 메모리 시스템(100)은 통상적으로 플래시 메모리 어레이(140) 및 제어기(105)를 포함한다. 메모리 셀 어레이(140)는 플래시이거나, 몇몇 다른 타입의 비휘발성 메모리일 수 있다. 사용자 데이터는 제어기(105) 및 메모리 셀 어레이(140) 사이에서 전달된다.
본 발명의 특정 실시예에 따른 제어기(105)는 예를 들어 처리기(110), 타이머(115), 판독 전용 메모리(ROM)(135), 및 랜덤 액세스 메모리(RAM)(120)를 포함한다. 비록 타이머(115)가 도 1(b)에서 하드웨어 블록으로서 표시되지만, 제어기(105) 내에 저장된 코드로 실행되거나 하드웨어 및 코드의 결합으로서 실행될 수 있다. RAM(120)은 메모리 시스템(100)의 동작을 제어하기 위하여 처리기(110)에 의 해 엑세스된 펌웨어 및 소프트웨어를 저장할 수 있다.
제어기(105)는 또한 직접 메모리 액세스(DMA) 엔진을 포함하는 플래시 인터페이스(125), 및 직접 메모리 액세스(DMA) 엔진을 포함하는 호스트 인터페이스(130)를 포함한다. 플래시 인터페이스(125) 및 호스트 인터페이스(130)의 의무는 제어기(105)와 메모리 셀 어레이(들)(140) 사이 및 제어기(105)와 컴퓨터 시스템(10) 사이에서 각각 통신 및 전달들을 관리 및 제어하는 것을 포함한다.
특히, 플래시 인터페이스(125)의 DMA 엔진은 RAM(120)에 그리고 RAM으로부터, 및 메모리 셀 어레이(140)에 및 상기 메모리 셀 어레이로부터 데이터의 전달을 관리 및 제어하기 위하여 구성된다. 호스트 인터페이스(130)의 DMA 엔진은 컴퓨터 시스템(10)에 또는 상기 컴퓨터 시스템으로부터, 및 RAM(120)에 또는 상기 RAM으로부터 데이터의 전달을 관리 및 제어하기 위해 구성된다. 제어기(105)는 메모리 시스템(100) 내의 동작들이 버스 상 동작들과 비동기식으로 발생하도록 구성된다. 본 발명의 일 실시예에서, 호스트 인터페이스(130)의 DMA 엔진은 예를 들어 준비된 신호 같은 상태 신호를 어서팅(asserting) 또는 디어서팅(deasserting) 하여 버스를 제어하도록 구성된다. 메모리 시스템(100)이 액세스될 준비가 될 때, 준비 신호는 어서트(assert)된다. 반대로, 메모리 시스템(100)이 명령을 처리하거나 동작들을 수행하여 비지할 때, 준비 신호는 디어서트(deassert)된다. 컴퓨터 시스템(10) 및 메모리 시스템(100)은 본 발명의 원리들을 구현한다. 본 발명의 원리들에 따라, 메모리 시스템(100)은 예를 들어 특정 사양 또는 프로토콜의 버스 타임아웃 기간을 초과할 수 있는 판독 및 기입 동작들을 수행할 수 있다. 본 발명의 이런 실시예에 서, 메모리 시스템(100)은 SD 카드 사양을 바탕으로 한다. 따라서, 컴퓨터 시스템(10) 및 메모리 시스템(100)은 SD 카드 사양에 맞추도록 구성되고 버스 타임아웃 기간들을 인식한다. 그러나 Personal Computer Memory Card International Association(PCMCIA), CompactFlash(CF), MultiMediaCard(MMC) 및 Secure Digital(SD)와 관련된 것과 같은 다른 사양들이 본 발명에 따라 실행될 수 있다는 것이 인식되어야 한다.
일반적으로, 본 발명의 일 실시예에 따라, 특정 사양의 버스 타임아웃을 초과할 수 있는 시간 기간 동안 메모리 시스템이 애플리케이션들을 실행하거나 데이터를 처리할 수 있도록 하기 위해, 메모리 시스템의 제어기는 준비 신호를 디어서트하고 메모리 시스템이 막 타임아웃될 때까지 "비지" 상태에서 컴퓨터 시스템에 버스를 홀딩한다. 기입 동작 동안, 제어기는 기입 버스 타임아웃 기간이 만료되기 전에 컴퓨터 시스템으로부터 더미 데이터 블록들을 수신하여, 버스 타임아웃 기간은 리셋된다. 판독 동작 동안, 제어기는 판독 버스 타임아웃 기간이 만료하기 전에 더미 데이터 블록들을 컴퓨터 시스템에 전송하여, 버스 타임아웃 기간은 리셋된다.
상기된 바와 같이, 컴퓨터 시스템(10)은 메모리(45)에 저장된 애플리케이션 프로그램들(75)을 포함한다. 이 실시예에서, 애플리케이션 프로그램들(75)로부터 적어도 하나의 애플리케이션 프로그램은 메모리 시스템(100)의 RAM(120)에 저장된 보안 애플리케이션을 지원하는 보안 애플리케이션이다.
게다가, 프로그램 모듈들(80)은 카드 서비스들의 존재를 검출하기 위하여 구성된 드라이버들(또는 배선 로직)을 포함하고, 카드 파일 시스템(예를 들어, 플래 시 파일 시스템)에 인터페이스하고, 메모리 서비스들에 대해 이루어진 호들을 다루고, 버스 타임아웃 기간들을 모니터한다. 드라이버들(또는 로직)은 애플리케이션 프로그램들(75) 및 메모리 시스템(100) 사이의 인터페이스를 제공한다. 비록 메모리 시스템(100)에 액세스하기 위해 요구된 방법이 메모리 시스템에서 실행되는 메모리 시스템(즉, 메모리 기술) 타입에 따라 가변하지만, 이런 특정 실시예에서, 메모리 시스템은 플래시 사양을 실행한다. 드라이버들(또는 로직)은 메모리 시스템(100)에 명령들을 제공하고, 메모리 시스템(100)에 및 상기 메모리 시스템으로부터 데이터를 전송 및 수신하고, 물리적 프로토콜 레벨에서 버스 타임아웃 기간들(예를 들어, 기입/판독)을 관리하기 위해 구성된다. 드라이버들(또는 로직)의 하나의 기능은 메모리 시스템(100)으로부터 준비 신호를 모니터하고 특정 동작 또는 명령이 버스 타임아웃 기간을 초과할 때를 식별하는 것이다. 상기된 바와 같이, 준비 신호는 메모리 시스템(100)이 다음 트랜잭션을 위해 준비된 것을 가리킨다. 만약 디어서트되면, 준비 신호는 메모리 시스템(35)이 명령 또는 동작을 수행하여 비지하고 다음 트랜잭션을 위해 준비되지 않은 것을 가리킨다.
상기된 바와 같이, 시스템 불요성의 실제 문제는 이들 기능들이 드라이버들에 위임되지 않고, 적어도 부분적으로 하드웨어에 잔류할 때 발생한다. (드라이버들은 업데이트될 수 있지만, 하드웨어는 변경하기 쉽지 않다). 다양한 제조자들은 SD 카드 또는 다른 인터페이스 룰들의 FPGA 또는 ASIC 실행들을 사용하고, 이들 하드웨어 실행들을 수행하는 레거시 장비는 필요성이 있다.
종래 기술 시스템들에서, 만약 메모리 시스템에서 실행되는 애플리케이션 또 는 동작이 오랜 처리, 예를 들어 기입 또는 판독 버스 타임아웃 기간 사양을 초과하는 처리이면, 메모리 시스템은 버스 타임아웃과 만난다. 드라이버들의 타입에 따라, 이것은 통상적으로 드라이버들이 리셋 신호, 전력 사이클, 또는 메모리 시스템의 다른 복구 처리를 시작하게 한다. 어느 경우에서나, 일단 드라이버들이 버스 타임아웃을 인식하면, 컴퓨터 시스템은 더 이상 적당하게 기능하지 않는 것으로 메모리 시스템을 처리하고 메모리 시스템에서 실행하는 애플리케이션 또는 동작은 중단된다.
일반적으로, 통상적인 기입 동작은 메모리에 기입 명령을 전송하고 그 다음 데이터를 수신할 준비가 된 메모리로부터의 표시를 기다리는 컴퓨터를 포함한다. 준비 표시는 예를 들어 신호, 상태, 또는 임의의 다른 프로토콜 메카니즘일 수 있다. 일단, 메모리가 준비되면, 컴퓨터에 하나의 표시를 전송하고, 응답하여 컴퓨터는 메모리에 일련의 데이터 블록들을 전송한다. 메모리가 준비되었기 때문에, 적어도 하나의 데이터 블록을 수신할 수 있고 데이터 블록들 사이에서 비지 신호를 트리거, 발행, 및 드라이브할 수 있다. 컴퓨터는 메모리로부터 신호들을 모니터하고 메모리가 준비될 때, 컴퓨터는 메모리에 데이터 블록들을 전송한다.
도 2는 본 발명의 실시예에 따른 기입 동작을 도시하는 일반적으로 흐름도이다. 본 발명의 이 실시예에서, 기입 동작은 컴퓨터 시스템(10)에 저장된 보안 애플리케이션 및 메모리 시스템(100)에 저장된 보안 애플리케이션 환경에서 실행된다. 더미 블록의 개시된 사용은 시간 소비적인 애플리케이션들에 대한 버스 타임아웃을 방지하는데 적당하다. 이런 개념은 메모리 시스템 버스 타임아웃 사양보다 긴 처리 시간을 요구할 수 있는 임의의 타입의 애플리케이션이 허용될 수 있게 한다. 상기된 바와 같이, 본 발명은 메모리 시스템(35)에서 실행되는 애플리케이션 타입으로 제한되지 않고 예를 들어 메모리 시스템 내의 파일 삭제 또는 데이터 압축에 적용할 수 있다.
도 2를 다시 참조하여, 본 발명의 이런 실시예에서, 블록(205)에서, 컴퓨터 시스템(10)의 애플리케이션(예를 들어, 보안 처리)은 메모리 시스템(100)에 질문 명령을 전송한다. 특히, 애플리케이션은 컴퓨터 시스템(10)의 애플리케이션이 기입 버스 타임아웃을 회피하도록 메모리 시스템(100)에 전송되어야 하는 더미 데이터 블록의 수에 대해 메모리 처리기(15)가 시스템(100)에게 질문하게 한다.
더미 데이터 블록들은 메모리 시스템(100)의 특정 사양에 따른 섹터 및 블록 크기를 가진 정규적인 데이터 블록들이다. 더미 데이터 블록들이 정의되는 방법에 따라, 더미 데이터 블록들의 데이터는 무관할 수 있고 따라서 무언가를 포함할 수 있다. 본 발명의 이런 특정 실시예에서, 더미 데이터 블록들의 데이터는 무관하다. 더미 데이터 블록들은 유효 데이터 블록으로부터 더미 데이터 블록을 구별하기 위하여 서명들 또는 패턴들 같은 식별자들을 포함할 수 있다.
RAM(120)에 저장된 명령들을 실행하여, 제어기(105)는 컴퓨터 시스템(10)의 애플리케이션이 기입 버스 타임아웃(블록 210)을 방지하기 위해 메모리 시스템(100)에 전송되어야 하는 더미 데이터 블록의 수를 결정한다. 실행하기 위해 메모리 시스템(100)의 애플리케이션에 필요한 최대 시간 및 기입 버스 타임아웃 기간 사양을 알고, 제어기(105)는 컴퓨터 시스템(10)의 애플리케이션이 기입 버스 타임 아웃을 회피하기 위하여 전송하여야 하는 더미 데이터 블록의 수를 결정한다. 본 발명의 이런 실시예에서, 제어기(105)는 메모리 시스템에서 실행하기 위한 애플리케이션에 필요한 최대 횟수로 메모리 시스템 사양과 관련된 기입 버스 타임아웃 기간을 분할하여 더미 데이터 블록의 수를 결정한다.
예를 들어, 만약 메모리 시스템(35)의 애플리케이션(예를 들어, 보안 처리)이 완료하기 위해 10초 걸리면, 제어기(105)는 기입 버스 타임아웃 기간을 초과하는 메모리 시스템(100) 없이 애플리케이션이 실행하게 하도록 수신하기 위해 필요한 더미 데이터 블록의 수를 결정한다. 만약 메모리 시스템(100)이 SD 카드이면, 정의에 의해 기입 버스 타임아웃은 250 ms이다. 이것을 알고, 제어기(105)는 메모리 시스템(100)이 4 개의 더미 데이터 블록들이 1초 동안 버스 비지를 유지하는 것을 요구하는 것을 결정한다. 메모리 시스템(100)이 완료하기 위해 10초 걸리는 것이 제공되면, 메모리 시스템(100)은 총 40 더미 데이터 블록들을 수신하고, 하나의 더미 데이터 블록은 매 250 ms이므로, 기입 버스 타임아웃을 회피한다. 동일한 계산들은 판독 동작을 위해 이루어지는 것이 주의되고, 단지 판독 타임아웃 기간은 기입 타임아웃 기간과 다를 것이다.
도 2를 참조하여, 더미 데이터 블록의 수를 알고, 블록(215)에서, 제어기(105)는 컴퓨터 시스템(10)의 애플리케이션에 더미 데이터 블록의 수를 전송한다. 본 발명의 실시예에 따라, 이들 통신들은 애플리케이션 레벨에서 시작된다. 애플리케이션 레벨에서 통신에 의해, 드라이버는 오프 더 쉘프이고 변하지 않고 유지될 수 있다.
컴퓨터 시스템(10)의 애플리케이션은 질문 결과들을 판독하고 적당한 수의 더미 데이터 블록들을 가진 더미 기입 명령을 시작한다. 컴퓨터 시스템(10)의 애플리케이션은 메모리 시스템(100)에 더미 기입 명령 및 더미 데이터 블록들을 전송한다. 블록(220)에서, 메모리 시스템(100)은 더미 데이터 블록을 수신하고, 더미 기입 명령은 제어기(105)가 처리 동안 더미 기입 상태로 진행하게 한다. 이런 상태에서, 제어기(105)는 컴퓨터 시스템(10)의 애플리케이션으로부터 수신한 더미 데이터 블록들을 무시한다. 상기된 바와 같이, 더미 데이터 블록들은 컴퓨터 시스템(10)에서 드라이버들에 의해 모니터되고 유효 데이터 블록들과 다르지 않게 드라이버들에 나타나므로, 드라이버들이 버스 타임아웃을 시작하여 유지하게 한다. 추후, 더미 기입 명령은 메모리 시스템(100)에 의해 수신된다. 응답하여, 제어기(105)는 호스트 인터페이스(130)를 통하여, 준비 신호를 디어서트하고(즉, 버스가 비지로 설정됨) 메모리 시스템(100)에서 애플리케이션을 실행한다.
블록(225)에서, 제어기(105)는 애플리케이션의 실행과 관련된 시간 기간을 모니터한다. 예를 들어, 더미 기입 명령이 수신될 때, 제어기(105)는 타이머(115)를 호출하여 기입 동작 동안 버스 타임아웃 기간을 모니터할 수 있다. 이런 특정 실시예에서, 메모리 시스템(100)은 SD 사양을 바탕으로 하므로, 기입 버스 타임아웃 기간은 250ms이다. 블록(230)에서, 기입 버스 타임아웃 기간이 초과되기 전에, 타이머(115)는 처리기를 차단하는 타임아웃 만료 중단을 유발하고 호스트 인터페이스(130)가 준비 신호를 어서트하게 한다. 준비 신호를 인식하여, 컴퓨터 시스템(10)의 드라이버들은 메모리 시스템(100)에 다음 더미 데이터 블록의 전달을 시 작하여, 기입 버스 타임아웃을 방지한다. 블록(235)에서, 메모리 시스템(100)은 더미 데이터 블록을 수신 및 무시한다.
상기된 바와 같이, 드라이버들은 더미 데이터 블록들과 유효 데이터 블록들 사이의 차이를 인식하지 못한다. 드라이버들은 더미 데이터 블록의 전달을 모니터하고 전달이 기입 버스 타임아웃 기간 내에서 발생되고 기입 버스 타임아웃을 시작하지 않는 것을 인식한다. 이것은 메모리 시스템(100)의 애플리케이션이 버스 타임아웃 중단 없이 계속 실행되게 한다. 새로운 더미 데이터 블록의 도달 후, 새로운 더미 데이터 블록 중단은 타이머(115)를 호출하고 기입 버스 타임아웃 기간이 만료하기 전에 처리기(105)를 중단한다. 추후, 제어기(105)는 애플리케이션이 리셋되고 복구 처리로 전송되는 메모리 시스템(100) 없는 애플리케이션을 실행한다.
타임아웃 만료 중단 및 새로운 더미 데이터 블록 도달 중단은 메모리 시스템(100)에서 애플리케이션을 실행하는 처리기(110)와 병렬로 호출된다. 두 개의 중단들은 애플리케이션이 실행되는 동안 하나의 사이클에서 계속된다. 일단 메모리 시스템(100)이 내부 처리를 완료하면, 컴퓨터 시스템(10)에 의해 전송된 나머지 더미 데이터 블록들은 더미 데이터 블록들 사이의 지연 없이 메모리 시스템(100)에 의해 수집된다. 두 개의 더미 데이터 블록들 사이의 지연 시간은 파라미터 제어될 수 있고 애플리케이션들 및 메모리 시스템 사양에 따라 가변할 수 있다.
일반적으로, 통상적인 판독 동작은 메모리 시스템에 판독 명령을 전송하고 데이터를 전송하기 위하여 준비된 메모리 시스템으로부터의 표시를 기다리는 컴퓨터 시스템을 수반한다. 상기된 바와 같이, 준비 표시는 예를 들어 신호, 상태, 또 는 임의의 다른 프로토콜 메카니즘일 수 있다. 일단 메모리 시스템이 준비되면, 컴퓨터 시스템에 일련의 데이터 블록들을 전송한다. 메모리 시스템이 준비되었기 때문에, 적어도 하나의 데이터 블록을 전송하고 데이터 블록들 사이의 비지 신호를 트리거, 발행, 및 드라이브할 수 있다.
도 3은 본 발명의 실시예에 따른 판독 동작을 도시하는 흐름도이다. 이런 본 발명의 예시적인 실시예에서, 판독 동작은 메모리 시스템(100)에 저장된 보안 애플리케이션 및 컴퓨터 시스템(10)에 저장된 보안 애플리케이션의 환경에서 실행된다. 기입 실시예에서처럼, 본 발명은 시간 소비적인 애플리케이션들에 대한 버스 타임아웃을 방지하는데 적당하다. 따라서, 메모리 시스템 사양보다 많은 처리 시간을 필요로 할 수 있는 메모리 시스템(10)의 임의의 타입의 애플리케이션은 판독 동작 동안 적용할 수 있다. 상기된 바와 같이, 본 발명은 메모리 시스템(100)에서 실행된 애플리케이션 타입으로 제한되지 않고 예를 들어 메모리 시스템 내 파일 삭제 또는 데이터 압축에 적용할 수 있다.
본 발명의 이런 실시예에서, 블록(305)에서, RAM(120)에 저장된 명령들을 실행하는 제어기(105)는 시스템 메모리(35)가 판독 버스 타임아웃을 방지하기 위하여 컴퓨터 시스템(10)에 전송하여야 하는 더미 데이터 블록의 수를 결정한다. 실행하기 위한 메모리 시스템(100) 내 애플리케이션에 필요한 최대 시간 및 판독 버스 타임아웃 기간 사양을 알고, 제어기(105)는 애플리케이션이 판독 버스 타임아웃을 회피하기 위하여 전송하는 더미 데이터 블록의 수를 결정한다. 본 발명의 이 실시예에서, 제어기(105)는 애플리케이션이 메모리 시스템에서 실행하기 위하여 필요한 최대 시간으로 메모리 시스템 사양과 관련된 판독 버스 타임아웃 기간을 분할하여 더미 데이터 블록의 수를 결정한다.
예를 들어, 만약 메모리 시스템(100)의 애플리케이션(예를 들어, 보안 처리)이 완료하기 위하여 10초 걸리면, 제어기(105)는 판독 버스 타임아웃을 방지하기 위하여 컴퓨터 시스템(10)의 애플리케이션에 전송할 필요가 있을 더미 데이터 블록의 수를 결정한다. 만약 메모리 시스템(100)이 SD 카드이면, 정의에 의해 판독 버스 타임아웃은 100ms이다. 이것을 알고, 제어기(105)는 메모리 시스템(100)이 일 초 동안 버스 비지를 유지하기 위하여 10개의 더미 데이터 블록들을 요구하는 것을 결정한다. 메모리 시스템(100)의 애플리케이션이 완료하기 위하여 10초 걸릴 것이라는 것이 제공되면, 메모리 시스템(100)은 판독 버스 타임아웃을 회피하기 위하여 하나의 더미 데이터 블록이 매 100ms인 총 100개의 더미 데이터 블록들을 전송하여 한다.
기입 실시예에서, 더미 데이터 블록의 수는 메모리 시스템(100)에서 애플리케이션의 실행 동안, 드라이버들이 판독 버스 타임아웃을 시작하는 것을 방지하도록 모니터하기 위하여 컴퓨터 시스템(10)의 드라이버들에 필요한 더미 데이터 블록들의 양을 나타낸다.
더미 데이터 블록의 수가 공지되고, 블록(310)에서, 메모리 시스템(100)의 애플리케이션(예를 들어, 보안 처리)은 컴퓨터 시스템(10)에게 질문 명령을 전송한다. 특히, 메모리 시스템(100)의 애플리케이션은 컴퓨터 시스템(10)에 질문 명령을 전송하기 위하여 제어기(105)에게 명령한다. 질문 명령은 판독 명령의 실행 동안 판독 버스 타임아웃을 회피하기 위하여 메모리 시스템(100)으로부터 예상된 더미 데이터 블록의 수를 컴퓨터 시스템(10)에 보고한다. 상기된 바와 같이, 이들 통신들은 애플리케이션 레벨에서 시작되어, 드라이버가 오프 더 쉘프이고 변하지 않도록 한다.
컴퓨터 시스템(10)의 애플리케이션은 메모리 시스템(100)으로부터 질문 결과들을 판독하고 더미 판독 명령을 시작한다. 컴퓨터 시스템(100)의 애플리케이션은 더미 판독 명령을 시스템 메모리(100)에 전송한다. 블록(315)에서, 메모리 시스템(100)은 더미 판독 명령을 수신하고 제어기(105)가 처리 동안 더미 판독 상태로 진행하게 한다. 이런 상태에서, 제어기(105)는 판독 버스 타임아웃 기간의 만료 전에 컴퓨터 시스템(10)에 더미 데이터 블록들을 전송한다. 상기된 바와 같이, 이들 더미 데이터 블록들은 컴퓨터 시스템(10)의 드라이버들에 모니터되고 유효 데이터 블록들과 다르지 않게 드라이버들에 나타난다. 더미 판독 명령이 시스템 메모리(100)에 의해 수신될 때, 제어기(105)는 준비 신호를 디어서트한다(즉, 버스를 비지하게 설정함).
블록(320)에서, 제어기(105)는 애플리케이션의 실행과 관련된 시간 기간을 모니터한다. 예를 들어, 더미 판독 명령이 수신될 때, 제어기(105)는 타이머(115)를 호출하여, 메모리 시스템(100)의 판독 동작 동안 버스 타임아웃 기간을 모니터한다. 이런 특정 실시예에서, 메모리 시스템(100)은 SD 사양을 바탕으로 하여, 판독 버스 타임아웃 기간은 100ms이다. 블록(325)에서, 판독 버스 타임아웃 기간이 초과되기 전에, 타이머(115)는 처리기(110)를 중단하는 타임아웃 만료 중단을 유발 하여 호스트 인터페이스(130)가 준비 신호를 어서트하게 한다.
추후, 블록(330)에서, 제어기(105)는 컴퓨터 시스템(10)의 애플리케이션에 서명을 가진 더미 데이터 블록들을 전송한다. 서명은 컴퓨터 시스템(10)의 애플리케이션이 유효 데이터 블록들로부터 더미 데이터 블록들을 구별하게 한다. 서명을 인식하여, 컴퓨터 시스템(10)의 애플리케이션은 더미 데이터 블록들을 무시할 수 있다.
컴퓨터 시스템(10)의 드라이버들은 더미 데이터 블록의 전달을 모니터하고 전달이 판독 버스 타임아웃 기간 내에서 발생되고 따라서 판독 버스 타임아웃을 시작하지 않는 것을 인식한다. 상기된 바와 같이, 드라이버들은 더미 데이터 블록들 및 유효 더미 블록들 사이의 차를 인식하지 못한다. 컴퓨터 시스템(10)의 애플리케이션은 더미 데이터 블록을 수신하고, 더미 데이터 블록과 관련된 서명을 인식하고, 더미 데이터 블록을 무시한다.
새로운 더미 데이터 블록을 전송한 후, 중단이 전송된 새로운 데이터 블록은 판독 버스 타임아웃 기간이 만료되기 전에 처리기(110)를 중단하는 타이머(115)를 호출하여, 제어기(105)가 리셋 또는 복구 처리로 전송되는 메모리 시스템(100) 없이 애플리케이션을 실행하게 한다.
타임아웃 만료 중단 및 중단이 전송된 새로운 더미 데이터 블록은 메모리 시스템(100)의 애플리케이션을 실행하는 처리기(105)에 병렬로 호출된다. 두 개의 중단들은 애플리케이션이 실행되는 동안 하나의 사이클에서 계속된다. 두 개의 더미 데이터 블록들 사이의 지연 시간은 파라미터 제어될 수 있고 애플리케이션들 및 메 모리 아키텍쳐들 사이에서 가변할 수 있다.
다양한 개시된 실시예들에 따라, 하기가 제공된다: a) 명령된 기입이 분리 가능 모듈의 보안 저장 동작들을 요구할 때, 분리 가능 모듈이 버스 타임아웃 없이 보안 저장 동작들을 완료하게 하는데 충분히 긴 일련의 더미 기입들을 수행하고; 및 b) 명령된 판독이 어셈블리될 목표된 데이터를 위해 암호화 동작들을 요구할 때, 타임아웃을 방지하기 위하여 더미 판독 사이클들을 수행하고; 이에 따라 복잡한 절차들이 레거시 버스 아키텍쳐에 오버레이될 수 있는 작용들을 포함하는 보안 액세스 메모리를 포함하는 분리 가능한 전자 모듈과 호스트 시스템 사이의 인터페이싱을 위한 방법이 제공된다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: a) 명령된 기입 사이클이 완료를 위하여 복잡한 계산을 요구할 때, 상기 복잡한 계산이 완료될 때까지 타임아웃을 피하기 위하여 시간 지연들을 가지고 더미 블록들을 기입하고; 및 b) 명령된 판독 사이클이 완료를 위해 복잡한 계산을 요구할 때, 상기 복잡한 계산이 완료될 때까지 타임아웃을 피하기 위하여 그 사이에 시간 지연을 갖고 더미 판독들을 수행하는 작용을 포함하는 호스트 시스템과 데이터 모듈 사이의 인터페이싱 방법이 제공된다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: a) 복잡한 처리 동작이 기입 사이클 동안 요구될 때, 타임아웃을 회피하기 위하여 더미 블록들을 기입하고; 및 b) 복잡한 처리 동작이 판독 사이클 동안 요구될 때, 타임아웃을 방지하기 위하여 더미 판독들을 수행하고; 이에 따라 복잡한 절차들이 레거시 버스 아키텍쳐 에 오버레이될 수 있는 작용들을 포함하는 메모리를 포함하는 분리 가능한 전자 모듈 및 시스템 사이의 인터페이스 방법이 제공된다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: 컴퓨터 시스템과 메모리 시스템 사이의 버스 타임아웃을 방지하기 위한 방법이 제공되고, 상기 방법은: 기입 버스 타임아웃 기간 발생 없이 메모리 시스템의 애플리케이션이 실행하는데 필요한 더미 데이터 블록의 수를 결정하고; 컴퓨터 시스템에 공지된 더미 데이터 블록의 수를 형성하고; 메모리 시스템이 더미 데이터 블록들을 무시하는 상태를 시작하는 더미 기입 명령을 컴퓨터 시스템으로부터 수신하고; 메모리 시스템이 비지한 것을 컴퓨터 시스템에 표시하고; 메모리 시스템의 애플리케이션을 실행하고; 메모리 시스템의 애플리케이션을 실행하는 것과 관련된 시간 기간을 모니터링하고; 시간 기간이 기입 버스 타임아웃 기간을 초과하기 전에 메모리 시스템이 준비된 것을 표시하고; 및 컴퓨터 시스템으로부터 더미 데이터 블록을 수신하는 것을 포함한다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: 보안 액세스 메모리를 포함하는 분리 가능한 전자 모듈에서 실행되는 호스트 시스템에 인터페이싱하기 위한 방법은 제공되고, 상기 방법은 명령된 판독이 어셈블리될 목표된 데이터를 위해 암호화 동작들을 요구할 때, 유효 데이터가 어셈블리되고 판독될 때까지 타임아웃을 방지하기 위하여 더미 판독 사이클들을 수행하고; 이에 따라 복잡한 절차들이 레거시 버스 아키텍쳐에 오버레이될 수 있는 작용을 포함한다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: 보안 데이터 모듈에 인터페이싱하기 위한 방법이 제공되고, 상기 방법은 명령된 기입 사이클이 완료를 위한 복잡한 계산을 요구할 때, 상기 복잡한 계산이 완료될 때까지 타임아웃을 방지하기 위하여 그 사이에 시간 지연을 갖고 더미 블록들을 기입하고; 및 적어도 상기 계산이 완료되고 명령된 기입 사이클이 완료되는 시간까지 상기 더미 블록들을 버리는 작용을 포함한다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: 컴퓨터 시스템과 메모리 시스템 사이의 버스 타임아웃을 방지하기 위한 방법은 판독 버스 타임아웃 기간이 발생하지 않고 메모리 시스템의 애플리케이션이 실행하는데 필요한 더미 데이터 블록의 수를 결정하고; 컴퓨터 시스템에 공지된 더미 데이터 블록의 수를 형성하고; 메모리 시스템이 비지한 것을 컴퓨터 시스템에 표시하고; 메모리 시스템의 애플리케이션을 실행하고; 메모리 시스템의 애플리케이션의 실행과 관련된 시간 기간을 모니터링하고; 시간 기간이 판독 버스 타임아웃 기간을 초과하기 전에 메모리 시스템이 준비된 것을 표시하고; 및 더미 데이터 블록 및 식별자를 컴퓨터 시스템에 전송하는 것을 포함한다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: 컴퓨터 시스템과 메모리 시스템 사이의 버스 타임아웃을 방지하기 위한 시스템은 메모리 셀 어레이; 및 상기 메모리 셀 어레이에 접속된 제어기를 포함하고, 상기 제어기는: 기입 버스 타임아웃 기간이 발생하지 않고 제어기의 애플리케이션이 실행하기 위하여 필요한 더미 데이터 블록의 수를 결정하고; 컴퓨터 시스템에 공지된 더미 데이터 블록의 수를 형성하고; 제어기가 더미 데이터 블록들을 무시하는 상태를 표시하는 더미 기입 명령을 컴퓨터 시스템으로부터 수신하고; 메모리 시스템이 비지한 것을 컴퓨터 시스 템에 표시하고; 제어기의 애플리케이션을 실행하고; 제어기의 애플리케이션 실행과 관련된 시간 기간을 모니터링하고; 시간 기간이 기입 버스 타임아웃 기간을 초과하기 전에 메모리 시스템이 준비된 것을 표시하고; 및 컴퓨터 시스템으로부터 더미 데이터 블록을 수신하는 것을 수행하도록 구성된다.
다양한 개시된 실시예들에 따라, 다음이 제공된다: 컴퓨터 시스템과 메모리 시스템 사이의 버스 타임아웃을 회피하기 위한 시스템은 메모리 셀 어레이; 및 메모리 셀 어레이에 접속된 제어기를 포함하고, 상기 제어기는: 판독 버스 타임아웃 기간이 발생하지 않고 제어기의 애플리케이션이 실행하는데 필요한 더미 데이터 블록의 수를 결정하고; 컴퓨터 시스템에 공지된 더미 데이터 블록의 수를 형성하고; 메모리 시스템이 비지한 것을 컴퓨터 시스템에게 표시하고; 제어기의 애플리케이션을 실행하고; 제어기의 애플리케이션의 실행과 관련된 시간 기간을 모니터링하고; 시간 기간이 판독 버스 타임아웃 기간을 초과하기 전에 메모리 시스템이 준비된 것을 가리키고; 및 컴퓨터 시스템에 더미 데이터 블록 및 식별자를 전송하는 것을 수행하도록 구성된다.
변형들 및 변화들
당업자에 의해 인식될 바와 같이, 본 출원에 기술된 혁신적인 개념들은 애플리케이션들의 굉장한 범위를 넘어 변형 및 가변되고, 따라 특허 주제의 범위는 제공된 특정 예시적인 지침들 중 임의의 것으로 제한되지 않는다. 첨부된 청구항들의 사상 및 넓은 범위 내에 속하는 모든 상기 대안들, 변형들 및 변화들을 열거하고자 한다.
상기 실시예들은 혁신적인 원리들의 몇몇 샘플 실행들을 단순히 도시한다. 따라서 당업자가 본 발명의 원리들을 구현하고 따라서 사상 및 범위 내에 있는 다수의 다른 장치들을 고안할 수 있다는 것은 인식될 것이다.
예를 들어, 개시물을 바탕으로, 본 발명의 원리들이 내부 제어기를 가진 플래시 메모리에 사용되는 제거 가능한 카드들에 대한 사양들 또는 여러 종래 표준을 쉽게 수용한다는 것은 명백하다. 하나의 상기 표준, PC 카드 표준은 3 가지 타입의 PC 카드들을 사양들에 제공한다. PC 카드 표준은Personal Computer Memory Card International Association(PCMCIA)의 제품이다. CompactFlash(CF®)는 PC 카드와 기능적으로 호환할 수 있지만 매우 작다. 심지어 보다 작은 비휘발성 메모리 카드는 MultiMediaCard(MMC)이다. 대략 동일 크기를 가진 MMC 카드의 변형된 버전은 추후 보안 디지털(SD)카드이다. 표준들 또는 사양들은 메모리 카드들로서 사용하는데 적당한 이들 및 다른 전자 카드들에 존재한다. 몇몇의 이들 표준들은 임의의 수의 공개물에 사용할 수 있고, 다른 것들은 카드들을 사용하기 위하여 형성된 어소시에이션들의 멤버들에 이용된다.
플래시 EEPROM 시스템들은 다수의 애플리케이션들, 특히 컴퓨터 시스템 또는 호스트 시스템과 제거 가능하게 접속된 밀봉된 카드로 패키지될 때 적용된다. 현재 상업적 메모리 카드 포맷들은 Personal Computer Memory Card International Association(PCMCIA), CompactFlash(CF®), MultiMediaCard(MMC®) 및 Secure Digital(SD) 포맷을 포함한다. 이들 카드들의 하나의 공급자는 이 출원인의 양수인 이 쌘디스크 코포레이션이다. 상기 카드들이 사용되는 컴퓨터 시스템 또는 호스트 시스템들은 퍼스널 컴퓨터들, 노트북 컴퓨터들, 핸드 헬드 컴퓨팅 디바이스들, 카메라들, 오디오 재생 디바이스들, 및 등등을 포함한다. 플래시 EEPROM 시스템들은 또한, 호스트 시스템들에서 구현된 대량 저장소로서 사용된다.
도 1(b)에 도시된 메모리 시스템은 이전에 언급된 카드 표준들 중 하나를 따르는 카드 같은 카드에 패키지되거나 컴퓨터 시스템의 일부로서 구현될 수 있다. 카드의 경우, 버스는 컴퓨터 시스템 또는 호스트 시스템 내의 상보적 소켓과 짝을 이루기 위한 카드상 외부 단말들에서 종료한다. 비록 하나의 제어기 칩 및 다중 메모리 칩들의 사용이 일반적이지만, 물론 이들 회로들을 결합하여 시스템에 대한 보다 작은 독립된 칩들을 사용하는 것이 경향이다.
다른 실시예에서, 컴퓨터 시스템(10)은 퍼스널 컴퓨터, 디지털 카메라, 개인 정보 단말기, 셀룰러 전화, 디지털 오디오 플레이어 또는 상기 비휘발성 메모리 시스템에 대한 필요성을 가진 다른 전자 시스템일 수 있다. 메모리 시스템(100)은 컴퓨터 시스템(10) 내에 구현되고, 따라서 컴퓨터 시스템의 일부이거나, 컴퓨터 시스템과 전기 및 기계적으로 제거 가능하게 접속된 카드 형태일 수 있다.
게다가, 시스템은 이산 기능 블록들에 의해 다양한 기능들이 수행되는 형태로 개시된다. 그러나, 임의의 하나 또는 그 이상의 이들 기능들은 임의의 하나 또는 그 이상의 이들 블록들의 기능들이 다양한 매체들에 저장된 소프트웨어 프로그램들을 운용하거나 펌웨어에 프로그램된 기능들을 가지는 하나 또는 그 이상의 적당하게 프로그램된 처리 장치들에 의해 실현된다.
본 발명의 다른 가능한 실행들에서, 메모리 모듈이 접속하는 버스는 예를 들어 SPI 버스, 1 비트 또는 4 비트 SD 카드 버스, MMC 버스, 또는 다른 버스일 수 있다. 유사하게, 호스트와 인터페이싱하는 모듈은 SD가 아니고, CF 또는 다양한 다른 포맷들일 수 있다.
게다가, 당업자는 핸드헬드 디바이스들, 멀티프로세서 시스템들, 마이크로프로세서 바탕 또는 프로그램 가능 소비자 전자제품들, 네트워크 PC들, 미니컴퓨터들, 메인프레임 컴퓨터들, 및 등등을 포함하는 다른 컴퓨터 시스템 구성들로 실행될 수 있다.
본 출원의 설명 중 어느 것도 임의의 특정 엘리먼트, 단계, 또는 기능이 청 범위에 포함되어야 하는 필수 엘리먼트인 것을 의미하는 것으로 판독돼서는 안된다: 특허 주제의 범위는 허용된 청구항들에 의해서만 정의된다. 게다가, 이들 청구항들 중 어느 것도 만약 정확한 단어들 "수단"이 분사 다음에 오지 않으면 35 USC 섹션(112)의 6 절을 호소하는 것으로 의도되지 않는다.
출원된 청구항들은 가능한 한 포괄적이고 주제는 고의적으로 양도되고, 공개되거나, 포기되지 않는다.
상술한 바와 같이, 본 발명은, 휴대용 전자 모듈에 대한 인터페이스와, 보다 구체적으로는 견고하게 미리 정의된 인터페이스에 기능성을 추가한 아키텍쳐를 제공하는데 사용된다.

Claims (43)

  1. 메모리 시스템의 제어기에 의해 상기 메모리 시스템을 위한 버스 타임아웃을 회피하기 위한 방법에 있어서,
    애플리케이션을 실행하기 위해 상기 메모리 시스템에 필요한 시간 기간이 상기 메모리 시스템을 위한 버스 타임아웃 기간을 초과하는지 결정하는 단계와;
    상기 시간 기간이 상기 메모리 시스템을 위한 버스 타임아웃 기간을 초과하는 것으로 결정되면,
    버스 타임아웃이 일어나지 않으면서 애플리케이션을 실행하는데 필요한 더미 데이터 블록의 수를 결정하는 단계와;
    상기 결정된 수를 상기 메모리 시스템 버스를 통해 컴퓨터 시스템에 전송하는 단계와;
    상기 메모리 시스템에서 상기 애플리케이션을 실행하는 시간 기간을 모니터링하는 단계와;
    상기 모니터링된 시간 기간이 상기 버스 타임아웃 기간을 초과하기 전에 상기 메모리 시스템이 상기 메모리 시스템과 상기 컴퓨터 시스템 사이에서 더미 데이터 블록을 전송하기 위해 준비된 상태임을 상기 컴퓨터 시스템에 표시하는 단계를
    포함하는, 버스 타임아웃을 회피하기 위한 방법.
  2. 제 1항에 있어서, 미리 결정된 수의 더미 데이터 블록에 대한 질문을 컴퓨터 시스템으로부터 수신하는 단계를 더 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  3. 제 1항에 있어서, 애플리케이션에 필요한 더미 데이터 블록의 수를 결정하는 단계는, 상기 메모리 시스템에서 상기 애플리케이션을 실행하는데 필요한 최대 시간으로 상기 메모리 시스템의 기입 버스 타임아웃 기간을 분할하는 단계를 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  4. 제 1항에 있어서, 애플리케이션에 필요한 더미 데이터 블록의 수를 결정하는 단계는, 상기 메모리 시스템에서 상기 애플리케이션을 실행하는데 필요한 최대 시간으로 상기 메모리 시스템의 판독 버스 타임아웃 기간을 분할하는 단계를 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  5. 제 1항에 있어서,
    상기 애플리케이션을 실행하기 위해 시간 기간을 모니터링하는 단계와;
    상기 버스 타임아웃 기간 전에 한 번에 상기 메모리 시스템의 제어기에 신호를 보내는 단계를
    더 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  6. 제 1항에 있어서, 상기 애플리케이션은, 저작권으로 보호되는 컨텐트의 자유 배포를 방지하는 디지털 컨텐트 보호 보안 프로세스(digital content protection security process)를 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  7. 제 1항에 있어서, 상기 버스 타임아웃 기간은, Personal Computer Memory Card International Association(PCMCIA), CompactFlash(CF®), MultiMediaCard(MMC®) 및 Secure Digital(SD) 중 하나로부터의 버스 타임아웃 기간을 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  8. 제 1항에 있어서, 상기 더미 데이터 블록은, 무시될 블록으로 상기 더미 데이터 블록을 식별하는 서명(signature)을 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  9. 메모리 시스템의 제어기에 의해 컴퓨터 시스템과 상기 메모리 시스템 간의 버스 타임아웃을 회피하기 위한 방법에 있어서,
    처리 작업(processing operation)이 완료되도록 실행하기 위한 시간 기간이 상기 메모리 시스템의 버스 타임아웃 기간을 초과하는지 결정하는 단계와;
    상기 처리 작업의 시간을 정하는 단계와;
    상기 버스 타임아웃 기간이 만료되고 상기 처리 작업이 완료되기 전에, 상기 메모리 시스템과 상기 컴퓨터 시스템 사이에서 더미 데이터 블록을 전송하기 위해 메모리 시스템 버스가 준비된 상태임을 상기 컴퓨터 시스템에 표시하는 단계를
    포함하는, 버스 타임아웃을 회피하기 위한 방법.
  10. 제 9항에 있어서, 더미 데이터 블록을 전송하기 위해 상기 메모리 시스템 버스가 준비된 상태임을 상기 컴퓨터 시스템에 표시하는 단계는, 버스 타임아웃 기간을 회피하기 위해 상기 컴퓨터 시스템과 상기 메모리 시스템 사이에서 전송될 다수의 데이터 블록을 표시하는 컴퓨터 시스템에 질문을 송신하는 단계를 포함하는, 버스 타임아웃을 회피하기 위한 방법.
  11. 제 10항에 있어서, 더미 데이터 블록의 수는 상기 시간 기간과 관련되어 있는, 버스 타임아웃을 회피하기 위한 방법.
  12. 제 10항에 있어서, 상기 더미 데이터 블록의 수는, 상기 버스 타임아웃 기간을 상기 처리 작업을 완료하도록 실행하기 위한 시간 기간으로 분할하여 결정되는, 버스 타임아웃을 회피하기 위한 방법.
  13. 제 9항에 있어서, 상기 버스 타임아웃 기간은, Personal Computer Memory Card International Association(PCMCIA), CompactFlash(CF®), MultiMediaCard(MMC®) 및 Secure Digital(SD) 중 하나로부터의 버스 판독 타임아웃 기간인, 버스 타임아웃을 회피하기 위한 방법.
  14. 메모리 시스템에 있어서,
    메모리 시스템 버스와;
    상기 메모리 시스템 버스와 통신하는 제어기를
    포함하고,
    상기 제어기는,
    애플리케이션을 실행하기 위해 상기 메모리 시스템에 필요한 시간 기간이 상기 메모리 시스템을 위한 버스 타임아웃 기간을 초과하는지 결정하고, 상기 제어기가, 상기 시간 기간이 상기 메모리 시스템을 위한 버스 타임아웃 기간을 초과하는 것으로 결정하면,
    버스 타임아웃이 일어나지 않으면서 애플리케이션을 실행하는데 필요한 더미 데이터 블록의 수를 결정하고,
    상기 결정된 수를 상기 메모리 시스템 버스를 통해 컴퓨터 시스템에 전송하며,
    상기 제어기에서 상기 애플리케이션을 실행하는 시간 기간을 모니터링하고,
    상기 모니터링된 시간 기간이 상기 버스 타임아웃 기간을 초과하기 전에 상기 메모리 시스템 버스가 상기 메모리 시스템과 상기 컴퓨터 시스템 사이에서 더미 데이터 블록을 전송하기 위해 준비된 상태임을 상기 컴퓨터 시스템에 표시하는, 메모리 시스템.
  15. 제 14항에 있어서, 상기 제어기는, 미리 결정된 수의 더미 데이터 블록에 대한 질문을 컴퓨터 시스템으로부터 수신하는, 메모리 시스템.
  16. 제 14항에 있어서, 상기 제어기는, 상기 제어기에서 상기 애플리케이션을 실행하는데 필요한 최대 시간으로 상기 메모리 시스템의 기입 버스 타임아웃 기간을 분할하여 필요한 더미 데이터 블록의 수를 결정하는, 메모리 시스템.
  17. 제 14항에 있어서, 상기 애플리케이션을 실행하기 위해 시간 기간을 모니터하고 상기 버스 타임아웃 기간 전에 한 번에 상기 제어기에 신호를 보내기 위한 타이머(timer)를 더 포함하는, 메모리 시스템.
  18. 제 14항에 있어서, 상기 애플리케이션은, 저작권으로 보호되는 컨텐트의 자유 배포를 방지하는 디지털 컨텐트 보호 보안 프로세스(digital content protection security process)를 포함하는, 메모리 시스템.
  19. 제 14항에 있어서, 상기 제어기는, 상기 메모리 시스템에서 상기 애플리케이션을 실행하는데 필요한 최대 시간으로 상기 메모리 시스템의 판독 버스 타임아웃 기간을 분할하여 필요한 더미 데이터 블록의 수를 결정하는, 메모리 시스템.
  20. 제 14항에 있어서, 상기 버스 타임아웃 기간은, Personal Computer Memory Card International Association(PCMCIA), CompactFlash(CF®), MultiMediaCard(MMC®) 및 Secure Digital(SD) 중 하나로부터의 버스 타임아웃 기간을 포함하는, 메모리 시스템.
  21. 제 14항에 있어서, 상기 더미 데이터 블록은, 무시될 블록으로 상기 더미 데이터 블록을 식별하는 서명을 포함하는, 메모리 시스템.
  22. 컴퓨터 시스템과 메모리 시스템 사이에서 버스 타임아웃을 회피하기 위한 시스템에 있어서,
    메모리 시스템 버스와;
    상기 메모리 시스템 버스와 통신하고, 처리 작업을 완료하도록 실행하기 위한 시간 기간이 상기 메모리 시스템의 버스 타임아웃 기간을 초과할지 결정하는 제어기와;
    상기 버스 타임아웃 기간이 만료되고 상기 처리 작업이 완료되기 전에 한 번에 상기 제어기에 신호를 전송하고 상기 처리 작업의 시간을 정하는 타이머를
    포함하고,
    상기 제어기는, 상기 신호를 수신하면, 상기 메모리 시스템 버스가, 상기 처리 작업이 완료되기 전에, 상기 메모리 시스템과 상기 컴퓨터 시스템 사이에서 더미 데이터 블록을 전송하기 위해 준비된 상태에 있음을 상기 컴퓨터 시스템에 표시하는, 버스 타임아웃을 회피하기 위한 시스템.
  23. 제 22항에 있어서, 상기 제어기는, 버스 타임아웃 기간을 회피하기 위해 상기 컴퓨터 시스템과 상기 메모리 시스템 사이에서 전송될 다수의 데이터 블록을 표시하는 컴퓨터 시스템에 질문을 송신하는, 버스 타임아웃을 회피하기 위한 시스템.
  24. 제 23항에 있어서, 상기 더미 데이터 블록의 수는 상기 시간 기간과 관련되어 있는, 버스 타임아웃을 회피하기 위한 시스템.
  25. 제 23항에 있어서, 상기 더미 데이터 블록의 수는, 상기 처리 작업을 완료하도록 실행하기 위한 시간 기간으로 상기 버스 타임아웃 기간을 분할하여 결정되는, 버스 타임아웃을 회피하기 위한 시스템.
  26. 제 23항에 있어서, 상기 버스 타임아웃 기간은, Personal Computer Memory Card International Association(PCMCIA), CompactFlash(CF®), MultiMediaCard(MMC®) 및 Secure Digital(SD) 중 하나로부터의 버스 판독 타임아웃 기간인, 버스 타임아웃을 회피하기 위한 시스템.
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
KR1020097011295A 2006-12-04 2007-12-04 더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스 KR101276559B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/566,685 2006-12-04
US11/566,685 US7917719B2 (en) 2006-12-04 2006-12-04 Portable module interface with timeout prevention by dummy blocks
US61883906A 2006-12-31 2006-12-31
US11/618,839 2006-12-31
PCT/US2007/024797 WO2008070053A2 (en) 2006-12-04 2007-12-04 Portable module interface with timeout prevention by dummy blocks

Publications (2)

Publication Number Publication Date
KR20090095578A KR20090095578A (ko) 2009-09-09
KR101276559B1 true KR101276559B1 (ko) 2013-06-24

Family

ID=39492837

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097011295A KR101276559B1 (ko) 2006-12-04 2007-12-04 더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스

Country Status (6)

Country Link
EP (1) EP2104895B1 (ko)
JP (1) JP4682263B2 (ko)
KR (1) KR101276559B1 (ko)
CN (1) CN101589378B (ko)
TW (1) TWI343006B (ko)
WO (1) WO2008070053A2 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8516232B2 (en) * 2009-06-30 2013-08-20 Sandisk Technologies Inc. Method and memory device for performing an operation on data
CN107885622B (zh) * 2016-09-30 2021-03-09 伊姆西Ip控股有限责任公司 处理虚拟数据移动器(vdm)故障备援情况
CN106341488A (zh) * 2016-10-08 2017-01-18 深圳市云舒网络技术有限公司 一种基于tcmu虚拟块设备的网络存储后端超时处理方法
TWI659310B (zh) * 2018-01-04 2019-05-11 旺宏電子股份有限公司 儲存裝置操作方法及其應用其的儲存系統
US11409468B2 (en) 2020-06-03 2022-08-09 Western Digital Technologies, Inc. Storage system and method for using proactive device timeout information

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040079408A (ko) * 2001-12-10 2004-09-14 에멀럭스 디자인 앤드 매뉴팩처링 코포레이션 시스템 상호접속 버스 상에서의 지연 데이터 전송 추적

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57212535A (en) * 1981-06-25 1982-12-27 Nec Corp Terminal equipment having cut avoiding mechanism of logical communication channel
JPS59123361A (ja) * 1982-12-29 1984-07-17 Fujitsu Ltd インタフエ−ス制御方式
JPH0748758B2 (ja) * 1986-05-10 1995-05-24 カシオ計算機株式会社 デ−タ処理装置
JPH02196355A (ja) 1989-01-26 1990-08-02 Nec Corp 記憶処理システム
US5258952A (en) * 1990-12-14 1993-11-02 Sgs-Thomson Microelectronics, Inc. Semiconductor memory with separate time-out control for read and write operations
JP2972491B2 (ja) * 1993-07-09 1999-11-08 株式会社日立製作所 バス制御機構及び計算機システム
JP3648820B2 (ja) * 1995-12-07 2005-05-18 ソニー株式会社 通信制御方法及び電子機器
JP2001148717A (ja) * 1999-11-19 2001-05-29 Sharp Corp データサーバ装置
WO2004105021A1 (en) * 2003-05-20 2004-12-02 Koninklijke Philips Electronics N.V. Handling real-time write errors
JP4026069B2 (ja) * 2003-08-29 2007-12-26 サクサ株式会社 遠隔監視システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040079408A (ko) * 2001-12-10 2004-09-14 에멀럭스 디자인 앤드 매뉴팩처링 코포레이션 시스템 상호접속 버스 상에서의 지연 데이터 전송 추적

Also Published As

Publication number Publication date
TWI343006B (en) 2011-06-01
JP4682263B2 (ja) 2011-05-11
EP2104895B1 (en) 2014-02-12
TW200842584A (en) 2008-11-01
EP2104895A2 (en) 2009-09-30
WO2008070053A3 (en) 2008-08-21
EP2104895A4 (en) 2010-12-08
JP2010511934A (ja) 2010-04-15
CN101589378B (zh) 2014-02-12
CN101589378A (zh) 2009-11-25
WO2008070053A2 (en) 2008-06-12
KR20090095578A (ko) 2009-09-09

Similar Documents

Publication Publication Date Title
US7917719B2 (en) Portable module interface with timeout prevention by dummy blocks
KR101289581B1 (ko) 데이터 저장 장치에 대한 원격 서버로부터의 안전한 스캔을 위한 방법 및 장치
US7266640B2 (en) Memory card authentication system, capacity switching-type memory card host device, capacity switching-type memory card, storage capacity setting method, and storage capacity setting program
US9876797B2 (en) Controlling access to digital content
US8516232B2 (en) Method and memory device for performing an operation on data
US8082551B2 (en) System and method for sharing a trusted platform module
US20080163350A1 (en) Portable information security device
US8745304B2 (en) USB to SD bridge
KR101276559B1 (ko) 더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스
KR101548437B1 (ko) 휴대용 디바이스의 드라이버(들)를 휴대용 디바이스에 통합하는 방법 및 장치
JP2011519451A (ja) 周辺装置ロッキングメカニズム
US7890723B2 (en) Method for code execution
US20210279335A1 (en) System and method for providing security protection for fpga based solid state drives
JP2010527465A (ja) デジタルコンテンツへのアクセスを制御する方法およびシステム
US8479186B2 (en) Method for program code execution with memory storage controller participation
CN101627391B (zh) 用于控制对数字内容的存取的方法及***
US7890724B2 (en) System for code execution
TWM583978U (zh) 使用實體載具儲存數位憑證以進行線上交易之系統
Stavrou et al. Exploiting smart-phone USB connectivity for fun and profit
TWI767113B (zh) 使用實體載具儲存數位憑證以進行線上交易之系統及方法
CN112506426A (zh) 可将数据上链的数据储存装置
KR20120016182A (ko) Api 기반 디지털 콘텐츠 거래 시스템 및 방법
WO2008083168A1 (en) Method for code execution

Legal Events

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

Payment date: 20160517

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180516

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190515

Year of fee payment: 7