AbstractWith the advancement of technologies, interconnect delay and crosstalk. All methods are explained in Section II,
circuits are shrinking dramatically. Capacitances of Section III contains results reported by corresponding papers
interconnects are increasing due to minimized wire size and inter and a comprehensive comparison, followed by the conclusion
wire spacing. As a result, interconnect power consumption, delay, in Section IV.
and crosstalk are increasing significantly, which is affecting
overall interconnect performance. Various techniques such as
buffer insertion, shielding, skewing, and encoding are used to II. SELECTED BUS ENCODING METHODS
minimize delay, crosstalk, and power consumption. This paper
studies a set of encoding methods for reducing power A. Bus Invert
consumption, crosstalk, and delay, and also presents a Bus Invert encoding method [1] is one of the most widely
comprehensive comparison and analysis of these encoding used encoding methods. This encoding method is mainly
techniques. focused on reducing the number of transitions. According to
the method, only one control bit is needed to indicate the
Keywordsencoding, power, delay, bus invert, shielding, inversion. To implement Bus Invert encoding, first of all, we
weighted code mapping. need to calculate the hamming distance between the data of
two consecutive cycles. Hamming distance between the two
I. INTRODUCTION data strings of length n is the total number of positions at which
In Deep Sub-Micron (DSM) technology, the VLSI circuit the corresponding data are different. If the hamming distance is
components are now at the size of nanometer range. Along greater than n/2 where n is the number of the bus width or
with the components, interconnects are also shrinking very length of data string, set control bit=1 and invert all the bits of
quickly due to aggressive scaling down of technology. In this next cycle original data. If the hamming distance is less than
case, wire width is getting thinner but height is not decreasing n/2, then set control=0 and keep the data value as it is in the
so rapidly to keep resistance constant. As a result, the ratio of next cycle. At the receiver side, the contents of the bus must be
height to width is increasing prominently. Lots of research has conditionally inverted according to the control bit.
been accomplished on low power circuit designs, focusing on In the example figure 1, there are 9 transitions between
the reduction of circuit component power consumption. But, current cycle data and next cycle original data, which have
now in today's Deep sub-Micron technology, interconnect been marked as light blue. So, hamming distance is 9. In the
energy is no longer ignorable. Due to the dense placement of other 7 positions, the data is same as it is in the current cycle.
interconnects, coupling capacitance is increased, which As data length is 16 and hamming distance is greater than 8,
dominates the self capacitance of the wire. Consequently control bit will be equal to 1 and all the bits of next cycle
problems with crosstalk delay, noise and power consumption original data will be inverted. After the inversion hamming
arise which affects the overall circuit performance. distance is 7. Thus, due to inversion of the next cycle bits, 2
Coupling capacitance contributes to extra power self-transitions have been reduced.
consumption because of the different switching pattern of the As only one control bit is used to transfer the encoding
adjacent bus. Opposite transition between two adjacent buses information, area overhead is very small. Also this method
causes worst case cross talk and produces a large delay and doesnt require an extra clock cycle. Yet here, only self-
energy consumption in the interconnect. Different techniques transition is reduced, but crosstalk due to coupling capacitance
have been applied to minimize crosstalk, delay, and power
consumption. Some are at the circuit level and some are at the
Current
architecture level. Among these, bus encoding is a widely used 0 1 1 0 1 0 1 0 1 1 0 0 0 0 1 1
cycle data
method. This method is used to change the bit patterns of the
data so that self-transitions, charging, discharging, and toggle Next cycle
1 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0
original data
transitions are reduced, which will eventually minimize power
consumption, delay, and also crosstalk in some instances. In Next cycle
1 0 0 1 0 1 0 0 1 0 1 1 0 0 1 0 1
this paper, a set of encoding methods will be discussed to encoded data
reduce power, and the rest of the methods are for minimizing Fig.1. Bus Invert Encoding (bus width 16 bit, control bit 1 )
12
Current
between adjacent wires is not considered. cycle data
0 1 1 0 1 0 1 0 1 1 0 0 0 0 1 1
No Invert 0 0 Current
0 1 1 0 1 0 1 0 1 1 0 0 0 0 1 1
cycle data
Even Invert 0 1
Next cycle
1 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0
Odd Invert 1 0 original data
Next cycle
Both Invert 1 1 encoded data 0 1 1 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1
Fig.2. Control Bit of Odd Even Encoding Fig.4. Calculated Odd Even Invert Encoding (bus width 16 bit)
13
TABLE I. CROSSTALK CATEGORIZATION
Original Dala Block D1 1 1 1 0 0 0 0 0
CC Delay Pattern of switching
Original Data Block D2 1 0 1 1 1 1 0 1
1 0 , , , , ,
, , ,
2 CgR , 1 1 1 0 0 1
Encoded Data Block of
D1 TP1
3 CgR(1+) , , , 1 0 1 0 0 1
5 CgR(1+3) , , , 1 1 0 1 1 1
Encoded Data Block of
D2 TP3
6 CgR(1+4) ,
1 1 0 0 1 1
14
TABLE II. TEMPORAL CROSSTALK SHIELDING ENCODING TABLE
After getting the code words, the delay between two a1a2aiai+1.an, ai=0,1}, where i denotes the index of the
consecutive codes are measured using the crosstalk delay types opposite transition bit lines. The W will be an opposite
mentioned in Table I. If the delay is greater than type 4, then a transition forbidden (OTF) codebook if it doesnt have 2
temporal redundant code is inserted between the code words. transitions with each other. In the original WCM coding, the
Before doing this, it also checks whether the delay is type 6 or codes are selected in such a way that transition energy is
not. If the delay is type 6, then the 2nd code word is inverted; minimized.
otherwise its not. The temporal redundant code is either all
zeros or all ones. It is decided based on the total delay of three According to this encoding method, after selecting WCM
codes, each code is checked whether it is OTF or not. If it is
consecutive codes (current code, temporal code, and next
code). By using the following example of figure, it will be easy OTF, then it is selected as a mapping code for a particular data
pattern. As the codes of OTF codebook are guaranteed not to
to understand the encoding method. Suppose two consecutive
WCM codes are 101111000 and 010001000. As the delay have type 5 and 6 crosstalk delay, it can be said that this
encoding method is optimized for both energy and delay.
between the codes is type 6, the 2nd one is inverted. So now
the 2nd one is 101110111. Then the total delay of the two sets
{101111000, 000000000, 101110111} and {101111000, G. Encoding for Crosstalk
111111111, 101110111} is measured, where 000000000 and Verma et al. [7] proposed an encoding method to eliminate
111111111are temporal codes. The set which has less delay is worst-case crosstalk by reducing actual data bit lines. Required
selected as encoded data. In this example, the set {101111000, components are counter, controller, comparator, and register to
000000000, 101110111} has less delay. So this is the encoded design the encoder. Counter counts the number of 0s and 1s in
data. input data lines and feeds these two inputs to the controller.
Controller output follows the number, which one is higher. For
F. Opposite Transition Forbidden Weighted Code Mapping example, if the number of 1s is greater than the number of 0s,
(OTF_WCM) controller output is set to 1 and vice versa. Then controller
output is fed to the comparator and also to the decoder. Actual
This method [6] is a slightly modified version of WCM
data lines are fed into the comparator along with the controller
coding. The original WCM encoding method doesnt guarantee
output. In the comparator, the controller output is compared
to eliminate crosstalk type 5 and 6. This encoding method
with every bit in actual data lines to get the inverted bit
generates a WCM codebook that doesnt have an opposite
positions.
transition pattern. As a result, all crosstalk type 5 and 6 and
some of type 4 are eliminated. If W denotes the set of code For example, in the 8-bit data 10110101, the number of
words of n bits, W can be represented as W ={w | w = 1s is 5, which is greater than the number of 0s, which is 3. The
controller output is set to 1 and is fed into the comparator along
Current Cycle WCM Code 1 0 1 1 1 1 0 0 0 with original data to be compared. XOR operation between
controller output and original data is performed at comparator,
and the positions where controller output does not match are
Next Cycle WCM Code 0 1 0 0 0 1 0 1 0 the inverted bit positions. In this example, inverted bit positions
are 1, 3, and 7 if we set the index from LSB to MSB. So, in
Fig. 7. Transition between two WCM code
binary form, 001, 011, and 110 are stored in three registers and
then transferred to the decoder for retrieving original data.
Although this method reduces actual bus width, for the use of
Current Cycle WCM Code 1 0 1 1 1 1 0 0 0
register, area overhead increases and to transfer register bits, an
extra clock cycle is introduced.
Temporal Code 0 0 0 0 0 0 0 0 0
H. Crosstalk Quantitive Approach
Next Cycle WCM Code 0 1 0 0 0 1 0 1 0
In the previous encoding methods, the inductive effect was
not considered. As operating frequency is increasing in recent
Fig. 8. VCT_HSTR Encoding (bus width 9 bit) days, the inductance of the wires is also adding noise and
15
between the next cycle original data and next cycle inverted
Current Cycle Data 0 0 1 1 0 1 0 1 0
data. And the lesser one is selected to transfer to the bus using
the MUX. The comparator output is used as the selector of
Next Cycle Non- MUX. So, for the above example, inverted data will be selected
inverted data 0 1 1 0 1 0 1 1 0 as encoded data.
Encoding Method Power Crosstalk Delay Codec Area Codec Codec Extra Extra
Power Induced Control Cycle
Delay Line
Bus Invert 25% - - - - - 1 0
Simple Odd Even Invert 32% - - - - - 2 0
Calculated Odd Even Invert 30% - - - 5% - 2 0
Temporal & Shielding Coding - - 22-49% 871m2 1.1mW 237ps 33.3% 1
Temporal Crosstalk Shielding 46% - 11% 2127.2m2 5.7mW 1.2ns -25% 1~2
VCT Encoding with HSTR 45.47% - 28.15% 200116 - - 2 0~1
OTF_WCM 38.46% - 48.46% 217147 - - 7 0
Encoding for Crosstalk - 35-40% - - - - 0 0~2
Crosstalk Quantitative Encoding 11-19% 11-14% 7-19% - 1.1-8.6 - 1 0
16
[4] K. S. Sainarayanan, C. Raghunandan, and M. B. Srinivas, "Bus
IV. CONCLUSION encoding schemes for minimizing delay in VLSI interconnects," in Proc.
ACM Conference on Integrated circuits and systems design, Sept. 2007.
In today's deep submicron technology, a significant amount pp. 184-189
of power is consumed in interconnect due to crosstalk. In this [5] K. Najeeb, Vishal Gupta, and V. Kamakoti, "Delay and peak power
paper, we surveyed several methods for increasing energy and minimization for on-chip buses using temporal redundancy," in Proc.
delay efficiency in modern VLSI interconnects. Our study ACM Great Lakes symposium on VLSI, April. 2006, pp. 119-122.
shows differences, similarities, and specific ways of reducing [6] J. Zhang, Q. Wu, and Q. Qiu, "Bus encoding for simultaneous delay and
interconnect power consumption and delay among different energy optimization," in Proc. Int. Symp. on Low Power Electronics and
Design, Aug. 2008, pp. 209-212.
research works. Based on our survey, we tried to present a
comparative study of all methods. We selected some research [7] S. K. Verma and B. K. Kaushik, "A bus encoding method for crosstalk
and power reduction in RC coupled VLSI interconnects," International
works accomplished over the past few years. Among them, we Journal of VLSI design & Communication Systems 3, no. 2, pp. 29-39.
classified 7 research works based on 8 criteria including power, 2012.
crosstalk, delay, codec area, codec power, codec induced delay, [8] S. J. Ruan, T. C. Kan, and J. C. Hsu, "A novel crosstalk quantitative
extra control line, and extra clock cycle. Most of the techniques approach for simultaneously reducing power, noise, and delay based on
we presented focus on power consumption reduction, and the bus-invert encoding schemes," in Proc. Int. Great lakes Symp. on VLSI,
rest are based on delay reduction. May 2010, pp. 357-360.
[9] H. S. Deogun, R. R. Rao, D. Sylvester, and D. Blaauw, "Leakage-and
crosstalk-aware bus encoding for total power reduction," in Proc.
REFERENCES Annual Design Automation Conference, Jun. 2004, pp. 779-782.
[1] M.R. Stan, W.P. Burleson, "Bus-invert coding for low-power I/O," IEEE [10] M. Cha, C. G. Lyuh, and T. Kim, "Resource-constrained low-power bus
Trans. Very Large Scale Integration (VLSI) Systems, vol. 3, no. 1, pp. encoding with crosstalk delay elimination," in Proc. IEEE Asia and
49-58, March 1995. South Pacific Design Automation Conference, Jan. 2004, pp. 834-837.
[2] Z. Yan , J. Lach, K. Skadron, and M.R. Stan, "Odd/Even bus invert with [11] C. Duan, C. Zhu, and S. P. Khatri, "Forbidden transition free crosstalk
two-phase transfer for buses with coupling," in Proc. Int. Symp. On Low avoidance CODEC design," in Proc. Annual Design Automation
Power Electronics and Design, Aug. 2002, pp.80-83. Conference, Jun. 2008, pp. 986-991.
[3] S.K. Verma, B.K. Kaushik, "Crosstalk and power reduction using bus [12] D. C. Suresh, B. Agrawal, J. Yang, and W. Najjar, "Energy-efficient
encoding in RC coupled VLSI interconnects," in Proc. Int. Conf. encoding techniques for off-chip data buses," ACM Trans. Embedded
Emerging Trends in Engineering and Technology, Nov. 2010. pp.735- Computing Systems (TECS), vol. 8(2), no. 9, 2009.
740.
17