KR20080035980A - Dram 메모리의 신속한 초기화 - Google Patents

Dram 메모리의 신속한 초기화 Download PDF

Info

Publication number
KR20080035980A
KR20080035980A KR1020070105362A KR20070105362A KR20080035980A KR 20080035980 A KR20080035980 A KR 20080035980A KR 1020070105362 A KR1020070105362 A KR 1020070105362A KR 20070105362 A KR20070105362 A KR 20070105362A KR 20080035980 A KR20080035980 A KR 20080035980A
Authority
KR
South Korea
Prior art keywords
zero
initialization
cells
dram
rows
Prior art date
Application number
KR1020070105362A
Other languages
English (en)
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 KR20080035980A publication Critical patent/KR20080035980A/ko

Links

Images

Classifications

    • 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/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4072Circuits for initialization, powering up or down, clearing memory or presetting
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)

Abstract

본 발명은 DRAM 초기화 방법에 관한 것으로, DRAM 초기화 방법은 DRAM에서 복수 셀의 하나 이상의 행을 할당하는 단계, 상기 할당된 하나 이상의 행을 초기화하기 위해 초기화 요청을 신호로 전달하는 단계 및 상기 하나 이상의 할당된 행들을 액세스할 때, 상기 하나 이상의 할당된 각각의 행들 내부의 모든 셀들을 동시에 초기화하는 단계를 포함한다.
DRAM, 셀(cell), 레지스터, 초기화

Description

