KR101660455B1 - Pre-charging bitlines in a static random access memory (sram) prior to data access for reducing leakage power, and related systems and methods - Google Patents

Pre-charging bitlines in a static random access memory (sram) prior to data access for reducing leakage power, and related systems and methods Download PDF

Info

Publication number
KR101660455B1
KR101660455B1 KR1020157034407A KR20157034407A KR101660455B1 KR 101660455 B1 KR101660455 B1 KR 101660455B1 KR 1020157034407 A KR1020157034407 A KR 1020157034407A KR 20157034407 A KR20157034407 A KR 20157034407A KR 101660455 B1 KR101660455 B1 KR 101660455B1
Authority
KR
South Korea
Prior art keywords
sram
data
charge
array
data array
Prior art date
Application number
KR1020157034407A
Other languages
Korean (ko)
Other versions
KR20150144809A (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 KR20150144809A publication Critical patent/KR20150144809A/en
Application granted granted Critical
Publication of KR101660455B1 publication Critical patent/KR101660455B1/en

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/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
    • 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/412Digital 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 using field-effect transistors only
    • 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/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1075Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for multiport memories each having random access ports and serial ports, e.g. video RAM
    • 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/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1042Read-write modes for single port memories, i.e. having either a random port or a serial port using interleaving techniques, i.e. read-write of one part of the memory while preparing another part

Landscapes

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

Abstract

본 명세서에서 개시된 실시예들은 누설 전력을 감소시키기 위해 데이터 액세스 이전에 SRAM(static random access memory)의 비트라인들을 프리-차지하기 위한 방법들 및 장치들을 포함한다. 메모리 액세스 로직 회로는 SRAM의 SRAM 데이터 어레이의 제 1 데이터 액세스 경로에서 액세스될 데이터 엔트리 어드레스를 포함하는 메모리 액세스 요청을 수신한다. SRAM은 또한 제 1 데이터 액세스 경로 외부의 제 2 데이터 액세스 경로에 제공되는 프리-차지 회로를 포함한다. 프리-차지 회로는 누설 전력을 감소시키기 위해 유휴 기간들 동안 SRAM 데이터 어레이의 비트라인을 프리-차지하는 것을 방지하도록 메모리 액세스 요청의 부분으로서 SRAM 데이터 어레이의 프리-차지를 인에이블하도록 구성된다. 프리-차지 회로가 데이터 액세스 이전에 SRAM 데이터 어레이의 프리-차지를 인에이블할 수 있어서, 프리-차지 회로는 제 1 데이터 액세스 경로에 레이턴시를 부가하지 않게 된다.Embodiments disclosed herein include methods and apparatus for pre-charging bit lines of a static random access memory (SRAM) prior to data access to reduce leakage power. The memory access logic circuit receives a memory access request including a data entry address to be accessed in a first data access path of the SRAM data array of the SRAM. The SRAM also includes a pre-charge circuit provided on a second data access path outside the first data access path. The pre-charge circuit is configured to enable pre-charging of the SRAM data array as part of a memory access request to prevent pre-charging bit lines of the SRAM data array during idle periods to reduce leakage power. The pre-charge circuit may enable pre-charge of the SRAM data array prior to data access so that the pre-charge circuit does not add latency to the first data access path.

Description

누설 전력을 감소시키기 위해 데이터 액세스 이전의 정적 랜덤 액세스 메모리(SRAM)의 비트라인들의 사전-충전 및 관련된 시스템들 및 방법들{PRE-CHARGING BITLINES IN A STATIC RANDOM ACCESS MEMORY (SRAM) PRIOR TO DATA ACCESS FOR REDUCING LEAKAGE POWER, AND RELATED SYSTEMS AND METHODS} BACKGROUND OF THE INVENTION [0001] Pre-charging and related systems and methods of bit lines of static random access memory (SRAM) prior to data access to reduce leakage power are disclosed in U.S. Patent Application Serial No. 10 / REDUCING LEAKAGE POWER, AND RELATED SYSTEMS AND METHODS}

우선권 청구 Priority Claim

[0001] 본 출원은 발명의 명칭이 "METHODS AND APPARATUSES FOR PRE-CHARGING OF STATIC RANDOM ACCESS MEMORY(SRAM) DATA ARRAYS PRIOR TO ACCESS FOR SAVING POWER LEAKAGE"이고 2013년 5월 6일 출원된 미국 특허 가출원 일련 번호 제 61/819,744호를 우선권으로 주장하고, 이는 그 전체가 인용에 의해 본 명세서에 포함된다. [0001] This application claims the benefit of U.S. Provisional Patent Application serial number filed May 6, 2013, entitled " METHODS AND APPARATUS FOR PRE-CHARGING OF STATIC RANDOM ACCESS MEMORY (SRAM) DATA ARRAYS PRIOR TO ACCESS FOR SAVING POWER LEAKAGE " 61 / 819,744, which is hereby incorporated by reference in its entirety.

[0002] 본 출원은 발명의 명칭이 "PRE-CHARGING BITLINES IN A STATIC RANDOM ACCESS MEMORY(SRAM) PRIOR TO DATA ACCESS FOR REDUCING LEAKAGE POWER, AND RELATED SYSTEMS AND METHODS"이고 2013년 10월 9일에 출원된 미국 특허 출원 번호 제14/049,312호를 우선권으로 주장하며, 이는 그 전체가 인용에 의해 본 명세서에 포함된다. [0002] This application claims the benefit of U.S. Provisional Application No. 60 / 542,502, filed October 9, 2013, entitled "PRE-CHARGING BITLINES IN A STATIC RANDOM ACCESS MEMORY (SRAM) PRIOR TO DATA ACCESS FOR REDUCING LEAKAGE POWER, AND RELATED SYSTEMS AND METHODS" Patent application Ser. No. 14 / 049,312, which is hereby incorporated by reference in its entirety.

본 개시의 기술분야 The technical field of the present disclosure

[0003] 본 개시의 기술은 일반적으로 컴퓨터 메모리에 관한 것으로서, 보다 구체적으로는, 메모리 액세스에 대한 정적 랜덤 액세스 메모리(SRAM)의 비트라인들을 프리-차지(pre-charge)하는 것에 관한 것이다. [0003] The present disclosure relates generally to computer memory, and more particularly to pre-charging bit lines of static random access memory (SRAM) for memory access.

[0004] 메모리 셀은 "메모리"로서 또한 알려진 컴퓨터 데이터 저장소의 기본 구성 단위이다. 컴퓨터 시스템은 상이한 타입들로 이루어진 데이터를 메모리에 기록하고 그 메모리로부터 데이터를 판독할 수 있다. 예를 들어, 하나의 타입의 메모리는 SRAM(static random access memory)이다. 예로서, SRAM은 중앙 처리 장치(CPU) 시스템에서 캐시 메모리로서 이용될 수 있다. SRAM 캐시는 태그 어레이 및 데이터 어레이로 구성될 수 있다. 태그 어레이는 SRAM 데이터 어레이에 저장된 메모리 어드레스들에 대한 인덱스들을 포함한다. 태그 어레이는 CPU로부터 메모리 액세스 요청의 부분으로서 메모리 어드레스를 수신한다. 태그 어레이는, SRAM 데이터 어레이가 메모리 액세스 요청에서 메모리 어드레스에 대한 유효한 데이터를 포함하는지를 결정하도록 메모리 어드레스를 이용한다. 유효한 데이터가 존재하는 경우, 데이터는 상위 레벨 캐시 메모리 또는 메인 메모리와 같이 상위 레벨 메모리로부터 액세스되는 것과 대조적으로 SRAM 데이터 어레이로부터 직접 액세스될 수 있다. [0004] A memory cell is the basic building block of a computer data store, also known as a "memory". A computer system may write data of different types into a memory and read data from the memory. For example, one type of memory is static random access memory (SRAM). By way of example, an SRAM may be utilized as a cache memory in a central processing unit (CPU) system. The SRAM cache may be comprised of a tag array and a data array. The tag array includes indices for memory addresses stored in the SRAM data array. The tag array receives a memory address as part of a memory access request from the CPU. The tag array uses the memory address to determine if the SRAM data array contains valid data for the memory address in the memory access request. If valid data is present, the data may be accessed directly from the SRAM data array as opposed to being accessed from higher level memory, such as higher level cache memory or main memory.

[0005] SRAM 데이터 어레이들은 SRAM 비트셀들의 행들 및 열들로 구성된다. SRAM 비트셀들은 단일 정보 비트를 각각 저장할 수 있다. SRAM 데이터 어레이에 대한 메모리 액세스 요청은 통상적으로 선택된 행의 각각의 열에 저장된 비트들에 액세스하도록 SRAM 비트셀들의 전체 행을 선택하는 것을 포함한다. 이것에 관하여, 도 1은 단일 정보 비트(12)를 저장하도록 SRAM에 제공될 수 있는 SRAM 셀로서 표준 6-T(six transistor) SRAM 비트셀(10)의 예를 예시한다. 단일 정보 비트(12)는 6-T SRAM 비트셀(10)에서 두 개(2)의 교차-커플링된 인버터들(14, 16)에 저장된다. 6-T SRAM 비트셀(10)은 단일 정보 비트(12)(예를 들어, 로직 상태 "1" 또는 "0")를 나타내는데 이용되는 2개의 안정 상태들을 갖는다. 2개의 부가적인 액세스 트랜지스터들(18, 20)은 판독 및 기록 동작들 동안 SRAM 비트셀(10)에 대한 액세스를 제어하도록 제공된다. 6-T SRAM 비트셀(10)에 대한 액세스는 두 개(2)의 액세스 트랜지스터들(18, 20)을 제어하는 워드라인(24) 상에서 어서트되는 워드라인 신호(22)에 의해 인에이블된다. 워드라인(24) 상의 워드라인 신호(22)의 어서션은 두개(2)의 액세스 트랜지스터들(18, 20)을 활성화하여, 비트라인(26) 및 비트라인 보완(28)이 두 개(2)의 교차-커플링된 인버터들(14, 16)에 커플링되게 한다. 따라서, 비트라인(26) 및 비트라인 보완(28)은 판독 및 기록 둘 다의 동작들에 대한 데이터를 전달하는데 이용된다. [0005] SRAM data arrays are comprised of rows and columns of SRAM bit cells. SRAM bit cells may store a single information bit, respectively. The memory access request for the SRAM data array typically includes selecting the entire row of SRAM bit cells to access the bits stored in each column of the selected row. In this regard, FIG. 1 illustrates an example of a standard 6-T (six transistor) SRAM bit cell 10 as an SRAM cell that may be provided to an SRAM to store a single information bit 12. A single information bit 12 is stored in two (2) cross-coupled inverters 14, 16 in a 6-T SRAM bit cell 10. The 6-T SRAM bit cell 10 has two stable states that are used to represent a single information bit 12 (e.g., logic state "1" or "0"). Two additional access transistors 18, 20 are provided to control access to the SRAM bit cell 10 during read and write operations. An access to the 6-T SRAM bit cell 10 is enabled by the word line signal 22 asserted on the word line 24 controlling the two (2) access transistors 18,20 . The assertion of the word line signal 22 on the word line 24 activates two (2) access transistors 18,20 so that the bit line 26 and the bit line complement 28 are connected in two (2) Of the cross-coupled inverters 14, 16 of the inverter. Thus, bit line 26 and bit line supplement 28 are used to transfer data for both read and write operations.

