DatasheetsPDF.com

SC140/SC1400 Cores. AN2407 Datasheet

DatasheetsPDF.com

SC140/SC1400 Cores. AN2407 Datasheet






AN2407 Cores. Datasheet pdf. Equivalent




AN2407 Cores. Datasheet pdf. Equivalent





Part

AN2407

Description

Reed Solomon Encoder/Decoder on the StarCore SC140/SC1400 Cores



Feature


www.DataSheet4U.com Freescale Semicondu ctor Application Note AN2407 Rev. 1, 1 2/2004 Reed Solomon Encoder/Decoder on the StarCoreâ„¢ SC140/SC1400 Cores, Wi th Extended Examples By Jasmin Oz and A ssaf Naor This application note describ es the implementation of the ReedSolomo n error-control codes on the StarCoreâ„ ¢ SC140 DSP core. Reed-Solomon codes ar e the preferred error-.
Manufacture

Freescale Semiconductor

Datasheet
Download AN2407 Datasheet


Freescale Semiconductor AN2407

AN2407; control coding procedures in a wide rang e of applications, such as ADSL, digita l cellular phones, storage devices, and deep-space communications. Their popul arity originates from their strong capa bility to correct both random and burst errors. The current trend for improvin g DSP-processing speed is to place mult iple processor units on a single chip w ith an architectur.


Freescale Semiconductor AN2407

e that supports parallel execution. The StarCore SC140 family of DSPs exemplifi es this trend. It has four dataarithmet ic units (DALUs) and two address-genera tion units (AGUs). Code implementation for these processors should capitalize on their capabilities. This document de scribes the implementation of the Reed- Solomon encoder and decoder on the SC14 0 core. The docume.


Freescale Semiconductor AN2407

nt begins with a basic theoretical backg round on the Reed-Solomon algorithm and then discusses the implementation of t he encoder and decoder. Little or no ba ckground on the subject is required. CO NTENTS 1 2 2.1 2.2 2.3 3 4 4.1 4.2 4.3 4.4 4.5 5 6 7 Basics of Forward Error C orrection (FEC) .............2 Theory . ....................................... ...................

Part

AN2407

Description

Reed Solomon Encoder/Decoder on the StarCore SC140/SC1400 Cores



Feature


www.DataSheet4U.com Freescale Semicondu ctor Application Note AN2407 Rev. 1, 1 2/2004 Reed Solomon Encoder/Decoder on the StarCoreâ„¢ SC140/SC1400 Cores, Wi th Extended Examples By Jasmin Oz and A ssaf Naor This application note describ es the implementation of the ReedSolomo n error-control codes on the StarCoreâ„ ¢ SC140 DSP core. Reed-Solomon codes ar e the preferred error-.
Manufacture

Freescale Semiconductor

Datasheet
Download AN2407 Datasheet




 AN2407
www.DataSheet4U.com
Freescale Semiconductor
Application Note
AN2407
Rev. 1, 12/2004
Reed Solomon Encoder/Decoder on
the StarCoreâ„¢ SC140/SC1400 Cores,
With Extended Examples
By Jasmin Oz and Assaf Naor
This application note describes the implementation of the Reed-
Solomon error-control codes on the StarCoreâ„¢ SC140 DSP
core. Reed-Solomon codes are the preferred error-control
coding procedures in a wide range of applications, such as
ADSL, digital cellular phones, storage devices, and deep-space
communications. Their popularity originates from their strong
capability to correct both random and burst errors.
The current trend for improving DSP-processing speed is to
place multiple processor units on a single chip with an
architecture that supports parallel execution. The StarCore
SC140 family of DSPs exemplifies this trend. It has four data-
arithmetic units (DALUs) and two address-generation units
(AGUs). Code implementation for these processors should
capitalize on their capabilities. This document describes the
implementation of the Reed-Solomon encoder and decoder on
the SC140 core. The document begins with a basic theoretical
background on the Reed-Solomon algorithm and then discusses
the implementation of the encoder and decoder. Little or no
background on the subject is required.
CONTENTS
1 Basics of Forward Error Correction (FEC) .............2
2 Theory ..................................................................... 3
2.1 Galois Fields ........................................................... 3
2.2 Reed-Solomon Codes ..............................................6
2.3 Error-Correcting Performance of
Reed-Solomon Codes ..............................................9
3 SC140 Core Overview ..........................................10
4 Implementation on the SC140 Core.......................12
4.1 Polynomial Evaluation Over GF(256) .................. 13
4.2 MAC Instructions Over Galois Fields ..................14
4.3 Look-up Tables .....................................................14
4.4 Lowest Cycle Count Limit for Polynomial
Evaluation .............................................................15
4.5 Cycle Count of the Reed-Solomon Routines ........16
5 Results................................................................... 17
6 Summary ............................................................... 19
7 References .............................................................19
© Freescale Semiconductor, Inc., 2003, 2004. All rights reserved.




 AN2407
