总线编/解码方法和总线编/解码器技术

技术编号:3761740 阅读:277 留言:0更新日期:2012-04-11 18:40
提供了将经由并行总线以突发串方式发送的数据编码的编码方法/编码器和对应解码方法/解码器,并行总线宽度为n位,每个突发串包括m个数据字,该编码方法包括:将k个突发串的数据组织为(p×q)个L↓[i]×C↓[j]矩阵,i=1,…,p,j=1,…,q,且*L↓[i]=n,*C↓[j]=k×m;对每个矩阵确定是否存在能减少其总线切换数目的变换模式,当存在这种变换模式时确定该矩阵需要变换并确定用于变换该矩阵的对应变换模式;对确定需要变换的矩阵利用对应变换模式对其进行变换,用变换后的矩阵替换该矩阵;将确定不需要变换的矩阵和经替换的矩阵形成一个待发送的n×(k×m)矩阵;产生指示各矩阵变换状态的n位的变换信息字;将变换信息字附加到所述待发送的矩阵以形成实际需要发送的矩阵。

【技术实现步骤摘要】

本专利技术涉及一种总线编/解码方法及对应的总线编/解码器。更具体地,本 专利技术涉及一种能够减小输入/输出(I/0)电路功耗的总线编/解码方法及对应的 总线编/解码器。
技术介绍
目前,能源和环境问题是全世界关心的问题。对于计算系统,从芯片的 层面上到系统的层面上追求低功率是个热门话题。当计算系统的功率增大时, 用于给该系统供电的开销以及系统散热开销以更高的速率增大。因此,诸如IBM、 Intel、 AMD、 Sun等的芯片制造商都在努力降低它们的芯片和系统所 消耗的功率。计算系统通常由处理器和外围的输入/输出(I/0)电路纽成。相应地,计算 系统的功率由处理器的功率和I/O电路的功率(在下文中,称为I/O功率)组成。 目前,作为降低计算系统功率的一种途径,已经提出了很多降低处理器功率 的方法。例如,Intel提出了一种电源管理方法,其在中央处理单元(CPU)的负 荷较低时降低CPU的工作电压和频率,从而降低CPU的功率。然而,该方 法没有涉及降低I/O功率。当不使用该方法时,I/O功率占计算系统功率的50% 左右,而当使用该方法时,由于处理器功率降低到其原来值的大约10%而1/0 功率相对地保持不变,因此I/O功率的比率升高到70%或更高,从而导致不 平衡的处理器功率和I/0功率。而且,已经发现对于移动设备,1/0功率的比 率可高达80%。因此,作为降低计算系统功率的另一途径,降低I/0功率越 来越重要。I/O功率由动态I/O功率和静态I/O功率组成。已经证实动态I/O功率可 由以下公式表示尸C.AA《./ (1) 其中,P为动态I/0功率,C为I/O电路的等效电容,VoD为工作电压,f为 工作频率,N为总线切换数目。所述总线切换数目是指总线在发送不同逻辑值的数据时进行的电平切换(或反转)的次数;具体地说,例如,在总线发送具 有第一逻辑值(0或l)的第一比特之后,如果接下来要发送的第二比特具有不 同于第一逻辑值的逻辑值(l或0),则需要将总线上的电平从第一逻辑值切换 (或反转)为第二逻辑值以发送该第二比特,这对应于一次总线切换;当总线发 送一个字时,总线切换数目即为发送该字时的电平切换的总数目。由上述公 式(1)可知,当其它条件不变时I/O功率正比于总线切换数目N。因此,除了 降低工作电压和频率以外,还可以通过减小N来减小1/0功率。已经提出了很多方法来减小总线切换数目。例如,在M. R. Stan等人的 "Bus-Invert Coding for Low-Power I/O" (IEEE Transactions on VLSI, pp.49-58, Mar. 1995)中提出了一种方法。在该方法中,在发送了字D0(64比特)之后, 检查发送下一个字Dl(64比特)是否需要切换字DO的超过一半的比特,即, 检查字D0与字D1之间的不同比特的数目是否超过一半(32个),如果是,则 切换(即,反转)字D1的全部比特,使得最多需要32次总线切换;同时,产 生变换信息以指示所发送的字是否被反转并且使用额外的信号线来发送该变 换信息。这种方法能够减小总线切换数目,然而,由于所发送的数据的模式 难以预测,因此使用一种变换模式(即,反转)来处理所有数据不一定能得到最 优的结果;而且,这种方法需要增加额外的信号线,这将导致电路设计的不 兼容。至于所提出的其它用于减小总线切换数目的方法,它们要么需要额外 的信号线,要么需要复杂的算法来推导总线编码方案,要么只适用于地址总 线,并且这些方法都没有从时间和空间的角度综合考虑数据的编码和发送。因此,需要一种通过减小总线切换数目来降低I/O功率的总线编/解码器 和总线编/解码方法,其不仅适用于地址总线还适用于数据总线,并且与现有 系统具有良好的兼容性。
技术实现思路
考虑到以上问题而提出了本专利技术。本专利技术的目的是提供一种基于矩阵变 换的总线编码器和总线编码方法以及相应的总线解码器和总线解码方法,所 述总线编码器和总线编码方法能够在向I/O电路发送数据之前通过选择性地 对该数据进行变换来减小实际发送给该I/O电路的数据的总线切换数目,从 而降低I/0功率和计算系统的功率,并且,其与现有系统具有良好的兼容性。根据本专利技术的一个方面,提供了 一种对经由并行总线以突发串方式发送的数据进行编码的方法,其中并行总线宽度为n位,每个突发串包括m个数 据字,m和n为自然数,该方法包括组织步骤,将k个所述突发串的数据 组织为(pxq)个LiXCj矩阵,其中k、 p、 q、 i、 j、 L;、 Cj为自然数,i=l,…, p, j-l,…,q,并且力丄,=",tc;=A:xw;确定步骤,对于每个所述Lj xCj矩阵,确定是否^^能够减f该矩阵的总线切换数目的变换模式,并且 当存在能够减少该矩阵的总线切换数目的变换模式时确定该矩阵需要进行变 换并且确定用于变换该矩阵的对应变换模式;变换步骤,对于确定需要进行 变换的矩阵,利用所确定的用于变换该矩阵的对应变换模式对其进行变换, 并且用变换后的矩阵替换所述确定需要进行变换的矩阵;形成步骤,将确定 不需要进行变换的矩阵和经过替换的矩阵形成一个待发送的n x (k x m)矩阵; 产生步骤,产生指示所述(pxq)个L;xCj矩阵的变换状态的长度为n位的变 换信息字;以及附加步骤,将所述变换信息字附加到所述待发送的nx(kx m)矩阵以形成实际需要发送的编码矩阵。根据本专利技术的另 一方面,提供了 一种对经由并行总线以突发串方式发送 的数据进行编码的编码器,其中并行总线宽度为n位,每个突发串包括m个 数据字,m和n为自然数,该编码器包括组织单元,将k个所述突发串的 数据组织为(pxq)个LiXCj矩阵,其中k、 p、 q、 i、 j、 Lj、 Cj为自然数,i-l,..., p, j-l,…,q,并且f丄,;",tc;=A:xm;确定单元,对于每个所述Lj xCj矩阵,确定是否^^^能够减夕'该矩阵的总线切换数目的变换模式,并且 当存在能够减少该矩阵的总线切换数目的变换模式时确定该矩阵需要进行变 换并且确定用于变换该矩阵的对应变换模式;变换单元,对于确定需要进行 变换的矩阵,利用所确定的用于变换该矩阵的对应变换模式对其进行变换, 并且用变换后的矩阵替换所述确定需要进行变换的矩阵;形成单元,将确定 不需要进行变换的矩阵和经过替换的矩阵形成一个待发送的n x (k x m)矩阵; 产生单元,产生指示所述(pxq)个LjXCj矩阵的变换状态的长度为n位的变 换信息字,和附加单元,将所述变换信息字附加到所述待发送的nx(kxm) 矩阵以形成实际需要发送的编码矩阵。根据本专利技术的另 一方面,提供了 一种用于将经由并行总线发送的编码数 据解码的方法,其中并行总线宽度为n位,所述编码数据包含长度为n位的 变换信息字和k个突发串的数据,每个突发串包含m个数据字,k、 m和n 为自然数,该方法包括以下步骤提取步骤,根据预定义的变换信息字位置信息而从编码数据中提取所述变换信息字;组织步骤,根据预定义的矩阵数 目和各个矩阵的大小而将编码数据中的剩余数据组织为(p x q)个Li x Cj矩阵, 其中p、 q、 i、 j、 Lj、 Cj为自然数,i-l,…,p, …,q,并且^>本文档来自技高网
...

