KR100494201B1 - 메모리시스템,i/o서브시스템장치,및메모리장치를동작시키는방법 - Google Patents

메모리시스템,i/o서브시스템장치,및메모리장치를동작시키는방법 Download PDF

Info

Publication number
KR100494201B1
KR100494201B1 KR1019970019739A KR19970019739A KR100494201B1 KR 100494201 B1 KR100494201 B1 KR 100494201B1 KR 1019970019739 A KR1019970019739 A KR 1019970019739A KR 19970019739 A KR19970019739 A KR 19970019739A KR 100494201 B1 KR100494201 B1 KR 100494201B1
Authority
KR
South Korea
Prior art keywords
array
data
subsystem
bit lines
memory
Prior art date
Application number
KR1019970019739A
Other languages
English (en)
Other versions
KR980004055A (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 KR980004055A publication Critical patent/KR980004055A/ko
Application granted granted Critical
Publication of KR100494201B1 publication Critical patent/KR100494201B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1647Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)
  • Memory System (AREA)

Abstract

메모리(20)는 메모리 셀들의 제 1 어레이(100) 및 제 2 어레이(102)를 포함한다. 제 1 데이타 포트(118)는 제 1 어레이(100)와 데이타의 교환을 허용하고, 제 2 데이타 포트(120)는 제 2 어레이(102)와 데이타의 교환을 허용한다. 메모리 시스템(20)은 또한 선택된 모드에서 제 1 데이타 포트(118)를 통한 제 1 어레이(100)와의 데이타 교환 및 제 2 데이타 포트(120)를 통한 제 2 어레이(102)와의 데이타 교환을 제어하는 회로(122)를 포함하고, 제 1 및 제 2 어레이들(100, 102)과의 데이타 교환은 비동기적이다.

Description