[0006] 예로서, 판독 동작에서, 액세스 트랜지스터들(18, 20)의 활성화는, 단일 정보 비트(12)가 두 개(2)의 교차-커플링된 인버터들(14, 16)에 의해 비트라인(26) 및 비트라인 보완(28) 상에 배치되게 한다. 단일 정보 비트(12)는 전압 또는 전류 레벨들의 형태로 비트라인(26) 및 비트라인 보완(28) 상에 배치된다. 감지 증폭기(30)는 위에서 논의된 바와 같이 2개의 논리적 상태들 중 하나를 나타내는, 비트라인(26)과 비트라인 보완(28) 간의 다른 전압을 검출한다. 기록 동작에서, 입력 드라이버(32)는 전압(34) 및 전압 보완(36)을 각각 비트라인(26) 및 비트라인 보완(28) 상에 배치한다. 입력 드라이버(32)에 의해 각각 비트라인(26) 및 비트라인 보완(28) 상에 배치되는 전압(34) 및 전압 보완(36)은 저장된 단일 정보 비트(12)를 나타낸다. 워드라인(24)에 의한 액세스 트랜지스터들(18, 20)의 활성화는 비트라인(26) 및 비트라인 보완(28) 상의 전압(34) 및 전압 보완(36)이 두 개(2)의 교차-커플링된 인버터들(14, 16)에 저장되거나 래치되게 한다. As an example, in a read operation, the activation of the access transistors 18, 20 may be controlled by a single bit of information 12 being applied by two (2) cross-coupled inverters 14, Line 26 and the bit line complement 28. [ A single information bit 12 is placed on bit line 26 and bit line complement 28 in the form of voltage or current levels. The sense amplifier 30 detects a different voltage between the bit line 26 and the bit line complement 28, representing one of the two logical states as discussed above. In a write operation, the input driver 32 places voltage 34 and voltage compensation 36 on bit line 26 and bit line complement 28, respectively. Voltage 34 and voltage compensation 36 placed on bit line 26 and bit line complement 28 by input driver 32 respectively represent a single stored information bit 12. Activation of the access transistors 18,20 by the word line 24 is accomplished by applying a voltage 34 and a voltage complement 36 on the bit line 26 and the bit line complement 28 to the two cross- To be stored or latched in the coupled inverters 14,16.

[0007] 도 1의 6-T SRAM 비트셀(10)의 비트라인(26) 및 비트라인 보완(28)은 판독 또는 기록 액세스 이전에 알려진 안정된 전압 레벨(즉, 로직 하이 "1" 또는 로직 로우"0")로 각각 비트라인 프리-차지 신호(38) 및 비트라인 프리-차지 신호 보완(40)에 의해 프리-차지될 수 있다. 비트라인(26) 및 비트라인 보완(28)을 프리-차지하는 것은 감지 증폭기(30)가 비트 상태로서 상이한 전압 레벨들을 효율적으로 해석하도록 허용하고 SRAM 비트셀(10)이 SRAM 비트셀(10)의 셀 혼란들을 방지하기 위해 알려진 컨디션에서 시작하도록 허용한다. 비트라인(26) 및 비트라인 보완(28)을 프리-차지하는 것은 워드라인(24)의 어서션 시에 탈활성화되어서, 초기 알려진 전압 레벨이 판독 또는 기록 동작들에서 위에서 설명된 바와 같이, 두 개(2)의 교차-커플링된 인버터들(14, 16)에 의해 또는 입력 드라이버(32)에 의해 수정되도록 허용한다. 6-T SRAM 비트셀(10)에 대한 판독 또는 기록 동작이 메모리 액세스 요청에 대해 완료된 이후, 비트라인(26) 및 비트라인 보완(28)은 다음 메모리 액세스 요청을 준비하도록 이 알려진 프리-차지 전압 레벨로 다시 프리-차지될 수 있다. The bit line 26 and bit line complement 28 of the 6-T SRAM bit cell 10 of FIG. 1 are of a known stable voltage level (i.e., a logic high "1 " Can be pre-charged by bit line pre-charge signal 38 and bit line pre-charge signal complement 40, respectively, Pre-charging bit line 26 and bit line complement 28 allows sense amplifier 30 to efficiently interpret different voltage levels as a bit state and SRAM bit cell 10 is coupled to SRAM bit cell 10 Allows to start at a known condition to prevent cell chaos. The pre-charging of the bit line 26 and the bit line complement 28 is deactivated at the assertion of the word line 24 so that an initial known voltage level is applied to the two 2 by the cross-coupled inverters 14, 16 or by the input driver 32. After the read or write operation to the 6-T SRAM bit cell 10 is completed for a memory access request, the bit line 26 and the bit line complement 28 are written to this known pre-charge voltage Level < / RTI > again.

[0008] 위에서 논의된 바와 같이, SRAM 비트셀 열의 비트라인들의 프리-차지를 이용하는 SRAM 설계들에 대해, 메모리 액세스 요청의 메모리 어드레스는 프리-차지를 위해 액세스되는 SRAM 비트셀들의 특정한 행 또는 열을 식별하는데 이용될 수 있다. 메모리 액세스 요청은 메모리 액세스 요청의 메모리 어드레스를, 프리-차지를 위해 액세스되는 특정한 행 또는 열로 변환하도록 메모리 액세스 요청 회로를 이용한다. 그러나 이러한 부가적인 회로를 제공하는 것은 메모리 액세스 요청에 레이턴시를 부가할 수 있다. 이 부가적인 레이턴시를 방지하기 위해, SRAM 설계들은 다음 메모리 액세스 요청에 대해 SRAM 비트셀들을 준비하기 위해 판독 또는 기록 동작이 완료된 이후 SRAM 비트셀의 모든 행 또는 열들을 프리-차지하는 것을 포함할 수 있다. 따라서, 메모리 액세스 요청의 메모리 어드레스를 SRAM 비트셀의 특정한 행 또는 열로 변환하기 위한 부가적인 회로는 필수적이지 않다. 그러나 비트라인 프리-차지를 유지하는 것은, SRAM 비트셀들이 액세스되지 않을 때 메모리 유휴 시간들 동안 누설 전력을 증가시킬 수 있다.[0008] As discussed above, for SRAM designs that utilize pre-charge of the bit lines of the SRAM bit cell column, the memory address of the memory access request may include a particular row or column of SRAM bit cells accessed for pre- Can be used for identification. The memory access request utilizes a memory access request circuit to convert the memory address of the memory access request into a particular row or column that is accessed for pre-charging. However, providing this additional circuitry may add latency to memory access requests. To prevent this additional latency, SRAM designs may include pre-charging all rows or columns of SRAM bit cells after a read or write operation is completed to prepare SRAM bit cells for the next memory access request. Thus, additional circuitry for converting the memory address of the memory access request to a particular row or column of SRAM bit cells is not necessary. However, maintaining bit line pre-charge can increase leakage power during memory idle times when SRAM bit cells are not being accessed.

[0009] 따라서, SRAM 비트셀들의 모든 행 또는 열들을 프리-차지하는 것을 포함하는 SRAM 설계들은 메모리 액세스 요청의 부분으로서 SRAM 비트셀들의 특정한 행 또는 열들을 식별하는 SRAM 설계들보다 더 많은 전력을 소비할 수 있다. 그러나 SRAM 비트셀의 모든 행 또는 열들을 프리-차지하는 것을 포함하는 SRAM 설계들은 프리-차지를 위해 메모리 액세스 요청의 부분으로서 액세스되는 특정한 행 또는 열을 식별하는데 이용되는 회로로부터의 부가적인 레이턴시를 포함하지 않을 수 있다. Thus, SRAM designs, including precharging all rows or columns of SRAM bit cells, consume more power than SRAM designs that identify specific rows or columns of SRAM bit cells as part of a memory access request . However, SRAM designs, including precharging all rows or columns of SRAM bit cells, do not include additional latency from the circuitry used to identify the particular row or column being accessed as part of the memory access request for pre-charging .

[0010] 본 명세서에서 개시된 실시예들은 누설 전력을 감소시키기 위해 데이터 액세스 이전에 SRAM(static random access memory)의 비트라인들을 프리-차지하기 위한 방법들 및 장치들을 포함한다. 데이터 액세스 이전에 SRAM을 프리-차지하기 위한 실시예들은 판독 또는 기록 성능에 영향을 주지 않고 누설 전력을 감소시킬 수 있다. SRAM은 하나의 비-제한적인 예로서, SRAM 캐시에 포함될 수 있다. 이것에 관하여, 메모리 액세스 로직 회로가 SRAM의 제 1 데이터 액세스 경로에 제공될 수 있다. 메모리 액세스 로직 회로는 SRAM의 SRAM 데이터 어레이에서 액세스될 데이터 엔트리 어드레스를 포함하는 메모리 액세스 요청을 수신한다. 메모리 액세스 로직 회로는 SRAM 데이터 어레이의 데이터 엔트리 어드레스를 인덱싱하기 위한 데이터 인덱스로 데이터 엔트리 어드레스를 변환한다. SRAM은 또한 제 1 데이터 액세스 경로 외부의 제 2 데이터 액세스 경로에 제공되는 프리-차지 회로를 포함한다. 프리-차지 회로는 누설 전력을 감소시키기 위해 유휴 기간들 동안 SRAM 데이터 어레이의 비트라인을 프리-차지하는 것을 방지하도록 메모리 액세스 요청의 부분으로서 SRAM 데이터 어레이의 프리-차지를 인에이블하도록 구성된다. 그러나 제 1 데이터 액세스 경로 외부의 제 2 데이터 액세스 경로에 프리-차지 회로를 또한 제공함으로써, 프리-차지 회로가 데이터 액세스 이전에 SRAM 데이터 어레이의 프리-차지를 인에이블할 수 있어서, 프리-차지 회로는 제 1 데이터 액세스 경로에 레이턴시를 부가하지 않게 된다. [0010] Embodiments disclosed herein include methods and apparatus for pre-charging bit lines of a static random access memory (SRAM) prior to data access to reduce leakage power. Embodiments for pre-charging the SRAM prior to data access may reduce leakage power without affecting read or write performance. SRAM may be included in the SRAM cache as one non-limiting example. In this regard, a memory access logic circuit may be provided in the first data access path of the SRAM. The memory access logic circuit receives a memory access request including a data entry address to be accessed in the SRAM data array of the SRAM. The memory access logic circuit converts the data entry address into a data index for indexing the data entry address of the SRAM data array. The SRAM also includes a pre-charge circuit provided on a second data access path outside the first data access path. The pre-charge circuit is configured to enable pre-charging of the SRAM data array as part of a memory access request to prevent pre-charging bit lines of the SRAM data array during idle periods to reduce leakage power. However, by also providing a pre-charge circuit in the second data access path outside the first data access path, the pre-charge circuit can enable pre-charge of the SRAM data array prior to data access, Does not add a latency to the first data access path.

[0011] 누설 전력을 추가로 감소시키기 위해, SRAM 데이터 어레이가 예를 들어, 서브-어레이들로 구성되는 경우, 프리-차지 회로는 데이터 엔트리 어드레스를 포함하는 SRAM 데이터 어레이의 특정한 데이터 서브-어레이를 식별하고 그의 프리-차지를 인에이블하도록 또한 구성될 수 있다. 이러한 방식으로, 데이터 엔트리 어드레스를 포함하지 않는 SRAM 데이터 어레이의 데이터 서브-어레이들은 액세스되지 않은 데이터 서브-어레이들을 프리-차지하지 않음으로써 부가적인 누설 전력을 방지하도록 메모리 액세스 요청 동안 프리-차지에 대해 인에이블되지 않는다. [0011] In order to further reduce leakage power, when the SRAM data array is comprised of, for example, sub-arrays, the pre-charge circuitry includes a specific data sub-array of SRAM data arrays containing data entry addresses And may also be configured to enable its pre-charge. In this manner, the data sub-arrays of the SRAM data array that do not include the data entry address do not pre-charge un-accessed data sub-arrays, thereby preventing additional leakage power. It is not enabled.

[0012] 이것에 관하여, 일 실시예에서, SRAM이 제공된다. SRAM은 제 1 데이터 액세스 경로에 제공되는 메모리 액세스 로직 회로를 포함한다. 메모리 액세스 로직 회로는 상기 제 1 데이터 액세스 경로에서 SRAM 데이터 어레이의 데이터 엔트리를 어드레싱하기 위해 메모리 액세스 요청의 데이터 엔트리 어드레스를 수신하도록 구성된다. 메모리 액세스 로직 회로는 추가로, 수신된 데이터 엔트리 어드레스에 대응하는 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 위해 상기 SRAM 데이터 어레이를 인덱싱하도록 상기 제 1 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 데이터 인덱스를 생성하도록 구성된다. SRAM은 추가로 제 1 데이터 액세스 경로와 별개의 제 2 데이터 액세스 경로에 제공되는 프리-차지 회로를 포함한다. 상기 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에, 프리-차지 회로는 상기 제 2 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하도록 구성된다. 프리-차지 회로는 추가로 상기 SRAM 데이터 어레이 수단의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 프리-차지 인에이블(pre-charge enable)을 생성하도록 구성된다. [0012] In this regard, in one embodiment, an SRAM is provided. The SRAM includes a memory access logic circuit provided in a first data access path. The memory access logic circuit is configured to receive the data entry address of the memory access request to address the data entry of the SRAM data array in the first data access path. The memory access logic circuitry further comprises means for indexing the SRAM data array to access a data entry of the SRAM data array corresponding to the received data entry address based on the received data entry address in the first data access path Index. The SRAM further includes a pre-charge circuit provided in a second data access path separate from the first data access path. Prior to accessing the data entry of the SRAM data array, the pre-charge circuit is configured to receive the data entry address in the second data access path. Charge circuit for at least a portion of the SRAM data array based on the received data entry address in the second data access path to pre-charge at least a portion of the SRAM data array means. Charge enable. ≪ / RTI >

[0013] 다른 실시예에서, SRAM이 제공된다. SRAM은 제 1 데이터 액세스 경로 수단에 제공되는 메모리 액세스 로직 회로 수단을 포함한다. 메모리 액세스 로직 회로 수단은 상기 제 1 데이터 액세스 경로 수단에서 SRAM 데이터 어레이 수단의 데이터 엔트리 수단을 어드레싱하기 위해 메모리 액세스 요청 수단을 위한 데이터 엔트리 어드레스 수단을 수신하도록 구성된다. 메모리 액세스 로직 회로 수단은 추가로, 데이터 엔트리 어드레스 수단에 대응하는 SRAM 데이터 어레이 수단의 데이터 엔트리 수단에 액세스하기 위해 상기 SRAM 데이터 어레이 수단을 인덱싱하도록 상기 제 1 데이터 액세스 경로 수단에서 상기 수신된 데이터 엔트리 어드레스 수단에 기초하여 데이터 인덱스 수단을 생성하도록 구성된다. SRAM은 추가로 상기 제 1 데이터 액세스 경로 수단과 별개의 제 2 데이터 액세스 경로 수단에 제공되는 프리-차지 회로 수단을 포함한다. 상기 SRAM 데이터 어레이 수단의 데이터 엔트리 수단에 액세스하기 이전에, 상기 프리-차지 회로 수단은 상기 제 2 데이터 액세스 경로 수단에서 데이터 엔트리 어드레스 수단을 수신하도록 구성된다. 프리-차지 회로 수단은 추가로, 상기 SRAM 데이터 어레이 수단의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로 수단에서 상기 수신된 데이터 엔트리 어드레스 수단에 기초하여 상기 SRAM 데이터 어레이 수단의 적어도 일부에 대한 프리-차지 인에이블 수단을 생성하도록 구성된다. [0013] In another embodiment, an SRAM is provided. The SRAM includes memory access logic circuit means provided in the first data access path means. The memory access logic circuit means is configured to receive the data entry address means for the memory access request means for addressing the data entry means of the SRAM data array means in the first data access path means. The memory access logic circuit means may further comprise means for storing the received data entry address in the first data access path means to index the SRAM data array means for accessing data entry means of the SRAM data array means corresponding to the data entry address means, Means for generating data index means based on the means. The SRAM further comprises pre-charge circuit means provided in a second data access path means separate from the first data access path means. Before the data entry means of the SRAM data array means is accessed, the pre-charge circuit means is configured to receive the data entry address means in the second data access path means. The pre-charge circuit means further comprises means for pre-charging at least a portion of the SRAM data array means in at least a portion of the SRAM data array means based on the received data entry address means in the second data access path means And to generate pre-charge enable means for the pre-charge.

[0014] 다른 실시예에서, SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지(pre-charge)하는 방법이 제공된다. 이 방법은 SRAM 데이터 어레이의 데이터 엔트리를 어드레싱하기 위한 메모리 액세스 요청에 대한 제 1 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하는 단계를 포함한다. 이 방법은 추가로 상기 데이터 엔트리 어드레스에 대응하는 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 위해 상기 SRAM 데이터 어레이를 인덱싱하도록 상기 제 1 데이터 액세스 경로에서 수신된 데이터 엔트리 어드레스에 기초하여 데이터 인덱스를 생성하는 단계를 포함한다. 이 방법은 추가로 상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 제 2 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하는 단계를 포함한다. 이 방법은 추가로 상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로에서 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 프리-차지 인에이블을 생성하는 단계를 포함한다. 상기 프리-차지 인에이블은 상기 데이터 엔트리 어드레스를 나타내는 데이터 인덱스에서 상기 제 1 데이터 액세스 경로의 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 생성된다. [0014] In another embodiment, a method is provided for pre-charging an SRAM data array prior to accessing the SRAM data array. The method includes receiving a data entry address in a first data access path for a memory access request to address a data entry of the SRAM data array. The method further comprises generating a data index based on a data entry address received in the first data access path to index the SRAM data array for accessing a data entry of an SRAM data array corresponding to the data entry address . The method further comprises receiving a data entry address in a second data access path to pre-charge at least a portion of the SRAM data array. The method further includes generating a pre-charge enable for at least a portion of the SRAM data array based on a data entry address received in the second data access path to pre-charge at least a portion of the SRAM data array . The pre-charge enable is generated prior to accessing the data entry of the SRAM data array of the first data access path in the data index indicating the data entry address.

[0015] 도 1은 단일 정보 비트를 저장하기 위한 예시적인 6-T(six transistor) SRAM(static random access memory) 메모리 셀의 개략도이다.
[0016] 도 2는 메모리 액세스 요청을 위해 SRAM 데이터 어레이의 데이터 엔트리를 인덱싱하기 위한 메모리 액세스 로직 회로 및 메모리 액세스 요청을 프로세싱하는데 있어 레이턴시를 방지 또는 감소하기 위해 메모리 액세스 요청에 대해 SRAM 데이터 어레이의 데이터 엔트리를 액세스하기 이전에 SRAM 데이터 어레이의 비트라인들을 프리-차지하기 하기 위한 프리-차지 회로를 포함하는 예시적인 SRAM의 개략도이다.
[0017] 도 3은 메모리 액세스 요청에 대해 SRAM 데이터 어레이의 데이터 엔트리를 액세스하기 이전에, 도 2의 SRAM의 SRAM 데이터 어레이의 비트라인들을 프리-차지하기 위한 예시적인 프로세스를 예시하는 흐름도이다.
[0018] 도 4는 메모리 액세스 요청에 대해 SRAM 데이터 어레이의 데이터 엔트리를 액세스하기 이전에, 도 2의 SRAM의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여되는 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0019] 도 5는 메모리 액세스 요청을 프로세싱하는데 있어 레이턴시를 감소 또는 방지하도록 메모리 액세스 요청에 대해 SRAM 데이터 어레이의 데이터 엔트리를 액세스하기 이전에, SRAM 데이터 어레이의 비트라인들을 프리-차지하기 위한 프리-차지 회로 및 메모리 액세스 요청에 대한 SRAM 데이터 어레이에서 데이터 엔트리를 인덱싱하기 위한 메모리 액세스 로직 회로의 태그 어레이를 포함하는 예시적인 SRAM 캐시의 개략도이다.
[0020] 도 6은 메모리 액세스 요청에 대한 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에, 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하기 위한 예시적인 프로세스를 예시하는 흐름도이다.
[0021] 도 7은 순차적인 메모리 액세스 요청들에 대한 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여되는 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0022] 도 8은 파이프라인된 순차적 메모리 액세스 요청에 대해 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에, 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여되는 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0023] 도 9는 SRAM 캐시의 다수의 뱅크들에 대한 메모리 액세스 요청들을 포함하는 파이프라인된 순차적 메모리 액세스 요청들에 대해 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여되는 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0024] 도 10은 클록 위상 제어 방식에 기초하여 워드라인 어서션 및 프리-차지를 제어하기 위해 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여된 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0025] 도 11은 선택적인 자기-타이밍 제어 방식에 기초하여 워드라인 어서션 및 프리-차지를 제어하기 위해 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여되는 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0026] 도 12는 다수의 클록 사이클들을 걸쳐서 선택적인 자기-타이밍의 자기-리셋 제어 방식에 기초하여 워드라인 어서션 및 프리-차지를 제어하기 위해 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 도 5의 SRAM 캐시의 SRAM 데이터 어레이의 비트라인들을 프리-차지하는데 관여되는 신호들의 예시적인 타이밍을 예시하는 타이밍도이다.
[0027] 도 13은 도 2의 SRAM 및 도 5의 SRAM 캐시의 일반화된 메모리 액세스 로직 회로 및 프리-차지 회로를 포함하는 예시적인 프로세서-기반 시스템의 블록도이다.
[0015] FIG. 1 is a schematic diagram of an exemplary six-transistor static random access memory (SRAM) memory cell for storing a single information bit.
[0016] FIG. 2 is a block diagram of a memory access logic circuit for indexing data entries in an SRAM data array for a memory access request and data in the SRAM data array for memory access requests to prevent or reduce latency in processing memory access requests Charge circuit for precharging the bit lines of the SRAM data array prior to accessing the entry.
[0017] FIG. 3 is a flow diagram illustrating an exemplary process for pre-charging bit lines of an SRAM data array of the SRAM of FIG. 2 prior to accessing data entries of the SRAM data array for a memory access request.
[0018] FIG. 4 is a timing diagram illustrating exemplary timings of signals involved in pre-charging bit lines of the SRAM data array of the SRAM of FIG. 2 prior to accessing the data entries of the SRAM data array for a memory access request .
[0019] FIG. 5 is a block diagram of a pre-charge circuit for precharging bit lines of an SRAM data array prior to accessing a data entry of the SRAM data array for a memory access request to reduce or prevent latency in processing a memory access request; Charge circuit and a memory array of a memory access logic circuit for indexing data entries in an SRAM data array for memory access requests.
[0020] FIG. 6 is a flow chart illustrating an exemplary process for pre-charging bit lines of the SRAM data array of the SRAM cache of FIG. 5, prior to accessing the data entry of the SRAM data array for a memory access request.
[0021] FIG. 7 illustrates an exemplary timing of the signals involved in pre-charging the bit lines of the SRAM data array of the SRAM cache of FIG. 5 before accessing the data entries of the SRAM data array for sequential memory access requests Fig.
[0022] FIG. 8 illustrates an example of the signals involved in pre-charging the bit lines of the SRAM data array of the SRAM cache of FIG. 5 before accessing the data entries of the SRAM data array for pipelined sequential memory access requests Fig.
[0023] FIG. 9 is a flow diagram illustrating the operation of SRAM data in the SRAM cache of FIG. 5 before accessing the data entries of the SRAM data array for pipelined sequential memory access requests including memory access requests for multiple banks of the SRAM cache. Lt; / RTI > is a timing diagram illustrating exemplary timing of signals involved in pre-charging the bit lines of the array.
[0024] FIG. 10 shows the bit lines of the SRAM data array of the SRAM cache of FIG. 5 prior to accessing the data entries of the SRAM data array to control word line assertion and pre- / RTI > is a timing diagram illustrating exemplary timing of signals involved in charging.
[0025] FIG. 11 is a schematic diagram of a bit line of the SRAM data array of the SRAM cache of FIG. 5, prior to accessing data entries of the SRAM data array to control word line assertion and pre-charge based on a selective self- Lt; / RTI > is an example timing diagram illustrating exemplary timing of the signals involved in pre-charging.
[0026] FIG. 12 illustrates a block diagram of an embodiment of the present invention, prior to accessing the data entries of the SRAM data array to control word line assertion and pre-charge based on a self- Lt; / RTI > is an example timing diagram illustrating exemplary timing of signals involved in precharging bit lines of an SRAM data array of an SRAM cache of FIG.
[0027] FIG. 13 is a block diagram of an example processor-based system including the SRAM of FIG. 2 and the generalized memory access logic circuit and pre-charge circuit of the SRAM cache of FIG.

[0028] 본 명세서에서 개시된 실시예들은 누설 전력을 감소시키기 위해 데이터 액세스 이전에 SRAM(static random access memory)의 비트라인들을 프리-차지하기 위한 방법들 및 장치들에 관한 것이다. 데이터 액세스 이전에 SRAM을 프리-차지하기 위한 실시예들은 판독 또는 기록 성능에 영향을 주지 않고 누설 전력을 감소시킬 수 있다. SRAM은 하나의 비-제한적인 예로서 SRAM 캐시에 포함될 수 있다. 이것에 관하여, 메모리 액세스 로직 회로가 SRAM의 제 1 데이터 액세스 경로에 제공된다. 메모리 액세스 로직 회로는 SRAM의 SRAM 데이터 어레이에서 액세스될 데이터 엔트리 어드레스를 포함하는 메모리 액세스 요청을 수신한다. 메모리 액세스 로직 회로는 데이터 엔트리 어드레스를, SRAM 데이터 어레이에서 데이터 엔트리 어드레스를 인덱싱하기 위한 인덱스로 변환한다. SRAM은 또한 제 1 데이터 액세스 경로 외부의 제 2 데이터 액세스 경로에 제공되는 프리-차지 회로를 포함한다. 프리-차지 회로는 누설 전력을 감소시키도록 유휴 기간들 동안 SRAM 데이터 어레이의 비트라인들을 프리-차지하는 것을 방지하기 위해 메모리 액세스 요청의 부분으로서 SRAM 데이터 어레이의 프리-차지를 인에이블하도록 구성된다. 그러나 제 1 데이터 액세스 경로 외부의 제 2 데이터 액세스 경로에 프리-차지 회로를 또한 제공함으로써, 프리-차지 회로는 데이터 액세스 이전에 SRAM 데이터 어레이의 프리-차지를 인에이블할 수 있어서, 프리-차지 회로는 제 1 데이터 액세스 경로에 레이턴시를 부가하지 않게 된다. [0028] The embodiments disclosed herein relate to methods and apparatus for pre-charging bit lines of a static random access memory (SRAM) prior to data access to reduce leakage power. Embodiments for pre-charging the SRAM prior to data access may reduce leakage power without affecting read or write performance. SRAM may be included in the SRAM cache as one non-limiting example. In this regard, a memory access logic circuit is provided in the first data access path of the SRAM. The memory access logic circuit receives a memory access request including a data entry address to be accessed in the SRAM data array of the SRAM. The memory access logic circuit converts the data entry address into an index for indexing the data entry address in the SRAM data array. The SRAM also includes a pre-charge circuit provided on a second data access path outside the first data access path. The pre-charge circuit is configured to enable pre-charging of the SRAM data array as part of a memory access request to prevent pre-charging bit lines of the SRAM data array during idle periods to reduce leakage power. However, by also providing pre-charge circuitry in the second data access path outside the first data access path, the pre-charge circuitry can enable pre-charge of the SRAM data array prior to data access, Does not add a latency to the first data access path.

[0029] 누설 전력을 추가로 감소시키기 위해, SRAM 데이터 어레이가 예를 들어, 서브-어레이들로 구성되는 경우, 프리-차지 회로는 또한 데이터 엔트리 어드레스를 포함하는 SRAM 데이터 어레이의 특정한 데이터 서브-어레이를 식별하고 그의 프리-차지를 인에이블하도록 구성될 수 있다. 이러한 방식으로, 데이터 엔트리 어드레스를 포함하지 않은 SRAM 데이터 어레이의 데이터 서브-어레이들은, 액세스되지 않는 데이터 서브-어레이들을 프리-차지하지 않음으로써 부가적인 누설 전력을 방지하도록 메모리 액세스 요청 동안 프리-차지에 대해 인에이블되지 않는다. [0029] In order to further reduce leakage power, when the SRAM data array is comprised of, for example, sub-arrays, the pre-charge circuit also includes a data sub-array of SRAM data arrays And to enable its pre-charge. In this manner, the data sub-arrays of the SRAM data array that do not include the data entry address are pre-charged during the memory access request to prevent additional leakage power by not pre- Lt; / RTI >

[0030] 이것에 관하여, 도 2는 메모리 액세스 요청(48)에 대해 SRAM 데이터 어레이(46)의 데이터 엔트리(44)를 인덱싱하기 위한 예시적인 SRAM(42)의 개략도이다. 아래에서 논의되는 바와 같이, SRAM 데이터 어레이(46)는 메모리 액세스 요청(48)에 대해 SRAM 데이터 어레이(46)의 데이터 엔트리(44)로의 액세스 이전에 프리-차지된다. SRAM 데이터 어레이(46)는 이 예에서, 도 1에서 제공된 6-T SRAM 비트셀(10)의 행들 및 열들로 구성된다. 도 1의 SRAM 비트셀(10)은 도 2에서 설명하는데 참조되며 다시 설명되지 않을 것이다. SRAM 데이터 어레이(46)는 추가로 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N))로 구성될 수 있다. 2 is a schematic diagram of an exemplary SRAM 42 for indexing the data entry 44 of the SRAM data array 46 for a memory access request 48. [ The SRAM data array 46 is pre-charged prior to accessing the data entry 44 of the SRAM data array 46 for the memory access request 48, as discussed below. The SRAM data array 46 in this example is comprised of rows and columns of the 6-T SRAM bit cell 10 provided in FIG. The SRAM bit cell 10 of FIG. 1 will be referenced in FIG. 2 and will not be described again. The SRAM data array 46 may further comprise a plurality of SRAM data sub-arrays 50 (0) -50 (N).

[0031] 도 2를 계속 참조하면, SRAM(42)은 비-제한적인 예로서, 두 개(2)의 데이터 액세스 경로들(제 1 데이터 액세스 경로(52) 및 제 2 데이터 액세스 경로(54))를 포함한다. 제 1 데이터 액세스 경로(52)는 메모리 액세스 요청(48)에 대응하는 데이터 엔트리(44)에 액세스하기 위해 SRAM 데이터 어레이(46)에 대한 인덱스를 생성하도록 메모리 액세스 요청(48)을 프로세싱한다. 이 비-제한적인 예에서, 제 2 데이터 액세스 경로(54)는, 액세스될 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 특정한 하나만을 식별하도록 메모리 액세스 요청(48)을 프로세싱하여서, 액세스될 특정한 SRAM 데이터 서브-어레이(50(0)-50(N))만이 프리-차지하게 요구하여 누설 전력을 감소시키게 된다. 이 예에서, 특정한 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지는, 프리-차지의 레이턴시가 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기 위한 제 1 데이터 액세스 경로(52)의 부분으로서 제공되지 않도록, 제 1 데이터 액세스 경로(52)의 데이터 엔트리(44)에 액세스하기 이전에 제 1 데이터 액세스 경로(52) 외부의 제 2 데이터 액세스 경로(54)에서 발생한다. 부가적으로, SRAM(42)은 액세스되는 SRAM 데이터 어레이(46) 특정한 데이터 엔트리(44)를 프리-차지할 수 있어서, 액세스되지 않은 SRAM 데이터 서브-어레이들(50(0)-50(N)) 또는 데이터 엔트리들(44)을 프리-차지하지 않음으로써 SRAM(42)에서 누설 전력을 또한 감소시킨다. 도 2의 SRAM(42)의 제 1 데이터 액세스 경로(52)가 이제 설명될 것이다. 2, the SRAM 42 includes two (2) data access paths (a first data access path 52 and a second data access path 54) as a non-limiting example, ). The first data access path 52 processes the memory access request 48 to generate an index for the SRAM data array 46 to access the data entry 44 corresponding to the memory access request 48. In this non-limiting example, the second data access path 54 includes a memory access request 48 (N) to identify only a particular one of the plurality of SRAM data sub-arrays 50 (0) -50 To request only the specific SRAM data sub-arrays 50 (0) -50 (N) to be accessed to pre-charge, thereby reducing the leakage power. In this example, the pre-charge of the particular SRAM data sub-arrays 50 (0) -50 (N) A second data access path 54 outside the first data access path 52 prior to accessing the data entry 44 of the first data access path 52 is provided as part of the data access path 52, ). In addition, SRAM 42 may pre-charge specific data entries 44 of SRAM data array 46 to be accessed so that non-accessed SRAM data sub-arrays 50 (0) -50 (N) Or the data entries 44, thereby reducing the leakage power in the SRAM 42 as well. The first data access path 52 of the SRAM 42 of FIG. 2 will now be described.

