philips j.res.40, bound... · algorithm for encoding and decoding codewords is developed. the per-...
TRANSCRIPT
Philips J. Res. 40, 40-53, 1985 Rll01
SPECTRUM SHAPING WITH BINARYDC2-CONSTRAINED CHANNEL CODES
by K. A. SCHOUHAMER IMMINKPhilips Research Laboratories, 5600 JA Eindhoven, The Netherlands
40 Phllips Journal of Research Vol.40 No. 1 1985
Abstract" A method is presented for designing binary channel codes in such a waythat both the power spectral density function and its second-derivativevanish at zero frequency. Recursion relations are derived to determine thenumber of codewords that can be used in this coding scheme. A simplealgorithm for encoding and decoding codewords is developed. The per-formance of the new codes is compared with that of classical channel codesdesigned with a constraint on the unbalance of the number of transmittedpositive and negative pulses.ECD: 5.4.
1. Introduetion
Many channel codes have been designed with the aim of suppressing thepower of the encoded stream near the zero frequency. Most of these channelcodes are designed on a digital sum constraint, where the (running) digital sumis defined for a binary sequence as the accumulated sum of ones and zeros(a zero is counted as -1) from the start of the transmission. The frequencyregion with suppressed components is characterized by the so-called cut-offfrequency. Justesen 1) found that the cut-off frequency of these sequences isproportional to the redundancy of the code. An example of a practicalembodiment of a code rejecting the low-frequency components, a DC-free orDC-balanced code, is the so-called zero-disparity code using codewords withan equal number of positive and negative pulses 2). A generalization of thisconcept leads to low-disparity codes using two alternative source representa-tions of opposite disparity polarity 3). lmmink 4) studied the cut-off frequencyversus the redundancy of these simple binary low-disparity codes. He con-cluded that the performance of the codes, in particular for small codewordlengths, is comparable with that of maxentropic sum constrained sequences.The power spectral density function of digital sum constrained codes is charac-terized by a parabolic shape in the low-frequency range from DC to the cut-off
Spectrum shaping with binary DC2-constrained channel codes
frequency. In some applications it is desirable to achieve for a given redun-dancy a larger rejection of the low-frequency components than is possiblewith DC-balanced codes.In this paper a new class of DC-free codes is presented having as additional
property that the zero second-derivative of the code spectrum also vanishes atzero frequency. (Note that the odd derivatives of the spectrum at zero fre-quency are zero because the spectrum is an even function of the frequency.)This results in a substantial decrease of the power at low frequencies for a fixedcode redundancy as compared with the classical designs based on a digital sumcriterion. Section 2 introduces a time domain constraint to be imposed on thechannel sequence so that the resulting spectrum of the sequence has the DC2-
balanced property, i.e. has both zero power and zero second-derivative at zerofrequency. Section 3 presents an enumeration method for finding the numberof codewords to be used in a DC2-balanced code. In order for the new codesto have a practical rate relatively long codewords have to be used which makesa direct method of encoding and decoding using look-up tables of the sourcewords and their channel representations prohibitively complex. Section 4 dealswith the enumerative encoding and decoding of DC2-balanced codewords.The algorithm is not more complex than looking-up and adding. The look-uptables needed for the enumerative coding grow polynomially in complexitywith increasing codeword length. Section 5 gives examples of codes usingcodewords that can be concatenated without a merging rule, so-called state-independent encoding. The power spectral density functions of the newlydeveloped codes will be compared with those of classical DC-balanced codes.Examples of codes with state-dependent encoding that operate with twomodes of the source representation are given in sec. 6.
2. De2-balanced codesLet X denote a stationary channel sequence, having mean zero, with vari-
abIes ... , X-I, Xo, XI, ... ; x, E ( -1,1 J. The power spectral density function ofthe process is given by 5)
co
H(w) = R(O) + 2·L R(i) cos (ico),i=I
(1)
where R(i) = E(xjxj+I), i = 0, ± 1, ± 2, ... is the auto-correlation functionof the sequence.
The spectrum H(w) is an even function of co, so that in the neighbourhoodof co = 0 it can be approximated with the following Taylor expansion:
H(w) = H(O) + H'~(O) w2 -+ H~~(O) w4 ... (2)
Philips Journalof Research Vol. 40 No. 1 1985 41
K. A. Schouhamer Immink
From a straightforward Fourier analysis it can be shown, if the running digitalsum (RDS) ZI defined by
1
ZI = L xr,j=-oo
is bounded, Le. has finite unbalance, the resulting power spectral density func-tion vanishes at (I) = 0, Le. H(O) = 06).We now define the running digital sum sum(RDSS) YI by
n
. L XI= d« and1=1
n j
L L xI=dy,j=l 1=1
(3)
1
YI = L Zj.j=_ct:J
If both the RDS and RDSS assume a limited number of values it can beproved in the same way that then H(O) = H"(O) = O. In the following amethod is presented to design codes with bounded RDS and RDSS, here called'DC2-balanced' codes. .The codes are based on codewords with fixed length. The codewords are
chosen in such a way that if concatenated using a certain encoder rule the chan-nel sequence will assume a finite number of Y and z values. The first problemto solve is to enumerate the number of codewords with length n satisfying ayand z constraint.
3. Enumeration of (z,y) sequences
In the preceding section the word unbalance referred to a property of asequence of arbitrary length. Now we shall use this concept for codewordswith a predefined length. First simple recursion relations are derived to findthe number of codewords with length n having a constraint on the zand y dis-parity, so-called (z,y) sequences. Later we show how these codewords can beconcatenated in such a way that the code stream will assume a limited numberof RDS and RDSS values.In other words, find the number of sequences X = (Xl, ••• , Xn), XI E (-I, 1) ,
satisfying the following conditions
where d; and d, are the zand y disparities of x.We follow the approach 0[7). By changing the order of summation we find
n n
dy = ?: (n + 1.- i) XI = - ?: iXI + (n + 1)d..1=1. 1=1
(4)
42 Phillps Journal of Research Vol.40 No. 1 1985
!(n +d.l t (n -d.ld, 7= - L Pi + L n, + (n + 1) de,
i=l i=l(5)
Spectrum shaping with binary DC2-constrained channel codes
Because x, E [ -1, I} we rewrite eq. (4) and find
where Pi E [1, ... , n} and n, E [1, ... , n} correspond to the positions of the + l' sand -l's, respectively.
Obviously!(n-d.l nL n, = L i = !n(n + 1),i=l i=l
so that with eq. (5)t(n+d.lL Pi = Hn(n + 1) + 2(n + I)dz - 2dy].
1=1(6)
Remark
In the particular case that both zand y disparities are zero it follows in astraightforward way from eqs (3) and (6) that the codeword length n has to bea multiple of four.
The number of codewords satisfying the d, and d« constraints can be foundusing the theory of partitions (see ref. 8). From the above it follows that thisnumber equals the number of distinct subsets [PI, ... , P!(n+d.l} of sizeHn + dz) of the set [1,2, ... , n} satisfying eq. (6). The number of codewords,denoted by An(dz, dy), is given by the coefficient Cn(i,j) of u't', of thepolynomial gn(U, t) defined by .
gn(U, t) = (1 + ut) (1 + u2t) ... (1 + unt),
wherei = Hn(n + 1) + 2(n + 1) d« - 2dy], j = !(n + de), ' .
Both i andj are assumed to be integers, otherwise the number of codewords iszero.
We can derive a useful relation with the following observation. The se-quence X = (Xl, X2, ••• , xn) satisfies the d, and d, constraint if the sequence wobtained by reversing the order of symbols in x, Le. w = (xn, ••• , xi), satisfiesthe constraints
n
L wi =de,i=l
n iL L Wi = -dy + (n + 1) a..i=l i=l
The number of sequences w satisfying the two constraints equals by definition
Phillps Journalof Research Vol. 40 No. 1 1985 43
K. A. Schouhamer Immink
An(dz, (n + l)dz-dy). As the number of sequences w equals the number ofsequences x with the given constraints we simply obtain
(7)
As gn(U, t) = gn-I(U, t)(1 + unt) the following recursion relation of the coeffi-cients can be written down.For m = 1,2, ... , n; j = 0, ... , m and i = 0, ... , ~m(m + 1)
CmU,j) = Cm-IU,j) + Cm-lU - m,j - 1), (8)
with initial conditions
Co(O,O) = 1, otherwise Cm(i,j) = 0.
4. Enumerative encoding and decoding (z,y) sequences
Codes with rates of practical interest are only possible if the codewordlength is relatively large (see later). The hardware requirements for a directencoding and decoding using look-up tables for storing the codewords andtheir source representations grow exponentially with the codeword length. Forsay n >24 this direct method is beyond current technology. In this section asequential algorithm is presented for encoding and decoding (z,y) sequenceswhich is not more complex than adding and looking-up, where the number ofentries of the look-up table grows polynomially with the codeword length.To that end we establish a 1 - 1 mapping from the set S of (z,y) sequences
onto the set of integers 0, 1, ... ,M-I, where M is the cardinality of S.Let S be the set of (z,y) sequences. The set S can be ordered lexicographic-
ally as follows:If w = (WI, ••• , wn) and v = (VI, ... , Vn) are elements of the set S then v is
called less than w, in short v <ow, if there exists an i, 1~ i ~ n, such thatVj< Wj and Wj= vj, 1«i< i.The position of w in the lexicographical ordering of S is defined to be the
rank of w, denoted by r(w), i.e. r(w) is the number of all v in S with v <ow.The following algorithm for ranking (z,y) sequences can be used for de-
coding.
Decoding algorithm
The rank r(x) of the binary (z,y) sequence x in S can be calculated asfollows
n
r(x) = L An-k(dz - Zk-l + 1, -dy + (n - k + 1) d, + Yk-l) . xi,k=l
44 Phllips Journul of Research Vol.40 No. 1 1985
n j-l n
d; = L ZI = I ZI + Zj + I ZI =1=1 . 1=1 I=j+lj-l n I
L ZI + Zj + L I x-.1=1 I=j+l m=1j-l n
L ZI + (n - j + 1) Zj + L1=1 I=j+lj-l n-j
L ZI + (n - j + 1) Zj + L1=1 k=1
I
L x-.m=j+lk
L Xj+m.m=1
Spectrum shaping with binary DC2-constrained channel codes
wherexk = HXk + 1),
and
k-l
Zk-l = L XI1=1
k-l
Yk-l = L zi.1=1
Proof
According to Cover 9) the lexicographic index r(x) of X is given byn .
r(x) = L x/ . n/x«, X2, ••• , Xj-I, -1), .j=1
where ns(XI,X2, ••• ,Xk) denotes the number of elements in S for which the firstk coordinates are given by (Xl,X2, ••• ,Xk). The first (j - 1) coordinates of xdetermine the states Zj and yj
j-l
. Zj-l = LXI1=1
andj-l
vi-, = L ZI.1=1
From eq. (3) we find that}-1 n
d« = I XI + Xj + I XI =1=1 I=j+l
n-j
= Zj-l + Xj + L Xj+l.1=1
In the same way
From these observations it follows that the number of vectors x given by
x = (Ulo ••• , Uj-I, -1, Xj+I, ••• , xn),
Phlllps Journolof Research Vol. 40 No. 1 1985 45
K. A. Schouhamer Immink
(where the UI'S are given) satisfyingn
L XI= dz and1=1
n 1
L L Xm=dJ'1=1 11)=1
equals the number of vectors V with length n - j, v = (VI, ••• , Vn-j) satisfying
and
n-j
L VI = de - Zj-l + 11=1
n-j k j-l
L L Vm = dJ' - L ZI - (n - j + 1) Zj-l + (n - j + '1).k=l m=l 1=1
Whence
An-j(dz - Zj-l + 1, dJ' - yj-l + (n - j + 1) (1 - Zj-l».
With eq. (7) we find
An-j(dz - Zj-l + 1, dJ' - Yj-l + (n - j + 1) (1 - Zj-l» =
= An-id: - Zj-l + 1, -dJ' + (n - j + 1) d« + Yj-l).
oThe inverse algorithm to encode (z,y) sequences, i.e. to find the sequencesgiven their rank, is given in the following.
Encoding algorithm
Let an integer I, IE{O, 1, ... ,M - IJ and the set S be given. The followingalgorithm finds X such that r(x) = I.
Initialize
Xo = Yo =;= Zo = 0;for
where Zk = Zk-l + Xk-l and Yk = Yk-l + Zk-l
then set Xk = 1 and set
I = I -An-k(dJ' - Zk + 1, (n - k + 1)ä, - dJ'+ Yk)
else set x; = -1.The procedure, as presented here, is confined to the encoding and decoding
of one set of (z,y) sequences. The procedure can readily be generalized toinclude sets with different values of the disparities (see ref. 9).
46 Phillps Journalof Research Vol.40 No. 1 1985
Spectrum shaping with binary DC2-constrained channel codes
The enumerative coding enables the design of channel encoders and de-coders of moderate complexity. For decoding we need storage capacity for thenon-zero weighting coefficients, a full adder and an accumulator to store inter-
. mediate and final results. The encoder needs an additionallogical comparator.The weighting coefficients look-up table can be used for encoding and de-coding, which is attractive for application in recording, where the transmitterand receiver are usually housed in one machine. Note that we do not need amultiplier because x is binary valued. Lyon 10) gave an example of a practicalembodiment based on the enumerative coding of codewords with given z dis-parity using Pascal's triangle. In order to encode and decode (z,y) sequenceshis circuitry has to be extended with an extra counter to determine the y state.
5. Coding with zero-disparity codewordsThe simplest way to find a code generating long sequences satisfying the z
and y constraint is to use codewords of fixed length n that can be concatenatedwithout a coding rule, i.e. to use a stateless encoder. In this simple case thecodewords start and terminate with zero RDS and RDSS. Consequently thecodewords have zero zand y disparities. In the sequel we use the short-handnotation zero-disparity if both the zand y disparities are zero. From eqs (3)and (4) we find in this particular case that the codeword moments Uk satisfy thefollowing conditions:
n
. " ik °Uk = Li I XI = ,1=1
kE[O,I}. (9)
Using the recursion relations eq. (8) we calculated the number M =An(O, 0),n = 4,8, ... ,36 of zero-disparity codewords (we have already remarked thatAn(O,O) = 0, if n is not a multiple of four). The results are listed in table I.
TABLE INumber of codewords M with zero-disparity
n M R
4 2 0.2508 8 0.37512 58 0.48816 526 0.56520 5448 0.62124 61108 0.66228 723354 0.69532 8908546 0.72236 113093022 0.743
Phlllps Journalof Research Vol. 40 No. 1 1985 47
K. A. Schouhamer lmmink
Table I also presents the code rate R, defined by
R = 210gMn (10)
Note in table I that even for large codeword length the code rate is still poor.During transmission the symbols of the (z,y) sequences are serially trans-
mitted. Assume that the codewords are equiprobable and independent, thenthe auto-correlation function of the concatenated channel stream is given by 11)
1 n-IeR(k) = -l: E(XiX/+Ie}; 1 ~ k ~ n - 1,n .=1
R(O) = 1,R(k) = 0; k ~ n,
where
1 M-I
E(XiXj) = M I xlle) X}"); 1~ i,j ~ n.1e=0
(11)
where x(le) is the k-th element of the set of codewords with zero y and z dis-parity.
Example 1
The simplest example is the code with n = 4 having two codewords so thatthe rate R =~.We can verify that the two codewords are '0110' and' 1001' (a'0' is used to denote a symbol with value -1). The auto-correlation functionof this channel code can be found by hand: R(O) = 1,R(l) = -~, R(2) = _~,R(3) = ~and for i ~ 4: R(i) = O.The resulting power spectral density functionH(w) of this channel code is found with eq. (1)
H(w) = 1 + 2 {- ~cos co - ~ cos 2w + ~cos 3w} = 4 sin" ~w sin" co,We can easily verify that indeed H(O) = H"(O) = O.
Due to the exponential growth of the number of codewords the computa-tional effort becomes prohibitive for large codeword lengths when eq. (11) isrused. The preceding enumeration method (sec. 3) can be extended to find theauto-correlation function with a polynomially growing computational effort.From eq. (11) we derive for fixed io, i1; (X/E ( -1, IJ):
48 Phlllps Journal of Research Vol.40 No. 1 1985
where N( ) is the number of codewords satisfying ( ).
Phillps Journalof Research Vol. 40 No. 1 1985 49
Spectrum shaping with binary DC2-constrained channel codes
For symmetry reasons we find
E( ) 2N(Xio = Xi) - 1XioXi) = M
4N(Xio = XI) = 1) _ 1.M
Assume Xio = Xi) = 1, then from eq. (9) we find
(12)
and
n
L xi = -2;=1, i~iO,;1
n
I i x, = -(iD + is).i=l, i;!lo, I)
(13)
The number of sequences in S satisfying these constraints can again be foundusing the enumeration method of sec. 3.
The number of sequences N(Xio=Xi) = 1) in S satisfying eq. (13) is given bythe coefficient of u'v', i=~n(n + 1) - iD-it, j=Hn - 4) of the polynomialhn(u, t)
h ( t) = gn(U, t) (14)n u, (1 + u'« t) (1 + Ui) t) .
With a small modification of the recursion relations given by eq. (8) we canobtain N(Xio=Xi) = 1).
Using eqs (1), (11), (12) and relation (14) we calculated the power spectraldensity functions of zero-disparity codeword based codes. The results of thecomputations are plotted in fig. 1.
olilQ..
0 1 k;: r::::: ~ ~i-'
-~ ~ V' l/~ 17010
2~~~ V V 116
~~n=12
11 /20~~ V/ '/
30~II f7/IIJI V
]I40
~
III~-
0.005 0.01 0.1frad. of channel freq. (log)
0.5
Fig. 1. Power spectral density functions of DC2-balanced codes based on zero-disparity code-words with the codeword length n as a parameter.
K. A. Schouhamer lmmink
We define the (low-frequency) cut-off frequency Wo according to 12)
H(Wo) = ~.
Using numerical methods we computed the cut-off frequency of the variouscodes. Fig. 2 shows the cut-off frequency versus the redundancy 1 - R. Asa comparison we plotted the cut-off frequency, according to the same defini-tion, of DC-balanced zero-disparity codeword based codes versus the redun-dancy 12). We observe in the figure that for a fixed rate the cut-off frequency ofDC-balanced codes are approximately a factor of 2.5 larger than those ofDC2-balanced codes. Below the cut-off frequency the spectra of DC2-balancedcodes decreases faster with decreasing frequency than those of DC-balancedcodes. We noticed when comparing the spectra of DC2- and DC-balanced codesthat for fixed redundancy a cross-over is found at approximately - 20 dB. Weconclude therefore that DCê-balanced codes are favourable if rejection of low-frequency components is needed better than - 20 dB.
0.1
1=N--3cT~15I
:;U
In=6
I Il-f l- t n=12
/8 ~611,0
1/
;:1LA 20
24
616 288 32
20 36
It.§ZO( 52
l>. DC - balanced1DCI2- b1ala1nCjd
i0.010.1
Redundancy (1-R) (log)
Fig. 2. The cut-off frequency of DC- and DC2-balanced, zero-disparity codes versus the redun-dancy 1 - R. The codeword length is denoted by n.
6. State-dependent encoding
In the case of state-independent encoding the sequence is encoded withoutinformation of the past and we have a unique one-to-one mapping of thesource words and their channel representations. A larger rate with given code-word length is possible if codewords are allowed to start (and end) in a set ofpredefined states, called principal states. Franaszek 13,14)has developed a pro-cedure for determining the existence of such a set of principal states. We found
50 Phlllps Journalof Research Vol: 40 No. 1 1985
during experiments with this procedure that the following choice of the code-word subsets is satisfactory. The encoder operates on the basic principle ofthebi-mode alternate coding described by Cattermole 2). All codewords are chosenin such a way that d, = O.Codewords with positive and negative dy are used intwo modes, codewords with zero d, are used without modification in bothmodes. The choice of the polarity of the codeword is chosen by the encoder insuch a way that the RDSS at the end of the new codeword is as close to zero aspossible. We can easily verify that the number of encoder states, i.e. the num-ber of RDSS values at the end of a codeword, is twice the number of code-word subsets with different positive dy values. By properly choosing the initialRDSS value the RDSS at the end of the codewords will assume the values± 1, ± 3, ... , ± (r - 1). In practice this is achieved by initializing the RDSScounter with the disparity 1. Using the recursion relations given by eq. (8) wecalculated the rate of the bi-mode code versus' the number of subsets and thelength of the codeword. In table Il we collected the results using r encoder
Spectrum shaping with binary DC2-constrained channk/ codes------------~~~~
states.TABLE IJ
Code rate R of DCê-balanced codes withcodeword length nand r encoder states
r = 2 4 6 8 10
n= 4 .396 .58 .488 .557 .594 .625 .64112 .568 .616 .648 .672 .68916 .627 .663 .688 .707 .72220 .670 .700 .720 .736 .748
Note the improvement, for fixed codeword length, in rate with respect to state-independent encoding (table I).
Example 2An attractive and simple code found in the table has the following param-
eters: n = 4, r = 4 and R =~. Table III shows the codebook ofthis simple code.The codewords should be chosen from the table in such a way that the
RDSS after transmission of the new codeword is as close to zero as possible.The RDSS assumes the values ± 1 and ± 3; table III shows the correspondingcodeword for the given RDSS value. Fig. 3 shows the power spectral densityfunction of this DC2-balanced code. The spectrum of this code has been cal-culated using the matrix method of Cariolaro et al.15,16). As a referencewe plotted the spectrum of the well-known 'bi-phase' code (zero-disparity,
Phllips Journalof Research .vei. 4P No. 1 1985 51
K. A. Schouhamer lmmink
TABLE IIICodebook of R = ~DC2-balanced code,
the O's correspond to the -l's of the analysis
codeworddy codeword
dysourceRDSS = -3, -1 RDSS = 1,3
00 1001 0 1001 0Ol OllO 0 OllO 010 1010 2 0101 -2II llOO 4 DOll -4
52 Philips Journalof Research Vol.40 No. 1 1985
fract. of channel freq.
Fig. 3. Power spectral density functions of a DC2-balanced code n =4 and R =~ (a) and 'bi-phase' (b).
DC-balanced code with n = 2) having the same rate. Note the improvement inthe low-frequency range of the new code.
The memory requirements of Cariolaro's method become prohibitive for alarge number of encoder states and large codeword lengths, so that we werenot able to compute the spectra of the codes with rate R >0.6.
7. Conclusions
A new class of DC-constrained channel codes, called DCê-balanced codes,have been presented. The power spectral density function H(w) of DC2-
Spectrum shaping with binary DC2-constrained channel codes
balanced codes has besides zero power at zero frequency a zero second-deriva-tive at zero frequency, i.e. H(O) = HI/(O) = O.It was shown that if the redundancy is fixed the cut-off frequency of DC2-
balanced codes is approximately a factor of 2.5 smaller than of classical DC-balanced codes.Below the cut-off frequencies the spectra of DC2-balanced codes decreases
faster with decreasing frequency than those of DC-balanced codes. We noticedwhen comparing the spectra of DC2- and DC-balanced codes that for fixedredundancy a cross-over is found at approximately - 20 dB. We conclude thatDC2-balanced codes are superior with respect to DC-balanced codes if rejec-tion of low-frequency components is needed better than - 20 dB.
REFERENCES1) J. Justesen, IEEE Trans. Inform. Theory IT-2B, 457 (1982).2) K. W. Cattermole, Int. J. Electron. 55, 3 (1983).S) J. M. Griffiths, Electron. Lett. 5, 79 (1969).4) K. A. Schouhamer Immink, Philips J. Res. 40, 1 (1985).5) W. R. Bennett, Bell Syst. Techn. J. 37, 1501 (1958).6) H. Yasuda and H. Inose, Journal IECE Japan 54a, 506 (1971).7) G. F. M. Beenker, Philips Techn. Note T.N. 105/84, 1984.8) J. Riordan, An introduetion to combinatorial analysis, Princeton University Press, 1980.9) T. M. Cover, IEEE Trans. Inform. Theory IT-19, 73 (1973).10) R. F. Lyon, IEEE Trans. Commun. COM-21, 1438 (1973).") B. S. Bosik, Bell Syst. Tech. J. 51, 921 (1972).12) J. N. Frankling and J. R. Pierce, IEEE Trans. Commun. COM-20, 1182 (1972).IS) P. A. Franaszek, Bell Syst. Tech. J. 47, 143 (1968).14) P. A. Franaszek, IBM J. Res. Develop. 14, 376 (1970).15) G. L. Cariolaro and G. P. Tronca, IEEE Trans. Commun. COM-22, 1555 (1974).16) G. L. Cariolaro, G. L. Pierobon and G. P. Tronca, Int. J. Electron. 55;35 (1983).
Phlllps JournnI of Research Vol. 40 No. 1 1985 53