메모리 시스템, I/O 서브시스템 장치, 및 메모리 장치를 동작시키는 방법
관련 출원들의 상호 참조
다음의 동시 계류중이며 함께 양도된 출원, 즉 1995년 10월 26일 제출된 발명의 명칭이 "다중 뱅크 메모리 아키텍처와 이것을 이용한 시스템 및 방법(MULTIPLE-BANK MEMORY ARCHITECTURE AND SYSTEMS AND METHODS USING THE SAME)"인 미국 특허 출원 번호 제 08/548,752(대리인 도켓 번호 2836-PO14US)호와, 이 출원과 동시에 제출된 발명의 명칭이 "다중 뱅크 다중 포트 메모리와 이것을 이용한 시스템 및 방법(MULTI-PORT MEMORIES AND SYSTEMS AND METHODS USING THE SAME)"인 미국 특허 출원 번호 제 08/ (대리인 도켓 번호 2836-P051US)호는 관련 정보를 포함하고 있으며, 본 명세서에 참조로 포함된다.
본 발명의 분야
본 발명은 광범위하게 컴퓨터 프로세싱 서브시스템들에 관한 것으로, 특히 이중 포트 메모리들 및 이것을 이용한 시스템들 및 방법들에 관한 것이다.
본 발명의 배경
종래의 컴퓨터 프로세싱 시스템은 일반적으로 중앙 처리 장치(CPU), 메인 메모리 및 기억 장치들, 키보드, 디스플레이 장치들 및 네트워크 제어기들과 같은 다른 하드웨어 장치들을 포함한다. 일반적으로, 이 구성 요소들 모두는 적어도 하나의 버스를 통해 함께 접속된다. 또한, 통상적으로 시스템에 걸쳐 분포된 각종 I/O 서브시스템 장치들로 구성된, I/O(입력 또는 출력 또는 이들 모두) 서브시스템은 컴퓨터 버스(들), CPU, 메모리 및 다른 하드웨어 장치들간의 상호 접속을 제어하는 것을 포함한다.
그 중에서, I/O 서브시스템은 예를 들면, 속도, 공급 전압, 및/또는 버스 프로토콜로 변할 수 있는 하드웨어 장치들간의 데이타 전송을 조정하고, 컴퓨터 프로세싱 시스템의 표준 아키텍처에서 제한을 맡고 있다. 그러나, 최근 산업에 사용되는 기본 I/O 서브시스템은 변경을 필요로 하는데, 그 이유는 부분적으로 CPU, 메모리 및 다른 하드웨어 장치들의 성능상의 향상이 일률적으로 일어나지 않기 때문이다. 이러한 하드웨어의 성능 차에도 불구하고, 컴퓨터 프로세싱 시스템 아키텍처의 각종 산업 표준을 유지하려는 소망이 남아 있어서, 주어진 시스템내의 데이타 전송율은 상당히 변하게 된다.
I/O 서브시스템은 전형적으로 컴퓨터 프로세싱 시스템 구성 요소들간의 중간 매개체로서 독립적으로 동작하는 각종 제어 회로들 및 메모리 캐시/버퍼들로 구성된다. 종래의 I/O 서브시스템 제어 회로들은 특정 애플리케이션에 따라 구조와 기능을 변경할 수 있지만, 일반적으로 시스템내의 효율적인 통신을 유지하기 위해 데이타 구조들이 적응되도록 요구하며 및/또는 선택된 하드웨어 프로토콜들간에서 변환을 행한다. 또한, I/O 서브시스템 메모리 캐시 및 버퍼들이 특정 애플리케이션에 따라 구조 및 동작을 변경할 수 있다 하더라도, 이들은 일반적으로 이들과 접속된 하드웨어 장치들의 데이타 전송율을 충족하거나 초과하는 전송율로 데이타를 전송해야만 한다. 메모리 캐시는 또한 데이타 구조를 적응시킬 때 관련된 제어기 회로와 협력해야 한다.
코어 로직은 일반적으로 다른 하드웨어 장치들을 함께 연결하는 특정 I/O 서브시스템 장치이다. 초기의 코어 로직 설계에는 직접 메모리 액세스(DMA) 제어기들, 인터럽트 제어 장치들 및 타이머-카운터 장치가 포함된다. 추후에, 이전의 개별 I/O 서브시스템 장치인, 산업 표준 아키텍처(ISA) 버스 제어기 및 버스 버퍼가 코어 로직 칩 세트와 결합된다. PCI(peripheral component interconnect) 버스 아키텍처용의 현 코어 로직 설계에는 이전의 ISA 버스 아키텍처, 시스템 메모리 및 캐시 제어기와의 호환성을 유지하기 위해 CPU 로컬 버스에서 PCI로의 브리지, PCI에서 ISA로의 브리지를 더 포함한다.
코어 로직내의 PCI 버스 브리지들의 구현은 시스템 메모리 제어기, 캐시 제어기, 비디오 디스플레이 어댑터(adapter)/제어기들과 같은 다른 하드웨어 장치들과 CPU를 인터페이스하기 위한 표준 아키텍처를 제공하도록 의도되었다. 이 하드웨어 장치들은 이전에 CPU 로컬 버스에 직접 접속되고, CPU 로컬 버스들이 각 CPU마다 다르기 때문에, 업그레이딩 CPU는 CPU 로컬 버스와의 하드웨어 장치 접속부를 모두 업그레이드시켜야만 한다. 현재, 이 하드웨어 장치는 코어 로직 및 PCI 버스를 통하여 CPU 로컬 버스와 접속되기 때문에, 업그레이딩 CPU는 CPU 칩 및 CPU 로컬 버스를 PCI 브리지 칩으로 대체하는 것만을 요구한다. 그러나, 시스템 아키텍처의 성능을 업그레이드하면, 현 PCI 버스 및 코어 로직 아키텍처는 CPU로부터 코어 로직 및 CPU 로컬 버스를 거쳐 PCI 브리지 칩으로 모든 정보를 전송함으로써 잠재적인 버틀넥(bottleneck)을 생성한다.
CPU는 시스템 버스들의 관리를 처리하고 다양한 소프트웨어 애플리케이션들을 실행하기 위해 코어 로직을 통해 통신한다. 현재, 산업용 컴퓨터 버스들 대부분은 CPU에 의해 관리된다. 이 능력에서, CPU는 시스템 마스터이며 일반적으로 소프트웨어 오퍼레이팅 시스템과 함께 전체 시스템 제어를 제공한다. 버스들 상에서 데이타 전송들을 관리하는 것 이외에, CPU는 소프트웨어 애플리케이션과 소프트웨어 오퍼레이팅 시스템의 실행을 다룬다. PCI 브리지에 이르는 CPU 로컬 버스에 의해 생성된 잠재적인 버틀넥을 완화하기 위해서, 몇몇 CPU 관리 기능을 코어 로직으로 이송하는 것이 바람직하다.
요컨대, 고성능 프로세서들, 메모리들, 및 다른 하드웨어 장치들의 출현으로, 이 하드웨어 장치들의 성능 능력들간의 차가 커졌다. 따라서 독립적인 태스크를 수행하며 및/또는 상이한 속도들로 동작하는 장치들간의 성능 충돌들을 최소화하기 위해, I/O 서브시스템 및 I/O 서브시스템 장치들, 특히, 코어 로직을 향상시킬 필요가 있다.
부가적으로, 복잡한 소프트웨어의 개발과 멀티미디어 애플리케이션들의 출현으로 실질적으로 기억 장치들 및 디스플레이 장치들 및/또는 사운드 장치들간에 대량의 데이타의 채널링을 요구하는 고속 및 대용량 데이타 전송들에 대한 수요가 증가되고 있다. 종종, 멀티미디어 애플리케이션들의 요건들은 이러한 애플리케이션용으로 설계되어 있지 않는 컴퓨터 프로세싱 시스템 아키텍처와 충돌한다. 과거에, CPU는 각종 컴퓨터 프로세싱 시스템 장치들간의 모든 데이타 전송들을 처리했다. 멀티미디어 애플리케이션들의 데이타 전송 요구를 충족시키기 위해, 종래의 몇몇 CPU 태스크들은 I/O 서브시스템 제어기들에 위임되나, I/O 서브시스템을 통해 데이타의 전송율을 향상시킬 필요성이 여전히 존재한다.
발명의 요약
본 발명의 원리들의 일실시예에 따르면, 메모리 셀들의 제 1 및 제 2 어레이들을 포함하는 메모리 시스템이 제공된다. 제 1 데이타 포트는 제 1 어레이와 데이타를 교환하기 위해 제공되고, 제 2 데이타 포트는 제 2 어레이와 데이타를 교환하기 위해 제공된다. 메모리 시스템은 또한 선택된 모드에서 제 1 데이타 포트를 통한 제 1 어레이와의 데이타 교환 및 제 2 데이타 포트를 통한 제 2 어레이와의 데이타 교환을 제어하는 회로를 포함하고, 제 1 및 제 2 어레이들과의 데이타 교환은 비동기적이다.
본 발명의 원리들의 다른 실시예에 따르면, I/O 서브시스템 장치가 제공된다. 제 1 세트의 어드레스들 및 제어 신호들을 수신하는 제 1 제어 포트 및 제 2 세트의 어드레스들 및 제어 신호들을 수신하는 제 2 제어 포트를 갖는 서브시스템 제어 회로가 포함된다. 메모리 셀들의 제 1 및 제 2 어레이들은 서브시스템에 포함되며, 어레이들 각각은 행(row)과 열(column)로 구성되고, 각 행은 워드선과 결합되고, 각 열은 비트선과 결합된다. 전송 게이트는 제 1 어레이의 비트선과 제 2 어레이의 비트선들 중 대응하는 한 비트선 사이에 배치되며, 전송 게이트는 서브시스템 제어 회로에 의해 제어된다. I/O 서브시스템은 부가적으로 제 1 및 제 2 메모리 어레이들과 데이타를 각각 교환하는 제 1 및 제 2 데이타 포트들을 포함한다. I/O 시스템은 제 1 모드에서 제 1 및 제 2 제어 포트들에 존재하는 독립 세트들의 어드레스들과 제어 신호들에 응답하여 제 1 및 제 2 데이타 포트들을 통해 제 1 및 제 2 어레이들에 비동기 액세스를 제공하도록 동작할 수 있다. I/O 시스템은 제 2 모드에서 제어 포트들 중 선택된 한 포트에 존재하는 어드레스들 및 제어 신호들에 응답하여 어레이들 중 선택된 어레이의 선택된 셀에서 어레이들 중 다른 어레이에 데이타를 전송하도록 동작할 수 있다.
본 발명의 원리들의 다른 실시예에 따르면, I/O 서브시스템 장치는 제 1 및 제 2 프로세싱 장치를 갖는 프로세싱 시스템에 이용하기 위해 제공된다. I/O 서브시스템은 서브시스템 제어 회로와 워드선 및 비트선을 갖는 메모리 셀들의 제 1 및 제 2 어레이들을 포함한다. 전송 게이트는 제 1 어레이의 비트선들 각각과 제 2 어레이의 비트선들 중 대응하는 비트선들간을 연결하고, 또한 전송 게이트는 서브시스템 제어 회로에 연결된다. 제 1 행 디코더는 서브시스템 제어 회로와 제 1 어레이의 워드선들간을 연결하고, 제 2 행 디코더는 서브시스템 제어 회로와 제 2 어레이의 워드선들간을 연결한다. 제 1 열 디코더는 서브시스템 제어 회로와 제 1 어레이의 비트선들간을 연결하고, 제 2 열 디코더는 서브시스템 제어 회로와 제 2 어레이의 비트선들간을 연결한다. I/O 서브시스템 장치는 제 1 및 제 2 프로세싱 장치들과 데이타를 교환하는, 제 1 및 제 2 열 디코더들에 연결된, 제 1 및 제 2 데이타 포트를 포함한다. 서브시스템 제어 회로는 제 1 열 디코더 및 제 1 행 디코더에 연결된 제 1 어레이 제어기와, 제 2 열 디코더 및 제 2 행 디코더에 연결된 제 2 어레이 제어기를 포함한다. 제 1 및 제 2 어레이 제어기들은 제 1 모드 동안 제 1 및 제 2 데이타 포트들을 통해 제 1 및 제 2 어레이들에 독립적인 액세스를 선택적으로 허용한다.
본 발명의 원리들은 또한 메모리 장치들을 동작시키는 방법들로 구체화된다. 예를 들면, 메모리 셀들의 제 1 및 제 2 어레이들을 포함하는 메모리 장치를 동작시키는 방법이 제공된다. 제 1 모드 동안, 제 1 제어 포트에서 수신된 어드레스들 및 제어 신호들에 응답하여 제 1 어레이가 제 1 데이타 포트를 통해 액세스된다. 제 1 모드 동안, 제 2 제어 포트에서 수신된 어드레스들 및 제어 신호들에 응답하여 제 2 어레이가 제 2 데이타 포트를 통해 액세스된다. 제 2 모드 동안, 제 1 및 제 2 제어 포트들 중 선택된 제어 포트에서 수신된 어드레스들 및 제어 신호들에 응답하여 데이타가 제 1 어레이에서 제 2 어레이로 전송된다.
본 발명과 본 발명의 다른 목적, 양태 및 이점을 보다 완전히 이해하기 위해서는 본 명세서에 제공된 첨부된 도면과 함께 다음의 바람직한 실시예의 설명을 이해해야 할 것이다.
양호한 실시예들의 설명
예시를 위하여 도면에 도시된 바와 같이, 본 발명은 2개의 개별 데이타 포트들을 통해 데이타를 판독 및 기입하는, 통상 참조 번호 20으로 표시된, 이중 포트메모리 장치로 구체화된다. 메모리(20)는 상부 뱅크, 즉 제 1 서브어레이(100) 및 하부 뱅크, 즉 제 2 서브어레이(102)를 포함하는, 메모리 셀의 n개의 행들과 m개의 열들로 된 어레이를 포함한다. 바람직한 실시예에서, 셀들은 다이나믹 랜덤 액세스 메모리(DRAM) 셀이다. 대안적인 실시예에서, 스태틱 랜덤 액세스 메모리(SRAM) 셀과 같은 다른 메모리 장치가 사용될 수 있다.
제 1 및 제 2 서브어레이(100, 102)의 사이즈 및 구성은 I/O 서브시스템의 의도된 사용에 따라 변할 수 있으나, 몇 가지 기본적인 관계는 바람직하게 유지된다. 일반적으로, 서브어레이는 메모리 셀의 열들의 수와 동일한 수, 즉 m개를 갖는 것이 바람직하다. 대조적으로, 각 서브어레이들(100/102)의 행들의 수는 변할 수 있으나, 행의 수가 동일할 때 어드레싱 이점이 실현될 수 있음은 당업자에게는 명백하다. 바람직한 실시예에서, 제 1 서브어레이(100)는 행들(0 내지
Figure pat00001
)을 포함하고, 제 2 서브어레이(102)는 행들(
Figure pat00002
내지 n-1)을 포함하고 여기서 0 내지 n-1 은 n개의 행들과 동일하다. 예시를 위하여, 포개진 비트선 아키텍처가 상세히 기술될 것이다.
제 1 및 제 2 서브어레이들(100, 102)의 각 행은 연속적인 워드선(104)에 결합된다(도 2). 제 1 서브어레이의 워드선들은 제 1 행 디코더 회로(106)에 연결되며 그 회로에 의해 제어되고, 제 2 서브어레이의 워드선들은 제 2 행 디코더 회로(108)에 연결되며 그 회로에 의해 제어된다.
예시를 위하여 도시된 바와 같이, 제 1 및 제 2 서브어레이의 셀들의 열들은 포개진 하프 비트선들의 쌍들로 배열된다. 주어진 행에 대하여, 하프 비트선(110)은 "참(true) 로직" 레벨 데이타를 전송하고, 다른 하프 비트선(112)은 대응하는 감지 증폭기에 의해 그 데이타의 보수로 래치된다. 도 2에 예시된 바와 같이, 비트선쌍들 BLA0 및 /BLA0 내지 BLAm 및 /BLAm은 각각 제 1 서브어레이(100)내에 포함되고, 비트선쌍들 BLB0 및 /BLBL 내지 BLBm 및 /BLBm은 제 2 서브어레이(102)내에 포함된다. 제 1 서브어레이(100)의 비트선들은 통상 제 1 열 디코더(114) 및 감지 증폭기 회로에 연결된다. 제 2 서브어레이(102)의 비트선들은 통상 제 2 열 디코더(116) 및 감지 증폭기 회로에 연결된다.
제 1 및 제 2 열 디코더 및 감지 증폭기 회로들(114, 116)은 종래와 같은 설계가 바람직하다. 기술에 공지되어 있는 바와 같이, 행 디코더들(106, 108)뿐만 아니라 열 디코더/감지 증폭기들(114, 116)은 스태틱 회로가 대안적으로 사용될 수 있더라도, 다이나믹 회로로 구성되는 것이 바람직하다. 제 1 열 디코더 및 감지 증폭기(114)는 통상 제 1 데이타 포트(118)(포트 A)에 접속되고, 제 2 열 디코더 및 감지 증폭기 회로(116)는 통상 제 2 데이타 포트(120)(포트 B)에 접속된다. 간략하고 명확히 하기 위해, 데이타 포트들(118, 120)에 결합된 통상의 데이타 입/출력 버퍼들 및 래치들은 도 1 및 도 2에 도시되어 있지 않는다.
메모리 제어 회로(122)는 제 1 및 제 2 서브어레이들(100, 102)의 행 및 열 디코더에 접속되고, 각 데이타 포트들을 통해 각 서브어레이(100/102)를 사용하여 데이타의 판독, 기입, 리플레쉬을 종래의 방식으로 독립적이고 비동기적으로 인에이블하도록 동작할 수 있다. 이 태스크를 달성하기 위하여, 제어 회로는 제 1 및 제 2 제어기 회로들(124, 126)을 포함할 수 있고, 각 제어기 회로는 어드레스와, 행 어드레스 스트로브(/RAS), 열 어드레스 스트로브(/CAS), 기입 인에이블(WE) 신호 및 대응하는 외부 장치로부터의 출력 인에이블(/OE) 신호를 포함하는 통상의 DRAM 제어 신호들을 수신한다. 바람직한 실시예에서, 제 1 및 제 2 제어기 회로들(124, 126), 행 디코더들(106, 108), 감지 증폭기/열 디코더들(114, 116)은 일반적으로 종래의 방식으로 제 1 및 제 2 서브어레이들 각각에 대한 리플레쉬 사이클의 실행뿐만 아니라 대응하는 데이타 포트들(118, 120)을 통하여 데이타의 독립적인 판독, 기입을 제어하도록 동작할 수 있다. 이러한 동작을 위해, 상기 구성 요소의 구조 및 동작은 미국 특허 출원 번호 호(대리인 도켓 번호 2836-PO14US)에 더 자세히 설명되며, 이는 본 명세서에 참조로 포함된다.
이제 본 발명의 바람직한 특징에 대해 설명하면, 이중 포트 메모리는 제 1 및 제 2 서브어레이들의 대응하는 비트선들(하프 비트선쌍들)을 선택적으로 접속하는 전송 게이트(128)를 더 포함한다. 예를 들면, 하프 비트선쌍 BLA0 및 /BLA0은 전송 게이트(128)에 의해 하프 비트선쌍 BLB0 및 BLB0 등에 선택적으로 접속될 수 있다. 전송 게이트(128)로는 개방 회로 위치와 폐쇄 회로 위치 사이에서 선택적으로 스위칭할 수 있는 2개의 상태 게이트가 바람직하다. 전송 게이트(128)는 메모리 제어기 회로(122)에 접속되며 그 회로에 의해 제어된다. 예시를 위하여, 전송 게이트(128)는 병렬로 접속된 일련의 NMOS형 트랜지스터(130)일 수 있으며, 제 1 서브어레이에서 대응하는 하프 비트선에 접속된 소스 단자(132) 및, 제 2 서브어레이에서 대응하는 하프 비트선들에 접속된 드레인 단자(134)를 갖는다. 트랜지스터들의 게이트들(136)은 전송 리드(140)에 병렬로 접속되는 것이 바람직하다. 전송 리드(140)는 "참(true) 논리" 하이 또는 로우 신호를 트랜지스터의 게이트에 선택적으로 공급한다. 예를 들어 NMOS형 트랜지스터를 적용함에 있어서, 하이 신호는 전류가 제 1 및 제 2 서브어레이의 각 비트선들 사이로 흐르는 것을 허용하는 폐쇄 회로를 만들고, 로우 신호는 제 1 및 제 2 서브어레이들의 각 비트선들을 분리하는 개방 회로를 만든다.
제어 회로(122)는 전송 게이트 제어기 회로(142)를 포함한다. 전송 게이트 제어기 회로(142)는 전송 게이트 리드(140)와 제 1 및 제 2 제어기 회로들(124, 126)에 접속된다. 전송 게이트 제어기 회로(142)는 일반적으로 제 1 및 제 2 서브 어레이들 사이의 그리고 서브어레이(100, 102) 각각과 대응하는 데이타 포트들(118, 120) 사이의 데이타 전송을 조정한다. 특히, 전송 게이트 제어기(142)는 데이타 전송이 요구될 때, 제어기들(124와 126)간의 신호들의 타이밍과 시퀀싱을 처리한다. 바람직하게는, 제 1 및 제 2 서브어레이들간의 데이타 전송은 제 1 또는 제 2 제어기 회로들 중 어느 하나의 요구에 따라 일어날 수 있다.
정상 동작 모드 동안, 데이타 어레이들((100)(어레이 A), (102)(어레이 B))은 제어기 회로들(124, 126)에 존재하며 독립적으로 발생되는 어드레스들과 DRAM 제어 신호들에 각각 응답하여 데이타 포트들(118, 120)을 통해 독립적이며 비동기적으로 액세스된다. 특히, 어레이 A의 액세스는 /RASA, /CASA, /WEA 및 /OEA과 어드레스 포트 ADDA상에 나타나는 어드레스들에 의해 제어되고, 어레이 B의 액세스는 RASB, /CASB, /WEB 및 /OEB과 어드레스 포트 ADDB상에 나타나는 어드레스들에 의해 제어된다. 각 경우에, DRAM 제어 신호는 거기에 전형적으로 결합된 통상적인 기능을 수행한다. 예를 들면, 각 /RAS 신호는 대응하는 어레이의 프리차지 사이클 및 액티브 사이클에 시간을 맞추고, 대응하는 어드레스 포트에 존재하는 행 어드레스들을 래치한다. /CAS 신호들은 열 어드레스들의 입력에 시간을 맞추고, 열 디코더 출력들을 제어한다. /OE 및 /WE 신호들은 마찬가지로 통상적인 방식으로 출력과 입력 데이타 래치들 및 버퍼들을 제어한다. 정상 모드에서 독립적인 제어 신호들 및 어드레스들을 사용함으로써 어레이 A 및 어레이 B는 적어도 2개의 비동기적으로 동작하는 장치들을 서포트할 수 있다. 특히, 제어 신호들 및 어드레스들의 타이밍을 적절히 선택함으로써, 어레이들 A 및 B는 실질적으로 상이한 클럭 레이트들로 동작하는 장치를 서포트할 수 있다는 이점이 있다.
전송 모드에서, 어레이들 A 및 B에 대한 액세스의 타이밍은 정밀하게 시간이 맞춰진다. 즉, 로크된다. 바람직하게, 제어기 회로 A(124)에 존재하는 어드레스들 및 제어 신호들(ADDA, /RASA, /CASA, /OEA, /WEA) 또는 제어기 회로 B(126)에 존재하는 어드레스들 및 제어 신호들(ADDB, /RASB, /CASB, /OEB, /WEB) 중 어느 하나는 2개의 뱅크를 제어하는데 사용된다.
바람직한 실시예에서, 전송 게이트 제어기 회로(142)는 전송의 제어를 전송 액세스의 요구의 함수로서 제어기 회로들 A 및 B에 나타나는 신호들로부터 선택한다. 따라서, 만약 제어기 회로 A("시스템 A")에 연결된 장치에 먼저 전송 요청이 나타나면, 제어 신호들의 "A 세트" 및 어드레스들은 제어기 회로 B("시스템 B")에 연결된 장치로부터 제어 신호들의 "B 세트" 및 어드레스들을 배제하여 동작을 제어하며, 그 역도 가능하다.
전송 동안, 소스와 목적지 어레이들간에서 행을 변화할 수 있도록 오프셋이 수신된 제어 어드레스에 부가되더라도, 제어 장치에서의 행 어드레스들이 2개의 뱅크들로 액세스하는데 사용되는 것이 바람직하다. 또한 외부 장치들 중 하나로부터 초기 어드레스가 수신된 후, 예를 들어 내부 리프레쉬 카운트를 사용하는 내부 행 어드레스 증분(incrementation)에 의해 다수의 행 전송들이 구현될 수 있음을 유념해야 한다. 이 경우, 외부 제어 장치로부터의 /RAS 신호 또는 내부적으로 발생된 /RAS 신호 둘 중 하나는 하나 또는 2개의 서브어레이들의 액티브 사이클 및 프리차지 사이클에 시간을 맞추는데 사용된다.
제 1 및 제 2 서브어레이들(100, 102)간의 데이타 전송은 전송측 및 수신측 서브어레이들(100/102)의 감지 증폭기 회로들의 리프레쉬 회로에 의존한다는 이점이 있다. 주어진 서브어레이의 하나의 행으로부터 제 2 서브어레이, 이 경우에 서브어레이 B로의 데이타 전송의 타이밍은 도 4와 함께 하기에 상세히 기재된다. 일반적으로, 전송측 어레이 A의 선택된 행의 셀들로부터의 전하는 대응하는 서브어레이 하프 비트선들상의 전하의 작은 변화로 얻어진다. 이 때, 전송측 서브어레이 A의 감지 증폭기들은 전하의 변화를 감지하고, 서브어레이 A 하프 비트선들 및 이들의 상보 하프 비트선들을 적절한 풀(full) 로직 전압 레벨들로 래치한다. 대응하는 행으로의 데이타의 전송을 준비하는 것 외에, 전송측 서브어레이의 전송 및 래치 동작들은 어드레스된 (소스) 행에서 데이타를 리프레쉬한다. 감지 증폭기들이 전송측 하프 비트선들을 래치하면, 전송 게이트는 폐쇄될 수 있고, 전하는 수신측 서브어레이 B의 비트선에 전송된다. 지연 후, 수신측 서브어레이 하프 비트선들은 전송 및 래치된다. 이 때, 데이타는 서브어레이 B에서 선택된 행의 셀들의 데이타를 오버라이트한다.
상술한 바와 같이, 전송 게이트 제어기 회로(142)는 애플리케이션에 의존하여 구조 및/또는 동작을 변경할 수 있다. 그 중에서도 특히, 연관된 시스템의 I/O서브시스템이 복잡하면 그에 따라 전송 게이트 제어기(142)도 복잡하게 된다. 전송 게이트 제어기 회로(142)의 기본 동작은 다음과 같이 설명될 수 있다.
본 발명의 이중 포트 메모리가 포트 A(118)에 연결된 시스템 A에서 포트 B(120)에 연결된 시스템 B로 데이타를 선택적으로 전송하는 단방향 버퍼로서 사용되는 I/O 서브시스템을 가정하자. 특정 예는 하기에 더 설명된다. "시스템 A"에 의해 전송 게이트 제어기(142)내의 제어 레지스터들에서 비트의 설정은 포트 A에서 포트 B로 데이타를 전송하는 요청으로서 작용할 수 있다. 이 경우에, 시스템 A는 시스템 B에 의해 임의의 유사한 요청 전에 전송 요청 비트를 제공한다고 가정하면, 그에 따라 시스템 B로부터의 임의의 요청들은 로크 아웃(lock out), 즉 무시된다. 포트 B를 판독하는 시스템 B는 레지스터내의 제어 회로 B(124)를 통해 상이한 (확인) 비트를 설정하여, 시스템 B가 준비되면, 전송을 진행하도록 한다. 바람직한 실시예에서, 두 어레이들에 대한 메모리 제어는 이제 제어 회로 A(124)에 제공된 어드레스들 및 제어 신호들하에서 가능하다.
전송 게이트 제어 로직(142)은 예를 들어 제어 레지스터(130)에서 하나 이상의 비트들에 의해 결정되는 몇몇의 미리 결정된 어드레스들에서 어레이 A의 리프레쉬를 개시하고 예를 들어 제어 레지스터(130)에서 하나 이상의 상이한 비트들에 의해 결정되는 몇몇 미리 결정된 종료 어드레스를 통해 진행하도록 명령을 시스템 A로 리턴한다. 레지스터 맵의 예는 도3에 도시된다. 상술한 바와 같이, 행 어드레스 증분 및 /RAS 타이밍은 각 행을 나아가는데 필요하면 내부적인 것 또는 외부적인 것일 수 있다. 이 특정 리프레쉬/전송 사이클들 각각 동안, 시스템 B는 시스템 A의 어드레스 정보를 수신하고 전송 게이트의 동작을 가능하게 하는 약간 지연된(10ns) 감지 증폭기 타이밍을 갖는 시스템 A의 슬레이브로서 역할을 한다.
이 실시예가 제 1 및 제 2 어드레스 버스들간의 몇몇 동기화 타이밍을 요구함이 이해된다. 또한, 당업자가 의도된 특정 애플리케이션에 의존하여 이해할 때 전송 게이트 회로의 다른 실시예가 필요할 수 있다. 부가적 애플리케어션은 양방향 전송과 어드레스 변환 등을 포함할 수 있다.
도 4에 도시된 바와 같이, 송신측 및 수신측 서브어레이의 행 및 어드레스 신호들의 타이밍은 성능을 최적화시키기 위해 정밀하게 서로 결합되어 있다. 전송 사이클의 개시는 일반적으로 전송 포트에 의해 적어도 하나의 제어 레지스터 비트의 설정에 대응하여 예측된다. 조정(arbitration)은 수신측 서브어레이가 아이들 상태가 되도록 수행된다. 이것은 비트를 전송하고자 하는 전송 포트의 요청과 예를 들어 수신측 어레이가 아이들 상태가 됨을 나타낼 수 있는 수신측 포트 비트를 논리적으로 결합함으로써 달성될 수 있다. 마스터 게이트 제어 로직은 그 다음 시스템들 A 및 B를 모두 제어하고, 데이타의 전송에 필요한 사이클을 실행할 수 있다.
시각 t1에서, 2개의 어레이 A 및 B에 대한 프리차지 신호들은 로우로 전이하여 2개의 어레이를 프리차지 상태에서 액티브 상태로 전환한다. 2개의 뱅크들에 대한 프리차지 신호들은 제어 시스템, 이 경우에 시스템 A로부터 /RAS에 응답하여 발생된다. 시각 t2에서, 소스 어레이, 이 예에서 서브어레이 A와 목적지 어레이(서브어레이 B) 둘 다에서 어드레스된 행의 워드선은 활성화된다.
시각 t3에서, 전송측 서브어레이 감지 증폭기는 선택된 행의 셀들로부터 전하의 감지된 변화에 응답하여 감지 하프 비트선들을 차징하기 시작한다. 이 예에서, BLAx 및 /BLAx상의 전압은 설명을 위해 예시된다. 주어진 비트선의 대응하는 셀이 하이 데이타를 유지하면, "참(true)" 하프 비트선은 "하이"로 차지(charge)되나, 셀이 로우 데이타를 유지하면, "참" 하프 비트선은 로우로 풀(pull)된다. 이에 따라 상보 하프 비트선은 상보적 상태로 설정된다. 설명을 위해, 셀 하프 비트선 BLAx가 로직 1로 이동하고, 대응하는 감지 증폭기가 BLAx를 차징하기 시작하고, /BLAx를 풀 다운(pull down)시킨다고 가정하자.
전송측 비트선들의 10ns 차징 후, 전송 게이트는 시각 t4서 폐쇄되고, 수신측 비트선들은 회로에서 전송측 비트선들에 접속된다. 이 때, 전송측 감지 증폭기들은, 수신측 감지 증폭기가 시각 t5에서 활성화된 후, 부가되는 10ns 동안 전송측 및 수신측 비트선들 둘 다를 차지한다. 30ns 기간에 가까워지면, 모든 비트선들은 이들의 각 감지 증폭기들에 의해 차지되고, 데이타는 전체 행에 동시에 전송된다. 보다 많은 셀들이 전송을 필요로 하는 경우, 새로운 /RAS 사이클이 시작되고, 다음 행이 선택되고, 데이타는 상술한 동일한 시퀀스를 이용하여 전송된다. 더 이상의 전송이 필요하지 않은 경우, 서브어레이는 각각 비동기적이며 독립적으로 동작하여 하나 이상의 행들을 리프레쉬한다.
각 전송이 전체 워드선의 데이타를 신호 RAS 사이클에서 송신측에서 수신측 서브어레이로 이동시킴을 당업자는 이해할 것이다. 이것은 열 디코더를 사용하여 바이트 단위의 전송보다 2배 빠를 수 있다.
실제로 가능한 애플리케이션의 수는 더 많지만, 본 발명의 원리들을 구체화하는 메모리의 애플리케이션의 예는 도 5-8에 도시된다. 또한, 도면을 이용하여 본 발명의 원리들을 완전히 예시하기 위해, 용어 "전송측 서브어레이"는 제 1 서브어레이(100)를 의미하고, 용어 "수신측 서브어레이"는 제 2 서브어레이(102)를 의미한다. 제 2 서브어레이가 "전송측 어레이"를 지정한다면, 상보적 동작이 마찬가지로 예시될 수 있음은 명백하다.
도 5는 본 발명의 이중 메모리 회로가 코어 로직 회로에 포함될 수 있는 바람직한 실시예를 도시한다. 여기서, 본 발명의 I/O 서브시스템 장치는 레벨 2 캐시(500), 로컬 버스에서 PCI 버스로의 브리지(502) 및/또는 DRAM에서 PCI 버스로의 버퍼를 구현하도록 사용된다.
L2 캐시(500)의 경우에, 한 어레이(100/102)는 CPU(506), DRAM, 캐시 제어기(508)와 인터페이스하는 반면, 다른 어레이는 메인 DRAM 메모리(504)와 인터페이스 한다. 제 1 어레이는 CPU(506)에 대한 실제 캐시로서 동작하고, 데이타를 메인 메모리(504)로부터 제 2 어레이로 독립적으로 운반할 수 있다. 제 2 어레이에서 데이타를 제 1 어레이로 캐시화하기 위해, CPU 및/또는 동작 시스템은 상술한 바와 같이 전송 게이트를 통하여 블럭 전송을 수행하기만 한다. 로컬 버스에서 PCI 버스로의 브리지(502)는 본질적으로 CPU가 시스템 주변 장치와 보다 직접적으로 통신할 수 있도록 한다. 메인 메모리에서 PCI 버스로의 버퍼(515)는 유사하게 주변 장치가 메인 메모리와 보다 직접적으로 통신할 수 있도록 한다.
두 번째 바람직한 실시예에서(도 6), 본 발명의 I/O 서브시스템 장치는 버스브리지 회로(600)에 포함된다. 이중 포트 메모리는 각 데이타 포트를 각 버스들(602, 604)의 데이타 리드에 접속시킬 수 있다. 이중 포트 메모리는 그 다음 버스들간에서 데이타를 전송하도록 브리지 제어기 회로와 함께 동작한다.
세 번째 바람직한 실시예에서(도 7), 본 발명의 I/O 서브시스템 장치는 주변장치 제어기(700)에 포함된다. 이중 포트 메모리는 상용 버스(702)의 데이타 리드와 주변 장치(704)의 데이타 리드간을 접속할 수 있다. 이중 포트 메모리는 그 다음 버스들간에서 데이타를 전송하도록 브리지 제어기 회로와 함께 동작한다.
네 번째 바람직한 실시예에서(도 8), 본 발명의 I/O 서브시스템 장치는 멀티프로세서 버스 애플리케이션들용의 캐시 또는 버퍼(800)에 포함되고, 여기서 제 1 서브어레이(100)를 제 1 프로세서(802)에 할당하고 제 2 서브어레이(102)를 제 2 프로세서(804)에 할당함으로써 데이타는 2개의 프로세서들(802, 804)간의 캐시 동작 중 저장된다. 이중 포트 메모리는 각 프로세서들간을 접속할 수 있다. 이중 포트 메모리는 그 다음 예상되는 CPU 버스간에서 데이타를 전송하도록 CPU 버퍼(800)에서 제어기 회로와 함께 동작한다.
한편, 본 발명은 여러 가지 변형과 대안적인 구조를 개시하고 있으며, 도면에 도시된 바람직한 실시예는 본 명세서에 상세히 기재된다. 그러나, 이는 본 발명을 상술한 특정 형태로 한정하려는 의도가 아님을 이해해야 한다. 대조적으로, 이는 본 발명이 첨부된 청구범위의 정신 및 범위내에 있는 모든 변형과 등가물 및 대안적인 구조를 커버할 수 있도록 의도된다.
본 발명의 원리들의 일실시예에 따르면, 메모리 셀들의 제 1 및 제 2 어레이들을 포함하는 메모리 시스템이 제공된다. 제 1 데이타 포트는 제 1 어레이와 데이타를 교환하기 위해 제공되고, 제 2 데이타 포트는 제 2 어레이와 데이타를 교환하기 위해 제공된다. 메모리 시스템은 또한 선택된 모드에서 제 1 데이타 포트를 통한 제 1 어레이와의 데이타 교환 및 제 2 데이타 포트를 통한 제 2 어레이와의 데이타 교환을 제어하는 회로를 포함하고, 제 1 및 제 2 어레이들과의 데이타 교환은 비동기적이다.
도 1은 본 발명을 구현하는 양호한 이중 포트 메모리의 기능적인 블럭도.
도 2는 전송 게이트의 회로도를 포함하는, 도 1에 도시한 본 발명의 실시예의 이중 포트 메모리의 상세한 블럭도.
도 3은 도 2의 메모리에서 데이타 전송의 명령 및 제어에 사용되는 제어 레지스터의 예를 도시한 맵.
도 4는 양호한 실시예의 감지 증폭기 타이밍도.
도 5는 본 발명의 이중 포트 메모리를 포함하는 코어 로직 칩의 블럭도.
도 6은 본 발명의 이중 포트 메모리를 포함하는 버스 브리지의 블럭도.
도 7은 본 발명의 이중 포트 메모리를 포함하는 주변 장치 제어기의 블럭도.
도 8은 본 발명의 이중 포트 메모리를 포함하는 이중 프로세서 버퍼의 블럭도.
※도면의 주요 부분에 대한 부호의 설명※
20 : 메모리 100 : 제 1 서브어레이
102 : 제 2 서브어레이 104 : 워드선
106 : 제 1 행 디코더 108 : 제 2 행 디코더
114 : 제 1 열 디코더 116 : 제 2 열 디코더
124 : 제 1 제어 회로 126 : 제 2 제어 회로