[0032] 도 2를 참조하면, 메모리 액세스 로직 회로(56)가 제 1 데이터 액세스 경로(52)에 제공되고, 수신된 메모리 액세스 요청(48)을 프로세싱하도록 구성된다. 메모리 액세스 요청(48)의 프로세싱은 메모리 액세스 요청(48)을 수신하고, SRAM 데이터 어레이(46)의 데이터 엔트리(44)를 인덱싱하기 위한 데이터 인덱스(60)로 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)를 변환하는 것을 포함할 수 있다. 데이터 인덱스(60)는 SRAM 데이터 어레이(46)의 데이터 엔트리(44) 위치에 대응하는 인덱스로 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)를 변환함으로써 생성된다. 이 예에서, 데이터 인덱스(60)는, 데이터 엔트리 어드레스(58)의 데이터를 포함하는 SRAM 데이터 어레이(46)의 SRAM 데이터 서브-어레이(50(0)-50(N))의 데이터 엔트리(44)를 인덱싱하기 위한 인덱스를 제공한다. 데이터 엔트리(44)에 액세스하는 것은 메모리 액세스 요청(48)에 기초하여 SRAM 데이터 어레이(46)에서 액세스 이벤트를 개시하도록 SRAM 데이터 어레이(46)에 대한 어레이 인에이블(62)을 어서트(assert)하는 것을 포함한다. SRAM 데이터 어레이(46)는 부가적으로 입력으로서 어레이 인에이블(62)을 수신한다. 어레이 인에이블(62)은 데이터 인덱스(60) 상에 대응하는 데이터 인덱스(60) 출력이 있다는 것을 표시한다. 추가로, 어레이 인에이블(62)의 어서션은 제 1 데이터 액세스 경로(52)에서 데이터 엔트리(44)의 액세스를 개시한다. 어서트된 어레이 인에이블(62)에 기초하여, SRAM 데이터 어레이(46)는 SRAM 데이터 어레이(46)로부터의 데이터 출력(data out)(64)으로서 어드레싱된 데이터 엔트리(44)를 출력한다. 프리-차지는 메모리 액세스 요청(48)에 기초하여 제 2 데이터 액세스 경로(54)에서 SRAM 데이터 서브-어레이들(50(0)-50(N))을 식별함으로써 제공된다. 부가적으로, 프리-차지는 아래에서 논의되는 바와 같이, 제 1 데이터 액세스 경로(52)에서 제공되지 않는다. [0032] Referring to FIG. 2, a memory access logic circuit 56 is provided on a first data access path 52 and is configured to process the received memory access request 48. The processing of the memory access request 48 includes receiving the memory access request 48 and writing the data entry 48 of the memory access request 48 into the data index 60 for indexing the data entry 44 of the SRAM data array 46. [ Address < RTI ID = 0.0 > 58 < / RTI > The data index 60 is generated by translating the data entry address 58 of the memory access request 48 into an index corresponding to the location of the data entry 44 of the SRAM data array 46. In this example, data index 60 includes data entries 44 (N) of SRAM data sub-arrays 50 (0) -50 (N) of SRAM data array 46 containing data of data entry address 58 Quot;) < / RTI > Accessing the data entry 44 asserts the array enable 62 for the SRAM data array 46 to initiate an access event in the SRAM data array 46 based on the memory access request 48. [ . The SRAM data array 46 additionally receives the array enable 62 as an input. The array enable 62 indicates that there is a corresponding data index 60 output on the data index 60. In addition, the assertion of the array enable 62 initiates the access of the data entry 44 in the first data access path 52. Based on the asserted array enable 62, the SRAM data array 46 outputs the addressed data entry 44 as a data out 64 from the SRAM data array 46. Pre-charging is provided by identifying the SRAM data sub-arrays 50 (0) -50 (N) in the second data access path 54 based on the memory access request 48. Additionally, the pre-charge is not provided in the first data access path 52, as discussed below.

[0033] 도 2를 계속 참조하여 그리고 위에서 소개된 바와 같이, SRAM(42)의 제 2 데이터 액세스 경로(54)는 제 1 데이터 액세스 경로(52)에서 데이터 엔트리(44)에 액세스하기 이전에 제 1 데이터 액세스 경로(52) 외부에서 프리-차지할 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 특정한 하나 이상을 식별하기 위한 컴포넌트들을 포함한다. 프리-차지는 제 1 데이터 액세스 경로(52) 외부의 제 2 데이터 액세스 경로(54)에 제공되고, 그에 따라 프리-차지로 인한 레이턴시는 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기 위해 이용되는 제 1 데이터 액세스 경로(52)의 부분으로서 제공되지 않는다. 제 2 데이터 액세스 경로(54)가 이제 설명될 것이다. 2, the second data access path 54 of the SRAM 42 includes a first data access path 52 and a second data access path 54 before accessing the data entry 44 in the first data access path 52. [0033] Arrays 50 (0) -50 (N) to be pre-charged outside the data access path 52. The SRAM data sub-arrays 50 (0) - 50 The pre-charge is provided to a second data access path 54 outside the first data access path 52 and thus the latency due to pre-charge is determined by accessing the data entry 44 of the SRAM data array 46 Is not provided as part of the first data access path 52 that is used for the < / RTI > The second data access path 54 will now be described.

[0034] 도 2를 참조하면, 제 2 데이터 액세스 경로(54)는 프리-차지 회로(66)를 포함한다. 프리-차지 회로(66)는 제 2 데이터 액세스 경로(54)에서 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 하나 이상 상에서 SRAM 데이터 어레이(46)의 프리-차지를 인에이블하도록 구성된다. 프리-차지 회로(66)는 또한 제 2 데이터 액세스 경로(54)의 메모리 액세스 요청(48)을 수신하도록 구성된다. 프리-차지 회로(66)는 추가로 메모리 액세스 요청(48)에 대응하는, 액세스되는 SRAM 데이터 서브-어레이들(50(0)-50(N))을 인덱싱하기 위한 프리-차지 인덱스(68)를 생성하도록 구성된다. 프리-차지 회로(66)는 SRAM 데이터 서브-어레이들(50(0)-50(N))에 대응하는 프리-차지 인덱스(68)로 수신된 메모리 액세스 요청(48)을 변환함으로써 프리-차지 인덱스(68)를 생성한다. 프리-차지 인덱스(68)는 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 어느 것이 프리-차지하도록 요구되는지를 표시한다. 프리-차지 회로(66)는 추가로, 이 예에서 SRAM 데이터 어레이(46)에 의해 SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지를 인에이블하는 프리-차지 인에이블(70)을 생성하도록 구성된다. [0034] Referring to FIG. 2, the second data access path 54 includes a pre-charge circuit 66. The pre-charge circuit 66 is configured to pre-charge the SRAM data array 46 on one or more of the plurality of SRAM data sub-arrays 50 (0) -50 (N) in the second data access path 54. [ Respectively. The pre-charge circuit 66 is also configured to receive a memory access request 48 of the second data access path 54. The pre-charge circuit 66 further includes a pre-charge index 68 for indexing the accessed SRAM data sub-arrays 50 (0) -50 (N), corresponding to the memory access request 48. [ . The pre-charge circuit 66 converts the received memory access request 48 into a pre-charge index 68 corresponding to the SRAM data sub-arrays 50 (0) -50 (N) Thereby generating an index 68. Fig. The pre-charge index 68 indicates which of the SRAM data sub-arrays 50 (0) -50 (N) is required to pre-charge. The pre-charge circuit 66 further includes a pre-charge circuit 66 that enables pre-charge of the SRAM data sub-arrays 50 (0) -50 (N) by the SRAM data array 46 in this example. (70).

[0035] 도 2를 계속 참조하면, 프리-차지 인에이블(70)은 프리-차지 인덱스(68)가 SRAM 데이터 어레이(46)에 제공되었음을 SRAM 데이터 어레이(46)에 표시한다. 생성된 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)은 제 1 데이터 액세스 경로(52)에서 데이터 엔트리(44)에 액세스하기 이전에 제 2 데이터 액세스 경로(54)에서 SRAM 데이터 어레이(46)에 의해 수신된다. SRAM 데이터 어레이(46)는, 메모리 액세스 요청(48)의 프로세싱이 제 1 데이터 액세스 경로(52)에서 완료되기를 기다리지 않고 프리-차지 인에이블(70)의 수신에 이어 프리-차지 인덱스(68)에 의해 표시된 SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지를 진행할 수 있다. 비-제한적인 예로서, SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지를 인에이블하는 것은 액세스되는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이들(50(0)-50(N))의 도 1에서 도시된 비트라인(26) 및 비트라인 보완(28)만을 프리-차지하는 것을 포함한다. 이는, 메모리 액세스 요청(48)이 제 2 데이터 액세스 경로(54)에서 제공되고 프리-차지 회로(66)는 프리-차지를 인에이블하기 위해 특정한 SRAM 데이터 서브-어레이(50(0)-50(N))를 식별하는데 이용될 수 있기 때문에 가능하다. 액세스되지 않는 SRAM 데이터 서브-어레이들(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)은 플로팅 상태로 배치될 수 있거나 플로팅 상태로 유지될 수 있다. 플로팅 상태는, 액세스되지 않은 SRAM 데이터 서브-어레이들(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)이 로직 하이 또는 로직 로우 중 어느 한 상태로 유지 또는 프리-차지되지 않는 상태이다. 2, the pre-charge enable 70 indicates to the SRAM data array 46 that the pre-charge index 68 has been provided to the SRAM data array 46. [0035] FIG. The generated pre-charge index 68 and pre-charge enable 70 are stored in the SRAM data array 54 in the second data access path 54 prior to accessing the data entry 44 in the first data access path 52. [ (46). The SRAM data array 46 is coupled to the pre-charge index 68 following the receipt of the pre-charge enable 70 without waiting for the processing of the memory access request 48 to complete in the first data access path 52 Charge of the SRAM data sub-arrays 50 (0) -50 (N) indicated by the data. As a non-limiting example, enabling pre-charging of SRAM data sub-arrays 50 (0) -50 (N) may be accomplished using SRAM data sub-arrays Only the bit line 26 and the bit line complement 28 shown in Figure 1 of Figure 5 (50 (0) -50 (N)). This is because the memory access request 48 is provided in the second data access path 54 and the pre-charge circuit 66 is enabled to write the specific SRAM data sub-arrays 50 (0) -50 N), as shown in FIG. Bit lines 26 and bit line complement 28 of SRAM data sub-arrays 50 (0) -50 (N) that are not accessed may be placed in a floating state or may remain in a floating state . The floating state indicates that the bit lines 26 and bit line complement 28 of the SRAM data sub-arrays 50 (0) -50 (N) that have not been accessed are in either a logic high or a logic low state Maintained or pre-charged.

[0036] 도 2를 계속 참조하면, 액세스되지 않은 SRAM 데이터 서브-어레이들(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)이 로직 하이 또는 로직 로우 어느 한 상태로 프리-차지되는 메모리 유휴 기간들 동안 누설 전력이 발생할 수 있다. 프리-차지 회로(66)는 누설 전력을 감소시키기 위해 유휴 기간들 동안 SRAM 데이터 어레이(46)의 비트라인들(26, 28)의 프리-차지를 방지하기 위해 메모리 액세스 요청(48)의 부분으로서 SRAM 데이터 어레이(42)의 프리-차지를 인에이블하도록 구성된다. 그러나 제 1 데이터 액세스 경로(52) 외부의 제 2 데이터 액세스 경로(54)에 프리-차지 회로(66)를 또한 제공함으로써, 프리-차지 회로(66)는 프리-차지 회로(66)가 제 1 데이터 액세스 경로(52)에 레이턴시를 부가하지 않도록 데이터 액세스 이전에 SRAM 데이터 어레이(42)의 프리-차지를 인에이블할 수 있다. 2, bit lines 26 and bit line complement 28 of un-accessed SRAM data sub-arrays 50 (0) -50 (N) are logic high or logic Leakage may occur during memory idle periods pre-charged to a low state. The pre-charge circuit 66 is part of the memory access request 48 to prevent pre-charging of the bit lines 26, 28 of the SRAM data array 46 during idle periods to reduce leakage power And to enable pre-charging of the SRAM data array 42. However, by also providing the pre-charge circuit 66 to the second data access path 54 outside of the first data access path 52, the pre-charge circuit 66 can be configured such that the pre- May pre-charge the SRAM data array 42 prior to data access so as not to add latency to the data access path 52.

[0037] 데이터 엔트리(44)의 액세스 이전에 SRAM 데이터 어레이(46)의 비트라인들(26, 28)을 프리-차지하는 것 및 메모리 액세스 요청(48)을 추가로 설명하기 위해, 도 3이 제공된다. 도 3은 도 2의 SRAM(42)의 메모리 액세스 요청(48)의 프로세싱을 위한 예시적인 프로세스를 예시하는 흐름도이다. 위에서 논의된 바와 같이, 메모리 액세스 요청(48)의 프로세싱은, 두 개(2)의 데이터 액세스 경로들(제 1 데이터 액세스 경로(52) 및 제 2 데이터 액세스 경로(54))을 포함한다. 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)에서 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하도록 하는 메모리 액세스 요청(48)의 프로세싱은 SRAM 데이터 어레이(46)의 데이터 엔트리(44)를 어드레싱하기 위해 제 1 데이터 액세스 경로(52)에서 메모리 액세스 요청(48)을 수신하는 것을 포함한다(블록 72). 도 2의 메모리 액세스 로직 회로(56)는 제 1 데이터 액세스 경로(52)에서 수신된 메모리 액세스 요청(48)에 기초하여 데이터 인덱스(60) 및 어레이 인에이블(62)을 생성한다(블록 74). 메모리 액세스 로직 회로(56)는 데이터 엔트리 어드레스(58)를 포함하는 메모리 액세스 요청(48)을 변환함으로써 데이터 인덱스(60) 및 어레이 인에이블(62)을 생성한다. 메모리 액세스 로직 회로(56)에 의해 생성된 데이터 인덱스(60) 및 어레이 인에이블(62)은 SRAM 데이터 어레이(46)에 출력된다. SRAM 데이터 어레이(46)는 제 1 데이터 액세스 경로(52)에서 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기 위해 수신된 데이터 인덱스(60) 및 어레이 인에이블(62)을 이용한다(블록 76).[0037] To further pre-charge the bit lines 26, 28 of the SRAM data array 46 and to access the memory access request 48 prior to accessing the data entry 44, do. FIG. 3 is a flow chart illustrating an exemplary process for processing a memory access request 48 of SRAM 42 of FIG. As discussed above, the processing of the memory access request 48 includes two (2) data access paths (a first data access path 52 and a second data access path 54). The processing of the memory access request 48 to access the data entry 44 of the SRAM data array 46 at the data entry address 58 of the memory access request 48 is performed by the data entry 44 of the SRAM data array 46 (Block 72) in a first data access path 52 for addressing the memory access request 48. The memory access request 48 is then sent to the first data access path 52 (block 72). The memory access logic circuit 56 of Figure 2 generates a data index 60 and an array enable 62 based on the memory access request 48 received at the first data access path 52 (block 74) . The memory access logic circuit 56 generates the data index 60 and the array enable 62 by converting the memory access request 48 that includes the data entry address 58. [ The data index 60 and the array enable 62 generated by the memory access logic circuit 56 are output to the SRAM data array 46. [ The SRAM data array 46 includes a received data index 60 and a plurality of arrays 46 for accessing the data entry 44 of the SRAM data array 46 corresponding to the memory access request 48 in the first data access path 52. [ An enable 62 is used (block 76).

[0038] 도 3을 계속 참조하면, 도 2의 메모리 액세스 요청(48)의 프로세싱은 추가로 SRAM 데이터 서브-어레이들(50(0)-50(N))의 비트라인들(26, 28)을 프리-차지하기 위해 제 2 데이터 액세스 경로(54)에서 메모리 액세스 요청(48)을 수신하는 것을 포함한다(도 3의 블록 78). 프리-차지 회로(66)는 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 서브-어레이(50(0)-50(N))에 대해 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)을 생성한다(도 3의 블록 80). 생성된 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)은 프리-차지 회로(66)에 의해 출력되고 SRAM 데이터 어레이(46)에 의해 수신된다. SRAM 데이터 어레이(46)는 메모리 액세스 요청(48)이 나타내는 SRAM 데이터 서브-어레이(50(0)-50(N))를 프리-차지하기 위해 수신된 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)을 이용한다(도 3의 블록 82). 따라서, 도 2의 SRAM 데이터 어레이(46)는 메모리 액세스 로직 회로(56)가 메모리 액세스 요청(48)의 변환 및 제 1 데이터 액세스 경로(52)에서 데이터 엔트리(44)의 액세스를 완료하기를 기다리지 않고 SRAM 데이터 서브-어레이(50(0)-50(N))를 프리-차지할 수 있다. 이러한 방식으로, 메모리 액세스 요청(48)에 대응하는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))는 SRAM 데이터 어레이(46)가 메모리 액세스 요청(48)에 대응하는 데이터 엔트리(44)에 액세스하기 이전에 프리-차지된다. 3, the processing of the memory access request 48 of FIG. 2 further includes processing the bit lines 26, 28 of the SRAM data sub-arrays 50 (0) -50 (N) (48) in a second data access path (54) to pre-charge (block 78 of FIG. 3). The pre-charge circuit 66 includes a pre-charge index 68 and pre-charge enable 70 for the SRAM data sub-arrays 50 (0) -50 (N) corresponding to the memory access request 48 (Block 80 of FIG. 3). The generated pre-charge index 68 and pre-charge enable 70 are output by the pre-charge circuit 66 and received by the SRAM data array 46. The SRAM data array 46 includes a received pre-charge index 68 and a pre-charge index to pre-charge the SRAM data sub-arrays 50 (0) -50 (N) An enable 70 is used (block 82 of FIG. 3). The SRAM data array 46 of Figure 2 thus waits for the memory access logic circuit 56 to complete the translation of the memory access request 48 and the access of the data entry 44 in the first data access path 52 Can pre-charge the SRAM data sub-arrays 50 (0) -50 (N). In this manner, the SRAM data sub-arrays 50 (0) -50 (N) comprising the data entry 44 corresponding to the memory access request 48 enable the SRAM data array 46 to access memory access requests 48 Pre-charged before accessing the data entry 44 corresponding to the data entry 44. [

[0039] 도 2를 참조하면, SRAM 데이터 어레이(46)를 프리-차지하는 것은 제 1 데이터 액세스 경로(52) 외부의 제 2 데이터 액세스 경로(54)에서 인에이블된다. 이러한 방식으로, 액세스될 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 비트라인들(26, 28)을 프리-차지하는 것은 제 1 데이터 액세스 경로(52)에서 인에이블되는 데이터 엔트리(44) 액세스에 의존하지 않는다. 프리-차지 회로(66)는, 액세스될 SRAM 데이터 서브-어레이(50(0)-50(N))를 식별하기에 충분한 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)의 적어도 일부가 이용 가능한 경우, 데이터 엔트리(44)의 액세스 이전에 액세스될 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지를 인에이블할 수 있다. 이것에 관하여, 프리-차지 회로(66)는 액세스될 SRAM 데이터 서브-어레이(50(0)-50(N))를 식별하기에 충분한, 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)의 적어도 일부를 수신하도록 제 2 데이터 액세스 경로(54)에서 구성된다. 프리-차지 회로(66)는 액세스될 데이터 엔트리(44)를 포함하는 SRAM 데이터 어레이(46)의 SRAM 데이터 서브-어레이(50(0)-50(N))를 식별하도록 수신된 데이터 엔트리 어드레스(58) 또는 그의 일부를 디코딩할 수 있다. 따라서, 프리-차지 회로(66)는, SRAM 데이터 서브-어레이(50(0)-50(N))의 데이터 엔트리(44)의 액세스 이전에 그리고 제 1 데이터 액세스 경로(52)에 독립적으로 데이터 엔트리(44)를 포함하는 것으로 결정된 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지를 인에이블할 수 있다. Referring to FIG. 2, pre-charging the SRAM data array 46 is enabled in the second data access path 54 outside the first data access path 52. Pre-occupying the bit lines 26, 28 of the SRAM data sub-arrays 50 (0) -50 (N) including the data entry 44 to be accessed in this manner is accomplished by a first data access path 52 do not rely on data entry 44 access enabled. The pre-charge circuitry 66 is configured to use at least a portion of the data entry address 58 of the memory access request 48 sufficient to identify the SRAM data sub-arrays 50 (0) -50 (N) It is possible to enable pre-charging of SRAM data sub-arrays 50 (0) -50 (N) including data entries 44 to be accessed prior to accessing data entry 44, if possible. In this regard, the pre-charge circuit 66 is coupled to the data entry address 58 of the memory access request 48 sufficient to identify the SRAM data sub-arrays 50 (0) -50 (N) And is configured in the second data access path 54 to receive at least a portion thereof. The pre-charge circuit 66 is operable to receive the received data entry address (s) to identify the SRAM data sub-arrays 50 (0) -50 (N) of the SRAM data array 46 containing the data entry 44 to be accessed 58) or a portion thereof. Thus, the pre-charge circuit 66 pre-charges the data prior to accessing the data entry 44 of the SRAM data sub-arrays 50 (0) -50 (N) and independently of the first data access path 52 May enable pre-charging of the SRAM data sub-arrays 50 (0) -50 (N) determined to include the entry 44.

[0040] 메모리 유휴 시간들 동안 누설 전력을 감소 또는 방지하기 위해, 도 1의 모든 비트라인들(26) 및 비트라인 보완들(28)이 프리-차지되진 않을 것이다. 따라서, 비-제한적인 예로서, SRAM 데이터 서브-어레이들(50(0)-50(N))의 모든 비트라인들(26)에 대조적으로, 액세스되는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 비트라인(26) 및 비트라인 보완들(28)만이 프리-차지될 수 있다. 메모리 액세스 요청(48)의 부분으로서 액세스되지 않는 SRAM 데이터 서브-어레이들(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)은 누설 전력을 추가로 방지하기 위해 플로팅 상태로 남겨질 수 있다. 이러한 방식으로, 프리-차지 회로(66)의 레이턴시는, SRAM 데이터 서브-어레이(50)의 데이터 엔트리(44)에 액세스하기 위한 제 1 데이터 액세스 경로(52)의 부분으로서 제공되지 않는다. 부가적으로, SRAM(42)은 SRAM(42)에서 누설 전력을 또한 감소시키면서, 액세스되는 SRAM 데이터 서브-어레이(50)의 데이터 엔트리(44)를 프리-차지할 수 있다. To reduce or prevent leakage power during memory idle times, all bit lines 26 and bit line complement 28 of FIG. 1 will not be pre-charged. Thus, as a non-limiting example, in contrast to all bit lines 26 of SRAM data sub-arrays 50 (0) -50 (N), SRAM data Only bit line 26 and bit line complement 28 of sub-arrays 50 (0) -50 (N) may be pre-charged. Bit lines 26 and bit line complement 28 of SRAM data sub-arrays 50 (0) -50 (N) that are not accessed as part of the memory access request 48 additionally provide leakage power It can be left floating in order to prevent it. In this manner, the latency of the pre-charge circuit 66 is not provided as part of the first data access path 52 for accessing the data entry 44 of the SRAM data sub-array 50. Additionally, the SRAM 42 may pre-charge the data entry 44 of the accessed SRAM data sub-array 50, while also reducing the leakage power in the SRAM 42.

