KR20140098792A - 다수의 뱅크들에 동시 판독/기록 액세스를 제공하도록 구성된 메모리 - Google Patents

다수의 뱅크들에 동시 판독/기록 액세스를 제공하도록 구성된 메모리 Download PDF

Info

Publication number
KR20140098792A
KR20140098792A KR1020147016345A KR20147016345A KR20140098792A KR 20140098792 A KR20140098792 A KR 20140098792A KR 1020147016345 A KR1020147016345 A KR 1020147016345A KR 20147016345 A KR20147016345 A KR 20147016345A KR 20140098792 A KR20140098792 A KR 20140098792A
Authority
KR
South Korea
Prior art keywords
memory
read
controller
local controller
memory address
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
KR1020147016345A
Other languages
English (en)
Other versions
KR101669945B1 (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 KR20140098792A publication Critical patent/KR20140098792A/ko
Application granted granted Critical
Publication of KR101669945B1 publication Critical patent/KR101669945B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Static Random-Access Memory (AREA)
  • Read Only Memory (AREA)
  • Dram (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

메모리는 단일-포트 메모리 엘리먼트들의 적어도 제 1 및 제 2 뱅크들, 판독 및 기록 명령들을 상기 제 1 메모리 뱅크에 전송하도록 적응된 제 1 로컬 제어기, 판독 및 기록 명령들을 제 2 메모리 뱅크에 전송하도록 적응된 제 2 로컬 제어기를 포함한다. 글로벌 제어기는, 제 1 및 제 2 메모리 어드레스들, 및 상기 제 1 메모리 어드레스들에서 수행될 동작의 제 1 표시 및 상기 제 2 메모리 어드레스에서 수행될 동작의 제 2 표시를 수신하고, 상기 제 1 메모리 어드레스에서 제 1 표시된 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하고, 동시에, 상기 제 2 메모리 어드레스에서 제 2 표시된 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하도록 구성된다.

Description

다수의 뱅크들에 동시 판독/기록 액세스를 제공하도록 구성된 메모리{MEMORY CONFIGURED TO PROVIDE SIMULTANEOUS READ/WRITE ACCESS TO MULTIPLE BANKS}
본 특허 출원은 멀티-뱅크 메모리의 상이한 뱅크들에 대한 동시적(concurrent) 판독 및 기록 액세스를 허용하는 컴퓨터 메모리 및 이러한 액세스를 제공하는 방법에 관한 것으로, 더 구체적으로는, 메모리 위치 및 메모리 위치에서 수행될 동작의 표시를 포함하는 명령을 전송함으로써 멀티-뱅크 메모리의 상이한 뱅크들에 대한 동시적 판독 및 기록 액세스를 허용하는 컴퓨터 메모리 및 이러한 액세스를 제공하는 방법에 관한 것이다.
종래의 단일-포트 메모리는 일반적으로, 어드레스들의 단일 세트 및 단일 제어를 포함한다. 따라서, 이 단일-포트 메모리는 한번에 하나의 디바이스에 의해서만 액세스될 수 있다 ― 단일 판독 동작 또는 단일 기록 동작이 수행될 수 있지만, 두 타입들의 동작은 동시에 수행될 수 없다.
메모리에 동시 판독 및 기록 액세스들을 제공하는 것이 바람직할 때, 2-포트 또는 멀티-포트 메모리가 사용될 수 있다. 예를 들어, 판독 액세스는 메모리의 하나의 포트를 통해 이루어질 수 있는 반면, 기록 액세스는 다른 포트를 통해 이루어진다. 그러나, 종래의 2-포트 또는 멀티-포트 메모리들은 일반적으로, 단일-포트 메모리들보다 많은 트랜지스터들을 포함하며, 이에 따라, 단일-포트 메모리들보다 칩 상에 더 많은 공간을 차지한다. 동일-위치 액세스가 요구되지 않을 때(또는 그것이 금지될 수 있을 때), 개별 메모리들이 사용될 수 있지만, 메모리들 중 하나에 대한 주변 회로들 중 다수가 다른 메모리에 대하여 중복되기 때문에, 개별 메모리들의 사용과 연관된 영역 패널티가 또한 존재한다. 따라서, 동시 판독 및 기록 액세스에 대한 필요성이 발생된 공간 패널티에 대하여 밸런싱되어야 하고, 동시 액세스에 대한 필요성이 이와 연관된 영역 및 리키지 패널티들(leakage penalties)보다 더 클 때에만, 듀얼- 또는 멀티-포트 메모리들이 일반적으로 선택된다. 따라서, 종래의 듀얼- 또는 멀티-포트 메모리들보다 향상된, 동시 판독 및 기록 능력들을 갖는 메모리를 제공하는 것이 바람직할 것이다.
본 발명의 예시적인 실시예는, 적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하는 단계 ― 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함함 ― , 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하기 위한 제 1 및 제 2 로컬 제어기들을 제공하는 단계를 포함하는 방법을 포함한다. 방법은 또한, 판독 및 기록 명령들을 제 1 및 제 2 로컬 제어기들에 전송하기 위한 글로벌 제어기를 제공하는 단계, 및 판독 명령을 제 1 로컬 제어기에 전송하고, 동시에, 기록 명령을 제 2 로컬 제어기에 전송하는 단계를 포함한다.
다른 실시예는, 단일-포트 메모리 엘리먼트들의 적어도 제 1 및 제 2 뱅크들, 판독 및 기록 명령들을 제 1 메모리 뱅크에 전송하도록 적응된 제 1 로컬 제어기, 판독 및 기록 명령들을 제 2 메모리 뱅크에 전송하도록 적응된 제 2 로컬 제어기 및 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기를 갖는 메모리를 포함한다. 글로벌 제어기는, 제 1 및 제 2 메모리 어드레스들, 및 제 1 메모리 어드레스들에서 수행될 동작의 제 1 표시 및 제 2 메모리 어드레스에서 수행될 동작의 제 2 표시를 수신하고, 제 1 메모리 어드레스에서 제 1 표시된 동작을 수행하도록 제 1 로컬 제어기에 명령하고, 동시에, 제 2 메모리 어드레스에서 제 2 표시된 동작을 수행하도록 제 2 로컬 제어기에 명령하도록 구성된다.
추가 실시예는, 적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하는 단계, 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하도록 적응된 적어도 제 1 및 제 2 로컬 제어기들을 제공하는 단계, 및 적어도 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기를 제공하는 단계를 포함하는 방법을 포함한다. 방법은 또한, 제 1 메모리 어드레스 및 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령, 및 제 2 메모리 어드레스를 포함하는 제 2 명령 및 제 2 메모리 어드레스에서 수행될 제 2 동작을 글로벌 제어기에 제공하는 단계를 포함한다. 글로벌 제어기는, 제 1 메모리 어드레스에서 제 1 동작을 수행하도록 제 1 로컬 제어기에 명령하고, 제 2 메모리 어드레스에서 제 2 동작을 수행하도록 제 2 로컬 제어기에 명령한다.
또 다른 실시예는, 적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리, 및 적어도 제 1 및 제 2 메모리 뱅크들 상에서 판독 및 기록 동작들을 제어하도록 적응된 적어도 제 1 및 제 2 로컬 제어기들을 포함하는 디바이스를 포함한다. 디바이스는 또한, 적어도 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기를 포함하고, 글로벌 제어기는, 제 1 메모리 어드레스 및 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령, 및 제 2 메모리 어드레스 및 제 2 메모리 어드레스에서 수행될 제 2 동작을 포함하는 제 2 명령을 수신하도록 구성된다. 글로벌 제어기는 또한, 제 1 메모리 어드레스에서 제 1 동작을 수행하도록 제 1 로컬 제어기에 명령하고, 제 2 메모리 어드레스에서 제 2 동작을 수행하도록 제 2 로컬 제어기에 명령하도록 구성된다.
또 다른 실시예는, 메모리 엘리먼트 어레인지먼트를 갖는 메모리, 판독 및 기록 명령들을 메모리 엘리먼트 어레인지먼트에 전송하도록 적응된 로컬 제어기 어레인지먼트, 및 로컬 제어기 어레인지먼트와 통신하는 글로벌 제어기 어레인지먼트를 포함한다. 글로벌 제어기 어레인지먼트는 제 1 및 제 2 메모리 어드레스들, 및 제 1 메모리 어드레스들에서 수행될 동작의 제 1 표시 및 제 2 메모리 어드레스에서 수행될 동작의 제 2 표시를 수신하고, 제 1 메모리 어드레스에서 제 1 표시된 동작 및 동시에, 제 2 메모리 어드레스에서 제 2 표시된 동작을 수행하도록 로컬 제어기 어레인지먼트에 명령하도록 구성된다.
추가 실시예는, 적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하기 위한 단계들 ― 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함함 ― , 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하기 위한 제 1 및 제 2 로컬 제어기들을 제공하기 위한 단계들을 포함하는 방법을 포함한다. 방법은 또한, 판독 및 기록 명령들을 제 1 및 제 2 로컬 제어기들에 전송하기 위한 글로벌 제어기를 제공하기 위한 단계들, 및 판독 명령을 제 1 로컬 제어기에 전송하고, 동시에, 기록 명령을 제 2 로컬 제어기에 전송하기 위한 단계들을 포함한다.
첨부한 도면들은 본 발명의 실시예들의 설명을 돕기 위해서 제시되며, 실시예들에 대한 한정이 아닌 오로지 실시예들에 대한 예시로서 제공된다.
도 1은 제 1 실시예에 따른 메모리를 예시하는 개략적 회로도이다.
도 2는 제 2 실시예에 따른 메모리를 예시하는 개략적 회로도이다.
도 3은 도 1 또는 도 2의 메모리에 의해 프로세싱될 2개의 명령들의 개략적 대표도이다.
도 4는 실시예에 따른 방법을 예시하는 흐름도이다.
도 5는 다른 실시예에 따른 방법을 예시하는 흐름도이다.
본 발명의 양상들은 본 발명의 특정 실시예들에 관련된 다음의 설명 및 관련 도면들에 개시된다. 본 발명의 범위로부터 벗어나지 않으면서 대안적인 실시예들이 고안될 수 있다. 추가적으로, 본 발명의 관련 세부사항들을 모호하게 하지 않도록 본 발명의 잘 알려져 있는 엘리먼트들은 상세하게 설명되지 않거나, 또는 생략될 것이다.
"예시적인"이라는 용어는 본 명세서에서 "예, 예시 또는 예증으로서 제공되는"의 의미로 사용된다. "예시적인" 것으로서 본 명세서에 설명되는 임의의 실시예는 반드시 다른 실시예들보다 선호되거나 또는 유리한 것으로 해석되는 것은 아니다. 마찬가지로, "본 발명의 실시예들"이라는 용어는 본 발명의 모든 실시예들이 논의되는 특징, 이점, 또는 동작 모드를 포함하는 것을 요구하지 않는다.
본 명세서에 사용되는 용어는 단지 특정한 실시예들을 설명하기 위한 것이며, 본 발명의 실시예들을 한정하는 것으로 의도되지 않는다. 본 명세서에 사용되는 바와 같이, 단수 형태들("a", "an" 및 "the")은 문맥에 달리 명백하게 표기되지 않는 한, 복수 형태들을 역시 포함하는 것으로 의도된다. "포함하다(comprises)", "포함하는(comprising)", "포함하다(includes)" 및/또는 "포함하는(including)"이라는 용어들은, 본 명세서에서 사용될 때, 서술된 특징들, 정수들, 단계들, 동작들, 엘리먼트들 및/또는 컴포넌트들의 존재를 특정하지만, 하나 또는 둘 이상의 다른 특징들, 정수들, 단계들, 동작들, 엘리먼트들, 컴포넌트들 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않는다는 것이 추가로 이해될 것이다.
게다가, 많은 실시예들이 예를 들어, 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 동작들의 시퀀스들에 관하여 설명된다. 본 명세서에 설명된 다양한 동작들은 특정 회로들(예를 들어, 주문형 집적 회로(ASIC)들)에 의해, 하나 또는 둘 이상의 프로세서들에 의해 실행되는 프로그램 명령들에 의해 또는 이 둘의 결합에 의해 수행될 수 있다는 것이 인지될 것이다. 추가적으로, 본 명세서에 설명된 이러한 동작들의 시퀀스는, 실행 시에 연관된 프로세서로 하여금 본 명세서에 설명된 기능을 수행하게 할 컴퓨터 명령들의 대응하는 세트가 저장된 임의의 형태의 컴퓨터 판독가능한 저장 매체 내에서 전적으로 구현되도록 고려될 수 있다. 따라서, 본 발명의 다양한 양상들은 다수의 상이한 형태들로 구현될 수 있으며, 이들 모두는 청구되는 대상의 범위 내에 있는 것으로 참작된다. 또한, 본 명세서에 설명된 실시예들 각각에 대하여, 임의의 이러한 실시예들의 대응하는 형태는, 예를 들어, 설명된 동작을 수행하도록 "구성되는 로직"으로서 본 명세서에 설명될 수 있다.
도 1은 제 1 메모리 뱅크(102), 제 2 메모리 뱅크(104), 제 3 메모리 뱅크(106) 및 제 4 메모리 뱅크(108)를 포함하는 제 1 실시예에 따른 멀티-뱅크 메모리(100)를 예시하며, 더 많거나 또는 더 적은 메모리 뱅크들을 이용하는 실시예들이 또한 본 개시의 범위 내에 있다는 것이 이해된다. 제 1 내지 제 4 메모리 뱅크들(102, 104, 106, 108) 각각은 그 메모리 뱅크 상에서 수행될 판독 및 기록 동작들을 허용하는 워드 라인 및 연관된 판독/기록 회로를 포함한다. 판독/기록 회로는, 예를 들어, 감지 증폭기(예시되지 않음) 및 기록 드라이버(예시되지 않음)를 포함한다. 구체적으로, 제 1 메모리 뱅크(102)는 워드 라인(110) 및 판독/기록 회로(112)를 포함하고, 제 2 메모리 뱅크(104)는 워드 라인(114) 및 판독/기록 회로(116)를 포함하며, 제 3 메모리 뱅크(106)는 워드 라인(118) 및 판독/기록 회로(120)를 포함하고, 제 4 메모리 뱅크(108)는 워드 라인(122) 및 판독/기록 회로(124)를 포함한다. 로컬 제어기는 또한, 제 1 내지 제 4 메모리 뱅크들(102, 104, 106, 108) 각각과 연관된다. 구체적으로, 제 1 메모리 뱅크(102)는 제 1 로컬 제어기(126)를 포함하고, 제 2 메모리 뱅크(104)는 제 2 로컬 제어기(128)를 포함하며, 제 3 메모리 뱅크(106)는 제 3 로컬 제어기(130)를 포함하고, 제 4 메모리 뱅크(108)는 제 4 로컬 제어기(132)를 포함한다. 제 1 IO 회로(134)는 제 1 메모리 칼럼(136) 내의 메모리 엘리먼트들과 연관되고, 제 2 IO 회로(138)는 제 2 메모리 칼럼(140) 내의 메모리 엘리먼트들과 연관되며, 제 1 및 제 2 IO 회로(134, 138)는 제 1 메모리 칼럼(136) 및 제 2 메모리 칼럼(140)에서 각각 메모리 엘리먼트들에 기록될 그리고 메모리 엘리먼트들로부터 판독될 데이터를 허용한다.
글로벌 제어기(142)는 명령들의 쌍들을 수신하도록 구성되고, 각각의 명령은 수행될 동작의 표시 및 명령이 수행될 것인 메모리 어드레스들의 식별을 포함한다. 표시는, 예를 들어, 수신된 메모리 어드레스의 일부를 포함할 수 있고 그리고/또는 메모리 어드레스와 동시에 송신될 수 있다. 도 2는 제 1 및 제 2 대표적 명령들(144, 146)을 예시하고, 이들 각각은 수행될 동작을 식별하는 제 1 부분(148) 및 동작이 수행될 것인 메모리 어드레스를 식별하는 제 2 부분(150)을 포함한다. 제 1 명령(144)의 제 1 부분(148)은 "기록(write)"에 대하여 "w"를 포함하고, 제 1 명령(144)의 제 2 부분(150)은 기록될 메모리 어드레스를 포함한다. 이 예에서, 어드레스에서의 "1"은 액세스될 메모리 엘리먼트가 제 1 메모리 뱅크(102) 내에 있음을 표시하고, "5"는 메모리 엘리먼트를 식별한다. 제 2 명령(146)의 제 1 부분(148)은 "판독(read)"에 대하여 "r"을 포함하고, 제 2 명령(146)의 제 2 부분(150)은 판독될 메모리 어드레스를 포함한다. 이 예에서, 어드레스에서의 "2"는, 액세스될 메모리 엘리먼트가 제 2 메모리 뱅크(104) 내에 있고, 위치 "8"이 액세스될 것임을 표시한다. "r" 및 "w"가 "판독" 및 "기록"을 표시하는데 각각 사용되지만, 명령의 식별 부분은 판독 또는 기록 명령으로서 글로벌 제어기(142)에 의해 해석될 수 있는 수치일 가능성이 있을 것이다. 마찬가지로, 제 1 및 제 2 명령들(144, 146)의 제 2 부분들(150)에서의 메모리 어드레스들은 글로벌 제어기에 의해 용이하게 프로세싱될 수 있는 방식으로 제공될 것이다.
멀티-뱅크 메모리(100)는 개별 판독 및 기록 경로들을 포함하며, 이에 따라, 동작들이 제 1 내지 제 4 메모리 뱅크들(102, 104, 106, 108) 중 상이한 것들 상에서 수행되는 한, 판독 및 기록 동작들을 수행할 수 있다. 글로벌 제어기(142)는 2개의 명령들을 제 1 내지 제 4 로컬 제어기들(126, 128, 130, 132) 중 2개의 상이한 것들로 동시에 전송하도록 구성되고, 하나의 동작이 판독 동작이고, 다른 동작이 기록 동작이면, 동작들은 출력 데이터 경로들에서 임의의 간섭 없이 동시에 실행될 수 있다. 듀얼 및 멀티-포트 메모리 엘리먼트들은 주어진 메모리 엘리먼트에 대한 동시 액세스를 허용하지만, 더 복잡하며, 더 많은 공간을 차지한다. 동일한 메모리 엘리먼트에 대한 동시 액세스가 요구되지 않는 경우들에서, 단일-포트 메모리 엘리먼트들 및 본 개시를 사용하여, 듀얼 및 멀티-포트 메모리의 이익들 중 다수가 획득될 수 있다. 본 명세서에 사용된 바와 같이, "동시적으로(simultaneously)", "동시적(concurrently)" 및 "동시에(at the same time)"는 판독 및 기록 동작들이 동시에 발생한다는 것을 의미한다. 그러나, 이 동작들은 정확하게 동일한 인스턴트에서 시작 또는 종료할 수 있지만, 반드시 그러하여야 하는 것은 아니다. 실제로, 메모리에 따라, 판독 및 기록 동작들이 발생하는데 상이한 시간량들이 일반적으로 요구되고, 거의 동시에 시작되는 경우 조차도, 이 동작들 중 하나가 일반적으로, 다른 동작 이전에 종료될 것이다.
멀티-뱅크 메모리(100)에 액세스하는 시스템은 멀티-뱅크 메모리(100)로의 충돌하는 메모리 액세스 요청들의 전송을 회피하도록 구성되는 것이 바람직할 수 있다. 즉, 시스템은 멀티-뱅크 메모리(100)에 전송된 판독 및 기록 액세스 요청들의 쌍이 항상 제 1 내지 제 4 메모리 뱅크들(102, 104, 106, 108) 중 상이한 것들로 지향됨(directed)을 보장하여야 한다. 그러나, 멀티-뱅크 메모리(100)는 2개의 수신된 명령들이 2개의 판독 명령들 또는 2개의 기록 명령들 또는 동일한 메모리 뱅크에 기록 및/또는 판독할 명령들인 상황들을 핸들링하도록 구성될 수 있다. 이러한 경우, 글로벌 제어기(142)는 명령들 중 하나에 다른 명령보다 우선순위를 주도록 또는 둘 모두의 명령들을 무시하여 이에 따라 충돌을 회피하도록 구성될 수 있다.
이전에 기술된 바와 같이, 주어진 메모리 디바이스에 대한 판독 및 기록 명령들은 통상적으로, 상이한 시간량들이 실행되도록 요구한다. 논의를 목적으로, 멀티-뱅크 메모리(100) 상에서 기록 동작을 수행하는 것이 판독 동작을 수행하는 것보다 많은 시간을 요구한다는 것이 가정된다. 그러나, 다른 메모리들의 경우, 판독 액세스가 기록 액세스보다 더 긴 시간이 걸릴 수 있다. 글로벌 제어기(142)가,현재 동작이 종료되기 이전에, 또 다른 판독 또는 기록 동작을 시작하지 않음을 보장하는 것을 돕기 위해서, 글로벌 제어기(142)는 기록 타이머(152)를 포함한다. 기록 타이머(152)는, 글로벌 제어기(142)가 명령들을 제 1 내지 제 4 로컬 제어기들(126, 128, 130, 132)에 전송하는 인터벌을 제어하고, 기록 타이머(152)가 만료(미리 결정된 시간이 경과하였음을 표시함)될 때까지 판독 또는 기록 명령들이 전송되게 허용하지 않는다. 이 실시예에서 기록 동작들이 판독 동작들보다 많은 시간을 요구하는 것으로 가정되기 때문에, 판독 동작들은 반드시, 기록 타이머(152)가 만료되는 시간까지 종료될 것이다. 따라서, 멀티-뱅크 메모리(100)는 메모리 액세스의 타이밍을 결정하기 위한 시스템 클럭에 의존하지 않는 셀프-타임드(self-timed) 메모리 엘리먼트이다.
동작 시에, 제 1 명령(144) 및 제 2 명령(146)은 글로벌 제어기(142)에서 수신된다. 제 1 명령(144)은 "r"을 포함하며, 제 1 메모리 뱅크(102)에서의 어드레스이다. 제 2 명령은 "w"를 포함하며, 제 2 메모리 뱅크(104)에서의 어드레스이다. 따라서, 글로벌 제어기(142)는 표시된 메모리 위치 상에서 판독 동작을 수행하도록 제 1 메모리 뱅크(102) 내의 제 1 로컬 제어기(126)에 명령을 전송하고, 실질적으로 동시에, 표시된 위치에서 기록 동작을 수행하도록 제 2 메모리 뱅크(104)의 제 2 로컬 제어기(128)에 명령을 전송한다. 데이터의 실제 판독 및 기록이 종래의 방식으로 수행되지만, 종래의 메모리들과는 달리, 데이터의 실제 판독 및 기록은, 2개의 상이한 메모리 뱅크들 상에서 동시에, 또는 실질적으로 동시에, 수행된다. 기록 타이머(152)가 만료될 때, 메모리 어드레스들의 제 2 쌍이 글로벌 제어기(142)에 의해 수신되고, 프로세스가 계속된다.
제 2 실시예는, 제 1 실시예에 공통인 엘리먼트들이 동일한 참조 번호들로 식별되는 도 3에 예시된다. 도 3에서, 글로벌 제어기(142)는 제 1 실시예의 기록 타이머(152)와 더불어 판독 타이머(302)를 포함한다. 판독 타이머(302)는, 메모리(100)가, 판독 및 기록 동작들이 완료될 때를 독립적으로 결정하게 하고, 이에 따라, 실제 종료 시간들에 기초하여 적절한 동작들을 취하게 한다. 예를 들어, 판독 타이머(302)를 사용하여, 판독 동작이 종료됨이 결정되면, 기록 동작이 완료되기를 기다리지 않고 판독 비트 라인의 적절한 프리차징(pre-charging)을 시작하는 것이 가능할 수 있다.
따라서, 메모리(100)는 단일-포트 메모리 엘리먼트들로 형성된 멀티-뱅크 메모리의 상이한 메모리 뱅크들에 대한 동시 판독 및 기록 동작들을 허용하는 이익을 제공한다. 이것은 듀얼- 또는 다중-포트 메모리의 이익들 중 다수를 제공하며, 동일한 메모리 뱅크에 대한 동시 동작들이 방지되는 한, 동시 판독 및 기록 동작들을 허용한다.
개시된 실시예들에 따른 메모리들은, 한정이 아닌, 셋탑 박스, 뮤직 플레이어, 비디오 플레이어, 엔터테인먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 개인용 디지털 보조기(PDA), 고정 위치 데이터 유닛 및 컴퓨터를 포함하는 다양한 디바이스들 및/또는 하나 또는 둘 이상의 반도체 다이들로 형성 또는 통합될 수 있다.
실시예에 따른 방법은, 도 4에 예시되며, 적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하는 블록(400), 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하도록 적응된 적어도 제 1 및 제 2 로컬 제어기들을 제공하는 블록(402), 적어도 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기를 제공하는 블록(404), 제 1 메모리 어드레스 및 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령을 글로벌 제어기에 제공하는 블록(406), 제 2 메모리 어드레스 및 제 2 메모리 어드레스에서 수행될 제 2 동작을 포함하는 제 2 명령을 글로벌 제어기에 제공하는 블록(408) 및 제 1 메모리 어드레스에서 제 1 동작을 수행하도록 제 1 로컬 제어기에 명령하고, 제 2 메모리 어드레스에서 제 2 동작을 수행하도록 제 2 로컬 제어기에 명령하는 글로벌 제어기의 블록(410)을 포함한다.
추가 실시예에 따른 다른 방법은, 도 6에 예시되며, 적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하는 블록(500) ― 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함함 ― , 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하기 위한 제 1 및 제 2 로컬 제어기들을 제공하는 블록(502), 판독 및 기록 명령들을 제 1 및 제 2 로컬 제어기들에 전송하기 위한 글로벌 제어기를 제공하는 블록(504) 및 판독 명령을 제 1 로컬 제어기에 전송하고, 동시에, 기록 명령을 제 2 로컬 제어기에 전송하는 블록(506)을 포함한다.
당업자들은 정보 및 신호들이 임의의 다양한 상이한 기술들 및 기법들을 사용하여 표현될 수 있다는 것을 인식할 것이다. 예를 들어, 위의 설명 전체에 걸쳐 참조될 수 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 자기 입자들, 광 필드들 또는 광 입자들 또는 이들의 임의의 결합으로 표현될 수 있다.
게다가, 당업자들은 본 명세서에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 회로들 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어 또는 이 둘의 결합들로서 구현될 수도 있다는 것을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호 호환성을 명확하게 예시하기 위해서, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 일반적으로 이들의 기능적 관점에서 위에서 설명되었다. 이러한 기능이 하드웨어로서 구현되는지 또는 소프트웨어로서 구현되는지는 특정한 애플리케이션 및 전체 시스템 상에 부과되는 설계 제약들에 의존한다. 당업자들은 설명된 기능을 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 구현할 수 있지만, 이러한 구현 결정들이 본 발명의 범위로부터의 이탈을 야기하게 하는 것으로 해석되어서는 안 된다.
본 명세서에서 개시된 실시예들과 관련하여 설명된 방법들, 시퀀스들 및/또는 알고리즘들은 직접 하드웨어에서, 프로세서에 의해 실행되는 소프트웨어 모듈에서, 또는 이 둘의 결합에서 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래쉬 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 이동식(removable) 디스크, CD-ROM 또는 당해 기술 분야에 알려져 있는 임의의 다른 형태의 저장 매체에 상주할 수 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고, 저장 매체에 정보를 기록할 수 있도록 프로세서에 커플링된다. 대안적으로, 저장 매체는 프로세서에 통합될 수 있다.
본 개시는 본 발명의 예시적인 실시예들을 나타내지만, 다양한 변경들 및 변형들이 첨부된 청구항들에 의해 정의된 바와 같은 본 발명의 범위를 벗어나지 않으면서 본 명세서에서 이루어질 수 있다는 점이 주목되어야 한다. 본 명세서에서 설명된 본 발명의 실시예들에 따른 방법 청구항들의 기능들, 단계들 및/또는 동작들은 임의의 특정한 순서로 수행될 필요가 없다. 게다가, 본 발명의 엘리먼트들이 단수형으로 설명되거나 또는 청구될 수 있지만, 단수형으로의 제한이 명시적으로 표기되지 않는 한 복수형이 참작된다.

Claims (36)

  1. 방법으로서,
    적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하는 단계 ― 상기 적어도 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함함 ― ;
    상기 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하기 위한 제 1 및 제 2 로컬 제어기들을 제공하는 단계;
    판독 및 기록 명령들을 상기 제 1 및 제 2 로컬 제어기들에 전송하기 위한 글로벌 제어기를 제공하는 단계; 및
    판독 명령을 상기 제 1 로컬 제어기에 전송하고, 동시에, 기록 명령을 상기 제 2 로컬 제어기에 전송하는 단계를 포함하는,
    방법.
  2. 제 1 항에 있어서,
    제 1 메모리 어드레스 및 상기 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령, 및 제 2 메모리 어드레스 및 상기 제 2 메모리 어드레스에서 수행될 제 2 동작을 포함하는 제 2 명령을 상기 글로벌 제어기에 제공하는 단계를 포함하는,
    방법.
  3. 제 1 항에 있어서,
    상기 제 1 로컬 제어기가 상기 판독 명령을 실행하는 반면, 상기 제 2 로컬 제어기가 상기 기록 명령을 실행하는 단계를 포함하는,
    방법.
  4. 메모리로서,
    단일-포트 메모리 엘리먼트들의 적어도 제 1 및 제 2 뱅크들;
    판독 및 기록 명령들을 상기 제 1 메모리 뱅크에 전송하도록 적응된 제 1 로컬 제어기;
    판독 및 기록 명령들을 상기 제 2 메모리 뱅크에 전송하도록 적응된 제 2 로컬 제어기; 및
    상기 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기;
    상기 글로벌 제어기는, 제 1 및 제 2 메모리 어드레스들, 및 상기 제 1 메모리 어드레스에서 수행될 동작의 제 1 표시 및 상기 제 2 메모리 어드레스에서 수행될 동작의 제 2 표시를 수신하고, 상기 제 1 메모리 어드레스에서 제 1 표시된 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하고, 동시에, 상기 제 2 메모리 어드레스에서 제 2 표시된 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하도록 구성되는,
    메모리.
  5. 제 4 항에 있어서,
    상기 제 1 메모리 어드레스에서 수행될 동작의 제 1 표시는 상기 제 1 메모리 어드레스의 부분을 포함하는,
    메모리.
  6. 제 5 항에 있어서,
    상기 제 1 표시된 동작은 판독 동작이고,
    상기 제 2 표시된 동작은 기록 동작인,
    메모리.
  7. 제 6 항에 있어서,
    상기 제 1 로컬 제어기는 상기 판독 동작을 실행하는 반면, 상기 제 2 로컬 제어기는 상기 기록 동작을 실행하는,
    메모리.
  8. 방법으로서,
    적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하는 단계;
    상기 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하도록 적응된 적어도 제 1 및 제 2 로컬 제어기들을 제공하는 단계;
    상기 적어도 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기를 제공하는 단계;
    제 1 메모리 어드레스 및 상기 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령을 상기 글로벌 제어기에 제공하는 단계; 및
    제 2 메모리 어드레스를 포함하는 제 2 명령 및 상기 제 2 메모리 어드레스에서 수행될 제 2 동작을 상기 글로벌 제어기에 제공하는 단계를 포함하고,
    상기 글로벌 제어기는, 상기 제 1 메모리 어드레스에서 상기 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하고, 상기 제 2 메모리 어드레스에서 상기 제 2 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하는,
    방법.
  9. 제 8 항에 있어서,
    상기 글로벌 제어기는, 상기 제 1 동작이 종료되기 이전에, 상기 제 2 메모리 어드레스에서 상기 제 2 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하는,
    방법.
  10. 제 8 항에 있어서,
    상기 글로벌 제어기는, 상기 제 1 메모리 어드레스에서 상기 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하고, 동시에, 상기 제 2 메모리 어드레스에서 상기 제 2 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하는,
    방법.
  11. 제 10 항에 있어서,
    상기 적어도 제 1 및 제 2 메모리 뱅크들 각각에 대한 개별 판독 및 기록 경로들을 제공하는 단계를 포함하는,
    방법.
  12. 제 10 항에 있어서,
    상기 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함하는,
    방법.
  13. 제 10 항에 있어서,
    상기 제 2 동작은 상기 제 1 동작과 상이한,
    방법.
  14. 제 13 항에 있어서,
    상기 제 1 동작은 판독 동작 및 기록 동작 중 하나를 포함하고,
    상기 제 2 동작은 상기 판독 동작 및 상기 기록 동작 중 다른 하나를 포함하는,
    방법.
  15. 제 14 항에 있어서,
    이전의 판독 동작 또는 이전의 기록 동작이 여전히 진행 중이면, 상기 글로벌 제어기가, 상기 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하는 것을 방지하는 단계를 포함하는,
    방법.
  16. 제 14 항에 있어서,
    후속 명령을 상기 제 1 로컬 제어기에 전송하기 이전에, 상기 제 1 명령을 상기 제 1 로컬 제어기에 전송한 때로부터 미리 결정된 시간이 경과하였는지를 결정하는 단계를 포함하는,
    방법.
  17. 제 8 항에 있어서,
    상기 멀티-뱅크 메모리를 적어도 하나의 반도체 다이로 통합하는 단계를 포함하는,
    방법.
  18. 제 8 항에 있어서,
    상기 멀티-뱅크 메모리를, 셋탑 박스, 뮤직 플레이어, 비디오 플레이어, 엔터테인먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 개인용 디지털 보조기(PDA), 고정 위치 데이터 유닛 및 컴퓨터로 구성된 그룹으로부터 선택된 디바이스로 통합하는 단계를 포함하는,
    방법.
  19. 디바이스로서,
    적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리;
    상기 적어도 제 1 및 제 2 메모리 뱅크들 상에서 판독 및 기록 동작들을 제어하도록 적응된 적어도 제 1 및 제 2 로컬 제어기들; 및
    상기 적어도 제 1 및 제 2 로컬 제어기들과 통신하는 글로벌 제어기를 포함하고,
    상기 글로벌 제어기는, 제 1 메모리 어드레스 및 상기 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령, 및 제 2 메모리 어드레스 및 상기 제 2 메모리 어드레스에서 수행될 제 2 동작을 포함하는 제 2 명령을 수신하도록 구성되고,
    상기 글로벌 제어기는, 상기 제 1 메모리 어드레스에서 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하고, 상기 제 2 메모리 어드레스에서 제 2 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하도록 구성되는,
    디바이스.
  20. 제 19 항에 있어서,
    상기 글로벌 제어기는, 상기 제 1 동작이 종료되기 이전에, 상기 제 2 메모리 어드레스에서 상기 제 2 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하도록 구성되는,
    디바이스.
  21. 제 19 항에 있어서,
    상기 글로벌 제어기는, 상기 제 1 메모리 어드레스에서 상기 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하고, 동시에, 상기 제 2 메모리 어드레스에서 상기 제 2 동작을 수행하도록 상기 제 2 로컬 제어기에 명령하도록 구성되는,
    디바이스.
  22. 제 21 항에 있어서,
    상기 제 2 동작은 상기 제 1 동작과 상이한,
    디바이스.
  23. 제 22 항에 있어서,
    상기 제 1 동작은 판독 동작 및 기록 동작 중 제 1 하나를 포함하고,
    상기 제 2 동작은 상기 판독 동작 및 상기 기록 동작 중 제 2 하나를 포함하는,
    디바이스.
  24. 제 23 항에 있어서,
    상기 글로벌 제어기는, 이전의 판독 동작 또는 이전의 기록 동작이 상기 제 1 메모리 뱅크 상에서 수행되고 있으면, 상기 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하는 것을 억제하도록 구성되는,
    디바이스.
  25. 제 23 항에 있어서,
    상기 글로벌 제어기는, 후속 동작을 수행하도록 상기 제 1 로컬 제어기에 명령하기 이전에, 상기 제 1 동작을 수행하도록 상기 제 1 로컬 제어기에 명령한 때로부터 미리 결정된 시간이 경과하였는지를 결정하도록 구성되는,
    디바이스.
  26. 제 19 항에 있어서,
    상기 적어도 제 1 및 제 2 메모리 뱅크들 각각에 대한 개별 판독 및 기록 경로들을 포함하는,
    디바이스.
  27. 제 19 항에 있어서,
    상기 적어도 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함하는,
    디바이스.
  28. 제 19 항에 있어서,
    기록 동작의 종료를 결정하기 위해서 제 1 셀프-타임드(self-timed) 메모리 제어를 포함하는,
    디바이스.
  29. 제 28 항에 있어서,
    판독 동작의 종료를 결정하기 위해서 제 2 셀프-타임드 메모리 제어를 포함하는,
    디바이스.
  30. 제 19 항에 있어서,
    적어도 하나의 반도체 다이로 통합되는,
    디바이스.
  31. 제 19 항에 있어서,
    셋탑 박스, 뮤직 플레이어, 비디오 플레이어, 엔터테인먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 개인용 디지털 보조기(PDA), 고정 위치 데이터 유닛 및 컴퓨터로 구성된 그룹으로부터 선택된 디바이스로 통합되는,
    디바이스.
  32. 메모리로서,
    메모리 엘리먼트 수단;
    판독 및 기록 명령들을 상기 메모리 엘리먼트 수단에 전송하도록 구성된 로컬 제어기 수단; 및
    상기 로컬 제어기와 통신하는 글로벌 제어기 수단을 포함하고,
    상기 글로벌 제어기는, 제 1 및 제 2 메모리 어드레스들, 및 상기 메모리 엘리먼트 수단에서의 상기 제 1 메모리 어드레스들에서 수행될 동작의 제 1 표시 및 상기 메모리 엘리먼트 수단에서의 상기 제 2 메모리 어드레스에서 수행될 동작의 제 2 표시를 수신하고, 상기 제 1 메모리 어드레스에서 제 1 표시된 동작 및 동시에, 상기 제 2 메모리 어드레스에서 제 2 표시된 동작을 수행하도록 상기 로컬 제어기에 명령하도록 구성되는,
    메모리.
  33. 제 32 항에 있어서,
    상기 메모리 엘리먼트 수단은 제 1 메모리 뱅크 수단 및 제 2 메모리 뱅크 수단을 포함하고,
    상기 로컬 제어기 수단은 제 1 로컬 제어기 수단 및 제 2 로컬 제어기 수단을 포함하고,
    상기 제 1 메모리 어드레스는 상기 제 1 메모리 뱅크 수단에 위치되고,
    상기 제 2 메모리 어드레스는 상기 제 2 메모리 뱅크 수단에 위치되고,
    상기 제 1 표시된 동작은 상기 제 2 표시된 동작과 상이한,
    메모리.
  34. 제 33 항에 있어서,
    상기 제 1 표시된 동작은 판독 동작을 포함하고,
    상기 제 2 표시된 동작은 기록 동작을 포함하고,
    상기 제 1 로컬 제어기 수단은 상기 판독 동작을 실행하는 반면, 상기 제 2 로컬 제어기 수단은 상기 기록 동작을 실행하는,
    메모리.
  35. 방법으로서,
    적어도 제 1 및 제 2 메모리 뱅크들을 갖는 멀티-뱅크 메모리를 제공하기 위한 단계들 ― 상기 제 1 및 제 2 메모리 뱅크들 각각은 복수의 단일-포트 메모리 엘리먼트들을 포함함 ― ;
    상기 적어도 제 1 및 제 2 메모리 뱅크들에 대한 판독 및 기록 동작들을 제어하기 위한 제 1 및 제 2 로컬 제어기들을 제공하기 위한 단계들;
    판독 및 기록 명령들을 상기 제 1 및 제 2 로컬 제어기들에 전송하기 위한 글로벌 제어기를 제공하기 위한 단계들; 및
    판독 명령을 상기 제 1 로컬 제어기에 전송하고, 동시에, 기록 명령을 상기 제 2 로컬 제어기에 전송하기 위한 단계들을 포함하는,
    방법.
  36. 제 35 항에 있어서,
    제 1 메모리 어드레스 및 상기 제 1 메모리 어드레스에서 수행될 제 1 동작을 포함하는 제 1 명령, 및 제 2 메모리 어드레스 및 상기 제 2 메모리 어드레스에서 수행될 제 2 동작을 포함하는 제 2 명령을 상기 글로벌 제어기에 제공하기 위한 단계들을 포함하는,
    방법.
KR1020147016345A 2011-11-16 2012-11-16 다수의 뱅크들에 동시 판독/기록 액세스를 제공하도록 구성된 메모리 Active KR101669945B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/297,771 2011-11-16
US13/297,771 US8699277B2 (en) 2011-11-16 2011-11-16 Memory configured to provide simultaneous read/write access to multiple banks
PCT/US2012/065658 WO2013075013A1 (en) 2011-11-16 2012-11-16 Memory configured to provide simultaneous read/write access to multiple banks

Publications (2)

Publication Number Publication Date
KR20140098792A true KR20140098792A (ko) 2014-08-08
KR101669945B1 KR101669945B1 (ko) 2016-10-27

Family

ID=47470109

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147016345A Active KR101669945B1 (ko) 2011-11-16 2012-11-16 다수의 뱅크들에 동시 판독/기록 액세스를 제공하도록 구성된 메모리

Country Status (10)

Country Link
US (1) US8699277B2 (ko)
EP (2) EP3082048B1 (ko)
JP (1) JP5852259B2 (ko)
KR (1) KR101669945B1 (ko)
CN (1) CN104081372B (ko)
BR (1) BR112014011806B1 (ko)
ES (2) ES2700854T3 (ko)
HU (1) HUE028961T2 (ko)
IN (1) IN2014CN03730A (ko)
WO (1) WO2013075013A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020227293A1 (en) * 2019-05-06 2020-11-12 Micron Technology, Inc. Dynamic data placement for collision avoidance among concurrent write streams
WO2020227294A1 (en) * 2019-05-06 2020-11-12 Micron Technology, Inc. Timed data transfer between a host system and a memory sub-system

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013014841A1 (ja) * 2011-07-22 2013-01-31 パナソニック株式会社 データ処理装置およびデータ処理方法
US10719237B2 (en) 2016-01-11 2020-07-21 Micron Technology, Inc. Apparatuses and methods for concurrently accessing multiple partitions of a non-volatile memory
US10140044B2 (en) * 2016-03-31 2018-11-27 Qualcomm Incorporated Efficient memory bank design
US11294594B2 (en) * 2017-08-07 2022-04-05 Kioxia Corporation SSD architecture supporting low latency operation
US11776591B2 (en) * 2019-09-26 2023-10-03 Arm Limited Concurrent access techniques utilizing wordlines with the same row address in single port memory
US11386937B2 (en) 2019-10-12 2022-07-12 Arm Limited System device and method for providing single port memory access in bitcell array by tracking dummy wordline

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010013997A (ko) * 1997-06-18 2001-02-26 린치 마이클 엘. 메모리 장치 내의 국부 제어신호 발생 방법 및 장치
KR20100097074A (ko) * 2009-02-24 2010-09-02 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 메모리 회로, 시스템 및 그 인터리빙 액세스 방법
US20110087846A1 (en) * 2009-10-09 2011-04-14 Qualcomm Incorporated Accessing a Multi-Channel Memory System Having Non-Uniform Page Sizes
US8140739B2 (en) * 2008-08-08 2012-03-20 Imation Corp. Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0145224B1 (ko) 1995-05-27 1998-08-17 김광호 불휘발성 반도체 메모리의 분리된 기입 및 독출 경로를 가지는 워드라인 구동회로
US5996051A (en) 1997-04-14 1999-11-30 Advanced Micro Devices, Inc. Communication system which in a first mode supports concurrent memory acceses of a partitioned memory array and in a second mode supports non-concurrent memory accesses to the entire memory array
CA2239426A1 (en) 1998-06-03 1999-12-03 Newbridge Networks Corporation Shared memory system
JP2000276400A (ja) * 1999-03-25 2000-10-06 Univ Hiroshima アドレス及びデータ転送回路
US6412030B1 (en) 1999-04-16 2002-06-25 Koninklijke Philips Electronics N.V. System and method to optimize read performance while accepting write data in a PCI bus architecture
CN1282925A (zh) * 1999-07-12 2001-02-07 松下电器产业株式会社 数据处理装置
US6377492B1 (en) 2001-03-19 2002-04-23 Etron Technologies, Inc. Memory architecture for read and write at the same time using a conventional cell
US7738496B1 (en) 2002-12-31 2010-06-15 Cypress Semiconductor Corporation Device that provides the functionality of dual-ported memory using single-ported memory for multiple clock domains
JP4413524B2 (ja) * 2003-05-01 2010-02-10 株式会社東芝 マルチポートメモリ
JP2005242929A (ja) * 2004-02-27 2005-09-08 Fujitsu Ltd 共有メモリのアクセス方法及びデータ処理装置
US20070028027A1 (en) 2005-07-26 2007-02-01 Micron Technology, Inc. Memory device and method having separate write data and read data buses
US7533222B2 (en) 2006-06-29 2009-05-12 Mosys, Inc. Dual-port SRAM memory using single-port memory cell
JP4205743B2 (ja) * 2006-08-22 2009-01-07 エルピーダメモリ株式会社 半導体記憶装置及び半導体装置
US7523228B2 (en) * 2006-09-18 2009-04-21 International Business Machines Corporation Method for performing a direct memory access block move in a direct memory access device
US7551512B2 (en) 2007-07-30 2009-06-23 Agere Systems Inc. Dual-port memory
US7739433B2 (en) 2008-03-05 2010-06-15 Microchip Technology Incorporated Sharing bandwidth of a single port SRAM between at least one DMA peripheral and a CPU operating with a quadrature clock
US7760562B2 (en) 2008-03-13 2010-07-20 Qualcomm Incorporated Address multiplexing in pseudo-dual port memory
US8331123B2 (en) * 2009-09-21 2012-12-11 Ocz Technology Group, Inc. High performance solid-state drives and methods therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010013997A (ko) * 1997-06-18 2001-02-26 린치 마이클 엘. 메모리 장치 내의 국부 제어신호 발생 방법 및 장치
US8140739B2 (en) * 2008-08-08 2012-03-20 Imation Corp. Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table
KR20100097074A (ko) * 2009-02-24 2010-09-02 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 메모리 회로, 시스템 및 그 인터리빙 액세스 방법
US20110087846A1 (en) * 2009-10-09 2011-04-14 Qualcomm Incorporated Accessing a Multi-Channel Memory System Having Non-Uniform Page Sizes

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020227293A1 (en) * 2019-05-06 2020-11-12 Micron Technology, Inc. Dynamic data placement for collision avoidance among concurrent write streams
WO2020227294A1 (en) * 2019-05-06 2020-11-12 Micron Technology, Inc. Timed data transfer between a host system and a memory sub-system
US11113198B2 (en) 2019-05-06 2021-09-07 Micron Technology, Inc. Timed data transfer between a host system and a memory sub-system
US11113006B2 (en) 2019-05-06 2021-09-07 Micron Technology, Inc. Dynamic data placement for collision avoidance among concurrent write streams
US11487666B2 (en) 2019-05-06 2022-11-01 Micron Technology, Inc. Timed data transfer between a host system and a memory sub-system
US11573742B2 (en) 2019-05-06 2023-02-07 Micron Technology, Inc. Dynamic data placement for collision avoidance among concurrent write streams
US12045168B2 (en) 2019-05-06 2024-07-23 Micron Technology, Inc. Timed data transfer between a host system and a memory sub-system

Also Published As

Publication number Publication date
EP3082048A1 (en) 2016-10-19
US8699277B2 (en) 2014-04-15
EP2780813B1 (en) 2016-04-06
ES2700854T3 (es) 2019-02-19
BR112014011806B1 (pt) 2021-01-26
CN104081372A (zh) 2014-10-01
US20130121086A1 (en) 2013-05-16
JP2014533861A (ja) 2014-12-15
EP3082048B1 (en) 2018-10-03
EP2780813A1 (en) 2014-09-24
HUE028961T2 (en) 2017-02-28
KR101669945B1 (ko) 2016-10-27
IN2014CN03730A (ko) 2015-07-03
CN104081372B (zh) 2017-06-13
WO2013075013A1 (en) 2013-05-23
JP5852259B2 (ja) 2016-02-03
BR112014011806A2 (pt) 2017-05-16
ES2575095T3 (es) 2016-06-24

Similar Documents

Publication Publication Date Title
KR101669945B1 (ko) 다수의 뱅크들에 동시 판독/기록 액세스를 제공하도록 구성된 메모리
KR102152281B1 (ko) 불휘발성 메모리의 다수의 파티션을 동시에 액세스하기 위한 장치 및 방법
US7978557B2 (en) Semiconductor memory device and data processing system including the semiconductor memory device
US20100153637A1 (en) Arbitration for memory device with commands
CN1988034B (zh) 具有在端口间的数据发送模式的多径访问半导体存储器件
US9953688B1 (en) Precharge control device and semiconductor device including the same
US20100182864A1 (en) Semiconductor memory device requiring refresh operation
US20080189479A1 (en) Device, system and method for controlling memory operations
US10714161B2 (en) Semiconductor device
US9171594B2 (en) Handling collisions between accesses in multiport memories
KR20080067506A (ko) 공유 어드레스 포트를 이용하여 메모리 어레이를 액세스할수 있는 메모리 시스템 및 그것의 액세스 방법
US7778103B2 (en) Semiconductor memory device for independently selecting mode of memory bank and method of controlling thereof
US20060200606A1 (en) Bus connection method and apparatus
US8994419B2 (en) Semiconductor device, semiconductor system including the same, and method for operating the same
US8537624B2 (en) Semiconductor memory device and method of operating the same
JP2009289307A (ja) 半導体記憶装置
KR20120132871A (ko) 프로세서, 이의 데이터 처리 방법, 및 이를 포함하는 메모리 시스템
KR20050079862A (ko) 접근 금지 신호를 갖는 듀얼 포트 메모리 장치
US8848480B1 (en) Synchronous multiple port memory with asynchronous ports
KR100886179B1 (ko) 듀얼 포트 메모리로의 액세스 권한 획득 처리 방법 및 이를위한 장치
US8243533B2 (en) Semiconductor memory device and method of operating the same
US9508418B1 (en) Semiconductor device

Legal Events

Date Code Title Description
A201 Request for examination
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

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

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

R17-X000 Change to representative recorded

St.27 status event code: A-5-5-R10-R17-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 10