Claims (22)

  1. 메모리 시스템에 있어서,
    메로리 셀들의 제 1 어레이와,
    메모리 셀들의 제 2 어레이와,
    상기 제 1 어레이와 데이타를 교환하는 제 1 병렬 데이타 입/출력 포트와,
    상기 제 2 어레이와 데이타를 교환하는 제 2 병렬 데이타 입/출력 포트와,
    선택된 모드에서 상기 제 1 데이타 포트를 통한 상기 제 1 어레이와의 데이타 교환 및 상기 제 2 데이타 포트를 통한 상기 제 2 어레이와의 데이타 교환을 제어하는 회로를 포함하며,
    상기 제 1 포트와 상기 제 1 어레이 사이의 데이타 교환과, 상기 제 2 포트와 상기 제 2 어레이 사이의 데이타 교환은, 대응하는 제 1 및 제 2 세트의 어드레스 및 제어 신호들에 의해 독립적으로 제어되는, 메모리 시스템.
  2. 제 1 항에 있어서, 데이타 교환들을 제어하는 상기 회로는,
    상기 제 1 어레이의 상기 메모리 셀들 중 선택된 셀들을 액세스하는 제 1 어드레싱 회로와,
    상기 제 2 어레이의 상기 메모리 셀들 중 선택된 셀들을 액세스하는 제 2 어드레싱 회로와,
    수신된 어드레스들 및 제어 신호들에 응답하여 상기 어드레싱 회로 및 상기 제 1 및 제 2 데이타 포트들을 다이렉트하는 제어 회로를 포함하는, 메모리 시스템.
  3. 제 1 항에 있어서, 데이타 교환들을 제어하는 상기 회로는 또한 제 2 모드에서 상기 제 1 어레이의 상기 셀들 중 선택된 셀들에서 상기 제 2 어레이의 상기 셀들 중 선택된 셀들로 데이타의 전송을 제어하도록 동작할 수 있는, 메모리 시스템.
  4. 제 3 항에 있어서, 제어하는 상기 회로는 상기 제 2 모드에서 상기 제 1 어레이의 상기 선택된 셀들과 상기 제 2 어레이의 상기 선택된 셀들간에 데이타를 전송하는 전송 게이트를 포함하는, 메모리 시스템.
  5. 제 3 항에 있어서, 상기 어레이들 각각은 다수의 비트선들을 포함하고, 제어하는 상기 회로는 상기 제 2 모드에서 상기 제 1 어레이의 상기 비트선 상의 전하를 상기 제 2 어레이의 상기 비트선에 선택적으로 전송하는 전송 게이트를 포함하는, 메모리 시스템.
  6. 제 1 항에 있어서, 제어하는 상기 회로는,
    상기 제 1 어레이로의 액세스들을 제어하는 제 1 제어 회로로서, 제 1 세트의 어드레스들 및 제어 신호들에 응답하여 동작하는, 상기 제 1 제어 회로와,
    상기 제 2 어레이로의 액세스들을 제어하는 제 2 제어 회로로서, 제 2 세트의 어드레스들 및 제어 신호들에 응답하여 동작하는, 상기 제 2 제어 회로를 포함하는, 메모리 시스템.
  7. 제 1 항에 있어서, 제어하는 상기 회로는,
    상기 제 1 어레이의 워드선들에 결합된 제 1 행 디코더와,
    상기 제 2 어레이의 워드선들에 결합된 제 2 행 디코더와,
    상기 제 1 데이타 포트와 상기 제 1 어레이의 비트선들을 결합하는 제 1 열 디코더와,
    상기 제 2 데이타 포트와 상기 제 2 어레이의 비트선들을 결합하는 제 2 열 디코더와,
    어레이 제어 회로로서, 상기 제 1 열 디코더와 상기 제 1 행 디코더에 결합된 제 1 어레이 제어기와, 상기 제 2 열 디코더와 상기 제 2 행 디코더에 결합된 제 2 어레이 제어기를 포함하는, 상기 어레이 제어 회로를 포함하는, 메모리 시스템.
  8. 제 7 항에 있어서, 상기 제어 회로는,
    상기 제 1 및 제 2 어레이 제어기들간에 접속된 전송 게이트 제어기와, 상기 제 1 어레이의 상기 비트선들 중 비트선들과 상기 제 2 어레이의 상기 비트선들 중 비트선들을 선택적으로 결합하는 전송 게이트를 더 포함하는, 메모리 시스템.
  9. 제 4 항에 있어서, 상기 전송 게이트는, 상기 제 1 어레이의 적어도 하나의 상기 비트선과 상기 제 2 어레이의 적어도 하나의 비트선을 선택적으로 결합하는 적어도 하나의 트랜지스터를 포함하는, 메모리 시스템.
  10. I/O 서브시스템 장치에 있어서,
    서브시스템 제어 회로로서, 제 1 세트의 어드레스들과 제어 신호들을 수신하는 제 1 제어 포트 및 제 2 세트의 어드레스들과 제어 신호들을 수신하는 제 2 제어 포트를 포함하는, 상기 서브시스템 제어 회로와,
    행들 및 열들로 구성된 메모리 셀들의 제 1 및 제 2 어레이들로서, 상기 행 각각은 워드선에 결합되고, 상기 열 각각은 비트선에 결합되는, 상기 제 1 및 제 2 어레이들과,
    상기 제 1 어레이의 상기 비트선과 상기 제 2 어레이의 상기 비트선들 중 대응하는 한 비트선간에 배치된 전송 게이트로서, 상기 서브시스템 제어 회로에 의해 제어되는, 상기 전송 게이트와,
    상기 제 1 메모리 어레이와 데이타를 교환하는 제 1 병렬 데이타 입/출력 포트와,
    상기 제 2 메모리 어레이와 데이타를 교환하는 제 1 병렬 데이타 입/출력 포트를 포함하며,
    상기 I/O 서브시스템은 제 1 모드에서 상기 제 1 및 제 2 제어 포트들에 공급된 독립적인 세트들의 어드레스들 및 제어 신호들에 응답하여 상기 제 1 및 제 2 데이타 포트들을 통해 상기 제 1 및 제 2 어레이들에 독립적인 액세스를 제공하도록 동작할 수 있고, 제 2 모드에서 상기 제어 포트들 중 선택된 한 포트에 공급된 어드레스들 및 제어 신호들에 응답하여 상기 어레이들 중 선택된 어레이의 선택된 셀들에서 상기 어레이들 중 다른 어레이로 데이타를 전송하도록 동작할 수 있는, I/O 서브시스템 장치.
  11. 제 10 항에 있어서, 메모리가 상기 제 2 데이타 포트에 연결되고, 상기 I/O 서브시스템 장치는 캐시인, I/O 서브시스템 장치.
  12. 제 10 항에 있어서, 상기 제 1 데이타 포트는 CPU 로컬 버스에 연결되고,
    상기 제 2 데이타 포트는 주변 버스에 연결되고,
    상기 I/O 서브시스템 장치는 브리지인, I/O 서브시스템 장치.
  13. 제 10 항에 있어서, 시스템 메모리는 상기 제 2 데이타 포트들 중 선택된 포트에 연결되는, I/O 서브시스템 장치.
  14. 제 10 항에 있어서, 상기 제 1 데이타 포트는 제 1 프로세서에 연결되고,
    상기 제 2 데이타 포트는 제 2 프로세서에 연결되고,
    상기 I/O 서브시스템은 프로세서 브리지 버퍼인, I/O 서브시스템.
  15. 제 10 항에 있어서, 상기 제 1 데이타 포트는 IDE 제어기와 접속되고,
    상기 제 2 데이타 버스는 주변 장치와 접속되고,
    상기 I/O 서브시스템 장치는 데이타 버퍼인, I/O 서브시스템 장치.
  16. 제 15 항에 있어서, 상기 주변 장치는 기억 장치인, I/O 서브시스템 장치.
  17. 제 15 항에 있어서, 상기 주변 장치는 프린터인, I/O 서브시스템 장치.
  18. 제 1 및 제 2 버스들을 갖는 프로세싱 시스템에서 사용하기 위한 I/O 서브시스템 장치에 있어서,
    상기 제 1 및 제 2 버스들에 동작 가능하게 접속된 서브시스템 제어 회로와,
    상기 서브시스템 제어기, 상기 제 1 버스, 및 상기 제 2 버스에 동작 가능하게 접속된 서브시스템 메모리를 포함하며,
    상기 서브시스템 메모리는,
    워드선들과 비트선들을 갖는 메모리 셀들의 제 1 어레이와,
    워드선들과 비트선들을 갖는 메모리 셀들의 제 2 어레이와,
    상기 제 1 어레이의 상기 비트선들 각각과 상기 제 2 어레이의 상기 비트선들 중 대응하는 비트선들간에 연결되고, 상기 서브시스템 제어 회로에 연결된 전송 게이트와,
    상기 서브시스템 제어 회로와 상기 제 1 어레이의 상기 워드선들간에 연결된 제 1 행 디코더와,
    상기 서브시스템 제어 회로와 상기 제 2 어레이의 상기 워드선들간에 연결된 제 2 행 디코더와,
    상기 서브시스템 제어 회로와 상기 제 1 어레이의 상기 비트선들간에 연결된 제 1 열 디코더와,
    상기 서브시스템 제어 회로와 상기 제 2 어레이의 상기 비트선들간에 연결된 제 2 열 디코더와,
    상기 제 1 장치와 데이타를 교환하는 상기 제 1 열 디코더에 연결된 제 1 병렬 데이타 입/출력 포트와,
    상기 제 2 장치와 데이타를 교환하는 상기 제 2 열 디코더에 연결된 제 2 병렬 데이타 입/출력 포트를 포함하고,
    상기 서브시스템 제어 회로는,
    상기 제 1 열 디코더와 상기 제 1 행 디코더에 연결된 제 1 어레이 제어기와,
    상기 제 2 열 디코더와 상기 제 2 행 디코더간에 연결된 제 2 어레이 제어기를 포함하고,
    상기 제 1 및 제 2 어레이 제어기들은 상기 제 1 및 제 2 데이타 포트들을 통해 제 1 모드 동안 대응하는 제 1 및 제 2 세트의 어드레스 및 제어 신호들에 응답하여 상기 제 1 및 제 2 어레이들에 독립적인 액세스들을 선택적으로 허용하는, I/O 서브시스템 장치.
  19. 제 18 항에 있어서, 상기 제 1 및 제 2 어레이 제어기들은 상기 제 1 모드 동안 상기 제 1 및 제 2 어레이들에 독립적이며 비동기적인 액세스들을 허용하는, I/O 서브시스템 장치.
  20. 제 18 항에 있어서, 상기 제 1 및 제 2 어레이 제어기들 중 선택된 제어기는 제 2 모드 동안 상기 전송 게이트를 통해 상기 어레이들 중 선택된 어레이에서 상기 어레이들 중 다른 어레이로 데이타 전송을 제어하는, I/O 서브시스템 장치.
  21. 메모리 셀들의 제 1 및 제 2 어레이를 포함하는 메모리 장치를 동작시키는 방법에 있어서,
    제 1 모드 동안에는,
    제 1 제어 포트에서 수신되는 어드레스들 및 제어 신호들에 응답하여 제 1 데이타 포트를 통해 제 1 어레이를 독립적으로 액세스하는 단계와,
    제 2 제어 포트에서 수신되는 어드레스들 및 제어 신호들에 응답하여 제 2 데이타 포트를 통해 제 2 어레이를 독립적으로 액세스하는 단계와,
    제 2 모드 동안에는,
    제 1 및 제 2 제어 포트들 중 선택된 포트에서 수신되는 어드레스들 및 제어 신호들에 응답하여 상기 제 1 어레이의 비트선들에서 상기 제 2 어레이의 비트선들로 데이타를 전송하는 단계를 포함하며,
    상기 데이타는 상기 제 1 어레이의 상기 비트선들에 연결된 감지 증폭기들에 의해 상기 제 1 어레이의 상기 비트선들에서 상기 제 2 어레이의 상기 비트선들로 운반되는, 방법.
  22. 제 21 항에 있어서, 상기 전송 단계는,
    소스 행에 대응하는 제 1 어레이의 워드선과 목적지 행에 대응하는 제 2 어레이의 워드선을 활성화하는 단계와,
    소스 행에 따라 셀에서 데이타를 감지하고, 이에 응답하여 그에 연결된 제 1 어레이의 비트선을 대응하는 전압에 래칭하는(latching) 단계와,
    제 1 어레이의 비트선상의 전압을 제 2 어레이의 대응하는 비트선과 결합하도록 전송 게이트를 활성화하는 단계와,
    제 2 어레이의 비트선상의 전압을 감지 및 래칭하는 단계를 포함하는, 방법.
