Content uploaded by Kees Schouhamer Immink

Author content

All content in this area was uploaded by Kees Schouhamer Immink on Nov 07, 2019

Content may be subject to copyright.

2024 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 48, NO. 12, DECEMBER 2000

An Enumerative Coding Technique for DC-Free

Runlength-Limited Sequences

Volker Braun, Member, IEEE, and Kees A. Schouhamer Immink, Fellow, IEEE

Abstract—We present an enumerative technique for encoding

and decoding dc-free runlength-limited sequences. This technique

enables the encoding and decoding of sequences approaching the

maxentropic performance bounds very closely in terms of code

rate and low-frequency suppression capability. Use of finite-pre-

cision floating-point notation to express the weight coefficients

results in channel encoders and decoders of moderate complexity.

For channel constraints of practical interest, the hardware re-

quired for implementing such a quasi-maxentropic coding scheme

consists mainly of a ROM of at most 5 kB.

Index Terms—Enumeration, modulation coding, recording.

I. INTRODUCTION

DC-FREE runlength-limited (DCRLL) modulation codes

have found application in magnetic and optical recording

systems, for example, in the compact disk (CD) player [1].

DCRLL codes are used to transform the digital user bit stream

into a sequence of binary channel symbols that is suitable for

the specific recording requirements. The runlength is known

as the number of consecutive identical symbols occurring in a

sequence. Runlength-limited (RLL) sequences are character-

ized by two parameters, and ,

denoting the minimum and maximum runlengths occurring

in the sequence. DC-free sequences have the properties that

their power spectral density (PSD) vanishes at the zero fre-

quency and that there is a region of frequencies close to the

zero frequency in which the PSD is low. The restrictions

imposed on the DCRLL sequences are usually called the

“channel constraints.” In optical disk systems, suppression of

the low-frequency content of the RLL modulation sequence

is employed primarily to circumvent or reduce interaction

between the data written on the disc and the servo systems that

follow the track [1]. Efficient suppression of the low-frequency

components is essential, as error correction is totally useless

if track or clock loss occurs [2]. Low-frequency suppression

should be achieved at minimum cost in code rate, i.e., the ratio

between user bit rate and channel bit rate. The maximum code

rate, called the capacity, is a function of the channel constraints

Paper approved by E. Ayanoglu, the Editor for Communication Theory and

Coding Application of the IEEE Communications Society. Manuscript received

May 1, 1998; revised October 18, 1999. This paper was presented in part at the

1997 Symposium on Information Theory and Its Applications (SITA’97), Mat-

suyama, Japan, December 2–5, 1997, and in part at the 1998 IEEE International

Symposium on Information Theory, Cambridge, MA, August 16–21, 1998.

V. Braun was with Hitachi Central Research Laboratory, Tokyo 185-8601,

Japan. He is now with Alcatel Corporate Research Center, 70499 Stuttgart, Ger-

many.

K. A. S. Immink is with the Digital Communications Group, Institute for

Experimental Mathematics, University of Essen, 45326 Essen, Germany.

Publisher Item Identifier S 0090-6778(00)10914-6.

in force. The quotient of rate and capacity is usually called the

rate efficiency. Implemented DCRLL codes, for example, the

EFM code [1] applied in the CD system or the codes designed

for magnetic disk or tape drive applications described in [3]

and [4], often achieve rate efficiencies in the order of only

90%. The EFMPlus code [2] applied in the digital versatile

disk (DVD) system has a rate efficiency of about 92.5%. In

other words, many of the conventionalDCRLL codes currently

implemented can still be improved significantly in terms of

code rate.

Enumerative coding techniques [5] make it possible to trans-

late source words into codewords and vice versa by invoking

an algorithmic procedure rather than performing the translation

with a look-up table [6]. Code rates very close to capacity can

be achieved by using enumerative coding and long codewords

[6]. Severe error propagation resulting from the use of long

codewords can be avoided by reversing the conventional hier-

archy of outer error correcting code and inner modulation code

[6]. Enumerative decoding is done by forming the weighted

sum of the symbols of the codeword received [7]. The integer-

valued weights used in forming this sum are a function of the