[0041] 이것에 관하여, 도 4는 두 개(2)의 이벤트들(프리-차지 이벤트(86) 및 액세스 이벤트(88))과 관련된 예시적인 신호들의 타이밍도(84)를 예시한다. 도 4는 제 2 데이터 액세스 경로(54)에서의 SRAM 데이터 어레이(46)의 비트라인들(26, 28)을 프리-차지하기 위한 프리-차지 이벤트(86)가 제 1 데이터 액세스 경로(52)에서의 SRAM 데이터 어레이(46)에 액세스하기 위한 액세스 이벤트(88)에 독립적이라는 것을 예시한다. SRAM 데이터 서브-어레이(50(0)-50(N))를 프리-차지하기 위한 프리-차지 이벤트(86)는, 프리-차지 회로(66)가 제 2 데이터 액세스 경로(54)의 메모리 액세스 요청(48)을 프로세싱하는 결과로서 발생한다. 데이터 엔트리(44)에 액세스하기 위한 액세스 이벤트(88)는, 메모리 액세스 로직 회로(56)가 제 1 데이터 액세스 경로(52)의 메모리 액세스 요청(48)을 프로세싱한 결과로서 발생한다. 두 개(2)의 이벤트들의 예시적인 신호들이 이제 설명될 것이다. [0041] In this regard, FIG. 4 illustrates a timing diagram 84 of exemplary signals associated with two (2) events (pre-charge event 86 and access event 88). Figure 4 shows a pre-charge event 86 for pre-charging the bit lines 26, 28 of the SRAM data array 46 in the second data access path 54 to the first data access path 52, Lt; RTI ID = 0.0 > 88 < / RTI > The pre-charge event 86 for pre-charging the SRAM data sub-arrays 50 (0) -50 (N) causes the pre-charge circuit 66 to precharge the memory accesses As a result of processing the request 48. The access event 88 for accessing the data entry 44 occurs as a result of the memory access logic circuit 56 processing the memory access request 48 of the first data access path 52. Exemplary signals of the events of two (2) will now be described.