KR1019970019739A 1996-06-19 1997-05-21 메모리시스템,i/o서브시스템장치,및메모리장치를동작시키는방법 KR100494201B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US666,815 1991-03-08
US08/666,815 US5844856A (en) 1996-06-19 1996-06-19 Dual port memories and systems and methods using the same

Publications (2)

Publication Number Publication Date
KR980004055A KR980004055A (ko) 1998-03-30
KR100494201B1 true KR100494201B1 (ko) 2005-08-24

Family

ID=24675612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970019739A KR100494201B1 (ko) 1996-06-19 1997-05-21 메모리시스템,i/o서브시스템장치,및메모리장치를동작시키는방법

Country Status (5)

Country Link
US (1) US5844856A (ko)
EP (1) EP0814410A2 (ko)
JP (1) JPH1083673A (ko)
KR (1) KR100494201B1 (ko)
TW (1) TW337008B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100881196B1 (ko) 2007-05-29 2009-02-05 삼성전자주식회사 선택 가능한 두개의 비트 구조를 갖는 메모리 장치 및 이를구비하는 시스템

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3161385B2 (ja) * 1997-09-16 2001-04-25 日本電気株式会社 半導体記憶装置
JP3092558B2 (ja) * 1997-09-16 2000-09-25 日本電気株式会社 半導体集積回路装置
US6314499B1 (en) * 1997-11-14 2001-11-06 Lucent Technologies Inc. Non-preemptive memory locking mechanism in a shared resource system
US6199145B1 (en) * 1998-02-27 2001-03-06 Intel Corporation Configurable page closing method and apparatus for multi-port host bridges
US6260159B1 (en) * 1998-06-15 2001-07-10 Sun Microsystems, Inc. Tracking memory page modification in a bridge for a multi-processor system
US6141718A (en) * 1998-06-15 2000-10-31 Sun Microsystems, Inc. Processor bridge with dissimilar data registers which is operable to disregard data differences for dissimilar data direct memory accesses
JP3248617B2 (ja) * 1998-07-14 2002-01-21 日本電気株式会社 半導体記憶装置
JP2000113673A (ja) * 1998-10-01 2000-04-21 Nec Corp 半導体記憶装置とそのデータ転送方法
US6320811B1 (en) * 1998-12-10 2001-11-20 Cypress Semiconductor Corp. Multiport memory scheme
JP3618241B2 (ja) * 1999-02-02 2005-02-09 松下電器産業株式会社 半導体記憶装置
JP4132654B2 (ja) * 2000-12-18 2008-08-13 株式会社ルネサステクノロジ 表示制御装置および携帯用電子機器
US20050280623A1 (en) * 2000-12-18 2005-12-22 Renesas Technology Corp. Display control device and mobile electronic apparatus
KR100652224B1 (ko) * 2000-12-26 2006-11-30 엘지노텔 주식회사 보드간 상태정보 교환 장치
US6769050B1 (en) * 2001-09-10 2004-07-27 Rambus Inc. Techniques for increasing bandwidth in port-per-module memory systems having mismatched memory modules
US7333388B2 (en) * 2001-10-03 2008-02-19 Infineon Technologies Aktiengesellschaft Multi-port memory cells
JP2003280982A (ja) * 2002-03-20 2003-10-03 Seiko Epson Corp 多次元メモリのデータ転送装置及び多次元メモリのデータ転送プログラム、並びに多次元メモリのデータ転送方法
JP2006004079A (ja) * 2004-06-16 2006-01-05 Sony Corp 記憶装置
US7417907B1 (en) * 2004-12-23 2008-08-26 Sun Microsystems, Inc. Systems and methods for resolving memory address collisions
US7752410B1 (en) 2005-01-14 2010-07-06 Oracle America, Inc. System and method for accessing data in a multicycle operations cache
KR100689863B1 (ko) * 2005-12-22 2007-03-08 삼성전자주식회사 반도체 메모리 장치 및 그에 따른 방법
US7519754B2 (en) * 2005-12-28 2009-04-14 Silicon Storage Technology, Inc. Hard disk drive cache memory and playback device
US7906982B1 (en) 2006-02-28 2011-03-15 Cypress Semiconductor Corporation Interface apparatus and methods of testing integrated circuits using the same
US7769942B2 (en) 2006-07-27 2010-08-03 Rambus, Inc. Cross-threaded memory system
JP5731730B2 (ja) * 2008-01-11 2015-06-10 ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. 半導体記憶装置及びその半導体記憶装置を含むデータ処理システム
WO2010093538A1 (en) * 2009-02-11 2010-08-19 Rambus Inc. Shared access memory scheme
JP2010262698A (ja) * 2009-05-07 2010-11-18 Sanyo Electric Co Ltd 不揮発性半導体記憶装置
WO2011161798A1 (ja) * 2010-06-24 2011-12-29 富士通株式会社 半導体記憶装置及び半導体記憶装置の制御方法
US9759772B2 (en) 2011-10-28 2017-09-12 Teradyne, Inc. Programmable test instrument
US10776233B2 (en) 2011-10-28 2020-09-15 Teradyne, Inc. Programmable test instrument
TWI779069B (zh) * 2017-07-30 2022-10-01 埃拉德 希提 具有以記憶體為基礎的分散式處理器架構的記憶體晶片
US11968843B2 (en) * 2018-06-28 2024-04-23 Taiwan Semiconductor Manufacturing Co., Ltd. Processing core and MRAM memory unit integrated on a single chip

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4912680A (en) * 1987-09-03 1990-03-27 Minolta Camera Kabushiki Kaisha Image memory having plural input registers and output registers to provide random and serial accesses
JPH05151769A (ja) * 1991-11-28 1993-06-18 Mitsubishi Electric Corp マルチポートメモリ
KR930014576A (ko) * 1991-12-03 1993-07-23 시키모리야 이중포트 메모리
JPH05198167A (ja) * 1992-01-20 1993-08-06 Sharp Corp 半導体記憶装置
US5305280A (en) * 1991-04-04 1994-04-19 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device having on the same chip a plurality of memory circuits among which data transfer is performed to each other and an operating method thereof
KR940010090A (ko) * 1992-10-29 1994-05-24 김광호 반도체 메모리 장치

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6284495A (ja) * 1985-10-08 1987-04-17 Nippon Texas Instr Kk 半導体記憶装置
JPS63898A (ja) * 1986-06-19 1988-01-05 Fujitsu Ltd 半導体記憶装置
JPH01224993A (ja) * 1988-03-04 1989-09-07 Nec Corp マルチポートメモリ
KR950003605B1 (ko) * 1990-04-27 1995-04-14 가부시키가이샤 도시바 반도체 기억장치
US5121360A (en) * 1990-06-19 1992-06-09 International Business Machines Corporation Video random access memory serial port access
JP2696026B2 (ja) * 1991-11-21 1998-01-14 株式会社東芝 半導体記憶装置
US5377154A (en) * 1992-01-31 1994-12-27 Oki Electric Industry Co., Ltd. Multiple serial-access memory
US5390139A (en) * 1993-05-28 1995-02-14 Texas Instruments Incorporated Devices, systems and methods for implementing a Kanerva memory
DE69518286T2 (de) * 1994-06-17 2001-02-22 Advanced Micro Devices Inc Speicherübertragungsgeschwindigkeitsbegrenzung für PCI-Meister
US5473566A (en) * 1994-09-12 1995-12-05 Cirrus Logic, Inc. Memory architecture and devices, systems and methods utilizing the same
US5621902A (en) * 1994-11-30 1997-04-15 International Business Machines Corporation Computer system having a bridge between two buses with a direct memory access controller and an alternative memory access controller
US5687132A (en) * 1995-10-26 1997-11-11 Cirrus Logic, Inc. Multiple-bank memory architecture and systems and methods using the same
US5636174A (en) * 1996-01-11 1997-06-03 Cirrus Logic, Inc. Fast cycle time-low latency dynamic random access memories and systems and methods using the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4912680A (en) * 1987-09-03 1990-03-27 Minolta Camera Kabushiki Kaisha Image memory having plural input registers and output registers to provide random and serial accesses
US5305280A (en) * 1991-04-04 1994-04-19 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device having on the same chip a plurality of memory circuits among which data transfer is performed to each other and an operating method thereof
JPH05151769A (ja) * 1991-11-28 1993-06-18 Mitsubishi Electric Corp マルチポートメモリ
KR930014576A (ko) * 1991-12-03 1993-07-23 시키모리야 이중포트 메모리
JPH05198167A (ja) * 1992-01-20 1993-08-06 Sharp Corp 半導体記憶装置
KR940010090A (ko) * 1992-10-29 1994-05-24 김광호 반도체 메모리 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100881196B1 (ko) 2007-05-29 2009-02-05 삼성전자주식회사 선택 가능한 두개의 비트 구조를 갖는 메모리 장치 및 이를구비하는 시스템