channel constraints in force. Encoding is done with the aid of a

method that is similar to decimal-to-binary conversion in which

the weights are used instead of the usual powers of 2. The hard-

ware which implements an enumerative coding scheme mainly

consists of a ROM to store the weight coefficients, a binary

adder, and subtracter. In order to obtain a feasible ROM size,

the weight coefficients can, without relevant losses in code rate,

be expressed in finite-precision floating-point notation [6].

The outline of the next sections is as follows. In Section II,

we will introduce an efficient runlength graph representation

of the DCRLL constraints. To enable the enumeration of the

DCRLL sequences, knowledge of the number of distinct valid

sequences is required. In Section III, we will derive these num-

bers from the underlying runlength graph. An enumerative tech-

nique for encoding and decoding DCRLL sequences will be in-

troduced in Section IV. In Section V, we will discuss the effects

of using finite-precision floating-point arithmetic on achievable

code rates and on the size of the required weight set. In addition,

the low-frequency suppression capabilities of selected enumer-

ative DCRLL codes will be evaluated in computer simulations.

II. PRELIMINARIES

We will assume that binary user information with a bit rate of

is translated into a coded channel sequence having

the channel bit rate , where denotes the rate

of the code. Let ,

0090–6778/00$10.00 © 2000 IEEE

BRAUN AND IMMINK: AN ENUMERATIVE CODING TECHNIQUE FOR DCRLL SEQUENCES 2025

denote the coded channel sequence, representing the positive or

negativemagnetizationoftherecordingmedium,or pits or lands

in the case of optical recording. The running digital sum (RDS)

at time of the sequence is defined as

(1)

A sequence is dc-free if, and only if, the RDS assumes a finite

number of values [8]. This number is called the digital sum vari-

ation(DSV), denoted by . Wewillstartbyconfiningourselves

to odd values of DSV, so . DCRLL constraints

will be characterized by the three integer parameters .

As a finite RDS implies a constraint on the maximum runlength,

these parameters satisfy .

RLL sequences are often encoded in two consecutive steps.

In the first step, the binary user information bits are translated

into a sequence , having at least and at

most “zeros” (i.e., ) between consecutive “ones” (i.e.,

). The sequence is often called a sequence

or a runlength-limited sequence in nonreturn-to-zero-inverse

(NRZI) format. Prior to the recording, the sequence

is converted into the bipolar RLL channel sequence such

that the logical “ones” in the sequence indicate the posi-

tions of a 1 1or 1 1 transition of the corresponding

RLL channel sequence. This conversion step is commonly

called precoding. The sequence

(2)

would be converted, e.g., into the RLL channel sequence

(3)

Another representation of the sequence can be given as

a sequence of runlengths , where

. We define a “run” in the sequence

as a logical “one” followed by a sequence of “zeros.” The

runlength sequence corresponding to the sequence in (2)

would be . Kerpez et al. [9] introduced

another sequence , defined by , where

. The sequence corresponding to the se-

quence (2) would be . Let denote the

RDS of the channel sequence after the th run in the corre-

sponding sequence . The sequence corresponding to

theRLL channel sequence (3) would be .

Between and , we find the relation , and

hence .As , we find

for all

(4)

i.e., assumes a finite number of values

(5)

A compact description of the constraints by means

of a “runlength graph” has been presented by Kerpez et al. [9].

The states of this graph are associated with values and the

edges with runlengths. As an example, Fig. 1 depicts the run-

length graph representing the constraint. Although not

formally defined, we will denote the runlength graph underlying

the DCRLL constraints by . The states of will be denoted

Fig. 1. Runlength graph representing the constraint. The states are

denoted by their values, and the edges are labeled by their lengths [9].

by their values, where in the sequel

. Note that the states of are related with RDS

values. The sequences (2) and (3), for example, may emanate

from state 0 and terminate in state 0 of the graph in Fig. 1.

Associated with the runlength graph is an ad-

jacency matrix denoted by ( -transform notation). The

adjacency matrix associated with the runlength graph turns

out to have a Hankel structure, i.e., it is constant on the antidi-

