买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:ARM有限公司
摘要:本文描述的各种实施方式涉及一种错误检测和纠正电路。一种集成电路可以包括锁存电路,该锁存电路具有每个位单元行的锁存器,该锁存器将有效匹配数据锁存到每个位单元行的锁存器中。该集成电路可以包括优先级编码电路,该优先级编码电路从每个位单元行的锁存器接收有效匹配数据。该集成电路可以包括第一逻辑电路,该第一逻辑电路耦合在位单元阵列与优先级编码电路之间,从而有助于将有效匹配数据提供给锁存电路。
主权项:1.一种集成电路,包括:以列和行布置的位单元阵列;锁存电路,所述锁存电路具有每个位单元行的锁存器,所述锁存器将有效匹配数据锁存到每个位单元行的锁存器中;优先级编码电路,所述优先级编码电路从每个位单元行的锁存器接收所述有效匹配数据;以及第一逻辑电路,所述第一逻辑电路包括异或门,所述异或门耦合在所述位单元阵列与所述优先级编码电路之间,从而有助于通过提供有效锁存数据和或有效搜索数据来将所述有效匹配数据提供给所述锁存电路。
全文数据:错误检测和纠正电路技术领域本公开涉及一种错误检测和纠正电路,特别是涉及一种用于存储器设计的错误检测和纠正电路背景技术本部分旨在提供与理解本文描述的各种技术有关的信息。正如该部分的标题所意指的,这是对相关技术的讨论,绝不意味着它就是现有技术。通常,相关技术可以被认为或可以不被认为是现有技术。因此,应该理解的是,应从这个角度理解本部分中的任何陈述,而不是作为对现有技术的任何承认。在常规的半导体制造设计中,软错误指的是存储器设计者中日益关注的问题,并且通常会使用错误检测纠正码来减少这些软错误。不过,由于对存储器宏放置的限制,用于实现各种错误检测纠正方案的硬件开销可能会限制这些方案在某个小面积内的实现,而这可以被推送到片上系统SoC内的共享寄存器传送逻辑RTL。常规的错误纠正码ECC方法可以采用静态随机存取存储器SRAM,其中仅仅在从存储器读取数据时才执行ECC。然而,当数据是用于搜索时,这种方案可能没有用于其他类型的存储器结构。存储器设计已经包括提供ECC的专用硬件,不过遗憾的是,这可能会显著地增加硬件开销,并且通常可能在正常操作下导致性能损失。发明内容根据本公开的一个方面,提供了一种集成电路,包括:列和行布置的位单元阵列;锁存电路,所述锁存电路具有每个位单元行的锁存器,所述锁存器将有效匹配数据锁存到每个位单元行的锁存器中;优先级编码电路,所述优先级编码电路从每个位单元行的锁存器接收所述有效匹配数据;以及第一逻辑电路,所述第一逻辑电路耦合在所述位单元阵列与所述优先级编码电路之间,从而有助于将所述有效匹配数据提供给所述锁存电路。根据本公开的另一个方面,提供了一种集成电路,包括:三元内容可寻址存储器TCAM位单元行;所述TCAM位单元行的锁存器,其将有效匹配数据锁存到所述锁存器中;逻辑门,所述逻辑门耦合在所述TCAM位单元行与所述锁存器之间,从而有助于将所述有效匹配数据提供给所述锁存器;以及优先级编码器,所述优先级编码器从所述锁存器接收所述有效匹配数据。根据本公开的又一个方面,提供了一种用于制作集成电路的方法,包括:制造以列和行布置的位单元阵列;制造锁存电路,所述锁存电路具有每个位单元行的锁存器,所述锁存器将有效匹配数据锁存到每个位单元行的锁存器中;制造优先级编码电路,所述优先级编码电路从每个位单元行的锁存器接收所述有效匹配数据;并且制造逻辑电路,所述逻辑电路耦合在所述位单元阵列与所述优先级编码电路之间,从而有助于将所述有效匹配数据提供给所述锁存电路。附图说明本文参考附图描述了各种技术的实施方式。然而,应该理解,附图仅示出了本文描述的各种实施方式,并不意味着限制本文描述的各种技术的实施例。图1A示出了根据本文描述的各种实施方式的错误纠正和检测电路的框图。图1B示出了根据本文描述的各种实施方式的存储器单元电路的示意图。图2A至图2D示出了根据本文描述的各种实施方式的错误检测和错误纠正电路的各种图。图3示出了根据本文描述的各种实施方式的用于奇偶校验位覆盖的汉明码图的实施例。图4示出了根据本文描述的各种实施方式的用于制作集成电路的方法的工艺流程图。具体实施方式本文描述的各种实施方式涉及用于各种扫描链应用的错误检测和纠正电路。本文描述的某些实施方式涉及内容可寻址存储器CAM阵列架构,其中有效地重新使用了用于错误检测和错误纠正的搜索逻辑。因此,本文描述的某些实施方式允许将CAM搜索逻辑重新使用来计算错误检测和纠正校验和,进而减少软错误。现在本文中将参考图1A至图4详细描述错误检测和纠正电路的各种实施方式。图1A示出了根据本文描述的各种实施方式的错误纠正和检测电路100的图100A。错误纠正和检测电路100可以包括多个组件,比如,位单元阵列102、锁存电路104、优先级编码电路106和列输入输出IO电路108。错误纠正和检测电路100还可以包括逻辑电路120,逻辑电路120具有第一逻辑电路122和第二逻辑电路124。此外,错误纠正码ECC控制逻辑电路110可以被实现为与错误纠正和检测电路100接口连接。如本文所述,这些组件102、104、106、108、110、120、122、124可以耦合在一起以彼此接口连接并且可以共同操作来在各种扫描链应用中为电路100提供错误检测和纠正功能。错误检测和纠正电路100可以简称为错误检测和纠正电路。如图1A所示,位单元阵列102可以包括位单元的阵列,所述位单元例如内容可寻址存储器CAM单元,包括三元CAMTCAM单元、二元CAM单元或XY_CAM数据x,数据y单元。而且,位单元阵列102可以包括以各种配置布置的任何数量的位单元112,例如,具有任意数量N的列N列和任意数量的行N行的多个位单元112的二维2D存储器阵列N列×N行,位单元112可以按照具备2D索引能力的2D网格图案进行布置。通常,每个位单元112可以称为数据位单元或存储器存储单元,并且每个位单元112可以配置为存储至少一个数据位值例如,与逻辑“0”或“1”相关联的数据值。位单元阵列102可以称为数据位单元阵列。锁存电路104可以包括位单元阵列102中每个位单元行的一个或多个锁存器。例如,锁存电路104可以包括每个位单元行的锁存器,该锁存器配置为将有效匹配数据锁存到位单元阵列102中每个位单元行的锁存器中。优先级编码电路106可以从锁存电路104接收有效匹配数据,例如,从每个位单元行的每个锁存器接收有效匹配数据。优先级编码电路106可以基于从每个位单元行的每个锁存器接收到的有效匹配数据来提供所选择的位单元行的编码地址。逻辑电路120可以包括第一逻辑电路122,第一逻辑电路122耦合在位单元阵列102与优先级编码电路106之间,从而有助于将有效匹配数据提供给锁存电路104。这可以包括针对每个位单元行的每个锁存器提供有效匹配数据。在一些实例中,有效匹配数据可以指代与存储在每个位单元行的一个或多个位单元中的存储器数据相匹配的搜索数据。在一些实施方式中,第一逻辑电路122可以操作以将锁存电路104转换或变换成奇偶校验累加电路,其可以描述异或功能和或实施方式。在该实例中,优先级编码电路106可以通过逐位异或比较和累加来提供奇偶校验评估和错误检测。而且,在该特定实例中,优先级编码电路106可以配置成用于错误检测和错误纠正的优先级排序器。如图1A所示,ECC控制逻辑电路110与列IO电路108和优先级编码电路106通信,以便从优先级编码电路106接收有效性数据及相关信息,并经由列IO电路108控制来自位单元阵列102的数据流。在一些实例中,这种控制机制使得ECC控制逻辑电路110能实现并控制电路100的错误检测和或错误纠正。在各种实施方式中,可以使用例如TCAM位单元和或任何其他类型的易失性存储器来将错误纠正和检测电路100实现为用于各种类型的扫描链应用的集成电路IC。错误纠正和检测电路100可以实现为具有各种双轨存储器架构和相关电路的IC。此外,错误纠正和检测电路100可以与单个芯片上的计算电路和相关组件集成在一起。错误纠正和检测电路100可以在用于电子、移动、IoT物联网应用的嵌入式系统中实现。图1B示出了根据本文描述的各种实施方式的存储器单元电路112的示意图100B。在各种实施方式中,存储器单元电路112可以体现为TCAM位单元。在一些实例中,如图1B所示,位单元阵列102中的每个位单元112可以实现为TCAM位单元。WLXY和BLCT信号线用作存储单元的输入,并且在一个实例中,输入信号Axy可以作为逻辑零0施加到输入WLY,而另一输入信号Axy可以作为逻辑一1施加到输入WLY。TCAM位单元112可以包括多个组件,其中包括耦合到搜索逻辑140的存储器逻辑130。存储器逻辑130可以用数据6T位单元132和屏蔽6T位单元134实现,数据6T位单元132和屏蔽6T位单元134耦合在一起并将输出信号提供给搜索逻辑140。在一些实施方式中,图1A的位单元阵列102中的每个位单元行112的输出线指的是匹配线ML,并且图1A中的锁存电路104将有效匹配数据锁存到每个锁存器中,使得每个位单元行的匹配线ML进行预充电。如图1B所示,WLXY和BLCT信号线用于在读写操作期间访问TCAM位单元112的存储器逻辑130。搜索逻辑140可以实现为例如有线或门结构,该有线或门结构使用布置在两个NMOS堆叠中的多个N型金属氧化物半导体NMOS晶体管。在一些实施方式中,搜索逻辑140中的NMOS堆叠可以用于将搜索数据信号SLCSLT与数据屏蔽位单元132、134的内部位单元节点进行比较,从而根据下面的每个TCAM位和或搜索位的真值表1、2和3,利用匹配线ML信号来判断搜索是命中还是未命中。下面的表1指的是与TCAM位相关联的TCAM数据。TCAM位CORED_XCORED_Y001110不在意00非法11表1下面的表2指的是与搜索位相关联的搜索数据。搜索位SLTSLC001110不在意00非法11表2下面的表3指的是与ML位相关联的匹配线ML数据。MLTCAM位搜索位0010101001111不在意X1X不在意表3在一些实施方式中,如果一个位单元行中的任何一个数据位是未命中的,则整条ML线在数据字上共享变低,从而使得比较结果是未命中的。如果一个位单元行中的所有位单元数据与输入比较数据都是匹配的,则ML线保持为高并使结果为该数据字的命中HIT。此外,数据字末尾的有效位或有效位数据可以指定字中的数据是有效的还是无效的。在这个实例中,仅对有效字的搜索结果进行锁存并将其传递给优先级编码电路106,以便产生匹配的行地址。图2A至图2D示出了根据本文描述的各种实施方式的错误检测和纠正电路200的各种图。具体地,图2A示出了错误检测和纠正电路200的第一实施方式200A,图2B示出了错误检测和纠正电路200的第二实施方式200B,图2C示出了错误检测和纠正电路200的第三实施方式200C,而图2D示出了错误检测和纠正电路200的第四实施方式200D。如结合图1A中所示的电路100和图1B中所示的TCAM位单元112所描述的那样,图2A至图2D中的各种组件在范围、功能和操作方面是类似的。如图2A所示,错误检测和纠正电路200包括以列和行布置的位单元阵列102。在一些实施方式中,位单元112体现为TCAM单元,例如,如图1B中所述。因此,如图所示,位单元阵列102可以包括多行TCAM位单元,其中每个TCAM位单元具有数据6T单元212A和屏蔽6T单元212B,而且,每行TCAM位单元对应于匹配线ML。在一些其他实施方式中,位单元112可以体现为二元CAM单元、三元CAM单元或XY-CAM单元。在一些实例中,本文描述的实施方式使得位单元阵列102保持完整并且在错误检测纠正模式下将锁存电路104转换为异或累加器。电路200包括锁存电路104,锁存电路104具有每个位单元行的锁存器204,每个位单元行具有对应的匹配线ML0,...,MLN,锁存器204将有效匹配数据锁存到每个位单元行的锁存器204中。在一些实施方式中,每个位单元行的输出线指的是匹配线ML0,...,MLN,并且锁存电路104可以配置为将有效匹配数据锁存到每个锁存器204中,使得每个位单元行的匹配线ML0,...,MLN进行预充电。在一些实例中,如图所示,锁存电路104可以包括每个TCAM位单元行的至少一个锁存器204,至少一个锁存器204将有效匹配数据锁存到至少一个锁存器204中。电路200包括从每个位单元行的锁存器204接收有效匹配数据的优先级编码电路106。在一些实施方式中,优先级编码电路106基于从每个锁存器204接收到的有效匹配数据来提供所选择的位单元行的编码地址。优先级编码电路106可以通过逐位异或比较和累加来提供奇偶校验评估和错误检测。在这个实例中,优先级编码电路106可以实现为用于错误检测和或错误纠正的优先级排序器。在一些实例中,如图所示,优先级编码电路106从每个锁存器204接收有效匹配数据。电路200包括第一逻辑电路122,第一逻辑电路122耦合在位单元阵列102与优先级编码电路106之间,从而有助于将有效匹配数据提供给锁存电路104。如上所述,有效匹配数据可以指代与存储在每个位单元行的一个或多个位单元中的存储器数据相匹配的搜索数据。第一逻辑电路122可以将锁存电路104转换成奇偶校验累加电路,其描述了异或实施方式。在一些实施方式中,第一逻辑电路122可以包括第一逻辑222,第一逻辑222耦合在每行TCAM位单元与锁存器204之间,从而有助于向锁存器204提供有效匹配数据。第一逻辑电路122的第一逻辑222可以体现为逻辑门即,第一逻辑门,并且如图2B所示,第一逻辑电路122的第一逻辑门222可以体现为异或门232。在其他实施方式中,如图2C所示,第一逻辑电路122的第一逻辑门222可以体现为异或门232和可与选择信号SEL一起操作的多路复用器242在第一配置中。在其他实施方式中,如图2D所示,第一逻辑电路122的第一逻辑门222可以体现为异或门232和可与选择信号SEL一起操作的多路复用器242在第二配置中。电路200包括每个位单元行的有效位VBIT电路230,用于指示出有效数据存储在每个位单元行中,并且有效位VBIT电路230将有效数据提供给锁存电路104。如图所示,第一逻辑电路122耦合在有效位VBIT电路230与锁存电路104之间,从而有助于将有效匹配数据提供给锁存电路104。电路200包括耦合到每个位单元行的第二逻辑电路124,并且如图所示,第一逻辑电路122耦合在第二逻辑电路124与锁存电路104之间。在一些实施方式中,第二逻辑电路124可以包括第二逻辑224,第二逻辑224耦合在每行TCAM位单元与第一逻辑电路122以及锁存器204之间,从而有助于向锁存器204提供有效匹配数据。如图所示,第二逻辑电路124的第二逻辑224可以体现为每行TCAM位单元的逻辑门即,第二逻辑门,并且如图2B至图2D所示,第二逻辑电路124的第二逻辑门224可以体现为与门234。在一些实施方式中,如图2A至图2D所示,第二逻辑门224可以耦合在每行TCAM位单元与第一逻辑门222之间,从而有助于将有效匹配数据提供给每个TCAM位单元行的锁存器204。在这个实例中,每个TCAM位单元行的有效位电路230可以用于指示有效数据存储在每行TCAM位单元中,并且如图所示,有效位电路230可以耦合到锁存器204并向每个TCAM位单元行的第二逻辑门224提供有效数据。在一些实例中,每个TCAM位单元行的第二逻辑门224耦合在有效位电路230与每个TCAM位单元行的第一逻辑门222之间。在其他实例中,每个TCAM位单元行的第一逻辑门222可以耦合在第二逻辑门224与该TCAM位单元行的锁存器204之间。参考图2A,锁存器204的输出被反馈到第一逻辑门222,因此,第一逻辑门222基于接收来自第二逻辑门224的输出和来自锁存器204的输出来提供输出。参考图2B,锁存器204的输出被反馈到第一逻辑异或门232,因此,第一逻辑异或门232基于接收来自第二逻辑与门234的输出和来自锁存器204的输出来提供输出。参考图2C,锁存器204的输出被反馈到第一逻辑异或门232,因此,第一逻辑异或门232基于接收来自第二逻辑与门234的输出和来自锁存器204的输出来提供输出。此外,如图2C中的MUX242的第一配置所示,基于选择信号SEL,MUX242基于接收来自第二逻辑与门234的输出和来自第一逻辑异或门232的输出来提供输出。参考图2D中的MUX242的第二配置,锁存器204的输出经由MUX242被反馈到第一逻辑异或门232。如图2D所示,基于选择信号SEL,MUX242基于接收来自锁存器204的输出和逻辑零0输入例如,接地信号来提供输出。此外,如图2D所示,第一逻辑异或门232基于接收来自第二逻辑与门234的输出和来自MUX242的输出来提供输出。在一些实施方式中,可以仅在错误检测码EDC评估模式和或错误纠正码ECC评估模式下启用异或路径。在EDCECC评估模式下,数据的奇偶校验检查可以为开ON仅在一条SLT线例如,SLT0中且在任何给定时间下,并且其类似地用作读取字线。例如,如果数据为零0,则奇偶校验检查可以使对应的ML线放电,并且可以将SLC线拉低,以隔离相邻的行。可以在多个时钟周期内针对数据奇偶校验的每条SLT线重复此操作,同时每次利用先前的部分异或结果对ML输出进行异或计算,直到完成对所有位的异或计算。最终奇偶校验数据可以通过优先级编码电路106,由此标识哪一特定的位单元行可能具有错误。图3示出了根据本文描述的各种实施方式的用于奇偶校验位覆盖的汉明码图300的实施例。在一些实施方式中,如图3所示,汉明码图300涉及在数据字的不同位位置处添加多个奇偶校验位。例如,每次奇偶校验位检查为数据字的特定子集位提供奇偶校验,如图3所示。在这个实例中,p1可以用于检查一个或多个或者所有奇数索引位位置。在一些实施方式中,可以针对每个奇偶校验位重复汉明码操作,同时还对SLT序列进行调整,以便仅访问与该奇偶校验位相对应的所需位。数据字地址奇偶校验失败的地方可以由作为CAM的一部分的优先级排序器块即,优先级编码电路106产生。对应于每个奇偶校验位的数据字地址可以在CAM外部进行组合,以指向发生错误的特定位。类似的硬件可以扩展到SECDED编码即,单个错误纠正-双重错误检测,这是因为它连同一个附加的奇偶校验位一起类似于汉明码。在一些实例中,为了检查屏蔽数据字上的奇偶校验,可以通过在将SLT绑定到低例如,接地GND,VSS或接地电压源的同时访问SLC线来重复汉明码操作。本文描述的各种实施方式提供了各种优点。例如,本文描述的方案和技术提供了如下的方法:该方法以最小的开销高效地重新使用硬件,从而通过奇偶校验、汉明码、SECDED编码或任何其他依赖于按位异或的相关编码系统来实现完整错误检测和纠正。此外,可以用任何其他逻辑来替换异或累加,以扩展应用。在本文描述的方案和技术中,ECC覆盖全阵列所需的循环总数可以等于位数。在本文描述的方案和技术中,硬件可以等于一个异或累加器乘以即,相乘数据字的数量。此外,在本文描述的方案和技术中,由于跨位宽的共享匹配线ML输出,因此,可以更容易地按每个数据字使用一个异或累加器。此外,本文描述的方案和技术与提供面积效率的优点相关联。图4示出了根据本文描述的各种实施方式的用于制作集成电路的方法400的工艺流程图。应当理解,即使方法400可以指示特定顺序的操作执行,但是,操作的各个特定部分可以以不同的顺序执行,并且可以在不同的系统上执行。而且,可以向方法400添加和或从方法400中省略附加操作和或步骤。在各种实施方式中,方法400可以以硬件和或软件来实施。例如,如果以硬件实现,则方法400可以实现为各种电路组件,如本文参考图1A至图3所述。否则,如果以软件实现,则方法400可以实现为程序和或软件指令过程,该程序和或软件指令过程配置用于各种扫描链应用的错误检测和纠正电路。而且,如果以软件实现,与方法400相关的指令可以存储在非暂时性存储器和或数据库中。例如,计算机或具有处理器和存储器的各种其他类型的计算设备可以配置为执行方法400。如结合图4所述和所示,方法400可以用于制作在各种类型的扫描链应用例如,TCAM应用中实现错误检测和或纠正电路的集成电路IC。在框410处,方法400可以制造以列和行布置的位单元阵列。在各种实施方式中,位单元阵列中的位单元可以包括各种类型的存储器存储单元,例如,内容可寻址存储器CAM单元、二元CAM单元、三元CAM单元或XY-CAM单元。在框420处,方法400可以制造锁存电路,该锁存电路具有每个位单元行的锁存器,该锁存器将有效匹配数据锁存到每个位单元行的锁存器中。在一些实例中,有效匹配数据可以指代与存储在每个位单元行的一个或多个位单元中的存储器数据相匹配的搜索数据。在一些实例中,每个位单元行的输出线可以包括匹配线ML,并且锁存电路将有效匹配数据锁存到每个锁存器中,使得每个位单元行的匹配线进行预充电。在框430处,方法400可以制造优先级编码电路,该优先级编码电路从每个位单元行的锁存器接收有效匹配数据。优先级编码电路可以基于从每个锁存器接收到的有效匹配数据来提供所选择的位单元行的编码地址。在一些实施方式中,优先级编码电路可以通过逐位异或比较和累加来提供奇偶校验评估和错误检测。在其他实施方式中,优先级编码电路可以体现为用于错误检测和错误纠正的优先级排序器。在框440处,方法400可以制造逻辑电路即,第一逻辑电路,该逻辑电路耦合在位单元阵列与优先级编码电路之间,从而有助于向锁存电路提供有效匹配数据。在一些实施方式中,第一逻辑电路可以将锁存电路转换为奇偶校验累加电路,其描述了异或实施方式。在一些实施方式中,方法400可以包括制造每个位单元行的有效位电路,用于指示有效数据存储在每个位单元行中,并且有效位电路可以将有效数据提供给锁存电路。第一逻辑电路可以耦合在有效位电路与锁存电路之间,从而有助于将有效匹配数据提供给锁存电路。方法400可以包括制造耦合到每个位单元行的第二逻辑电路,并且第一逻辑电路可以耦合在第二逻辑电路与锁存电路之间。在一些实施方式中,第一逻辑电路可以包括第一逻辑门,并且第一逻辑门可以包括异或门。第二逻辑电路可以包括每个位单元行的第二逻辑门,并且第二逻辑门可以包括与门。第二逻辑门可以耦合在每个位单元行与第一逻辑门之间,从而有助于将有效匹配数据提供给每个位单元行的锁存器。有效位电路可以耦合到锁存器并将有效数据提供给该位单元行的第二逻辑门。此外,每个位单元行的第二逻辑门可以耦合在有效位电路与每个位单元行的第一逻辑门之间。每个位单元行的第一逻辑门可以耦合在第二逻辑门与每个位单元行的锁存器之间。本文描述的是集成电路的各种实施方式。集成电路可以包括以列和行布置的位单元阵列。集成电路可以包括锁存电路,该锁存电路具有每个位单元行的锁存器,该锁存器将有效匹配数据锁存到每个位单元行的锁存器中。集成电路可以包括优先级编码电路,该优先级编码电路从每个位单元行的锁存器接收有效匹配数据。集成电路可以包括第一逻辑电路,该第一逻辑电路耦合在位单元阵列与优先级编码电路之间,从而有助于将有效匹配数据提供给锁存电路。本文描述的是集成电路的各种实施方式。集成电路可以包括三元内容可寻址存储器TCAM位单元行。集成电路可以包括TCAM位单元行的锁存器,该锁存器将有效匹配数据锁存到锁存器中。集成电路可以包括逻辑门,该逻辑门耦合在TCAM位单元行与锁存器之间,从而有助于向锁存器提供有效匹配数据。集成电路可以包括从锁存器接收有效匹配数据的优先级编码器。本文描述的是用于制作或制造集成电路的方法的各种实施方式。该方法可以包括制造以列和行布置的位单元阵列。该方法可以包括制造锁存电路,该锁存电路具有每个位单元行的锁存器,该锁存器将有效匹配数据锁存到每个位单元行的锁存器中。该方法可以包括制造优先级编码电路,该优先级编码电路从每个位单元行的锁存器接收有效匹配数据。该方法可以包括制造逻辑电路,该逻辑电路耦合在位单元阵列与优先级编码电路之间,从而有助于将有效匹配数据提供给锁存电路。提供上述发明内容部分来以简化的形式介绍一些概念,这些概念在上面的具体实施方式部分中进行了进一步的描述。发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。此外,所要求保护的主题并不局限于解决在本公开的任何部分中提到的任何或所有缺点的实施方式。应当旨在使权利要求的主题不局限于本文提供的实施方式和说明,而是包括那些实施方式的修改形式,其中包括根据权利要求的实施方式的各部分和不同实施方式的元素的组合。应当认识到,在任何这样的实施方式的开发中如在任何工程或设计项目中,应该做出许多实施方式特定的决策,以便实现开发者的特定目标,比如,遵守与系统相关的约束条件和与业务相关的约束条件,这些约束条件可以因实施方式而异。此外,应当认识到的是,这样的开发努力可能是复杂且耗时的,但是对于受益于本公开的普通技术人员来说仍然是设计、制造和制作的常规任务。已经详细参考了各种实施方式,这些实施方式的示例在附图中进行了示出。在以下详细描述中,为了提供对本文提供的公开内容的透彻理解,阐述了许多具体细节。然而,可以在没有这些具体细节的情况下实践本文提供的公开内容。在一些其他情况下,没有详细描述众所周知的方法、过程、组件、电路和网络,以免不必要地使实施例的细节变得模糊。还应该理解,尽管本文可以使用术语“第一”、“第二”等来描述各种元件,但是这些元件不应受到这些术语的限制。这些术语仅用于区分一个元件与另一个元件。例如,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件。第一元件和第二元件都是元件,但它们并不被认为是同一元件。在对本文提供的公开内容的描述中,所使用的术语是为了描述特定的实施方式,并不旨在限制本文提供的公开内容。如在本文提供的公开内容的描述和所附权利要求中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文另有明确说明。本文使用的术语“和或”是指并且包含一个或多个相关所列项目的任何和所有可能的组合。当在本说明书中使用时,术语“包括”、“包括着”、“包含”和或“包含着”指明所述特征、整数、步骤、操作、元件和或组件的存在,但是没有排除一个或多个其他特征、整数、步骤、操作、元件、组件和或其组合的存在或添加。如本文所用,术语“如果”可以被解释为表示“当......时”或“在......时”或“响应于确定了”或“响应于检测到”,这具体取决于上下文。类似地,短语“如果确定了”或“如果检测到[陈述的条件或事件]”可以被解释为表示“在确定了......时”或“响应于确定了”或“在检测到[陈述的条件或事件]时”或“响应于检测到[陈述的条件或事件]”,这具体取决于上下文。术语“上”和“下”、“上部”和“下部”、“向上地”和“向下地”、“下方”和“上方”以及表示在指定点或指定元件上方或下方的相对位置的其他类似术语可以与本文描述的各种技术的某些实施方式相结合地使用。虽然前述内容涉及的是本文描述的各种技术的实施方式,但是可以根据本文的公开内容设计出其他的和进一步的实施方式,这可以由随后的权利要求确定。尽管已经以特定于结构特征和或方法动作的语言描述了本主题,但应理解的是,所附权利要求书中定义的主题不必局限于上述具体特征或动作。相反,将上述具体特征和动作作为实现权利要求的示例性形式来公开。
权利要求:1.一种集成电路,包括:以列和行布置的位单元阵列;锁存电路,所述锁存电路具有每个位单元行的锁存器,所述锁存器将有效匹配数据锁存到每个位单元行的锁存器中;优先级编码电路,所述优先级编码电路从每个位单元行的锁存器接收所述有效匹配数据;以及第一逻辑电路,所述第一逻辑电路耦合在所述位单元阵列与所述优先级编码电路之间,从而有助于将所述有效匹配数据提供给所述锁存电路。2.根据权利要求1所述的集成电路,其中,所述位单元包括内容可寻址存储器CAM单元、二元CAM单元、三元CAM单元或XY-CAM单元。3.根据权利要求1所述的集成电路,其中,所述有效匹配数据指代与存储在每个位单元行的一个或多个位单元中的存储器数据相匹配的搜索数据。4.根据权利要求1所述的集成电路,其中,每个位单元行的输出线包括匹配线,并且其中,所述锁存电路将所述有效匹配数据锁存到每个锁存器中,使得每个位单元行的所述匹配线被预充电。5.根据权利要求1所述的集成电路,其中,所述优先级编码电路基于从每个锁存器接收到的所述有效匹配数据来提供所选择的位单元行的编码地址。6.根据权利要求1所述的集成电路,还包括每个位单元行的有效位电路,用于指示有效数据存储在每个位单元行中,并且其中,所述有效位电路将所述有效数据提供给所述锁存电路。7.根据权利要求6所述的集成电路,其中,所述第一逻辑电路耦合在所述有效位电路与所述锁存电路之间,从而有助于将所述有效匹配数据提供给所述锁存电路。8.根据权利要求6所述的集成电路,还包括耦合到每个位单元行的第二逻辑电路,并且其中,所述第一逻辑电路耦合在所述第二逻辑电路与所述锁存电路之间。9.根据权利要求1所述的集成电路,其中,所述第一逻辑电路将所述锁存电路转换成奇偶校验累加电路。10.根据权利要求1所述的集成电路,其中,所述优先级编码电路通过逐位比较和累加来提供奇偶校验评估和错误检测。11.根据权利要求1所述的集成电路,其中,所述优先级编码电路包括用于错误检测和错误纠正的优先级排序器。12.一种集成电路,包括:三元内容可寻址存储器TCAM位单元行;所述TCAM位单元行的锁存器,其将有效匹配数据锁存到所述锁存器中;逻辑门,所述逻辑门耦合在所述TCAM位单元行与所述锁存器之间,从而有助于将所述有效匹配数据提供给所述锁存器;以及优先级编码器,所述优先级编码器从所述锁存器接收所述有效匹配数据。13.根据权利要求12所述的集成电路,其中,所述逻辑门包括第一逻辑门,并且其中,所述第一逻辑门包括异或门。14.根据权利要求13所述的集成电路,还包括所述TCAM位单元行的第二逻辑门,并且其中,所述第二逻辑门包括与门。15.根据权利要求14所述的集成电路,其中,所述第二逻辑门耦合在所述位单元行与所述第一逻辑门之间,从而有助于将所述有效匹配数据提供给所述位单元行的锁存器。16.根据权利要求14所述的集成电路,还包括所述位单元行的有效位电路,用于指示有效数据存储在所述位单元行中,并且其中,所述有效位电路耦合到所述锁存器并且将所述有效数据提供给所述位单元行的所述第二逻辑门。17.根据权利要求16所述的集成电路,其中,所述位单元行的所述第二逻辑门耦合在所述有效位电路与所述位单元行的所述第一逻辑门之间。18.根据权利要求14所述的集成电路,其中,所述位单元行的所述第一逻辑门耦合在所述第二逻辑门与所述位单元行的锁存器之间。19.根据权利要求12所述的集成电路,其中,所述优先级编码器包括用于错误检测和错误纠正的优先级排序器。20.一种用于制作集成电路的方法,包括:制造以列和行布置的位单元阵列;制造锁存电路,所述锁存电路具有每个位单元行的锁存器,所述锁存器将有效匹配数据锁存到每个位单元行的锁存器中;制造优先级编码电路,所述优先级编码电路从每个位单元行的锁存器接收所述有效匹配数据;并且制造逻辑电路,所述逻辑电路耦合在所述位单元阵列与所述优先级编码电路之间,从而有助于将所述有效匹配数据提供给所述锁存电路。
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。