CN101937703B - 用于具有新型位单元实施的寄存器堆的装置 - Google Patents

用于具有新型位单元实施的寄存器堆的装置 Download PDF

Info

Publication number
CN101937703B
CN101937703B CN2010102140677A CN201010214067A CN101937703B CN 101937703 B CN101937703 B CN 101937703B CN 2010102140677 A CN2010102140677 A CN 2010102140677A CN 201010214067 A CN201010214067 A CN 201010214067A CN 101937703 B CN101937703 B CN 101937703B
Authority
CN
China
Prior art keywords
value
register file
read port
storage component
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2010102140677A
Other languages
English (en)
Other versions
CN101937703A (zh
Inventor
D·E·加尔比
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN101937703A publication Critical patent/CN101937703A/zh
Application granted granted Critical
Publication of CN101937703B publication Critical patent/CN101937703B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30141Implementation provisions of register files, e.g. ports
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Static Random-Access Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

本发明公开了用于具有新型位单元实施的寄存器堆的装置。公开了以减少需要被路由到以及通过位基本单元的信号的数目的方式来组织/构造寄存器堆基本单元的方法。这样构造的基本单元允许工业标准静态时序方法和工具来检验由这样的基本单元作为一个整体而组成的寄存器堆的时序,并且允许工业标准布局布线(APR)工具被用来实施基本单元与没有直接包括在基本单元中的其他寄存器堆逻辑之间的连接。

Description

用于具有新型位单元实施的寄存器堆的装置
技术领域
本发明涉及寄存器堆、处理器以及计算系统。
背景技术
在诸如微处理器或其他片上系统(SOC)设计之类的集成电子设备中,寄存器堆是重要的内部设计元件。寄存器堆可以被用来允许设备保持内部状态。它们还可以被用来缓冲数据、缓冲控制命令、以及在各种各样的其他设计应用中存储设计内部的值。寄存器堆的一个重要设计参数是寄存器堆提供的端口的数目。端口可以是读端口(允许读数据)、写端口(允许设置寄存器的状态)、或读写端口(其可以起到读端口或写端口的作用)。寄存器堆不同于寄存器,因为一个寄存器堆使用一组地址位来帮助确定应该对该寄存器堆中的哪些寄存器(其通常被称为“基本单元(base cell)”)进行操作。
图1说明具有多行基本单元(例如基本单元110)的典型寄存器堆100。每行基本单元对应于诸如120和130之类的选择逻辑。行中的基本单元被耦合到选择逻辑,以使该选择逻辑可以根据端口的地址来选择要由该端口操作的适当的基本单元。选择方法可以全部或部分地被包含在基本单元内,或者完全处于基本单元外部。图1是处于基本单元外部的读选择逻辑的实例。
可能存在构造寄存器堆的基本单元的不同设计方法。图2说明寄存器堆的基本单元200的结构。基本单元200包括三个基本部分:中心部分210、读端口220、以及写端口230。中心部分210还可以被称为“数据存储”部分,其包括所存储的单元状态。通常对于每个基本单元仅存在中心部分结构的一个副本。通常,为寄存器堆的每个读端口复制读端口220。类似地,为寄存器堆的每个写端口复制写端口230。对于具有读写端口的基本单元来说,“读端口”和“写端口”被组合成一个结构。
发明内容
根据本发明的第一方面,提供一种寄存器堆。所述寄存器堆包括:寄存器,其具有存储第一值的第一存储部件以及存储第二值的第二存储部件;以及所述第一存储部件和所述第二存储部件共享的读端口,所述读端口能够根据读请求来确定每次用于输出的所述第一值或所述第二值中的一个。
根据本发明的第二方面,提供一种处理器。所述处理器包括:算术部件,用于执行算术运算;以及寄存器堆,用于存储所述算术运算的数据。所述寄存器堆包括:寄存器,其具有存储第一值的第一存储部件以及存储第二值的第二存储部件;以及所述第一存储部件和所述第二存储部件共享的读端口,所述读端口能够根据读请求来确定每次用于输出的所述第一值或所述第二值中的一个。
根据本发明的第三方面,提供一种计算系统。所述计算系统包括用于处理数据的处理器。所述处理器具有用于存储数据的寄存器堆。所述寄存器堆包括:寄存器,其具有存储第一值的第一存储部件以及存储第二值的第二存储部件;以及所述第一存储部件和所述第二存储部件共享的读端口,所述读端口能够根据读请求来确定每次用于输出的所述第一值或所述第二值中的一个。
附图说明
根据下面对所公开的主题的详细描述,该主题的特征和优点将变得显而易见,其中:
图1说明典型的寄存器堆;
图2说明寄存器堆的基本单元的结构;
图3示出寄存器堆的基本单元的一个实施例;
图4示出寄存器堆的基本单元的另一实施例;
图5A示出寄存器堆的一个实施例;
图5B示出在图5A中示出的寄存器堆中使用的基本单元的一个实施例;
图6A说明在图6B中示出的电路的示例真值表;
图6B说明寄存器堆中具有共享读端口的两个基本单元的示例实施例;
图7说明寄存器堆中具有读端口和写端口的两个基本单元的示例实施例;
图8示出结合了图7中说明的单元结构的示例寄存器堆;
图9示出具有根据图8实施的寄存器堆的示例处理器;以及
图10示出结合了根据图8实施的寄存器堆的示例计算系统。
具体实施方式
本文所描述的实施例和实例不是针对本发明所设想的仅有的应用或使用。所讨论的特定实施例仅仅说明实现和使用本发明的特定方式,并且不限制本发明的范围。附图用于说明性目的并且没有按比例绘制。根据特定的垂直和水平组织来描述附图,但是可以在不影响本发明范围的情况下容易地将附图旋转任何角度并且更新描述。
在说明书中对所公开的主题的“一个实施例”或“实施例”的提及意味着,结合该实施例所描述的特定的特征、结构或特性被包括在所公开的主题的至少一个实施例中。因此,在整个说明书的各个位置处出现的短语“在一个实施例中”的出现未必都是指同一实施例。
图3示出其中可以通过使用标准的六晶体管(“6-T”)静态随机存取存储器(“SRAM”)单元而构造基本单元的一种方式。这样构造的基本单元提供高密度存储解决方案,但是仅提供单端口(“1-RW”),从所述单端口可以写或读所述单元。该单元的“数据存储”组件由标准的交叉耦合反相器对(晶体管D1-D4)组成,并且晶体管T1和T2包括“RW”(读写)端口。该单元具有单元选择机构被包括在单元内的性质。在该构造中,标记为“WL”(字线)的信号确定,标记为“BL”(位线)和“BLN”(位线条(bit-line-bar))的信号是否影响存储在该单元中的值,或者是否受到存储在该单元中的值的影响。基本单元的这种构造通过在不需要任何外部逻辑的情况下允许标记为“WL”的信号执行初始寄存器堆位选择来允许在多个基本单元之间直接共享“BL”和“BLN”信号。
通常,利用具有与独立写端口耦合的至少一个读端口的基本单元来构造寄存器堆。图4是这样的基本单元的典型组织的一个实例。该单元的“数据存储”组件由标准的交叉耦合反相器对(标记为C1和C2的反相器)组成。读端口由标记为T1和T2的晶体管组成,并且写端口由标记为T3和T4的晶体管组成。可以通过复制相关联的读或写逻辑来调节写和/或读端口的数目。这样构造的该单元具有用于读端口和写端口二者的单元选择机构被包括在该单元内的性质。标记为WWL(写字线)和WWLN(写字线条)的信号控制何时基本单元被写入,并且因此允许多个基本单元直接共享相同的写数据线(“WDL”)信号。标记为RWL(读字线)的信号控制哪个单元被读取,并且因此允许多个单元共享标记为RDL(读数据线)的信号。如果没有RWL是有效的,则外部电路需要将RDL上拉到高值。如果RWL是有效的(即高)并且数据存储包含低值(即T2的栅极将为高),则RDL将通过T1和T2被拉为低。然而,如果数据存储包含高值(即T2的栅极为低),则基本单元将不驱动RDL值,并且代之以需要附加的模拟外部电路来保持RDL为高。这样的RWL/RDL方法的模拟性质通常需要特殊电路分析技术来表征其行为,并且通常与基于标准的片上系统(“SOC”)单元的静态时序技术不兼容。
图5A中示出一种创建与基于SOC单元的静态时序技术兼容的寄存器堆组织的典型方式。在该图中使用的基本单元是具有写使能(EN)管脚的标准单元锁存器或触发器(FF)。如该图所示,WDATA(写数据)信号在多个基本单元之间是共用的,并且该EN管脚被用来选择哪个单元应该被写入。这将写端口选择逻辑推入到基本单元中。相反,在该组织中使用的读数据端口没有被包含在该基本单元内。每个输出位使用一个大的多路复用器(在该图中标记为MUX[n]...MUX[0])来选择从其读取数据的适当的基本单元。可以根据较小的标准单元乘法器单元来创建所述大的多路复用器,或者可以利用如图5B中示出的标准单元NAND-AND单元阵列来创建所述大的多路复用器。在图5B中,通过解码多路复用地址选择位来生成RSEL[](读选择)控制信号,并且RDATA[](读数据)信号是如图5A所示的基本单元的输出。利用在图5B中示出的NAND-AND结构,只有在RSEL[]及其相关联的RDATA[]二者都为高时寄存器位[x]才变成低。该值将最有可能在寄存器堆的输出之前被反相。图5A中示出的寄存器堆的构造与基于标准SOC单元的静态时序技术完全兼容。
本文所公开的主题给出一种将图5B示出的读端口NAND结构的第一级包括到基本单元(标记为“C0”、“C1”和“Cm”的单元)中的新型方式,以使图5B的两个相邻单元(即标记为C0、C1、...、Cm的单元)之间的第二级AND(即MX)也被包括到该基本单元中。该方法在保持与基于标准SOC单元的静态时序技术完全兼容的寄存器堆组织的同时,导致寄存器阵列所需的总体来说较少的晶体管和较小的硅面积。图6B示出具有这样的新的读端口组织的逻辑的本发明的一个实施例。
图6A示出由图6B中的逻辑实施的真值表。该真值表提供用于不同读字线(如图6B中所标记的“RWL”)的读数据线(如图6B中所标记的“RDL”)的适当值以及不同单元数据存储值。一般来说,如果没有“RWL”是有效的(在这种情况下有效为高),则“RDL”被保持为高。寄存器堆组织需要每个阵列每次仅一个“RWL”有效。当“RWL”有效时,只有在相关联的数据存储节点包含低值时“RDL”才被驱动为低;否则“RDL”被保持为高。当“RWL1”有效并且其相关联的数据存储节点包含低值时,晶体管T1和T1A负责将“RDL”拉为低。当“RWL0”有效并且其相关联的数据存储节点包含低值时,晶体管T2和T2A负责将“RDL”拉为低。当“RWL1”和“RWL0”都不有效时,晶体管T3和T3A负责使“RDL”保持为高。如果“RWL1”为高并且其相关联的数据为低,则晶体管T4和T4A保持“RDL”为高,这利用了“RWL0”为低意味着“RWL1”可能为高这一事实。如果没有“RWL0”以及其相关联的数据存储元件,则晶体管T5和T5A执行与T4和T4A相同的功能。图6B中所描述的本发明的实施例包括用于每个所得到的水平读数据线(RDL)的两个垂直读字线(RWL)。不同RDL之间的选择逻辑没有被包括在该基本单元中。
图7示出根据本发明一个实施例的具有在图6B中描述的逻辑的“1R,1W”寄存器基本单元的完整晶体管描述。该寄存器基本单元包括在图7中概述并标记的五个主要部分。标记为“存储单元0”的电路存储在基本单元中存储的两个位值中的一个,另一个位值被存储在被概述并标记为“存储单元1”的电路中。被概述并标记为“写多路复用器0”的电路允许“存储单元0”的值被写入,并且标记为“写多路复用器1”的电路允许“存储单元1”的值被写入。在图6B中更详细地示出被标记为“共享的读多路复用器”的电路。在不影响本发明精神的情况下,其他“写多路复用器”和“存储单元”逻辑组织可以与“共享的读多路复用器”组织相配合。另外,根据具有一个读端口和一个写端口(“1R,1W”)的寄存器堆来描述本发明的实施例。这些可以通过使用本文所描述的适当的读或写逻辑的多个副本而被容易地扩展到具有多个读或写端口的寄存器堆。另外,利用以某一优选顺序排列的串联晶体管描述并示出了实施例,但是在不影响电路的整体功能的情况下,所述串联晶体管可以被重新排序或重新布置以共享具有相同的选通(gate)晶体管连接的晶体管。
在SOC标准单元设计中,针对特定标准单元间距来设计标准单元。一般来说,由自动布局布线软件(APR)来布线的标准单元被设计成具有固定高度以及仅基于单元功能的需求而变化的宽度。本发明的其他实施例可以允许图7所示的寄存器位单元的物理布局以与在设计的剩余部分中使用的标准单元的间距兼容的方式被实施。返回参考图2,这样的方法允许不是寄存器堆基本单元的部分的所有逻辑被实施在安装在标准单元网格上的其他标准单元中。为此,寄存器堆基本单元需要以下述方式来设计:该单元的布局具有一个尺寸(dimension),所述尺寸在乘以小的整数(越小越好)时得到一个数,该数是标准单元间距高度的积分(integral)。例如,如果标准单元间距被设计成十三个metal-1线轨高,则图7中所示的标准单元的布局可以具有大小为39个metal-1线轨的一个尺寸的布局。可以选择三十九,因为它是13个轨的标准单元间距的三倍。
图8示出根据图7中所示的本发明实施例的寄存器堆的顶层组织,其中写端口部分和读端口数据选择逻辑部分被包括在基本单元内。寄存器堆800包括寄存器堆单元阵列810、写数据驱动器820、读数据多路复用器830、以及写字线(“WWL”)和读字线(“RWL”)驱动器和解码器840。寄存器堆单元阵列810包括多个与图7中所描述的位单元类似的位单元(标记为BCELL00到BCELLnn)。寄存器堆单元阵列中的一些位单元共享如该图中所示的WWL和RWL。写字线和读字线驱动器和解码器840生成WWL和RWL的状态。写数据驱动器820为写数据线(WDL)生成状态,所述写数据线(WDL)由使用WWL来选择哪个单元实际上变成被写入的多个基本单元共享。如图8所示,每个基本单元具有一个读数据线(RDL),所述读数据线(RDL)对应于构成如图7所述的基本单元的一对单元的输出端。如所示出的那样,存在去往每个基本单元的两个RWL,其选择在该基本单元的RDL上输出哪个存储单元值。标记为“读数据多路复用”的框以与图5A或图5B所示的类似方式从对应组的RDL中选择适当的RDL值。
如上所述,读和写端口的逻辑需求部分地独立于彼此。如本文所示的读端口和写端口逻辑的不同组合以及所示出的读端口或写端口逻辑与不同的对应写端口或读端口逻辑的组合不会影响本发明的精神。另外,可以在不影响本发明范围的情况下使用不同的基本单元数据存储晶体管组织。在上面示出的各种实施例中的数据存储晶体管组织不是适合使用的仅有的数据存储晶体管组织。根据数据存储节点的高和低状态来描述本发明的实施例。然而,由于数据存储晶体管组织通常包括两个彼此反相的节点,所以在不影响本发明精神的情况下可以根据相对的数据状态组织来容易地描述实施例。根据“WWL”和“RDL”描述了实施例,但是图8中示出的实施例可以容易地适于使用了“WWLN”(反相“WWL”信号)和/或“RDLN”(反相“RDL”信号)的组织。
图9示出具有根据本发明一个实施例而构造的寄存器堆的处理器900。处理器900可以包括算术逻辑部件(ALU)910以及一个或多个寄存器堆920。ALU 910可以为处理器900执行诸如加法、减法等等之类的算术运算。可以根据图8中所说明的实施例来实施寄存器堆920。
图10示出结合了根据图8实施的寄存器堆的示例计算系统1000。计算系统1000可以包括耦合到系统互连1015的一个或多个处理器1010。每个处理器还可以包括一个或多个处理内核。处理器1010可以包括根据图8所说明的实施例而实施的一个或多个寄存器堆1005。尽管没有在图10中示出,但是计算系统1000的其他组件(例如芯片集1030等等)还可以包括根据图8所示的实施例而实施的一个或多个寄存器堆。
该计算系统1000还可以包括耦合到系统互连1015的芯片集1030。芯片集1030可以包括一个或多个集成电路封装或芯片。芯片集1030可以包括一个或多个设备接口1035以支持去往和/或来自计算系统1000的其他组件1060(诸如BIOS固件、键盘、鼠标、存储设备、网络接口等等)的数据传输。芯片集1030可以被耦合到外围组件互连(PCI)总线1070。芯片集1030可以包括提供到PCI总线1070的接口的PCI桥1045。该PCI桥1045可以提供处理器1010以及其他组件1060与诸如音频设备1080和盘驱动器1090之类的外围设备之间的数据路径。尽管没有示出,但是其他设备也可以被耦合到PCI总线1070。
另外,芯片集1030可以包括耦合到主存储器1050的存储器控制器1025。该主存储器1050可以存储由处理器1010或包括在系统中的任何其他设备执行的数据和指令序列。存储器控制器125可以响应于与处理器1010和该计算系统1000中的其他设备相关联的存储器事务而访问主存储器1050。在一个实施例中,存储器控制器1050可以位于处理器1010或一些其他电路中。该主存储器1050可以包括提供可寻址存储单元的各种存储器设备,其中存储器控制器1025可以从所述可寻址存储单元读取数据和/或将数据写入到所述可寻址存储单元。该主存储器1050可以包括一个或多个不同类型的存储器设备,例如动态随机存取存储器(DRAM)设备、同步DRAM(SDRAM)设备、双数据率(DDR)SDRAM设备、或其他存储器设备。
尽管参考图1至图10描述了所公开的主题的示例实施例,但是本领域技术人员将容易认识到,可以可替换地使用实施所公开的主题的许多其他方法。例如,所描述的框图和/或示意图中的一些框可以被改变、消除或组合。
在前面的描述中,已描述了所公开主题的各个方面。为了解释的目的,阐述了特定的数字、系统和配置以便提供对所述主题的透彻理解。然而,对于本领域技术人员来说具有本公开的下述益处是显而易见的:可以在没有特定细节的情况下实践所述主题。在其他实例中,为了不模糊所公开的主题,省略、简化、组合或拆分了公知的特征、组件或模块。

Claims (20)

1.一种寄存器堆,包括:
寄存器,其具有存储第一值的第一存储部件以及存储第二值的第二存储部件;以及
所述第一存储部件和所述第二存储部件共享的读端口,所述读端口能够根据读请求来确定每次用于输出的所述第一值或所述第二值中的一个。
2.根据权利要求1所述的寄存器堆,其中,所述读端口包括根据所述读请求来确定用于输出的所述第一值或所述第二值的选择逻辑。
3.根据权利要求2所述的寄存器堆,其中,所述选择逻辑接收第一信号和第二信号,当所述第一信号有效时,所述选择逻辑确定用于输出的所述第一值,以及当所述第二信号有效时,所述选择逻辑确定用于输出的所述第二值。
4.根据权利要求3所述的寄存器堆,其中,在正常操作模式期间所述第一信号和所述第二信号二者不是同时有效的。
5.根据权利要求1所述的寄存器堆,其中,如果所述第一存储部件和所述第二存储部件中的每一个具有一个单独的读端口,则与两个单独的读端口所需的晶体管的总数相比,所述读端口具有数目减少的晶体管。
6.根据权利要求1所述的寄存器堆,其中,所述读端口的输出端与标准静态输出节点的输出端兼容。
7.根据权利要求1所述的寄存器堆,其中,所述寄存器的布局适合在标准单元网格内。
8.一种处理器,包括:
算术部件,用于执行算术运算;以及
寄存器堆,用于存储所述算术运算的数据,所述寄存器堆包括:
寄存器,其具有存储第一值的第一存储部件以及存储第二值的第二存储部件;以及
所述第一存储部件和所述第二存储部件共享的读端口,所述读端口能够根据读请求来确定每次用于输出的所述第一值或所述第二值中的一个。
9.根据权利要求8所述的处理器,其中,所述寄存器堆的所述读端口包括根据所述读请求来确定用于输出的所述第一值或所述第二值的选择逻辑。
10.根据权利要求9所述的处理器,其中,所述选择逻辑接收第一信号和第二信号,当所述第一信号有效时,所述选择逻辑确定用于输出的所述第一值,以及当所述第二信号有效时,所述选择逻辑确定用于输出的所述第二值。
11.根据权利要求10所述的处理器,其中,在正常操作模式期间所述第一信号和所述第二信号二者不是同时有效的。
12.根据权利要求8所述的处理器,其中,如果所述第一存储部件和所述第二存储部件中的每一个具有一个单独的读端口,则与两个单独的读端口所需的晶体管的总数相比,所述读端口具有数目减少的晶体管。
13.根据权利要求8所述的处理器,其中,所述读端口的输出端与标准静态输出节点的输出端兼容。
14.根据权利要求8所述的处理器,其中,所述寄存器的布局适合在标准单元网格内。
15.一种计算系统,包括:
用于处理数据的处理器,所述处理器具有用于存储数据的寄存器堆,所述寄存器堆包括:
寄存器,其具有存储第一值的第一存储部件以及存储第二值的第二存储部件;以及
所述第一存储部件和所述第二存储部件共享的读端口,所述读端口能够根据读请求来确定每次用于输出的所述第一值或所述第二值中的一个。
16.根据权利要求15所述的计算系统,其中,所述读端口包括根据所述读请求来确定用于输出的所述第一值或所述第二值的选择逻辑。
17.根据权利要求16所述的计算系统,其中,所述选择逻辑接收第一信号和第二信号,当所述第一信号有效时,所述选择逻辑确定用于输出的所述第一值,以及当所述第二信号有效时,所述选择逻辑确定用于输出的所述第二值。
18.根据权利要求17所述的计算系统,其中,在正常操作模式期间所述第一信号和所述第二信号二者不是同时有效的。
19.根据权利要求15所述的计算系统,其中,如果所述第一存储部件和所述第二存储部件中的每一个具有一个单独的读端口,则与两个单独的读端口所需的晶体管的总数相比,所述读端口具有数目减少的晶体管。
20.根据权利要求15所述的计算系统,其中,所述读端口的输出端与标准静态输出节点的输出端兼容。
CN2010102140677A 2009-06-26 2010-06-25 用于具有新型位单元实施的寄存器堆的装置 Expired - Fee Related CN101937703B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/492907 2009-06-26
US12/492,907 US8331133B2 (en) 2009-06-26 2009-06-26 Apparatuses for register file with novel bit cell implementation

Publications (2)

Publication Number Publication Date
CN101937703A CN101937703A (zh) 2011-01-05
CN101937703B true CN101937703B (zh) 2013-12-11

Family

ID=43381987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102140677A Expired - Fee Related CN101937703B (zh) 2009-06-26 2010-06-25 用于具有新型位单元实施的寄存器堆的装置

Country Status (3)

Country Link
US (1) US8331133B2 (zh)
CN (1) CN101937703B (zh)
TW (1) TWI425361B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8681534B2 (en) * 2011-12-29 2014-03-25 Stmicroelectronics International N.V. Dual port register file memory cell with reduced susceptibility to noise during same row access
US9953701B1 (en) * 2017-02-22 2018-04-24 Arm Limited SRAM architecture with bitcells of varying speed and density
US10410714B2 (en) * 2017-09-20 2019-09-10 Qualcomm Incorporated Multi-level cell (MLC) static random access memory (SRAM) (MLC SRAM) cells configured to perform multiplication operations

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1698132A (zh) * 2002-09-24 2005-11-16 桑迪士克股份有限公司 具有空间有效的数据寄存器的高度紧凑非易失性存储器及其方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173379B1 (en) * 1996-05-14 2001-01-09 Intel Corporation Memory device for a microprocessor register file having a power management scheme and method for copying information between memory sub-cells in a single clock cycle
KR100268429B1 (ko) * 1997-03-18 2000-11-01 윤종용 동기형반도체메모리장치의데이터의입력회로및데이터입력방법
JP3341662B2 (ja) * 1997-12-11 2002-11-05 日本電気株式会社 情報処理装置及び多ポートレジスタファイル
JP2004102799A (ja) * 2002-09-11 2004-04-02 Nec Electronics Corp レジスタファイル及びレジスタファイルの設計方法
US7203100B2 (en) * 2004-11-01 2007-04-10 Sun Mircosystems, Inc. Efficient implementation of a read scheme for multi-threaded register file
US7366032B1 (en) * 2005-11-21 2008-04-29 Advanced Micro Devices, Inc. Multi-ported register cell with randomly accessible history
US20070239970A1 (en) * 2006-04-06 2007-10-11 I-Tao Liao Apparatus For Cooperative Sharing Of Operand Access Port Of A Banked Register File

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1698132A (zh) * 2002-09-24 2005-11-16 桑迪士克股份有限公司 具有空间有效的数据寄存器的高度紧凑非易失性存储器及其方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JP特开平11-175394A 1999.07.02
US 6,173,379 B1,2001.01.09,
US 7,203,100 B2,2007.04.10,

Also Published As

Publication number Publication date
US20100332712A1 (en) 2010-12-30
US8331133B2 (en) 2012-12-11
TW201115348A (en) 2011-05-01
TWI425361B (zh) 2014-02-01
CN101937703A (zh) 2011-01-05

Similar Documents

Publication Publication Date Title
US8019948B2 (en) Multi-path accessible semiconductor memory device having mailbox areas and mailbox access control method thereof
US7755968B2 (en) Integrated circuit memory device having dynamic memory bank count and page size
US6445638B1 (en) Folded-bitline dual-port DRAM architecture system
US7283418B2 (en) Memory device and method having multiple address, data and command buses
US10210947B2 (en) Multi-port memory, semiconductor device, and memory macro-cell capable of performing test in a distributed state
US9058860B2 (en) Methods and apparatus for synthesizing multi-port memory circuits
WO2006015868A3 (en) Global memory system for a data processor comprising a plurality of processing elements
JP2008532140A (ja) 複数内部データバス及びメモリバンクインターリービングを有するメモリデバイス及び方法
CN1988034A (zh) 具有在端口间的数据发送模式的多径访问半导体存储器件
CN101114271A (zh) 在处理器之间具有主接口的可多路径访问的半导体存储器
CN102385905B (zh) 存储器写辅助
US20150199150A1 (en) Performing Logical Operations in a Memory
JP6247280B2 (ja) 強誘電性ランダムアクセスメモリ(fram)レイアウト装置及び方法
CN101937703B (zh) 用于具有新型位单元实施的寄存器堆的装置
US9953701B1 (en) SRAM architecture with bitcells of varying speed and density
US8032695B2 (en) Multi-path accessible semiconductor memory device with prevention of pre-charge skip
US20190278520A1 (en) Data processing method and system for 2r1w memory
US6498754B2 (en) Memory array organization for static arrays
US11222670B2 (en) Circuit architecture to derive higher mux from lower mux design
US20180102160A1 (en) DDR Controller for Thyristor Memory Cell Arrays
US11908537B2 (en) Memory circuit architecture
JP4783501B2 (ja) 半導体記憶装置
KR100481820B1 (ko) 패러티로서 비유효한 출력 데이터를 보정하는 에스램 호한메모리와 그 구동방법
TW200305167A (en) Semiconductor memory apparatus simultaneously accessible via multi-ports
US20180102161A1 (en) Vertical Thyristor Memory Array and Memory Array Tile Therefor

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20131211

Termination date: 20210625