CN1158484A - 可编程奇偶校验及比较电路 - Google Patents
可编程奇偶校验及比较电路 Download PDFInfo
- Publication number
- CN1158484A CN1158484A CN96117282A CN96117282A CN1158484A CN 1158484 A CN1158484 A CN 1158484A CN 96117282 A CN96117282 A CN 96117282A CN 96117282 A CN96117282 A CN 96117282A CN 1158484 A CN1158484 A CN 1158484A
- Authority
- CN
- China
- Prior art keywords
- group
- input
- parity
- circuit
- comparator circuit
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000000295 complement effect Effects 0.000 claims 2
- 230000003750 conditioning effect Effects 0.000 claims 2
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- LBDSXVIYZYSRII-IGMARMGPSA-N alpha-particle Chemical compound [4He+2] LBDSXVIYZYSRII-IGMARMGPSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- JJWKPURADFRFRB-UHFFFAOYSA-N carbonyl sulfide Chemical compound O=C=S JJWKPURADFRFRB-UHFFFAOYSA-N 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013496 data integrity verification Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
Abstract
一种用于存储器阵列的可编程奇偶校验电路,包括至少一组可编程选择的输入端,这些输入端排列成可使该电路可编程地配置成对存储在该存储器阵列或要存储在该存储器阵列里的数据执行奇数奇偶校验或偶数奇偶校验运算,或者备择地配置成为该存储器阵列之外的电路执行非奇偶性的逐位比较。并为不同的路由选择配置采取了措施。
Description
本申请涉及共同拥有的同时提出的美国专利申请:
1.序列号575312、存档号FI995-077,名称为“现场可编程存储器阵列”;
2.序列号575422、存档号FI995-140,名称为“在采用单单元写端口的存储器阵列中一种实现写、初始化和复位的系统”。
上述有关的美国专利中请中涉及“最佳实施方式说明”的章节及附图明显地作为本文的参考。
本发明一般性涉及数据存储器,并且更具体地涉及具有关联可编程路由选择及控制资源的可编程存储器阵列。本发明尤其涉及用于可编程存储器阵列的可编程奇偶校验及比较电路。
序列号为575312,存档号为FI995-077,名称为“现场可编程存储器阵列”的相关申请提出一种可编程存储器阵列。为了实现选择性的可配置数据存储结构(即,具有可变的宽度和/或深度)以及实现数据存取技术(即,简单读/写、后进先出(LIFO)、先进先出FIFO或者翻转数据线操作),该建议的可编程存储器阵列和可编程路由选择及控制资源关联。
奇偶性是和数据完整校验操作有关的一个术语。基于奇偶性对数据完整性进行校验的电路通常既包括在存储器里也包括在逻辑电路里。普通的奇偶操作包括奇偶位生成和奇偶校验。奇偶位生成指的是对一个奇偶校验位进行计算,该位可以和一组供以后参照的二进制数字相关。根据存储器结构计算奇偶校验位使得所有数字(包括该奇偶校验位)之和或者为奇数或者为偶数。奇偶校验是把先前确定的奇偶校验位和重新计算的奇偶校验位进行比较的操作。例如,在把数据写进存储器之前最初生成的奇偶校验位可以和以后从存储器里读出同一字后重新计算的奇偶校验位进行比较,以作为一种确保该数据在存储于存储器期间或者在向存储器传入和从存储器传出中未形成错误的手段。数据错误可由信号噪声、电源噪声或者诸如α粒子射线或宇宙射线的射线引起。
常规的奇偶电路适合于和专用于其所服务的存储器电路的数据存储结构。例如,数据存储结构通常规定奇偶性是奇数还是为偶数。因此,常规奇偶电路的特点是为奇数奇偶性或者偶数奇偶性中的一种。作为进一步的例子,常规奇偶电路的输入和输出是固定的,这是因为进出奇偶电路的数据流取决于预先确定的数据存储结构;不能提供路由选择灵活性。另外,常规奇偶电路仅用于奇偶性操作而不向支持存储器的外部电路提供其它非奇偶性的逻辑功能。
对于具有选择性可配置数据存储结构的可编程存储器阵列需要一种具有选择性可配置的奇偶校验电路,从而可以按照数据存储结构灵活地编程实现不同的奇偶操作以及实现奇偶I/O路由选择。
上述有关涉及可编程存储器阵列的申请还建议把现场可编程门阵列(FPGA)和可编程存储器阵列合并到一块集成电路里。FPGA是一种特殊的自由逻辑单元阵列,其具有用于互连各单元和/或用于提供该阵列的数据输入端和输出端的现场可编程互连网络。FPGA的逻辑单元可以配置成提供比较功能。但是,把这些逻辑单元用在多位比较上是逻辑单元的一种相对低效的使用。因此,在由FPGA和可编程存储器阵列组成的集成电路里,需要具有由可编程存储器阵列实现的可编程奇偶校验及比较电路,并且需要能够可编程地配置成可选择性地提供奇偶性功能或者非奇偶性比较功能,并且还需要可配置为能灵活地在存储器阵列内为奇偶数据选择路由以及在存储器阵列和FPGA之间为非奇偶比较数据选择路由。
本发明的一个目的是提供一种可选择性配置的可编程奇偶校验及比较电路。
本发明的一个目的是为可编程存储器阵列提供一种可编程奇偶校验及比较电路。
本发明的另个目的是为由一个可编程存储器阵列和一个FPGA组成的集成电路提供一种可编程奇偶校验及比较电路,该奇偶校验电路向该可编程存储器阵列提供奇偶性功能并且向FPGA提供非奇偶比较功能。
本发明面对可编程奇偶校验及比较电路。该可编程奇偶校验及比较电路包括第一输入端组,从第三和第四输入端中可编程选择的第二输入端组,以及一个用于基于第一和第三输入端组选择性地提供一个奇偶校验位以及用于基于第一和第四输入端组选择性地提供一个比较位的电路。在本发明的一种情况下奇偶性类型可配置为奇数或者偶数。
在本发明的另一种情况里,该可编程奇偶校验及比较电路被合并到一个具有多个存储块的存储器阵列、一个用于对和从该存储器阵列传送数据的主I/O总线、一个用于在阵列内的存储块之间传送数据的辅助I/O总线,并且该可编程奇偶校验及比较电路还包括一个奇偶输入路由选择电路、一个奇偶性/比较电路以及一个奇偶输出路由选择电路。
在本说明书的结束部分具体地指出并且明确地申请本发明的主题。而本发明可以通过参考对其最佳实施方式及其附图的详细说明得到最好的了解,附图是:
图1是包括本发明的可编程奇偶校验电路的一种示范可编程存储器阵列的一部分的方块图。
图2A是本发明的示范可编程奇偶/比较电路的方块图。
图2B是本发明的主输入多路复用器的示意图。
图3是图2的示范可编程奇偶/比较电路的示意图。
图4是图1中所示的可编程奇偶校验电路的示范示意图。
图1是一个示范可编程存储器阵列10的一部分的方块图,该阵列10在相关的序列号575312申请、存档号FI995-077、与本发明相结合的名称为“现场可编程存储器阵列”中得到说明。该可编程存储器阵列10在相关的已作为本文参考文献的申请中得到详细地说明,在本文中将仅说明为表达本发明和该可编程存储器阵列10的关系所需的内容。
参照图1,存储器子阵列12包括排列成M行N列阵列的多个存储器单元。存储器子阵列12提供M个存储字,每个字为N位宽。出于清晰的目的,图1仅表示一个存储器子阵列12,但应该理解可编程存储器阵列10包括多个类似的存储器子阵列12,以便为实现各种不同的存储器配置和运行模式进行选择性的编程。
通过主I/O总线20、相关的内连线路22及24、I/O块18、辅助I/O总线26、I/O路由选择矩阵16和位线路由选择矩阵14装置从和向存储器子阵列12传播数据。主I/O总线20提供可编程存储器阵列10和可编程存储器阵列10的外部电路(未示出)之间的连接。例如,集成电路上和该可编程存储器阵列组合在一起的FPGA。I/O块18提供主I/O总线20和辅助I/O总线26之间的选择性连接。和存储器子阵列12相关的I/O路由选择矩阵16提供辅助I/O总线26和位线路由选择矩阵14之间的选择性连接。位线路由矩阵14通过提供对和该阵列相关的不同功能位线15(图中仅示出一条),例如读位线、写位线等,的选择性连接控制对存储器子阵列12的直接存取。位线15设置为可编程分层结构,可包括本地位线、半全局位线和全局位线。可编程存储器各个部件的细节在作为参考文献的可编程存储器申请中叙述。
本发明的可编程奇偶校验及比较电路33如图1中所示可组合在可编程存储器阵列10的I/O块18里。该可编程奇偶校验及比较电路33包括一个奇偶输入路由选择电路28、一个奇偶/比较电路30和一个奇偶输出路由选择电路32。奇偶输入路由选择电路28可以选择性地把经过互连线路22的主数据总线20、辅助数据总线26或者其它资源(未示出)与奇偶/比较电路30的输入端(例如输入端A和B)连接起来。奇偶/比较电路30可编程为选择性地提供代表不同奇偶功能(P)和/或比较功能(C)的输出P和C,这将在后面更详细说明。奇偶输出路由选择电路32提供输出P和C与经过互连线24对主I/O总线20和/或对辅助I/O总线26的选择连接。
对于熟练的技术人员用于提供阵列可编程性的各种技术是周知的。本发明的程序可编程资源的最佳方法涉及可由用户编程的SRAM存储器单元,尽管其它诸如熔丝、反熔丝等等结构也可实现。本发明的可编程奇偶校验电路是根据类似于配置现场可编程门阵列的技术来配置的,这种技术在Atmel公司题为“APPLICATION NOTEAT6000SERIESCONFIGURATION”,1993年5月,修订版IB中公开,该出版物整体上作为本文的参考文献。
参见图2A,图中表示一个可编程比较电路34,其可包括在上面根据图1确定的可编程奇偶校验及比较电路33里。可编程比较电路34具有多个输入节点D0-DN-1,其中N是存储器子阵列12的宽度,并且当采用奇偶校验时第N位构成奇偶校验位。输入节点D0-DN-1可以连接为多个输入组,在图2A中表示为二个组,一个组是A1-A(N-1)/2,下面集体地称为A输入组,另一个组是B1-B(N-1)/2,下面集体地称为B输入组。这些输入组中的至少一个是可编程选择的。在图2A中,B输入是可编程选择的,如所示在图2B中更详细地表示B输入中的一个。参见图2B,根据存储在主输入多路复用器配置位42里的配置信息B1输入可以由主输入多路复用器40从多个输入端E1和F1编程选择。
可编程选择的输入B可以配置成使得可编程比较电路34能用于其它可能的功能。例如,在第一种配置中,在输入节点D0-DN-1可以提供单个N-1位的字,用于在输出端38处生成一个奇偶校验位。可以方便地把N-1位字的偶数位提供给输入端的一个组(例如A输入)和把其奇数位提供给输入端的另一个组(例如B输入),但对于奇偶校验目的输入端的次序不是关键性的。备择地,在第二种配置中,第一和第二(N-1)/2位的字可分别在A输入和B输入上得到提供以进行逐位比较(例如把第一字的位1放在输入端A1上同时把第二字的位1放在输入端B1上,依次类推)并且在输出端38处生成一个比较信号,以表示所有的位是否相同。
奇偶性类型配置位(位组)36可以用于选择性地配置可编程比较电路34以在提供奇偶校验位时提供奇校验或者偶校验。当相加字中的所有数字时,奇数校验位产生一个奇数和;当相加一个字中的所有数字时,偶数校验位产生一个偶数和。备择地,奇偶性类型配置位(位组)36可以用于选择性地配置可编程比较电路34以在输出端38处提供比较输出功能。
图3表示一个N=9的比较电路34的示范性电路图,其中包括一个常规“同”(XNOR)奇偶校验树,它由“同”逻辑门44a-44g以及“与”门49组成,“与”门49具有分别由第一排“同”门(即门44a-44d)提供信号的输入端49a-49d。根据存储在奇偶性类型配置位(位组)36里的配置信息,奇偶性类型多路复用器48在一个输出端38处选择性地提供偶数校验输出35、奇数校验输出37(由反相器46提供)或者比较输出51(由“与”门49提供)中的一种。
图4是图1中所示的示范性可编程奇偶校验电路33的详细示意图。为了简单和清晰,图4画成支持一个配置成RAM的存储器子阵列12,其位宽度为N=9并且用一个单个位(即第N位)作为奇偶校验位。但是,根据本文所含有的公开,一般的技术人员可以知道可按需要调整N及奇偶校验位的位数。一般的技术人员还能知道该公开的可编程奇偶校验电路33可以支持其存储的字的字宽小于N的存储器子阵列12,只要不使用的各位如常规存储器设计中那样在预定级上是固定的(即限定掉)即可。
参照图4,奇偶输入路由选择电路28可以包括多个主输入多路复用器401-408。主输入多路复用器40的数量最好等于字宽N减去奇偶校验位数。如图4中所示,其N=9并采用1个奇偶校验位,则主输入多路复用器的数量为八个。根据主输入多路复用器的配置位42选择备择输入的每个多路复用器401-408的操作类似于图2B的主输入多路复用器40的操作。例如,在第一种配置下,可选择输入端Ewp1、Ewp3、Ewp5、Ewp7、ERP0、ERP2、ERP4、ERP4(集体地称为E输入)在备择的第二种配置下,可选择输入端FRP0、FRP2、FRP4、FRP6、Fwp1、Ewp3、Fwp5、Fwp7、(集体地称为F输入)。可增添附加的配置位以得到主输入多路复用器401-408的更大可编程性。例如,为了提供用于比较的已知参照可能需要具有附加的常值输入。另外,可能需要使各个主输入多路复用器401-408具有各自的配置位以允许对各个多路复用器进行独立控制。应该理解这种灵活性的提高需要更多的电路空间,这点可能是不希望的。
奇偶输入路由选择电路28还可以包括辅助输入多路复用器54,根据存储在各配置位56里的配置信息其可在它的输出端58处选择性地提供下述中的一种:用于提供另一种比较基准的已知常值、经过事先存储在存储器里的一个字的分层排列的一个或多个位线15的奇偶信息,或者其它所需的替代输入。
奇偶/比较电路30可以包括可编程写奇偶性及比较电路50和可编程读奇偶性及比较电路52。可编程写奇偶性及比较电路50可以具有由分别和偶输入节点D0、D2、D4、D6连接的固定输入端Awp0、Awp2、Awp4、Awp6、组成的第一组输入端并通常指定为传送写数据,并可以具有由分别和各由主输入多路复用器401、402、403、404提供的奇输入节点D1、D3、D5、D7连接的第二组可编程选择输入端B1、B2、B3和B4。主输入多路复用器401、402、403、404的E输入端通常指定为传送写数据,而主输入多路复用器401、402、403、404的F输入通常指定为传送读数据。
可编程读奇偶性及比较电路S2具有分别和输入节点D1、D3、D5、D7连接的第一组输入端ARP1、ARP3、ARP5、ARP7并通常指定为传送读数据,和具有由分别和各由主输入多路复用器405、406、407、408提供的输入节点D0、D2、D4、D6连接的第二组可编程选择的输入端B5、B6、B7和B8。主输入多路复用器405、406、407、408的E输入端通常指定为传送读数据,而主输入多路复用器405、406、407、408通常指定为传送写数据。
各个可编程读奇偶性及比较电路50和可编程写奇偶性及比较电路52的运行类似于参照图2A和图3所作的说明,出于简便不再重复说明。
比较逻辑门60在输入端接收分别来自可编程写奇偶性及比较电路50和可编程读奇偶性及比较电路52的输出64和66并且提供一个输出C。奇偶逻辑门62在其输入端接收来自可编程读奇偶性及比较电路52的输出66和来自辅助输入多路复用器54的输出58并且提供一个输出P。
奇偶性输出路由选择电路32为由奇偶/比较电路30和奇偶性输入路由选择电路28所生成的各种信号选择通向可编程存储器阵列10中的其它资源的路由。根据存储在写选择器配置位70里的数据,写选择器68从可编程写奇偶性及比较电路50的输出64与非奇偶性输入76之间进行选择并且在其输出端78提供结果。在既不需要奇偶性生成也不需要奇偶校验时,非奇偶性输入76和写选择器68一起提供对RAM的第N位的写访问。根据存储在辅助写数据总线端口配置位74里的数据,为了写入到存储器子阵列12里,辅助写数据总线端口72把写选择器68的输出78驱动到辅助I/O总线26的多个线路79(见图1)中的一个或多个线路上。辅助I/O总线26的多条线路79可代表和存储器子阵列12的第N位直接相联的分层路由选择通路(例如位线15)。配置未选输出以提供高输出阻抗(例如采用三状态缓冲器)。如果不需要确定输出64和非奇偶性输入74中的一个到辅助I/O总线26的路线,配置位74还可编程为选择断开所有的输出。这种方式下的选择断开输出,释放辅助I/O总线26的选择断开线路,以供可编程存储器阵列10的其它I/O块18使用。
请继续参照图4,根据存储在读选择器配置位组82里的数据,读选择器80从比较逻辑门60所提供的输出C、奇偶性逻辑门62所提供的输出P及辅助输入多路复用器54的输出58中选择一个输出,并且在读选择器输出端84处提供结果。输出调节选择器90接收未调节形式下的、经反相器86反相后的以及经锁存器88锁存后的读选择器输出84,并且根据存储在输出调节选择器配置位组92里的数据把结果放在调节输出端94。按照有关申请S/N575312(IBM存档号FI995-077)中所说明的沿存储器阵列分布的时钟信号CK由时钟锁存器88和输出调节选择器90使用,从而当选择锁存输入时调节输出94可以和时钟信号CK同步。
类似于辅助写数据总线端口72,主读数据总线端口96根据存储在主读数据总线端口各配置位98里的数据把调节后的输出94驱动到主I/O总线20(见图1)的多条线路97的一条或几条线路上,以把从存储器子阵列12中读出的数据传送到可编程存储器阵列的外部。配置未选择线路以提供高输出阻抗(例如,采用三状态缓冲器)。如果不需要为调节输出94对主I/O总线20选择路由,各配置位98可以编程为选择断开所有的输出97。这种方式下的选择断开输出,释放主I/O总线20的选择断开路线,以供可编程存储器阵列10的其它部分使用或者供访问该可编程存储器阵列的其它电路(例如FPGA)使用。
通过对图1和图4进行更多的解释,现说明几个运行的例子,以显示为执行替代的功能如何编程配置可编程奇偶校验电路33。
在第一个运行的例子中,可编程奇偶校验及比较电路33用于为写入到一个存储器子阵列12的N位数据字生成一个奇偶校验位。从主I/O总线20上在输入端AWP0、AWP2、AWP4、AWP6处提供N位数据字的第一位组(例如偶数位)。由主输入多路复用器配置位(位组)42对主输入多路复用器401、402、403、404编程以在输入端EWP1、EWP3、EWP5、EWP7处选择N位字的剩余各位(例如奇数位)。可编程写奇偶性及比较电路50接收这两组输入,并且按奇偶类型配置位36编程在输出端64生成奇校验位或偶校验位。写选择器68根据写选择器配置位70向辅助写数据总线端口72提供该奇偶校验位,按辅助写数据总线端口各配置位74的编程辅助写数据总线端口72把该奇偶校验位放在辅助I/O总线26的多条线路的一条或几条上以写入到存储器子阵列12。如果不需要可编程读奇偶性及比较电路52同时计算奇偶性或不需要同时进行比较,读选择器80可由各配置位82编程为选择经调节选择器90和主读数据总线端口96驱动到主I/O总线20上的辅助输入多路复用器的输出58。备择地,可由各配置98把主读数据总线端口96配置成如上所述选择断开所有的输出。
在第二个运行的例子里,可编程奇偶校验及比较电路33用于执行对第一和第二N-1位的字的逐位比较,不需要对存储器子阵列12进行读写(例如非奇偶性的比较)。从主I/O总线20在可编程写奇偶性及比较电路50的输入端AWP0、AWP2、AWP4、AWP6和可编程读奇偶性及比较电路52的输入端FWP1、FWP3、FWP5、FWP7提供第一个N-1位数据字。主输入多路复用器401、402、403、404、405、406、407、408由主输入多路复用器配置位(位组)42编程以选择由主I/O总线20各个输入端FRP0、FRP2、FRP4、FRP6、ARP1、ARP3、ARP5、ARP7提供的第二个字的各位。在一种备择的实施方式里,可以在可编程写奇偶性及比较电路50和可编程读奇偶性及比较电路52的A组输入端处提供类似于多路复用器40具有至少一个常值输入的附加的若干多路复用器,以把A组输入端表达成可编程选择的。以这种方式,各多路复用器40(包括附加的若干多路复用器)的常值输入端可用于实现搜索或匹配功能。可编程写奇偶性及比较电路50和可编程读奇偶性及比较电路52各自的输出64和66最后由比较逻辑门60比较。读选择器80由各读选择器配置位82编程以选择输出C,该输出被驱动到和主I/O总线20连接的多条线路97的一条或者多条线路上。辅助写数据总线端口72由各配置位74编程以如上所述选择断开所有的输出79。
在第三种运行的例子里,可编程奇偶校验电路33用于把以前存储的奇偶校验位和存储在存储器子阵列12里的一个N-1位字的新产生的奇偶校验位进行比较。辅助I/O总线26在输入端ARP1、ARP3、ARP5、ARP7提供存储在存储器子阵列12里的该N-1位数据字的第一位组(例如奇数位)。通过主输入多路复用器的配置位(位组)42对多路复用器405、406、407、408编程以在输入端ERP0、ERP2、ERP4、ERP6处选择N-1位字的其余各位(例如偶数位)。通过配置位56对辅助输入多路复用器54编程以选择一个代表N-1位字的先前计算出的奇偶校验位的输入。通过奇偶逻辑门62对可编程读奇偶性及比较电路52的输出66和辅助输入多路复用器的输出58进行比较以提供输出P。通过各配置位82对读选择器80编程以选择被驱动到和主I/O总线20连接的多条线路97的一条或几条线路上的P。通过各配置位74对辅助写数据总线端口72编程以如上所述选择断开所有的输出。
可编程奇偶检验及比较电路可以按许多其它方式配置以提供各种奇偶性和/或比较功能,其中包括上述例子的组合以及提供各种路由选择方式。
尽管参照其最佳实施方式本发明得到具体的描述和说明,熟练的技术人员理解在不违背本发明的精神和范围的前提下在形式上和细节上可进行其它的各种改变。
Claims (19)
1.一种可编程奇偶校验及比较电路,包括:
第一组多个输入端;
第二组多个输入端,该第二组多个输入端可从第三组多个输入端和第四组多个输入端中编程选择;以及
与第一组多个输入端和第二组多个输入端连接的第一电路,用于生成一个基于第一组多个输入和第三组多个输入的奇偶校验位,用于通过对第一组多个输入和第四组多个输入进行逐位比较生成一个比较位,并且可编程选择以在一个输出端提供该奇偶校验位和该比较位中的一个。
2.如权利要求1所述的电路,其特征在于该第一电路可配置为提供一个奇数奇偶校验位或者一个偶数奇偶校验位。
3.如权利要求1所述的电路,其特征在于第一组多个输入和第三组多个输入代表写入到存储器阵列中的一个字的互补部分。
4.如权利要求3所述的电路,其特征在于第一组多个输入和第三组多个输入代表写入到存储器阵列中的一个字的交错位。
5.如权利要求1所述的电路,其特征在于第一组多个输入和第三组多个输入代表从存储器阵列读出的一个字的互补部分。
6.如权利要求5所述的电路,其特征在于第一组多个输入和第三组多个输入代表从存储器阵列读出的一个字的交错位。
7.在一个存储器阵列中,该存储器具有多个存储块、一个用于从和向该存储器阵列传递数据的主I/O总线以及一个用于在该存储器阵列内的存储块之间传送数据的辅助I/O总线,一种可编程奇偶校验及比较电路,包括:
一个奇偶性输入路由选择电路,其包括第一组多个输入端和第二组多个输入端,该第二组多个输入端可从第三组多个输入端和第四组多个输入端中编程选择,其中第一组及第三组多个输入端可和该主I/O总线连接,而第四组多个输入端可和该辅助I/O总线连接;
一个和第一组及第二组多个输入端连接的奇偶/比较电路,用于生成基于该第一组及该第三组的多个输入的第一奇偶校验位,用于通过对该第一组及该第四组的多个输入进行逐位比较生成第一比较位,以及用于可编程地选择以在第一输出端提供该第一奇偶校验位和第一比较位中的一个;以及
一个和该奇偶/比较电路连接的可配置奇偶性输出路由选择电路,用于选择性地把该奇偶校验位或该第一比较位中的一个驱动到该主I/O总线或该辅助I/O总线中的一个上。
8.如权利要求7所述的可编程奇偶校验及比较电路,其特征在于该奇偶性输入路由选择电路还包括一个辅助输入选择器,用于选择性把多个辅助输入中的一个连接到该奇偶/比较电路或该奇偶性输出路由选择电路中的一个上以提供另一种比较基准。
9.如权利要求8所述的可编程奇偶校验比较电路,其特征在于辅助输入包括一个预定值。
10.如权利要求8所述的可编程奇偶校验及比较电路,其特征在于辅助输入包括一个先前生成的第二奇偶校验位。
11.如权利要求7所述的可编程奇偶校验及比较电路,其特征在于:
该奇偶性输入路由选择电路还包括第五组多个输入端和第六组多个输入端,第六组输入可从第七组多个输入端和第八组多个输入端中编程选择,其中第五组及第七组多个输入端可和辅助I/O总线连接而第八组多个输入端可和主I/O总线连接;
该奇偶/比较电路还和第五及第六组多个输入连接,用于生成基于第五组及第七组多个输入的一个第二奇偶校验位,用于通过对第五组及第八组多个输入进行逐位比较生成一个第二比较位,并且可以可编程地在第二输出端选择提供第二奇偶校验位和第二比较位中的一个。
12.如权利要求11所述的可编程奇偶校验电路,其特征在于第一组多个输入和第三组多个输入代表写入到该存储器阵列中的一个字的交错位,而第五组多个输入和第七组多个输入代表从该存储器阵列中读出的一个字的交错位。
13.如权利要求11所述的可编程奇偶校验及比较电路,其特征在于该奇偶/比较电路还包括第一逻辑装置,用于比较第一及第二比较位并且用于提供一个字比较输出。
14.如权利要求13所述的可编程奇偶校验及比较电路,其特征在于该奇偶/比较电路还包括:
一个辅助输入选择器,用于选择性地把多个辅助输入中的一个连接到该奇偶/比较电路或该奇偶性输出路由选择电路中的一个,以提供另一个比较基准,其中该多个辅助输入包括一个预定值;以及
第二逻辑装置,用于把该第一输出和该第二输出中的一个和该预定值进行比较。
15.如权利要求14所述的可编程奇偶校验及比较电路,其特征在于该奇偶性输出路由选择电路包括:
用于把该第一输出驱动到该辅助I/O总线上的第一电路;以及
用于把该字比较输出、该第三输出以及一个预定值中的一个驱动到该主I/O总线上的第二电路。
16.如权利要求15所述的可编程奇偶校验及比较电路,其特征在于该第二电路包括一个信号调节装置。
17.如权利要求16所述的可编程奇偶校验及比较电路,其特征在于该信号调节装置接收一个输入信号并且可配置为在输出端按反相的、不反相的或锁存的形式提供该输入信号。
18.如权利要求7所述的可编程奇偶校验及比较电路,其特征在于该奇偶性输出路由选择电路包括:
第一电路,用于把该第一输出驱动到辅助I/O总线。
19.如权利要求7所述的可编程奇偶校验及比较电路,其特征在于第一组多个输入和第三组多个输入代表写入到该存储器阵列中的一个字的交错位。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/575,314 US5719889A (en) | 1995-12-20 | 1995-12-20 | Programmable parity checking and comparison circuit |
US575314 | 1995-12-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1158484A true CN1158484A (zh) | 1997-09-03 |
CN1115696C CN1115696C (zh) | 2003-07-23 |
Family
ID=24299816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN96117282A Expired - Fee Related CN1115696C (zh) | 1995-12-20 | 1996-12-06 | 可编程奇偶校验及比较电路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5719889A (zh) |
KR (1) | KR100233350B1 (zh) |
CN (1) | CN1115696C (zh) |
SG (1) | SG81211A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101232350B (zh) * | 2007-01-09 | 2013-02-13 | 三星电子株式会社 | 奇偶校验误差检测电路和方法 |
CN103618523A (zh) * | 2013-11-27 | 2014-03-05 | 中国航空工业集团公司第六三一研究所 | 一种基于离散量信号的双通道校验电路及方法 |
CN103885850A (zh) * | 2013-03-01 | 2014-06-25 | 上海富欣智能交通控制有限公司 | 存储器在线检查系统及方法 |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835953A (en) * | 1994-10-13 | 1998-11-10 | Vinca Corporation | Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating |
US5881076A (en) * | 1996-07-17 | 1999-03-09 | Intel Corporation | Comparator utilizing redundancy |
US6871271B2 (en) | 2000-12-21 | 2005-03-22 | Emc Corporation | Incrementally restoring a mass storage device to a prior state |
US6941490B2 (en) * | 2000-12-21 | 2005-09-06 | Emc Corporation | Dual channel restoration of data between primary and backup servers |
US7296125B2 (en) * | 2001-11-29 | 2007-11-13 | Emc Corporation | Preserving a snapshot of selected data of a mass storage system |
US7109752B1 (en) | 2004-02-14 | 2006-09-19 | Herman Schmit | Configurable circuits, IC's, and systems |
US7425841B2 (en) | 2004-02-14 | 2008-09-16 | Tabula Inc. | Configurable circuits, IC's, and systems |
US7193432B1 (en) | 2004-02-14 | 2007-03-20 | Herman Schmit | VPA logic circuits |
US7284222B1 (en) * | 2004-06-30 | 2007-10-16 | Tabula, Inc. | Method and apparatus for identifying connections between configurable nodes in a configurable integrated circuit |
US7157933B1 (en) | 2004-02-14 | 2007-01-02 | Herman Schmit | Configurable circuits, IC's, and systems |
US7167025B1 (en) * | 2004-02-14 | 2007-01-23 | Herman Schmit | Non-sequentially configurable IC |
US7126373B1 (en) | 2004-02-14 | 2006-10-24 | Herman Schmit | Configurable logic circuits with commutative properties |
US7126381B1 (en) | 2004-02-14 | 2006-10-24 | Herman Schmit | VPA interconnect circuit |
US7193440B1 (en) * | 2004-02-14 | 2007-03-20 | Herman Schmit | Configurable circuits, IC's, and systems |
US7145361B1 (en) * | 2004-06-30 | 2006-12-05 | Andre Rohe | Configurable integrated circuit with different connection schemes |
US7408382B2 (en) * | 2004-06-30 | 2008-08-05 | Tabula, Inc. | Configurable circuits, IC's, and systems |
US7282950B1 (en) * | 2004-11-08 | 2007-10-16 | Tabula, Inc. | Configurable IC's with logic resources with offset connections |
US7193438B1 (en) * | 2004-06-30 | 2007-03-20 | Andre Rohe | Configurable integrated circuit with offset connection |
US7439766B2 (en) * | 2004-06-30 | 2008-10-21 | Tabula, Inc. | Configurable logic circuits with commutative properties |
US7449915B2 (en) * | 2004-06-30 | 2008-11-11 | Tabula Inc. | VPA logic circuits |
US7312630B2 (en) | 2004-06-30 | 2007-12-25 | Tabula, Inc. | Configurable integrated circuit with built-in turns |
US7268586B1 (en) | 2004-11-08 | 2007-09-11 | Tabula, Inc. | Method and apparatus for accessing stored data in a reconfigurable IC |
US7330050B2 (en) * | 2004-11-08 | 2008-02-12 | Tabula, Inc. | Storage elements for a configurable IC and method and apparatus for accessing data stored in the storage elements |
US7342415B2 (en) * | 2004-11-08 | 2008-03-11 | Tabula, Inc. | Configurable IC with interconnect circuits that also perform storage operations |
US7743085B2 (en) * | 2004-11-08 | 2010-06-22 | Tabula, Inc. | Configurable IC with large carry chains |
US7301368B2 (en) * | 2005-03-15 | 2007-11-27 | Tabula, Inc. | Embedding memory within tile arrangement of a configurable IC |
US20070244958A1 (en) * | 2004-11-08 | 2007-10-18 | Jason Redgrave | Configurable IC's with carry bypass circuitry |
US7317331B2 (en) * | 2004-11-08 | 2008-01-08 | Tabula, Inc. | Reconfigurable IC that has sections running at different reconfiguration rates |
US7242216B1 (en) | 2004-11-08 | 2007-07-10 | Herman Schmit | Embedding memory between tile arrangement of a configurable IC |
US7295037B2 (en) * | 2004-11-08 | 2007-11-13 | Tabula, Inc. | Configurable IC with routing circuits with offset connections |
US7259587B1 (en) * | 2004-11-08 | 2007-08-21 | Tabula, Inc. | Configurable IC's with configurable logic resources that have asymetric inputs and/or outputs |
US7276933B1 (en) | 2004-11-08 | 2007-10-02 | Tabula, Inc. | Reconfigurable IC that has sections running at different looperness |
US7224181B1 (en) | 2004-11-08 | 2007-05-29 | Herman Schmit | Clock distribution in a configurable IC |
US7917559B2 (en) * | 2004-11-08 | 2011-03-29 | Tabula, Inc. | Configurable IC's with configurable logic circuits that perform adder and/or subtractor operations |
US7573296B2 (en) | 2004-11-08 | 2009-08-11 | Tabula Inc. | Configurable IC with configurable routing resources that have asymmetric input and/or outputs |
US7496879B2 (en) * | 2004-12-01 | 2009-02-24 | Tabula, Inc. | Concurrent optimization of physical design and operational cycle assignment |
US7236009B1 (en) | 2004-12-01 | 2007-06-26 | Andre Rohe | Operational time extension |
US7428721B2 (en) * | 2004-12-01 | 2008-09-23 | Tabula, Inc. | Operational cycle assignment in a configurable IC |
US20070244959A1 (en) * | 2005-03-15 | 2007-10-18 | Steven Teig | Configurable IC's with dual carry chains |
US7224182B1 (en) | 2005-03-15 | 2007-05-29 | Brad Hutchings | Hybrid configurable circuit for a configurable IC |
US7310003B2 (en) * | 2005-03-15 | 2007-12-18 | Tabula, Inc. | Configurable IC with interconnect circuits that have select lines driven by user signals |
US7230869B1 (en) | 2005-03-15 | 2007-06-12 | Jason Redgrave | Method and apparatus for accessing contents of memory cells |
US7530033B2 (en) | 2005-03-15 | 2009-05-05 | Tabula, Inc. | Method and apparatus for decomposing functions in a configurable IC |
US7298169B2 (en) * | 2005-03-15 | 2007-11-20 | Tabula, Inc | Hybrid logic/interconnect circuit in a configurable IC |
US7825684B2 (en) * | 2005-03-15 | 2010-11-02 | Tabula, Inc. | Variable width management for a memory of a configurable IC |
US8463836B1 (en) | 2005-11-07 | 2013-06-11 | Tabula, Inc. | Performing mathematical and logical operations in multiple sub-cycles |
US7765249B1 (en) | 2005-11-07 | 2010-07-27 | Tabula, Inc. | Use of hybrid interconnect/logic circuits for multiplication |
US7818361B1 (en) | 2005-11-07 | 2010-10-19 | Tabula, Inc. | Method and apparatus for performing two's complement multiplication |
US7372297B1 (en) | 2005-11-07 | 2008-05-13 | Tabula Inc. | Hybrid interconnect/logic circuits enabling efficient replication of a function in several sub-cycles to save logic and routing resources |
US7679401B1 (en) | 2005-12-01 | 2010-03-16 | Tabula, Inc. | User registers implemented with routing circuits in a configurable IC |
US7461362B1 (en) | 2005-12-01 | 2008-12-02 | Tabula, Inc. | Replacing circuit design elements with their equivalents |
US7489162B1 (en) | 2005-12-01 | 2009-02-10 | Tabula, Inc. | Users registers in a reconfigurable IC |
US7609085B1 (en) | 2006-03-08 | 2009-10-27 | Tabula, Inc. | Configurable integrated circuit with a 4-to-1 multiplexer |
US7518400B1 (en) | 2006-03-08 | 2009-04-14 | Tabula, Inc. | Barrel shifter implemented on a configurable integrated circuit |
US7694083B1 (en) * | 2006-03-08 | 2010-04-06 | Tabula, Inc. | System and method for providing a virtual memory architecture narrower and deeper than a physical memory architecture |
US7504858B1 (en) | 2006-03-08 | 2009-03-17 | Tabula, Inc. | Configurable integrated circuit with parallel non-neighboring offset connections |
US7797497B1 (en) | 2006-03-08 | 2010-09-14 | Tabula, Inc. | System and method for providing more logical memory ports than physical memory ports |
US7669097B1 (en) | 2006-03-27 | 2010-02-23 | Tabula, Inc. | Configurable IC with error detection and correction circuitry |
US7529992B1 (en) | 2006-03-27 | 2009-05-05 | Tabula, Inc. | Configurable integrated circuit with error correcting circuitry |
US7587697B1 (en) | 2006-12-12 | 2009-09-08 | Tabula, Inc. | System and method of mapping memory blocks in a configurable integrated circuit |
US7930666B1 (en) | 2006-12-12 | 2011-04-19 | Tabula, Inc. | System and method of providing a memory hierarchy |
EP2140548A4 (en) * | 2007-03-20 | 2010-06-09 | Tabula Inc | CONFIGURABLE IC WITH A COUPLING AREA WITH MEMORY ELEMENTS |
US7535252B1 (en) | 2007-03-22 | 2009-05-19 | Tabula, Inc. | Configurable ICs that conditionally transition through configuration data sets |
US7928761B2 (en) | 2007-09-06 | 2011-04-19 | Tabula, Inc. | Configuration context switcher with a latch |
US8863067B1 (en) | 2008-02-06 | 2014-10-14 | Tabula, Inc. | Sequential delay analysis by placement engines |
US8166435B2 (en) | 2008-06-26 | 2012-04-24 | Tabula, Inc. | Timing operations in an IC with configurable circuits |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4271521A (en) * | 1979-07-09 | 1981-06-02 | The Anaconda Company | Address parity check system |
JPS5919367A (ja) * | 1982-07-26 | 1984-01-31 | Toshiba Corp | メモリ付ゲ−トアレイ |
US4580265A (en) * | 1983-06-30 | 1986-04-01 | International Business Machines Corporation | Failure detection method and apparatus |
US4774712A (en) * | 1986-10-01 | 1988-09-27 | International Business Machines Corporation | Redundant storage device having address determined by parity of lower address bits |
KR910006849A (ko) * | 1989-09-29 | 1991-04-30 | 미다 가쓰시게 | 반도체 집적회로 장치 |
US5088092A (en) * | 1989-11-22 | 1992-02-11 | Unisys Corporation | Width-expansible memory integrity structure |
US5055712A (en) * | 1990-04-05 | 1991-10-08 | National Semiconductor Corp. | Register file with programmable control, decode and/or data manipulation |
JP3158215B2 (ja) * | 1991-10-04 | 2001-04-23 | 富士通株式会社 | パリティ反転試験方式 |
KR940005696B1 (ko) * | 1991-11-25 | 1994-06-22 | 현대전자산업 주식회사 | 보안성 있는 롬(rom)소자 |
US5414377A (en) * | 1992-12-21 | 1995-05-09 | Xilinx, Inc. | Logic block with look-up table for configuration and memory |
GB9303084D0 (en) * | 1993-02-16 | 1993-03-31 | Inmos Ltd | Programmable logic circuit |
-
1995
- 1995-12-20 US US08/575,314 patent/US5719889A/en not_active Expired - Fee Related
-
1996
- 1996-10-14 KR KR1019960045653A patent/KR100233350B1/ko not_active IP Right Cessation
- 1996-11-18 SG SG9611357A patent/SG81211A1/en unknown
- 1996-12-06 CN CN96117282A patent/CN1115696C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101232350B (zh) * | 2007-01-09 | 2013-02-13 | 三星电子株式会社 | 奇偶校验误差检测电路和方法 |
CN103885850A (zh) * | 2013-03-01 | 2014-06-25 | 上海富欣智能交通控制有限公司 | 存储器在线检查系统及方法 |
CN103618523A (zh) * | 2013-11-27 | 2014-03-05 | 中国航空工业集团公司第六三一研究所 | 一种基于离散量信号的双通道校验电路及方法 |
Also Published As
Publication number | Publication date |
---|---|
US5719889A (en) | 1998-02-17 |
KR100233350B1 (ko) | 1999-12-01 |
KR970049545A (ko) | 1997-07-29 |
CN1115696C (zh) | 2003-07-23 |
SG81211A1 (en) | 2001-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1115696C (zh) | 可编程奇偶校验及比较电路 | |
US6088264A (en) | Flash memory partitioning for read-while-write operation | |
US6243281B1 (en) | Method and apparatus for accessing a segment of CAM cells in an intra-row configurable CAM system | |
KR100908542B1 (ko) | 불휘발성 메모리 소자 및 그 프로그램 방법 | |
US20050055493A1 (en) | [method for accessing large block flash memory] | |
US7697347B2 (en) | Non-volatile memory device and method of driving the same | |
Inoue et al. | Universal test complexity of field-programmable gate arrays | |
KR20010037848A (ko) | 반도체 메모리 장치 및 이 장치의 병렬 비트 테스트 방법 | |
US6041422A (en) | Fault tolerant memory system | |
US20050024983A1 (en) | Providing a register file memory with local addressing in a SIMD parallel processor | |
US7257668B2 (en) | Method and system for enhancing the endurance of memory cells | |
EP1089084B1 (en) | On-line testing of the programmable interconnect network in field programmable gate arrays | |
CA2218296C (en) | Method and apparatus for storing and retrieving error check information | |
US6185697B1 (en) | Disk-array controller | |
JPS58215800A (ja) | メモリ再構成方法 | |
US5878059A (en) | Method and apparatus for pipelining an error detection algorithm on an n-bit word stored in memory | |
KR20050027829A (ko) | 데이터 전송시간을 감소시키는 듀얼 버퍼링(Dualbuffering) 메모리 시스템 및 이에 대한 제어방법 | |
US6751701B1 (en) | Method and apparatus for detecting a multiple match in an intra-row configurable CAM system | |
US6320791B1 (en) | Writing apparatus for a non-volatile semiconductor memory device | |
EP0544012A1 (en) | Serial access memory | |
US5793684A (en) | Memory device having selectable redundancy for high endurance and reliability and method therefor | |
US6946985B2 (en) | Device for reconfiguring a faulty storage assembly | |
US6754130B1 (en) | Memory having multiple write ports and write insert unit, and method of operation | |
JP2004527821A (ja) | メモリのための簡略な故障許容 | |
CN102682836B (zh) | 提供用于解决垂直双位故障的行冗余 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030723 Termination date: 20101206 |