agonals [9]. As an example, we present the adjacency matrix

associated with the runlength graph in Fig. 1, given by

Note that is symmetric, and that the largest exponent,

denoted by , of the nonzero entries of , occurring

in the th row (or column) which corresponds to the state of

, is given by

III. NUMBER OF DCRLL SEQUENCES

The number of distinct constrained sequences can

be described using recursive relations obtained from the run-

length graph . Let denote the number of dis-

tinct sequences of length emanating from state and ter-

minating in state of the graph . The number of sequences

can be determined using the following recursive

relations. Let

For and for all let

(6)

where denotes the set of states of . Note that

as is symmetric (we call

symmetric if the adjacency matrix is symmetric), and

2026 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 48, NO. 12, DECEMBER 2000

if is odd. This property states

that if and are both even or both odd, then all sequences

emanating from state and terminating in state of have

an even length .If is even and odd, or vice versa, then

all sequences emanating from state and terminating in state

of have an odd length . Knowledge of the numbers

enables the application of enumerative coding

techniques.

IV. ENUMERATIVE ENCODING AND DECODING

A. Decoding

A general enumerative technique for encoding and decoding

binary constrained sequences has been presented by Cover [5].

Let denote the set of binary sequences of length and

let be any (constrained) subset of . We establish a 1-1

mapping from set onto the set of integers ,

where is the cardinality of (i.e., the number of distinct

sequences in ). Set can be ordered lexicographically as fol-

lows: if and ,

then is called less than , in short, , if there exists an

, such that and .

For example, . The position of in the lexico-

graphical ordering of is defined to be the rank of , denoted

by , i.e., is the number of all in with . Let

be the number of elements in for which

the first coordinates are . The rank of

can be obtained by using

(7)

An alternative of Cover’s enumeration scheme can be given by

counting the number of elements in that have a lexicographic

index higher than , the inverse rank of [7]. The inverse rank

of can be obtained by using

(8)

where , the complement of . The algorithms

(7) and (8) implement the decoding operation, i.e., given the

constrained sequence , find the corresponding lexicographic

indexinset .Theinverserankhasthevirtuethatthe same set of

weight coefficients can be used for encoding and decoding [7].

We will now consider the inverse rank for enumerative decoding

of DCRLL sequences.

Let denote a sequence of

length in NRZI notation emanating from state and ter-

minating in state of the graph . Note that . Let

denote the number of trailing “zeros” of the subvector

, i.e.,

Let be the length of the trailing run of the

subvector . By observing , we can uniquely

determine the sequence of states of graph corresponding to

. To this end, we define the sequence of states through

graph associated with the sequence as

if

if and

if and

Proposition: The inverse rank of a constrained se-

quence of length emanating from state and terminating

in state of the runlength graph is

(9)

where

if and and odd

otherwise

Proof: Let .We

can observe that for a given can take

one of two different values depending on .If then

,because in this case the numberof“zeros”between

thelast two “ones” of is less than , violating the constraint.

Therefore, no constrained sequence can begin with

,so .If , then does not violate

the constraint. In this case, the sequence leads graph to

the state , so that equals the number of

sequences of length (including the symbol )

emanating from the state of and terminating

in , i.e., .

Using the symmetry of , we obtain

.If

is even, then . In this

case, we do not perform an addition in (9).

B. Encoding

The encoding operation, i.e., given the inverse lexicographic

index , , find the corresponding , is described by

the following algorithm:

;

for to do

if odd and

then ;

else ;

end if

ifthen ;

else ;

end if ;

end for

C. Multiple State Coding

The ranking procedure can be generalized for a set of

sequences of length that emanate from a common

state, denoted by , and terminate in a state which is a

member of a predefined set of states. Consider terminating

BRAUN AND IMMINK: AN ENUMERATIVE CODING TECHNIQUE FOR DCRLL SEQUENCES 2027

states given by . Ranking of this set

of sequences can be accomplished by

(10)

Equation (10) holds because the sets of sequences emanating

from a common state and terminating in ,

are disjoint.

The enumerative technique described above enables the

design of channel encoders and decoders of moderate com-

plexity. Storage capacity is required for approximately

