In this paper, we address the off-chip driver delta-I or switching noi
se problem. We propose a novel approach based on switching codes to re
duce this noise. These codes are designed to lower the number of drive
rs which switch in any given system cycle. A formal theoretic framewor
k for switching codes is developed which provides an upper bound on th
e number of switching drivers as a function of bit width of the data b
us and number of redundant switch bits. Switching codes with error det
ecting and error correcting capabilities are also presented. Switching
codes also reduce the average switching activity and power consumed b
y the off-chip drivers.