[0042] 도 4를 계속 참조하면, SRAM(42)은 동기식 회로이고; 이에 따라 클록 신호(90)는 메모리 액세스 요청(48)을 제어하는 회로들의 클로킹을 제어하기 위해 SRAM(42)에 제공된다. 앞서 논의된 바와 같이, 프리-차지 회로(66)는 도 4에서 도시된 바와 같은 프리-차지 인에이블(70)을 생성한다. 프리-차지 인덱스(68)가 프리-차지 회로(66)에 의해 SRAM 데이터 어레이(46)에 제공되었음을 나타내는 프리-차지 인에이블(70)은 도 2의 프리-차지 회로(66)에 의해 프리-차지 인덱스(68)의 생성에 이어 프리-차지 회로(66)에 의해 어서트된다. SRAM 데이터 어레이(46)에 의한 비트라인 프리-차지 신호(38)의 어서션은 프리-차지 회로(66)에 의한 프리-차지 인에이블(70)의 어서션에 이어 클록 신호(90)의 상승 에지 또는 천이(이하 "상승 에지"로서 지칭됨)에 기초한다. 도 4에서 예시된 바와 같이, 어레이 인에이블(62)은 프리-차지 인에이블(70)에 기초하여 메모리 액세스 로직 회로(56)에 의해 생성되지 않는다. 오히려, 어레이 인에이블(62)은 도 2의 메모리 액세스 로직 회로(56)에 의한 데이터 인덱스(60)의 생성에 기초하여 메모리 액세스 로직 회로(56)에 의해 어서트된다. 데이터 인덱스(60)가 메모리 액세스 로직 회로(56)에 의해 SRAM 데이터 어레이(46)에 제공되었음을 나타내는 어레이 인에이블(62)은 메모리 액세스 로직 회로(56)에 의한 데이터 인덱스(60)의 생성에 이어 메모리 액세스 로직 회로(56)에 의해 어서트된다. SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 어서션은, 비-제한적인 예로서, 메모리 액세스 로직 회로(56)에 의한 어레이 인에이블(62)의 어서션에 이어 클록 신호(90)의 상승 에지에 기초한다. SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 어서션은 클록 신호(90)의 하강 에지 또는 천이(이하 "하강 에지"로서 지칭됨)에 또한 기초할 수 있다. 또한, 프리-차지 인에이블(70)은 메모리 액세스 로직 회로(56)에 의한 어레이 인에이블(62)의 어서션에 이은 클록 신호(90)의 상승 에지에 기초하여 SRAM 데이터 어레이(46)에 의해 디-어서트(de-assert)된다. 제 2 데이터 액세스 경로(54)에서 SRAM 데이터 서브-어레이(50)를 프리차지함으로써, 프리-차지 회로(66)의 부가적인 레이턴시는 SRAM 데이터 서브-어레이(50)의 데이터 엔트리(44)에 액세스하기 위한 제 1 데이터 액세스 경로(52)의 레이턴시의 부분으로서 제공되지 않는다. 그러나 SRAM(42)은, SRAM 데이터 서브-어레이(50)를 프리-차지하는 프리-차지 인에이블(70)이 종료하기 이전에 어레이 인에이블(62)이 소모되지 않도록 설계되어야 한다는 것이 주의되어야 한다. 그렇지 않으면, 액세스되는 SRAM 데이터 서브-어레이(50)는 액세스 시에 프리-차지되지 않을 수 있다. [0042] Continuing to refer to FIG. 4, SRAM 42 is a synchronous circuit; The clock signal 90 is thus provided to the SRAM 42 to control the clocking of the circuits that control the memory access request 48. As discussed above, the pre-charge circuit 66 generates a pre-charge enable 70 as shown in FIG. The pre-charge enable 70, which indicates that the pre-charge index 68 has been provided by the pre-charge circuit 66 to the SRAM data array 46, And is asserted by the pre-charge circuit 66 following generation of the charge index 68. [ The assertion of the bit line pre-charge signal 38 by the SRAM data array 46 is followed by the assertion of the pre-charge enable 70 by the pre-charge circuit 66 followed by the rising edge of the clock signal 90 Transition (hereinafter referred to as "rising edge"). As illustrated in FIG. 4, the array enable 62 is not generated by the memory access logic circuit 56 based on the pre-charge enable 70. Rather, the array enable 62 is asserted by the memory access logic circuit 56 based on the generation of the data index 60 by the memory access logic circuitry 56 of FIG. The array enable 62 indicating that the data index 60 has been provided to the SRAM data array 46 by the memory access logic circuit 56 follows the creation of the data index 60 by the memory access logic circuit 56. [ Is asserted by the memory access logic circuit 56. The assertion of the word line signal 22 by the SRAM data array 46 is followed by the assertion of the array enable 62 by the memory access logic circuit 56 as a non-limiting example, It is based on the rising edge. The assertion of the word line signal 22 by the SRAM data array 46 may also be based on a falling edge or transition of the clock signal 90 (hereinafter referred to as "falling edge"). The pre-charge enable 70 is also enabled by the SRAM data array 46 based on the rising edge of the clock signal 90 following the assertion of the array enable 62 by the memory access logic circuit 56 - It is de-asserted. The additional latency of the pre-charge circuitry 66 is controlled by accessing the data entry 44 of the SRAM data sub-array 50 by precharging the SRAM data sub-array 50 in the second data access path 54 As part of the latency of the first data access path 52 for < / RTI > However, it should be noted that the SRAM 42 should be designed such that the array enable 62 is not consumed prior to the end of the pre-charge enable 70 pre-charging the SRAM data sub-array 50. Otherwise, the accessed SRAM data sub-array 50 may not be pre-charged upon access.

[0043] CPU 캐시는 메모리에 액세스하는데 요구되는 평균 시간을 감소시키도록 컴퓨터의 CPU 시스템에 의해 이용되는 캐시 메모리이다. CPU 캐시는 빈번하게 이용되는 메인 메모리 위치들로부터 데이터의 사본들을 저장하는 더 작고 더 빠른 메모리이다. 캐시된 메모리 위치들을 이용하는 메모리 액세스들이 많을수록, 메모리 액세스들의 평균 메모리는 메인 메모리의 레이턴시보단 캐시 레이턴시에 더 가깝게 될 것이다. 그러므로 캐시 레이턴시는 CPU의 메모리의 성능의 중요한 팩터일 수 있다. SRAM(42)은 캐시 메모리로서 컴퓨터 시스템에서 이용될 수 있는 일 타입의 메모리이다. 모든 메모리 액세스 신호들이 준비되기에 앞서 이전의 클록 사이클에서 프리-차지하는 것은 SRAM(42)의 레이턴시를 감소시키고, 그에 따라 위에서 설명된 바와 같이 SRAM(42)의 성능을 가속시킨다. [0043] A CPU cache is a cache memory used by a CPU system of a computer to reduce the average time required to access the memory. The CPU cache is a smaller, faster memory that stores copies of data from frequently used main memory locations. The more memory accesses that use cached memory locations, the closer the average memory accesses of memory accesses will be to the cache latency than to the main memory latency. Cache latency can therefore be a significant factor in the performance of the CPU's memory. SRAM 42 is one type of memory that can be used in a computer system as a cache memory. Pre-charging in a previous clock cycle before all memory access signals are ready reduces the latency of the SRAM 42 and thereby accelerates the performance of the SRAM 42 as described above.

[0044] 이것에 관하여, 도 5는 메모리 액세스 요청(48)에 대해 SRAM 데이터 어레이(46)의 데이터 엔트리(44)를 인덱싱하기 위한 예시적인 SRAM 캐시(42')의 개략도이다. 아래에서 설명될 바와 같이, SRAM 데이터 어레이(46)는 메모리 액세스 요청(48)에 대해 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기 이전에 프리-차지된다. SRAM 데이터 어레이(46)는 이 예에서 도 1에서 제공된 6-T SRAM 비트셀(10)의 행들 및 열들로 구성된다. 명확성을 위해, 도 5를 설명하는데 있어 참조되는 도 1의 엘리먼트은 다시 설명되지 않을 것이다. SRAM 데이터 어레이(46)는 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N))로 추가로 구성될 수 있다. In this regard, FIG. 5 is a schematic diagram of an exemplary SRAM cache 42 'for indexing the data entry 44 of the SRAM data array 46 for a memory access request 48. The SRAM data array 46 is pre-charged prior to accessing the data entry 44 of the SRAM data array 46 for the memory access request 48, as will be described below. The SRAM data array 46 consists of the rows and columns of the 6-T SRAM bit cell 10 provided in this example in FIG. For clarity, the elements of Figure 1, which are referred to in describing Figure 5, will not be described again. The SRAM data array 46 may be further configured with a plurality of SRAM data sub-arrays 50 (0) -50 (N).

[0045] 도 5를 계속 참조하면, SRAM 캐시(42')는 이 예에서 두 개(2)의 데이터 액세스 경로들(제 1 데이터 액세스 경로(52') 및 제 2 데이터 액세스 경로(54'))를 포함한다. 제 1 데이터 액세스 경로(52')는 메모리 액세스 요청(48)에 대응하는 데이터 엔트리(44)로의 액세스를 위해 SRAM 데이터 어레이(46)를 인덱싱하도록 하는 메모리 액세스 요청(48)의 프로세싱을 제공한다. 제 2 데이터 액세스 경로(54')는 비-제한적인 예로서, 누설 전력을 감소시키기 위해, 액세스될 특정한 SRAM 데이터 서브-어레이(50(0)-50(N))만이 프리-차지를 요구하도록 액세스될 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 특정한 하나 이상을 식별하기 위해 제공된다. 이 예에서, SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지는 제 1 데이터 액세스 경로(52')에서 데이터 엔트리(44)에 액세스하기 이전에 제 1 데이터 액세스 경로(52') 외부의 제 2 데이터 액세스 경로(54')에서 발생한다. 도 5의 SRAM 캐시(42')의 제 1 데이터 액세스 경로(52')가 이제 설명될 것이다. Still referring to FIG. 5, the SRAM cache 42 'includes two (2) data access paths (a first data access path 52' and a second data access path 54 ') in this example, ). The first data access path 52'provides processing of the memory access request 48 to index the SRAM data array 46 for access to the data entry 44 corresponding to the memory access request 48. [ The second data access path 54 'is a non-limiting example in which only the specific SRAM data sub-arrays 50 (0) -50 (N) to be accessed are required to require pre-charge to reduce leakage power Is provided to identify a particular one or more of a plurality of SRAM data sub-arrays 50 (0) -50 (N) to be accessed. In this example, pre-charging of the SRAM data sub-arrays 50 (0) -50 (N) is performed prior to accessing the data entry 44 in the first data access path 52 ' Occurs in a second data access path 54 'outside of the second data access path 52'. The first data access path 52 'of the SRAM cache 42' of FIG. 5 will now be described.

[0046] 도 5를 참조하면, SRAM 캐시(42')는 추가로, 수신된 메모리 액세스 요청(48)을 프로세싱하도록 구성되는 메모리 액세스 로직 회로(56')로 구성된다. 메모리 액세스 로직 회로(56')는 제 1 데이터 액세스 경로(52')의 메모리 액세스 요청(48)을 프로세싱하도록 구성된다. 메모리 액세스 요청(48)의 프로세싱은 메모리 액세스 요청(48)을 수신하고, 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 어레이(46)에 로케이팅된 데이터 엔트리(44)를 인덱싱하기 위한 데이터 인덱스(60)로 데이터 엔트리 어드레스(58)를 변환하는 것을 포함할 수 있다. 데이터 인덱스(60)는 SRAM 데이터 어레이(46)의 데이터 엔트리(44) 위치에 대응하는 인덱스로 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)를 변환함으로써 생성된다. [0046] Referring to FIG. 5, the SRAM cache 42 'further comprises a memory access logic circuit 56' configured to process the received memory access request 48. The memory access logic circuit 56 'is configured to process the memory access request 48 of the first data access path 52'. The processing of the memory access request 48 includes receiving a data access request 48 from the data index 44 for indexing the data entry 44 that is located in the SRAM data array 46 corresponding to the memory access request 48, 60 into a data entry address (58). The data index 60 is generated by translating the data entry address 58 of the memory access request 48 into an index corresponding to the location of the data entry 44 of the SRAM data array 46.

[0047] SRAM 캐시(42')의 이 예에서, 메모리 액세스 로직 회로(56')는 태그 어레이(92) 및 비교기 회로(94)로 구성된다. 태그 어레이(92)는 입력으로서 메모리 액세스 요청(48)을 수신한다. 태그 어레이(92)는 메모리 액세스 요청(48)의 데이터 엔트리 어드레스(58)를 나타내는 SRAM 데이터 어레이(46)에 저장된 데이터 엔트리(44)의 유효성을 검사하도록 제공된 메모리 액세스 요청(48)을 이용한다. 유효한 데이터 엔트리(44)는 메모리에 저장된 데이터와의 데이터 엔트리 어드레스(58)의 데이터의 일관된 표현(coherent representation)이다. 데이터 엔트리(44)가 유효한 경우, 태그 어레이(92)는 유효한 출력으로서 비교기 회로(94)에 태그 출력(96)을 제공한다. 비교기 회로(94)는, 제 1 입력(97)으로서 메모리 액세스 요청(48)을 그리고 제 2 입력(98)으로서 태그 출력(96)을 수신한다. 비교기 회로(94)는 메모리 액세스 요청(48)과 태그 출력(96) 간에 비교를 행하고 출력으로서 SRAM 데이터 어레이(46)에 제공되는 데이터 인덱스(60)를 생성한다. [0047] In this example of the SRAM cache 42 ', the memory access logic circuit 56' is comprised of a tag array 92 and a comparator circuit 94. The tag array 92 receives a memory access request 48 as input. The tag array 92 utilizes a memory access request 48 provided to validate the data entry 44 stored in the SRAM data array 46 that represents the data entry address 58 of the memory access request 48. A valid data entry 44 is a coherent representation of the data of the data entry address 58 with the data stored in the memory. If the data entry 44 is valid, the tag array 92 provides the tag output 96 to the comparator circuit 94 as valid output. The comparator circuit 94 receives the memory access request 48 as the first input 97 and the tag output 96 as the second input 98. The comparator circuit 94 makes a comparison between the memory access request 48 and the tag output 96 and generates the data index 60 provided as an output to the SRAM data array 46.

[0048] 도 5를 계속 참조하면, SRAM 데이터 어레이(46)는 입력으로서 생성된 데이터 인덱스(60)를 수신한다. 이 예에서, 데이터 인덱스(60)는 SRAM 데이터 어레이(46)의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 어느 데이터 엔트리(44)가 데이터 엔트리 어드레스(58)의 데이터를 포함하는지의 표시를 제공한다. 데이터 엔트리(44)에 액세스하는 것은 메모리 액세스 요청(48)에 기초하여 SRAM 데이터 어레이(46)의 메모리 액세스를 개시하는데 이용되는 SRAM 데이터 어레이(46)에 어레이 인에이블(62)을 제공하는 것을 포함한다. SRAM 데이터 어레이(46)는 부가적으로 입력으로서 어레이 인에이블(62)을 수신한다. 어레이 인에이블(62)은 메모리 액세스 로직 회로(56')에 의해 출력되는 대응하는 데이터 인덱스(60)가 있고 그에 따라 데이터 엔트리(44)의 액세스가 진행될 수 있다는 것을 나타낸다. 데이터 인덱스(60) 및 어레이 인에이블(62)은 제 1 데이터 액세스 경로(52')에서 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하는데 이용하기 위해 SRAM 데이터 어레이(46)에 출력된다. 어레이 인에이블(62)이 어서트되면, SRAM 데이터 어레이(46)는 SRAM 데이터 어레이(46)로부터의 데이터 출력(64)으로서 어드레싱된 데이터 엔트리(44)를 출력한다. 명확성을 위해, 도 5를 설명하는데 참조되는 도 1의 엘리먼트들은 다시 설명되지 않을 것이다. [0048] With continued reference to FIG. 5, the SRAM data array 46 receives the data index 60 generated as an input. In this example, the data index 60 indicates which data entry 44 of the SRAM data sub-arrays 50 (0) -50 (N) of the SRAM data array 46 is the data of the data entry address 58 Or < / RTI > Accessing the data entry 44 includes providing the array enable 62 to the SRAM data array 46 used to initiate the memory access of the SRAM data array 46 based on the memory access request 48 do. The SRAM data array 46 additionally receives the array enable 62 as an input. The array enable 62 indicates that there is a corresponding data index 60 output by the memory access logic circuit 56 'and thus access of the data entry 44 can proceed. The data index 60 and the array enable 62 are output to the SRAM data array 46 for use in accessing the data entry 44 of the SRAM data array 46 in the first data access path 52 ' . When the array enable 62 is asserted, the SRAM data array 46 outputs the addressed data entry 44 as the data output 64 from the SRAM data array 46. For clarity, the elements of FIG. 1, which are referred to to describe FIG. 5, will not be described again.

[0049] 도 5를 계속 참조하면, 제 2 데이터 액세스 경로(54')는 프리-차지 회로(66)를 포함한다. 프리-차지 회로(66)는 제 2 데이터 액세스 경로(54')에서 SRAM 데이터 어레이(46) 또는 SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지를 인에이블하도록 구성된다. 프리-차지 회로(66)는 메모리 액세스 요청(48)을 수신하도록 구성된다. 프리-차지 회로(66)는 추가로 메모리 액세스 요청(48)에 대응하는, 액세스되는 SRAM 데이터 서브-어레이(50(0)-50(N))를 인덱싱하기 위한 프리-차지 인덱스(68)를 생성하도록 구성된다. 프리-차지 회로(66)는 제 1 데이터 액세스 경로(52')에서 액세스될 SRAM 데이터 서브-어레이(50(0)-50(N))에 대응하는 프리-차지 인덱스(68)로 수신된 메모리 액세스 요청(48)을 변환함으로써 프리-차지 인덱스(68)를 생성한다. 프리-차지 인덱스(68)는 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 어느 것이 프리-차지를 요구하는지를 표시하며, 프리-차지 인덱스(68)는 모든 인덱스 비트들을 표시할 필요가 없다. 따라서, 인덱스 비트들의 일부 만이 메모리 액세스에 앞서 이전의 클록 사이클에서 필요로 된다. 프리-차지 회로(66)는 추가로, 이 예에서 SRAM 데이터 어레이(46)에 의한 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지를 인에이블하는 프리-차지 인에이블(70)을 생성하도록 구성된다. [0049] Still referring to FIG. 5, the second data access path 54 'includes a pre-charge circuit 66. The pre-charge circuit 66 is configured to enable pre-charging of the SRAM data array 46 or the SRAM data sub-arrays 50 (0) -50 (N) in the second data access path 54 ' . The pre-charge circuit 66 is configured to receive a memory access request 48. The pre-charge circuit 66 further includes a pre-charge index 68 for indexing the accessed SRAM data sub-arrays 50 (0) -50 (N), corresponding to the memory access request 48 Respectively. The pre-charge circuit 66 is coupled to a memory 68 that is received in the pre-charge index 68 corresponding to the SRAM data sub-arrays 50 (0) -50 (N) to be accessed in the first data access path 52 ' And generates a pre-charge index 68 by transforming the access request 48. [ The pre-charge index 68 indicates which of the SRAM data sub-arrays 50 (0) -50 (N) requires pre-charge and the pre-charge index 68 indicates all index bits You do not have to. Thus, only a portion of the index bits are needed in the previous clock cycle prior to memory accesses. The pre-charge circuit 66 further includes a pre-charge circuit 66 that enables pre-charge of the SRAM data sub-arrays 50 (0) -50 (N) by the SRAM data array 46 in this example Able 70. < / RTI >

[0050] 도 5를 계속 참조하면, 프리-차지 인에이블(70)은 프리-차지 인덱스(68)가 SRAM 데이터 어레이(46)에 제공되었다고 SRAM 데이터 어레이(46)에 표시한다. 생성된 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)은 제 1 데이터 액세스 경로(52')에서 데이터 엔트리(44)에 액세스하기 이전에 제 2 데이터 액세스 경로(54')에서 SRAM 데이터 어레이(46)에 의해 수신된다. SRAM 데이터 어레이(46)는 제 1 데이터 액세스 경로(52')에서 메모리 액세스 요청(48)의 프로세싱에 독립적으로, 프리-차지 인에이블(70)의 수신에 이어 프리-차지 인덱스(68)에 의해 표시된 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지를 진행할 수 있다. 부가적으로, 생성된 프리-차지 인덱스(68)는 예로서, SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지를 진행하기 위한, 모든 인덱스 비트들 중 단지 일부를 포함할 필요가 있다. 비-제한적인 예로서, SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지는 액세스되는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 도 1의 비트라인들(26) 및 비트라인 보완들(28)만을 프리-차지하는 것을 포함할 수 있다. 액세스되지 않는 SRAM 데이터 서브-어레이(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)은 플로팅 상태로 배치되거나 플로팅 상태로 유지될 수 있고, 그에 따라 누설 전력을 감소시킨다. 5, the pre-charge enable 70 indicates to the SRAM data array 46 that the pre-charge index 68 has been provided to the SRAM data array 46. [ The generated pre-charge index 68 and pre-charge enable 70 are stored in the second data access path 54 'prior to accessing the data entry 44 in the first data access path 52' And is received by the data array 46. The SRAM data array 46 is operative to receive the pre-charge enable 70 independently of the processing of the memory access request 48 in the first data access path 52 ' It is possible to proceed with pre-charging of the indicated SRAM data sub-arrays 50 (0) -50 (N). Additionally, the generated pre-charge index 68 may include, for example, only a portion of all the index bits for proceeding pre-charging of the SRAM data sub-arrays 50 (0) -50 (N) . ≪ / RTI > As a non-limiting example, the pre-charging of the SRAM data sub-arrays 50 (0) -50 (N) may be performed using SRAM data sub-arrays 50 (0) 50 < / RTI > (N) of the bit lines 26 and bit line complement 28 of FIG. The bit lines 26 and bit line complement 28 of the SRAM data sub-arrays 50 (0) -50 (N) that are not accessed may be placed in a floating state or may remain in a floating state, Thereby reducing leakage power.

[0051] 도 5를 계속 참조하면, 누설 전력은 액세스되지 않는 SRAM 데이터 서브-어레이(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)이 로직 하이 또는 로직 로우 중 어느 하나의 상태로 프리-차지되는 메모리 유휴 기간들 동안 발생할 수 있다. SRAM 데이터 어레이(46)의 비트라인들(26) 및 비트라인 보완들(28)의 프리-차지로 인해 겪는 누설 전력을 감소시키기 위해, 메모리 액세스 요청(48)에 의해 액세스되는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50)의 비트라인들(26) 및 비트라인 보완들(28) 만이 프리-차지된다. 액세스되지 않는 SRAM 데이터 서브-어레이(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)은 누설 전력을 감소시키도록 플로팅 상태로 남겨질 수 있다. 또한, 제 2 데이터 액세스 경로(54')에서 SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지를 인에이블하는 것은 메모리 액세스 로직 회로(56')가 제 1 데이터 액세스 경로(52')에서 메모리 액세스 요청(48)을 프로세싱하는 동안 발생할 수 있다. 액세스되는 SRAM 데이터 어레이(46)의 데이터 엔트리(44)는 제 2 데이터 액세스 경로(54')에서 수신된 프리-차지 인덱스(68)에 기초하여 액세스되기 이전에 프리-차지된다. 이러한 방식으로, 프리-차지 회로(66)는 누설 전력을 감소시키기 위해 유휴 기간들 동안 SRAM 데이터 어레이(46)의 비트라인들(26, 28)을 프리-차지하는 것을 방지하기 위해 메모리 액세스 요청(48)의 부분으로서 SRAM 데이터 어레이(42')의 비트라인들(26, 28)의 프리-차지를 인에이블하도록 구성된다. 그러나 제 1 데이터 액세스 경로(52') 외부의 제 2 데이터 액세스 경로(54')에 프리-차지 회로(66)를 또한 제공함으로써, 프리-차지 회로(66)는 데이터 액세스 이전에 SRAM 데이터 어레이(42')의 프리-차지를 인에이블할 수 있어서, 프리-차지 회로(66)는 제 1 데이터 액세스 경로(52')에 레이턴시를 부가하지 않게 된다. 아래에서 더 상세히 논의되는 바와 같이, 선택적인 자기-타이밍 클록 회로(100)가 SRAM 데이터 어레이(46)에 제공된다. 선택적인 자기-타이밍 클록 회로(100)는 워드라인 신호(22) 및/또는 비트라인 프리-차지 신호(38) 둘 다를 어서트 또는 디-어서트하기 위한 대안적인 수단을 제공한다. 5, the leakage power is determined by the bit lines 26 and bit line complement 28 of the SRAM data sub-arrays 50 (0) -50 (N) Or memory-idle periods pre-charged to either of the two states. The data entry 44 accessed by the memory access request 48 may be used to reduce the leakage power experienced by the precharge of the bit lines 26 and bit line complement 28 of the SRAM data array 46. [ Only the bit lines 26 and bit line complement 28 of the SRAM data sub-array 50 including the bit line complement 28 are pre-charged. Bit lines 26 and bit line complement 28 of SRAM data sub-arrays 50 (0) -50 (N) that are not accessed may be left floating to reduce leakage power. Also, enabling pre-charging of the SRAM data sub-arrays 50 (0) -50 (N) in the second data access path 54 'is advantageous because the memory access logic circuit 56' May occur while processing the memory access request 48 in the access path 52 '. The data entry 44 of the accessed SRAM data array 46 is pre-charged prior to being accessed based on the pre-charge index 68 received in the second data access path 54 '. In this manner, the pre-charge circuit 66 is enabled to receive a memory access request 48 (i. E., To avoid pre-charging the bit lines 26,28 of the SRAM data array 46 during idle periods to reduce leakage power) Charge of the bit lines 26, 28 of the SRAM data array 42 'as part of the SRAM data array 42'. However, by also providing the pre-charge circuit 66 to the second data access path 54 'outside of the first data access path 52', the pre-charge circuit 66 can pre-charge the SRAM data array Charging of the first data access path 52 'so that the pre-charge circuit 66 does not add latency to the first data access path 52'. As will be discussed in greater detail below, an optional self-timing clock circuit 100 is provided in the SRAM data array 46. The optional self-timing clock circuit 100 provides an alternative means for asserting or de-asserting both the word line signal 22 and / or the bit line pre-charge signal 38.

[0052] 메모리 액세스 요청(48) 및 데이터 엔트리(44) 액세스 이전에 SRAM 데이터 어레이(46)의 프리-차지를 추가로 설명하기 위해, 도 6이 제공된다. 도 6은 도 5의 SRAM 캐시(42')에서 메모리 액세스 요청(48)의 프로세싱을 위한 예시적인 프로세스를 예시하는 흐름도이다. 메모리 액세스 요청(48)의 프로세싱은, 두 개(2)의 데이터 액세스 경로들(제 1 데이터 액세스 경로(52') 및 제 2 데이터 액세스 경로(54'))을 포함한다. SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기 위한 메모리 액세스 요청(48)의 프로세싱은 SRAM 데이터 어레이(46)의 데이터 엔트리(44)를 어드레싱하기 위해 제 1 데이터 액세스 경로(52')에서 메모리 액세스 요청(48)을 수신하는 것을 포함한다(블록 102). 메모리 액세스 로직 회로(56')는 제 1 데이터 액세스 경로(52')에서 수신된 메모리 액세스 요청(48)에 기초하여 태그 출력(96)을 생성한다(블록 104). 비교기 회로(94)는, 데이터 엔트리(44)가 SRAM 데이터 어레이(46)에 저장되었는지를 결정하기 위해 수신된 메모리 액세스 요청(48)과 태그 출력(96)을 비교한다(블록 106). 메모리 액세스 로직 회로(56')는 비교기 회로(94)로부터의 비교의 결과 및 태그 출력(96)에 기초하여 데이터 인덱스(60) 및 어레이 인에이블(62)을 생성한다. 메모리 액세스 로직 회로(56')에 의해 생성된 데이터 인덱스(60) 및 어레이 인에이블(62)은 SRAM 데이터 어레이(46)에 출력된다. SRAM 데이터 어레이(46)는 제 1 데이터 액세스 경로(52')에서 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기 위해 수신된 데이터 인덱스(60) 및 어레이 인에이블(62)을 이용한다(블록 108).[0052] To further illustrate pre-charging of SRAM data array 46 prior to memory access request 48 and data entry 44 access, FIG. 6 is provided. 6 is a flow chart illustrating an exemplary process for processing a memory access request 48 in the SRAM cache 42 'of FIG. The processing of the memory access request 48 includes two (2) data access paths (a first data access path 52 'and a second data access path 54'). The processing of the memory access request 48 for accessing the data entry 44 of the SRAM data array 46 is performed by the first data access path 52 'to address the data entry 44 of the SRAM data array 46. [ (Block 102). ≪ / RTI > The memory access logic circuit 56 'generates a tag output 96 based on the memory access request 48 received at the first data access path 52' (block 104). The comparator circuit 94 compares the received memory access request 48 with the tag output 96 to determine if the data entry 44 is stored in the SRAM data array 46 (block 106). The memory access logic circuit 56 'generates the data index 60 and the array enable 62 based on the result of the comparison from the comparator circuit 94 and the tag output 96. The data index 60 and the array enable 62 generated by the memory access logic circuit 56 'are output to the SRAM data array 46. [ The SRAM data array 46 includes a received data index 60 and a received data index 44 to access the data entry 44 of the SRAM data array 46 corresponding to the memory access request 48 in the first data access path 52 ' Array enable 62 is used (block 108).

[0053] 도 6을 계속 참조하면, 메모리 액세스 요청(48)의 프로세싱은 추가로 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 하나 이상을 프리-차지하기 위해 제 2 데이터 액세스 경로(54')에서 메모리 액세스 요청(48)을 수신하는 것을 포함한다. 메모리 액세스 요청(48)은 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 서브-어레이(50(0)-50(N))를 프리-차지하기 위해 프리-차지 회로(66)에 의해 SRAM 데이터 어레이(46)의 비트라인들(26, 28)을 프리-차지하도록 제 2 데이터 액세스 경로(54')에서 수신된다(블록 110). 프리-차지 회로(66)는 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 서브-어레이(50(0)-50(N))에 대한 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)을 생성한다(블록 112). 생성된 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)은 프리-차지 회로(66)에 의해 출력되고 SRAM 데이터 어레이(46)에 의해 수신된다. SRAM 데이터 어레이(46)는 메모리 액세스 요청(48)이 나타내는 SRAM 데이터 서브-어레이(50(0)-50(N))를 프리-차지하기 위해 수신된 프리-차지 인덱스(68) 및 프리-차지 인에이블(70)을 이용한다(블록 114). 따라서, SRAM 데이터 어레이(46)는 메모리 액세스 로직 회로(56')가 제 1 데이터 액세스 경로(52')에서 메모리 액세스 요청(48)의 변환을 생성하는 것에 독립적으로, SRAM 데이터 서브-어레이(50(0)-50(N))를 프리-차지할 수 있다. 이러한 방식으로, 메모리 액세스 요청(48)에 대응하는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))는 SRAM 데이터 어레이(46)가 메모리 액세스 요청(48)에 대응하는 데이터 엔트리(44)에 액세스하기 이전에 프리-차지될 수 있다. 6, the processing of the memory access request 48 may further include processing the second data to pre-charge one or more of the SRAM data sub-arrays 50 (0) -50 (N). [0053] And receiving a memory access request 48 on the access path 54 '. The memory access request 48 is transferred by the pre-charge circuitry 66 to the SRAM data array 48 by pre-charge circuitry 66 to pre-charge the SRAM data sub-arrays 50 (0) -50 (N) (Block 110) in a second data access path 54 'to pre-charge the bit lines 26, 28 of the memory cell array 46. The pre-charge circuit 66 includes a pre-charge index 68 and pre-charge enable 70 for the SRAM data sub-arrays 50 (0) -50 (N) corresponding to the memory access request 48 (Block 112). The generated pre-charge index 68 and pre-charge enable 70 are output by the pre-charge circuit 66 and received by the SRAM data array 46. The SRAM data array 46 includes a received pre-charge index 68 and a pre-charge index to pre-charge the SRAM data sub-arrays 50 (0) -50 (N) Enable 70 is used (block 114). Thus, the SRAM data array 46 is independent of the memory access logic circuit 56 'generating the translation of the memory access request 48 in the first data access path 52', and the SRAM data sub-array 50 (0) -50 (N)). In this manner, the SRAM data sub-arrays 50 (0) -50 (N) comprising the data entry 44 corresponding to the memory access request 48 enable the SRAM data array 46 to access memory access requests 48 May be pre-charged prior to accessing the data entry 44 corresponding to the data entry 44. < RTI ID = 0.0 >

[0054] 도 6을 계속 참조하면, 프리-차지는 프리-차지 기능이 데이터 엔트리(44) 액세스에 독립적이 되도록 제 1 데이터 액세스 경로(52') 외부의 제 2 데이터 액세스 경로(54')에서 발생한다. 제 1 데이터 액세스 경로(52') 외부의 제 2 데이터 액세스 경로(54')에 프리-차지 회로(66)를 제공함으로써, 프리-차지 회로(66)는 제 1 데이터 액세스 경로(52')에서의 데이터 엔트리(44) 액세스에 독립적으로 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지를 인에이블할 수 있다. 따라서, 프리-차지 회로(66)는, 데이터 엔트리 어드레스(58)의 SRAM 데이터 서브-어레이(50(0)-50(N))에서의 데이터 엔트리(44) 액세스 이전에 SRAM 데이터 서브-어레이(50(0)-50(N))의 프리-차지를 인에이블할 수 있다. 메모리 유휴 시간들 동안 누설 전력을 감소 또는 방지하기 위해, 모든 비트라인들(26)이 프리-차지되지는 않을 것이다. 따라서, 비-제한적인 예로서, SRAM 데이터 어레이(46)의 모든 비트라인들(26) 및 비트라인 보완들(28)에 대조적으로, 액세스되는 데이터 엔트리(44)를 포함하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 도 1의 비트라인(26) 및 비트라인 보완들(28)만이프리-차지될 수 있다. 메모리 액세스 요청(48)의 부분으로서 액세스되지 않은 SRAM 데이터 서브-어레이들(50(0)-50(N))의 비트라인들(26) 및 비트라인 보완들(28)은 누설 전력을 추가로 감소시키기 위해 플로팅 상태로 남겨질 수 있다. 이러한 방식으로, 프리-차지 회로(66)의 레이턴시는 SRAM 데이터 서브-어레이들(50(0)-50(N))의 데이터 엔트리(44)에 액세스하기 위해 제 1 데이터 액세스 경로(52')의 부분으로서 제공되지 않는다. SRAM 캐시(42')는 액세스되는 특정한 SRAM 데이터 서브-어레이(50(0)-50(N))의 데이터 엔트리(44)를 프리-차지할 수 있어서, SRAM 캐시(42')에서 누설 전력을 감소시킨다. [0054] Still referring to FIG. 6, pre-charge may be performed on the second data access path 54 'outside the first data access path 52' so that the pre-charge function is independent of the data entry 44 access Occurs. By providing the pre-charge circuit 66 in the second data access path 54 'outside the first data access path 52', the pre-charge circuit 66 is enabled in the first data access path 52 ' Can pre-charge the SRAM data sub-arrays 50 (0) -50 (N) independently of the data entry 44 access of the SRAM data sub-arrays. Thus, the pre-charge circuit 66 precharges the SRAM data sub-array (not shown) prior to accessing the data entry 44 in the SRAM data sub-arrays 50 (0) -50 (N) of the data entry address 58 50 (0) -50 (N)). To reduce or prevent leakage power during memory idle times, not all bit lines 26 will be pre-charged. Thus, as a non-limiting example, in contrast to all bit lines 26 and bit line complement 28 of SRAM data array 46, SRAM data sub-arrays < RTI ID = 0.0 > Only the bit line 26 and bit line complement 28 of FIG. 1 of the word line 50 (0) -50 (N) may be pre-charged. The bit lines 26 and bit line complement 28 of SRAM data sub-arrays 50 (0) -50 (N) that are not accessed as part of the memory access request 48 additionally provide leakage power It can be left floating in order to reduce it. In this manner, the latency of the pre-charge circuit 66 is limited by the first data access path 52 'to access the data entry 44 of the SRAM data sub-arrays 50 (0) -50 (N) Lt; / RTI > The SRAM cache 42'can pre-charge the data entries 44 of the particular SRAM data sub-arrays 50 (0) -50 (N) being accessed thereby reducing the leakage power in the SRAM cache 42 ' .

[0055] 이것에 관하여, 수신된 복수의 메모리 액세스 요청들(48(1)-48(M))에 대응하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 데이터 엔트리(44)에 액세스하고 프리-차지하는 것에 관련된 예시적인 신호들의 타이밍을 예시하기 위한 타이밍도(116)가 도 7에서 제공된다. 명확성을 위해, 도 7에서 참조되는 엘리먼트들은 도 1 및 도 2에서 설명되고 다시 설명되지 않을 것이다. 도 7은, 제 2 데이터 액세스 경로(54)에서 SRAM 데이터 어레이(46)의 비트라인들(26, 28)의 프리-차지를 인에이블하기 위한 프리-차지 이벤트(86)가 제 1 데이터 액세스 경로(52)에서 SRAM 데이터 어레이(46)에 액세스하기 위한 액세스 이벤트(88)에 독립적이란 것을 예시한다. 따라서 프리-차지 인에이블(70)은 어레이 인에이블(62)이 어스트되는 것과 별개로 그리고 그 이전에 어서트될 수 있다. 메모리 액세스 요청들(48(1)-48(M))의 프로세싱은 개별적으로 동일하게 유지되고 다시 설명되지 않을 것이다. [0055] In this regard, the data entry 44 (N) of the SRAM data sub-arrays 50 (0) -50 (N) corresponding to the received plurality of memory access requests 48 A timing diagram 116 for illustrating the timing of exemplary signals associated with accessing and pre-charging is provided in FIG. For clarity, the elements referenced in Figure 7 will be described in Figures 1 and 2 and will not be described again. Figure 7 illustrates a precharge event 86 for enabling pre-charging of bit lines 26 and 28 of SRAM data array 46 in a second data access path 54, RTI ID = 0.0 > 88 < / RTI > for accessing the SRAM data array 46 in the memory 52. Thus, the pre-charge enable 70 may be asserted separately and prior to the array enable 62 being asserted. The processing of memory access requests 48 (1) -48 (M) will remain the same individually and will not be described again.

[0056] 도 7을 계속 참조하여, SRAM(42)은 복수의 메모리 액세스 요청((48)(1) -48(M))을 수신할 수 있다. 도 7은 SRAM 캐시(42')에서 메모리 액세스 요청((48)(1) -48(M))의 프로세싱에 대한 신호들의 타이밍을 예시한다. 부가적인 메모리 액세스 요청(48) 프로세싱은 위의 도 6에서 설명된 바와 같이 메모리 액세스 요청(48)의 프로세싱과 동일하다. 도 7의 메모리 액세스 요청(48)(2)은 메모리 액세스 요청(48)(1)을 설명하는 타이밍 신호에 이어 클록 신호(90)의 다음 상승 클록 에지 상에서 프로세싱된다. [0056] Still referring to FIG. 7, the SRAM 42 may receive a plurality of memory access requests ((48) (1) -48 (M)). Figure 7 illustrates the timing of signals for processing of memory access requests (48 (1) -48 (M)) in the SRAM cache 42 '. The additional memory access request 48 processing is the same as the processing of the memory access request 48 as described above in FIG. The memory access request 48 (2) in FIG. 7 is processed on the next rising clock edge of the clock signal 90 following the timing signal describing the memory access request 48 (1).

[0057] 도 7은 메모리 액세스 요청들((48)(1) -48(M))이 순차적으로 프로세싱되는 것을 예시한다. SRAM(42)의 성능을 높이기 위해, SRAM(42)은 또한 복수의 메모리 액세스 요청((48)(1) -48(M))을 파이프라인 방식으로 프로세싱할 수 있다. 파이프 라인 방식의 메모리 액세스 요청들((48)(1) -48(M))의 프로세싱은 복수의 메모리 액세스 요청들((48)(1) -48(M))의 오버랩되는 실행을 허용한다. 이것에 관하여, 도 8은 도 7과 유사하게, SRAM 데이터 어레이(46)의 프리-차지를 인에이블하기 위한 프리-차지 이벤트(86) 및 두 개(2)의 수신된 메모리 액세스 요청(48(1), 48(2))에 대응하는 SRAM 데이터 서브-어레이(50(0)-50(N))의 데이터 엔트리(44)에 액세스하기 위한 액세스 이벤트(88)와 관련된 예시적인 신호들의 타이밍도(118)를 예시한다. 그러나 도 8은 부가적으로 파이프라인 방식으로 두 개(2)의 메모리 액세스 요청들(48(1), 48(2))의 프로세싱을 예시한다. 도 8에서 예시된 개별 신호들은 도 2에서 도시되며 다시 설명되지 않을 것이다. 두 개(2)의 메모리 액세스 요청들(48(1), 48(2))의 각각의 것의 프로세싱은 개별적으로 동일하게 유지되고 다시 설명되지 않을 것이다. 두 개(2) 초과의 메모리 액세스 요청들(48(1), 48(2))이 수신되고 프로세싱될 수 있다는 것이 주의되어야 한다. 이러한 방식으로, 도 8은 SRAM 캐시(42)는 메모리 액세스 요청(48(1))에 대응하는 SRAM 데이터 어레이(46)의 액세스하는 동안, 메모리 액세스 요청(48(2))에 대한 SRAM 데이터 어레이(46)의 프리-차지를 예시한다. [0057] Figure 7 illustrates that memory access requests (48) (1) -48 (M) are processed sequentially. To increase the performance of the SRAM 42, the SRAM 42 may also process a plurality of memory access requests (48) (1) -48 (M) in a pipelined manner. The processing of pipelined memory access requests (48) (1) -48 (M) allows overlapping execution of a plurality of memory access requests (48) (1) -48 (M) . In this regard, FIG. 8 shows a pre-charge event 86 for enabling pre-charge of the SRAM data array 46 and two (2) received memory access requests 48 Timing diagrams of exemplary signals associated with an access event 88 for accessing the data entry 44 of the SRAM data sub-arrays 50 (0) -50 (N) corresponding to the SRAM data sub-arrays 50 (1), 48 (118). However, Figure 8 additionally illustrates the processing of two (2) memory access requests 48 (1), 48 (2) in a pipelined manner. The individual signals illustrated in Fig. 8 are shown in Fig. 2 and will not be described again. The processing of each of the two (2) memory access requests 48 (1), 48 (2) will remain the same individually and will not be described again. It should be noted that more than two (2) memory access requests 48 (1), 48 (2) may be received and processed. In this manner, FIG. 8 shows that the SRAM cache 42 is able to access the SRAM data array 48 (2) for the memory access request 48 (2) while accessing the SRAM data array 46 corresponding to the memory access request 48 (46). ≪ / RTI >

[0058] 도 8을 계속 참조하면, 비트라인 프리-차지 신호(38)는 SRAM 데이터 어레이(46)에 의해 메모리 액세스 요청(48(2))에 대한 제 2 시간에 어서트된다. 비트라인 프리-차지 신호(38)는 메모리 액세스 요청(48(1))에 대해 워드라인 신호(22)를 어서트하기 위해 SRAM 데이터 어레이(46)에 의해 이용된 클록 신호(90)의 상승 에지와 동일한 클록 신호(90)의 상승 에지에 기초하여, 제 2 시간에 어서트된다. 위에서 논의된 바와 같이, 워드라인 신호(22)를 어서트하기 위해 SRAM 데이터 어레이(46)에 의해 이용되는 클록 신호(90)의 상승 에지는 또한 메모리 액세스 요청(48(1))에 대응하는 비트라인 프리-차지 신호(38)를 디-어서트한다. 메모리 액세스 요청(48(1))에 대응하는, SRAM 데이터 어레이(46)에 의한 비트라인 프리-차지 신호(38)의 디-어서션은, 비트라인 프리-차지 신호(38)가 위의 도 4에서 설명된 바와 같이 메모리 액세스 요청(48(1))에 의한 SRAM 데이터 어레이(46)의 액세스를 방해하지 않도록 발생한다. 그러나 이 예에서, SRAM(42)은 SRAM 데이터 어레이(46)에 의해 비트라인 프리-차지 신호(38)를 재-어서트하기 위해 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 디-어서션에 이은 클록 신호(90)의 다음 상승 에지를 이용한다. 이러한 방식으로, SRAM(42)은, 워드라인 신호(22)가 SRAM 데이터 어레이(46)에 의해 어서트되는 동안 SRAM 데이터 어레이(46)에 의한 비트라인 프리-차지 신호(38)의 재-어서션을 방지하며, 이는 메모리 액세스 요청(48(1))에서 간섭 및 잘못된 결과들을 야기할 수 있다. 따라서, SRAM(42)은, 파이프라인 기법을 이용함으로써, 보통은 도 7에서 예시된 순차적인 기법으로 가능했었을 것보다 더 짧은 시간 기간에 메모리 액세스 요청(48(1)) 및 메모리 액세스 요청(48(2))을 프로세싱할 수 있다. SRAM(42)은 (도 8에서 도시되지 않은) 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N))로 구성될 수 있다. 도 8의 두 개(2)의 메모리 액세스 요청(48(1), 48(2)) 각각은 동일하거나 상이한 데이터 엔트리들(44)을 어드레싱할 수 있다. 데이터 엔트리들(44) 각각은 또한 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 상이하거나 동일한 것들에 로케이팅될 수 있다. [0058] Still referring to FIG. 8, the bit line pre-charge signal 38 is asserted by the SRAM data array 46 at a second time for a memory access request 48 (2). The bit line pre-charge signal 38 is applied to the rising edge of the clock signal 90 used by the SRAM data array 46 to assert the word line signal 22 for the memory access request 48 (1) Is asserted at the second time, based on the rising edge of the same clock signal (90) as the clock signal (90). As discussed above, the rising edge of the clock signal 90 used by the SRAM data array 46 to assert the word line signal 22 also causes the bit corresponding to the memory access request 48 (1) And de-asserts line pre-charge signal 38. The de-assertion of the bit line pre-charge signal 38 by the SRAM data array 46, corresponding to the memory access request 48 (1), indicates that the bit line pre- To prevent access of the SRAM data array 46 by the memory access request 48 (1), as described in the discussion above. However, in this example, the SRAM 42 is configured to receive the word line signal 22 from the SRAM data array 46 by re-asserting the bit line pre-charge signal 38 by the SRAM data array 46, - Use the next rising edge of the clock signal 90 following the assertion. In this manner, the SRAM 42 is enabled to re-assert the bit line pre-charge signal 38 by the SRAM data array 46 while the word line signal 22 is asserted by the SRAM data array 46. [ , Which may cause interference and erroneous results in the memory access request 48 (1). Thus, the SRAM 42 is able to access memory access requests 48 (1) and memory access requests 48 (1) in a shorter time period than would normally be possible with the sequential scheme illustrated in FIG. 7, 48 (2). ≪ / RTI > SRAM 42 may be comprised of a plurality of SRAM data sub-arrays 50 (0) -50 (N) (not shown in FIG. 8). Each of the two (2) memory access requests 48 (1), 48 (2) in FIG. 8 may address the same or different data entries 44. Each of the data entries 44 may also be located in the same or different ones of the plurality of SRAM data sub-arrays 50 (0) -50 (N).

[0059] 이것에 관하여, 도 9는 파이프라인 방식으로 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N))의 데이터 엔트리들(44)을 어드레싱하기 위한 여덟(8)개의 메모리 액세스 요청들(48(1)-48(8))의 프로세싱과 관련되는 예시적인 신호들을 예시하는 타이밍도(120)이다. 도 9에서 예시된 신호들은 도 1 및 도 2에서 도시되며 다시 설명되지 않을 것이다. 도 8과 유사하게, 제 2 데이터 액세스 경로(54)에서 SRAM 데이터 어레이(46)의 프리-차지를 인에이블하기 위한 프리-차지 이벤트(86)는 제 1 데이터 액세스 경로(52)에서 SRAM 데이터 어레이(46)에 액세스하기 위한 액세스 이벤트(88)와 독립적이다. 여덟(8)개의 메모리 액세스 요청들(48(1)-48(8))의 각각의 것의 프로세싱은 개별적으로 동일하게 유지되며 다시 설명되지 않을 것이다. 도 9가 도 8과 유사한 파이프라인 방식으로 복수의 메모리 액세스 요청들(48(1)-48(8))의 프로세싱을 예시하지만, 도 9는 부가적으로 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N))에 걸친 프로세싱을 예시한다. In this regard, FIG. 9 shows eight (8) memories for addressing the data entries 44 of the plurality of SRAM data sub-arrays 50 (0) -50 (N) in a pipelined manner. Is a timing diagram 120 illustrating exemplary signals associated with processing access requests 48 (1) -48 (8). The signals illustrated in Figure 9 are shown in Figures 1 and 2 and will not be described again. Similar to Figure 8, the pre-charge event 86 for enabling pre-charging of the SRAM data array 46 in the second data access path 54 is transferred to the SRAM data array 52 in the first data access path 52, Lt; RTI ID = 0.0 > 88 < / RTI > The processing of each of the eight (8) memory access requests 48 (1) -48 (8) will remain the same individually and will not be described again. Figure 9 illustrates the processing of a plurality of memory access requests 48 (1) -48 (8) in a pipelined manner similar to Figure 8, but Figure 9 additionally illustrates processing of a plurality of SRAM data sub-arrays 50 (0) -50 (N). ≪ / RTI >