【技术保护点】
一种对经由并行总线以突发串方式发送的数据进行编码的方法,其中并行总线宽度为n位,每个突发串包括m个数据字,m和n为自然数,该方法包括: 组织步骤,将k个所述突发串的数据组织为(p×q)个L↓[i]×C↓[j]矩阵,其中k、p、q、i、 j、L↓[i]、C↓[j]为自然数,i=1,...,p,j=1,...,q,并且*L↓[i]=n,*C↓[j]=k×m; 确定步骤,对于每个所述L↓[i]×C↓[j]矩阵,确定是否存在能够减少该矩阵的总线切换数目的变换模式,并且当存在 能够减少该矩阵的总线切换数目的变换模式时确定该矩阵需要进行变换并且确定用于变换该矩阵的对应变换模式; 变换步骤,对于确定需要进行变换的矩阵,利用所确定的用于变换该矩阵的对应变换模式对其进行变换,并且用变换后的矩阵替换所述确定需要进行变 换的矩阵; 形成步骤,将确定不需要进行变换的矩阵和经过替换的矩阵形成一个待发送的n×(k×m)矩阵; 产生步骤,产生指示所述(p×q)个L↓[i]×C↓[j]矩阵的变换状态的长度为n位的变换信息字;以及 附加步骤,将所述变 换信息字附加到所述待发送的n×(k×m)矩阵以形成实际需要发送的编码矩阵。...

【技术特征摘要】

【专利技术属性】
技术研发人员:沈文博李彧郑凯林海波
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1