CN101226567A - Design method and system of a reliable on-chip bus and its working method - Google Patents
Design method and system of a reliable on-chip bus and its working method Download PDFInfo
- Publication number
- CN101226567A CN101226567A CNA2008100575342A CN200810057534A CN101226567A CN 101226567 A CN101226567 A CN 101226567A CN A2008100575342 A CNA2008100575342 A CN A2008100575342A CN 200810057534 A CN200810057534 A CN 200810057534A CN 101226567 A CN101226567 A CN 101226567A
- Authority
- CN
- China
- Prior art keywords
- crosstalk
- reliable
- code
- codeword
- matrix
- 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
- 238000000034 method Methods 0.000 title claims abstract description 99
- 238000013461 design Methods 0.000 title claims abstract description 46
- 239000011159 matrix material Substances 0.000 claims abstract description 135
- 238000012937 correction Methods 0.000 claims abstract description 75
- 239000013598 vector Substances 0.000 claims description 49
- 230000008569 process Effects 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000012795 verification Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 12
- 230000008878 coupling Effects 0.000 claims description 11
- 238000010168 coupling process Methods 0.000 claims description 11
- 238000005859 coupling reaction Methods 0.000 claims description 11
- 239000004065 semiconductor Substances 0.000 claims description 9
- 239000000463 material Substances 0.000 claims description 8
- 238000005457 optimization Methods 0.000 claims description 7
- 239000000758 substrate Substances 0.000 claims description 7
- 238000003491 array Methods 0.000 claims 2
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 8
- 230000007704 transition Effects 0.000 description 7
- 238000002474 experimental method Methods 0.000 description 6
- 230000001934 delay Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 241000551859 Caccodes Species 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000003071 parasitic effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 229910052718 tin Inorganic materials 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种可靠片上总线的设计方法和系统及其工作方法。一种可靠片上总线的设计方法,是利用群码的校验矩阵从串扰避免编码码字集合中选择具备纠错能力的子集合,构成具备纠错能力的串扰避免编码码字集合,应用于片上总线的电路设计,其包括下列步骤:根据串扰避免编码的规则生成码字集合;根据要求,推导群码的校验矩阵的属性;对满足属性的所有校验矩阵进行优化,获得最佳校验矩阵,以产生具备纠错能力的串扰避免编码码字集合。其能够在不引入二次串扰的前提下,以较小的布线开销和功耗开销,保证总线避免串扰时延的影响,并且可以纠正总线上由于噪声导致的信号翻转。
The invention discloses a design method and system of a reliable on-chip bus and its working method. A design method for a reliable on-chip bus is to use the parity check matrix of the group code to select a subset with error correction capability from the crosstalk avoidance codeword set to form a crosstalk avoidance codeword set with error correction capability, which is applied on-chip The circuit design of the bus, which includes the following steps: generating a code word set according to the rules of crosstalk avoidance coding; deriving the attributes of the parity check matrix of the group code according to the requirements; optimizing all parity check matrices that meet the attributes to obtain the best parity check matrix to generate a set of crosstalk-avoiding encoded codewords with error-correcting capability. Under the premise of not introducing secondary crosstalk, it can ensure that the bus avoids the influence of crosstalk delay with a small wiring overhead and power consumption overhead, and can correct signal inversion caused by noise on the bus.
Description
技术领域technical field
本发明涉及半导体工艺技术领域,主要是超大规模集成电路(VLSI)故障容忍(Fault Tolerance)的方法和设计,特别是涉及一种可靠片上总线的设计方法和系统及其工作方法。The present invention relates to the technical field of semiconductor technology, mainly the method and design of VLSI fault tolerance (Fault Tolerance), in particular to a design method and system of a reliable on-chip bus and its working method.
背景技术Background technique
随着门时延不断的减少,片上系统(SOC)中长总线的时延对系统能否达到高的整体性能的作用日益显著。然而,在超深亚微米工艺和GHZ工作频率下,电路中耦合电容和寄生电感等寄生元件作用显著。当信号发生跳变时,它们会进行充放电(在超深亚微米工艺下,主要是耦合电容起主要作用),使得在输出端得不到信号的正确响应。这些影响主要包括串扰时延(Crosstalk-InducedDelay)和串扰尖峰(Crosstalk-Induced Glitch)。其中,串扰时延导致了总线的部分信号无法在规定时间内到达输出端,严重影响信号的同步。根据国际半导体技术路线图,当系统时钟到达10GHZ时,这种片上总线的时延甚至可以与时钟频率相当。为了消除总线串扰带来的影响,保证长总线的可靠性,工业界需要不断优化系统布线,或者采用保守的总线结构,即在相邻导线之间加入屏蔽线。前一种方法需要多次评估和改进,而且辅助工具的复杂度极高;后一种方法不仅增加面积开销,而且会增大总线的延时和功耗。With the continuous reduction of the gate delay, the delay of the long bus in the system on chip (SOC) has an increasingly significant effect on whether the system can achieve high overall performance. However, in the ultra-deep submicron process and GHZ operating frequency, parasitic elements such as coupling capacitance and parasitic inductance play a significant role in the circuit. When the signal jumps, they will charge and discharge (in the ultra-deep sub-micron process, the coupling capacitor plays a major role), so that the correct response of the signal cannot be obtained at the output end. These effects mainly include crosstalk delay (Crosstalk-InducedDelay) and crosstalk peak (Crosstalk-Induced Glitch). Among them, the crosstalk delay causes some signals on the bus to fail to reach the output terminal within the specified time, which seriously affects the synchronization of the signals. According to the international semiconductor technology roadmap, when the system clock reaches 10GHZ, the delay of this on-chip bus can even be comparable to the clock frequency. In order to eliminate the impact of bus crosstalk and ensure the reliability of long buses, the industry needs to continuously optimize system wiring, or adopt a conservative bus structure, that is, add shielded wires between adjacent wires. The former method requires multiple evaluations and improvements, and the complexity of auxiliary tools is extremely high; the latter method not only increases the area overhead, but also increases the delay and power consumption of the bus.
因此,研究者设计相应的串扰避免编码(Crosstalk Avoidance Code,简称CAC),避免总线信号出现糟糕的跳变组合,进而避免串扰时延。图1给出了不同跳变组合导致的相对时延,最糟糕的跳变组合(↓,↑,↓)比最好跳变组合(↑,↑,↑)的时延多4λ,其中λ是导线耦合电容与对地电容的比值。采用相对时延作为CAC的时延上限,CAC编码可以分为的Delay=1+λ(加速编码)、Delay=1+2λ(常用编码)和Delay=1+3λ(避免最大时延编码)。而常用编码的规则又分为两类,即禁止跳变编码(Forbidden Transition Code,简称FTC)和禁止向量编码(Forbidden Pattern Code,简称FPC)。其中,FTC要求它的码字与基准码字(由相间的01构成)组成向量对时,禁止相邻信号线同时出现跳变;FPC禁止它的码字中出现子向量“010”和“101”。这些方法可以极大地减少总线的时延开销,同时面积开销较小,是一种理想的片上总线容错方法。Therefore, researchers design corresponding crosstalk avoidance codes (Crosstalk Avoidance Code, CAC for short) to avoid bad transition combinations of bus signals, thereby avoiding crosstalk delays. Figure 1 shows the relative delays caused by different hopping combinations. The worst hopping combination (↓, ↑, ↓) has 4λ more delay than the best hopping combination (↑, ↑, ↑), where λ is The ratio of wire coupling capacitance to ground capacitance. Using relative delay as the upper limit of CAC delay, CAC encoding can be divided into Delay=1+λ (accelerated encoding), Delay=1+2λ (common encoding) and Delay=1+3λ (avoiding maximum delay encoding). The commonly used coding rules are divided into two categories, namely Forbidden Transition Code (FTC for short) and Forbidden Pattern Code (FPC for short). Among them, when the FTC requires its codeword and the reference codeword (composed of alternate 01) to form a vector pair, the adjacent signal lines are prohibited from jumping at the same time; ". These methods can greatly reduce the delay overhead of the bus, and at the same time, the area overhead is small, which is an ideal on-chip bus fault-tolerant method.
然而,现在的编码方法CAC只能避免串扰时延故障,不能纠正由于电路噪声带来的信号翻转。如果要容忍总线上的噪声,包括串扰带来的串扰尖峰故障,则需要在CAC上添加新的海明校验码,形成具有纠错能力的结合编码,如图2所示。但是,由CAC单元001产生的编码总线和由ECC单元002产生的校验总线,两组总线存在多级门延时,因此需要增大系统时钟脉冲的宽度。这样会制约系统主频的提高。更重要的是校验总线Kc发生信号跳变,也会滞后于编码总线L。这种迟到的信号跳变会导致编码总线的二次串扰。它增大了信号的跳变时延,导致总线系统性能降低。However, the current coding method CAC can only avoid crosstalk delay faults, but cannot correct signal inversions caused by circuit noise. If noise on the bus is to be tolerated, including crosstalk spikes caused by crosstalk, a new Hamming check code needs to be added to CAC to form a combined code with error correction capabilities, as shown in Figure 2. However, the encoding bus generated by the
同时,新生成的海明校验码是不具备避免串扰时延的能力。而且,校验总线的信息是用于纠错的,在信号传输过程中不能更改,因此不能把海明校验码进行CAC编码。如图2所示,校验总线需要通过单元003添加保护线,保护校验线免受总线串扰的影响。采用这种方法,会增加系统的布线开销,导致在片上总线上不必要的功耗。At the same time, the newly generated Hamming check code does not have the ability to avoid crosstalk delay. Moreover, the information on the check bus is used for error correction and cannot be changed during signal transmission, so the Hamming check code cannot be CAC encoded. As shown in Figure 2, the verification bus needs to add a protection line through
发明内容Contents of the invention
本发明的目的在于提供一种可靠片上总线的设计方法和系统及其工作方法,其能够在不引入二次串扰的前提下,以较小的布线开销和功耗开销,保证总线避免串扰时延的影响,并且可以纠正总线上由于噪声导致的信号翻转。The purpose of the present invention is to provide a design method and system of a reliable on-chip bus and its working method, which can ensure that the bus avoids crosstalk delay with less wiring overhead and power consumption overhead without introducing secondary crosstalk and can correct for signal upsets on the bus due to noise.
为实现本发明的目的而提供的一种可靠片上总线的设计方法,是利用群码的校验矩阵从串扰避免编码码字集合中选择具备纠错能力的子集合,构成具备纠错能力的串扰避免编码码字集合,应用于片上总线的电路设计,其包括下列步骤:The design method of a kind of reliable on-chip bus provided for realizing the purpose of the present invention is to utilize the parity check matrix of the group code to select the subset with error-correcting ability from the crosstalk-avoiding coding codeword collection, constitute the crosstalk with error-correcting ability Avoid encoding codeword set, be applied to the circuit design of on-chip bus, it comprises the following steps:
A.根据串扰避免编码的规则生成码字集合;A. Generate a codeword set according to the rules of crosstalk avoidance coding;
B.根据要求,推导群码的校验矩阵的属性;B. According to the requirements, deduce the attribute of the parity check matrix of the group code;
C.对满足属性的所有校验矩阵进行优化,获得最佳校验矩阵,以产生具备纠错能力的串扰避免编码码字集合。C. Optimizing all parity check matrices satisfying the attributes to obtain the best parity check matrix to generate a crosstalk-avoiding codeword set with error correction capability.
所述步骤A还进一步包括:Described step A also further comprises:
A1.根据半导体器件工艺库说明书对总线布线信息,包括物理尺寸、导线材质和衬底参杂情况,得到耦合电容和接地电容的比值和无串扰的传输时延;A1. According to the semiconductor device process library instructions for bus wiring information, including physical size, wire material and substrate inclusions, the ratio of coupling capacitance to ground capacitance and transmission delay without crosstalk are obtained;
A2.结合不同串扰避免编码的时延避免性能,预测串扰避免时延上限;A2. Combining the delay avoidance performance of different crosstalk avoidance codes, predict the upper limit of crosstalk avoidance delay;
A3.根据选定的串扰避免编码,生成码字集合。A3. Generate a codeword set according to the selected crosstalk avoidance code.
所述步骤B还进一步包括:Described step B also further comprises:
B1.参考设计说明书对纠错能力的要求,确定相应群码的码距;B1. Refer to the requirements of the design manual for error correction capability, and determine the code distance of the corresponding group code;
B2.根据群码的的码距,推导群码的校验矩阵的属性,以得出满足该属性的所有校验矩阵。B2. According to the code distance of the group code, deduce the attribute of the parity check matrix of the group code, so as to obtain all parity check matrices satisfying the attribute.
所述步骤B1中,当且仅当码距大于等于2K+1时,编码可以纠正K位故障。In the step B1, if and only when the code distance is greater than or equal to 2K+1, the encoding can correct the K-bit fault.
所述步骤B2中,当且仅当群码的生成矩阵中相加等于0T的列向量组,它们的最小列向量数目等于a,则群码的码距等于a;矩阵列向量的维数m必须不小于log2(n+1),其中n是码字的位数。In described step B2, if and only if in the generation matrix of group codes, the column vector group equal to 0T is added, their minimum column vector number is equal to a, then the code distance of group codes is equal to a; the dimension of matrix column vector m must be no less than log 2 (n+1), where n is the number of bits of the codeword.
所述步骤C还进一步包括:Described step C also further comprises:
C1.按照步骤A1所述的方法,生成N位的串扰避免码字集合;C1. according to the method described in step A1, generate the crosstalk avoiding codeword set of N bits;
C2.判断满足属性的所有校验矩阵是否已经进行判定,如果已经全部进行判定,则执行步骤C3;否则执行步骤C4;C2. Judging whether all check matrices satisfying the attributes have been judged, if all judgments have been made, then perform step C3; otherwise, perform step C4;
C3.将N加上1;C3. Add 1 to N;
C4.从所有符合要求的矩阵中,选取一个待判定矩阵作为校验矩阵,从N位串扰避免码字集合中,选择符合要求的码字集合;C4. From all matrices that meet the requirements, select a matrix to be determined as the parity check matrix, and select a codeword set that meets the requirements from the N-bit crosstalk avoidance codeword set;
C5.如果符合要求的码字的数目满足编码M位信息的数目,则执行步骤C6;否则将待判定矩阵从矩阵集合中删除,返回步骤C2;C5. If the number of codewords that meet the requirements meets the number of encoded M-bit information, then step C6 is performed; otherwise, the matrix to be determined is deleted from the matrix set, and returns to step C2;
C6.输出符合要求的具备纠错能力的串扰避免编码码字集合。C6. Outputting a crosstalk-avoiding coding codeword set that meets requirements and has error correction capability.
所述步骤C4中,在选择码字的过程中,如果N位串扰避免码字集合中的码字满足待判定矩阵构成的校验方程,将该码字添加到符合要求的码字集合中;反之,该码字被删除。In the step C4, in the process of selecting a codeword, if the codeword in the N-bit crosstalk avoidance codeword set satisfies the verification equation formed by the matrix to be determined, the codeword is added to the codeword set that meets the requirements; Otherwise, the codeword is deleted.
为实现本发明的目的还提供一种可靠片上总线系统,包括:Also provide a kind of reliable on-chip bus system for realizing the purpose of the present invention, comprise:
编码单元,它被设置在总线系统的输入端口上,用于将需要传输的信息转化成总线上的编码;Coding unit, which is set on the input port of the bus system, and is used to convert the information to be transmitted into the code on the bus;
总线系统单元,根据具备纠错能力的串扰避免编码码字集合进行设计,用于传输编码;The bus system unit is designed according to the crosstalk-avoiding coding codeword set with error correction capability, and is used for transmission coding;
译码单元,它被设置在总线系统的输入端口上,用于将在总线上传输的编码转化成信息;A decoding unit, which is arranged on the input port of the bus system, is used to convert the code transmitted on the bus into information;
校验单元,用于找到并纠正编码在传输中的错误。The check unit is used to find and correct errors encoded in transmission.
所述编码单元,是将包含信息集合到最佳码字集合映射关系的编码本,利用SIS逻辑优化工具生成优化的编码逻辑,并通过组合电路或可编码逻辑阵列实现的电路。The encoding unit is a circuit that uses the SIS logic optimization tool to generate optimized encoding logic from the codebook that contains the information set and the mapping relationship of the optimal codeword set, and realizes the circuit through a combinational circuit or a codeable logic array.
总线系统单元中,所述具备纠错能力的串扰避免编码码字集合,是根据可靠片上总线的设计方法而确定的码字集合。In the bus system unit, the crosstalk-avoiding code word set with error correction capability is a code word set determined according to a reliable on-chip bus design method.
所述可靠片上总线的设计方法,是利用群码的校验矩阵从串扰避免编码码字集合中选择具备纠错能力的子集合,构成具备纠错能力的串扰避免编码码字集合,应用于片上总线的电路设计,其包括下列步骤:The design method of the reliable on-chip bus is to use the parity check matrix of the group code to select a subset with error correction capability from the crosstalk-avoiding coding codeword set to form a crosstalk-avoiding coding codeword set with error-correcting capability, which is applied to the on-chip The circuit design of the bus, which includes the following steps:
A.根据串扰避免编码的规则生成码字集合;A. Generate a codeword set according to the rules of crosstalk avoidance coding;
B.根据要求,推导群码的校验矩阵的属性;B. According to the requirements, deduce the attribute of the parity check matrix of the group code;
C.对满足属性的所有校验矩阵进行优化,获得最佳校验矩阵,以产生具备纠错能力的串扰避免编码码字集合。C. Optimizing all parity check matrices satisfying the attributes to obtain the best parity check matrix to generate a crosstalk-avoiding codeword set with error correction capability.
所述步骤A还进一步包括:Described step A also further comprises:
A1.根据半导体器件工艺库说明书对总线布线信息,包括物理尺寸、导线材质和衬底参杂情况,得到耦合电容和接地电容的比值和无串扰的传输时延;A1. According to the semiconductor device process library instructions for bus wiring information, including physical size, wire material and substrate inclusions, the ratio of coupling capacitance to ground capacitance and transmission delay without crosstalk are obtained;
A2.结合不同串扰避免编码的时延避免性能,预测串扰避免时延上限;A2. Combining the delay avoidance performance of different crosstalk avoidance codes, predict the upper limit of crosstalk avoidance delay;
A3.根据选定的串扰避免编码,生成码字集合。A3. Generate a codeword set according to the selected crosstalk avoidance code.
所述步骤B还进一步包括:Described step B also further comprises:
B1.参考设计说明书对纠错能力的要求,确定相应群码的码距;B1. Refer to the requirements of the design manual for error correction capability, and determine the code distance of the corresponding group code;
B2.根据群码的的码距,推导群码的校验矩阵的属性,以得出满足该属性的所有校验矩阵。B2. According to the code distance of the group code, deduce the attribute of the parity check matrix of the group code, so as to obtain all parity check matrices satisfying the attribute.
所述步骤B1中,当且仅当码距大于等于2K+1时,编码可以纠正K位故障。In the step B1, if and only when the code distance is greater than or equal to 2K+1, the encoding can correct the K-bit fault.
所述步骤B2中,当且仅当群码的生成矩阵中相加等于0T的列向量组,它们的最小列向量数目等于a,则群码的码距等于a;矩阵列向量的维数m必须不小于log2(n+1),其中n是码字的位数。In described step B2, if and only if in the generation matrix of group codes, the column vector group equal to 0T is added, their minimum column vector number is equal to a, then the code distance of group codes is equal to a; the dimension of matrix column vector m must be no less than log 2 (n+1), where n is the number of bits of the codeword.
所述步骤C还进一步包括:Described step C also further comprises:
C1.按照步骤A1所述的方法,生成N位的串扰避免码字集合;C1. according to the method described in step A1, generate the crosstalk avoiding codeword set of N bits;
C2.判断满足属性的所有校验矩阵是否已经进行判定,如果已经全部进行判定,则执行步骤C3;否则执行步骤C4;C2. Judging whether all check matrices satisfying the attributes have been judged, if all judgments have been made, then perform step C3; otherwise, perform step C4;
C3.将N加上1;C3. Add 1 to N;
C4.从所有符合要求的矩阵中,选取一个待判定矩阵作为校验矩阵,从N位串扰避免码字集合中,选择符合要求的码字集合;C4. From all matrices that meet the requirements, select a matrix to be determined as the parity check matrix, and select a codeword set that meets the requirements from the N-bit crosstalk avoidance codeword set;
C5.如果符合要求的码字的数目满足编码M位信息的数目,则执行步骤C6;否则将待判定矩阵从矩阵集合中删除,返回步骤C2;C5. If the number of codewords that meet the requirements meets the number of encoded M-bit information, then step C6 is performed; otherwise, the matrix to be determined is deleted from the matrix set, and returns to step C2;
C6.输出符合要求的具备纠错能力的串扰避免编码码字集合。C6. Outputting a crosstalk-avoiding coding codeword set that meets requirements and has error correction capabilities.
所述步骤C4中,在选择码字的过程中,如果N位串扰避免码字集合中的码字满足待判定矩阵构成的校验方程,将该码字添加到符合要求的码字集合中;反之,该码字被删除。In the step C4, in the process of selecting a codeword, if the codeword in the N-bit crosstalk avoidance codeword set satisfies the verification equation formed by the matrix to be determined, the codeword is added to the codeword set that meets the requirements; Otherwise, the codeword is deleted.
所述译码单元,是将包含最佳码字集合到信息集合映射关系的译码本,利用SIS逻辑优化工具生成优化的译码逻辑,并通过组合电路或可编辑逻辑阵列实现的电路。The decoding unit is a circuit that uses the SIS logic optimization tool to generate optimized decoding logic from the decoding book containing the mapping relationship between the optimal codeword set and the information set, and implements it through a combinational circuit or an editable logic array.
所述校验单元,还进一步包括:The verification unit further includes:
校验矩阵单元:将所述总线系统单元输出码字与对应的校验矩阵再次运算,得到的结果输入到差错译码单元;Check matrix unit: recalculate the output code word of the bus system unit and the corresponding check matrix, and input the obtained result to the error decoding unit;
差错译码单元:根据输入的运算结果判定是否有错误,并将纠错信息输入到纠正单元;Error decoding unit: judge whether there is an error according to the input operation result, and input the error correction information to the correction unit;
纠正单元:根据纠错信息,纠正码字相应位的错误。Correction unit: correct the error of the corresponding bit of the code word according to the error correction information.
所述对应的校验矩阵,是指从N位串扰避免码字集合中,选出符合要求的码字集合的矩阵,每一个校验矩阵都与一组符合该校验矩阵的码字集合相对应。The corresponding parity check matrix refers to a matrix that selects a codeword set that meets the requirements from the N-bit crosstalk avoidance codeword set, and each parity check matrix is associated with a set of codeword sets that meet the parity check matrix correspond.
为实现本发明的目的还提供一种可靠片上总线系统的工作方法,包括下列步骤:Also provide a kind of working method of reliable on-chip bus system for realizing the purpose of the present invention, comprise the following steps:
A.根据具备纠错能力的串扰避免编码码字集合,将待传信息一一映射到集合中的码字,在系统总线上传输;A. According to the crosstalk-avoiding codeword set with error correction capability, the information to be transmitted is mapped to the codewords in the set one by one, and transmitted on the system bus;
B.对传出的码字进行校验并进行纠正;B. Check and correct the outgoing codeword;
C.将码字转化为相应信息后输出。C. Convert the codeword into corresponding information and output it.
步骤A中,所述具备纠错能力的串扰避免编码码字集合,是根据可靠片上总线的设计方法而确定的码字集合。In step A, the crosstalk-avoiding codeword set with error correction capability is a codeword set determined according to a reliable on-chip bus design method.
所述步骤A中,利用包含信息集合到码字集合映射关系的编码本,将需要传输的信息转化成总线上的编码。In the step A, the information to be transmitted is converted into codes on the bus by using the codebook containing the mapping relationship between the information set and the codeword set.
所述可靠片上总线的设计方法,包括下列步骤:The design method of described reliable on-chip bus comprises the following steps:
A’.根据串扰避免编码的规则生成码字集合;A'. Generate a codeword set according to the rules of crosstalk avoidance coding;
B’.根据要求,推导群码的校验矩阵的属性;B'. According to the requirements, deduce the attribute of the check matrix of the group code;
C’.对满足属性的所有校验矩阵进行优化,获得最佳校验矩阵,以产生具备纠错能力的串扰避免编码码字集合。C'. Optimizing all parity check matrices that meet the attributes to obtain the best parity check matrix to generate a crosstalk-avoiding codeword set with error correction capabilities.
所述步骤A’还进一步包括:Described step A' also further comprises:
A1’.根据半导体器件工艺库说明书对总线布线信息,包括物理尺寸、导线材质和衬底参杂情况,得到耦合电容和接地电容的比值和无串扰的传输时延;A1'. According to the semiconductor device process library instructions for bus wiring information, including physical size, wire material and substrate doping, get the ratio of coupling capacitance to ground capacitance and transmission delay without crosstalk;
A2’.结合不同串扰避免编码的时延避免性能,预测串扰避免时延上限;A2'. Combining the delay avoidance performance of different crosstalk avoidance codes, predict the upper limit of crosstalk avoidance delay;
A3’.根据选定的串扰避免编码,生成码字集合。A3'. According to the selected crosstalk avoidance coding, a codeword set is generated.
所述步骤B’还进一步包括:Described step B' also further comprises:
B1’.参考设计说明书对纠错能力的要求,确定相应群码的码距;B1'. Refer to the requirements of the design manual for error correction capability, and determine the code distance of the corresponding group code;
B2’.根据群码的的码距,推导群码的校验矩阵的属性,以得出满足该属性的所有校验矩阵。B2'. According to the code distance of the group code, deduce the attribute of the parity check matrix of the group code, so as to obtain all parity check matrices satisfying this attribute.
所述步骤B1’中,当且仅当码距大于等于2K+1时,编码可以纠正K位故障。In the step B1', if and only when the code distance is greater than or equal to 2K+1, the encoding can correct the K-bit fault.
所述步骤B2’中,当且仅当群码的生成矩阵中相加等于0T的列向量组,它们的最小列向量数目等于a,则群码的码距等于a;矩阵列向量的维数m必须不小于log2(n+1),其中n是码字的位数。In the step B2', if and only if the group of column vectors equal to 0 T is added in the generation matrix of the group code, their minimum column vector number is equal to a, then the code distance of the group code is equal to a; the dimension of the matrix column vector The number m must be no smaller than log2 (n+1), where n is the number of bits of the codeword.
所述步骤C’还进一步包括:Described step C ' also further comprises:
C1’.按照步骤A1’所述的方法,生成N位的串扰避免码字集合;C1'. according to the method described in step A1', generate N-bit crosstalk avoiding codeword sets;
C2’.判断满足属性的所有校验矩阵是否已经进行判定,如果已经全部进行判定,则执行步骤C3’;否则执行步骤C4’;C2'. Judging whether all check matrices satisfying the attribute have been judged, if all judgments have been made, then execute step C3'; otherwise execute step C4';
C3’.将N加上1;C3'. Add 1 to N;
C4’.从所有符合要求的矩阵中,选取一个待判定矩阵作为校验矩阵,从N位串扰避免码字集合中,选择符合要求的码字集合;C4'. From all matrices that meet the requirements, select a matrix to be determined as the parity check matrix, and select the codeword set that meets the requirements from the N-bit crosstalk avoidance codeword set;
C5’.如果符合要求的码字的数目满足编码M位信息的数目,则执行步骤C6’;否则将待判定矩阵从矩阵集合中删除,返回步骤C2’;C5'. If the number of codewords that meet the requirements meets the number of encoded M-bit information, step C6' is performed; otherwise, the matrix to be determined is deleted from the matrix set, and returns to step C2';
C6’.输出符合要求的具备纠错能力的串扰避免编码码字集合。C6'. Output a crosstalk-avoiding encoding codeword set that meets the requirements and has error correction capabilities.
所述步骤C4’中,在选择码字的过程中,如果N位串扰避免码字集合中的码字满足待判定矩阵构成的校验方程,将该码字添加到符合要求的码字集合中;反之,该码字被删除。In the step C4', in the process of selecting a codeword, if the codeword in the N-bit crosstalk avoidance codeword set satisfies the verification equation formed by the matrix to be determined, add the codeword to the codeword set that meets the requirements ; Otherwise, the codeword is deleted.
所述步骤B还进一步包括步骤:Said step B further comprises the steps of:
B1.将总线输出码字与对应的校验矩阵再次运算,判断输出的运算结果是否有错误;B1. Calculate the bus output codeword and the corresponding parity check matrix again, and judge whether the output operation result is wrong;
B2.根据纠错信息,纠正码字相应位的错误。B2. According to the error correction information, correct the error of the corresponding bit of the code word.
所述对应的校验矩阵,是指从N位串扰避免码字集合中,选出符合要求的码字集合的矩阵,每一个校验矩阵都与一组符合该校验矩阵的码字集合相对应。The corresponding parity check matrix refers to a matrix that selects a codeword set that meets the requirements from the N-bit crosstalk avoidance codeword set, and each parity check matrix is associated with a set of codeword sets that meet the parity check matrix correspond.
所述步骤B1中,如果输出结果等于0T,则码字传输没有错误,所有输出保持为0;否则,从校验矩阵中找出与输出结果相等的列向量,并且将与该列向量位置相同的输出设置成1作为纠错信息。In the step B1, if the output result is equal to 0 T , there is no error in the codeword transmission, and all outputs remain 0; otherwise, find out the column vector equal to the output result from the parity check matrix, and compare the position of the column vector The same output is set to 1 as error correction information.
所述步骤B2中,当纠错信息输入0时,表示码字中相应位没有错误,保持不变;当纠错信息输入1时,表示码字中相应位出现错误,信号翻转。In the step B2, when the error correction information is input as 0, it means that the corresponding bit in the code word has no error and remains unchanged; when the error correction information is input as 1, it means that the corresponding bit in the code word has an error, and the signal is reversed.
所述步骤C中,利用包含码字集合到信息集合映射关系的译码本,将在总线上传输的编码转化成信息后输出。In the step C, the code transmitted on the bus is converted into information by using the decoding book including the mapping relationship between the codeword set and the information set, and then output.
本发明的有益效果在于:The beneficial effects of the present invention are:
1.可以保证在超深亚微米工艺以下集成电路中全局总线高效可靠的运行;1. It can ensure the efficient and reliable operation of the global bus in integrated circuits below the ultra-deep submicron process;
2.可以纠正总线上由于噪声导致的信号翻转,具备较高的商业和学术价值。2. It can correct the signal reversal caused by noise on the bus, and has high commercial and academic value.
3.避免了添加新的海明码以及屏蔽线来提供纠错能力,布线开销较小,功耗较低;3. Avoid adding new Hamming codes and shielded wires to provide error correction capabilities, with less wiring overhead and lower power consumption;
4.总线上的信号会同时变化,可以避免由于直接引入海明码而带来的二次串扰影响,确保了总线的性能;4. The signals on the bus will change at the same time, which can avoid the secondary crosstalk effect caused by the direct introduction of Hamming code, and ensure the performance of the bus;
附图说明Description of drawings
图1是跳变组合与相对时延的关系图;Figure 1 is a diagram of the relationship between jump combinations and relative delays;
图2是直接结合海明码的CAC编码示意图;Fig. 2 is a schematic diagram of CAC coding directly combined with Hamming code;
图3是本发明可靠片上总线的设计方法的流程图;Fig. 3 is the flowchart of the design method of reliable on-chip bus of the present invention;
图4是确定具备纠错能力的串扰避免编码码字集合算法流程图;Fig. 4 is to determine to have the crosstalk of error correcting ability and avoid the code word set algorithm flowchart;
图5是不同校验矩阵选出的码字数量图;Fig. 5 is a diagram of the number of codewords selected by different parity check matrices;
图6是码字选择规则的实例;Fig. 6 is the example of codeword selection rule;
图7是可靠片上总线系统结构示意图;Fig. 7 is a schematic structural diagram of a reliable on-chip bus system;
图8是校验单元结构示意图;Fig. 8 is a schematic structural diagram of a verification unit;
图9是可靠片上总线系统的工作方法的流程图。Fig. 9 is a flow chart of the method of operation of the reliable on-chip bus system.
图10是基于FTC原理不同容错总线的布线开销图;Figure 10 is a wiring overhead diagram of different fault-tolerant buses based on the FTC principle;
图11是基于FPC原理不同容错总线的布线开销图;Figure 11 is a wiring overhead diagram of different fault-tolerant buses based on the FPC principle;
图12是直接结合编码方式和码字选择编码方式导线的平均功耗图;Fig. 12 is the average power consumption diagram of directly combining coding mode and codeword selection coding mode wire;
图13是时延分析电路截面图;Fig. 13 is a time delay analysis circuit sectional view;
图14是总线电平信号下降波形图。Fig. 14 is a waveform diagram of bus level signal falling.
具体实施方式Detailed ways
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的一种可靠片上总线的设计方法和系统及其工作方法进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。In order to make the purpose, technical solution and advantages of the present invention clearer, the design method and system of a reliable on-chip bus and its working method of the present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, not to limit the present invention.
本发明的一种可靠片上总线的设计方法和系统及其工作方法,是通过基于码字选择的可靠片上总线的设计方法确定具备纠错能力的串扰避免编码码字集合,并根据具备纠错能力的串扰避免编码码字集合设计可靠片上总线系统,并利用设计好的可靠片上总线系统传输信息。The design method and system of a reliable on-chip bus of the present invention and its working method are to determine the crosstalk-avoiding codeword set with error correction capability through the design method of a reliable on-chip bus based on codeword selection, and according to the error correction capability A reliable on-chip bus system is designed to avoid crosstalk encoding codeword sets, and the designed reliable on-chip bus system is used to transmit information.
下面结合上述目标详细介绍本发明一种可靠片上总线的设计方法,它是利用群码的校验矩阵从串扰避免编码码字集合中选择具备纠错能力的子集合,构成具备纠错能力的串扰避免编码码字集合,应用于片上总线的电路设计。The design method of a kind of reliable on-chip bus of the present invention is introduced in detail below in conjunction with above-mentioned object, and it is to utilize the parity check matrix of group code to select the sub-collection that possesses error-correcting capability from the crosstalk-avoiding encoding code word collection, constitutes the crosstalk possessing error-correcting capability Avoid encoding code word set, apply to the circuit design of on-chip bus.
如图3和图4所示,包括下列步骤:As shown in Figure 3 and Figure 4, the following steps are included:
步骤S100,根据串扰避免编码(Crosstalk Avoidance Code,简称CAC)的规则生成码字集合;Step S100, generating a codeword set according to the rules of Crosstalk Avoidance Code (CAC for short);
步骤S110,根据半导体器件工艺库说明书对总线布线信息,包括物理尺寸、导线材质和衬底参杂情况,得到耦合电容和接地电容的比值(λ)和无串扰的传输时延(t0);Step S110, according to the semiconductor device process library instructions for the bus wiring information, including physical size, wire material and substrate doping, to obtain the ratio (λ) of the coupling capacitance to the ground capacitance and the transmission delay without crosstalk (t 0 );
步骤S120,结合不同CAC编码的时延避免性能,预测CAC时延上限;Step S120, combining the delay avoidance performance of different CAC codes, predicting the upper limit of CAC delay;
采用相对时延作为CAC时延上限,CAC编码可以分为加速编码(Delay=1+λ)、常用编码(Delay=1+2λ)和避免最大时延编码(Delay=1+3λ)。其中常用编码又分为两类,即禁止跳变编码(FTC)和禁止向量编码(FPC)。计算不同CAC的实际时延上限,其中实际时延是传输时延(t0)与相对时延(Delay)的乘积。Using relative delay as the upper limit of CAC delay, CAC coding can be divided into accelerated coding (Delay=1+λ), common coding (Delay=1+2λ) and maximum delay avoidance coding (Delay=1+3λ). Among them, the commonly used codes are divided into two categories, namely Forbidden Jump Coding (FTC) and Forbidden Vector Coding (FPC). Calculate the upper limit of the actual delay of different CACs, where the actual delay is the product of the transmission delay (t 0 ) and the relative delay (Delay).
参考设计说明书对信号跳变时延的要求,选择合适的CAC编码。Refer to the requirements of the design specification for the signal transition delay, and select the appropriate CAC code.
步骤S130,根据选定的CAC编码,生成码字集合;Step S130, generate a codeword set according to the selected CAC code;
步骤S200,根据要求,推导群码的校验矩阵的属性;Step S200, according to requirements, deduce the attributes of the parity check matrix of the group code;
步骤S210,参考设计说明书对纠错能力的要求,确定相应群码的码距;Step S210, referring to the requirements of the design specification for error correction capability, and determining the code distance of the corresponding group code;
设代数系统<Sn,o>是一个群,Sn是n位的码字全集,加操作o是按位异或运算符。Suppose the algebraic system <Sn, o> is a group, Sn is the complete set of n-bit codewords, and the addition operation o is a bitwise XOR operator.
定义1 设Cn是Sn的非空子集合,如果Cn也是一个群,并且是Sn的子群,则Cn被叫做群码。Ham(X,Y)表示Cn中的两码字的海明距离,其中X,Y表示两个任意码字。最小的非零海明距离叫做Cn的码距。码字中信号1的数目叫做码字的重量。因为群码Cn中任意两个码字X和Y的和仍然属于群码Cn,所以它们的海明距离Ham(X,Y)等于群码的某个码字Z的重量W(Z),以此类推群码的码距同码字的重量也有相应的关系。
定理1当且仅当码距大于等于2K+1时,编码可以纠正K位故障。
定理2群码Cn的码距等于群码中非零码字的最小重量,如等式2所示。
等式2
步骤S220,根据群码的的码距,推导群码的校验矩阵的属性,以得出满足该属性的所有校验矩阵;Step S220, according to the code distance of the group code, deduce the attribute of the parity check matrix of the group code, so as to obtain all parity check matrices satisfying the attribute;
推论1当且仅当群码的生成矩阵中相加等于0T的列向量组,它们的最小列向量数目等于a,则群码的码距等于a。Corollary 1 If and only if the sum of the column vector groups equal to 0 T in the generator matrix of the group code is equal to a, then the code distance of the group code is equal to a.
同时,矩阵列向量的维数m必须不小于log2(n+1),其中n是码字的位数。Meanwhile, the dimension m of the matrix column vector must not be less than log 2 (n+1), where n is the number of bits of the codeword.
符合如上要求的矩阵有很多,较佳地,本发明通过选择列向量和列向量重排列,得到所有满足要求的矩阵,供步骤S300进行优化。There are many matrices that meet the above requirements. Preferably, the present invention obtains all matrices that meet the requirements by selecting column vectors and rearranging the column vectors for optimization in step S300.
作为一种可实施方式,假设参考设计说明书要求电路具有纠正单个错误的能力,根据定理1和推论1的推导,群码的码距应该等于3,它的校验矩阵中最少有3个列向量相加等于0T。因此,相应校验矩阵必须满足如下两个属性:As a possible implementation, assuming that the reference design specification requires the circuit to have the ability to correct a single error, according to the derivation of
1校验矩阵没有相同的列向量,也没有向量0T。1 The check matrix does not have the same column vector, nor does it have
2校验矩阵存在由3个列向量组成的向量组,它们的和等于0T。2 There is a vector group consisting of 3 column vectors in the parity check matrix, and their sum is equal to 0 T .
同时,矩阵列向量的维数m必须不小于log2(n+1),其中n是码字的位数。Meanwhile, the dimension m of the matrix column vector must not be less than log 2 (n+1), where n is the number of bits of the codeword.
步骤S300,对满足属性的所有校验矩阵进行优化,获得最佳校验矩阵,以产生具备纠错能力的串扰避免编码码字集合,请参见图4、图5和图6;Step S300, optimize all parity check matrices that meet the attributes to obtain the best parity check matrix to generate a crosstalk-avoiding codeword set with error correction capabilities, see Figure 4, Figure 5 and Figure 6;
如图5所示,不同的校验矩阵选择得到的码字数目不同。当校验矩阵合适时,选择得到的码字数目较多。优化校验矩阵确保了在编码M位信息时,搜索到码字总数符合要求,而且码字的位数最少的码字集合。这样可以保证总线系统的布线开销较小,同时功耗开销也较小。As shown in FIG. 5 , the numbers of codewords obtained by different check matrix selections are different. When the parity check matrix is appropriate, the number of selected codewords is larger. Optimizing the parity check matrix ensures that when encoding M-bit information, a set of codewords with the total number of codewords meeting the requirements and the minimum number of codeword bits is searched. This ensures a low wiring overhead for the bus system and at the same time a low power consumption overhead.
步骤S310,按照步骤S100所述的方法,生成N位的CAC码字集合;Step S310, according to the method described in step S100, generate an N-bit CAC code word set;
步骤S320,判断满足属性的所有校验矩阵是否已经进行判定,如果已经全部进行判定,则执行步骤S330;否则执行步骤S340;Step S320, judging whether all parity check matrices satisfying the attributes have been judged, if all judgments have been made, then execute step S330; otherwise execute step S340;
步骤S330,将N加上1;Step S330, adding 1 to N;
步骤S340,从所有符合要求的矩阵中,选取一个待判定矩阵作为校验矩阵,从N位CAC码字集合中,选择符合要求的码字集合;Step S340, from all matrices that meet the requirements, select a matrix to be determined as a parity check matrix, and select a codeword set that meets the requirements from the N-bit CAC codeword set;
在选择码字的过程中,如果N位CAC码字集合中的码字满足待判定矩阵构成的校验方程,将该码字添加到符合要求的码字集合中;反之,该码字被删除。In the process of selecting a codeword, if the codeword in the N-bit CAC codeword set satisfies the verification equation formed by the matrix to be determined, the codeword is added to the codeword set that meets the requirements; otherwise, the codeword is deleted .
定义2 如果群码Cn={X|H·XT=0T},其中乘操作·是按位与运算符,X群码的任意码字,T表示转置,H是群码的生成矩阵(一致性校验矩阵),则方程{X|H·XT=0T}是群码Cn的生成方程(一致性校验方程),所有码字都是通过方程生成。
作为一种可实施方式,图6是5位编码的码字选择实例。子图(a)是根据FPC规则,从5位的码字全集中去除包含“101”或“010”的码字,剩余的16个码字就是FPC码字集合。子图(b)是码距等于3的群码的校验矩阵H,FPC的码字需要通过它构成的校验方程{X|H·XT=0T}判定。如果码字符合校验方程,则码字属于具有纠错能力的群码。例如,FPC的码字“00111”代入校验方程运算。首先乘操作,矩阵H的列向量(h3,h4,h5)被选中;然后加操作,列向量(h3,h4,h5)的和等于0T,所以码字“00111”符合校验方程,它属于群码。当FPC的码字“10011”代入校验方程运算,乘运算时列向量(h1,h4,h5)被选中,加运算时列向量的和等于(1,1,0)T,则码字“10011”不属于群码。子图(c)是选择得到的SFPC集合(Selected FPC),它包含4个码字,码距等于3。如果用用该码字集合编码2位输入信息,则片上总线可以同时避免串扰时延和提供纠错能力。As an implementable manner, Fig. 6 is an example of codeword selection for 5-bit encoding. Sub-graph (a) removes the codewords containing "101" or "010" from the complete set of 5-bit codewords according to the FPC rule, and the remaining 16 codewords are the FPC codeword set. Subgraph (b) is the check matrix H of the group code whose code distance is equal to 3, and the FPC code word needs to be judged by the check equation {X|H·X T =0 T } constituted by it. If the code word conforms to the check equation, the code word belongs to a group code with error correction capability. For example, the code word "00111" of FPC is substituted into the check equation operation. First, the multiplication operation, the column vector (h3, h4, h5) of the matrix H is selected; then the addition operation, the sum of the column vectors (h3, h4, h5) is equal to 0 T , so the code word "00111" conforms to the verification equation, it Belongs to the group code. When the FPC code word "10011" is substituted into the check equation operation, the column vector (h1, h4, h5) is selected during the multiplication operation, and the sum of the column vectors is equal to (1, 1, 0) T during the addition operation, then the code word "10011" does not belong to the group code. Subgraph (c) is the selected SFPC set (Selected FPC), which contains 4 codewords, and the code distance is equal to 3. If the 2-bit input information is encoded with this codeword set, the on-chip bus can avoid crosstalk delay and provide error correction capability at the same time.
步骤S350,如果符合要求的码字的数目满足编码M位信息的数目,则执行步骤S360;否则将待判定矩阵从矩阵集合中删除,返回步骤S320;Step S350, if the number of code words that meet the requirements meets the number of encoded M-bit information, then execute step S360; otherwise, delete the matrix to be determined from the matrix set, and return to step S320;
步骤S360,输出符合要求的具备纠错能力的串扰避免编码码字集合。Step S360, outputting a set of crosstalk-avoiding coding codewords that meet the requirements and have error correction capability.
采用本发明的一种可靠片上总线的设计方法,可以避免为校验总线添加额外的保护总线,布线开销较小。图10是利用合适的矩阵,不合适的矩阵的码字选择FTC(Selected FTC)以及直接添加海明码的FTC+HC编码需要的布线开销。采用合适的矩阵可以比不合适的矩阵节省1根或更多根导线。与FTC+HC相比,Good SFTC可以节省从5%到33%的布线开销,这些节省的导线与结合编码方式中用于保护校验总线的屏蔽线相当。图11是采用利用合适的矩阵,不合适的矩阵的码字选择FPC(Selected FPC)以及直接添加海明码的FPC+HC编码需要的布线开销。同样与FPC+HC相比,码字选择的编码方式可以节省从9%到44%的布线开销,这些节省的导线与结合编码方式中也与用于保护校验总线的屏蔽线相当。By adopting the design method of a reliable on-chip bus of the present invention, it is possible to avoid adding an extra protection bus for the verification bus, and the wiring overhead is relatively small. Figure 10 shows the wiring overhead required for code word selection FTC (Selected FTC) using a suitable matrix, an inappropriate matrix, and FTC+HC coding directly adding Hamming codes. Using a suitable matrix can save 1 or more wires than an unsuitable matrix. Compared with FTC+HC, Good SFTC can save wiring overhead from 5% to 33%, and these saved wires are equivalent to the shielded wires used to protect the verification bus in the combined coding method. Figure 11 shows the wiring overhead required for FPC (Selected FPC) code word selection using a suitable matrix and an inappropriate matrix and FPC+HC coding directly adding Hamming codes. Also compared with FPC+HC, the encoding method of code word selection can save wiring overhead from 9% to 44%, and these saved wires are equivalent to the shielding wire used to protect the verification bus in combination with the encoding method.
采用本发明的一种可靠片上总线的设计方法,布线开销较小,在总线上消耗的功耗也较小。图12表示采用结合编码方式和选择编码方式时,从一个码字跳转到另一个码字在总线上消耗的平均功耗。这里的功耗是相对功耗,它与总线的驱动电平和总线的电容无关。与FTC+HC编码相比,SFTC可以节省从5%到18%的功耗开销。与FPC+HC相比,SFPC可以节省从10%到20%的功耗开销。因此,当总线信号从一个码字变换到另一个码字时,基于码字选择的编码方法可以节省近10%的功耗开销。By adopting the design method of a reliable on-chip bus of the present invention, the wiring overhead is small, and the power consumption on the bus is also small. Figure 12 shows the average power consumption on the bus when jumping from one codeword to another codeword when using the combined encoding method and the selective encoding method. The power consumption here is relative power consumption, it has nothing to do with the drive level of the bus and the capacitance of the bus. Compared with FTC+HC encoding, SFTC can save power consumption from 5% to 18%. Compared with FPC+HC, SFPC can save power consumption from 10% to 20%. Therefore, the encoding method based on codeword selection can save nearly 10% power consumption when the bus signal is transformed from one codeword to another.
最重要的是,采用本发明的一种可靠片上总线的设计方法,可以避免二次串扰,进而保证在最坏情况下时延避免编码的性能。图13是130nm工艺下的集成电路截面图,它被用来模拟信号的下降波形,进而评估两种CAC编码在最坏情况下的性能。实验环境采用HSPICE中的Field Solver,它可以根据电路物质尺寸,掺杂情况直接抽取电路参数。电路的物理尺寸根据SMIC130技术库设置,而且本次实验的总线都是设置在第二层金属层上。如图13所示,导线采用铜作为介质,上层的介电常数设置成2.5,下层的介电常数是10。导线的宽度置成技术库的最小值0.2um,导线的间距是0.1um,导线高为0.6um,导线距离下层硅的距离是0.4um。根据平行板电容的计算公式C=ε*S/(4πkd),耦合电容与接地电容之比是3,采用常用CAC规则即可,而且总线串扰影响比较明显。The most important thing is that by adopting a reliable on-chip bus design method of the present invention, secondary crosstalk can be avoided, thereby ensuring the performance of time delay avoidance coding in the worst case. Figure 13 is a cross-sectional view of an integrated circuit under a 130nm process, which is used to simulate the falling waveform of the signal, and then evaluate the worst-case performance of the two CAC codes. The experimental environment uses the Field Solver in HSPICE, which can directly extract circuit parameters according to the size and doping of the circuit material. The physical size of the circuit is set according to the SMIC130 technology library, and the bus in this experiment is set on the second metal layer. As shown in Figure 13, the wire uses copper as the medium, the dielectric constant of the upper layer is set to 2.5, and the dielectric constant of the lower layer is 10. The width of the wires is set to the minimum value of 0.2um in the technical library, the spacing of the wires is 0.1um, the height of the wires is 0.6um, and the distance between the wires and the underlying silicon is 0.4um. According to the calculation formula of parallel plate capacitance C=ε*S/(4πkd), the ratio of the coupling capacitance to the ground capacitance is 3, and the common CAC rule can be used, and the influence of bus crosstalk is obvious.
在130nm工艺条件下,相邻的五根导线之间会有明显的串扰影响。实验建立了一个五线总线模型,其中第三导线总线是受害线。以基于FTC的CAC为例,采用码字选择方式时,向量对<01110,11011>可以激励在受害线上的最坏时延情况。采用直接结合编码方式时,与校验总线最邻近的编码线由于受到二次串扰,串扰影响会最严重。在实验中,这根线设置成总线模型的第三根导线,作为受害线。同样,向量对<01110,11011>可以激励在受害线上的最坏时延情况。但是,前三根导线属于编码总线,后两个总线属于校验总线,其中第四根导线是作为屏蔽线的VDD。根据SMIC130的门时延参数,两组总线的时间差会在跳变时延之内。本实验的跳变时延设为0.5ns,而两组总线的时间差设置为0.4ns。另外,在实验总线上加入MA测试向量对<00100,11011>,得到原始总线的最糟糕串扰影响,作为参考实验。Under 130nm process conditions, there will be obvious crosstalk effects between five adjacent wires. The experiment established a five-wire bus model, in which the third wire bus is the victim wire. Taking the FTC-based CAC as an example, when the codeword selection method is adopted, the vector pair <01110, 11011> can stimulate the worst time delay situation on the victim line. When the direct combination encoding method is adopted, the encoding line closest to the verification bus is subject to secondary crosstalk, and the influence of crosstalk will be the most serious. In the experiment, this line is set as the third wire of the bus model as the victim line. Likewise, the vector pair <01110, 11011> can excite the worst case delay on the victim line. However, the first three wires belong to the encoding bus, the last two buses belong to the verification bus, and the fourth wire is VDD as a shielding wire. According to the gate delay parameter of SMIC130, the time difference between the two bus lines will be within the transition delay. The jump time delay of this experiment is set to 0.5ns, and the time difference between the two groups of buses is set to 0.4ns. In addition, add the MA test vector pair <00100, 11011> to the experimental bus to obtain the worst crosstalk effect of the original bus, as a reference experiment.
图14是利用HSPICE得到的三个实验的下降波形图。当采用FTC+HC时,受害线首先仅受到编码总线的串扰影响,下降波形较陡。当电平接近阈值电平时,第二次串扰影响发生,下降波形突然变得平缓,导致下降时延变大。而采用码字选择编码方式时,则不会出现二次串扰现象,下降时延较小。利用标尺测得,码字选择编码的最坏时延是0.82ns,结合编码是0.93ns,不编码时的最坏情况是1.03ns。所以,码字选择编码方式可以达到更高的串扰时延避免效果。Fig. 14 is the descending waveform diagram of three experiments obtained by using HSPICE. When using FTC+HC, the victim line is only affected by the crosstalk of the encoding bus at first, and the falling waveform is steep. When the level is close to the threshold level, the second crosstalk effect occurs, and the falling waveform suddenly becomes gentle, resulting in a larger falling delay. However, when the code word is used to select the encoding method, there will be no secondary crosstalk phenomenon, and the drop delay is small. Using the scale to measure, the worst time delay of codeword selection encoding is 0.82ns, combined encoding is 0.93ns, and the worst case of no encoding is 1.03ns. Therefore, the codeword selection encoding method can achieve a higher crosstalk delay avoidance effect.
相应于本发明的一种可靠片上总线的设计方法,本发明还提供一种可靠片上总线系统,如图7所示,其包括:Corresponding to a design method of a reliable on-chip bus of the present invention, the present invention also provides a reliable on-chip bus system, as shown in Figure 7, which includes:
编码单元410,是将包含信息集合到最佳码字集合映射关系的编码本,利用SIS逻辑优化工具生成优化了的编码逻辑,并通过组合电路或可编码逻辑阵列(PLA)实现的电路。它被设置在总线系统的输入端口上,用于将需要传输的信息转化成总线上的编码;The
总线系统单元420,根据具备纠错能力的串扰避免编码码字集合进行设计,用于传输编码;The
所述具备纠错能力的串扰避免编码码字集合,是根据上述一种可靠片上总线的设计方法而确定的码字集合,在此不再赘述。The crosstalk-avoiding codeword set with error correction capability is a codeword set determined according to the above-mentioned method for designing a reliable on-chip bus, and will not be repeated here.
译码单元430,是将包含最佳码字集合到信息集合映射关系的译码本,利用S工S逻辑优化工具生成优化了的译码逻辑,并通过组合电路或可编辑逻辑阵列(PLA)实现的电路。它被设置在总线系统的输入端口上,用于将在总线上传输的编码转化成信息;The
校验单元440,用于找到并纠正编码在传输中的错误。The
所述校验单元,如图8所示,还进一步包括:The verification unit, as shown in Figure 8, further includes:
校验矩阵单元441:将总线输出码字与对应的校验矩阵再次运算,得到的结果输入到差错译码单元442;Check matrix unit 441: recalculate the bus output codeword and the corresponding check matrix, and input the obtained result to the
差错译码单元442:根据输入的运算结果判定是否有错误,并将纠错信息输入到纠正单元;Error decoding unit 442: judge whether there is an error according to the input operation result, and input the error correction information to the correction unit;
纠正单元443:根据纠错信息,纠正码字相应位的错误;Correction unit 443: correct the error of the corresponding bit of the codeword according to the error correction information;
校验矩阵单元441将总线系统单元420输出码字与对应的校验矩阵再次运算,得到的结果输入到差错译码单元442;差错译码单元442根据输入的运算结果判定是否有错误,并将纠错信息输入到纠正单元,如果输出结果等于0T,则码字传输没有错误,所有输出保持为0;否则,从校验矩阵中找出与输出结果相等的列向量,并且将与该列向量位置相同的输出设置成1作为纠错信息。纠正单元443根据纠错信息,纠正码字相应位的错误,当纠错信息输入0时,表示码字中相应位没有错误,保持不变;当纠错信息输入1时,表示码字中相应位出现错误,信号翻转。The
所述对应的校验矩阵,是指从N位串扰避免码字集合中,选出符合要求的码字集合的矩阵,每一个校验矩阵都与一组符合该校验矩阵的码字集合相对应。The corresponding parity check matrix refers to a matrix that selects a codeword set that meets the requirements from the N-bit crosstalk avoidance codeword set, and each parity check matrix is associated with a set of codeword sets that meet the parity check matrix correspond.
本发明还提供一种可靠片上总线系统的工作方法,如图9所示,包括下列步骤:The present invention also provides a working method of a reliable on-chip bus system, as shown in Figure 9, comprising the following steps:
步骤S100’,根据具备纠错能力的串扰避免编码码字集合,将待传信息一一映射到集合中的码字,在系统总线上传输;Step S100', according to the crosstalk-avoiding codeword set with error correction capability, map the information to be transmitted to the codewords in the set one by one, and transmit on the system bus;
所述具备纠错能力的串扰避免编码码字集合,是根据上述的一种可靠片上总线的设计方法而确定的码字集合,在此不再赘述。The crosstalk-avoiding codeword set with error correction capability is a codeword set determined according to the above-mentioned method for designing a reliable on-chip bus, and will not be repeated here.
利用包含信息集合到码字集合映射关系的编码本,将需要传输的信息转化成总线上的编码。The information to be transmitted is converted into codes on the bus by using the codebook that contains the mapping relationship between the information set and the code word set.
步骤S200’,对传出的码字进行校验并进行纠正;Step S200', check and correct the outgoing codeword;
步骤S210’,将总线输出码字与对应的校验矩阵再次运算,判断输出的运算结果是否有错误;Step S210', the bus output code word and the corresponding parity check matrix are re-operated, and it is judged whether there is an error in the output operation result;
如果输出结果等于0T,则码字传输没有错误,所有输出保持为0;否则,从校验矩阵中找出与输出结果相等的列向量,并且将与该列向量位置相同的输出设置成1作为纠错信息。If the output result is equal to 0 T , there is no error in the codeword transmission, and all outputs remain 0; otherwise, find the column vector equal to the output result from the parity check matrix, and set the output at the same position as the column vector to 1 as error correction information.
步骤S220’,根据纠错信息,纠正码字相应位的错误。Step S220', according to the error correction information, correct the error of the corresponding bit of the code word.
当纠错信息输入0时,表示码字中相应位没有错误,保持不变;当纠错信息输入1时,表示码字中相应位出现错误,信号翻转。When the error correction information is input as 0, it means that the corresponding bit in the codeword has no error and remains unchanged; when the error correction information is input as 1, it means that the corresponding bit in the codeword has an error, and the signal is reversed.
作为一种可实施方式,如图所示,假设在传输过程中码字“00111”的最后一位发生错误,导致码字在接收端变成“00110”。如果将接收到的码字再与校验方程{X|H·XT=0T}进行运算,乘操作的结果是列向量(h3,h4)被选中,加操作的结果是(0,0,1)T,这样就发现错误了。同时如图8(b)所示,加操作的结果正好等于矩阵H的最后一个列向量,所以错误发生在码字的最后一位。这样,将最后一根输出线信号置1,而且码字的最后一位翻转来纠正错误。如果故障发生在码字“00111”的第一位,那么接收端得到码字“10111”。它与校验矩阵运算的结果是(0,1,0)T,它和校验矩阵H的第一个列向量相同。所以,无论是码字的任何位发生错误,与校验矩阵的运算结果都可以指示错误的位置。As a possible implementation manner, as shown in the figure, it is assumed that an error occurs in the last bit of the code word "00111" during transmission, causing the code word to become "00110" at the receiving end. If the received codeword is operated with the verification equation {X|H·X T =0 T }, the result of the multiplication operation is that the column vector (h3, h4) is selected, and the result of the addition operation is (0, 0 , 1) T , so the error is found. At the same time, as shown in Figure 8(b), the result of the addition operation is exactly equal to the last column vector of the matrix H, so the error occurs in the last bit of the codeword. In this way, the last output line signal is set to 1, and the last bit of the codeword is flipped to correct errors. If the fault occurs in the first bit of the code word "00111", then the receiving end gets the code word "10111". The result of its operation with the check matrix is (0, 1, 0) T , which is the same as the first column vector of the check matrix H. Therefore, no matter any bit of the code word is wrong, the operation result with the parity check matrix can indicate the position of the error.
步骤S300’,将码字转化为相应信息后输出。Step S300', converting the codeword into corresponding information and outputting it.
利用包含码字集合到信息集合映射关系的译码本,将在总线上传输的编码转化成信息后输出。Utilize the decoding book containing the mapping relationship between the code word set and the information set, convert the code transmitted on the bus into information and output it.
本发明的有益效果在于:1.可以保证在超深亚微米工艺以下集成电路中全局总线高效可靠的运行;The beneficial effects of the present invention are: 1. It can ensure the efficient and reliable operation of the global bus in the integrated circuit below the ultra-deep submicron process;
2.可以纠正总线上由于噪声导致的信号翻转,具备较高的商业和学术价值。2. It can correct the signal reversal caused by noise on the bus, and has high commercial and academic value.
3.避免了添加新的海明码以及屏蔽线来提供纠错能力,布线开销较小,功耗较低;3. Avoid adding new Hamming codes and shielded wires to provide error correction capabilities, with less wiring overhead and lower power consumption;
4.总线上的信号会同时变化,可以避免由于直接引入海明码而带来的二次串扰影响,确保了总线的性能;4. The signals on the bus will change at the same time, which can avoid the secondary crosstalk effect caused by the direct introduction of Hamming code, and ensure the performance of the bus;
通过结合附图对本发明具体实施例的描述,本发明的其它方面及特征对本领域的技术人员而言是显而易见的。Other aspects and features of the present invention will be apparent to those skilled in the art by describing specific embodiments of the present invention in conjunction with the accompanying drawings.
以上对本发明的具体实施例进行了描述和说明,这些实施例应被认为其只是示例性的,并不用于对本发明进行限制,本发明应根据所附的权利要求进行解释。The specific embodiments of the present invention have been described and illustrated above, and these embodiments should be considered as exemplary only, and are not used to limit the present invention, and the present invention should be interpreted according to the appended claims.
Claims (35)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810057534A CN100592308C (en) | 2008-02-02 | 2008-02-02 | Design method and system of a reliable on-chip bus and its working method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810057534A CN100592308C (en) | 2008-02-02 | 2008-02-02 | Design method and system of a reliable on-chip bus and its working method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101226567A true CN101226567A (en) | 2008-07-23 |
CN100592308C CN100592308C (en) | 2010-02-24 |
Family
ID=39858558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810057534A Active CN100592308C (en) | 2008-02-02 | 2008-02-02 | Design method and system of a reliable on-chip bus and its working method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100592308C (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103444144A (en) * | 2011-02-17 | 2013-12-11 | 洛桑联邦理工学院 | Methods and systems for noise resilient, pin-fficient and low power communications with sparse signaling codes |
CN104699578A (en) * | 2015-01-09 | 2015-06-10 | 同济大学 | Constant-temperature instruction level self-testing method for testing time delay faults in inner heating manner |
CN103780266B (en) * | 2012-12-21 | 2016-11-23 | 北京信息科技大学 | One does not increase number of buses purpose and avoids crosstalk coded method and device |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6529979B1 (en) * | 1999-11-08 | 2003-03-04 | International Business Machines Corporation | Method and apparatus for a high-speed serial communications bus protocol with positive acknowledgement |
CN1975635B (en) * | 2006-12-28 | 2011-01-05 | 陈曦 | Enhanced wishbone on-chip bus for leading-in bus code |
-
2008
- 2008-02-02 CN CN200810057534A patent/CN100592308C/en active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103444144A (en) * | 2011-02-17 | 2013-12-11 | 洛桑联邦理工学院 | Methods and systems for noise resilient, pin-fficient and low power communications with sparse signaling codes |
CN103444144B (en) * | 2011-02-17 | 2016-12-14 | 洛桑联邦理工学院 | Sparse signaling code is utilized to carry out noise resilience, high pin efficiency and the method and system of low power communication |
CN103780266B (en) * | 2012-12-21 | 2016-11-23 | 北京信息科技大学 | One does not increase number of buses purpose and avoids crosstalk coded method and device |
CN104699578A (en) * | 2015-01-09 | 2015-06-10 | 同济大学 | Constant-temperature instruction level self-testing method for testing time delay faults in inner heating manner |
CN104699578B (en) * | 2015-01-09 | 2017-12-26 | 同济大学 | The constant temperature instruction-level self-test method of heating mode detection delay failure within a kind of |
Also Published As
Publication number | Publication date |
---|---|
CN100592308C (en) | 2010-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zimmer et al. | A fault model notation and error-control scheme for switch-to-switch buses in a network-on-chip | |
Sridhara et al. | Coding for reliable on-chip buses: A class of fundamental bounds and practical codes | |
Ganguly et al. | Crosstalk-aware channel coding schemes for energy efficient and reliable NOC interconnects | |
Fu et al. | On hamming product codes with type-II hybrid ARQ for on-chip interconnects | |
Zou et al. | 3DLAT: TSV-based 3D ICs crosstalk minimization utilizing less adjacent transition code | |
Rahaman et al. | Crosstalk avoidance and error-correction coding for coupled RLC interconnects | |
CN106849954B (en) | It is a kind of for the low-power consumption of network-on-chip, the decoding method of resistance to crosstalk and coding and decoding device | |
Fu et al. | Error control for network-on-chip links | |
CN100592308C (en) | Design method and system of a reliable on-chip bus and its working method | |
Shirmohammadi et al. | S2AP: An efficient numerical-based crosstalk avoidance code for reliable data transfer of NoCs | |
Shirmohammadi et al. | 3D-DyCAC: Dynamic numerical-based mechanism for reducing crosstalk faults in 3D ICs | |
Akl et al. | Reducing interconnect delay uncertainty via hybrid polarity repeater insertion | |
Shi et al. | Improved analytical delay models for RC-coupled interconnects | |
US20070229324A1 (en) | Bus switch encoding for reducing crosstalk effects in buses | |
Shirmohammadi et al. | PAM: A packet manipulation mechanism for mitigating crosstalk faults in NoCs | |
Huang et al. | Self‐calibrated energy‐efficient and reliable channels for on‐chip interconnection networks | |
Shafaei et al. | Numeral-based crosstalk avoidance coding to reliable NoC design | |
Shirmohammadi et al. | DR: Overhead efficient RLC crosstalk avoidance code | |
Cui et al. | Mosaic-3C1S: A low overhead crosstalk suppression scheme for rectangular TSV array | |
Verma et al. | Encoding schemes for reduction of power dissipation, crosstalk and delay in VLSI interconnects: A Review | |
Soleimani et al. | Crosstalk free coding systems to protect NoC channels against crosstalk faults | |
Rajagopal et al. | Multi-bit error correction coding with crosstalk avoidance using parity sharing technique for noc | |
JP2005523576A (en) | Data communication bus | |
Wang et al. | Optimizing the location of ECC protection in network-on-chip | |
Patooghy et al. | Crosstalk modeling to predict channel delay in network-on-chips |
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 | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20080723 Assignee: Zhongke Jianxin (Beijing) Technology Co.,Ltd. Assignor: Institute of Computing Technology, Chinese Academy of Sciences Contract record no.: X2022990000752 Denomination of invention: Design method, system and working method of a reliable on-chip bus Granted publication date: 20100224 License type: Exclusive License Record date: 20221009 |