nonzero weight coefficients. The storage capacity required for

implementing the presented enumerative coding scheme for

combined dc-free runlength-limited sequences is about the

same as that required for implementing the enumerative coding

scheme for pure dc-free sequences [1].

D. Even Values of DSV

So far we have confined ourselves to DCRLL constraints

having odd values of DSV. For even, a runlength graph can be

derived from a Hankel-type adjacency matrix having

states, and enumerative encoding and decoding algorithms are

similar as described above. However, there may exist paths of

even length and paths of odd length emanating from a state

and terminating in a state of the corresponding runlength

graph. Thus, storage capacity is required for approximately

nonzero weight coefficients.

V. IMPLEMENTATION ASPECTS

In the following, we will consider coding schemes which

translate user information bits into codewords of an even

length . Using the technique described in [10], the code

construction can be extended to odd codeword lengths. The

ratio is called the code rate, and denotes

the capacity. We will distinguish two separate coding schemes.

In the first coding scheme, denoted by , we assume that

all codewords emanate from a state and terminate in the

same state of graph . We will call the state the

principal state of the coding scheme . In the second coding

scheme, denoted by , we assume that either of the codewords

emanates from a state which is a member of the set of states

and terminates in a state which is a

member of the same set . We will call the set of principal

states of the coding scheme . In both cases, transmission

errors that may occur in the DCRLL channel sequence must be

corrected before the decoding in order to prevent severe error

propagation. In the case of coding scheme , transmission

errors can cause catastrophic error propagation, which is why

the encoder must regularly be forced into a predefined principal

state.

A. Principal States and Feasible Code Rates

We will start by determining the principal state of coding

scheme and the set of principal states of coding scheme

that result in the maximum number of codewords. We

will also investigate at what codeword lengths the code rate

approaches the capacity of the DCRLL constraints to within a

small value, say 1%, and we will determine feasible code rates

for constraints of practical interest.

Let denote the number of distinct sequences of length

emanating from the state of . In a coding scheme that

enables bit encoding, must be satisfied for all

principal states of this scheme. For large can be

approximated by

where is the largest real root of the characteristic polyno-

mial , denotes the identity matrix,

and is a positive eigenvector of the matrix

associated with eigenvalue 1, i.e., [1].

The number of distinct DCRLL sequences of length ema-

nating from a state and terminating in a state of can

hence be approximated by

(11)

(if even, else 0). The accuracy of this approxima-

tion has been computed for constraints of practical in-

terest and codeword lengths , where the magni-

tude of vector has been evaluated numerically from the actual

number of sequences of a certain length . In all the

computed examples, approximation (11) was accurate to within

0.15%. Assuming equality in (11), it follows that the principal

state of coding scheme that results in maximum cardi-

nality is associated with the maximum entry of vector

. We define and

. In coding scheme , we intend to determine

the set of principal states so that the minimum number

of valid codewords emanating from a state is max-

imum among all possible sets . Assuming equality in (11), it

follows that this set is associated with:

The optimum set can be determined by starting with

odd , and by iteratively removing the state asso-

ciated with from this set. The procedure is then repeated

starting with even . Finally, the optimum

set is selected from the best subsets of and . The

minimum number of valid codewords of length ema-

nating from a state that is a member of the set of principal states

can thus be approximated by . The rate

of an implemented code is , and the ca-

pacity is given by . The difference between code rate

and capacity is

Examples of optimum principal state configurations are shown

in Table I for coding scheme and in Table II for coding

scheme . Also presented are the corresponding values

and the codeword lengths .

The codeword length ensures that . Table I

also shows the capacities of the corresponding con-

straints. We see that for many DCRLL constraints of practical

2028 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 48, NO. 12, DECEMBER 2000

TABLE I

CODING SCHEME:CAPACITY ,OPTIMUM PRINCIPAL STATE ,

CODEWORD LENGTH ,FEASIBLE CODE RATES FOR ,

RATE EFFICIENCIES ,NUMBER OF BITS ,AND APPROXIMATE

STORAGE CAPACITY IN kB FOR SEVERAL CONSTRAINTS

OF PRACTICAL INTEREST

