KR102066833B1 - 기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀 - Google Patents

기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀 Download PDF

Info

Publication number
KR102066833B1
KR102066833B1 KR1020130030738A KR20130030738A KR102066833B1 KR 102066833 B1 KR102066833 B1 KR 102066833B1 KR 1020130030738 A KR1020130030738 A KR 1020130030738A KR 20130030738 A KR20130030738 A KR 20130030738A KR 102066833 B1 KR102066833 B1 KR 102066833B1
Authority
KR
South Korea
Prior art keywords
inverter
write
coupled
subset
output
Prior art date
Application number
KR1020130030738A
Other languages
English (en)
Other versions
KR20130113977A (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 KR20130113977A publication Critical patent/KR20130113977A/ko
Application granted granted Critical
Publication of KR102066833B1 publication Critical patent/KR102066833B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction
    • G11C11/417Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction for memory cells of the field-effect type
    • G11C11/419Read-write [R-W] circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/12Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/18Bit line organisation; Bit line lay-out
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/08Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/14Word line organisation; Word line lay-out

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Static Random-Access Memory (AREA)

Abstract

다중-포트 메모리 배열(104)의 다중-포트 메모리 셀(112)은 기록 워드 라인들의 제 1 서브세트에 의해 디스에이블되는 제 1 인버터(206)와, 제 1 인버터(206)와 교차 결합되는 제 2 인버터(204)를 포함하고, 제 2 인버터(204)는 복수의 기록 워드 라인들의 제 2 서브세트(WWL4-7)에 의해 디스에이블된다. 제 1 선택 회로는 복수의 기록 비트 라인들의 제 1 서브세트에 결합된 데이터 입력들, 복수의 기록 워드 라인들의 제 1 서브세트에 결합된 선택 입력들, 및 제 2 인버터(204)의 입력에 결합된 출력을 구비한다. 제 2 선택 회로는 복수의 기록 비트 라인들 중 제 2 서브세트(WBL4-7)에 결합된 데이터 입력들, 복수의 기록 워드 라인들의 제 2 서브세트에 결합된 선택 입력들, 및 제 1 인버터(206)의 입력에 결합된 출력을 구비한다.

Description

기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀{WRITE CONTENTION-FREE, NOISE-TOLERANT MULTI-PORT BITCELL}
본 개시사항은 일반적으로 반도체 디바이스에 관한 것으로, 보다 상세하게는 다중-포트 비트셀들에 관한 것이다.
전형적인 레지스터-파일형 비트-셀에 있어서, 성공적인 기록 동작은 트랜지스터들의 크기에서의 정확한 비율에 의존하여, 기록 드라이버는 비트-셀 내의 래칭 트랜지스터들에 과잉-전력을 제공할 수 있게 된다. 비트셀이 기록들을 위해 최적화될 수 있을지라도, 낮은 전압 및 낮은 온도에서 기록 장애들이 관찰되어 왔다.
더욱이, 멀티쓰레딩(Multithreading) 마이크로프로세서들은 많은 판독 및 기록 포트들을 통해 레지스터 파일들을 더욱 더 선택한다. 많은 수의 포트들을 통합하는 것은 저장 노드들에 대한 커패시턴스를 증가시키고, 이는 더 긴 기록 시간을 야기할 수 있다. 많은 수의 기록 포트들은 기록 비트라인들의 스위칭으로부터 추가적인 잡음의 저장 노드로의 결합과 같은 다른 관심사항들을 초래한다.
낮은 전압 및 온도에서 신뢰할 수 있게 동작하는 다수의 결합해제된 판독 및 기록 포트들을 갖는, 신뢰할 수 있고, 잡음 내성을 갖는 레지스터 파일형 비트셀을 위한 디바이스들 및 방법들의 실시예들이 본 명세서에서 개시된다. 기록들은 경쟁이 없어서, 기록 장애는 기록 비트 라인 드라이버와 래칭 트랜지스터들 사이의 부적절한 비율들로 인해 발생하지 않는다. 기록 비트-라인들의 다수의 스위칭으로부터 잡음의 저장 노드들로의 결합은 최소화되고, 저장 노드들 중 어느 하나 상의 커패시턴스는 감소되어 기록 시간을 개선하도록 균형을 이룬다.
본 개시사항은 예를 통해 유사 참조들이 유사 요소들을 나타내는 첨부된 도면들에 의해 설명되지만, 이에 국한되지 않는다. 도면들의 요소들은 단순화와 명확성을 위해 도시되었고, 반드시 축척에 맞춰 도시된 것은 아니다.
도 1은 기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀이 본 개시사항의 일부 실시예들에 따라 구현되는 컴퓨터 처리 시스템을 도시하는 도면.
도 2는 도 1에 도시된 레지스터 파일 내에서 구현될 수 있는 다중-포트 메모리 비트셀의 일 실시예를 도시하는 도면.
도 3은 비트셀들의 2차원 배열을 갖는 도 1의 레지스터 파일의 일부의 일 실시예들 도시하는 도면.
도 4는 도 1의 레지스터 파일 내에서 구현될 수 있는 다중-포트 비트셀의 다른 실시예를 도시하는 도면.
도 5는 도 1의 레지스터 파일 내에서 구현될 수 있는 다중-포트 비트셀의 다른 실시예를 도시하는 도면.
도 6은 도 1의 레지스터 파일 내에서 사용될 수 있는 다중-포트 비트셀을 동작시키기 위한 방법의 일 실시예의 흐름도.
도 1은 기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀이 본 개시사항의 일부 실시예들에 따라 구현될 수 있는 컴퓨터 처리 시스템(100)을 도시한다.
도시된 실시예에 있어서, 컴퓨터 처리 시스템(100) 내의 구성요소들은 프로세서(102), 메모리 모듈(104), 입/출력(I/O) 취급기들/인터페이스들(106), 및 구성요소들 사이의 통신을 허용하기 위하여 버스(110)에 양방향으로 결합되는 다른 주변 디바이스들 또는 모듈들(108)을 포함한다. 프로세서(102)는 레지스터 파일(112), 레벨 1의 캐쉬 메모리 모듈들(114) 및 메모리 관리 유닛(MMU; 116)을 포함한다. 프로세서(102)는 다수의 명령들이 규칙을 벗어나 동시에 실행되는 수퍼스칼라(superscalar) 프로세서가 될 수 있다.
버스(110)는 컴퓨터 처리 시스템(100)의 외부로 통신할 수 있다. 본 개시사항의 다른 실시예들은 도 1에 도시된 것보다 더 많거나, 더 적거나 또는 상이한 구성요소들 및 기능 블록들을 사용할 수 있다. 일부 가능한 예들로서, 컴퓨터 처리 시스템(100)의 다른 실시예들은 타이머, 직렬 주변 인터페이스, 디지털-아날로그 변환기, 아날로드-디지털 변환기, 드라이버(예, 액정 디스플레이 드라이버), 및/또는 복수의 유형들의 메모리를 포함할 수 있다.
레지스터 파일(112)은 명령들이 실행되는 동안 데이터 및 어드레스들을 일시적으로 저장하기 위해 사용되는 레지스터들을 포함한다. 레지스터 파일(112)은 로드 명령의 제외 또는 분기 명령의 예측오류로 인해 방향 재설정이 발생할 때 구조 레지스터들의 상태를 저장하기 위하여 사용되는 체크포인트 레지스터들을 포함할 수 있다. 레지스터 데이터 워드마다 임의의 적당한 수의 비트들을 갖는 임의의 적당한 수의 레지스터들은 레지스터 파일(112)에 포함될 수 있다. 예컨대, 일부 구현들에 있어서, 각각이 데이터의 64비트들을 갖는 32개의 레지스터들이 존재할 수 있다.
MMU(116)는 다양한 캐쉬 메모리 및 버스 제어 신호들을 고속으로 제공할 수 있고, 또한 가상의 어드레스로부터 물리적인 어드레스로의 변환을 제공할 수 있다. 가상의 어드레스는 프로세서(102)에 의해 생성되고, 프로세서(102)에 의해 실행되는 코드에 의해 보여지는 어드레스이다. 물리적인 어드레스는 레벨-1의 RAM 메모리와 같은 다양한 높은-레벨의 메모리 뱅크들을 액세스하기 위하여 사용된다.
다른 실시예들에 있어서, 컴퓨터 처리 시스템(100)은 하나, 둘, 또는 임의의 수의 프로세서들(102)을 포함할 수 있다. 만약 복수의 프로세서들(102)이 컴퓨터 처리 시스템(100) 내에서 사용된다면, 이들 중 임의의 수는 동일할 수 있거나 또는 상이할 수 있다. 컴퓨터 처리 시스템(100)이 복수의 프로세서들(102)를 가질 수 있다할지라도, 단일 프로세서(102)는 그 스스로 복수의 명령 세트들을 실행할 수 있다는 것을 주의하라.
메모리 모듈(104)은, 레벨-1의 캐쉬 모듈들(114)보다 더 느린 액세스 레이트들을 갖는 명령 캐쉬 및 데이터 캐쉬 모듈의 하나 이상의 레벨들을 포함하는 다중-레벨의 캐쉬 구조를 포함할 수 있다. 메모리 모듈(104)은 주 메모리로도 언급되는 외부 메모리를 포함할 수 있고, 또한 버퍼들 등과 같은 추가적인 디바이스들을 선택적으로 포함할 수 있다.
도 2를 참조하면, 레지스터 파일(112) 내에서 구현될 수 있는 다중-포트 메모리 비트셀(200)의 일 실시예가 도시되었고, 이는 멀티플렉서(202), 인버터들(204, 206) 및 멀티플렉서(208)를 포함한다. 인버터들(204, 206)은 저장 요소(203)를 형성하고, 피드백 회로들로도 언급될 수도 있다. 인버터(204)는 인버터(206)와 병렬로 결합되며, 인버터(204)의 출력은 인버터(206)의 입력에 결합되고, 인버터(206)의 출력은 인버터(204)의 입력에 결합된다. 멀티플렉서(202)의 출력은 인버터(206)의 출력과 인버터(204)의 입력에 결합된다. 멀티플렉서(208)의 출력은 인버터(204)의 출력과 인버터(206)의 입력에 결합된다.
오로지 하나의 비트셀(200)만이 도시되었지만, 레지스터 파일(112) 내의 각 레지스터는 예컨대 32 또는 64개의 비트셀들과 같은 다수의 비트셀(200)을 포함할 수 있다. 추가적으로, 비트셀(200)이 8개의 기록 포트들(0 내지 7로 번호가 메겨진)을 갖는 것으로 도시되었지만, 비트셀(200)은 8보다 크거나 적은 임의의 적합한 수의 기록 포트들을 포함할 수 있다.
제 1 선택 회로 또는 멀티플렉서(202)는 입력으로서 기록 비트라인들(WBL0-WBL3)과, 제어 입력들로서 기록 워드 라인 선택 신호들(WWL0-WWL3)을 수신한다.
제 2 선택 회로 또는 멀티플렉서(208)는 입력으로서 기록 비트라인들(WBLB4-WBLB7)과, 제어 입력들로서 기록 워드 라인 선택 신호들(WWL4-WWL7) 을 수신한다.
인버터(204)는 멀티플렉서(202)로부터 입력, 및 반전 기록 워드 라인 선택 신호들4-7(WWLB4-WWLB7) 및 기록 워드 라인 선택 신호들4-7(WWL4-WWL7)로부터 제어신호들을 수신한다. 기록 워드 라인 선택 신호들(WWL4-WWL7) 중 하나가 멀티플렉서(208)가 기록 비트라인들(WBLB4-WBLB7) 중 하나로부터의 기록 데이터를 전달하는 것을 허용하도록 어서트(assert)되면, 인버터(204)는 멀티플렉서(208)와의 경쟁을 회피하도록 디스에이블되고, 인버터(206)는 멀티플렉서(208)로부터의 데이터를 수신하고, 데이터(DATA) 노드에서 멀티플렉서(208)의 반전된 데이터를 제공한다.
인버터(206)는 멀티플렉서(208)로부터 입력, 및 반전 기록 워드 라인 선택 신호들0-3(WWLB0-WWLB3)과 기록 워드 라인 선택 신호들0-3(WWL0-WWL3)로부터 제어 신호들을 수신한다. 기록 워드 라인 선택 신호들(WWL0-WWL3) 중 하나가 멀티플렉서(202)가 기록 비트라인들(WBL0-WBL3) 중 하나로부터의 기록 데이터를 전달하는 것을 허용하도록 어서트되면, 인버터(206)는 멀티플렉서(202)와의 경쟁을 회피하도록 디스에이블되고, 인버터(204)는 멀티플렉서(202)로부터의 데이터를 수신하고, 데이터B(DATAB) 노드에서 멀티플렉서(202)의 반전된 데이터를 제공한다.
비트셀(200)은 데이터(DATA) 및 데이터B(DATAB) 비트셀 저장 노드들 상에서 커패시턴스를 균형 잡도록 설계된다. 기록 포트들의 절반(0-3)은 멀티플렉서(202)를 통해 데이터(DATA) 저장 노드에 대한 단일-종단형 기록을 수행할 수 있고, 기록 포트들의 다른 절반(4-7)은 멀티플렉서(208)를 통해 데이터B(DATAB) 저장 노드에 대한 단일-종단형 기록을 수행할 수 있다.
도 3을 참조하면, 0-M의 열들과 0-N의 행들을 갖는 비트셀들의 2차원 배열을 갖는 레지스터 파일(112)의 일부의 실시예가 도시되었다. 비트셀(200)이 상부 좌측 구석에 도시되었지만, 비트셀(200)은 배열의 임의의 위치에 위치할 수 있다. 기록 동작을 위해, 각 비트셀은 행을 나타내기 위한 기록 워드 라인, 및 열을 나타내기 위한 기록 비트 라인에 따라 어드레스 지정될 수 있다. 판독 동작을 위하여, 각 비트셀은 행을 나타내기 위한 판독 워드, 및 열을 나타내기 위한 판독 비트 라인에 따라 어드레스 지정될 수 있다. 기록 워드 라인, 기록 비트 라인, 판독 워드 라인, 및 판독 비트 라인 신호들은 비트셀 내의 특정 포트를 추가로 지정할 수 있다. 예컨대, 기록 워드 라인 행 0, 포트 0(WW00) 및 기록 비트 라인 열 0, 포트 0(WB00)이 지정되어 제 1 행의 제 1 열의 비트셀의 제 1 포트에 기록할 수 있다. 다른 예로서, 판독 워드 라인 행 N, 포트 7(RWLN7) 및 판독 비트 라인 열 M, 포트 7 (RBLM7)이 지정되어, N번째 행의 M번째 열의 비트셀의 7번째 포트를 판독할 수 있다.
도 4를 참조하면, 비트셀(400)은, 4개의 판독 포트들, 8개의 기록 포트들 및 기록 경쟁이 없는 특징을 갖고, 레지스터 파일(112; 도 1)에서 구현될 수 있는 다중-포트 비트셀의 다른 실시예이다. 4개의 기록 포트들(402, 404, 406, 408)은 데이터(DATA) 노드에 대한 입력으로서 결합되고, 다른 4개의 기록 포트들(410, 412, 414, 416)은 데이터B(DATAB) 노드에 대한 입력으로서 결합된다. 데이터(DATA) 노드는 기록 포트들(402-408)의 제 1 세트의 출력, 피드백 회로(418)의 출력, 및 피드백 회로(420)의 입력에 연결된다. 데이터B(DATAB) 노드는 기록 포트들(410-416)의 제 2 세트의 출력, 피드백 회로(420)의 출력, 및 피드백 회로(418)의 입력에 연결된다.
피드백 회로들(418,420)은 병렬로 결합되어, 피드백 회로(418)의 출력이 피드백 회로(420)의 입력에 연결되고, 피드백 회로(420)의 출력이 피드백 회로(418)의 입력에 연결된다.
출력 또는 판독 풀다운 회로(422)는 두 개의 포트들(0,1)을 갖고, 데이터(DATA) 노드에 연결된다. 출력 또는 판독 풀다운 회로(424)는 두 개의 포트(2,3)를 갖고, 데이터B(DATAB) 노드에 연결된다. 출력 또는 판독 풀다운 회로(422, 424)의 동작은 각 판독 워드 라인 신호들(RWL0-RWL1, RWL2-RWL3)과 판독 비트 라인 신호들(RBL0-RBL1, RBL2-RBL3)에 의해 제어된다.
각 기록 포트(402-416)는 송신 게이트(426)와 인버터(428)를 포함한다. 송신 게이트(426)에 대한 제어 입력은 각 기록 워드 라인 신호(WWL0 - WWL7), 및 인버터(428)에 의해 제공된 각 기록 워드 라인 신호의 반전(WWLB0 - WWLB7)을 포함한다. 각 기록 비트 라인 신호들(WBL0-WBL3, WBLB4-WBLB7)은 대응하는 기록 워드 라인 신호(WWL0 - WWL7)가 설정될 때(예, 신호가 논리 1) 송신 게이트(426)를 통해 전달하도록 허용된다.
피득백 회로(418)는 PMOSFET(432)에 직렬로 결합된 PMOSFET(430), NMOSFET(434)에 직렬로 결합된 PMOSFET(432), 및 NMOSFET(436)에 직렬로 결합된 NMOSFET(434)를 포함한다. PMOSFET(430)의 제어 입력은 구동기 회로(438)에 의해 생성된 기록 워드 라인 피드백 제어 신호(WWL0_3)이다. NMOSFET(436)의 제어 입력은 또한 구동기 회로(438)에 의해 생성된 반전 기록 워드 라인 피드백 제어 신호(WWLB0_3)이다. 구동기 회로(438)은 인버터(442)와 직렬로 결합된 NOR 게이트(440)를 포함한다. NOR 게이트(440)의 입력은 기록 포트들(0 내지 3)로부터 기록 워드 라인 신호들(WWL0-WWL3)을 포함한다. WWL0-WWL3 신호들 중 하나가 논리 1로 설정되면, NOR 게이트(440)의 출력 신호(WWLB0_3)는 논리 0이다. WWL0-WWL3 신호들 모두가 논리 0으로 설정되면, NOR 게이트(440)의 출력 신호(WWLB0_3)는 논리 1이다. NOR 게이트(440)의 출력 신호(WWLB0_3)는 NMOSFET(436) 및 인버터(442)의 입력이다. 인버터(442)는 신호(WWLB0_3)를 반전시켜, PMOSFET(430)의 입력으로 제공되는 인버터 출력 신호(WWL0_3)를 생성한다.
피득백 회로(420)은 PMOSFET(452)에 직렬로 결합된 PMOSFET(450), NMOSFET(454)에 직렬로 결합된 PMOSFET(452) 및 NMOSFET(456)에 직렬로 결합된 NMOSFET(454)를 포함한다. PMOSFET(450)의 제어 입력은 구동기 회로(458)에 의해 생성된 기록 워드 라인 피드백 제어 신호(WWL4_7)이다. NMOSFET(456)의 제어 입력은 또한 구동기 회로(458)에 의해 생성된 반전 기록 워드 라인 피드백 제어 신호(WWLB4_7)이다. 구동기 회로(458)은 인버터(462)와 직렬로 결합된 NOR 게이트(460)를 포함한다. NOR 게이트(460)의 입력은 기록 포트들(4 내지 7)로부터 기록 워드 라인 신호들(WWL4-WWL7)을 포함한다. WWL4-WWL7 신호들 중 하나가 논리 1로 설정되면, NOR 게이트(460)의 출력 신호(WWLB4_7)는 논리 0이다. WWL4-WWL7 신호들 모두가 논리 0으로 설정되면, NOR 게이트(460)의 출력 신호(WWLB4_7)는 논리 1이다. NOR 게이트(460)의 출력 신호(WWLB4_7)는 NMOSFET(456) 및 인버터(462)의 입력이다. 인버터(462)는 신호(WWLB4_7)를 반전시켜, PMOSFET(450)의 입력으로 제공되는 인버터 출력 신호(WWL4_7)를 생성한다.
비트셀(400) 내의 다중 기록 포트들에 의한 기록 경쟁을 방지하기 위하여, 데이터(DATA) 노드로부터 피드백 신호(피드백 회로(418)에 의한 출력)이 피드백 회로(420)에 제공된다. 이에 따라, 데이터B(DATAB) 노드로부터의 피드백 신호(피드백 회로(420)에 의해 출력된)은 피드백 회로(418)에 제공된다. 피드백 회로(418, 420) 중 하나는 신호들이 다른 피드백 회로(418, 420)의 입력을 구동하는 기록 포트들에 의해 송신될 때 디스에이블된다. 디스에이블된 피드백 회로가 도통중인 송신 게이트를 방해하지 않을 것이기 때문에 기록 경쟁은 존재하지 않을 것이다. 비트셀(400)은 단일-종단형 기록이 단일 송신 게이트를 통해 수행되는 것을 허용한다. 모든 기록 포트들을 위한 기록 워드 라인들은 논리 0이거나, 기록 포트들 중 하나를 위한 기록 워드 라인은 논리 1이고, 비트셀(400)에 기록되는 각 기록 포트에 대한 기록 워드 라인이 어서트될 때, 관련된 송신 게이트가 도통되고, 도통 중인 송신 게이트에 결합된 출력을 갖는 피드백 회로가 디스에이블되어, 비트셀(400)에 대한 기록 데이터가 방해되지 않게 한다. 예컨대, 기록 포트들(402-408) 중 하나가 송신(기록) 중일 때, 피드백 회로(420)는 인에이블되고, 피드백 회로(418)는 디스에이블된다. 역으로 기록 포트들(410-416) 중 하나가 송신(기록) 중일 때, 피드백 회로(418)는 인에이블되고, 피드백 회로(420)는 디스에이블된다.
도 5를 참조하면, 비트셀(500)은, 4개의 판독 포트들, 4개의 기록 포트들 및 잡음 내성이 있고 기록 경쟁이 없는 특징을 포함하는, 도 1의 레지스터 파일(112) 내에서 구현될 수 있는 다중-포트 비트셀의 다른 실시예이다. 두 개의 기록 포트들(502, 504)은 제 1의 3상태 디바이스(506)의 입력으로서 결합되고, 다른 두 개의 기록 포트들(510,512)은 제 2의 3상태 디바이스(508)의 입력으로서 결합된다.
데이터B(DATAB) 노드는 3상태 디바이스(506)의 출력, 피드백 회로 또는 인버터(516)의 출력 및 피드백 회로 또는 인버터(514)의 입력에 연결된다. 데이터(DATA) 노드는 3상태 디바이스(508)의 출력, 피드백 회로(514)의 출력 및 피드백 회로(516)의 입력에 연결된다.
피드백 회로들(514,516)은 병렬로 결합되어, 피드백 회로(514)의 출력이 피드백 회로(516)의 입력에 연결되고, 피드백 회로(516)의 출력이 피드백 회로(514)의 입력에 연결된다.
판독 풀다운 회로(522)는 두 개의 포트들(0,1)을 갖고, 데이터B(DATAB) 노드에 연결된다. 판독 풀다운 회로(524)는 두 개의 포트(2,3)를 갖고, 데이터(DATA) 노드에 연결된다. 판독 풀다운 회로(522, 524)의 동작은 각 판독 워드 라인 신호들(RWL0,RWL1; RWL2,RWL3)과 판독 비트 라인 신호들(RBL0, RBL1; RBL2, RBL3)에 의해 제어된다.
도시된 실시예에 있어서, 기록 포트들(502-504)은 송신 게이트를 통해 구현되고, 이러한 송신 게이트는 각 기록 비트 라인 신호(WBL0, WBL1), 기록 워드 라인 신호(WWL0, WWL1), 및 대응하는 기록 워드 라인 신호를 수신하는 각 인버터에 의해 출력되는 각 기록 워드 라인 신호(WWL0B, WWL1B)의 반전을 수신한다. 각 기록 비트 라인 신호(WBL0, WBL1)는 대응하는 기록 워드 라인 신호(WWL0, WWL1)가 설정될 때(예, 신호는 논리 1) 송신 게이트들을 통해 전달되도록 허용된다. 기록 포트들(510-512)은 송신 게이트를 통해 구현되고, 이러한 송신 게이트는 각 반전 기록 비트 라인 신호(WBL2B, WBL3B), 기록 워드 라인 신호(WWL2, WWL3), 및 대응하는 기록 워드 라인 신호를 수신하는 각 인버터에 의해 출력되는 각 기록 워드 라인 신호(WWL2B, WWL3B)의 반전을 수신한다. 각 기록 비트 라인 신호들(WBL2B, WBL3B)은 대응하는 기록 워드 라인 신호(WWL0, WWL1)가 설정될 때(예, 신호는 논리 1) 송신 게이트들을 통해 전달되도록 허용된다.
3상태 디바이스(506)는 PMOSFET(528)에 직렬로 결합된 PMOSFET(526), NMOSFET(530)에 직렬로 결합된 PMOSFET(528) 및 NMOSFET(532)에 직렬로 결합된 NMOSFET(530)를 포함한다. 기록 포트들(502-504)의 출력(즉, 어느 송신 게이트가 도통되는지에 따라, WBL0 또는 WBL1)은 PMOSFET(526) 및 NMOSFET(532)의 제어 입력으로서 제공된다. 구동기 회로(576)는 인버터(579)와 직렬로 결합된 NOR 게이트(578)을 포함한다. NOR 게이트(578)의 입력은 기록 포트들(0 및 1)로부터의 기록 워드 라인 신호들(WWL0 및 WWL1)을 포함한다. WWL0 및 WWL1 신호들 중 하나가 논리 1로 설정되면, NOR 게이트(578)의 출력 신호는 논리 0이다. WWL0 및 WWL1 신호들 모두가 논리 0으로 설정되면, NOR 게이트(578)의 출력 신호는 논리 1이다. PMOSFET(528)의 제어 입력은 구동기 회로(576) 내의 NOR 게이트(578)에 의해 생성되는 결합된 기록 워드 라인 피드백 제어 신호(CWWL1B)의 반전이다. NMOSFET(530)의 제어 입력은 드라이버 회로(576) 내의 인버터(579)에 의해 생성된 결합된 기록 워드 라인 피드백 제어 신호(CWWL1)이다.
3상태 디바이스(508)는 PMOSFET(536)에 직렬로 결합된 PMOSFET(534), NMOSFET(538)에 직렬로 결합된 PMOSFET(536) 및 NMOSFET(540)에 직렬로 결합된 NMOSFET(538)를 포함한다. 기록 포트들(510, 512)의 출력(즉, 어느 송신 게이트가 도통되는지에 따라, WBL2B 또는 WBL3B)은 PMOSFET(534) 및 NMOSFET(540)의 제어 입력으로서 제공된다. 구동기 회로(577)는 인버터(581)와 직렬로 결합된 NOR 게이트(580)을 포함한다. NOR 게이트(580)의 입력은 기록 포트들(2 및 3)로부터의 기록 워드 라인 신호들(WWL2 및 WWL3)을 포함한다. WWL2 및 WWL3 신호들 중 하나가 논리 1로 설정되면, NOR 게이트(580)의 출력 신호는 논리 0이다. WWL2 및 WWL3 신호들 모두가 논리 0으로 설정되면, NOR 게이트(580)의 출력 신호는 논리 1이다. PMOSFET(536)의 제어 입력은 구동기 회로(577) 내의 NOR 게이트(580)에 의해 생성되는 결합된 기록 워드 라인 피드백 제어 신호(CWWL2B)의 반전이다. NMOSFET(538)의 제어 입력은 드라이버 회로(577) 내의 인버터(581)에 의해 생성된 결합된 기록 워드 라인 피드백 제어 신호(CWWL2)이다.
피드백 회로(514)는 PMOSFET(546)에 직렬로 결합된 PMOSFET(544), NMOSFET(548)에 직렬로 결합된 PMOSFET(546) 및 NMOSFET(550)에 직렬로 결합된 NMOSFET(548)를 포함한다. PMOSFET(544) 및 NMOSFET(550)의 제어 입력은 데이터B(DATAB) 노드 상의 신호이다. PMOSFET(546)의 제어 입력은 드라이버(577)로부터 결합된 기록 워드 라인 신호(CWWL2)이다. NMOSFET(548)에 대한 제어 입력은 드라이버(577)로부터 반전 결합된 기록 워드 라인 신호(CWWL2B)이다.
피드백 회로(514)는 PMOSFET(516)에 직렬로 결합된 PMOSFET(552), NMOSFET(556)에 직렬로 결합된 PMOSFET(516) 및 NMOSFET(558)에 직렬로 결합된 NMOSFET(556)를 포함한다. PMOSFET(552) 및 NMOSFET(558)의 제어 입력은 데이터(DATA) 노드 상의 신호이다. PMOSFET(516)의 제어 입력은 드라이버(576)로부터 결합된 기록 워드 라인 신호(CWWL1)이다. NMOSFET(556)에 대한 제어 입력은 드라이버(576)로부터 반전 결합된 기록 워드 라인 신호(CWWL1B)이다.
(피드백 회로(514)로부터 출력된) 데이터(DATA) 노드로부터의 피드백 신호는 피드백 회로(516)에 제공된다. 이에 따라, 데이터B(DATAB) 노드로부터의 피드백 신호(피드백 회로(516)에 의해 출력된)은 피드백 회로(514)에 제공된다. 비트셀(500) 내의 다중 기록 포트들에 의한 기록 경쟁을 방지하기 위하여, 피드백 회로(514, 516) 중 하나는 신호들이 다른 피드백 회로(514, 516)의 입력을 구동하는 기록 포트들에 의해 송신될 때 디스에이블된다. 디스에이블된 피드백 회로가 도통중인 송신 게이트를 방해하지 않을 것이기 때문에 기록 경쟁은 존재하지 않을 것이다. 비트셀(500)은 단일-종단형 기록이 단일 송신 게이트를 통해 수행되는 것을 허용한다. 모든 기록 포트들을 위한 기록 워드 라인들은 논리 0이거나, 기록 포트들 중 하나를 위한 기록 워드 라인은 논리 1이고, 비트셀(500)에 기록되는 각 기록 포트에 대한 기록 워드 라인이 어서트될 때, 관련 송신 게이트는 도통되고, 기록 중인 저장 노드에 결합된 출력을 갖는 피드백 회로가 디스에이블되어, 비트셀(500)에 대한 기록 데이터가 방해되지 않게 한다. 예컨대, 기록 포트들(502, 504) 중 하나가 송신(기록) 중일 때, 피드백 회로(514)는 인에이블되고, 피드백 회로(516)는 디스에이블된다. 역으로 기록 포트들(510, 512) 중 하나가 송신(기록) 중일 때, 피드백 회로(516)는 인에이블되고, 피드백 회로(514)는 디스에이블된다.
송신 게이트들(502)은 기록 워드 라인, 반전 기록 워드 라인, 및 기록 비트 라인 신호들의 조합에 의해 제어되는 3상태 디바이스들이다. 기록 포트들(502, 504, 510, 512)의 송신 게이트들은 관련된 기록 포트들(502, 504, 510, 512)(즉, 포트들 0-1 또는 포트들 2-3) 중 임의의 것을 통해 기록이 발생할 때 개방되고, 기록 포트들(502, 504, 510, 512) 중 임의의 것을 통해 기록이 발생하지 않을 때 폐쇄된다. 비트셀(500)에서, 3상태 디바이스(506,508)는, 다수의 기록 비트라인들이 비트셀(500) 내에서 유지된 값과 반대되게 스위칭될 때, 송신 게이트들(502, 504, 510, 512)을 통해 비트셀(500)의 저장 노드들(데이터(DATA) 노드와 데이터B(DATAB) 노드)에 임의의 잡음의 결합을 경감시키는 것을 돕는다.
도 6은 도 1의 레지스터 파일(112)에서 사용될 수 있는, 비트셀(200; 도 2), 비트셀(400; 도 4) 또는 비트셀(500; 도 5)과 같은 다수의 기록 포트들을 갖는 비트셀을 동작시키기 위한 방법(600)의 일 실시예의 흐름도를 도시한다. 단계(602)는 기록 데이터와 레지스터 파일(112) 내에서 대응하는 기록 어드레스를 수신하는 단계를 포함할 수 있다. 어드레스와 데이터는 레지스터 파일 내의 특정 기록 포트에 대응한다. 단계(604)는 어느 비트셀이 데이터를 기록할지를 결정하기 위하여 기록 어드레스를 디코딩하는 단계를 포함할 수 있다. 비트셀과 기록 포트의 대응하는 기록 워드 라인은 이후 인에이블된다.
단계(606)는 인에이블된 기록 포트에 대응하는 기록 비트 라인 상의 데이터를 구동하는 단계를 포함할 수 있다.
기록 포트들은 둘 이상의 서브세트들로 그룹화된다. 단계(608)는 각 서브세트들로부터 기록 워드 라인들을 NOR 처리함으로써 기록 포트들의 각 서브세트를 위한 제어 신호를 생성하는 단계를 포함할 수 있다. 각 서브세트 내의 기록 워드 라인 신호들 중 하나가 논리 1로 설정되면, 대응하는 NOR 게이트의 출력 신호는 논리 0이다. 각 서브세트 내의 기록 워드 라인 신호들 모두가 논리 0으로 설정되면, 대응하는 NOR 게이트의 출력 신호는 논리 1이다. 대응하는 기록 비트 라인은 어서트된 기록 워드 라인을 갖는 기록 비트 라인들의 서브세트로부터 선택된다. 제어 신호들은, 어서트된 기록 워드 라인을 갖지 않는 기록 포트들의 서브세트(들)와 관련된 피드백 회로(들)를 디스에이블시키고, 또한 선택된 기록 포트를 인에이블시키기 위하여, 사용된다. 디스에이블된 피드백 회로들은 따라서 데이터를 기록하기 위하여 과잉 전력을 제공받을 필요가 없어서, 비트셀을 기록 경쟁이 없게 만든다.
단계(610)는 선택된 기록 포트에 대응하는 비트셀의 저장 노드 상의 데이터를 구동하는 단계를 포함할 수 있다.
단계(612)는 선택된 기록 워드 라인을 디어서트(deassert)하는 단계를 포함할 수 있는데, 이는 차례로 디스에이블된 피드백 회로(들)를 인에이블시키고, 선택된 기록 포트를 디스에이블시킨다.
이미, 다중-포트 메모리 셀(112)이 복수의 기록 워드 라인들 및 복수의 기록 비트 라인들을 사용하여 기록될 수 있는, 다중-포트 메모리 모듈 또는 배열(104)의 다중-포트 메모리 셀(112)의 실시예가 제공되었음을 인식해야 한다. 저장 요소(203)는 입력 및 출력을 갖는 제 1 인버터(206)를 포함할 수 있고, 제 1 인버터(206)는 복수의 기록 워드 라인들의 제 1 서브세트(WWL0-3)에 의해 디스에이블될 수 있다. 제 2 인버터(204)는 제 1 인버터(206)의 출력에 결합된 입력과, 제 1 인버터(206)의 입력에 결합된 출력을 구비하고, 제 2 인버터(204)는 복수의 기록 워드 라인들의 제 2 서브세트(WWL4-7)에 의해 디스에이블될 수 있다. 제 1 선택 회로는 복수의 기록 비트 라인들 중 제 1 서브세트(WBL0-3)에 결합된 데이터 입력들, 복수의 기록 워드 라인들의 제 1 서브세트에 결합된 선택 입력들, 및 제 1 인버터(204)의 입력에 결합된 출력을 구비한다. 제 2 선택 회로(208)는 복수의 기록 비트 라인들 중 제 2 서브세트(WBL4-7)에 결합된 데이터 입력들, 복수의 기록 워드 라인들의 제 2 서브세트에 결합된 선택 입력들, 및 제 1 인버터(206)의 입력에 결합된 출력을 구비한다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 피드백 제어 회로(438)는 복수의 기록 워드 라인들 중 제 1 서브세트에 결합된 복수의 입력들, 및 제 1 인버터(206)를 디스에이블시키기 위해 제 1 인버터(206)에 결합된 출력을 구비한다. 제 2 피드백 제어 회로(458)는 복수의 기록 워드 라인들 중 제 2 서브세트에 결합된 복수의 입력들, 및 제 2 인버터(204)를 디스에이블시키기 위해 제 2 인버터(204)에 결합된 출력을 구비한다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 피드백 제어 회로(438)는 기록 워드 라인들의 제 1 서브세트에 결합된 복수의 입력들과 제 1 인버터(206)의 디스에이블 입력에 결합된 출력을 갖는 논리 회로(440/442)를 포함할 수 있다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 논리 회로(438)는 OR 기능을 수행한다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 선택 회로(202)는 복수의 기록 비트 라인들의 제 1 서브세트에 결합된 멀티플렉서(202, 506)를 포함할 수 있다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 선택 회로(576)는 멀티플렉서(506)의 출력에 결합된 입력과, 제 2 인버터(514)의 입력 및 제 1 인버터(516)의 출력에 결합된 출력을 갖는 제 3 인버터(579)를 더 포함할 수 있다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 3 인버터는 피드백 회로 또는 제 1 인버터(516)가 디스에이블될 때 인에이블될 수 있다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 피드백 제어 회로(438)는 기록 워드 라인들의 제 1 서브세트에 결합된 복수의 입력들과, 제 1 인버터(206)를 디스에이블시키기 위해 제 1 인버터(206)에 결합된 출력을 구비한다. 제 2 피드백 제어 회로(458)는 기록 워드 라인들의 제 2 서브세트에 결합된 복수의 입력들과, 제 2 인버터(204)를 디스에이블시키기 위해 제 2 인버터(204)에 결합된 출력을 구비한다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 선택 회로(202)는 기록 비트 라인들의 제 1 서브세트에 결합된 제 1 신호 단자들, 제 2 인버터(204)의 입력 및 제 1 인버터(206)의 출력에 결합된 제 2 신호 단자들, 및 기록 워드 라인들의 제 1 서브세트에 결합된 제어 입력들을 갖는, 복수의 기록 포트들 또는 송신 게이트들(402, 404, 406, 408)을 포함할 수 있다.
다중-포트 메모리 셀(112)의 다른 양상에 있어서, 제 1 판독 회로(422)는 제 1 인버터(206)의 출력에 결합된 신호 입력, 제 1 복수의 판독 피트 라인들(RBL0-1)에 결합된 복수의 출력들; 및 제 1 복수의 판독 워드 라인들에 결합된 복수의 선택 입력들(RWL0, RWL1)을 구비한다. 제 2 판독 회로(424)는 제 2 인버터(204)의 출력에 결합된 신호 입력, 제 2 복수의 판독 비트 라인들(RBL2-3)에 결합된 복수의 출력들; 및 제 2 복수의 판독 워드 라인들(RWL2-3)에 결합된 복수의 선택 입력들을 구비한다.
다른 실시예에 있어서, 다중-포트 메모리 배열(104)의 다중-포트 메모리 셀(112)은 입력 및 출력을 갖는 제 1 인버터(206)를 포함하는 저장 회로(204/206)을 포함할 수 있다. 제 1 인버터(206)는 복수의 기록 워드 라인들(WWL0-3)에 의해 디스에이블될 수 있다. 제 2 인버터(204)는 제 1 인버터(206)의 출력에 결합된 입력과, 제 1 인버터(206)의 입력에 결합된 출력을 갖는다. 제 1 선택 회로(202)는 복수의 기록 비트 라인들(WBL0-3)에 결합된 데이터 입력들, 복수의 기록 워드 라인들(WWL0-3)에 결합된 선택 입력들, 및 제 2 인버터(204)의 입력에 결합된 출력을 구비한다. 제 1 피드백 제어 회로(438)는 복수의 기록 워드 라인들에 결합된 복수의 입력들, 및 복수의 기록 워드 라인들(WWL0-3)에 의해 제 1 인버터(206)를 디스에이블시키기 위하여 제 1 인버터(206)에 결합된 출력을 구비한다.
다중-포트 셀(112)의 다른 양상에 있어서, 제 1 피드백 제어 회로(438)는 복수의 기록 워드 라인들(WWL0-3)에 결합된 복수의 입력들과, 제 1 인버터(206)의 디스에이블 입력에 결합된 출력을 구비한다.
다중-포트 셀(112)의 다른 양상에 있어서, 논리 회로(440/442)는 OR 기능과 NOR 기능을 수행한다.
다중-포트 셀(112)의 다른 양상에 있어서, 제 2 피드백 제어 회로(458)는 제 2 복수의 기록 워드 라인들에 결합된 복수의 입력들과, 제 2 복수의 기록 워드 라인들에 의해 제 2 인버터(204)를 디스에이블시키기 위해 제 2 인버터(204)의 디스에이블 입력에 결합된 출력을 갖는 논리 회로(440/442)를 구비한다.
또 다른 실시예에 있어서, 입력 및 출력을 갖는 제 1 인버터(206)와 제 1 인버터(206)의 출력에 결합된 입력과 제 1 인버터(206)의 입력에 결합된 출력을 갖는 제 2 인버터(204)를 구비하는 다중-포트 메모리 배열(104)의 다중-포트 메모리 셀(112)을 구동시키는 방법은, 제 1 및 제 2 인버터들(206)에 결합하기 위한 복수의 기록 비트 라인들 중 하나의 기록 비트 라인을 선택하는 단계를 포함한다. 선택된 기록 비트 라인이 복수의 기록 비트 라인들의 제 1 서브세트(WBL0-3)로부터 유래할 수 있으면, 선택된 비트 라인을 제 1 인버터(204)의 입력에 결합시키고, 제 2 인버터(206)를 디스에이블시켜, 제 2 인버터(206)로부터 제 1 인버터(204)로의 피드백을 중단시키고, 이후 제 2 인버터(206)를 인에이블시켜, 제 2 인버터(206)로부터 제 1 인버터(204)로의 피드백을 완성시킨다. 선택된 기록 비트 라인이 복수의 기록 비트 라인들 중 2 서브세트(WBL4-7)로부터 유래한다면, 선택된 비트 라인을 제 2 인버터(206)의 입력에 결합하고, 제 1 인버터(204)를 디스에이블시켜 제 1 인버터(204)로부터 제 2 인버터(206)로의 피드백을 중단시키고, 이후 제 1 인버터(204)를 인에이블링시켜 제 1 인버터(204)로부터 제 2 인버터(206)로의 피드백을 완성한다.
방법의 다른 양상에 있어서, 선택하는 단계는 기록 워드 라인들의 제 1 서브세트와 기록 워드 라인들의 제 2 서브세트를 포함할 수 있는 복수의 기록 워드 라인들을 사용하는 단계를 포함할 수 있다.
방법의 다른 양상에 있어서, 선택하는 단계는, 기록 워드 라인들의 제 1 서브세트로부터의 기록 워드 라인이 어서트되면, 복수의 기록 비트 라인의 제 1 서브세트로부터 기록 비트 라인을 선택하는 단계를 더 특징으로 할 수 있다.
방법의 다른 양상에 있어서, 제 2 인버터(206)를 디스에이블링하고 이후 인에이블링하는 단계는 기록 워드 라인들의 제 1 서브세트에 의해 제어될 수 있고, 제 1 인버터(204)를 디스에이블링하고 이후 인에이블링하는 단계는 기록 워드 라인들의 제 2 서브세트에 의해 제어된다.
방법의 다른 양상에 있어서, 판독이 판독 워드 라인들의 제 1 서브세트로부터 판독 워드 라인에 의해 선택되면 제 1 인버터(204)의 출력을 제 1 출력 회로(424)에 결합시킴으로써 판독을 수행하는 단계가 이루어지고, 판독이 판독 워드 라인들의 제 2 서브세트로부터 판독 워드 라인에 의해 선택되면 제 2 인버터(206)의 출력을 제 2 출력 회로(422)에 결합시킴으로써 판독을 수행하는 단계가 이루어진다.
방법의 다른 양상에 있어서, 기록 비트 라인을 선택하는 단계는, 선택된 비트 라인이 복수의 기록 비트 라인들의 제 1 서브세트로부터 유래한다면 제 1 멀티플렉서(202)를 사용하여 수행될 수 있고, 선택된 비트 라인이 복수의 기록 비트 라인들의 제 2 서브세트로부터 유래한다면 제 2 멀티플렉서(208)를 사용하여 수행될 수 있다.
본 개시사항을 구현하는 장치가 대부분의 부분에 대해 당업자에게 알려진 전자 구성요소들 및 회로들로 이루어지기 때문에, 본 개시 사항의 근원적인 개념들의 이해 및 평가를 위해, 그리고 본 개시사항의 가르침들을 흐리게 또는 벗어나게 하지 않도록, 회로의 세부사항들은 위에서 도시된 것으로 필요하다고 고려되는 것 이상으로 더 자세히 설명되지 않을 것이다.
용어 "어서트" 또는 "설정" 및 "부정"(또는 "디어서트" 또는 "소거")은 본 명세서에서 신호, 상태 비트 또는 유사한 장치의 각각 그 논리적인 참 또는 논리적인 거짓 상태로의 렌더링을 언급할 때 사용되었다. 만약 논리적인 참 상태가 논리 레벨 1이라면, 논리적으로 거짓 상태가 논리 레벨 0이다. 그리고 논리적으로 참인 상태가 논리 레벨 0이면, 논리적으로 거짓 상태는 논리 레벨 1이다.
본 명세서에서 기술된 각 신호는 긍정 또는 부정 논리로서 지정될 수 있고, 부정 논리는 신호 이름 위의 가로줄, 이름에 후속하는 문자"B", 또는 이름에 후속하는 별표(*)에 의해 표시될 수 있다. 부정 논리 신호의 경우에 있어서, 신호는 활성 낮은 상태이고, 논리 참 상태는 논리 레벨 0에 대응한다. 긍정 논리 신호의 경우에 있어서, 신호는 활성 높은 상태이고, 논리 참 상태는 논리 레벨 1에 대응한다. 본 명세서에서 기술된 임의의 신호들은 부정 또는 긍정 논리 신호들로서 지정될 수 있다는 것을 주의하라. 그러므로, 대안적인 실시예들에 있어서, 긍정 논리 신호들로서 기술된 신호들은 부정 논리 신호들로서 구현될 수 있고, 부정적인 논리 신호로서 기술된 음의 신호들은 긍정 논리 신호들로서 구현될 수 있다.
개시사항이 특정 전도성 유형들 또는 전위들의 극성에 대해 기술되었지만, 당업자는 전도성 유형들 및 전위의 극성들은 바뀔 수 있음을 인식할 것이다.
더욱이, 발명의 상세한 설명 및 청구항들에서 용어, "전면", "후면", "상부", "바닥", "위에", "아래", 등은 만약 있다면 설명을 위해 사용된 것이며, 반드시 위치들에 대한 불변성을 기술하기 위한 것은 아니다. 이와 같이 사용된 용어들은 적절한 환경 하에서 상호 교환 가능하여, 본 명세서에서 기술된 개시사항의 실시예들은 예컨대 도시된 것과는 다른 방향, 또는 그렇지 않을 경우 본 명세서에서 기술된 것과 같은 동작이 가능하다.
적용 가능한 위의 실시예들 중 일부는 다양한 다른 정보 처리 시스템을 사용하여 구현될 수 있다. 예컨대, 도 1과 이의 논의가 예시적인 정보 처리 구조를 기술하지만, 이러한 예시적인 구조는 단순히 개시사항의 다양한 양상을 논의하는데 유용한 기준을 제공하기 위하여 제공되었다. 물론, 구조의 설명은 논의의 목적을 위하여 단순화되었고, 본 개시사항에 따라 사용될 수 있는 것은 적절한 구조들의 많은 상이한 유형들 중 단지 하나이다. 당업자는 논리 블록들의 사이의 경계들이 단순히 예시적이며, 대안적인 실시예들이 논리 블록들 또는 회로 요소들을 병합할 수 있거나, 또는 다양한 논리 블록들 또는 회로 요소들에 대한 기능들의 대안적인 분해를 부과할 수 있다.
따라서, 본 명세서에서 도시된 구조들은 단지 예시적이며, 실제 동일한 기능을 달성하는 많은 다른 구조들이 구현될 수 있음을 이해될 수 있을 것이다. 요약하여, 하지만 여전히 명확한 의미로, 동일한 기능을 달성하기 위한 구성요소들의 임의의 배열은 원하는 기능이 달성되도록 효과적으로 결합된다. 따라서, 특정 기능을 달성하기 위하여 결합되는 본 명세서에서 임의의 두 개의 구성요소들은, 구조들 또는 중간 구성요소들에 관계 없이, 원하는 기능이 달성되도록 서로 "결합된" 것으로 볼 수 있다. 유사하게, 이와 같이 결합된 임의의 두 개의 구성요소들은 또한 원하는 기능을 달성하기 위하여 서로 "동작가능하게 연결된", 또는 "동작 가능하게 결합된" 것으로 볼 수 있다.
또한 예컨대, 일 실시예에 있어서, 시스템(100)의 도시된 요소들은 단일 집적 회로 상에 또는 동일한 디바이스 내에 위치된다. 대안적으로 시스템(100)은 서로 상호 연결된 임의의 수의 독립된 집적 회로들 또는 별도의 디바이스들을 포함할 수 있다.
더욱이, 당업자들은 위에 기술한 동작들의 기능 사이의 경계들이 단순히 예시적임을 인식할 것이다. 다수의 동작의 기능은 단일 동작으로 결합될 수 있고, 및/또는 단일 동작의 기능이 추가적인 동작들로 분산될 수 있다. 더욱이, 대안적인 실시예들은 특정 동작의 다수의 경우들을 포함할 수 있고, 동작들의 순서는 다양한 다른 실시예들에서 변경될 수 있다. 동일한 것이 정관사의 사용에 대해서도 동일하게 유지된다.
개시사항이 본 명세서에서 특정 실시예들을 참조하여 기술되었지만, 아래의 청구항들에서 설명된 본 개시사항의 범주로부터 벗어나지 않고도 다양한 수정들 및 변경들이 이루어질 수 있다. 따라서, 발명의 상세한 설명 및 도면들은 제한적인 의미라기 보다는 예시적인 것으로 간주되어야 하고, 모든 이러한 수정들은 본 개시사항의 범주 내에 포함되는 것으로 의도된다. 특정 실시예들에 대해 본 명세서에서 기술된 문제점들에 대한 임의의 이점들, 장점들, 또는 해결책들은 임의의 또는 모든 청구항들의 중요한, 요구되는, 또는 필수적인 특징 또는 요소로서 해석되도록 의도되는 것은 아니다.
본 명세서에서 사용된 용어 "결합된"은 직접 결합 또는 기계적인 결합에 국한되는 것으로 의도되는 것은 아니다.
더욱이, 본 명세서에서 사용된 "단수 요소"는 하나 이상의 요소로 정의된다. 청구항에서의 "적어도 하나" 및 "하나 이상의"의 사용은, 단수 요소를 기재된 청구항 요소가, 그러한 단수 요소를 포함하는 임의의 특정 청구항을, 심지어 동일한 청구항이 하나 이상의 요소를 포함하거나 단수의 요소들을 포함하는 경우조차, 오로지 단수의 그러한 요소를 포함하는 개시사항들로 제한되는 것으로 해석되지 않아야 한다.
달리 언급되지 않는 한, "제 1" 및 "제 2"와 같은 용어는 이러한 용어들이 기술하는 요소들 사이를 임의적으로 구별하기 위하여 사용된다. 따라서, 이들 용어들이 반드시 이러한 요소들의 시간적 또는 다른 우선순위를 나타내도록 의도되는 것은 아니다.
100 : 컴퓨터 처리 시스템 102 : 프로세서
104 : 메모리 모듈 106 : I/O 인터페이스들
108 : 다른 주변 디바이스 110 : 버스
112 : 레지스터 파일 114 : 캐쉬 메모리 모듈들
116 : 메모리 관리 유닛(MMU) 200 : 다중-포트 메모리 비트셀
202,208 : 멀티플렉서 203 : 저장 요소
204, 206 : 인버터

Claims (20)

  1. 다중-포트 메모리 배열의 다중-포트 메모리 셀로서, 상기 다중-포트 메모리 셀은 복수의 기록 워드 라인들과 복수의 기록 비트 라인들을 사용하여 기록되는, 상기 다중-포트 메모리 셀에 있어서,
    저장 회로로서,
    입력과 출력을 구비하고, 상기 복수의 기록 워드 라인들의 제 1 서브세트에 의해 디스에이블되는, 제 1 인버터와,
    상기 제 1 인버터의 출력에 결합된 입력과 상기 제 1 인버터의 입력에 결합된 출력을 구비하고, 상기 복수의 기록 워드 라인들의 제 2 서브세트에 의해 디스에이블되는, 제 2 인버터를 포함하는, 상기 저장 회로;
    상기 복수의 기록 비트 라인들의 제 1 서브세트에 결합된 데이터 입력들, 상기 복수의 기록 워드 라인들의 상기 제 1 서브세트에 결합된 선택 입력들, 및 상기 제 2 인버터의 상기 입력에 결합된 출력을 갖는 제 1 선택 회로; 및
    상기 복수의 기록 비트 라인들의 제 2 서브세트에 결합된 데이터 입력들, 상기 복수의 기록 워드 라인들의 상기 제 2 서브세트에 결합된 선택 입력들, 및 상기 제 1 인버터의 상기 입력에 결합된 출력을 갖는 제 2 선택 회로를 포함하고,
    상기 제 1 선택 회로는 상기 복수의 기록 비트 라인들의 상기 제 1 서브세트에 결합된 멀티플렉서를 포함하고, 상기 멀티플렉서의 출력에 결합된 입력과 상기 제 2 인버터의 입력 및 상기 제 1 인버터의 출력에 결합된 출력을 갖는 제 3 인버터를 더 포함하고, 상기 제 3 인버터는 상기 복수의 기록 워드 라인들의 상기 제 1 서브세트에 의해 제어되는 3상태 디바이스이고 상기 제 1 인버터가 디스에이블될 때 인에이블되도록 구성되는, 다중-포트 메모리 셀.
  2. 제 1항에 있어서,
    상기 복수의 기록 워드 라인들의 상기 제 1 서브세트에 결합된 복수의 입력들 및 상기 제 1 인버터를 디스에이블링시키기 위해 상기 제 1 인버터에 결합된 출력을 갖는 제 1 피드백 제어 회로; 및
    상기 복수의 기록 워드 라인들의 상기 제 2 서브세트에 결합된 복수의 입력들 및 상기 제 2 인버터를 디스에이블링시키기 위해 상기 제 2 인버터에 결합된 출력을 갖는 제 2 피드백 제어 회로를 더 포함하는 다중-포트 메모리 셀.
  3. 제 2항에 있어서,
    상기 제 1 피드백 제어 회로는, 기록 워드 라인들의 상기 제 1 서브세트에 결합된 복수의 입력들과 상기 제 1 인버터의 디스에이블 입력에 결합된 출력을 갖는 논리 회로를 포함하는, 다중-포트 메모리 셀.
  4. 제 3항에 있어서,
    상기 논리 회로는 NOR 기능 및 OR 기능을 수행하는, 다중-포트 메모리 셀.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제 1항에 있어서,
    기록 워드 라인들의 제 1 서브세트에 결합된 복수의 입력들 및 상기 제 1 인버터를 디스에이블링시키기 위해 상기 제 1 인버터에 결합된 출력을 갖는 제 1 피드백 제어 회로; 및
    기록 워드 라인들의 제 2 서브세트에 결합된 복수의 입력들 및 상기 제 2 인버터를 디스에이블링시키기 위해 상기 제 2 인버터에 결합된 출력을 갖는 제 2 피드백 제어 회로를 더 포함하는, 다중-포트 메모리 셀.
  9. 제 1항에 있어서,
    상기 제 1 선택 회로는, 기록 비트 라인들의 상기 제 1 서브세트에 결합된 제 1 신호 단자들, 상기 제 2 인버터의 입력과 상기 제 1 인버터의 출력에 결합된 제 2 신호 단자들, 및 기록 워드 라인들의 상기 제 1 서브세트에 결합된 제어 입력들을 갖는 복수의 송신 게이트들을 포함하는, 다중-포트 메모리 셀.
  10. 제 1항에 있어서,
    상기 제 1 인버터의 출력에 결합된 신호 입력, 제 1 복수의 판독 비트 라인들에 결합된 복수의 출력들; 및 제 1 복수의 판독 워드 라인들에 결합된 복수의 선택 입력들을 구비하는 제 1 판독 회로; 및
    상기 제 2 인버터의 출력에 결합된 신호 입력, 제 2 복수의 판독 비트 라인들에 결합된 복수의 출력들 및 제 2 복수의 판독 워드 라인들에 결합된 복수의 선택 입력들을 구비하는 제 2 판독 회로를 더 포함하는, 다중-포트 메모리 셀.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 입력 및 출력을 갖는 제 1 인버터와 상기 제 1 인버터의 출력에 결합된 입력과 상기 제 1 인버터의 입력에 결합된 출력을 갖는 제 2 인버터를 구비하는 다중-포트 메모리 배열의 다중-포트 메모리 셀을 구동시키는 방법에 있어서,
    상기 제 1 및 제 2 인버터들에 결합하기 위한 복수의 기록 비트 라인들 중 하나의 기록 비트 라인을 선택하는 단계로서,
    상기 선택된 기록 비트 라인이 상기 복수의 기록 비트 라인들의 제 1 서브세트로부터 유래한다면, 상기 선택된 비트 라인을 상기 제 1 인버터의 입력에 결합시키고, 상기 제 2 인버터를 디스에이블시켜, 상기 제 2 인버터로부터 상기 제 1 인버터로의 피드백을 중단시키고, 이후 상기 제 2 인버터를 인에이블시켜, 상기 제 2 인버터로부터 상기 제 1 인버터로의 피드백을 완성시키고,
    상기 선택된 기록 비트 라인이 상기 복수의 기록 비트 라인들의 제 2 서브세트로부터 유래한다면, 상기 선택된 비트 라인을 제 2 인버터의 입력에 결합시키고, 상기 제 1 인버터를 디스에이블시켜, 상기 제 1 인버터로부터 상기 제 2 인버터로의 피드백을 중단시키고, 이후 상기 제 1 인버터를 인에이블링시켜 상기 제 1 인버터로부터 상기 제 2 인버터로의 피드백을 완성시키는, 상기 복수의 기록 비트 라인들 중 하나의 기록 비트 라인을 선택하는 단계를 포함하는, 다중-포트 메모리 셀을 구동시키는 방법.
  16. 제 15항에 있어서,
    상기 선택하는 단계는, 기록 워드 라인들의 제 1 서브세트와 기록 워드 라인들의 제 2 서브세트를 포함하는 복수의 기록 워드 라인들을 사용하는 단계를 포함하는, 다중-포트 메모리 셀을 구동시키는 방법.
  17. 제 16항에 있어서,
    상기 선택하는 단계는, 기록 워드 라인들의 상기 제 1 서브세트로부터의 기록 워드 라인이 어서트(assert)되면, 상기 복수의 기록 비트 라인의 상기 제 1 서브세트로부터 기록 비트 라인을 선택하는 단계를 또한 특징으로 하는, 다중-포트 메모리 셀을 구동시키는 방법.
  18. 제 17항에 있어서,
    상기 제 2 인버터를 디스에이블링하고 이후 인에이블링하는 단계는, 기록 워드 라인들의 상기 제 1 서브세트에 의해 제어되고, 상기 제 1 인버터를 디스에이블링하고 이후 인에이블링하는 단계는 기록 워드 라인들의 상기 제 2 서브세트에 의해 제어되는, 다중-포트 메모리 셀을 구동시키는 방법.
  19. 제 18항에 있어서,
    판독이 판독 워드 라인들의 제 1 서브세트로부터 판독 워드 라인에 의해 선택되면 상기 제 1 인버터의 출력을 제 1 출력 회로에 결합시킴으로써 판독을 수행하고, 판독이 판독 워드 라인들의 제 2 서브세트로부터 판독 워드 라인에 의해 선택되면 상기 제 2 인버터의 출력을 제 2 출력 회로에 결합시킴으로써 판독을 수행하는 단계를 더 포함하는, 다중-포트 메모리 셀을 구동시키는 방법.
  20. 제 19항에 있어서,
    상기 기록 비트 라인을 선택하는 단계는, 상기 선택된 비트 라인이 상기 복수의 기록 비트 라인들의 제 1 서브세트로부터 유래한다면 제 1 멀티플렉서를 사용하여 수행되고, 상기 선택된 비트 라인이 상기 복수의 기록 비트 라인들의 제 2 서브세트로부터 유래한다면 제 2 멀티플렉서를 사용하여 수행되는, 다중-포트 메모리 셀을 구동시키는 방법.
KR1020130030738A 2012-04-06 2013-03-22 기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀 KR102066833B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/441,414 2012-04-06
US13/441,414 US8755244B2 (en) 2012-04-06 2012-04-06 Write contention-free, noise-tolerant multi-port bitcell

Publications (2)

Publication Number Publication Date
KR20130113977A KR20130113977A (ko) 2013-10-16
KR102066833B1 true KR102066833B1 (ko) 2020-01-17

Family

ID=48520675

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130030738A KR102066833B1 (ko) 2012-04-06 2013-03-22 기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀

Country Status (3)

Country Link
US (1) US8755244B2 (ko)
EP (1) EP2648187B1 (ko)
KR (1) KR102066833B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9117498B2 (en) * 2013-03-14 2015-08-25 Freescale Semiconductor, Inc. Memory with power savings for unnecessary reads

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050058002A1 (en) * 2003-09-16 2005-03-17 Oki Electric Industry Co., Ltd. Multi-port semiconductor memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6091627A (en) * 1998-09-16 2000-07-18 Lucent Technologies, Inc. Message box memory cell for two-side asynchronous access
US6614265B2 (en) 2000-05-12 2003-09-02 International Business Machines Corporation Static logic compatible multiport latch
US6538954B2 (en) * 2000-07-10 2003-03-25 Mitsubishi Denki Kabushiki Kaisha Multi-port static random access memory equipped with a write control line
US6834024B2 (en) * 2001-10-23 2004-12-21 Ip-First, Llc Reduced size multi-port register cell
US6778466B2 (en) * 2002-04-11 2004-08-17 Fujitsu Limited Multi-port memory cell
US7304883B2 (en) 2004-06-09 2007-12-04 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit
US7281094B2 (en) * 2005-01-25 2007-10-09 Via Technologies, Inc. Balanced bitcell for a multi-port register file

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050058002A1 (en) * 2003-09-16 2005-03-17 Oki Electric Industry Co., Ltd. Multi-port semiconductor memory

Also Published As

Publication number Publication date
US20130265818A1 (en) 2013-10-10
US8755244B2 (en) 2014-06-17
EP2648187A2 (en) 2013-10-09
EP2648187B1 (en) 2019-09-11
KR20130113977A (ko) 2013-10-16
EP2648187A3 (en) 2017-10-11

Similar Documents

Publication Publication Date Title
US11501828B2 (en) Apparatuses, memories, and methods for address decoding and selecting an access line
US10725952B2 (en) Accessing status information
US8837205B2 (en) Multi-port register file with multiplexed data
TWI656533B (zh) 用於在資料路徑中計算之裝置及方法
US8811102B2 (en) Multiple read port memory system with a single port memory cell
US10847212B1 (en) Read and write data processing circuits and methods associated with computational memory cells using two read multiplexers
US7630272B2 (en) Multiple port memory with prioritized world line driver and method thereof
CN110325972A (zh) 存储器阵列页面表格寻选
EP2755208B1 (en) Multiport memory with matching address and data line control
US9275710B2 (en) Three dimensional cross-access dual-port bit cell design
US9799379B2 (en) Hold time aware register file module and method therefor
EP1405315A2 (en) Method and system for banking register file memory arrays
US9224439B2 (en) Memory with word line access control
KR20000071654A (ko) 프리셋 스위치를 갖는 멀티-포트 메모리 셀
CN105702281A (zh) 一种基于分级位线结构的sram半选干扰消除结构
KR102066833B1 (ko) 기록 경쟁이 없고, 잡음 내성이 있는 다중-포트 비트셀
US20140269016A1 (en) Multiport memory with matching address control
US8861289B2 (en) Multiport memory with matching address control
US20200286561A1 (en) Master Slave Level Shift Latch for Word Line Decoder Memory Architecture
CN114255793A (zh) 存储器器件的写入电路
US9030887B2 (en) Semiconductor memory device and information processing apparatus
KR101579958B1 (ko) 5-트랜지스터 sram 셀
US10176856B2 (en) Semiconductor memory apparatus
US7821845B2 (en) Write driver circuit of an unmuxed bit line scheme
Nicol et al. A scalable pipelined architecture for fast buffer SRAMs

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