您的位置:首页 > 其它

低功耗设计一之Bus-invert

2015-02-01 15:07 155 查看
  构造简单模型,电路节点分为内部电路的小电容节点以及IO口的大电容节点,且假设除利用降低IO口转换次数外,其余的方式已将功耗优化到最低。基于这些假设,总功耗可以看作是内部电路功耗和IO口功耗之和。

  基本想法为通过减少大电容处转换次数以降低功耗,但同时会带来小电容处(内部电路)转换次数的增加。

  

主要实现步骤:

(1)计算当前 data value 与下一个 data value 之间的 Hamming distance(即两个数据之间不同的位的数量,包括invert line,即加上 invert 的值);

(2)如果 Hamming distance 大于n / 2,则invert值等于1,使下一个 bus value 等于下一个 data value 取反;

(3)否则 invert 值等于0,下一个 bus value 等于 data value;

(4)接收端bus的内容必须根据invert的值进行翻转,除非数据不被编码储存(如在 RAM )。

  对于一个八位的数据输出采用了两种方式进行优化,优化前功耗如下图:





  第一种优化方式为使bus长度为8进行优化,此时 invert 只有一位,优化后功耗如下图 :





  IO消耗为原来的78.34%

  总值为原来的80.77%

  第二种优化方式为使bus长度为2,将数据分为四个部分,此时invert有四位,优化后功耗如下图:





  IO消耗为原来的72.74%

  总值为原来的75.00%, 功耗降低更为明显,但以牺牲更多性能为代价。

参考:《Bus-InvertCoding for Low-Power I/O》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: