在进行数据存取之前将数据从存储器中的有缺陷数据项重导向到冗余数据项,及相关系...的制作方法_3

文档序号:9476334阅读:来源:国知局
6的重导向索引52,那么存取SRAM数据阵列18是基于重导向索引52(图2中的框74)。然而,如上文所描述,如果确定数据项地址14与有缺陷的数据项地址48之间不存在匹配,那么通过数据项地址14提及的数据项16不被视为有缺陷的。在未确定对应于存储器存取请求12的数据项16为有缺陷的情况下,如果未将其它索引28提供到如下文所描述的数据项地址索引选择器32,那么数据项地址索引选择器32提供索引28以对SRAM数据阵列18中的数据项16编索引(图2中的框66)。
[0031]继续参看图1及2,由有缺陷的数据项比较器电路44接收的有缺陷的数据项地址48对应于先前在SRAM数据阵列18中识别的有缺陷的数据项36。有缺陷的数据项地址48为从有缺陷的数据项索引寄存器56输出的地址。有缺陷的数据项索引寄存器56包括确定在SRAM数据阵列18中的有缺陷的数据项地址48 (如果存在的话)的列表。可在制造工艺期间确定对应于SRAM数据阵列18中的有缺陷的数据项36的有缺陷的数据项地址48的列表。如先前所论述,存储器10的制造工艺可能在SRAM数据阵列18中产生有缺陷的数据项行36R或列36C。可在制造工艺的各种测试阶段期间识别SRAM数据阵列18中的有缺陷的数据项行36R及有缺陷的数据项列36C。如果确定在这些各种测试阶段期间,存在任何有缺陷的数据项行36R或有缺陷的数据项列36C,那么将产生含有所识别的有缺陷的数据项地址48(如果存在的话)的列表的有缺陷的数据项索引寄存器56。有缺陷的数据项地址48将供有缺陷的数据项比较器电路44用以确定数据项地址14是否为有缺陷的数据项36。
[0032]应注意,有缺陷的数据项索引寄存器56可为可存储有缺陷的数据项地址48的任何类型的存储元件或装置。举例来说,作为非限制性实例,有缺陷的数据项索引寄存器56可包含用以指示有缺陷的数据项地址48的位值的一组可编程熔丝。有缺陷的数据项索引寄存器56还可由存储有缺陷的数据项地址48的基于电路的存储装置组成,包含但不限于CPU寄存器。
[0033]在本文所论述的实施例中,为了避免或减少数据项重导向电路38的时延对存储器存取请求12时延添加时延,并未将数据项重导向电路38提供于存储器10的第一数据存取路径20中。实情为,将数据项重导向电路38提供于存储器10中的第二数据存取路径42中在第一数据存取路径20外部。数据项重导向电路38在第二数据存取路径42中接收用于存储器存取请求12的相同的数据项地址14。如果数据项地址14指向SRAM数据阵列18中的有缺陷的数据项36,那么数据项重导向电路38将数据项地址14重导向到SRAM数据阵列18中的冗余数据项40。通过将数据项重导向电路38提供于第二数据存取路径42中在第一数据存取路径20外部,数据项重导向电路38可确定所请求的数据项地址14是否为有缺陷的,及在进行数据项地址14处的SRAM数据阵列18中的数据项16存取之前将存储器存取请求12重导向到SRAM数据阵列18中的冗余数据项40。以此方式,数据项重导向电路38的时延并未作为用于存储器存取请求12的第一数据存取路径20的部分而提供,其并不涉及到SRAM数据阵列18中的冗余数据项40的重导向。存储器10可提供用于不同存储器10应用中,例如SRAM高速缓冲存储器,其常常用于较高性能应用中。因此,避免或减少作为用于存储器存取请求12的第一数据存取路径20的部分的数据项重导向电路38的时延可为特别有利的。
[0034]在需要时,可提供包含数据项重导向电路的存储器以用于不同存储器应用。举例来说,图3说明包含类似于图1中的存储器10中的数据项重导向电路38的数据项重导向电路38’的高速缓冲存储器10’的示范性框图。高速缓冲存储器10’包含类似于图1的对应元件的存储器存取逻辑电路24’及数据阵列17。在此实例中,数据阵列17为SRAM数据阵列18。高速缓冲存储器10’为图1的存储器10的示意图的示范性实施例。图1中的存储器10与图3中的高速缓冲存储器10’之间的共同元件通过共同元件编号来提及,且将不再根据图3重新描述。存储器存取逻辑电路24’包括标签阵列逻辑电路74。标签阵列逻辑电路74由标签列76、有效列78、标签阵列逻辑80及解码器逻辑电路82组成。标签阵列逻辑电路74是作为芯片上存储器索引提供以用于执行针对SRAM数据阵列18中的数据项16的有效查找。标签阵列逻辑电路74确定数据项地址14与标签列76的有效内容之间是否存在匹配。
[0035]继续参看图3,当确定数据项地址14匹配标签列76的内容后,标签阵列逻辑80将确定所接收的数据项地址14是否为有效的。标签阵列逻辑80从标签列76接收参考标签地址84。标签阵列逻辑80接着确定所提及的标签地址84是否为有效的。如果所提及的标签地址84为有效的,那么产生“高速缓存命中”。然而,如果不存在所提及的标签地址84或如果确定所提及的标签地址84无效,那么产生“高速缓存未命中”。解码器逻辑电路82从标签阵列逻辑80接收有效标签地址86。在接收到有效标签地址86后,解码器逻辑电路82分辨SRAM数据阵列18中的数据项16的地址位置。标签阵列逻辑电路74提供索引28作为存储器存取逻辑电路24’的输出。类似于图1中的存储器10,图3的高速缓冲存储器10’中的存储器存取逻辑电路24’将索引28作为输出提供到数据项地址索引选择器32以用于选择在SRAM数据阵列18中存取的数据项16。然而,在此示范性实施例中,如果在标签阵列逻辑电路74中确定“高速缓存命中”,那么将提供索引28作为输出。应注意,标签阵列逻辑80将确定所接收的数据项16是否为有效的,从而产生“高速缓存命中”或“高速缓存未命中”,即使确定数据项16在第二数据存取路径42中为有缺陷的也如此。以此方式,如下文所描述,第二数据存取路径42中的处理将确定数据项16是否为有缺陷的,但并不替换确定数据项16是否为有效的功能,从而产生在第一数据存取路径20中执行的“高速缓存命中”或“高速缓存未命中”。
[0036]继续参看图3,类似于图1的数据项重导向电路38’提供于第二数据存取路径42中。数据项重导向电路38’提供比较数据项地址14与有缺陷的数据项地址48的类似功能。数据项重导向电路38’可由至少一个有缺陷的数据项地址比较器组成。在此非限制性实例中,提供第一有缺陷的数据项地址比较器88,且视情况,提供第二有缺陷的数据项地址比较器90。第一有缺陷的数据项地址比较器88经配置以比较数据项地址14的至少一部分与有缺陷的数据项地址48。可视情况提供第二有缺陷的数据项地址比较器90以减少第一有缺陷的数据项地址比较器88将需要与有缺陷的数据项地址48相比较的数据项地址14的位数。与仅提供单个比较器来比较数据项地址14中的所有位形成对比,通过减少此比较的每一阶段中的数据项地址14的位数,可增加第一有缺陷的数据项地址比较器88的性能。在替代实施例中,可使用使用多个有缺陷的数据项地址比较器进行的超过两个(2)比较阶段。作为非限制性实例,第一有缺陷的数据项地址比较器88可比较最高有效X位,且第二有缺陷的数据项地址比较器90可比较剩余的最低有效Y位。将分辨的冗余地址92的第一部分输出到有缺陷的逻辑电路94,所述有缺陷的逻辑电路组合视情况选用的多个有缺陷的数据项地址比较器的结果。有缺陷的逻辑电路94的输出为重导向索引52。将重导向索引52输出到数据项地址索引选择器32。
[0037]继续参看图3,有缺陷的逻辑电路94的输出为基于在数据项重导向电路38’中执行的比较而产生的重导向索引52。将重导向索引52输出到数据项地址索引选择器32。数据项地址索引选择器32使用重导向索引52,如果提供重导向索引的话,以按所接收的重导向索引52而不是如上文所描述的索引28对SRAM数据阵列18编索引。按重导向索引52进行的对SRAM数据阵列18的编索引允许存取冗余数据项40。当存取后,SRAM数据阵列18将致使在SRAM数据阵列输出34上从SRAM数据阵列18输出冗余数据项40处的值。通过输出SRAM数据阵列18中的冗余数据项40中的值进行的存取的完成经由第二数据存取路径42完成存取。
[0038]继续参看图3,对SRAM数据阵列18的存储器存取的时延并未由于数据项重导向电路38’而增加。为了避免或减少数据项重导向电路38’的时延对存储器存取添加时延,将数据项重导向电路38’提供于第二数据存取路径42中,而非提供于存储器10的第一数据存取路径20中。另外,为了避免数据项重导向电路38’的时延对存储器存取添加时延,含有数据项重导向电路38’的第二数据存取路径42的时延小于第一数据存取路径20的时延。因此,存储器存取时延将为第一数据存取路径20的时延。
[0039]继续参看图3,存储器存取请求12由用于定址数据项16的存储器存取请求(MAR)地址96组成。MAR地址96由数据项地址14组成。数据项地址14将由MAR地址96的最高有效位组成,其中数据项地址14可具有比MAR地址96少的位。为了完全分辨数据项16地址,需要MAR地址96的所有位。然而,在数据项地址14具有比MAR地址96少的位的情况下,将存在至少一个列选择位98及/或至少一个行选择位100,其将并不作为数据项地址14的部分而包含。如果数据项地址14由比MAR地址96少的位组成,那么数据项地址14可定址多个数据项行16R及/或多个数据项列16C。
[0040]继续参看图3,在此非限制性实例中,MAR地址96具有十七个(17)位。提供于MAR地址96中的十七个(17)位用以完全分辨存储器位置。提供于MAR地址96中的数据项地址14具有十四个(14)位。在此实例中,至少一个列选择位98由两个(2)位组成,这是因为其定址多个列102中的四个(4)中的一者(I)。另外,在此实例中,至少一个行选择位100由一个(I)位组成,这是因为其定址多个行104中的两个(2)行中的一者(I)。因此,MAR地址96具有总共十七个(17)位。MAR地址96中的十七个(17)位由以下各者组成:用于数据项地址14的十四个(14)位、两个(2)列选择位98,及一个(I)行选择位100。至少一个列选择位98中的位数及至少一个行选择位100中的位数是通过设计选项来确定。
[0041]继续参看图3,设计选项可包含SRAM数据阵列18的列mux电路方案及/或行替换配对。作为非限制性实例,高速缓冲存储器10’设计可包括4-1 (四对一)列mux电路方案,其中多个列102中存在共享一组(I)专用外围电路(例如,列解码器、写入驱动器、读出放大器,及控制/定时电路系统等)的四个⑷列。4-1列mux电路方案中的有缺陷的数据项36需要重导向多个列102中的所有四个(4)列,这归因于共享的专用外围电路。在4-1列mux电路方案的此实例中,表示多个列102中的四个⑷列的MAR地址96中的两个(2)列选择位98并非所需的。在此实例中,两个(2)列选择位98并非所需的,这是因为多个列102中的四个(4)列经替换或经重导向以用于单个列重导向动作。如果需要重导向4-1列mux电路方案内的一列,那么将使用表示多个列102中的四个⑷的两个(2)列选择位98。
[0042]继
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1