TABLE II

CODING SCHEME:OPTIMUM PRINCIPAL STATE SET ,

CODEWORD LENGTH ,FEASIBLE CODE RATES FOR ,

RATE EFFICIENCIES ,NUMBER OF BITS ,AND APPROXIMATE

STORAGE CAPACITY IN kB FOR SEVERAL CONSTRAINTS

OF PRACTICAL INTEREST. : DENOTES THE PRINCIPAL STATE

SET

interest a codeword length in the order of 500 bits is sufficient

for achieving rate losses versus capacity of less than 1%.

Also shown in Tables I and II are feasible code rates and

rate efficiencies, defined by , where we have as-

sumed the optimum principal state configurations and the en-

coding of 256 bits. We see that 256 bit encoding using coding

scheme results in rate efficiencies in the order of 98%. The

rate efficiency can be further increased by using larger code-

word lengths or, for fixed , by applying coding scheme .

We add that the same code rates as in Tables I and II can often

be achieved by using principal states other than the optimum

configurations, for example, by using in coding scheme

.

B. Weight Truncation

In order to enable the implementation of the presented

DCRLL coding scheme, we will in the following express the

weights in truncated radix-2 representation. Let denote one

of the integer weights . An integer can be

uniquely represented by a binary -tuple ,

where . Let be the position

of the leading “one” element or “most significant bit” of .

We define the -bit truncated representation of , denoted by

,by

(12)

In words, is obtained from by leaving the most sig-

nificant bits unchanged and setting all the other trailing bits to 0.

The -bit truncated weight can be expressed in two-part

radix-2 representation , where the in-

tegers and are called the mantissa and exponent of ,

respectively. Apparently, bits are required to express the man-

tissa . The number of bits required to express the exponent is

in the order of . However, the exponents and of two

weight coefficients of similar magnitude

can usually be represented much more efficiently, for example,

by using the difference . The capacity of the memory

unit for the storage of the exponents of the weight coefficients

is hence negligible compared with the storage capacity required

for the mantissa. Therefore, the exponents of the weight coeffi-

cients will not be considered any further here.

When use is made of truncated weights, denoted by , recur-

sion (6) results in

In the enumerative encoding and decoding algorithms, the trun-

cated weights are used instead of the full-preci-

sion weights . The effect on the set of codewords

will be that the highest ranking

words of length will be recursively discarded from the set of

all the lexicographically ordered DCRLL sequences.

Speaking in terms of runlengths, the effect of using trun-

cated weights will be that short runs will occur more frequently

than in the case of untruncated weights. As an illustrative ex-

ample, Fig. 2 displays the accumulated runlength distributions

of two constrained enumerative codes having a rate

of and a rate efficiency of 98.1%, using either or

bits to express the mantissa of the weights. Also shown

in Fig. 2 is the accumulated runlength distribution of an ideal,

“maxentropic” constrainedsequence,i.e.,in this case

the code rate equals the capacity.

We will briefly consider the effect of using a truncated weight

representation on the achievable code rates. We define as

the minimum number of bits required to express the mantissa of

the truncated weights, so that there is no rate loss as in the full-

precision scheme. Values of are collected in Tables I and

II for optimum principal state configurations. We see that for

constraints and codeword lengths of practical interest,

values of in the order of 8–10 are usually sufficient to avoid

rate losses as in the full-precision scheme.

As shown in [6], the mantissa of the truncated weights

, will for increasing become (and

remain) periodic. That is, for , there are integers and

such that

We will call the period of the mantissa of and

the preamble. The period of the weight coefficients is a

BRAUN AND IMMINK: AN ENUMERATIVE CODING TECHNIQUE FOR DCRLL SEQUENCES 2029

Fig. 2. Accumulated runlength distributions of two constrained

enumerative codes having a rate of (obtained in computer simulations;

solid, dashed) and the accumulated runlength distribution of the corresponding

maxentropic sequence (obtained with the method developed by Kerpez et al.

[9], denoted by the dotted line). The step functions indicate the corresponding

average runlengths.

function of the constraints and the number of bits

used to express the mantissa of the weights. The preamble