[0060] 도 9를 계속 참조하면, 도 2의 프리-차지 인덱스(68)는 비-제한적인 예로서, 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 어느 것이 클록 신호(90)의 다음 상승 에지 상에서 프리-차지될지를 표시하도록 제공된다. 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N))은, SRAM 데이터 서브-어레이들(50(0)-50(N))의 프리-차지가 메모리 액세스 이전에 완료되면 클록 신호(90)의 하강 에지 상에서 또한 프리-차지될 수 있다. 이 예에서, 메모리 액세스 요청(48(1))은 메모리 액세스 요청(48(1))의 데이터 엔트리 어드레스(58)에 대응하는 데이터 엔트리(44)에 액세스하기 위해 프리-차지 회로(66)(도시되지 않음)에 의해 프로세싱된다. 이 비-제한적인 예에서, 프리-차지 회로(66)는 3비트들의 프리-차지 인덱스(68)를 생성한다. 3비트들의 프리-차지 인덱스(68)는 프리-차지 회로(66)가 프리-차지를 위해 가능한 여덟(8)개의 SRAM 데이터 서브-어레이들(50(0)-50(7)) 중 하나를 식별하도록 허용한다. 이 예에서, 메모리 액세스 요청(48(1))은 SRAM 데이터 서브-어레이(50(7))에 로케이팅되는 데이터 엔트리 어드레스(58)를 포함하고, 그에 따라, 프리-차지 인덱스(68)는 프리-차지 회로(66)에 의해 모든 비트들이 어서트되게 한다. 모든 비트들이 어서트되는 3비트들의 프리-차지 인덱스(68)는 프리-차지 인덱스(68)로서 "111"의 이진 값을 발생시킨다. 이 이진 값을 "7"의 10진수 값으로 컨버팅하는 것은, SRAM 데이터 서브-어레이(50(7))가 SRAM 데이터 어레이(46)에 의해 프리-차지될 것임을 나타낸다. 프리-차지 인덱스(68)가 제공되는 동시에, 프리-차지 인에이블(70)이 프리-차지 회로(66)에 의해 어서트된다. 프리-차지 인에이블(70)은 프리-차지 인덱스(68)가 프리-차지 회로(66)에 의해 출력되었음을 SRAM 데이터 어레이(46)에 나타낸다. 위에서 설명된 바와 같이, 프리-차지 인에이블(70)의 어서션에 기초하여, SRAM 데이터 어레이(46)는 클록 신호(90)의 다음 상승 클록 에지 상에서 SRAM 데이터 서브-어레이(50(7))에 대한 프리-차지를 활성화하는 비트라인 프리-차지 신호(38)를 어서트한다. 이 예에서, 클록 신호(90)의 각각의 상승 에지는 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 하나에서의 SRAM 데이터 어레이(46)에 의한 비트라인 프리-차지 신호(38)의 어서션을 개시할 수 있다. [0060] With continuing reference to FIG. 9, the pre-charge index 68 of FIG. 2 shows, as a non-limiting example, which of the plurality of SRAM data sub-arrays 50 (0) -50 (N) To be pre-charged on the next rising edge of the clock signal 90. The plurality of SRAM data sub-arrays 50 (0) -50 (N) are configured such that the pre-charge of the SRAM data sub-arrays 50 (0) -50 (N) Can also be pre-charged on the falling edge of signal 90. In this example, the memory access request 48 (1) includes pre-charge circuit 66 (1) to access the data entry 44 corresponding to the data entry address 58 of the memory access request 48 Not shown). In this non-limiting example, the pre-charge circuit 66 generates a pre-charge index 68 of three bits. The three-bit pre-charge index 68 allows one of the eight (8) SRAM data sub-arrays 50 (0) -50 (7) to be pre- . In this example, the memory access request 48 (1) includes a data entry address 58 that is located in the SRAM data sub-array 50 (7), so that the pre-charge index 68 And all bits are asserted by the pre-charge circuit 66. The pre-charge index 68 of the three bits asserted by all the bits generates a binary value of "111 " as the pre-charge index 68. Converting this binary value to a decimal value of "7" indicates that the SRAM data sub-array 50 (7) will be pre-charged by the SRAM data array 46. The pre-charge index 68 is provided, while the pre-charge enable 70 is asserted by the pre-charge circuit 66. The pre-charge enable 70 indicates to the SRAM data array 46 that the pre-charge index 68 has been output by the pre-charge circuit 66. As described above, based on the assertion of the pre-charge enable 70, the SRAM data array 46 is coupled to the SRAM data sub-array 50 (7) on the next rising clock edge of the clock signal 90 And asserts the bit line pre-charge signal 38 to activate pre-charge for the bit line. In this example, each rising edge of the clock signal 90 is coupled to a bit line pre-charge by the SRAM data array 46 in one of the plurality of SRAM data sub-arrays 50 (0) -50 (N) The assertion of the charge signal 38 can be initiated.

[0061] 도 9를 계속 참조하면, SRAM 데이터 서브-어레이들(50(0)-50(M))에 대응하는 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 어서션은 비트라인 프리-차지 신호(38)를 디-어서트하고 메모리 액세스 요청(48(1)-48(8))에 대응하는 데이터 엔트리(44)에 대한 액세스를 활성화할 것이다. 워드라인 신호(22)는 몇 개의 클로킹 방식들에 기초하여 SRAM 데이터 어레이(46)에 의해 디-어서트될 수 있다. 이 예에서, 클록 신호(90)의 각각의 상승 에지는 또한, 상이한 SRAM 데이터 서브-어레이(50)에 대한 상이한 메모리 액세스 요청(48)에 대응하는 비트라인 프리-차지 신호(38)의 어서션과 동시에, 복수의 SRAM 데이터 서브-어레이들(50(0)-50(N)) 중 다른 하나에서 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 어서션을 개시할 수 있다. 워드라인 신호(22)의 디-어서션은 복수의 클로킹 방식들로 선택적인 자기-타이밍 클록 회로(100)(도시되지 않음)에 의해 또는 SRAM 데이터 어레이(46)에 의해 수행될 수 있다. 9, the assertion of the word line signal 22 by the SRAM data array 46 corresponding to the SRAM data sub-arrays 50 (0) -50 (M) - de-assert the charge signal 38 and activate access to the data entry 44 corresponding to the memory access request 48 (1) -48 (8). The word line signal 22 may be de-asserted by the SRAM data array 46 based on several clocking schemes. In this example, each rising edge of the clock signal 90 is also coupled to an assertion of the bit line pre-charge signal 38 corresponding to a different memory access request 48 for the different SRAM data sub- At the same time, an assertion of the word line signal 22 by the SRAM data array 46 at the other of the plurality of SRAM data sub-arrays 50 (0) -50 (N) may be initiated. The de-assertion of the word line signal 22 may be performed by the optional self-timing clock circuit 100 (not shown) in a plurality of clocking schemes or by the SRAM data array 46.

