KR100726361B1 - 메모리 장치들과의 통신을 위한 시스템 및 방법 - Google Patents

메모리 장치들과의 통신을 위한 시스템 및 방법 Download PDF

Info

Publication number
KR100726361B1
KR100726361B1 KR1020050115352A KR20050115352A KR100726361B1 KR 100726361 B1 KR100726361 B1 KR 100726361B1 KR 1020050115352 A KR1020050115352 A KR 1020050115352A KR 20050115352 A KR20050115352 A KR 20050115352A KR 100726361 B1 KR100726361 B1 KR 100726361B1
Authority
KR
South Korea
Prior art keywords
interface
memory device
busy
ready
flash memory
Prior art date
Application number
KR1020050115352A
Other languages
English (en)
Other versions
KR20070003515A (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 KR20070003515A publication Critical patent/KR20070003515A/ko
Application granted granted Critical
Publication of KR100726361B1 publication Critical patent/KR100726361B1/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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types
    • 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
    • G06F13/16Handling requests for interconnection or transfer for access to memory 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 메모리 인터페이스를 포함하는 장치에 관한 것이다. 메모리 인터페이스는 데이터 인터페이스, 제1상태 머신 및 제2사태 머신을 포함한다. 제1상태 머신은 제1칩 선택 인터페이스 및 제1레디/비지 인터페이스를 포함한다. 제1상태 머신은 제1칩 메모리 장치가 데이터 인터페이스와 연결되어 있을 때, 제1칩 선택 인터페이스 및 제1레디/비지 인터페이스를 통해 제1메모리 장치를 각각 선택 및 모니터하도록 구성된다. 제2상태 머신은 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 포함한다. 제2상태 머신은 제1칩 메모리 장치가 데이터 인터페이스와 연결되어 있을 때, 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 통해 제2메모리 장치를 각각 선택 및 모니터하도록 구성된다.

Description

메모리 장치들과의 통신을 위한 시스템 및 방법{System and method for communicating with memory devices}
도 1 및 2는 데이터 처리 장치 구성요소들의 전형적 실시예들을 도시한 것이다.
도 3은 메모리 장치 액세스를 위한 전형적 타임라인을 도시한 것이다.
도 4는 도 1 및 도 2에 도시된 데이터 처리 장치들과 같은 데이터 처리 장치들에 의해 수행될 수 있는, 메모리 장치들의 전형적 액세스 방법을 도시한 것이다.
본 발명은, 일반적으로, 메모리 장치들과 통신하는 시스템 및 방법에 관한 것이다.
개인용 디지털 정보기기(PDA), MP3 플레이어, 휴대형 메모리 시스템, 고급형 셀 폰 시스템 및 카메라들과 같은 휴대형 기기들에 대한 소비자들의 수요가 늘어나고 있다. 플로피 디스크, 하드 드라이브, 및 광 드라이브들과 같은 전통적 비휘발성 메모리 저장 시스템들은, 기계적 불능, 과도한 중량, 큰 사이즈 및 높은 에너지 소비로 인해 휴대형 장치들에 사용하기가 일반적으로 부적절하다. 그 결과, 휴대 형 장치의 제조자들은 플래시 메모리 및 전기적으로 삭제 및 프로그램이 가능한 롬(EEPROM)과 같은 반도체 메모리 시스템으로 방향을 전환하고 있다.
그러나, 이러한 반도체 메모리 시스템은 데이터 프로세싱에 긴 지연 시간(latency, 레이턴시)을 가지는 경향이 있다. 통상적으로, 명령들과 어드레스들은 대략 나노 세컨드(nanoseconds) 대의 레이트로 이 반도체 메모리 시스템들에 전달될 수 있지만, 그 명령들과 어드레스들에 응하는 반도체 메모리의 데이터 처리는 보통 크게 길어져서, 거의 마이크로 세컨드 대의 시간을 요한다.
전통적 메모리 인터페이스들은 한 번에 한 반도체 메모리 시스템을 액세스하며, 그 반도체 메모리 시스템으로부터의 준비 신호를 기다리기 위해 멈춘다. 여러 개의 반도체 메모리 장치들에 액세스하는 메모리 인터페이스들에서조차 메모리 장치들에서으 동작들은 보통 한 번에 한 동작씩 수행되고, 인터페이스는 다른 동작을 시작하기 전에 각 동작의 완료시까지 대기한다. 예를 들어, 전통적 메모리 인터페이스들은 제1메모리에 한 페이지를 쓰고, 제2페이지를 제2메모리 장치에 쓰기 전에 그 제1메모리로의 쓰기 동작을 기다리면서 멈추게 될 것이다. 다른 예에서, 전통적 메모리 인터페이스들은 제2메모리 장치에 대한 블록 삭제 명령을 시작하기 전에 제1메모리 장치에서 블록 삭제 명령이 완료될 때까지 대기한다. 다른 전통적 시스템들에서, 모든 장치들에 대한 동작들은, 두 번째 동작들의 집합을 시작하기 전에 완료되어져야 한다.
이와 같이, 메모리 인터페이스와 직접 메모리 액세스 제어기 사이의 데이터 버스들 외에 메모리 인터페이스와 반도체 메모리 장치 사이의 데이터 버스들이, 메 모리 장치 데이터 처리 중에 늘어난 비동작 시간으로 인한 불리함을 겪을 수 있고, 이것은 이 데이터 버스들의 효율적 이용을 감소시키는 결과를 가져온다. 데이터 집중 동작들에 있어서, 특히 MP3 플레이어 및 카메라와 같은 장치들의 동작들에 있어서, 데이터 버스들을 통한 데이터 전송 레이트의 효율 감소가 장치의 성능 감소를 불러온다. 따라서, 메모리 장치와 데이터를 교환하는 개선된 시스템 및 방법이 요망되고 있다.
본 발명이 이루고자 하는 과제는, 메모리 장치와 데이터를 교환함에 있어 데이터 버스들의 효율적 사용을 가능하게 하는, 메모리 장치들과의 통신 방법 및 시스템을 제공하는 데 있다.
이하에서 첨부된 도면을 참조하여 본 발명을 상세히 설명할 것이다. 서로 다른 도면들에서 사용된 동일한 참조 부호들은 유사하거나 동일한 구성 요소를 나타낸다.
특정 실시예를 통해, 메모리 인터페이스를 포함하는 데이터 처리 장치가 개시된다. 메모리 인터페이스는 하나 이상의 반도체 메모리 장치들을 액세스하도록 구성된 데이터 인터페이스를 포함한다. 또, 메모리 인터페이스는 제1칩 선택 인터페이스 및 제1레디/비지(ready/busy) 인터페이스를 구비한 제1상태 머신을 포함한다. 메모리 인터페이스는 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 구비하는 제2상태 머신 역시 포함한다. 일 실시예에서, 제1칩 선택 인터페이스 및 제1레디/비지 인터페이스는 NAND 플래시 메모리 장치와 같은 제1메모리 장치에 연결된다. 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스는 제2NAND 플래시 메모리 장치와 같은 제2메모리 장치에 연결된다. 제1 및 제2메모리 장치들은 가령, 플레시 메모리 장치들과 같은, 같은 종류의 장치들일 수 있다.
또, 메모리 인터페이스를 포함하는 데이터 처리 장치는 제1내부 데이터 버스에 연결된 프로세서 코어 역시 포함할 수 있다. 제1내부 데이터 버스는 제2내부 데이터 버스에 연결되는 브리지(bridge)와 연결될 수 있다. 제2내부 데이터 버스가 메모리 인터페이스에 연결될 수 있다. 하나의 전형적 실시예에서, 브리지는 직접 메모리 액세스(DMA) 제어기를 포함할 수 있다. 제1상태 머신이 제1채널을 통해 DMA 제어기와 연결되고, 제2상태 머신이 제1채널 및 제2상태 머신을 통해 DMA 제어기와 연결될 수 있다. 다른 전형적 실시예에서, 스태틱(static) 램 (SRAM)과 같은 램이 제1내부 데이터 버스에 연결된다. 특정 실시예에서, 프로세서 코어, 브리지, 및 메모리 인터페이스는 한 칩 위에 시스템을 형성하도록, 단일 기판 위에 배치되며, 메모리 장치들은 그 칩 위의 메모리 인터페이스에 연결되는 인터페이스 핀들과 연결된다.
다른 전형적 실시예를 통해, 메모리 장치 액세스 방법이 개시된다. 이 방법은 제2플래시 메모리 장치가 비지(busy) 상태일 때 제1플래시 메모리 장치로 제1명령을 전송하는 단계를 포함한다. 제1플래시 메모리 장치 및 제2플래시 메모리 장치는 외부 데이터 인터페이스에 연결된다. 상기 명령 및 관련 어드레스들과 데이터에 응하여, 제1플래시 메모리 장치는 비지 상태로 들어간다. 이 방법은 제2플래 시 메모리 장치의 레디/비지 신호를 모니터링하고, 제1플래시 메모리 장치가 비지 상태이고 제2플래시 메모리 장치가 레디 상태일 때 제2플래시 메모리 장치로 제2명령을 전송하는 단계를 더 포함한다. 이 방법은, 또, 제1플래시 메모리 장치로부터의 레디/비지 신호를 모니터링하는 단계 및 그 레디/비지 신호에 기초해 DMA 제어기에 알리는 단계를 더 포함할 수 있다.
도 1은 대표 장치(100)의 전형적 실시예를 도시한 것이다. 장치(100)는 제1내부 데이터 버스에 연결된 프로세서(104)를 포함한다. 브리지(108)가 제1내부 데이터 버스(106) 및 제2내부 데이터 버스(110)에 연결된다. 메모리 인터페이스(114)가 제2내부 데이터 버스(110)에 연결된다. 한 특정 예에서, 제1내부 데이터 버스(106)는 ARM®AHB와 같은 고급형 고성능 버스(advanced high performance bus, AHB)이고, 제2내부 데이터 버스(110)는 주변 기기들을 액세스하기 위해 조정된 AHB와 같은 고급형 고속 주변 버스(Advanced high speed peripheral bus, APBH)이다.
하나의 전형적 실시예에서, 브리지(108)는 직접 메모리 액세스(DMA) 제어기(112)를 포함한다. DMA 제어기(112)는, 가령, 프로세서(104) 간섭 없이 멀티 페이지 동작을 처리하도록 구성된 것일 수 있다. 예를 들어, DMA 제어기(112)는 여러 페이지들을 읽기/쓰기하는 동작들을 자동으로 처리하는 브랜칭(branching) 기능을 가진 링크 서술자 기능을 이용할 수 있다.
장치(100)는 데이터 인터페이스(126) 및 제어 라인들(124)을 액세스하는 메모리 인터페이스(114)를 포함한다. 제어 라인들(124)은, 예를 들어, 명령 래치(latch) 인에이블(enable), 어드레스 래치 인에이블, 읽기 인에이블, 쓰기 인에이 블, 및 쓰기 금지 기능들과 관련된 라인들을 포함할 수 있다. 데이터 인터페이스(126)는, 예를 들어, 8 비트 데이터 인터페이스, 16 비트 데이터 인터페이스, 또는 32 비트 인터페이스일 수 있다. 하나의 전형적 실시예에서, 메모리 인터페이스(114)는 한 군의 메모리 인터페이스 상태 머신들(116, 118, 120, 및 122)을 포함한다. 메모리 인터페이스 상태 머신들(116, 118, 120, 및 122) 각각은 DMA 제어기(112)를 액세스하는 고유 채널(144, 146, 148, 150)을 포함한다. 또, 메모리 인터페이스 상태 머신들(116, 118, 120, 및 122) 각각은 개개의 칩 선택 인터페이스 및 개개의 레디/비지 인터페이스를 포함한다. 예를 들어, 메모리 인터페이스 상태 머신(116)은 칩 선택 인터페이스(128) 및 레디/비지 인터페이스(130)를 포함한다. c추가 예에서, 메모리 인터페이스 상태 머신들(118, 120, 및 122)은 각자 칩 서택 인터페이스(132, 136, 및 140)과 레디/비지 인터페이스(134, 138, 및 142)를 포함한다. 개개의 상태 머신들 각자의 칩 선택 및 레디/비지 인터페이스들은 각각 NAND나 NOR 플래시 메모리 장치들과 같은 독립된 외부 메모리 장치들과 결부될 수 있다. 플래시 메모리 장치들 각각은 또한 공유된 제어 라인들(124) 및 공유된 데이터 라인들(126)과 연결될 수도 있다.
한 전형적 실시예에서, 메모리 인터페이스(114)는 플래시 메모리 장치들과 같이, 결부된 주변 장치들과 관련된 제어 정보를 저장하도록 구성된 레지스터들을 포함한다. 그 레지스터들은, 가령, 데이터 홀드 시간, 어드레스 셋 업(setup) 시간, 및 데이터 셋 업 시간과 같은 제어 정보를 저장할 수 있다. 이 시간들은 클록 사이클의 개수로서 표현될 수 있다. 이와 달리, 레지스터들이 DMA와 함께 포함될 수도 있다.
동작시, 프로세서 코어(104)는 데이터 버스(106)를 통해, 링크된 서술자들의 집합을 DMA 제어기(112)로 제공한다. 그 링크 서술자들에 기초해, DMA 제어기(112)는 메모리 인터페이스 상태 머신들을 통해 개개의 메모리 장치들을 액세스한다. 예를 들어, 제1플래시 메모리 장치에 액세스하기 위해, DMA 제어기(112)는 메모리 인터페이스 상태 머신(116)과 상호 동작할 수 있다. 메모리 인터페이스 상태 머신(116)은 칩 인에이블(128)을 통해 제1플래시 메모리 장치를 인에이블시킨다. 메모리 인터페이스(114)는 제어 라인들(124) 및 데이터 라인들(126)을 통해 명령 및 어드레스를 제1플래시 메모리 장치로 보낼 수 있다. 통상적으로, 제1메모리 장치는 그 명령, 어드레스, 및 옵션 사항인 데이터에 응하여 비지 상태로 들어간다. 예를 들어, 그 명령은 데이터가 읽혀질 어드레스가 뒤따르는 읽기 명령일 수 있다. 다른 전형적 실시예에서, 그 명령은 데이터가 저장될 어드레스 및 그 어드레스에 저장될 데이터가 뒤따르는 쓰기 명령일 수 있다. 이와 달리, 블록 삭제 명령들과 같은 다른 명령들이 제1메모리 장치로 보내질 수 있다. 메모리 인터페이스 상태 머신(116)은 레디/비지 인터페이스(130)를 통해 제1메모리 장치의 레디/비지 상태를 모니터한다.
또, DMA 제어기(112)가 공유 제어 라인들(124) 및 데이터 라인들(126)에 연결된 제2플래시 메모리 장치를 액세스할 수 있다. 한 전형적 실시예에서, DMA 제어기(112)는 제1메모리 장치가 비지 상태인 동안 제2메모리장치에 액세스한다. 통상적으로 명령, 어드레스, 데이터 전송 레이트들은 약 나노 초 단위대인 한편, 메 모리 장치들 내에서의 내부적 데이터 처리와 관련된 비지 상태들은 마이크로 초 단위대를 유지한다. 따라서, 명령들, 어드레스들 및 데이터는 하나의 플래시 메모리 장치가 비지인 동안에 여러 플리시 메모리 장치들로 전송될 수 있다. 일례로서, 메모리 인터페이스 상태 머신(118)이 칩 인에이블 인터페이스(132)를 통해 제2메모리 장치를 인에이블시킬 수 있고, 메모리 인터페이스(114)가 제어 라인들(124) 및 데이터 라인들(126)을 통해 명령들, 어드레스들 및 데이터를 제공할 수 있다. 그 결과, 제2플래시 메모리 장치가 비지 상태로 들어가고 메모리 인터페이스 상태 머신(118)에 의해 레디/비지 인터페이스(134)를 통해 모니터링된다. 마찬가지로, DMA 제어기(112)는 메모리 인터페이스 상태 머신들(120 및 122)을 통해 각각 제3 및 제4메모리 장치들을 액세스할 수 있다.
메모리 장치들 중 하나가 레디 상태로 진입할 때, 관련 메모리 인터페이스 상태 머신이 DMA 제어기(112)로 인터럽트 요청을 전송할 것이다. 예를 들어, 제1플래시 메모리 장치가 데이터 처리를 끝낼 때, 메모리 인터페이스 상태 머신(116)이 DMA 제어기(112)로 인터럽트 요청을 전송할 것이다. DMA 제어기(112)는 다른 플래시 메모리 장치들이 비지인 동안 제1플래시 메모리와 통신할 수 있다. 이와 같이, DMA 제어기(112)는 독립적으로 개별 메모리 장치들의 상태들을 모니터하고 한 메모리 장치의 처리 주기 중에 둘 이상의 메모리 장치를 액세스함으로써 여러 페이지 동작들을 수행할 수 있다.
특정 실시예에서, 프로세서(104), 브리지(108), 및 메모리 인터페이스(114)가 공통 기판(102) 위에 배치된다. 예를 들어, 프로세서(104), 브리지(108), 및 메모리 인터페이스(114)는 "한 칩 위의 시스템, system on a chip"을 형성할 수 있다. 여러 메모리 장치들이 그 칩 위에 제공된 핀들을 통해 메모리 인터페이스(114)와 연결될 수 있다. 예를 들어, 제어 인터페이스(124)가 명령 래치 인에이블 및 어드레스 래치 인에이블 핀들과 같은 제어 핀들을 포함할 수 있다. 데이터 인터페이스(126)는, 가령, 다수의 데이터 핀들을 포함할 수 있고, 칩 선택 인터페이스들과 레디/비지 인터페이스들 각각이 각자의 핀들을 포함할 것이다. 특정 예에서, 하나의 NAND 플래시 메모리 장치가 메모리 인터페이스의 각 상태 머신에 대한 메모리 인터페이스에 연결될 수 있다. 다른 실시예에서, 이 구성 요소들은 별개의 기판들 위에 생성될 수도 있다.
도 2는 다른 전형적 장치(200)의 예를 도시한 것이다. 장치(200)는 AHB 데이터 버스(206)와 연결된 ARM® 프로세서 코어(202)를 포함한다. 또, 스태틱 램(SRMA)램과 같은 램(204)이 AHB 데이터 버스(206)에 연결될 것이다. 브리지(210)가 AHB 데이터 버스(206)와 APBH 데이터 버스(212) 사이에 제공된다. 브리지(210)는 예를 들어, 공유 DMA 제어기(214)를 포함한다. 또, 브리지(210)는 공유 DMA 제어기(214)와 연결된 AHB 슬레이브(216)와, APBH 마스터(220)를 포함한다. AHB 마스터(218)가 AHB 데이터 버스(206) 및 공유 DMA 제어기(214)에 연결된다.
APBH 데이터 버스(212)가 범용 메모리 인터페이스(GPMI)(222)와 연결된다. 한 전형적 실시예에서, GPMI(222)는 APBH 데이터 버스(212)에 액세스 가능한 데이터 레지스터(미도시)를 포함한다. 데이터 레지스터는 상태 머신들과 함께 메모리 장치들과의 데이터 전송에 사용될 수 있다. 특정 실시예에서, 데이터 레지스터는 비트들의 집합을 포함하는데, 이들 모두나 그 부분집합들이 특정 시간에 데이터를 전송하는데 사용될 수 있다. 예를 들어, 데이터 레지스터는 32 비트를 포함하여 32 비트 모드, 16 비트 모드, 또는 8 비트 모드로 동작할 수 있다.
한 전형적 실시예에서, GPMI(222)는 NAND 플래시 메모리 장치와 같은 외부 플래시 메모리 장치들로의 인터페이스를 제공한다. 특정 실시예에서, GPMI(222)가 같은 타입으로 된 일군의 메모리 장치들에 대한 액세스를 지원할 수 있다. 예를 들어, 그 일군의 메모리 장치들은 NAND 플래시 메모리 장치들과 같은 플래시 메모리 장치들의 집합일 수 있다.
특정 실시예에서, GPMI(222)는 GPMI 상태 머신들(226, 228, 230, 및 232)의 집합을 포함한다. GPMI 상태 머신들(226, 228, 230, 및 232) 각각은 칩 선택 인터페이스 및 레디/비지 인터페이스를 포함한다. 또, GPMI 상태 머신(226, 228, 230, 및 232)들 각각은 공유 DMA 제어기(214)에 대한 개별 채널을 포함한다. GPMI 상태 머신들(226, 228, 230, 및 232) 각각의 칩 선택 및 레디/비지 인터페이스들은 GPMI 핀 중재 유닛(234) 및 GPMI 핀 상태 머신(236)을 통과하여 범용 입/출력(GPIO) 핀 멀티플렉서(224)와 인터페이스 하도록 된다. 개별 플래시 메모리 장치들이 GPIO 핀 멀티플렉서(224)에 연결된 핀들과 연결될 수 있다.
또, 시스템(200)은 클록 (HCLK) 신호와 GPMI 클록 (GPMICLK) 신호를 생성하는 시스템 클록 발생기(208)를 포함할 수 있다. GPMCLK 신호는 플래시 입력/출력의 타이밍 기준으로서 사용될 수 있다. 상용의 플래시 메모리 장치들이 서로 다른 타이밍 요건들을 가지기 때문에, GPMICLK 신호는 각각의 어플리케이션에 맞게 조정 될 수 있다. 실제 읽기/쓰기 스트로브(strobe) 타이밍 패러미터들은 레지스터 관련정보(register description)에서 조정될 수 잇다. 서로 다른 클록 신호들을 이용하여, 상태 머신들과 플래시 입/출력은 별도의 클록 레이트들로 동작할 수 있다.
도시된 것과 같이, GPMI(222)는 각각이 독립적인 레디/비지 시호들을 갖는 네 개의 칩 선택까지를 지원한다. NAND나 NOR 플래시 메모리 장치들과 같은 플래시 메모리 장치들은 공유 데이터 라인들 및 제어 라인들에 연결될 수 있다. 따라서, GPMI(222)는 주어진 시간에 하나의 메모리 장치와 활발하게 통신할 수 있다. 그러나, 각각의 메모리 장치들은 내부적 읽기, 쓰기 또는 삭제 동작들을 동시에 수행할 수 있다.
한 특정 실시예에서, DMA 제어기(214)는 ARM® 코어(202)에 의한 중재 없이 정상적인 플래시 액세스 기능들을 수행할 수 있다. 통상적 플래시 메모리 장치들은 다중 페이지 읽기/쓰기 명령들을 지원하지 않지만, GPMI(222) 및 DMA 제어기(214)는 프로세서 개입 없이 다중 페이지 동작을 처리할 수 있다. 한 전형적 실시예에서, DMA 제어기(214)는 브랜칭 기능을 갖는 링크된 서술자 함수를 이용하여, 자동으로 다중 페이지 읽기/쓰기를 처리한다.
도 3은 제1플래시 메모리 장치가 비지인 동안 명령들과 어드레스들이 제2플래시 메모리 장치로 전송되는 타이밍도를 도시한다. 예를 들어, 제1칩 서택이 제1플래시 메모리 장치를 동작시키고 명령들 및 어드레스들의 제1집합이 제1플래시 메모리 장치로 전송된다(302). 쓰기 동작의 경우, 데이터도 제1플래시 메모리 장치로 전송된다(304). 명령 및 어드레스에 응하여, 제1플래시 메모리 장치는 비지 상 태로 진입한다(306). 비지 상태는 보통 명령들, 어드레스들 및 데이터를 전송하는 시간(보통 나노 초 단위) 보다 훨씬 더 길다(마이크로 초 단위). 제1플래시 메모리 장치와 결부된 제1상태 머신은 그 플래시 메모리 장치가 비지 상태인 동안 칩 선택의 선택된 상태를 유지하고, 플래시 메모리 장치의 레디/비지 신호를 모니터한다.
제1플래시 메모리 장치가 비지 상태인 동안, 제2플래시 메모리 장치가 제2메모리 인터페이스 상태 머신을 통해 선택될 수 있다. 제2플래시 메모리 장치는 제2메모리 인터페이스 상태 머신의 칩 선택 인터페이스를 이용하여 인에이블될 수 있다. 명령들, 어드레스들, 및 옵션 사항인 데이터가 제2플래시 메모리 장치로 전송될 수 있다(312 및 314). 이와 같이, 메모리 인터페이스는 제1칩 선택 및 제2칩 선택이 작동중이고 제1레디/비지 인터페이스가 비지 상태인 동안 공유 제어 및 데이터 인터페이스들을 통해 제2플래시 메모리 장치로 명령들, 어드레스들 및 옵션 사항인 데이터를 전송할 수 있다. 이에 응하여, 제2플래시 메모리 장치가 비지 상태로 진입하며(316), 그것은 제2메모리 인터페이스 상태 머신에 의해 모니터링된다.
뒤 이어, 제1플래시 메모리 장치가 레디 상태로 들어간다(310). 그에 응하여, 제1메모리 인터페이스 상태 머신은 DMA 제어기로 제1플래시 메모리 장치의 상태를 통지할 수 있다. 예를 들어, 제1메모리 인터페이스 상태 머신은 DMA 제어기로 인터럽트 요청을 전송할 수 있다. 읽기 명령의 경우, 데이터가 제1플래시 메모리 장치로부터 읽혀질 것이다. 이와 같이, 데이터 처리 장치는 이전에 액세스된 NAND 플래시 메모리 장치들이 비지 상태인 동안, 명령들, 어드레스들, 및 데이터를 옵션사항으로서 전송할 수 있다.
도 4는 NAND 플래시 메모리 장치와 같은 외부 메모리 장치들을 액세스하는 전형적 방법을 도시한 것이다. 도시한 바와 같이, 이 방법(400)은 한 명령을 제1메모리 장치로 전송하는 단계를 포함한다(402 단계). 또한 이 방법은 제1메모리 장치로 어드레스를 전송하는 단계 역시 포함한다(404 단계). 명령의 성격에 따라, 시스템이 제1메모리 장치와 데이터를 주고 받을 수 있다(406 단계). 예를 들어, 그 명령이 쓰기 명령일 때, 저장될 제1메모리 장치로 데이터가 전송될 것이다.
명령 및 어드레스에 응하여, 제1플래시 메모리 장치는 비지 상태로 진입한다. 옵션사항으로서, DMA 제어기가 제2메모리 인터페이스 상태 머신을 통해 제2메모리 장치를 인에이블시킨다. 예를 들어, 제2메모리 인터페이스 상태 머신은 제2메모리 장치의 레디/비지 신호를 모니터하여 제2메모리 장치가 비지 상태로 진입했는지, 아니면 레디 상태로 있는지를 판단한다(407 단계). 제2메모리 장치가 레디 상태이면, 제2메모리 인터페이스 상태 머신은 제2플래시 메모리 장치에 연결된 제2칩 선택을 작동시키고, 그에 따라 제2메모리 장치를 인에이블한다. 제2메모리 장치로 한 명령이 보내지고(408 단계), 어드레스 및 옵션사항인 데이터가 제2메모리 장치로 보내질 수 있다(410 단계). 그 결과, 제2메모리 장치는 비지 상태로 진입한다.
검색, 저장, 또는 삭제를 위해 플래시 메모리의 한 위치를 액세스하는 것과 같은 데이터 처리가 이뤄진 후, 제1메모리 장치는 레디 상태로 들어간다. 제1상태 머신이 제1메모리 장치의 레디/비지 신호를 모니터하여 제1메모리 장치가 레디 상태로 진입할 때를 판단한다(411 단계). 특정 실시예에서, 제2메모리는, 제1상태 머신이 제1메모리 장치가 레디 상태로 진입했다고 판단할 때 비지 상태로 될 것이다. 제1메모리 장치로 전송된 제1명령의 성격에 따라, 부가 데이터가 제1메모리 장치로 보내질 수 있다(412 단계). 예를 들어, 제1메모리 장치로 전송된 명령 및 어드레스가 읽기 명령과 관련된 것일 때, 데이터가 제1메모리 장치로부터 읽혀질 것이다. 제1메모리 장치와의 통신 중에 제2메모리 장치는 비지일 것이다. 제1 및 제2메모리 장치들의 레디/비지 신호들을 모니터하는 것은, 하나 이상의 다른 방법 프로세스들과 동시에 수행될 수 있다.
제1메모리 장치로부터의 레디 신호에 응하여, 제1상태 머신이 DMA 제어기로 인터럽트 요청과 같은 신호를 전송할 수 있다. 또, 제1상태 머신은 타임아웃 카운터를 포함하여, 제1메모리 장치가 정해진 시간(즉, 타임아웃에 따라) 안에 레디 신호를 리턴하지 않게 될 때 DMA 제어기로 신호를 전송할 수 있다. 에러가 난 경우, DMA 제어기는 대안 서술자로 건너갈 것이다.
이와 같이, 같은 데이터 및 제어 인터페이스들에 연결된 메모리 장치들의 상태는 독자적으로 결정될 수 있다. 데이터 및 제어 인터페이스들은 메모리 장치가 레디 상태로 진입할 때, 그 데이터 및 제어 인터페이스들에 연결된 다른 메모리 장치들의 상태와 무관하게, 메모리 장치들 각각과 통신하는데 사용될 수 있다.
상술한 메모리 인터페이스들의 특정 실시예들은 한 칩 위의 시스템 안에 구현될 수 있다. 한 칩 상의 시스템은 MP3 플레이어, PDA, 또는 고급형 셀룰라 전화 기와 같은 휴대형 장치 안에 포함될 수 있다. 특정 실시예에서, 그 칩은 상술한 메모리 인터페이스를 실시하는 메모리 인터페이스들 가운데 적어도 하나를 포함하는 둘 이상의 메모리 인터페이스를 포함한다. 따라서, 여러 플래시 메모리 장치들이 여러 상태 머신들을 포함하는 한 메모리 인터페이스에 연결되는 반면, 다른 메모리 장치들은 다른 메모리 인터페이스들과 연결될 것이다. 특정 예에서, 여러 상태 머신들을 포함하는 한 메모리 인터페이스는 고급형 기술 부착(ATA) 메모리 장치들과 같은 다른 유형의 메모리 장치들에 연결되기 알맞게 조정될 수 있다.
상술한 사항들은 예로서 고려되는 것으로, 반드시 거기에 한정되는 것은 아니기 때문에, 첨부된 청구항들은 본 발명의 진정한 범주 안에 들어가는 상술한 사항의 변형예, 개량예, 및 기타 실시예들 모두를 커버하도록 의도된다. 따라서, 법이 허용하는 최대한, 본 발명의 범위는 이하의 청구항들과 그 등가적 사항들에 대한 최대 허용 가능한 해석에 따라 판단되어야 하며, 상술한 설명에 한정되어서는 안된다.
본 발명에 의해, 메모리 장치와 데이터를 교환함에 있어 데이터 버스들의 효율적 사용이 가능하게 된다.

Claims (22)

  1. 메모리 인터페이스를 포함함을 특징으로 하는 장치에 있어서,
    상기 메모리 인터페이스는,
    데이터 인터페이스;
    제1칩 선택 인터페이스 및 제1레디/비지(ready/busy) 인터페이스를 포함하고, 제1메모리 장치가 상기 데이터 인터페이스와 연결되어 있을 때, 상기 제1칩 선택 인터페이스 및 제1레디/비지 인터페이스를 통해 각각 상기 제1메모리 장치를 선택 및 모니터하도록 구성된 제1상태 머신; 및
    제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 포함하고, 제2메모리 장치가 상기 데이터 인터페이스와 연결되어 있을 때, 상기 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 통해 각각 상기 제2메모리 장치를 선택 및 모니터하도록 구성된 제2상태 머신을 포함함을 특징으로 하는 장치.
  2. 제1항에 있어서,
    상기 제1 및 제2메모리 장치들을 제어하도록 구성된 제어 인터페이스를 더 포함함을 특징으로 하는 장치.
  3. 제1항에 있어서,
    직접 메모리 액세스(DMA) 제어기를 더 포함하고,
    상기 제1상태 머신은 상기 DMA 제어기로의 제1채널을 포함하고, 제2상태 머신은 상기 DMA 제어기로의 제2채널을 포함함을 특징으로 하는 장치.
  4. 제3항에 있어서, 상기 DMA 제어기는 상기 메모리 인터페이스를 통해 다중 페이지 동작을 수행하도록 구성됨을 특징으로 하는 장치.
  5. 제1항에 있어서, 상기 메모리 인터페이스는 고급형 고속 주변 장치 버스에 액세스할 수 있음을 특징으로 하는 장치.
  6. 제1항에 있어서, 상기 제1메모리 장치는 상기 제1칩 선택 인터페이스 및 제1레디/비지 인터페이스와 연결된 제1플래시 메모리 장치이고, 상기 제2메모리 장치는 상기 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스와 연결된 제2플래시 메모리 장치임을 특징으로 하는 장치.
  7. 제1항에 있어서, 상기 메모리 인터페이스는, 제3칩 선택 인터페이스 및 제3레디/비지 인터페이스를 구비하는 제3상태 머신을 더 포함함을 특징으로 하는 장치.
  8. 제1항에 있어서,
    상기 제1 및 제2상태 머신들과 연결된 중개(arbitration) 회로를 더 포함함 을 특징으로 하는 장치.
  9. 제8항에 있어서,
    상기 데이터 인터페이스 및 상기 중개 회로와 연결된 핀(pin) 상태 머신을 더 포함함을 특징으로 하는 장치.
  10. 메모리 액세스 방법에 있어서,
    제1플래시 메모리 장치 및 제2플래시 메모리 장치가 데이터 인터페이스에 연결되어 있을 때, 제2플래시 메모리 장치가 비지 상태이면 제1플래시 메모리 장치에 제1명령을 전송하고, 상기 제1명령에 응하여 제1플래시 메모리 장치가 비지 상태로 들어가는 단계;
    상기 제2플래시 메모리 장치의 레디/비지 신호를 모니터하는 단계; 및
    제1플래시 메모리 장치가 비지 상태이고 제2플래시 메모리가 레디 상태일 때, 제2플래시 메모리 장치로 제2명령을 전송하는 단계를 포함함을 특징으로 하는 메모리 액세스 방법.
  11. 제10항에 있어서,
    상기 제1플래시 메모리 장치의 비지 상태를 모니터하는 단계를 더 포함함을 특징으로 하는 메모리 액세스 방법.
  12. 제11항에 있어서,
    상기 제1플래시 메모리 장치가 레디 상태로 들어간 데 반응하여, 제1채널을 통해 직접 메모리 액세스(DMA) 제어기로 신호를 보내는 단계를 더 포함함을 특징으로 하는 메모리 액세스 방법.
  13. 제11항에 있어서,
    상기 제2플래시 메모리 장치의 레디/비지 신호에 따라, 제2채널을 통해 직접 메모리 액세스(DMA) 제어기로 신호를 보내는 단계를 더 포함함을 특징으로 하는 메모리 액세스 방법.
  14. 제10항에 있어서,
    상기 제1플래시 메모리 장치가 비지 상태일 때, 상기 데이터 인터페이스를 통해 제2플래시 메모리 장치와 데이터를 통신하는 단계를 더 포함함을 특징으로 하는 메모리 액세스 방법.
  15. 제10항에 있어서,
    상기 제1플래시 메모리 장치 및 제2플래시 메모리 장치가 각자 비지 상태이고, 제3플래시 메모리 장치가 상기 데이터 인터페이스에 연결되어 있을 때, 상기 제3플래시 메모리 장치로 제3명령을 전송하는 단계를 더 포함함을 특징으로 하는 메모리 액세스 방법.
  16. 프로세싱 코어;
    상기 프로세싱 코어에 액세스 가능한 제1내부 데이터 버스;
    제2내부 데이터 버스;
    상기 제1내부 데이터 버스 및 제2내부 데이터 버스에 액세스할 수 있고, 직접 메모리 액세스(DMA) 제어기를 포함하는 브리지; 및
    상기 제2데이터 버스에 액세스할 수 있는 메모리 인터페이스를 포함함을 특징으로 하고,
    상기 메모리 인터페이스는, 데이터 인터페이스; 제어 인터페이스; 제1칩 선택 인터페이스 및 제1레디/비지(ready/busy) 인터페이스를 포함하고, 제1메모리 장치가 상기 데이터 인터페이스 및 제어 인터페이스와 연결되어 있을 때, 상기 제1칩 선택 인터페이스 및 제1레디/비지 인터페이스를 통해 각각 상기 제1메모리 장치를 선택 및 모니터하도록 구성된 제1상태 머신; 및 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 포함하고, 제2메모리 장치가 상기 데이터 인터페이스 및 제어 인터페이스와 연결되어 있을 때, 상기 제2칩 선택 인터페이스 및 제2레디/비지 인터페이스를 통해 각각 상기 제2메모리 장치를 선택 및 모니터하도록 구성된 제2상태 머신을 포함함을 특징으로 하는 장치.
  17. 제16항에 있어서, 상기 제1상태 머신은 상기 DMA 제어기로의 제1채널을 포함하고, 제2상태 머신은 상기 DMA 제어기로의 제2채널을 포함함을 특징으로 하는 장 치.
  18. 제16항에 있어서, 상기 프로세싱 코어, 브리지, 및 메모리 인터페이스는 한 특정 기판 위에 배치됨을 특징으로 하는 장치.
  19. 제16항에 있어서,
    상기 제1내부 데이터 버스에 연결된 랜덤 액세스 메모리(RAM)를 더 포함함을 특징으로 하는 장치.
  20. 제16항에 있어서,
    상기 제1메모리 장치는 데이터 인터페이스, 제어 인터페이스, 제1칩 선택 인터페이스, 및 제1레디/비지 인터페이스와 연결된 제1플래시 메모리이고,
    상기 제2메모리 장치는 데이터 인터페이스, 제어 인터페이스, 제2칩 선택 인터페이스, 및 제2레디/비지 인터페이스와 연결된 제2플래시 메모리임을 특징으로 하는 장치.
  21. 프로세서 코어;
    상기 프로세서 코어에 액세스 가능한 내부 데이터 버스;
    상기 내부 데이터 버스에 액세스 가능한 직접 메모리 액세스 제어기; 및
    상기 직접 메모리 액세스 제어기와 액세스 가능한 메모리 인터페이스를 포함 하고,
    상기 메모리 인터페이스는,
    제1칩 선택 핀;
    제1레디/비지 핀;
    제2칩 선택 핀;
    제2레디/비지 핀;
    공유 제어 핀들의 집합; 및
    공유 데이터 핀들의 집합을 포함하고,
    제1플래시 메모리 장치가 제1칩 선택 핀, 제1레디/비지 핀, 공유 제어 핀들의 집합, 및 공유 데이터 핀들의 집합에 연결되고 제1 및 제2칩 선택 핀들이 동작 상태에 있고, 제2플래시 메모리 장치가 제2칩 선택 핀, 제2레디/비지 핀, 공유 제어 핀들의 집합, 및 공유 데이터 핀들의 집합에 연결 가능할 때 제2레디/비지 핀이 제2플래시 메모리 장치가 비지 상태임을 가리킬 때, 상기 메모리 인터페이스는 상기 공유 제어 핀들의 집합 및 공유 데이터 핀들의 집합을 통해 상기 제1플래시 메모리 장치와 통신하도록 구성됨을 특징으로 하는 장치.
  22. 제21항에 있어서, 상기 공유 제어 핀들의 집합은 어드레스 래치(latch) 인에이블(enable) 핀 및 명령 래치 인에이블 핀을 포함함을 특징으로 하는 장치.
KR1020050115352A 2005-06-30 2005-11-30 메모리 장치들과의 통신을 위한 시스템 및 방법 KR100726361B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/171,919 2005-06-30
US11/171,919 US7428603B2 (en) 2005-06-30 2005-06-30 System and method for communicating with memory devices via plurality of state machines and a DMA controller

Publications (2)

Publication Number Publication Date
KR20070003515A KR20070003515A (ko) 2007-01-05
KR100726361B1 true KR100726361B1 (ko) 2007-06-11

Family

ID=35601266

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050115352A KR100726361B1 (ko) 2005-06-30 2005-11-30 메모리 장치들과의 통신을 위한 시스템 및 방법

Country Status (6)

Country Link
US (1) US7428603B2 (ko)
KR (1) KR100726361B1 (ko)
CN (1) CN101133404B (ko)
GB (1) GB2427721B (ko)
TW (1) TWI315474B (ko)
WO (1) WO2007005046A2 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4996277B2 (ja) 2007-02-09 2012-08-08 株式会社東芝 半導体記憶システム
KR101440107B1 (ko) 2008-01-28 2014-09-12 삼성전자주식회사 다중 코어 시스템에서 접근 시간에 기초한 메모리 관리방법 및 장치
US8127153B2 (en) * 2008-07-29 2012-02-28 Oracle America, Inc. Memory power profiling
US8074033B1 (en) * 2009-01-12 2011-12-06 Ixys Ch Gmbh Cooperating memory controllers that share data bus terminals for accessing wide external devices
US20110093099A1 (en) * 2009-10-16 2011-04-21 Newport Controls Controller system adapted for spa
CN101989191B (zh) * 2010-10-22 2014-05-14 中国航天科技集团公司第九研究院第七七一研究所 一种多Ready输入中央处理器的实现方法
CN102521180B (zh) * 2011-12-02 2014-10-22 百利通科技(扬州)有限公司 一种多通道实时直读存储器结构
US9164936B2 (en) * 2012-12-31 2015-10-20 Silicon Laboratories Inc. System and method for regulating direct memory access descriptor among multiple execution paths by using a link to define order of executions
GB2520729A (en) * 2013-11-29 2015-06-03 Ibm Data processing apparatus and method
JP2015197859A (ja) * 2014-04-02 2015-11-09 株式会社東芝 メモリコントローラ、半導体記憶装置、およびメモリコントローラの制御方法
KR102291639B1 (ko) * 2015-07-13 2021-08-20 에스케이하이닉스 주식회사 레디 비지 신호를 출력하는 반도체 메모리 장치 및 그것을 포함하는 메모리 시스템
KR102554416B1 (ko) * 2016-08-16 2023-07-11 삼성전자주식회사 메모리 장치의 내부 상태 출력 장치 및 이를 적용하는 메모리 시스템
US10621117B2 (en) 2017-06-15 2020-04-14 Micron Technology, Inc. Controlling memory devices using a shared channel
KR102543177B1 (ko) 2018-03-12 2023-06-14 삼성전자주식회사 고 대역폭 메모리 장치 및 이 장치를 포함하는 시스템 장치
US10996885B2 (en) 2018-03-12 2021-05-04 Samsung Electronics Co., Ltd. High bandwidth memory device and system device having the same
US10877766B2 (en) 2018-05-24 2020-12-29 Xilinx, Inc. Embedded scheduling of hardware resources for hardware acceleration
CN108932961A (zh) * 2018-07-20 2018-12-04 江苏华存电子科技有限公司 一种利用闪存引脚提升反应速率方法
US10705993B2 (en) * 2018-11-19 2020-07-07 Xilinx, Inc. Programming and controlling compute units in an integrated circuit
KR20200109682A (ko) * 2019-03-14 2020-09-23 에스케이하이닉스 주식회사 메모리 시스템, 메모리 장치 및 그 동작 방법
CN112069085B (zh) 2019-06-10 2023-06-02 苏州库瀚信息科技有限公司 双模式闪存控制器和双模式存储器通信的***、方法
US11386034B2 (en) 2020-10-30 2022-07-12 Xilinx, Inc. High throughput circuit architecture for hardware acceleration
US11983128B1 (en) * 2022-12-16 2024-05-14 Amazon Technologies, Inc. Multidimensional and multiblock tensorized direct memory access descriptors

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960025071A (ko) * 1994-12-30 1996-07-20 구자홍 이중 채널 직접 메모리 액세스(dma) 전송 방법
KR19980081499A (ko) * 1997-04-17 1998-11-25 모리시다요이치 메모리 내장 데이터 처리장치 및 처리시스템
KR19990023279A (ko) * 1997-08-02 1999-03-25 엠. 제이. 엠. 반캄 인터페이스를 구비한 통신 시스템
JP2001092772A (ja) 1999-07-16 2001-04-06 Texas Instr Inc <Ti> 同期固定レイテンシループを使用するデータバス

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5828856A (en) 1994-01-28 1998-10-27 Apple Computer, Inc. Dual bus concurrent multi-channel direct memory access controller and method
US5603050A (en) 1995-03-03 1997-02-11 Compaq Computer Corporation Direct memory access controller having programmable timing
JPH1040211A (ja) 1996-04-30 1998-02-13 Texas Instr Inc <Ti> パケット化されたデータ通信インタフェース機器内での直接メモリアクセス優先順位を割り当てるための方法ならびにdmaチャンネル回路
US6442670B2 (en) 1997-03-25 2002-08-27 Sun Microsystems, Inc. Data processing system including a shared memory resource circuit
US6145027A (en) 1997-07-09 2000-11-07 Texas Instruments Incorporated DMA controller with split channel transfer capability and FIFO buffering allowing transmit channel to get ahead of corresponding receive channel by preselected number of elements
US5822251A (en) 1997-08-25 1998-10-13 Bit Microsystems, Inc. Expandable flash-memory mass-storage using shared buddy lines and intermediate flash-bus between device-specific buffers and flash-intelligent DMA controllers
US6014729A (en) 1997-09-29 2000-01-11 Firstpass, Inc. Shared memory arbitration apparatus and method
US6230219B1 (en) 1997-11-10 2001-05-08 International Business Machines Corporation High performance multichannel DMA controller for a PCI host bridge with a built-in cache
US6115770A (en) 1998-03-25 2000-09-05 Lsi Logic Corporation System and method for coordinating competing register accesses by multiple buses
US6209052B1 (en) 1998-09-30 2001-03-27 Compaq Computer Corporation System and method for suppressing processor cycles to memory until after a peripheral device write cycle is acknowledged by the memory arbiter
DE19846913A1 (de) 1998-10-12 2000-04-20 Oce Printing Systems Gmbh Elektronische Steuereinrichtung mit einem parallelen Datenbus und Verfahren zum Betreiben der Steuereinrichtung
US6275877B1 (en) 1998-10-27 2001-08-14 James Duda Memory access controller
US6463059B1 (en) 1998-12-04 2002-10-08 Koninklijke Philips Electronics N.V. Direct memory access execution engine with indirect addressing of circular queues in addition to direct memory addressing
US6279050B1 (en) 1998-12-18 2001-08-21 Emc Corporation Data transfer apparatus having upper, lower, middle state machines, with middle state machine arbitrating among lower state machine side requesters including selective assembly/disassembly requests
US6256683B1 (en) 1998-12-23 2001-07-03 Bops, Inc. Methods and apparatus for providing direct memory access control
JP2000315186A (ja) 1999-05-06 2000-11-14 Hitachi Ltd 半導体装置
US6240042B1 (en) 1999-09-02 2001-05-29 Micron Technology, Inc. Output circuit for a double data rate dynamic random access memory, double data rate dynamic random access memory, method of clocking data out from a double data rate dynamic random access memory and method of providing a data strobe signal
US6449665B1 (en) 1999-10-14 2002-09-10 Lexmark International, Inc. Means for reducing direct memory access
AU1458501A (en) 1999-11-05 2001-06-06 Analog Devices, Inc. Generic serial port architecture and system
WO2001061935A1 (en) 2000-02-17 2001-08-23 Conexant Systems, Inc, Cable modem having a programmable media access controller
US6629227B1 (en) 2000-05-04 2003-09-30 Scientific-Atlanta, Inc. System and method for a communication terminal to manage memory and maintain a current application version for multiple applications
US6816750B1 (en) 2000-06-09 2004-11-09 Cirrus Logic, Inc. System-on-a-chip
US6477598B1 (en) * 2000-07-20 2002-11-05 Lsi Logic Corporation Memory controller arbitrating RAS, CAS and bank precharge signals
US6816923B1 (en) 2000-07-31 2004-11-09 Webtv Networks, Inc. Arbitrating and servicing polychronous data requests in direct memory access
US6662258B1 (en) 2000-08-22 2003-12-09 Integrated Device Technology, Inc. Fly-by support module for a peripheral bus
JP2002163900A (ja) 2000-11-22 2002-06-07 Hitachi Ltd 半導体ウエハ、半導体チップ、半導体装置および半導体装置の製造方法
US6813652B2 (en) 2001-04-11 2004-11-02 Chelsio Communications, Inc. Reduced-overhead DMA
US6823402B2 (en) 2001-11-14 2004-11-23 Texas Instruments Incorporated Apparatus and method for distribution of signals from a high level data link controller to multiple digital signal processor cores
JP3647410B2 (ja) 2001-10-22 2005-05-11 キヤノン株式会社 通信システム、通信装置、その制御方法、プログラム並びにコンピュータ可読メモリ
US6829660B2 (en) 2001-12-12 2004-12-07 Emulex Design & Manufacturing Corporation Supercharge message exchanger
US9122808B2 (en) 2002-02-25 2015-09-01 Csr Technology Inc. Network interface to a video device
US6812929B2 (en) * 2002-03-11 2004-11-02 Sun Microsystems, Inc. System and method for prefetching data from a frame buffer
US20030212859A1 (en) 2002-05-08 2003-11-13 Ellis Robert W. Arrayed data storage architecture with simultaneous command of multiple storage media
US6721820B2 (en) 2002-05-15 2004-04-13 M-Systems Flash Disk Pioneers Ltd. Method for improving performance of a flash-based storage system using specialized flash controllers
US8005966B2 (en) 2002-06-11 2011-08-23 Pandya Ashish A Data processing system using internet protocols
US6892289B2 (en) 2002-07-02 2005-05-10 Lsi Logic Corporation Methods and structure for using a memory model for efficient arbitration
US20040204051A1 (en) 2002-08-27 2004-10-14 Scott Clifton E. Method and system for selecting provisioning information for mobile communication device from non-volatile memory
US20040054864A1 (en) 2002-09-13 2004-03-18 Jameson Neil Andrew Memory controller
US6804729B2 (en) 2002-09-30 2004-10-12 International Business Machines Corporation Migrating a memory page by modifying a page migration state of a state machine associated with a DMA mapper based on a state notification from an operating system kernel
CN1238796C (zh) * 2002-10-30 2006-01-25 华为技术有限公司 一种实现接口转换的装置及方法
KR100618577B1 (ko) 2002-11-13 2006-08-31 엘지.필립스 엘시디 주식회사 액정 표시패널의 디스펜서 및 이를 이용한 디스펜싱 방법
DE10307548A1 (de) 2003-02-21 2004-09-09 Infineon Technologies Ag Synchrones Speichersystem sowie Verfahren und Protokoll zur Kommunikation in einem synchronen Speichersystem
US7043518B2 (en) 2003-07-31 2006-05-09 Cradle Technologies, Inc. Method and system for performing parallel integer multiply accumulate operations on packed data
US7149823B2 (en) 2003-08-29 2006-12-12 Emulex Corporation System and method for direct memory access from host without processor intervention wherein automatic access to memory during host start up does not occur
US7062615B2 (en) 2003-08-29 2006-06-13 Emulex Design & Manufacturing Corporation Multi-channel memory access arbitration method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960025071A (ko) * 1994-12-30 1996-07-20 구자홍 이중 채널 직접 메모리 액세스(dma) 전송 방법
KR19980081499A (ko) * 1997-04-17 1998-11-25 모리시다요이치 메모리 내장 데이터 처리장치 및 처리시스템
KR19990023279A (ko) * 1997-08-02 1999-03-25 엠. 제이. 엠. 반캄 인터페이스를 구비한 통신 시스템
JP2001092772A (ja) 1999-07-16 2001-04-06 Texas Instr Inc <Ti> 同期固定レイテンシループを使用するデータバス

Also Published As

Publication number Publication date
CN101133404B (zh) 2010-05-05
GB0524093D0 (en) 2006-01-04
WO2007005046A3 (en) 2007-08-30
GB2427721A (en) 2007-01-03
US7428603B2 (en) 2008-09-23
TW200700996A (en) 2007-01-01
GB2427721B (en) 2007-12-12
KR20070003515A (ko) 2007-01-05
US20070005825A1 (en) 2007-01-04
CN101133404A (zh) 2008-02-27
TWI315474B (en) 2009-10-01
WO2007005046A2 (en) 2007-01-11

Similar Documents

Publication Publication Date Title
KR100726361B1 (ko) 메모리 장치들과의 통신을 위한 시스템 및 방법
US7171526B2 (en) Memory controller useable in a data processing system
US10079048B2 (en) Adjusting access of non-volatile semiconductor memory based on access time
US6202107B1 (en) Host controller interface descriptor fetching unit
US20050138267A1 (en) Integral memory buffer and serial presence detect capability for fully-buffered memory modules
US20030151939A1 (en) Methods and apparatus for accessing configuration data
CN108121672A (zh) 一种基于NandFlash存储器多通道的存储阵列控制方法与装置
KR100758301B1 (ko) 메모리 카드 및 그것의 데이터 저장 방법
TW200527427A (en) Memory buffer device integrating refresh
JP4768697B2 (ja) 記憶システム、およびデータ転送方法
JP7195486B1 (ja) 異種メモリシステムに対するシグナリング
JP5533963B2 (ja) 構成可能な入出力ポートを伴うメモリモジュール
CN108304334B (zh) 应用处理器和包括中断控制器的集成电路
CN109284241A (zh) 存储等待时间信息的存储设备、处理器和计算***
JP2008009817A (ja) 半導体装置及びデータ転送方法
US9274860B2 (en) Multi-processor device and inter-process communication method thereof
US7562193B2 (en) Memory with single and dual mode access
US20150177816A1 (en) Semiconductor integrated circuit apparatus
US20230305972A1 (en) Memory tunneling interface
US11620088B2 (en) Dual speed memory
US20180336147A1 (en) Application processor including command controller and integrated circuit including the same
JPH0227696B2 (ja) Johoshorisochi
US11742004B2 (en) Memory supporting multiple types of operations
US11531490B2 (en) Data transfer in port switch memory
US20030065860A1 (en) Internal control bus in a multiple processor/multiple bus system

Legal Events

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

Payment date: 20130523

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140711

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150430

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170504

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180427

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 13