also depends on the set of principal states used for coding. By

exploiting the periodicity of the weight coefficients, a signifi-

cant saving in storage hardware can often be realized [6]. The

ROM size required for the storage of the mantissa of the weight

coefficients is approximately given by

if odd

if even (13)

where . The factor in (13) is an

immediate consequence of the structure of the runlength graph

. We can see in Fig. 1 that ,

i.e., there is no need to store .InTa-

bles I and II, useful upper bounds of the ROM size are pre-

sented in kilobyte (kB) units, where we assumed

and . We can conclude that for many con-

straints of practical interest the presented enumerative coding

technique can be implemented by using a ROM of at most 5 kB

for storing the mantissa of the weight coefficients. In many

cases, the required ROM size is significantly lower than 5 kB.

C. Low-Frequency Suppression

Suppression of the low-frequency components is an essen-

tial performance criterion of DCRLL codes [1]. The PSD func-

tions at the low-frequency end are depicted in Fig. 3 for several

constrained coded sequences. Both axes of the power

spectra in Fig. 3 have been normalized for a fixed-user bit rate,

i.e., we consider . The dotted curve

in Fig. 3 represents the PSD of a maxentropic con-

strained sequence. Maxentropic DCRLL sequences provide an

upper bound in low-frequency suppression capability, given a

certain constraintand code rate [11]. The solidanddashed

curves in Fig. 3 represent the PSD functions of con-

strained sequences generated with the aid of the presented enu-

merative coding technique. These codes are based on construc-

tion using the principal state and have a rate of

and a rate efficiency of 98.1%. The upper curve in

Fig. 3 shows the PSD function of the coded sequence when the

weights are expressed in radix-2 representation using

bits to express the mantissa. Apparently the use of re-

sults in a loss of about 5 dB in low-frequency suppression rel-

ative to the maxentropic bound. When values of in the order

Fig. 3. Power spectra of several constrained enumerative codes

having a rate of (obtained in computer simulations; solid, dashed) and

power spectrum of the corresponding maxentropic sequence (evaluated using

the method developed by Kerpez et al. [9], denoted by the dotted line).

of 10–12 or untruncated weights are used, the PSD function of

the coded sequence approximates the maxentropic performance

bound very closely, as can be seen in the lower solid and dashed

curves in Fig. 3. Similar behavior of the PSD function at the

low-frequency end has been observed for constraints

other than and for sets of principal states other than

. We conclude that values of bits to ex-

press the mantissa of the truncated weights are suitable for ob-

taining a low-frequency suppression performance very close to

the maxentropic bound.

We suppose that the loss in low-frequency suppression versus

the maxentropic bound represented by the upper curve in Fig. 3

is a result of the runlength distribution, which, as shown in

Fig. 2, differs remarkably from the maxentropic runlength

distribution. Given a certain constraint and value of ,

the loss in low-frequency suppression versus the maxentropic

bound tends to become more pronounced with a decreasing

DSV or with an increasing codeword length, as we observed in

computer simulations. For , we never observed relevant

losses in low-frequency suppression versus the maxentropic

bound. The variance of the RDS, in short sum variance,is

often used to characterize the low-frequency characteristic of

dc-free sequences [1]. We would like to add that the

constrained sequence associated with the upper curve in Fig. 3

exhibits a sum variance that is only about 2.5% larger than for

a maxentropic constrained sequence, whereas from

the low-frequency characteristic and the theory of maxentropic

DCRLL sequences [11], we would roughly expect additional

60%.

D. Performances of Implemented Codes

In the following, we will briefly assess the performances of

several selected DCRLL codes with respect to their low-fre-

quency suppression capabilities. In order to obtain a fair

comparison of different DCRLL codes, both axes of the power

spectra of these codes have been normalized for a fixed-user

bit rate. As a performance criterion, we determine the PSD

2030 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 48, NO. 12, DECEMBER 2000

Fig. 4. Comparison of the performance of several constrained

modulation codes.

of the coded sequence at a small fraction of the user bit rate,

for example, at . We will compare the low-frequency

suppression capability of the coded sequence with the corre-

sponding maxentropic performance bound.