Also Published As

Publication number Publication date
TW337008B (en) 1998-07-21
JPH1083673A (ja) 1998-03-31
EP0814410A2 (en) 1997-12-29
KR980004055A (ko) 1998-03-30
US5844856A (en) 1998-12-01

Similar Documents

Publication Publication Date Title
KR100494201B1 (ko) 메모리시스템,i/o서브시스템장치,및메모리장치를동작시키는방법
US6510098B1 (en) Method and apparatus for transferring data in a dual port memory
US7386649B2 (en) Multiple processor system and method including multiple memory hub modules
US7418526B2 (en) Memory hub and method for providing memory sequencing hints
US7966430B2 (en) Apparatus and method for direct memory access in a hub-based memory system
KR101005114B1 (ko) 모드 레지스터에서의 버스트 길이 설정 변화 없이 상이한버스트―길이 액세스들을 지원하는 dram
US4633440A (en) Multi-port memory chip in a hierarchical memory
EP0126976A2 (en) Multiprocessor system with communicating random access shared memory
KR100329893B1 (ko) 메모리 버스 시스템 및 이중 모드 메모리 시스템
KR20000076226A (ko) Sram과 dram을 포함하는 메모리 및 메모리를 사용하는 시스템 및 방법
US5555209A (en) Circuit for latching data signals from DRAM memory
US5822768A (en) Dual ported memory for a unified memory architecture
US5167029A (en) Data processing system and associated process using memory cards having data modify functions utilizing a data mask and an internal register
JPH0146946B2 (ko)
JP3384770B2 (ja) コマンド・スタッキングを有する高帯域幅で狭い入出力のメモリ装置
US6425020B1 (en) Systems and methods for passively transferring data across a selected single bus line independent of a control circuitry
EP0487901A2 (en) Disk controller using a video ram
JPS6326753A (ja) メモリ−バス制御方法
Gasbarro The Rambus memory system
EP0597296A2 (en) Cache architecture for high speed memory-to-I/0 data transfers
JPH0652516B2 (ja) バス・インターフェース装置
JPS6395556A (ja) Dma転送装置

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: 20130429

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 12

EXPY Expiration of term