Basics of Forward Error Correction (FEC)
1 Basics of Forward Error Correction (FEC)
In an ideal communication scheme, the information received is identical to the source transmission. However, in a
typical real communication scheme, the information passes through a noisy communication channel to the receiver.
The information received at the destination is likely to contain errors due to the channel noise. The acceptable level
of transmitted signal corruption (error level) depends on the application. Voice communication, for example, is
relatively error tolerant. However, the prospect of occasionally losing a digit in communications of financial data
highlights the need for error-control mechanisms.
In 1948, C.E. Shannon proved in his classic paper [1] that a communications channel can be made arbitrarily
reliable by encoding the information so that a fixed fraction of the channel is used for redundant information. In the
years that followed, there was a rapid development in designing FEC schemes. Today, a variety of effective coding
algorithms are widely used. FEC offers a number of benefits:
• Data integrity is critical in the design of most digital communication systems and all storage devices.
Along with the design trend toward increasing bandwidths and data volumes, there is a drive to
decrease the allowed error rates. FEC enables a system to achieve high data reliability.
• FEC yields low error rates and performance gains for systems in which other options, such as
increasing the transmitted power or installing noise-limiting components, are too expensive or
impractical.
• System costs may be reduced by eliminating an expensive or sensitive component and compensating
for the lost performance by a suitable FEC scheme.
For an overview of FEC schemes, consult [2] and [3].
FEC adds carefully designed information to the transmitted data and uses this redundant information to reconstruct
the potentially corrupted data. Figure 1 depicts a typical communications scheme.
Input Source
Source Encoder FEC Encoder Modulation
Noise
Channel
Destination
Source Decoder FEC Decoder Demodulation
Figure 1. FEC Communications System
The two main type of error-control codes used in communications systems are as follows:
• Convolutional codes. Each bit depends on the current bit as well as on a number of previous bits. In
this sense, the convolutional code has a memory. The most common scheme for decoding
convolutional codes is the Viterbi algorithm.
• Block codes. A bitstream is divided into message blocks of fixed length called frames. The valid code-
word block is formed from the message bitstream by adding a proper redundant part. Each code word
is independent of the previous one, so the code is memory-less.
Reed Solomon Encoder/Decoder on the StarCoreâ„¢ SC140/SC1400 Cores, With Extended Examples, Rev. 1
2 Freescale Semiconductor




 AN2407
Theory
The Reed-Solomon codes are block codes. Unlike convolutional codes, Reed-Solomon codes operate on multi-bit
symbols rather than on individual bits. The question of whether to choose convolutional codes or block codes
depends on several variables. In low-speed, low-integrity applications, convolutional codes are the better choice,
and block codes are suitable for high-speed, high-integrity applications. An example of an application suited to
convolutional codes is a digitized voice communication in which a relatively high bit-error rate (about 10–3) is
acceptable. For blocks of machine-oriented data in which the desired bit-error rate ranges from 10–10 to 10–14,
block codes are the natural choice. Some applications use both convolutional and block codes. In such applications,
concatenated codes result in strong performance by operating in two steps. The inner decoder, usually
convolutional, reduces the bit-error rate to a medium-low level, and the outer decoder, usually a block type,
reduces the bit-error rate further, to a very low level.
The errors introduced by the communications channel are classified into two main categories:
• Random errors. The bit-error probabilities are independent of each other. For example, thermal noise
in communication channels typically causes random errors.
• Burst errors. The bit errors occur sequentially in time. Burst errors can be caused by such conditions as
a fading communications channel or mechanical defects in a storage system.
When an FEC system is designed, the statistical nature of the noise environment must be considered, as well as the
acceptable output bit-error rate. When the environment consists predominately of random errors, convolutional
codes provide a low bit-error rate solution. However, when the environment has lower bit-error rates, long-length
block codes often perform even better. In burst-error channels, Reed-Solomon codes are among the best codes
because errors composed of many consecutive corrupted bits translate into only a few erroneous symbols.
2 Theory
The Reed-Solomon code was developed in 1960 by I. Reed and G. Solomon [4]. This code is an error detection and
correction scheme based on the use of Galois field arithmetic. This section provides background information on
binary and extended Galois fields and summarizes the essence of the Reed-Solomon codes. For details on Reed-
Solomon codes, consult the literature, for example, [5] and [6].
2.1 Galois Fields
A number field has the following properties:
• Both an addition and a multiplication operation that satisfy the commutative, associative, and
distributive laws.
• Closure, so that adding or multiplying elements always yields field elements as results.
• Both zero and unity elements. The zero element leaves an element unchanged under addition. The
unity element leaves an element unchanged under multiplication.
• An additive/multiplicative inverse for each field element. The sole exception is the zero element,
which has no multiplicative inverse.
Division is defined as the inverse of multiplication such that if a × b = c, it follows that c divided by a yields b. An
example of a number field is the set of real numbers together with the addition and multiplication operations.
Galois fields differ from real number fields in that they have only a finite number of elements. Otherwise, they
share all the properties common to number fields.
Reed Solomon Encoder/Decoder on the StarCoreâ„¢ SC140/SC1400 Cores, With Extended Examples, Rev. 1
Freescale Semiconductor
3



Recommended third-party AN2407 Datasheet






@ 2014 :: Datasheetspdf.com :: Semiconductors datasheet search & download site (Privacy Policy & Contact)