[0062] 이것에 관하여, 도 10은 클록 신호(90)의 상승 에지에 기초한(이른바 위상-기반 클로킹 방식) SRAM 데이터 어레이(46)에 의한 워드라인 신호(22) 어서션의 제어에 관련되는 액세스 이벤트(88)에 대한 신호들의 예시적인 타이밍을 예시하는 타이밍도(122)이다. 이 예에서, 단일 메모리 액세스 요청(48)의 제 1 데이터 액세스 경로(52)에서 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22) 어서션만이 예시된다. 도 10의 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22) 어서션을 제어하기 위한 예시된 방식은 위에서 설명된 타이밍 예들 각각에서 이용될 수 있다. 위상-기반 클로킹 방식에서, 메모리 액세스 로직 회로(56)에 의해 어서트되는 어레이 인에이블(62)을 통해, SRAM 데이터 어레이(46)는 워드라인 신호(22)를 어서트하고 클록 신호(90)의 동일한 상승 클록 에지 상에서 비트라인 프리-차지 신호(38)를 디-어서트할 것이다. 비트라인 프리-차지 신호(38)는 위에서 설명된 바와 같이 SRAM 데이터 어레이(46)에 의한 데이터 엔트리(44)의 액세스를 간섭하지 않도록 SRAM 데이터 어레이(46)에 의해 디-어서트된다. SRAM 데이터 어레이(46)에 대한 액세스는 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 디-어서션 때까지 활성화된 채로 유지될 것이다. 위상-기반 클로킹 방식으로 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 디-어서션은 워드라인 신호(22)의 어서션에 이어 클록 신호(90)의 다음 하강 에지 상에서 발생한다. 비트라인 프리-차지 신호(38)는, 워드라인 신호(22)가 SRAM 데이터 어레이(46)에 의해 어서트될 때 SRAM 데이터 어레이(46)에 의해 디-어서트되고, 비트라인 프리-차지 신호(38)는, 다음 메모리 액세스 요청(48) 때까지, 달리 플로팅 상태로 불리는 디-어서트 상태로 유지될 수 있다. 위상-기반 클로킹 방식은, 클록 신호(90)의 하강 에지가 워드라인 신호(22)를 디-어서트하도록 SRAM 데이터 어레이(46)에 지시 또는 제어하도록 허용한다. In this regard, FIG. 10 illustrates an access event (not shown) associated with the control of the word line signal 22 assertion by the SRAM data array 46 (so called phase-based clocking scheme) based on the rising edge of the clock signal 90 Lt; / RTI > is a timing diagram 122 illustrating an exemplary timing of the signals for signal 88 in Fig. In this example, only the word line signal 22 assertion by the SRAM data array 46 in the first data access path 52 of the single memory access request 48 is illustrated. The illustrated scheme for controlling the word line signal 22 assertion by the SRAM data array 46 of FIG. 10 may be used in each of the timing examples described above. In the phase-based clocking scheme, through the array enable 62 asserted by the memory access logic circuit 56, the SRAM data array 46 asserts the word line signal 22 and outputs the clock signal 90, Will pre-charge the bitline pre-charge signal 38 on the same rising clock edge of the bitline pre-charge signal 38. The bitline pre-charge signal 38 is de-asserted by the SRAM data array 46 so as not to interfere with the access of the data entry 44 by the SRAM data array 46 as described above. The access to the SRAM data array 46 will remain active until the de-assertion of the word line signal 22 by the SRAM data array 46. [ The de-assertion of the word line signal 22 by the SRAM data array 46 in a phase-based clocking manner occurs on the next falling edge of the clock signal 90 following the assertion of the word line signal 22. The bit line pre-charge signal 38 is de-asserted by the SRAM data array 46 when the word line signal 22 is asserted by the SRAM data array 46 and the bit line pre- The memory 38 may remain in a de-asserted state, otherwise called a floating state, until the next memory access request 48. [ The phase-based clocking scheme allows the falling edge of the clock signal 90 to instruct or control the SRAM data array 46 to de-assert the word line signal 22. [

[0063] 클록 신호(90)가 SRAM(42)의 동작에 대해 특정된 것보다 더 빠른 주파수로 동작하는 설계들에서, SRAM 데이터 어레이(46)는 클록 신호(90)의 하강 에지에 독립적으로 워드라인 신호(22)를 제어할 수 있는 것이 가능하다. 이것에 관하여, 도 11은 선택적인 자기-타이밍 제어 방식에 기초한 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22) 어서션의 제어에 관련된 액세스 이벤트(88)에 대한 신호들의 예시적인 타이밍을 예시하는 타이밍도(124)이다. 도 11에서 SRAM 데이터 어레이에 의한 워드라인 신호(22) 어서션을 제어하기 위한 예시된 기법은 위에서 설명된 타이밍 예들 각각에서 이용될 수 있다. 선택적인 자기-타이밍 제어 방식에서, SRAM 데이터 어레이(46)는 워드라인 신호(22)를 디-어서트하고 미리-세팅되거나 다른 방식으로 프로그래밍된 값에 기초하여 비트라인 프리-차지 신호(38)를 재-어서트하도록 도 5의 선택적인 자기-타이밍 클록 회로(100)(도시되지 않음)를 이용한다. 선택적인 자기-타이밍 클록 회로(100)는 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22)의 어서션과 더불어 SRAM 데이터 어레이(46)에 의해 활성화된다. 선택적인 자기-타이밍 클록 회로(100)는 워드라인 신호(22)를 디-어서트하기 이전에 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 적절히 액세스하기에 충분한 시간을 허용한다. 선택적인 자기-타이밍 클록 회로(100)는 선택적으로, 후속 메모리 액세스 요청(48)이 SRAM 데이터 어레이(46)에 대한 액세스를 요청하는 경우 SRAM 데이터 어레이(46)에 의해 비트라인 프리-차지 신호(38)를 재-어서트할 것이다. 선택적인 자기-타이밍 클록 회로(100)는 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기에 충분한 시간을 보장하도록 클록 신호(90) 주파수가 매우 빠른 경우 제공될 수 있다. In designs where the clock signal 90 is operating at a frequency faster than that specified for the operation of the SRAM 42, the SRAM data array 46 is independent of the falling edge of the clock signal 90, It is possible to control the line signal 22. In this regard, FIG. 11 illustrates exemplary timing of signals for an access event 88 associated with control of the word line signal 22 assertion by the SRAM data array 46 based on a selective self-timing control scheme Timing diagram 124. FIG. An exemplary technique for controlling the word line signal 22 assertion by the SRAM data array in FIG. 11 can be used in each of the timing examples described above. In an optional self-timing control scheme, the SRAM data array 46 de-asserts the word line signal 22 and generates a bit line pre-charge signal 38 based on pre- Timing clock circuit 100 (not shown) of Fig. 5 to re-assert the self-timing clock signal. The optional self-timing clock circuit 100 is activated by the SRAM data array 46 with the assertion of the word line signal 22 by the SRAM data array 46. The optional self-timing clock circuit 100 allows sufficient time to properly access the data entry 44 of the SRAM data array 46 prior to de-asserting the word line signal 22. [ The optional self-timing clock circuit 100 optionally includes a bit line pre-charge signal (not shown) by the SRAM data array 46 when a subsequent memory access request 48 requests access to the SRAM data array 46 38). The optional self-timing clock circuit 100 is configured to provide the clock signal 90 with a very fast frequency so that sufficient time is available to access the data entry 44 of the SRAM data array 46 corresponding to the memory access request 48. [ Can be provided.

[0064] SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하고 SRAM 데이터 어레이(46)에 의해 비트라인 프리-차지 신호(38)를 재-어서트하는데 필요한 총 시간보다 짧은 클록 기간들과 관련되는 클록 신호(90) 주파수를 제공하는 것이 또한 요구될 수 있다. 이것에 관하여, 도 12는 다수의 클록 사이클들에 걸친 선택적인 자기-타이밍, 자기-리셋 제어 방식에 기초하여 SRAM 데이터 어레이(46)에 의한 워드라인 신호(22) 어서션의 제어와 관련된 액세스 이벤트(88)에 대한 신호들의 예시적인 타이밍을 예시하는 타이밍도(126)이다. 도 12의 SRAM 데이터 어레이(46)에 의해 워드라인 신호(22) 어서션을 제어하기 위한 예시된 방식은 위에서 설명된 타이밍 예들 각각에서 이용될 수 있다. 선택적인 자기-타이밍, 자기-리셋 제어 방식에서, SRAM 데이터 어레이(46)는 사전-세팅되거나 프로그래밍된 값에 기초하여 워드라인 신호(22)를 디-어서트하고 비트라인 프리-차지 신호(38)를 선택적으로 재-어서트하기 위해 도 5의 선택적인 자기-타이밍 클록 회로(100)(도시되지 않음)를 이용한다. 선택적인 자기-타이밍 자기-리셋 제어 방식은, 선택적인 자기-타이밍 클록 회로(100)가 SRAM 데이터 어레이(46)의 후속 메모리 액세스 요청(48)을 허용하기에 충분히 빨리 리셋될 수 없는 경우 제공될 수 있다. 이는 SRAM 데이터 어레이(46)에 의한 액세스가 다수의 클록 사이클들에 걸쳐 발생하고 클록 기간이 메모리 액세스 요청(48)에 대응하는 SRAM 데이터 어레이(46)의 데이터 엔트리(44)에 액세스하기에 충분한 시간을 보장하기에 충분히 길지 않은 타이밍 시나리오들을 포함할 수 있다. 위에서 설명된 자기-클로킹 방식과 유사하게, 하나의 액세스로부터 다음까지 SRAM 데이터 어레이(46)에 액세스하고 비트라인(26) 및 비트라인 보완(28)을 또한 프리-차지하도록 허용되는 충분한 시간이 있어야 한다는 것이 주의되어야 한다. 그러나 선택적인 자기-타이밍, 자기-리셋 클록 방식은, SRAM 데이터 어레이(46)가 워드라인 신호(22)를 디-어서트하고 후속 메모리 액세스 요청(48)에 대비하여 비트라인 프리-차지 신호(38)를 재-어서트할 때 선택적인 자기-타이밍 클록 회로(100)가 스스로 리셋하게 하는 방식이다. 선택적인 자기-타이밍 클록 회로(100)는 SRAM 데이터 어레이(46)에 의해 리셋되는 선택적인 자기-타이밍 클록 회로(100)에 대조적으로 스스로 리셋한다. [0064] Clock periods shorter than the total time required to access the data entry 44 of the SRAM data array 46 and re-assert the bit line pre-charge signal 38 by the SRAM data array 46 It may also be required to provide an associated clock signal 90 frequency. In this regard, FIG. 12 illustrates an example of an access event (FIG. 12) associated with the control of the word line signal 22 assertion by the SRAM data array 46 based on a selective self-timing, self-reset control scheme across multiple clock cycles 88). ≪ / RTI > The illustrated scheme for controlling the word line signal 22 assertion by the SRAM data array 46 of FIG. 12 can be used in each of the timing examples described above. In an optional self-timing, self-reset control scheme, the SRAM data array 46 de-asserts the word line signal 22 based on a pre-set or programmed value and generates a bit line pre-charge signal 38 Timing clock circuit 100 (not shown) of FIGURE 5 to selectively re-assert the clock signal < RTI ID = 0.0 > The optional self-timing self-reset control scheme is provided when the optional self-timing clock circuit 100 can not be reset as fast enough to allow a subsequent memory access request 48 of the SRAM data array 46 . This means that the access by the SRAM data array 46 occurs over a number of clock cycles and the time period sufficient to access the data entry 44 of the SRAM data array 46 corresponding to the memory access request 48 Lt; RTI ID = 0.0 > and / or < / RTI > Similar to the self-clocking scheme described above, there must be sufficient time to access the SRAM data array 46 from one access to the next and also to pre-charge the bit line 26 and bit line supplement 28 . However, the optional self-timing, self-reset clock scheme allows the SRAM data array 46 to de-assert the word line signal 22 and to generate a bit line pre-charge signal (" Timing clock circuit 100 itself upon reset-assertion of the self-timing clock circuitry 38 of FIG. The optional self-timing clock circuit 100 itself resets, in contrast to the optional self-timing clock circuit 100, which is reset by the SRAM data array 46.

[0065] 본 명세서에서 개시된 실시예들에 따라 누설 전력을 감소시키기 위해 데이터 액세스 이전에 SRAM의 비트라인들을 프리-차지하는 것 및 관련된 시스템들 및 방법들은 임의의 프로세서-기반 디바이스에서 제공되거나 이들 내로 통합될 수 있다. 예들은 제한 없이, 셋톱 박스, 엔터테인먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 고정 위치 데이터 유닛, 이동 위치 데이터 유닛, 모바일 전화, 셀룰러 전화, 컴퓨터, 휴대용 컴퓨터, 데스크톱 컴퓨터, 개인용 디지털 보조기기(PDA), 모니터, 컴퓨터 모니터, 텔레비전, 튜너, 라디오, 위성 라디오, 음악 재생기, 디지털 음악 재생기, 휴대용 음악 재생기, 디지털 비디오 재생기, 비디오 재생기, 디지털 비디오 디스크(DVD) 재생기, 및 휴대용 디지털 비디오 재생기를 포함한다. [0065] Pre-charging the bit lines of the SRAM prior to data access to reduce leakage power in accordance with the embodiments disclosed herein and related systems and methods are provided in or integrated into any processor- . Examples include, without limitation, a set top box, an entertainment unit, a navigation device, a communication device, a fixed location data unit, a mobile location data unit, a mobile telephone, a cellular telephone, a computer, a portable computer, a desktop computer, a personal digital assistant , A computer monitor, a television, a tuner, a radio, a satellite radio, a music player, a digital music player, a portable music player, a digital video player, a video player, a digital video disk (DVD) player, and a portable digital video player.

[0066] 이것에 관하여, 도 13은 본 명세서에서 개시된 SRAM(42) 및 SRAM(42')에서 누설 전력을 감소시키기 위해 데이터 엔트리 액세스 이전에 SRAM 데이터 어레이를 프리-차지하는 시스템들 및 방법들을 이용할 수 있는 프로세서-기반 시스템(128)의 예를 예시한다. 이 예에서, 프로세서-기반 시스템(128)은 각각이 하나 이상의 프로세서들(132)을 포함하는 하나 이상의 CPU들(130)을 포함한다. CPU(들)(130)은 임시로 저장된 데이터에 대한 빠른 액세스를 위해 프로세서(들)(132)에 커플링되는 캐시 메모리(134)를 갖는다. CPU(들)(130)은 시스템 버스(136)에 커플링되고 프로세서-기반 시스템(128)에 포함된 마스터 및 슬래이브 디바이스들을 서로 커플링할 수 있다. 잘 알려진 바와 같이, CPU(들)(130)은 시스템 버스(136)를 통해 어드레스, 제어 및 데이터 정보를 교환함으로써 이들 다른 디바이스들과 통신한다. 예를 들어, CPU(들)(130)은 버스 트랜잭션 요청들을, 슬래이브 디바이스의 일 예로서 메모리 제어기(138)에 통신할 수 있다. 도 13에서 예시되지 않았지만, 다수의 시스템 버스들(136)이 제공될 수 있으며, 여기서 각각의 시스템 버스(136)은 상이한 패프릭을 구성한다. [0066] In this regard, FIG. 13 may utilize systems and methods that pre-occupy the SRAM data array prior to data entry access to reduce leakage power in the SRAM 42 and SRAM 42 'disclosed herein Lt; RTI ID = 0.0 > 128 < / RTI > In this example, the processor-based system 128 includes one or more CPUs 130, each of which includes one or more processors 132. The CPU (s) 130 have a cache memory 134 coupled to the processor (s) 132 for quick access to the temporarily stored data. The CPU (s) 130 may couple the master and slave devices coupled to the system bus 136 and included in the processor-based system 128 to each other. As is well known, the CPU (s) 130 communicate with these other devices by exchanging address, control, and data information over the system bus 136. For example, the CPU (s) 130 may communicate bus transaction requests to the memory controller 138 as an example of a slave device. Although not illustrated in FIG. 13, a number of system buses 136 may be provided, where each system bus 136 constitutes a different circuit.

[0067] 다른 마스터 및 슬래이브 디바이스들은 시스템 버스(136)에 연결될 수 있다. 도 13에 예시된 바와 같이, 이러한 디바이스들은 예들로서, 메모리 시스템(140), 하나 이상의 입력 디바이스들(142), 하나 이상의 출력 디바이스들(144), 하나 이상의 네트워크 인터페이스 디바이스들(146) 및 하나 이상의 디스플레이 제어기들(148)을 포함할 수 있다. 입력 디바이스(들)(142)는 입력 키들, 스위치들, 음성 프로세서들 등을 포함하는(그러나, 이것들로 제한되지 않음) 임의의 타입의 입력 디바이스를 포함할 수 있다. 출력 디바이스(들)(144)는 오디오, 비디오, 다른 시각적 표시자들 등을 포함하는(그러나, 이것들로 제한되지 않음) 임의의 타입의 출력 디바이스를 포함할 수 있다. 네트워크 인터페이스 디바이스(들)(146)은 네트워크(150)로의 그리고 네트워크(150)로부터의 데이터의 교환을 허용하도록 구성되는 임의의 디바이스일 수 있다. 네트워크(150)는 유선 또는 무선 네트워크, 사설 또는 공공 네트워크, 로컬 영역 네트워크(LAN), WLAN(wide local area network) 및 인터넷을 포함하는(그러나, 이것들로 제한되지 않음) 임의의 타입의 네트워크일 수 있다. 네트워크 인터페이스 디바이스(들)(146)은 원하는 임의의 타입의 통신 프로토콜을 지원하도록 구성될 수 있다. 메모리 시스템(140)은 하나 또는 그 초과의 메모리 유닛들(152(0-N))을 포함할 수 있다. [0067] Other master and slave devices may be coupled to the system bus 136. As illustrated in Figure 13, these devices include, by way of example, memory system 140, one or more input devices 142, one or more output devices 144, one or more network interface devices 146, And display controllers 148. [ The input device (s) 142 may include any type of input device, including, but not limited to, input keys, switches, voice processors, and the like. Output device (s) 144 may include any type of output device, including, but not limited to, audio, video, other visual indicators, The network interface device (s) 146 may be any device configured to allow exchange of data to and from the network 150. [ The network 150 may be any type of network including, but not limited to, a wired or wireless network, a private or public network, a local area network (LAN), a wide local area network (WLAN) have. The network interface device (s) 146 may be configured to support any type of communication protocol desired. Memory system 140 may include one or more memory units 152 (0-N).

[0068] CPU(들)(130)은 또한, 하나 이상의 디스플레이들(154)에 전송된 정보를 제어하기 위해서 시스템 버스(136)을 통해 디스플레이 제어기(들)(148)에 액세스하도록 구성될 수 있다. 디스플레이 제어기(들)(148)는 디스플레이될 정보를 디스플레이(들)(154)에 적합한 포맷으로 프로세싱하는 하나 이상의 비디오 프로세서들(156)을 통해 디스플레이될 정보를 디스플레이(들)(154)에 전송한다. 디스플레이(들)(154)는 음극선관(CRT: cathode ray tube), 액정 디스플레이(LCD: liquid crystal display), 플라스마 디스플레이 등을 포함하는(그러나, 이것들로 제한되지 않음) 임의의 타입의 디스플레이를 포함할 수 있다. The CPU (s) 130 may also be configured to access the display controller (s) 148 via the system bus 136 to control information transmitted to the one or more displays 154 . Display controller 148 transmits information to be displayed to display (s) 154 via one or more video processors 156 that process the information to be displayed into a format suitable for display (s) 154 . Display (s) 154 include any type of display including, but not limited to, a cathode ray tube (CRT), a liquid crystal display (LCD), a plasma display, can do.

[0069] 당업자는 본 명세서에 개시되는 실시예들과 관련하여 설명되는 다양한 예시적인 논리 블록들, 모듈들, 회로들 및 알고리즘들이 전자 하드웨어, 메모리 또는 다른 컴퓨터 판독 가능한 매체에 저장되어 프로세서 또는 다른 프로세싱 디바이스에 의해 실행되는 명령들, 또는 이 둘의 조합들로서 구현될 수 있다는 것을 추가로 인식할 것이다. 본 명세서에서 설명되는 마스터 디바이스들 및 슬래브 디바이스들은 예들로서 임의의 회로, 하드웨어 컴포넌트, 집적 회로(IC), 또는 IC 칩에서 이용될 수 있다. 본 명세서에 개시되는 메모리는 임의의 타입 및 크기의 메모리일 수 있으며, 원하는 임의의 타입의 정보를 저장하도록 구성될 수 있다. 이러한 상호교환가능성을 명백하게 예시하기 위해서, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 일반적으로 그들의 기능에 관하여 위에서 설명되었다. 이러한 기능이 어떻게 구현되는지는 특정 애플리케이션, 설계 선택들 및/또는 전체 시스템에 부과되는 설계 제약들에 의존한다. 당업자들은 각각의 특정 애플리케이션에 대하여 다양한 방식들로, 설명된 기능을 구현할 수 있지만, 이러한 구현 결정들이 본 개시의 범위로부터의 이탈을 야기하게 하는 것으로 해석되어서는 안 된다. [0069] Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits and algorithms described in connection with the embodiments disclosed herein may be implemented within a computer-readable medium such as a memory, Or instructions executed by the device, or combinations of the two. The master devices and slave devices described herein may be used in any circuit, hardware component, integrated circuit (IC), or IC chip as an example. The memories disclosed herein may be any type and size of memory and may be configured to store any type of information desired. To clearly illustrate this interchangeability, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. How this functionality is implemented depends on the particular application, design choices, and / or design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

[0070] 본 명세서에 개시되는 실시예들과 관련하여 설명되는 다양한 예시적인 논리 블록들, 모듈들 및 회로들은 프로세서, DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit), FPGA(Field-Programmable Gate Array) 또는 다른 프로그래밍 가능한 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본 명세서에 설명되는 기능들을 수행하도록 설계되는 이들의 임의의 조합으로 구현 또는 수행될 수 있다. 프로세서는 마이크로프로세서일 수 있지만 대안적으로, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기 또는 상태 머신일 수 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들어, DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성으로 구현될 수 있다. [0070] The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field- Gate Array) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented in a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.

[0071] 본 명세서에 개시되는 실시예들은 하드웨어에 저장된 명령들에서 그리고 하드웨어에서 구현될 수 있으며, 예를 들어, 랜덤 액세스 메모리(RAM), 플래쉬 메모리, 판독 전용 메모리(ROM), 전기적 프로그래밍 가능한 ROM(EPROM), 전기적 삭제 가능한 프로그래밍 가능한 ROM(EEPROM), 레지스터들, 하드 디스크, 이동식(removable) 디스크, CD-ROM 또는 당해 기술분야에 알려져 있는 임의의 다른 형태의 컴퓨터 판독 가능한 매체 내에 상주할 수 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있도록 프로세서에 커플링된다. 대안적으로, 저장 매체는 프로세서에 통합될 수 있다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수 있다. ASIC는 원격국 내에 상주할 수 있다. 대안적으로, 프로세서 및 저장 매체는 원격국, 기지국 또는 서버에 개별 컴포넌트들로서 상주할 수 있다.[0071] The embodiments disclosed herein may be implemented in hardware and stored in hardware, for example, in a random access memory (RAM), flash memory, read only memory (ROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), registers, a hard disk, a removable disk, a CD-ROM, or any other form of computer readable medium known in the art . An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. Alternatively, the storage medium may be integrated into the processor. The processor and the storage medium may reside within an ASIC. The ASIC may reside within the remote station. Alternatively, the processor and the storage medium may reside as discrete components in a remote station, a base station, or a server.

[0072] 또한, 본 명세서에서의 예시적인 실시예들 중 임의의 것에서 설명되는 동작 단계들이 예들 및 논의를 제공하기 위해서 설명된다는 점에 주목하여야 한다. 설명되는 동작들은 예시되는 시퀀스들 외에 다수의 상이한 시퀀스들에서 수행될 수 있다. 또한, 단일 동작 단계에서 설명되는 동작들은 실제로 다수의 상이한 단계들에서 수행될 수 있다. 추가적으로, 예시적인 실시예들에서 논의되는 하나 이상의 동작 단계들이 조합될 수 있다. 흐름도들에 예시되는 동작 단계들은 당업자에게 용이하게 명백할 것과 같이 다수의 상이한 변경들이 취해질 수 있다는 것이 이해될 것이다. 당업자는 또한 정보 및 신호들이 다양한 상이한 기술들 및 기법들 중 임의의 것을 사용하여 표현될 수 있다는 것을 이해할 것이다. 예를 들어, 위의 설명의 전체에 걸쳐 참조될 수 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 자기장들 또는 입자들, 광 필드들 또는 입자들 또는 이들의 임의의 조합으로 표현될 수 있다. [0072] It should also be noted that the operational steps described in any of the exemplary embodiments herein are described to provide examples and discussion. The operations described may be performed in a number of different sequences besides the sequences illustrated. Further, the operations described in the single operation step may actually be performed in a number of different steps. Additionally, one or more operational steps discussed in the exemplary embodiments may be combined. It will be appreciated that the operating steps illustrated in the flowcharts can be made by a number of different modifications as will be readily apparent to those skilled in the art. Those skilled in the art will also appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may refer to voltages, currents, electromagnetic waves, , Light fields or particles, or any combination thereof.

[0073] 본 개시의 이전의 설명은 임의의 당업자가 본 개시를 실시하거나 또는 이용할 수 있도록 제공된다. 본 개시에 대한 다양한 변경들은 당업자들에게 용이하게 명백할 것이고, 본 명세서에서 정의되는 일반적인 원리들은 본 개시의 사상 또는 범위로부터 벗어나지 않고 다른 변화들에 적용될 수 있다. 따라서, 본 개시는 본 명세서에 설명되는 예들 및 설계들에 한정되는 것으로 의도된 것이 아니라, 본 명세서에 개시되는 원리들 및 신규한 특징들과 일치하는 가장 넓은 범위를 따를 것이다.[0073] The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Accordingly, this disclosure is not intended to be limited to the examples and designs described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (30)

SRAM(static random access memory)으로서,
제 1 데이터 액세스 경로에 제공되는 메모리 액세스 로직 회로; 및
상기 제 1 데이터 액세스 경로와 별개의 제 2 데이터 액세스 경로에 제공되는 프리-차지 회로를 포함하고,
상기 메모리 액세스 로직 회로는,
상기 제 1 데이터 액세스 경로에서 SRAM 데이터 어레이의 데이터 엔트리를 어드레싱하기 위해 메모리 액세스 요청의 데이터 엔트리 어드레스를 수신하도록; 그리고
수신된 데이터 엔트리 어드레스에 대응하는 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 위해 상기 SRAM 데이터 어레이를 인덱싱하도록 상기 제 1 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 데이터 인덱스를 생성하도록 구성되고,
상기 프리-차지 회로는, 상기 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에,
상기 제 2 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하도록; 그리고
상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 프리-차지 인에이블(pre-charge enable)을 생성하도록 구성되는,
SRAM.
A static random access memory (SRAM)
A memory access logic circuit provided in a first data access path; And
And a pre-charge circuit provided in a second data access path separate from the first data access path,
The memory access logic circuit comprising:
Receive a data entry address of a memory access request to address a data entry of the SRAM data array in the first data access path; And
And to generate a data index based on the received data entry address in the first data access path to index the SRAM data array to access a data entry of the SRAM data array corresponding to the received data entry address,
The pre-charge circuit, prior to accessing the data entry of the SRAM data array,
Receive a data entry address in the second data access path; And
A pre-charge enable for at least a portion of the SRAM data array based on the received data entry address in the second data access path to pre-charge at least a portion of the SRAM data array Lt; / RTI >
SRAM.
제 1 항에 있어서,
상기 SRAM 데이터 어레이는,
복수의 SRAM 데이터 서브-어레이들을 포함하는,
SRAM.
The method according to claim 1,
The SRAM data array includes:
A plurality of SRAM data sub-arrays,
SRAM.
제 2 항에 있어서,
상기 프리-차지 회로는,
상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 복수의 SRAM 데이터 서브-어레이들 각각에 대해 프리-차지 인에이블을 생성하도록 구성되는,
SRAM.
3. The method of claim 2,
The pre-charge circuit comprises:
And generate a pre-charge enable for each of the plurality of SRAM data sub-arrays based on the received data entry address.
SRAM.
제 2 항에 있어서,
상기 프리-차지 회로는,
상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 복수의 SRAM 데이터 서브-어레이들로부터 SRAM 데이터 서브-어레이 위치를 나타내는 출력으로서 프리-차지 인덱스를 생성하도록 구성되는,
SRAM.
3. The method of claim 2,
The pre-charge circuit comprises:
And to generate a pre-charge index as an output indicative of an SRAM data sub-array location from the plurality of SRAM data sub-arrays based on the received data entry address.
SRAM.
제 1 항에 있어서,
워드라인 신호의 어서트에 기초하여 상기 SRAM 데이터 어레이에 대한 비트라인 프리-차지 신호를 디스에이블하도록 구성되는,
SRAM.
The method according to claim 1,
Charge signal for the SRAM data array based on an assertion of a word line signal,
SRAM.
제 1 항에 있어서,
상기 메모리 액세스 로직 회로는 추가로,
상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 데이터 엔트리를 인덱싱하기 위한 태그 어레이를 포함하는,
SRAM.
The method according to claim 1,
The memory access logic circuit may further comprise:
And a tag array for indexing the data entry based on the received data entry address.
SRAM.
제 6 항에 있어서,
상기 SRAM 데이터 어레이는 복수의 SRAM 데이터 서브-어레이들을 포함하는,
SRAM.
The method according to claim 6,
The SRAM data array includes a plurality of SRAM data sub-arrays.
SRAM.
제 6 항에 있어서,
상기 프리-차지 회로는,
상기 수신된 데이터 엔트리 어드레스에 기초하여 복수의 SRAM 데이터 서브-어레이들 각각에 대한 프리-차지 인에이블을 생성하도록 구성되는,
SRAM.
The method according to claim 6,
The pre-charge circuit comprises:
And to generate a pre-charge enable for each of a plurality of SRAM data sub-arrays based on the received data entry address.
SRAM.
제 6 항에 있어서,
상기 프리-차지 회로는,
상기 수신된 데이터 엔트리 어드레스에 기초하여 복수의 SRAM 데이터 서브-어레이들로부터 SRAM 데이터 서브-어레이 위치를 나타내는 출력으로서 프리-차지 인덱스를 생성하도록 구성되는,
SRAM.
The method according to claim 6,
The pre-charge circuit comprises:
And to generate a pre-charge index as an output indicative of an SRAM data sub-array location from a plurality of SRAM data sub-arrays based on the received data entry address.
SRAM.
제 6 항에 있어서,
워드라인 신호를 어서트(assert)하는 것에 기초하여 상기 SRAM 데이터 어레이에 대한 비트라인 프리-차지 신호를 디스에이블하도록 구성되는,
SRAM.
The method according to claim 6,
Charge signal for the SRAM data array based on assertion of a word line signal,
SRAM.
제 6 항에 있어서,
상기 메모리 액세스 요청에 대한 클록 신호 및 상기 프리-차지 인에이블의 어서션 시에 비트라인 프리-차지 신호를 생성하도록 구성되는,
SRAM.
The method according to claim 6,
A clock signal for the memory access request and a bit line pre-charge signal upon assertion of the pre-charge enable,
SRAM.
제 11 항에 있어서,
상기 프리-차지 회로는,
상기 SRAM 데이터 어레이를 프리-차지하도록 상기 제 2 데이터 액세스 경로의 제 1 메모리 액세스 요청에 대한 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대해 제 2 데이터 액세스 경로의 출력으로서 프리-차지 인덱스를 생성하면서, 상기 제 1 데이터 액세스 경로에서 상기 SRAM 데이터 어레이의 제 2 데이터 엔트리를 어드레싱하기 위한 제 2 입력으로서 제 2 메모리 액세스 요청에 대한 데이터 엔트리 어드레스를 수신하도록 구성되는,
SRAM.
12. The method of claim 11,
The pre-charge circuit comprises:
To pre-charge the SRAM data array for at least a portion of the SRAM data array based on a received data entry address for a first memory access request of the second data access path, And to receive a data entry address for a second memory access request as a second input for addressing a second data entry of the SRAM data array in the first data access path,
SRAM.
제 12 항에 있어서,
상기 프리-차지 회로는,
상기 메모리 액세스 요청에 대한 클록 신호 및 상기 프리-차지 인에이블의 어서션 시에 상기 비트라인 프리-차지 신호를 생성하면서, 상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하도록 상기 제 2 데이터 액세스 경로의 제 2 메모리 액세스 요청에 대한 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대해 상기 제 2 메모리 액세스 요청에 대한 프리-차지 인에이블을 생성하도록 구성되는,
SRAM.
13. The method of claim 12,
The pre-charge circuit comprises:
Charge signal to generate the bit line pre-charge signal at the time of assertion of the pre-charge enable and to pre-charge at least a portion of the SRAM data array, Charge enable for the second memory access request for at least a portion of the SRAM data array based on a received data entry address for a second memory access request.
SRAM.
제 6 항에 있어서,
집적 회로 내에 통합되는,
SRAM.
The method according to claim 6,
Integrated within the integrated circuit,
SRAM.
제 6 항에 있어서,
셋 톱 박스, 엔터테인먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 고정 위치 데이터 유닛, 이동 위치 데이터 유닛, 모바일 전화, 셀룰러 전화, 컴퓨터, 휴대용 컴퓨터, 데스크톱 컴퓨터, 개인용 디지털 보조기기(PDA), 모니터, 컴퓨터 모니터, 텔레비전, 튜너, 라디오, 위성 라디오, 음악 재생기, 디지털 음악 재생기, 휴대용 음악 재생기, 디지털 비디오 재생기, 비디오 재생기, 디지털 비디오 디스크(DVD) 재생기, 휴대용 디지털 비디오 재생기로 구성된 그룹으로부터 선택된 디바이스에 통합되는,
SRAM.
The method according to claim 6,
A personal digital assistant (PDA), a monitor, a computer monitor, a personal digital assistant (PDA), a personal digital assistant (PDA) Which is incorporated in a device selected from the group consisting of a television, a tuner, a radio, a satellite radio, a music player, a digital music player, a portable music player, a digital video player, a video player, a digital video disk (DVD) player,
SRAM.
제 1 항에 있어서,
상기 메모리 액세스 요청에 대한 클록 신호 및 상기 프리-차지 인에이블의 어서션 시에 비트라인 프리-차지 신호를 생성하도록 구성되는,
SRAM.
The method according to claim 1,
A clock signal for the memory access request and a bit line pre-charge signal upon assertion of the pre-charge enable,
SRAM.
제 16 항에 있어서,
상기 프리-차지 회로는,
상기 SRAM 데이터 어레이를 프리-차지하도록 상기 제 2 데이터 액세스 경로의 제 1 메모리 액세스 요청에 대한 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대해 제 2 데이터 액세스 경로의 출력으로서 프리-차지 인덱스를 생성하면서, 상기 제 1 데이터 액세스 경로에서 상기 SRAM 데이터 어레이의 제 2 데이터 엔트리를 어드레싱하기 위한 제 2 입력으로서 제 2 메모리 액세스 요청에 대한 데이터 엔트리 어드레스를 수신하도록 구성되는,
SRAM.
17. The method of claim 16,
The pre-charge circuit comprises:
To pre-charge the SRAM data array for at least a portion of the SRAM data array based on a received data entry address for a first memory access request of the second data access path, And to receive a data entry address for a second memory access request as a second input for addressing a second data entry of the SRAM data array in the first data access path,
SRAM.
제 17 항에 있어서,
상기 프리-차지 회로는,
상기 메모리 액세스 요청에 대한 클록 신호 및 상기 프리-차지 인에이블의 어서션 시에 상기 비트라인 프리-차지 신호를 생성하면서, 상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하도록 상기 제 2 데이터 액세스 경로의 제 2 메모리 액세스 요청에 대한 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대해 상기 제 2 메모리 액세스 요청에 대한 프리-차지 인에이블을 생성하도록 구성되는,
SRAM.
18. The method of claim 17,
The pre-charge circuit comprises:
Charge signal to generate the bit line pre-charge signal at the time of assertion of the pre-charge enable and to pre-charge at least a portion of the SRAM data array, Charge enable for the second memory access request for at least a portion of the SRAM data array based on a received data entry address for a second memory access request.
SRAM.
제 1 항에 있어서,
집적 회로 내에 통합되는,
SRAM.
The method according to claim 1,
Integrated within the integrated circuit,
SRAM.
제 1 항에 있어서,
셋 톱 박스, 엔터테인먼트 유닛, 네비게이션 디바이스, 통신 디바이스, 고정 위치 데이터 유닛, 이동 위치 데이터 유닛, 모바일 전화, 셀룰러 전화, 컴퓨터, 휴대용 컴퓨터, 데스크톱 컴퓨터, 개인용 디지털 보조기기(PDA), 모니터, 컴퓨터 모니터, 텔레비전, 튜너, 라디오, 위성 라디오, 음악 재생기, 디지털 음악 재생기, 휴대용 음악 재생기, 디지털 비디오 재생기, 비디오 재생기, 디지털 비디오 디스크(DVD) 재생기, 휴대용 디지털 비디오 재생기로 구성된 그룹으로부터 선택된 디바이스에 통합되는,
SRAM.
The method according to claim 1,
A personal digital assistant (PDA), a monitor, a computer monitor, a personal digital assistant (PDA), a personal digital assistant (PDA) Which is incorporated in a device selected from the group consisting of a television, a tuner, a radio, a satellite radio, a music player, a digital music player, a portable music player, a digital video player, a video player, a digital video disk (DVD) player,
SRAM.
SRAM(static random access memory)으로서,
제 1 데이터 액세스 경로 수단에 제공되는 메모리 액세스 로직 회로 수단; 및
상기 제 1 데이터 액세스 경로 수단과 별개의 제 2 데이터 액세스 경로 수단에 제공되는 프리-차지 회로 수단을 포함하고,
상기 메모리 액세스 로직 회로 수단은,
상기 제 1 데이터 액세스 경로 수단에서 SRAM 데이터 어레이 수단의 데이터 엔트리 수단을 어드레싱하기 위해 메모리 액세스 요청 수단에 대한 데이터 엔트리 어드레스 수단을 수신하도록; 그리고
상기 데이터 엔트리 어드레스 수단에 대응하는 SRAM 데이터 어레이 수단의 데이터 엔트리 수단에 액세스하기 위해 상기 SRAM 데이터 어레이 수단을 인덱싱하도록 상기 제 1 데이터 액세스 경로 수단에서, 수신된 데이터 엔트리 어드레스 수단에 기초하여 데이터 인덱스 수단을 생성하도록 구성되고,
상기 프리-차지 회로 수단은, 상기 SRAM 데이터 어레이 수단의 데이터 엔트리 수단에 액세스하기 이전에,
상기 제 2 데이터 액세스 경로 수단에서 상기 데이터 엔트리 어드레스 수단을 수신하도록; 그리고
상기 SRAM 데이터 어레이 수단의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로 수단에서 상기 수신된 데이터 엔트리 어드레스 수단에 기초하여 상기 SRAM 데이터 어레이 수단의 적어도 일부에 대해 프리-차지 인에이블 수단을 생성하도록 구성되는,
SRAM.
A static random access memory (SRAM)
Memory access logic circuit means provided in the first data access path means; And
And pre-charge circuit means provided in a second data access path means separate from the first data access path means,
Wherein the memory access logic circuit means comprises:
To receive data entry address means for memory access request means for addressing data entry means of SRAM data array means in said first data access path means; And
In the first data access path means for indexing the SRAM data array means to access the data entry means of the SRAM data array means corresponding to the data entry address means, ≪ / RTI >
The pre-charge circuit means, prior to accessing the data entry means of the SRAM data array means,
To receive the data entry address means from the second data access path means; And
To generate pre-charge enable means for at least a portion of the SRAM data array means based on the received data entry address means in the second data access path means for pre-charging at least a portion of the SRAM data array means Lt; / RTI >
SRAM.
SRAM(static random access memory) 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지(pre-charge)하는 방법으로서,
SRAM 데이터 어레이의 데이터 엔트리를 어드레싱하기 위한 메모리 액세스 요청에 대한 제 1 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하는 단계;
상기 데이터 엔트리 어드레스에 대응하는 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 위해 상기 SRAM 데이터 어레이를 인덱싱하도록 상기 제 1 데이터 액세스 경로에서, 수신된 데이터 엔트리 어드레스에 기초하여 데이터 인덱스를 생성하는 단계;
상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 제 2 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하는 단계; 및
상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 프리-차지 인에이블을 생성하는 단계를 포함하고,
상기 프리-차지 인에이블은 상기 제 1 데이터 액세스 경로에서 상기 데이터 엔트리 어드레스를 나타내는 데이터 인덱스의 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 생성되는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
A method of pre-charging an SRAM data array prior to accessing a static random access memory (SRAM) data array,
Receiving a data entry address in a first data access path for a memory access request for addressing a data entry of the SRAM data array;
Generating a data index based on the received data entry address in the first data access path to index the SRAM data array to access a data entry of the SRAM data array corresponding to the data entry address;
Receiving a data entry address in a second data access path to pre-charge at least a portion of the SRAM data array; And
Generating a pre-charge enable for at least a portion of the SRAM data array based on the received data entry address in the second data access path to pre-charge at least a portion of the SRAM data array ,
Wherein the pre-charge enable is generated prior to accessing the data entry of the SRAM data array of the data index indicating the data entry address in the first data access path,
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 22 항에 있어서,
상기 제 2 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 메모리 액세스 요청에 대해 비트라인 프리-차지 신호를 생성하는 단계
를 더 포함하고,
상기 비트라인 프리-차지 신호는 상기 제 1 데이터 액세스 경로에서 상기 데이터 엔트리 어드레스를 나타내는 데이터 인덱스의 SRAM 데이터 어레이의 데이터 엔트리에 액세스하기 이전에 생성되는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
23. The method of claim 22,
Generating a bit line pre-charge signal for a memory access request for at least a portion of the SRAM data array based on the received data entry address in the second data access path
Further comprising:
Wherein the bitline pre-charge signal is generated prior to accessing a data entry of an SRAM data array of a data index representing the data entry address in the first data access path,
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 22 항에 있어서,
상기 SRAM 데이터 어레이의 데이터 엔트리를 어드레싱하기 위한 메모리 액세스 요청에 대해 상기 제 1 데이터 액세스 경로에서 데이터 엔트리 어드레스를 수신하는 단계를 포함하고,
상기 SRAM 데이터 어레이는 복수의 SRAM 데이터 서브-어레이들을 포함하는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
23. The method of claim 22,
Receiving a data entry address in the first data access path for a memory access request for addressing a data entry of the SRAM data array,
The SRAM data array includes a plurality of SRAM data sub-arrays.
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 22 항에 있어서,
상기 메모리 액세스 요청에 대한 클록 신호 및 상기 프리-차지 인에이블의 어서션에 기초하여 비트라인 프리-차지 신호를 생성하도록 구성되는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
23. The method of claim 22,
Charge signal based on a clock signal for the memory access request and an assertion of the pre-charge enable;
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 25 항에 있어서,
상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로의 제 1 메모리 액세스 요청에 대해 상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 프리-차지 인에이블을 생성하면서, 상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로의 제 2 데이터 엔트리를 어드레싱하기 위한 제 2 입력으로서 제 2 메모리 액세스 요청에 대한 데이터 엔트리 어드레스를 수신하는 단계
를 더 포함하는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
26. The method of claim 25,
A pre-charge enable for at least a portion of the SRAM data array based on the received data entry address for a first memory access request of the second data access path to pre-charge at least a portion of the SRAM data array Receiving a data entry address for a second memory access request as a second input for addressing a second data entry of the second data access path to pre-charge at least a portion of the SRAM data array,
≪ / RTI >
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 26 항에 있어서,
상기 제 1 메모리 액세스 요청에 대한 클록 신호 및 프리-차지 인에이블의 어서션에 기초하여 상기 비트라인 프리-차지 신호를 생성하면서, 상기 SRAM 데이터 어레이의 적어도 일부를 프리-차지하기 위해 상기 제 2 데이터 액세스 경로에서 상기 수신된 데이터 엔트리 어드레스에 기초하여 상기 SRAM 데이터 어레이의 적어도 일부에 대한 제 2 메모리 액세스 요청에 대해 프리-차지 인에이블을 생성하는 단계
를 더 포함하는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
27. The method of claim 26,
To generate a bit line pre-charge signal based on an assertion of a clock signal for the first memory access request and an assertion of a pre-charge enable, to pre-charge at least a portion of the SRAM data array Generating a pre-charge enable for a second memory access request for at least a portion of the SRAM data array based on the received data entry address in the path
≪ / RTI >
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 22 항에 있어서,
상기 SRAM 데이터 어레이의 데이터 엔트리를 인덱싱하도록 상기 제 1 데이터 액세스 경로에서 데이터 인덱스를 생성하는 단계는,
상기 수신된 데이터 인덱스에 기초하여 데이터 엔트리를 인덱싱하도록 태그 어레이에 의해 상기 데이터 인덱스를 수신하는 단계
를 더 포함하는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
23. The method of claim 22,
Wherein the step of generating a data index in the first data access path to index a data entry of the SRAM data array comprises:
Receiving the data index by a tag array to index a data entry based on the received data index;
≪ / RTI >
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 22 항에 있어서,
비트라인 프리-차지 신호를 생성하는 단계는 상기 프리-차지 인에이블의 어서션 및 클록 신호의 어서션에 기초하는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
23. The method of claim 22,
Generating a bit line pre-charge signal based on the assertion of the pre-charge enable and the assertion of the clock signal;
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
제 29 항에 있어서,
상기 비트라인 프리-차지 신호를 생성하는 단계는 어레이 인에이블의 어서션 및 상기 클록 신호의 어서션에 기초하여 디스에이블되는,
SRAM 데이터 어레이에 액세스하기 이전에 SRAM 데이터 어레이를 프리-차지하는 방법.
30. The method of claim 29,
Wherein the generating the bit line pre-charge signal comprises disabling the assertion of the array enable and the assertion of the clock signal,
A method for pre-charging an SRAM data array prior to accessing the SRAM data array.
KR1020157034407A 2013-05-06 2014-05-02 Pre-charging bitlines in a static random access memory (sram) prior to data access for reducing leakage power, and related systems and methods KR101660455B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361819744P 2013-05-06 2013-05-06
US61/819,744 2013-05-06
US14/049,312 US9007817B2 (en) 2013-05-06 2013-10-09 Pre-charging bitlines in a static random access memory (SRAM) prior to data access for reducing leakage power, and related systems and methods
US14/049,312 2013-10-09
PCT/US2014/036517 WO2014182554A1 (en) 2013-05-06 2014-05-02 Pre-charging bitlines in a static random access memory (sram) prior to data access for reducing leakage power, and related systems and methods

Publications (2)

Publication Number Publication Date
KR20150144809A KR20150144809A (en) 2015-12-28
KR101660455B1 true KR101660455B1 (en) 2016-09-27

Family

ID=51841355

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157034407A KR101660455B1 (en) 2013-05-06 2014-05-02 Pre-charging bitlines in a static random access memory (sram) prior to data access for reducing leakage power, and related systems and methods

Country Status (6)

Country Link
US (1) US9007817B2 (en)
EP (1) EP2976770B1 (en)
JP (1) JP6005894B2 (en)
KR (1) KR101660455B1 (en)
CN (1) CN105190759B (en)
WO (1) WO2014182554A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9787481B2 (en) * 2014-08-28 2017-10-10 The Regents Of The University Of Michigan Physical unclonable function using augmented memory for challenge-response hashing
KR101867174B1 (en) 2016-09-21 2018-07-17 연세대학교 산학협력단 Static random access memory device
US10156887B2 (en) * 2016-09-29 2018-12-18 Qualcomm Incorporated Cache memory clock generation circuits for reducing power consumption and read errors in cache memory
US11763860B2 (en) * 2021-12-16 2023-09-19 Microsoft Technology Licensing, Llc Multi-port SDRAM

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120213023A1 (en) 2011-02-18 2012-08-23 International Business Machines Corporation Systems and methods for memory device precharging
US8351287B1 (en) 2010-12-22 2013-01-08 Lattice Semiconductor Corporation Bitline floating circuit for memory power reduction
US20130021864A1 (en) 2011-07-22 2013-01-24 Texas Instruments Incorporated Array Power Supply-Based Screening of Static Random Access Memory Cells for Bias Temperature Instability

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6177946A (en) 1984-09-26 1986-04-21 Hitachi Ltd Semiconductor memory
KR880008330A (en) * 1986-12-30 1988-08-30 강진구 Static Ram Precharge System
JPH02244479A (en) * 1989-03-16 1990-09-28 Fujitsu Ltd Semiconductor memory device
US5841712A (en) 1996-09-30 1998-11-24 Advanced Micro Devices, Inc. Dual comparator circuit and method for selecting between normal and redundant decode logic in a semiconductor memory device
US6192486B1 (en) 1998-08-13 2001-02-20 International Business Machines Corporation Memory defect steering circuit
US6324103B2 (en) 1998-11-11 2001-11-27 Hitachi, Ltd. Semiconductor integrated circuit device, memory module, storage device and the method for repairing semiconductor integrated circuit device
JP2001076489A (en) * 1999-09-07 2001-03-23 Toshiba Microelectronics Corp Memory circuit
JP2001319479A (en) * 2000-05-12 2001-11-16 Nec Corp Memory device
EP1365419B1 (en) 2002-05-21 2008-12-31 STMicroelectronics S.r.l. Self-repair method for non volatile memory device with erasing/programming failure detection, and non volatile memory device therefor
EP1624463A1 (en) 2004-07-14 2006-02-08 STMicroelectronics S.r.l. A Programmable memory device with an improved redundancy structure
JP2007265589A (en) 2006-03-30 2007-10-11 Fujitsu Ltd Nonvolatile semiconductor memory
JP5101222B2 (en) * 2007-09-10 2012-12-19 ルネサスエレクトロニクス株式会社 Semiconductor integrated circuit device
US7995409B2 (en) * 2007-10-16 2011-08-09 S. Aqua Semiconductor, Llc Memory with independent access and precharge
US8977820B2 (en) * 2007-12-21 2015-03-10 Arm Limited Handling of hard errors in a cache of a data processing apparatus
US7940599B2 (en) 2009-03-16 2011-05-10 Freescale Semiconductor, Inc. Dual port memory device
JP2011123970A (en) 2009-12-14 2011-06-23 Renesas Electronics Corp Semiconductor memory device
US8279687B2 (en) 2010-05-13 2012-10-02 International Business Machines Corporation Single supply sub VDD bit-line precharge SRAM and method for level shifting
US8228749B2 (en) * 2010-06-04 2012-07-24 Texas Instruments Incorporated Margin testing of static random access memory cells
US8824230B2 (en) * 2011-09-30 2014-09-02 Qualcomm Incorporated Method and apparatus of reducing leakage power in multiple port SRAM memory cell

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8351287B1 (en) 2010-12-22 2013-01-08 Lattice Semiconductor Corporation Bitline floating circuit for memory power reduction
US20120213023A1 (en) 2011-02-18 2012-08-23 International Business Machines Corporation Systems and methods for memory device precharging
US20130021864A1 (en) 2011-07-22 2013-01-24 Texas Instruments Incorporated Array Power Supply-Based Screening of Static Random Access Memory Cells for Bias Temperature Instability

Also Published As

Publication number Publication date
CN105190759B (en) 2018-01-05
US9007817B2 (en) 2015-04-14
KR20150144809A (en) 2015-12-28
WO2014182554A1 (en) 2014-11-13
CN105190759A (en) 2015-12-23
JP2016517997A (en) 2016-06-20
JP6005894B2 (en) 2016-10-12
US20140328113A1 (en) 2014-11-06
EP2976770A1 (en) 2016-01-27
EP2976770B1 (en) 2016-10-19

Similar Documents

Publication Publication Date Title
US8130576B2 (en) Memory throughput increase via fine granularity of precharge management
US20160247558A1 (en) Negative supply rail positive boost write-assist circuits for memory bit cells employing a p-type field-effect transistor (pfet) write port(s), and related systems and methods
US9870818B1 (en) Separate read and write address decoding in a memory system to support simultaneous memory read and write operations
US9190141B2 (en) Circuits for voltage or current biasing static random access memory (SRAM) bitcells during SRAM reset operations, and related systems and methods
CN107210059B (en) PFET-based sense amplifier for reading P-type field effect transistor (PFET) pass gate memory bit cells, and related memory systems and methods
KR101660455B1 (en) Pre-charging bitlines in a static random access memory (sram) prior to data access for reducing leakage power, and related systems and methods
US9019752B1 (en) Static random access memory (SRAM) global bitline circuits for reducing power glitches during memory read accesses, and related methods and systems
US9633706B1 (en) Voltage self-boosting circuit for generating a boosted voltage for driving a word line write in a memory array for a memory write operation
US8811109B2 (en) Memory pre-decoder circuits employing pulse latch(es) for reducing memory access times, and related systems and methods
US6091667A (en) Semiconductor memory device and a data reading method and a data writing method therefor
US10156887B2 (en) Cache memory clock generation circuits for reducing power consumption and read errors in cache memory
US9424909B1 (en) Static random access memory (SRAM) arrays having substantially constant operational yields across multiple modes of operation
US11640841B2 (en) Memory systems including memory arrays employing column read circuits to control floating of column read bit lines, and related methods
US20230395127A1 (en) Computer memory systems employing localized generation of global bit line (gbl) clock signal to reduce clock signal read path divergenge for improved signal tracking, and related methods

Legal Events

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