Fig. 4 displays the PSD versus a parameter called

the extra redundancy for several dc-free constrained

coded sequences. The extra redundancy has been defined in [11]

as the difference between the capacity of the constraint,

denoted by , and the rate of an implemented dc-free

code satisfying this runlength constraint. The solid curve in

Fig. 4 represents the maxentropic performance bound and the

crosses indicate the low-frequency suppression performances

of implemented codes. Four conventional codes are considered:

the EFM code [1] applied in the CD player; EFMPlus [2]

applied in the DVD system; and two other EFM alternatives

described in [2]. These four codes all have finite values of DSV

and satisfy the runlength constraint. The power spectra

of these codes were evaluated in computer simulations [2]. A

strategy for improving the EFMPlus low-frequency suppression

performance by about 3 dB is presented in [2].

Fig. 4 also shows the low-frequency suppression per-

formances for five DCRLL codes based on the presented

enumerative coding technique. All of these five enumerative

codes, denoted by EMC1-EMC5, have and they are

based on construction . The design parameters of these

codes are listed in Table III. EMC1 and EMC2 have code rates

similar to those of EFMPlus. In low-frequency suppression

performance, they outperform EFMPlus by about 15 dB. EMC3

and EMC4 have a low-frequency suppression performance

similar to that of EFM. They achieve an 11%–12% increase in

recording density relative to EFM, but require a rather large

ROM for storing the mantissa of the weights. As an alterna-

tive, EMC5 achieves a gain of 5.35% in code rate relative to

EFMPlus and it has a comparable low-frequency suppression

capability.

By relaxing the constraint from to ,we

can achieve a 6.67% gain in code rate relative to EFMPlus by

using EMC6. EMC6 is based on construction and its design

parameters are given in Table III. EMC6 achieves

TABLE III

DESIGN PARAMETERS OF SEVERAL ENUMERATIVE CONSTRAINED

MODULATION CODES

dB. The size of the required ROM can be decreased from

about 5 kB to about 2 kB by using instead of .

The resulting code, denoted by EMC7, achieves

dB.

VI. CONCLUSIONS

We have presented an enumerative technique for encoding

and decoding DCRLL sequences. The size of the full-precision

weight set required for implementing the presented coding

scheme is about the same as that required for implementing the

enumerative coding scheme for pure dc-free sequences [1]. As

the greater part of the electronics that implements the enumer-

ative coding technique is taken up by the storage of the weight

coefficients, this technique enables the design of channel

encoders and decoders of moderate complexity. To enable

the implementation of the proposed coding technique, we ex-

pressed the weight coefficients in finite-precision floating-point

notation. We have shown that the presented enumerative coding

technique can be used to encode and decode DCRLL sequences

approaching the maxentropic performance bounds very closely

in terms of code rate and low-frequency suppression capability.

For channel constraints of practical interest, the hardware

required for implementing such a quasi-maxentropic coding

scheme consists mainly of a ROM of at most 5 kB. In many

cases of practical relevance, the size of the required ROM is

significantly lower.

ACKNOWLEDGMENT

The authors would like to thank A. J. H. Vinck, H. Morita,

and M. Umemoto for useful discussions and comments. The

authors would also like to thank the two anonymous reviewers

for providing valuable comments on an earlier version of the

manuscript.

REFERENCES

[1] K. A. S. Immink, Codes for Mass Data Storage Systems, Eindhoven,

The Netherlands: Shannon Foundation, 1999.

[2] , “EFMPlus: The coding format of the multimedia compact disc,”

IEEE Trans. Consumer Electron., vol. 41, pp. 491–497, Aug. 1995.

[3] T. Uehara and Y. Oba, “A new 8–14 channel coding for D-3 format

VTR,” IEEE Trans. Broadcast., vol. 39, pp. 265–271, June 1993.

[4] J. Li and J. Moon, “DC-free run-length-limited codes for magnetic

recording,” IEEE Trans. Magn., vol. 33, pp. 868–874, Jan. 1997.

[5] T. M. Cover, “Enumerative source coding,” IEEE Trans. Inform. Theory,

vol. IT-19, pp. 73–77, Jan. 1973.

[6] K. A. S. Immink, “A practical method for approaching the channel ca-

pacity of constrained channels,” IEEE Trans. Inform. Theory, vol. 43,

pp. 1389–1399, Sept. 1997.

BRAUN AND IMMINK: AN ENUMERATIVE CODING TECHNIQUE FOR DCRLL SEQUENCES 2031

[7] L. Pátrovics and K. A. S. Immink, “Encoding of -sequences using

one weight set,” IEEE Trans. Inform. Theory, vol. 42, pp. 1553–1554,

Sept. 1996.

[8] G. L. Pierobon, “Codes for zero spectral density at zero frequency,”

IEEE Trans. Inform. Theory, vol. IT-30, pp. 435–439, Mar. 1984.

[9] K. J. Kerpez, A. Gallopoulos, and C. Heegard, “Maximum entropy

charge-constrained run-length codes,” IEEE J. Select. Areas Commun.,

vol. 10, pp. 242–252, Jan. 1992.

[10] K. A. S. Immink, “DC-free codes of rate odd,” in Proc.

1998 IEEE Int. Symp. Information Theory (ISIT’98), Cambridge, MA,

Aug. 16–21, 1998, p. 111.

[11] V. Braun and A. J. E. M. Janssen, “On the low-frequency suppression

performance of dc-free runlength-limited modulation codes,” IEEE

Trans. Consumer Electron., vol. 42, pp. 939–945, Nov. 1996.

Volker Braun (S’93–M’97) was born in Saarland,

Germany, in 1967. He received the Dipl.-Ing. degree

from the University of Kaiserslautern, Kaiser-

slautern, Germany, in 1992, and the Dr.-Ing. degree

from the University of Essen, Essen, Germany, in

1997.

From 1992 to 1997, he was a member of the

Digital Communications Group at the Institute for

Experimental Mathematics, University of Essen.

During that period, he was a regular Visiting Sci-

entist at Philips Research Laboratories, Eindhoven,

The Netherlands, and he was contributing to the ACTS Project SMASH of

the European Community. From March 1997 to March 1998, he was with the

Hitachi Central Research Laboratories, Tokyo, Japan, as a Visiting Scientist.

His research activities from 1992 to 1998 focused on modulation, coding, and

signal processing related to magnetic and optical recording systems. In 1998,

he joined Alcatel SEL AG, Stuttgart, Germany, where he started working in

the Switching Division Hardware Architecture Design Group on optimizing

implementation aspects of Alcatel’s MPSR broad-band switch. Since June

1999, he has been with the Radio Communications Department at Alcatel Cor-

porate Research Center, Stuttgart, Germany, where he is involved in research

and development activities regarding channel coding and multiple-antenna

techniques for applications in second- and third-generation mobile radio

communications systems.

Kees A. Schouhamer Immink (SM’86–F’90)

received the M.S. and Ph.D. degrees from the

Eindhoven University of Technology, Eindhoven,

The Netherlands.

He is Director of Turing Machines, Inc. Since

1995, he has been an Adjunct Professor at the

Institute for Experimental Mathematics, Essen Uni-

versity, Essen, Germany. In addition, he is affiliated

with the National University of Singapore. He has

contributed to the design and development of a wide

variety of consumer-type audio and video recorders

such as the laser video disc, compact disc, compact disc video, DAT, DV, DCC,

and DVD. He holds 42 issued and pending U.S. patents in variousfields.

Dr. Immink is an elected member of the Royal Netherlands Academy of Arts

and Sciences (KNAW) and holds fellowships of the IEEE, AES, SMPTE, and

IEE. He is Vice President of the Audio Engineering Society (AES) and a Gov-

ernor of the IEEE Consumer Electronics Society. He is a member of the IEEE

Fellows Committee. For his contributions to the digital audio and video revolu-

tion, he received wide recognition, among others the 1999 IEEE Edison Medal,

AES Gold Medal, IEEE Masaru Ibuka Consumer Electronics Award, and the

Golden Jubilee Award for Technological Innovation awarded by the IEEE In-

formation Theory Society in 1998.