DRAM 메모리의 신속한 초기화{FASTER INITIALIZATION OF DRAM MEMORY}
본원발명은 DRAM 메모리의 초기화에 관한 것이다.
DRAM(Dynamic Random Access Memory)은 많은 전자 장치들을 위한 정보 저장에 이용되는 전자 메모리의 하나의 형태이다. DRAM은 개인 컴퓨터에 이용되는 중요한 전자 메모리이다.
DRAM은 복수의 메모리 셀이 여러 개의 가로줄과 여러 개의 세로줄로 구성된 메트릭스 형태로 이루어진다. 메모리 셀들은 커패시터에 트랜지스터에 의해 게이트된 논리 값 "0" 또는 "1"을 가진다. 트랜지스터가 오픈 게이트될 때, 그것을 다시 재충전하는 센서 증폭기(sense amplifer)를 이용하여 그 값을 측정한다.
DRAM 칩들은 전형적으로 데이터 입력/출력(data input/output) 핀(pins)들보다 더 많은 열을 가진다. 그러므로, DRAM 액세스(access)는 행 주소 단계(row address phrase)와 열 주소 단계(column address phrase)로 나누어진다. 행 주소 단계(row address phrase) 동안, 상기 행은 센서 증폭기(sense amplifer)에 게이트된다. 열 주소 단계(column address phrase) 동안, 열 부분은 칩의 입/출력 핀들에 게이트된다.
DRAM은 핀들에서 인코드된 3-비트 값에 의해 제어된다. RAS(행 주소 스트로브, row address strobe), CAS(열 주소 스트로브, column address strobe), WE(write enable). 이들 3-비트 값들 중에서 하나는 DRAM 내부에 제어 등록(control register, 혹은 컨트롤(러) 레지스터라 한다.)을 로드하기 위해 사용된다. 제어 등록(control register) 내부의 비트들은 칩 작동을 설정하기 위해 사용된다.
소프트웨어 어플리케이션(software applications)은 종종 초기화를 위해 메모리 블록들을 제로로 한다. 소프트웨어 엑스큐터블(software executables)은 프로그램 로드의 부분으로 초기화되지 않은 프로그램 변수들(variables)을 제로로 한다. EDAC(Error Detection and Correction) 로직을 이용한 메모리는 전형적으로 0으로 초기화된다. 데이터 버퍼(data buffer)들은 종종 디버깅(debugging) 그리고 신뢰성 높은 작동을 지지하기 위해 0으로 초기화된다.
종래 기술의 DRAM 초기화를 신속하게 할 수 있는 수단이 필요하게 되었다.
상기 언급된 문제들 혹은 다른 문제들은 본원 발명에 의해 해결되고 하기의 상세한 설명을 읽고 학습하는 것을 통해 이해될 것이다.
하나의 실시예로, DRAM을 초기화하는 방법이 제기된다. 그 방법은 DRAM에서 복수의 셀들의 하나 이상의 행을 할당하는 것, 상기 할당된 하나 이상의 행들을 초기화하기 위한 초기화 요청을 신호화하는 것 그리고 상기 하나 이상의 할당된 행들의 각각을 액세스함과 동시에 상기 하나 이상의 할당된 행들 내부의 모든 셀들을 초기화하는 것을 포함한다.
--
본원발명은 DRAM에서 복수의 셀들의 하나 이상의 행을 할당하는 것, 상기 할당된 하나 이상의 행들을 초기화하기 위한 초기화 요청을 신호화하는 것 그리고 상기 하나 이상의 할당된 행들의 각각을 액세스함과 동시에 상기 하나 이상의 할당된 행들 내부의 모든 셀들을 초기화하는 기술적 특징을 통해 DRAM 초기화를 신속하게 할 수 있는 효과가 있다.
이하, 상세한 설명에 있어서, 각 구성요소들은 당업자가 본원발명을 실시할 수 있도록 충분히 상세하게 설명된다. 이는 본원발명의 권리범위를 벗어나지 않는 범위 내에서 다른 실시 예들이 이용될 수 있는 것으로 이해된다. 그러므로, 이하, 상세한 설명은 제한적인 의미로 이해되어서는 안된다.
본원발명의 실시예들은 한 행의 DRAM 셀들을 동시에 초기화한다. 이러한 초기화는 센서 증폭기(sense amplifier)와 제어 로직(control logic)을 개조하는 것에 의해 이루어진다. 이러한 초기화는 행을 초기화하는 것을 포함하는 표준 DRAM 제어 프로토콜을 증가하는 것에 의해 요구된다. DRAM 행을 초기화하는 것은 대략적으로 열의 수 대 I/P 핀들의 수에 의해 이루어진다.
도 1은 컴퓨터 시스템(100)이 메모리를 사용하는 방법을 나타내는 블록 다이어 그램이다. CPU(Central Processing Unit)(102)는 그것의 자체 CPU 버스(bus)에 의해 직접 메모리(104)에 액세스한다. 선택적으로, 메모리 컨트롤러(108)는 분리된 메모리 버스(110)상의 메모리(104)에 CPU 버스를 액세스 연결하기 위한 프락시(proxy)로 작동할 수 있다. DRAM 메모리는 CPU 버스 주소들을 DRAM 행 주소들과 열 주소들로 분할하는 것을 포함하는 DRAM 메모리 버스 프로토콜을 처리하는 메모리 컨트롤러에 의해 전형적으로 액세스된다.
도 2는 종래 DRAM(204)의 내부 구조를 나타내는 구성도이다. DRAM 메모리 버 스(210)는 DRAM(204)을 도 1에 도시된 바와 같이 메모리 컨트롤러에 연결한다. RAS, CAS, WE 그리고 어드레스를 포함하는 컨트롤러 핀들(212)은 DRAM 컨트롤러(214)에 의해 처리된다. DRAM 컨트롤러(214)는 코어(216)와 메모리 버스(210)에 연결된 데이터 핀들(218) 사이에 데이터를 전달하기 위해 DRAM 코어(216)에 언터페이스 연결한다. 3-비트 값(RAS, CAS, WE)들 중에서 하나는 데이터 핀들(218)로부터 그 자체의 데이터가 있는 DRAM(204) 안으로 컨트롤러 레지스터(220)를 로드하기 위해 사용된다. 컨트롤러 레지스터(220) 내부의 비트들은 칩 작동을 실행하기 위해 사용된다. 특히, 본원발명의 실시예에 있어서, 제로-모드 플래그(zero mode frag)는 하기에서 설명하는 것과 같이 DRAM(204)에서 셀들을 초기화하기 위해 DRAM(204)을 제로 모드(zero mode)로 하기 위해 컨트롤러 레지스터(220)에 설정될 수 있다.
도 3은 종래 DRAM 코어(316)의 내부 구조를 나타내는 구성도이다. DRAM 코어(316)는 복수의 메모리 셀(322)들에 의해 복수의 행과 복수의 열로 이루어지는 매트릭스로 형태로 구성된다. 메모리 셀(422)의 하나의 예는 도 4에서 설명된다. 도 4에서, 메모리 셀(422)은 커패시터(424)에 로직 값 "0" 또는 "1"을 가진다. 이 커패시터(424)는 트랜지스터(428)를 통해 선택 라인(select line)(326)에 의해 디지털 라인(digital line)(330)에 게이트된다. 트랜지스터(428)가 오픈 게이트될 때, 센서 증폭기(sense amplifier)(e.g. 도 3에서 sense amplifier(332))를 이용해 그 값이 측정된다. 또한 센서 증폭기(sense amplifier)는 그 값을 그것을 충전하는 커패시터(424)에 다시 쓴다.
다시 도 3에 있어서, DRAM 칩들은 전형적으로 데이터 입력/출력 핀들(data input/output(I/O) pins) 보다 더 많은 셀 열을 가진다. 그러므로, DRAM 액세스는 행 주소 단계와 열 주소 단계로 나누어진다. 행 주소 단계 동안, 행 주소는 행 주소 디코더(334)에 의해 디코드되고, 선택된 행의 셀들은 상기에서 설명된 것과 같이 센서 증폭기(332)에 게이트된다. 열 주소 단계 동안, 열은 칩의 입/출력 핀들에 게이트된다. 센싱 셀들(322)은 도 5에 설명된 것과 같이 전형적인 DRM 칩들 내부의 셀을 충전할 뿐만 아니라 그 내용을 리드한다.
도 5는 종래 DRAM 센스 증폭기(532)를 설명하는 도면이다. 센싱은 더 높은 라인을 로직 "1"을 나타내는 전압 Vcc 에, 더 낮은 라인을 로직"0"을 나타내는 그라운드에 드라이브하는 디지털 라인들(530a 및 530b) 사이의 작은 차이를 증폭한다. 디지털 라인(530)은 Vcc의 절반으로 미리 충전된다. 그 다음에, 디지털 라인들(530)중 하나의 디지털 라인 상의 하나의 셀(셀(422))이 그것의 커패시터(e.g. 커패시터(424))를, 도 4에 도시된 바와 같이, 디지털 라인에 연결함으로써 선택된다. 그 커패시터는 각각의 로직 값 "1" 또는 "0"에 따라 디지털 라인 전압을 약간 올리거나 낮춘다.
신호 NLAT(NMOS latch)(534)가 그라운드(538)에 전달될 때, 게이트(536)는 다른 디지털 라인(e.g. 라인 B)을 그라운드(538)에 안내한다. 여기서 게이트의 센 터는 더 높은 전압(e.g. 이 예에서는 라인 A)에 연결된다. NALT가 처리된 후 바로, 신호 ACT(PMOS active pull-up)는 전압 레벨 Vcc(542)에 전달된다. 그라운드(538)에 연결된 상기 게이트(544)는 다른 디지털 라인(e.g. Line A)을 전압 Vcc(542)에 안내한다. 그러므로, 디지털 라인들(530) 중에서 하나에 연결된 셀 내부의 데이터는 그것의 최고 레벨(e.g. Vcc or ground)까지 충전된다.(see Thmas Schwarz, COEN 180, <http://www.cse.scu.edu/~tschwarz/coen80/LN/DRAM.html>, last accessed Oct. 5, 2006).
도 6은 본원발명의 하나의 실시예에 의한 초기 로직(646)을 가진 센스 증폭기(632)의 구성을 나타낸다. 센스 증폭기(632)는 도 3의 DRAM 코어(316)와 같은 어떤 적당한 DRAM 칩에서 사용될 수 있다. 제로-모드 플래그(zero-mode flag)가 DRAM 컨트롤러 레지스터(e.g. control register(220) in 도 3)에 설정될 때, 초기화 로직(646)은 디지털 라인들(630)에 연결되고 제로 신호(648)는 디지털 라인들(630)을 그라운드에 이르도록 하기 위해 사용된다. 이것은 디지털 라인들(630) 중 하나에 연결된 각 셀의 커패시터(e.g. 커패시터(424) in 셀(422))로부터 전하를 효과적으로 방출하면서 이루어진다. 선택 라인(e.g. select line(326) in 도 3)은 제거된다. 이는 센서 증폭기(632)로부터 셀들의 연결을 끊고 디지털 라인들(630)에 연결된 각 셀의 커패시터 값을 로직 "0"으로 남기면서 이루어진다. 제로 신호(648)는 제거되고, 이는 디지털 라인들(630)로부터 초기화 로직(646)의 연결을 끊어 이루어진다.
본원발명의 실시예에 있어서는 제로 신호는 자동적으로 제거된다. 예를 들어, 상기 제로-모드 플래그는 단지 미리 설정된 시간 혹은 제로 작동에 대하여 단지 설정된다. 그 시간의 끝에 마지막 혹은 많은 작동들의 마지막에, 상기 제로-모드 플래그는 자동적으로 방출된다. 제로-모드 플래그가 한번 방출되면, DRAM 칩들은 제로 모드(i.e. 초기화 로직(646)을 사용하는 경우)에서 작동을 멈춘다. 선택적으로, 제로-모드는 동적 명령에 의해 제거된다. 상기 명령이 컨트롤러 레지스터에 수신될 때까지, 상기 제로-모드 플래그는 설정으로 남고, DRAM 칩은 계속해서 제로-모드에서 작동을 한다.
초기화 로직(646)은 모든 디지털 라인들이 동시에 초기화될 수 있도록 모든 센서 증폭기들에 추가된다. 그러므로, 본원발명의 실시 예들은 셀들의 전체적인 행에 대한 초기화를 할 수 있고, 그러나, 종래 DRAM 칩들은 셀들을 한번에 하나의 지점에서 초기화한다. 추가적으로, 영구적인 제로-모드 플래그를 사용하는 것에 의해, 본원발명의 실시 예들은 각 열 액세스에 의해 하나의 행의 셀들을 초기화할 수 있다. 디지털 라인의 제로화는 도 6에 설명된 방법에 한정되지 않는다. 제로화는 디지털 라인들(630)에 첨부된 어떤 구성요소 내부에 초기화 로직(646)을 포함하는 변경(modification)을 통해 이루어질 수 있다.
추가적으로, 어떤 실시예에 있어서, 초기화 로직(646)은 버퍼된 데이터 핀(buffered data pins)들 위치하는 임의의 값에 DRAM 셀들을 초기화할 수 있도록 그라운드(638) 접속들과 버퍼된 데이터 핀들 접속 사이에서 스위치될 수 있다. 예를 들어, 5의 값을 가진 DRAM 칩에 버퍼된 4개의 데이터 핀들이 있다면, DRAM 열 셀들은 초기화 로직(646)을 버퍼된 데이터 핀들에 연결하는 것에 의해 반복된 패턴 5555...으로 초기화된다.
도 7은 본원발명의 하나의 실시예에 의한 초기화 로직(746)을 이용한 컴퓨터 시스템(700)의 블록 다이어그램이다.
본원발명에 있어서, 시스템(700)은 CPU(702), 메모리 컨트롤러(708), 메모리 버스(710) 그리고 DRAM 메모리(704)를 포함한다. DRAM 메모리(704)는 초기화 로직(706)을 포함한다. 예에 있어서, 초기화 로직(746)은 DRAM 메모리(704) 내부의 각 센서 증폭기(e.g. 센서 증폭기(632))에 포함된다. 그러나, 다른 실시예에 있어서, 초기화 로직(746)은 DRAM 메모리(704) 내부의 디지털 라인들(e.g. 디지털 라인들(530))에 연결된 어떤 요소에 추가될 수 있다.
작동에 있어서, 어플리케이션, 작동 시스템 혹은 디바이스 드라이브 소프트웨어와 같은, 컴퓨터 명령들은 DRAM 메모리(704) 내부의 셀들(e.g. 셀들(322))을 초기화하는 초기화 요청을 신호로 전달한다. 메모리 컨트롤러(708)는 ASIC(application specific integrated circuit), FPGA(field programmable gate array) 또는 다른 유사한 디바이스로 실행될 수 있다. DRAM(704)와 CPU(702) 사이 인터페이스를 제공하는 메모리 컨트롤러(708)의 기능은 Verilog, VHSIC(Very-High-Speed Integrated Circuit) 또는 VHDL(Hardware Description Language)와 같은 하드웨어 기술언어에 적힌 명령에 의해 실행될 수 있다. 더욱이, 몇몇 실시예에 있어서, 메모리 컨트롤러(708)는 제로-모드 작동(zero-mode operation)에서 작동하고자 하는 때를 결정하기 위해 설정될 수 있고 그것은 제로-모드 작동을 지시하기 위해 제로-모드 플래그를 설정한다. 특히, 본 실시예에 있어서 비록 메모리 컨트롤러(708)가 DRAM 메모리(704)에 연결되어 있지만, 본원발명의 실시예들은 이것에 제한되지 않는다. 더욱이, 다른 실시예에 있어서, CPU(702)는 DRAM 메모리(704)에 직접 연결될 수 있다.
컴퓨터 명령들은 소프트웨어, 펌웨어(firmware) 또는 다른 컴퓨터로 읽을 수 있는 명령들에서 수행될 수 있다. 이러한 명령들은 일반적으로 컴퓨터로 읽을 수 있는 명령들 혹은 데이터 구조들의 저장을 위해 이용되는 어떤 적당한 컴퓨터로 읽을 수 있는 매체에 저장된다. 그와 같은 컴퓨터로 읽을 수 있는 매체는 일반적인 목적 혹은 특별한 목적 컴퓨터 혹은 프로세서 혹은 어떤 프로그램 가능 논리 장치에 의해 접근될 수 있는 어떤 일용가능한 매체일 수 있다. 예를 들어, 적당한 컴퓨터로 읽을 수 있는 매체는 EPROM, EEPROM 혹은 프래쉬 메모리와 같은 반도체 메모리 장치들을 포함하는 비휘발성 메모리 장치들 그리고 다른 종류 매체를 포함한다.
컴퓨터 명령들은 또한 셀들을 할당하고 제로로 하기 위한 다양한 루틴들을 호출하기 위해 적용될 수 있다. 특히, 어떤 실시예에 있어서, 그 명령들은 요청된 할당 크기와 한계 값의 비교에 기초하여 적당한 할당 크기를 결정하기 위해 적용될 수 있다. 더욱이, 그 명령들은 만일 요청된 할당 크기가 전체 행 크기보다 작고 한계 값보다 크다면 행 크기와 동일하도록 요청 할당 크기를 증가시킨다. 그 다음에, 연속되는 초기화 요청들이 가능할 뿐만 아니라 전체 행에서 수행된다. 추가적으로, 어떤 실시예에 있어서, 그 명령들은 DRAM 메모리(704)가 제로-모드 작동(operation)에서 작동하기 위해 적용되는지를 결정하기 위해 적용될 수 있다(e.g. 하나 이상의 행들을 동시에 초기화). DRAM 메모리(704)가 제로-모드 작동(operation)에서 작동하는지 여부를 결정하는 기준은 시스템에 따라 변하고, 여기에 한정되는 것은 아니지만, 요청된 메모리의 양, DRAM 행 크기, 어플리케이션 또는 OS(operation system)을 포함한다. DRAM 칩이 행 제로화 모드에 있는지 여부의 결정은 CPU(702) 소프트웨어, 메모리 컨트롤러(708), DRAM 메모리(704) 그 자체 혹은 이 세 가지의 조합된 것에 의해 처리될 수 있다. 어떤 실시예에 있어서, 제로-모드 작동(operation)에서 작동하는 것이 결정되면, 제로-모드 플래그는 DRAM 모드 레지스터(e.g. 제어 레지스터(220))에 설정된다.
어떤 실시예에 있어서, 하나 이상의 행을 초기화하기 위한 초기화 요청은 제로-모드 플래그를 DRAM 컨트롤 레지스터(220)에 설정하고 그 다음에 DRAM(704)에 초기화되기 위한 행의 행 주소를 액세스하는 것에 의해 실행된다. 그러나, 본원발명의 다른 실시예에 있어서, 하나 이상의 행을 초기화하기 위한 초기화 요청은 또 한 DRAM(704)의 컨트롤러가 DRAM 메모리(704)의 행의 제로화에 관련하는 어떤 다른 수단들에 의해 수행될 수 있다.
어떤 실시예에 있어서, DRAM 컨트롤러는 비트를 제거하기 전에 몇몇 행들을 제로화하기 위해 제로-모드 플래그가 설정되는 동안, 몇몇 DRAM 행들에 액세스한다. 어떤 실시예에 있어서, DRAM 제로-모드 플래그는 상기 행이 접근되어 제호화될 때, 자동으로 제거되고, 그 결과 DRAM 메모리(704)를 정상 모드로 복귀시킨다. 선택적으로, 두 개의 다른 제로-모드 플래그들이 사용되는데, 하나는 자체 제거이고 다른 하나는 상기 설명된 것과 같이 추가적인 명령에 의해 명확하게 제거되는 것이다. 결국, 어떤 선택적 실시예들에 있어서, 초기화 같은 DRAM 메모리(704)의 버퍼된 데이터 핀들에 위치하고 DRAM(704)을 상기 설명과 같이 제로 이외의 값으로 초기화하기 위해 초기 로직(746)에 연결된다.
만일, 초기화 요청이 행 제로 요청이 아니라면, 제로-모드 플래그는 설정되지 않고 DRAM 메모리(704)는 종래 DRAM 칩에서와 같이 한번에 하나의 위치에서 초기화된다. 그러므로, 종래 소프트웨어가 DRAM 셀들을 한번에 하나의 위치를 할당하고 초기화하는 반면, 본원발명의 실시예는 하나 이상 행의 DRAM 셀들 그리고 행 초기화를 하기 위해 배열되고 할당을 크기별로 분류한 대응하는 행의 초기화를 할 수 있다. 계속적으로, DRAM 메모리(704)는 종래 DRAM 칩들보다 더 따른 비율로 제로화 혹은 초기화될 수 있다.
도 8은 본 발명의 실시예에 의한 DRAM 메모리를 초기화하는 방법(800)을 나타내는 흐름도이다. 복수의 셀들(e.g. 셀들(322))로 이루어진 하나 이상의 행이 할당된다.(802) 어떤 실시예에 있어서, 하나 이상의 행들을 할당하는 것은 DRAM이 제로-모드 작동(operation)에서 작동하는지를 결정하는 것을 포함한다. 이러한 결정에 영향을 주는 요소들은, 비록 여기에 한정되는 것은 아니지만, 요청된 메모리의 양, DRAM의 형태, 행 크기, 메모리를 요청한 어플리케이션 그리고 사용되는 OS를 포함한다.
제로-모드 작동(operation)에서 작동하는 것이 결정된 때, 제로-모드 플래그는 DRAM 메모리에 그러한 작동을 지시하기 위해 설정된다. DRAM 메모리는 상기 플래그가 설정되는 한 제로-모드 작동에서 작동한다. 제로-모드 플래그는 설정 타임 기간 혹은 설정된 수의 초기화 요청들 후에 자동적으로 해제될 수 있다. 그것에 의해, 제로-모드 작동은 중단된다. 선택적으로, 영속적인 제로-모드 플래그가 사용될 수 있다. 그러한 실시예에 있어서, 제로-모드 플래그는 제로-모드 플래그를 해제하기 위한 명령을 신호화하는 것에 의해 해제된다. 만일, DRAM이 제로-모드 작동에서 작동하지 않는 것이 결정되면, 제로-모드 플래그는 설정되지 않는다. 제로-모드 플래그가 설정되지 않은 때, DRAM의 셀들은 종래 DRAM 칩들에서와 같이 한번에 하나의 위치에서 초기화된다.
어떤 실시예에 있어서, 하나 이상의 행들을 할당하는 것은 또한 할당 크기를 행 크기의 단위들로 증가시키는 것을 포함한다. 예를 들어, 요청 할당 크기가 행 크기보다 더 작고, 한계 값보다 더 큰 경우, 할당 크기는 행 크기의 단위에 있기 위해 행 경계까지 증가된다. 메모리를 행 크기의 단위들에 할당하는 것은 제로-모드 작동(operation)에서 작동이 이루어질 때, 모든 행들이 액세스될 때 초기화되기 때문에 이롭다.
804에서, 초기화 요청은 할당된 열들을 초기화하기 위해 신호로 전달된다. 예를 들어, CPU는 DRAM 메모리의 블록을 초기화하기 위해 컨트롤 레지스터(e.g. 컨트롤 레지스터(220))에 요청을 전달할 수 있다. 806에서 하나 이상의 할당된 행들 각각의 셀들은 상기 설명한 것과 같이 액세스될 때 동시에 초기화된다. 특히, 어떤 실시예에 있어서, 하나 이상의 할당된 행들을 초기화하는 것은 초기화 값을 복수의 디지털 라인들에 위치하도록 하기 위해 복수의 디지털 라인들을 초기화 로직에 연결하는 것을 포함한다. 상기 초기화 값은 제로 혹은 제로가 아닌 초기화 값일 수 있다. 예를 들어, 상기 초기화 로직은 제로 초기화 값을 디지털 라인들에 위치하도록 하기 위해 그라운드에 연결될 수 있다. 선택적으로, 초기화 로직은 제로 아닌 값을 디지털 라인들에 위치하도록 하기 위해 적어도 하나의 버퍼된 데이터 핀에 연결될 수 있다. 할당된 행의 셀들은 한번에 디지털 라인들(i.e. 액세스된) 하나 행에 연결된다. 각 행이 디지털 라인들에 연결될 때, 디지털라인들에 연결된 그 행에 있는 각 셀들은 동시에 초기화 값으로 설정된다. 한번 상기 행이 초기화되면, 그것 은 디지털라인들로부터 연결이 끊어진다. 비슷하게, DRAM이 한번 초기화 메모리를 마치면, 초기화 로직은 상기 디지털 라인들로부터 연결이 끊어진다.
본원발명은 그것의 본질적인 특징을 벗어나지 않는 범위에서 다른 구체적인 형태들로 구체화될 수 있다. 상기 설명된 실시예들은 예시적인 관점에서 고려되어야하고 이것에 의해 어떠한 제한적 해석은 이루어질 수 없다. 그러므로, 본원발명의 범위는 상기 상세한 설명에 의해서가 아니라 첨부된 청구항들에 의해 명확해진다. 특허청구범위와 균등한 범위의 안에서 일어날 수 있는 모든 변화는 본원발명의 권리 범위에 포함된다.
본원발명의 특징들은 도면들과 관련하여 하기하는 설명으로부터 당업자에게 명확하게 이해된다. 도면들은 본원발명의 단지 전형적인 실시 예를 나타내고 그러므로 권리범위는 이에 한정되지 않는다는 것을 이해함으로써, 본원발명은 더욱 구체적으로 설명되고, 이는 첨부된 도면을 통해 더욱 상세하게 될 수 있다.
도 1은 컴퓨터 시스템이 메모리를 사용하는 방법을 설명하는 블록 다이어그램이다.
도 2는 종래 DRAM의 내부 구성을 나타내는 구성도이다.
도 3은 종래 DRAM 코어의 내부 구성을 나타내는 구성도이다.
도 4는 종래 DRAM 셀의 구성을 나타내는 구성도이다.
도 5는 종래 DRAM 센서 증폭기를 나타내는 구성도이다.
도 6은 본원발명의 하나의 실시예에 의한 초기화 로직을 가진 센서 증폭기를 나타내는 도면이다.
도 7은 본원발명의 하나의 실시예에 의한 초기화 로직을 사용한 컴퓨터 시스템의 블록 다이어그램이다.
도 8은 본원발명의 하나의 실시예에 의한 DRAM 메모리를 초기화하는 방법을 나타내는 흐름도이다.
다양한 도면에 있어서 동일 도면부호들과 동일 지시어는 동일한 구성들을 나타낸다.

Claims (20)

  1. DRAM에서 복수 셀의 하나 이상의 행을 할당하는 단계;
    상기 할당된 하나 이상의 행을 초기화하기 위해 초기화 요청을 신호로 전달하는 단계; 및
    상기 하나 이상의 할당된 행들을 엑세스할 때, 상기 하나 이상의 할당된 각각의 행들 내부의 모든 셀들을 동시에 초기화하는 단계를 포함하는 DRAM을 초기화하는 방법.
  2. 제 1항에 있어서, 상기 하나 이상의 할당된 각각의 행들 내부의 모든 셀들을 초기화하는 단계는
    복수의 디지털 라인들에 초기화 값을 설정하기 위해 상기 복수의 디지털 라인들을 초기화 로직에 연결하는 단계; 및
    상기 하나 이상의 할당된 행들 각각을 상기 복수의 디지털 라인들 하나의 행에 한번에 연결하여 상기 하나 이상의 할당된 행들 내부의 모든 셀들을 상기 초기화 값으로 동시에 설정하는 단계를 포함하는 DRAM을 초기화하는 방법.
  3. 제 1 항에 있어서,
    상기 하나 이상의 할당된 각각의 행들 내부의 모든 셀들을 초기화하는 단계는 상기 하나 이상의 할당된 각각의 행들 내부의 모든 셀들을 제로 초기화 값 및 제로 아닌 초기화 값 중에서 하나로 초기화하는 것을 포함하는 DRAM을 초기화하는 방법.
  4. 제 1 항에 있어서, 상기 하나 이상의 행을 할당하는 단계는 메모리 할당 크기를 행 사이즈 단위로 증가시키는 것을 포함하는 DRAM을 초기화하는 방법.
  5. 제 1 항에 있어서, 상기 하나 이상의 행들을 할당하는 단계는
    제로-모드 작동(operation)에서 작동하는 때를 결정하는 단계; 및
    제로-모드 작동(operation)에서 작동하는 것이 결정되면 제로-모드 플래그를 설정하는 단계를 포함하는 DRAM을 초기화하는 방법.
  6. 제 5 항에 있어서,
    설정된 타임 기간 및 설정된 초기화 요청 수 중에서 하나 이후에 상기 제로-모드 플래그를 자동으로 해제하는 단계; 및
    상기 제로-모드 플래그를 해제하는 명령을 수신한 후에 상기 제로-모드 플래 그를 해제하는 단계 중에서 하나를 더 포함하는 DRAM을 초기화하는 방법.
  7. 제 5항에 있어서,
    상기 제로-모드 플래그가 설정되지 않으면 상기 하나 이상의 행들 각각의 내부 셀들을 한번에 하나의 위치에서 초기화하는 단계를 더 포함하는 DRAM을 초기화하는 방법.
  8. 제 5항에 있어서, 상기 제로-모드 작동(operation)에서 작동하는 때를 결정하는 단계는
    요청된 메모리의 양, DRAM의 형태, 행 크기, 메모리를 요청한 어플리케이션 및 사용되는 OS 중에서 하나 이상을 기반으로 상기 제로-모드 작동(operation)에서 작동하는 때를 결정하는 것을 포함하는 DRAM을 초기화하는 방법.
  9. DRAM 칩을 모드 작동으로 설정하기 위해 형성된 컨트롤 레지스터;
    로직 "1" 혹은 로직 "0"을 나타내는 값을 가지기 위해 형성된 각각의 셀로 구성된 복수의 셀;
    복수의 선택 라인들;
    복수의 디지털 라인들;
    하나의 행 주소를 디코드하고 하나 이상의 선택 라인들에 의해 하나 이상의 행들을 선택하기 위해 형성된 행 주소 디코더; 여기서 하나 이상의 행들의 셀들을 선택하는 것은 복수의 셀들 각각을 복수의 디지털 라인들 중 하나에 연결하는 것을 특징으로 하고,
    상기 컨트롤 레지스터가 제로-모드 작동(operation)에 대해 DRAM 칩을 설정하는 때 복수의 디지털 라인들에 선택적으로 연결되는 초기화 로직, 여기서 초기화 로직은 상기 행 주소 디코더에 의해 선택된 각 행의 셀들이 초기화 값으로 동시에 충전되기 위해 초기화 값을 복수의 디지털 라인들에 위치하는 것을 포함하는 DRAM 칩.
  10. 제 9 항에 있어서,
    센서 증폭기;
    상기 센서 증폭기에 위치한 초기화 로직을 더 포함하는 DRAM 칩.
  11. 제 9 항에 있어서,
    상기 초기화 로직은 그라운드 및 적어도 하나의 버퍼된 데이터 핀 중 하나에 연결되고, 만일 상기 초기화 로직이 상기 적어도 하나의 버퍼된 데이터 핀에 연결 되면, 상기 초기화 값이 제로가 아닌 값인 것을 특징으로 하는 DRAM 칩.
  12. 제 9 항에 있어서,
    상기 컨트롤 레지스터는 제로-모드 작동에 대해 제로-모드 플래그를 설정하도록 DRAM 칩을 설정하기 위해 형성되는 것을 특징으로 하는 DRAM 칩.
  13. 제 12 항에 있어서,
    상기 컨트롤 레지스터는 설정된 타임 기간 및 제로 작동들의 설정된 수 중 하나 이후에 상기 제로-모드 플래그를 자동으로 해제하는 것을 특징으로 하는 DRAM 칩.
  14. 제 12 항에 있어서,
    상기 컨트롤 레지스터는 제로-모드 작동을 중단하기 위한 명령이 수신된 때에 제로-모드 플래그를 해제하도록 형성되는 DRAM 칩.
  15. 행 초기화 요청을 신호화하도록 형성된 CPU;
    하나 이상의 DRAM 칩들을 포함하고,
    상기 각각의 DRAM 칩은
    DRAM 칩을 모드 작동으로 설정하기 위해 형성된 컨트롤 레지스터,
    로직 "1" 혹은 로직 "0"을 나타내는 값을 가지기 위해 형성된 각각의 셀로 구성된 복수의 셀,
    복수의 선택 라인들,
    복수의 디지털 라인들,
    하나의 행 주소를 디코드하고 하나 이상의 선택 라인들에 의해 하나 이상의 행들을 선택하기 위해 형성된 행 주소 디코더; 여기서 하나 이상의 행들의 셀들을 선택하는 것은 복수의 셀들 각각을 복수의 디지털 라인들 중 하나에 연결하는 것을 특징으로 하고,
    상기 컨트롤 레지스터가 제로-모드 작동(operation)에 대해 DRAM 칩을 설정하는 때 복수의 디지털 라인들에 선택적으로 연결되는 초기화 로직, 여기서 초기화 로직은 상기 행 주소 디코더에 의해 선택된 각 행의 셀들이 초기화 값으로 동시에 충전되기 위해 초기화 값을 복수의 디지털 라인들에 위치하는 것을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  16. 제 15 항에 있어서, 상기 하나 이상의 DRAM 칩의 각각은
    센서 증폭기;
    상기 센서 증폭기에 위치한 초기화 로직을 더 포함하는 컴퓨터 시스템.
  17. 제 15 항에 있어서, 상기 초기화 로직은 그라운드 및 적어도 하나의 버퍼된 데이터 핀 중 하나에 연결되고, 만일 상기 초기화 로직이 상기 적어도 하나의 버퍼된 데이터 핀에 연결되면, 상기 초기화 값이 제로가 아닌 값인 것을 특징으로 컴퓨터 시스템.
  18. 제 15 항에 있어서,
    상기 컨트롤 레지스터는 제로-모드 작동에 대해 제로-모드 플래그를 설정하도록 DRAM 칩을 설정하기 위해 형성되는 것을 특징으로 컴퓨터 시스템.
  19. 제 18 항에 있어서,
    상기 컨트롤 레지스터는 설정된 타임 기간 및 제로 작동들의 설정된 수 중 하나 이후에 상기 제로-모드 플래그를 자동으로 해제하는 것을 특징으로 하는 컴퓨터 시스템.
  20. 제 18 항에 있어서,
    상기 컨트롤 레지스터는 제로-모드 작동을 중단하기 위한 명령이 수신된 때에 제로-모드 플래그를 해제하도록 형성되는 것을 특징으로 하는 컴퓨터 시스템.
KR1020070105362A 2006-10-20 2007-10-19 Dram 메모리의 신속한 초기화 KR20080035980A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/551,426 US20080094877A1 (en) 2006-10-20 2006-10-20 Faster initialization of dram memory
US11/551,426 2006-10-20

Publications (1)

Publication Number Publication Date
KR20080035980A true KR20080035980A (ko) 2008-04-24

Family

ID=39338713

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070105362A KR20080035980A (ko) 2006-10-20 2007-10-19 Dram 메모리의 신속한 초기화

Country Status (4)

Country Link
US (1) US20080094877A1 (ko)
JP (1) JP2008146810A (ko)
KR (1) KR20080035980A (ko)
TW (1) TW200836212A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170061431A (ko) * 2015-11-26 2017-06-05 삼성전자주식회사 스토리지 컨트롤러의 동작 방법 및 상기 스토리지 컨트롤러를 포함하는 데이터 저장 장치의 동작 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2691861A4 (en) * 2011-03-30 2015-01-14 Irdeto Bv PROCEDURE FOR SAFEGUARDING A MEMORY FROM POOR ATTACK
US9805802B2 (en) 2015-09-14 2017-10-31 Samsung Electronics Co., Ltd. Memory device, memory module, and memory system
GB2561011B (en) * 2017-03-31 2021-03-17 Advanced Risc Mach Ltd Initialisation of a storage device
US11137919B2 (en) 2017-10-30 2021-10-05 Arm Ltd. Initialisation of a storage device
US11600316B2 (en) 2020-05-28 2023-03-07 Rambus Inc. DRAM security erase
US11094393B1 (en) * 2020-09-02 2021-08-17 Qualcomm Incorporated Apparatus and method for clearing memory content
TWI831340B (zh) * 2022-08-24 2024-02-01 大陸商北京歐錸德微電子技術有限公司 快速初始化裝置與方法以及積體電路設計驗證系統

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001291385A (ja) * 2000-04-05 2001-10-19 Nec Corp 半導体記憶装置並びにその試験装置および試験方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170061431A (ko) * 2015-11-26 2017-06-05 삼성전자주식회사 스토리지 컨트롤러의 동작 방법 및 상기 스토리지 컨트롤러를 포함하는 데이터 저장 장치의 동작 방법

Also Published As

Publication number Publication date
TW200836212A (en) 2008-09-01
US20080094877A1 (en) 2008-04-24
JP2008146810A (ja) 2008-06-26

Similar Documents

Publication Publication Date Title
KR20080035980A (ko) Dram 메모리의 신속한 초기화
US5948081A (en) System for flushing queued memory write request corresponding to a queued read request and all prior write requests with counter indicating requests to be flushed
US10372446B2 (en) Technology to dynamically modulate memory device read granularity
KR100868393B1 (ko) 비휘발성 메모리 제어기 및 휘발성 메모리에 액세스하는방법 및 시스템, 비휘발성 메모리 제어기 및 휘발성 메모리
US20180143908A1 (en) Continuous page read for memory
KR102030126B1 (ko) 판독 데이터 스트로브 신호를 포함하는 감소된 핀 카운트(rpc) 메모리 버스 인터페이스를 위한 장치 및 방법
JP4846182B2 (ja) コマンドごとのポスト式書込みを有するメモリデバイス
KR20170034401A (ko) 메모리 데이터에 기초하여 비교 정보를 결정하기 위한 장치, 시스템 및 방법
US6570791B2 (en) Flash memory with DDRAM interface
BR112020008423A2 (pt) gerenciamento de créditos de gravação para memória não volátil
US20200117396A1 (en) Memory module and memory system relating thereto
US20170185353A1 (en) Support for improved throughput in a memory device
KR102387461B1 (ko) 스토리지 장치, 스토리지 시스템 및 이의 동작 방법
US20190026220A1 (en) Storage device that stores latency information, processor and computing system
TWI534615B (zh) 串列周邊介面控制器、串列周邊介面快閃記憶體及其存取方法和存取控制方法
KR102379167B1 (ko) 레지스터 세트들을 포함하는 반도체 장치와 이를 포함하는 데이터 저장 장치
US8266361B1 (en) Access methods and circuits for devices having multiple buffers
US11935601B2 (en) Bit line sensing circuit comprising a sample and hold circuit
US6782463B2 (en) Shared memory array
TW200935437A (en) Address translation between a memory controller and an external memory device
US20080052424A1 (en) Data access system, data access apparatus, data access integrated circuit, and data access method
US6842831B2 (en) Low latency buffer control system and method
US7080217B2 (en) Cycle type based throttling
EP3842949A1 (en) Read quality of service for non-volatile memory
TW201740278A (zh) 用於存取異質記憶體的方法及含異質記憶體的記憶體模組

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid