一种针对片上网络的低功耗、抗串扰的编解码方法及编解码装置与流程

文档序号:12690689阅读:187来源:国知局
一种针对片上网络的低功耗、抗串扰的编解码方法及编解码装置与流程
本发明属于微电子
技术领域
,涉及深亚微米工艺集成电路片上网络(Network-on-Chip,NoC),特别涉及一种抑制串扰的低功耗编解码方法及编解码器,可用于超大规模集成电路的设计。
背景技术
:片上网络(Network-on-Chip,NoC)是片上系统(System-on-Chip,SoC)的一种全新的通信方法,它是多核技术的主要组成部分,借鉴了分布式计算系统的通信方式,用路由和分组交换技术替代传统片上总线来完成通信任务,是今后甚大规模集成电路的新设计范式。随着单芯片集成核数的增加,重负载的长互连成为片上网络功耗的主要瓶颈。低功耗编码技术是降低片上网络动态功耗的最有效方法之一。然而随着集成电路工艺特征尺寸的不断缩减,单一集成器件尺寸减小,局部互连线长度随之减小,然而全局互连线的长度随着芯片尺寸的增大而增大。而且,由于相邻互连线之间距离以及互连线宽高比的减小,互连线之间的耦合电容CI已接近甚至远大于接地电容CL。不断增加的耦合电容使相邻互连线发生相对翻转时产生严重的串扰,这种串扰尤其是最坏情况串扰(Worst-Case-Crosstalk,WCC)已成为影响信号质量的主要因素,并导致集成电路性能下降及功能出错。因此,在采用低功耗编码降低片上网路动态功耗的同时,必须考虑最坏情况串扰对全局互连线上数据传输质量的影响。根据相邻数据间的反转情况可以将串扰分为六类,具体分类如表1所示,其中(δi-1,δi,δi+1)为第i-1、i和i+1根线信号跳转情况,“-”、“↑”和“↓”分别表示不翻转、0→1翻转和1→0翻转三种情况。λ为工艺参数,且λ=CI/CL,前述最坏情况串扰指第五类和第六类串扰。表1根据相邻数据的反转情况的串扰分类串扰类型归一化延时翻转方式(δk-1δkδk+1)第一类0(---)第二类1(↑↑↑)(↓↓↓)第三类1+λ(-↑↑)(-↓↓)(↑↑-)(↓↓-)第四类1+2λ(-↑-)(-↓-)(↑↑↓)(↑↓↓)(↓↓↑)(↓↑↑)第五类1+3λ(-↑↓)(-↓↑)(↑↓-)(↓↑-)第六类1+4λ(↑↓↑)(↓↑↓)低功耗编码技术和抑制串扰技术分别是降低功耗和改善数据传输质量的最有效的方法之一。目前,许多文献引入基于权重的总线反转编码(Weight-BasedBus-InvertCoding),“绿色”自检错编码(Self-CorrectedGreencoding)等编码来实现低功耗编码,然而未考虑长互连的线间电容带来的严重串扰问题,仅采用低功耗编码技术,对于长互连的片上网络实现高速低功耗数据传输是非常困难的。技术实现要素:本发明提供一种抑制串扰的低功耗编解码方法及其编解码器,能够降低传输数据的翻转次数和抑制串扰的发生,从而有效减小数据传输的动态功耗,并提高数据传输的质量。本发明的解决方案如下:针对片上网络的低功耗、抗串扰的编码方法,包括如下步骤:(1)并行输入数据的每一数据线均以四位为一组编码,根据组内相邻数据间翻转情况分为两种情况:翻转次数大于1,则该组数据采用第一、三位或第二、四位取反的方式进行编码,同时将标志信号Flag置“1”;翻转次数小于或等于1,则该组数据保持不变,标志信号Flag置“0”;(2)对编码后的并行数据进行并串转换得到低阶的并行数据,并将转换后的并行数据暂存在寄存器模块中;(3)通过低阶并行数据中依时序相邻的两列数据进行按位异或运算,若运算结果出现连续两个或更多个“1”,则对其中时序在后的数据自身对应于连续“1”的连续若干个数据位进行异或运算,若依然是“1”,则说明相邻数据线上出现“10”→“01”或“01”→“10”,将串扰标志位Flag_Anticrosstalk置“1”,从而判定存在最坏情况串扰;否则,判定不存在最坏情况串扰,串扰标志位Flag_Anticrosstalk置“0”;(4)对应于Flag_Anticrosstalk等于“1”的数据位,在依时序相邻的两个数据bt-1和bt之间插入屏蔽码Bt-1,屏蔽码Bt-1根据公式Bt-1=bt-1⊕bt+bt-1bt计算得到;对应于Flag_Anticrosstalk等于“0”的数据位,在依时序相邻的两个数据之间插入数据bt-1或bt,最终所述低阶的并行数据与相应的屏蔽码并行数据依时序间隔排列整合为时序加倍的待发送数据。上述步骤(2)中,优选以4:1的比例进行并串转换。上述步骤(1)中,所述并行输入数据可以是32位数据,则步骤(3)所述低阶并行数据即为8位数据。上述步骤(4)中,在依时序相邻的两个数据之间最好插入数据bt-1(即时序在前的数据)。对上述编码方法所得数据进行解码的方法,包括如下步骤:(1)通过采样奇数时钟触发沿(第一列数据之前不会插入屏蔽码,所以奇数列为有效数据,偶数列为屏蔽码)的输入数据去除屏蔽码并行数据,保留所述低阶的并行数据即有效数据;(2)根据标志信号Flag进行解码,若Flag等于“1”,则相应地对数据的第一、三位或第二、四位进行取反操作;若标志信号Flag等于“0”,则数据保持不变;(3)对解码后的数据进行串并转换。一种用于实现(运行)上述编码方法的编码器,包括低功耗编码模块,用于对并行输入数据进行编码,输出编码后的并行数据和标志信号Flag;并串转换模块,用于将编码后的并行数据进行并串转换,得到低阶的并行数据;抑制串扰编码模块,用于判断所述低阶的并行数据中是否存在最坏情况串扰,产生相应的屏蔽码并行数据;寄存器模块:用于暂存并串转换模块发来的低阶的并行数据,并将抑制串扰编码模块提供的屏蔽码并行数据依时序相应插入低阶的并行数据形成待发送数据;时钟分频模块,用于向低功耗编码模块和并串转换模块提供二分频时钟。一种用于实现(运行)上述解码方法的解码器,包括屏蔽码检测模块,用于采样奇数时钟触发沿的输入数据去除屏蔽码并行数据,保留所述低阶的并行数据即有效数据;低功耗解码模块:用于根据标志信号Flag对有效数据进行解码,输出解码后的低阶并行数据;串并转换模块:用于将解码后的低阶并行数据进行并串转换,得到所需的并行数据;时钟分频模块,用于向低功耗解码模块和串并转换模块提供二分频时钟。本发明的技术效果阐述如下:该方法中的低功耗编码部分,从减少数据间的翻转次数的角度考虑,改变数据的编码方式,相比于原始数据,翻转次数可降低37.56%,有效地降低了数据传输中的动态功耗。该方法中的抑制串扰部分,通过在最劣串扰情况下,插入屏蔽码的方式,在尽可能降低额外功耗的前提下,有效地减少了数据间串扰的发生。对于随机数据源,该方法在避免最劣串扰的同时,降低了37.51%的传输功耗。附图说明图1是本发明抑制串扰的低功耗编码器的实施例结构图;图2是本发明抑制串扰的低功耗解码器的实施例结构图;图3是本发明低功耗编码的映射关系和布尔表达式;图4是本发明抑制串扰编码示意图;图5是未采用本发明编码与采用本发明编码方法的平均功耗对比图;图6是未有效抑制串扰的常规方案与采用本发明编码方法的眼图对比图。具体实施方式为使本发明的目的、特征和优点更能明显易懂,下文特举本发明的较佳实施例,并配合附图,作详细说明如下。参照图1,本发明的抑制串扰的低功耗编码器,包括:低功耗编码模块、并串转换模块、抑制串扰模块、时钟分频模块和寄存器模块。低功耗编码模块根据编码映射关系完成低功耗编码(具体参照图3);串并转换模块采用4:1比例对并行数据进行串行转换;抑制串扰模块判断是否发生最坏串扰情况,并在最坏串扰数据之间插入屏蔽码;寄存器模块用于暂存并串转换后的数据;时钟分频模块用于提供二分频时钟。参照图2,本发明的抑制串扰的低功耗解码器,包括:屏蔽码检测模块、低功耗解码模块、串并转换模块。屏蔽码检测模块用于检测并去除屏蔽码;低功耗解码模块用于低功耗编码的解码;串并转换模块采用1∶4的比例对串行化数据进行并行转换。参照图3,本发明的低功耗编码的映射关系和布尔表达式。数据采用四位为一组的编码方式。4位二进制数据一共有16种不同的原始编码,根据数据间翻转次数不同,将16种原始编码分成两个集合。翻转次数大于1的原始编码为需要进行编码操作的集合,包括:“0101”、“1101”、“1001”、“1011”、“1010”、“0010”、“0100”、“0110”,其余的原始编码为不需要进行编码操作的集合,包括:“0000”、“1000”、“1100”、“1110”、“1111”、“0111”、“0011”、“0001”。如果数据属于需要编码操作的集合,则数据的一、三位数据需要做取反操作,如果数据不属于需要编码操作的集合,则数据保持不变。为区分编码和未编码的数据,引入标志位信号Flag,若数据进行了取反操作,则Flag置“1”,反之,则Flag置“0”。标志位信号Flag由公式计算得到。参照图4,本发明的抑制串扰编码示意图。通过对已输出数据和将要输出的数据进行按位异或运算,若出现连续两个“1”,再对将要输出数据中出现连续“1”的数据位进行异或运算,若依然是“1”,则说明相邻数据线上出现“10”→“01”或“01”→“10”,将串扰标志位Flag_Anticrosstalk置“1”,从而判断存在最坏情况串扰,否则,不存在最坏情况串扰,串扰标志位Flag_Anticrosstalk置“0”。如图4所示,数据“00110110”和“01010100”按位异或运算后,得到“01100010”,由于得到的数据的六、七位连续为“1”,对数据“00110110”的七、八位进行异或运算,结果仍为“1”,则判断在六、七位上出现“10”→“01”或“01”→“10”反转,所以将串扰标志位Flag_Anticrosstalk置“1”,并在六、七位数据间插入屏蔽码“11”其余位数据保持不变,屏蔽码根据公式Bt-1=bt-1⊕bt+bt-1bt计算得到。参照图5,本发明在降低平均功耗方面的优点可以通过仿真结果进一步说明。在CadenceSpectre仿真工具中,基于1.2V,130mmCMOS,金属层互连线线宽和线间距0.6um工艺下,数据传输采用全摆幅技术(Full-swing)的数据速率5Gb/s,输入数据源采用随机数据源(random)和标准性能评估公司提供的SPEC95/2000CINT数据源(包括:compress95、perl、parser、vortex、vpr和mcf)。在数据传输的平均功耗方面,比较采用抑制串扰的低功耗编码和未采用抑制串扰的低功耗编码的方案,采用抑制串扰的低功耗编码均优于未采用低功耗编码,特别是对于随机数据源,抑制串扰的低功耗编码使平均功耗降低大约40%。参照图6,本发明在抑制串扰方面的优点可以通过方针结果进一步说明。在CadenceSpectre仿真工具中,基于1.2V,130mmCMOS,金属层互连线线宽和线间距0.6um工艺下,数据传输采用全摆幅技术(Full-swing)的数据速率4Gb/s,输入数据采用随机数据源,通过数据眼图,比较采用抑制串扰的低功耗编码和未采用抑制串扰的低功耗编码的方案。采用抑制串扰的低功耗编码有效地增大了眼图的眼高和眼宽,眼宽达到68%,即有效地抑制了数据传输中串扰的发生。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1