Error Correction Code Design (Electrical and Electronic engineering Design Series) (Volume 6)
暫譯: 錯誤更正碼設計(電氣與電子工程設計系列)(第六卷)

Nicholas L Pappas Ph.D.

  • 出版商: CreateSpace Independ
  • 出版日期: 2015-05-27
  • 售價: $950
  • 貴賓價: 9.5$903
  • 語言: 英文
  • 頁數: 164
  • 裝訂: Paperback
  • ISBN: 1511813865
  • ISBN-13: 9781511813860
  • 無法訂購

商品描述

Error Correction Code Design This text is different from all other ECC texts, because the focus is on how to actually design G and H matrices that implement Hamming, Cyclic, BCH, & Reed Solomon codes. The focus includes showing how to design serial & parallel circuits implementing the G encoders and H decoders that including timing. We have not found this design information anywhere. The text is readable, because the language of abstract algebra has been delegated to the background. On the other hand we only explain Turbo code basics, because Turbo takes code design to another level where explaining the complexity of Turbo G and H requires another complete text. There are two basically different types of codes. One type is a tree code, which processes a continuous sequence of information digits continuously without breaking it up into blocks of k digits. The other type is a block code, which processes a continuous sequence of information digits in blocks of k digits. This text is about binary block codes. Error bits Consider a binary channel which can transmit bit values 0 and 1. The presence of noise may cause a transmitted 0 to be received as 1, and a transmitted 1 to be received as 0. When this happens to a bit the bit is referred to as an error bit. Code design is about detecting and correcting error bits. Code design is a very complex subject using very complex mathematics. However the mathematics is applied in a straightforward and clear way so that the complexity does not interfere with learning the design processes. A code design produces encoding G and decoding H matrices, and the electronic circuits implementing the design. The design process producing a code’s encoding G and decoding H matrices is presented in a straightforward way that does not involve the language of abstract algebra. Furthermore, a straightforward simplified method generates the G and H matrices. The concepts of distance and weight provide the necessary and sufficient conditions for a binary code to have t error correcting capability. R. W. Hamming’s ingenious invention of codes informs us why parity is required, and how a Hamming code is encoded and decoded by G and H matrices. Hamming shows us what the output of the code design task ought to be. An overview describes the role of algebraic coding theory that implements the required mathematical structure. Galois finite fields provide the algebraic structure for block code design. The language of abstract algebra is avoided in the presentation of Galois fields without dumbing down the presentation. Binary cyclic codes are an important subset of block codes. Cyclic codes have significant algebraic structure that facilitates creating the encoding G and decoding H matrices. BCH codes can correct more than one error thereby overcoming the one-error Hamming limitation. Related Reed-Solomon codes are used to perform a specific type of correction called burst correction. A decoder tells you there are errors, but not how many. Equations process the decoder output so that the bits in error are discovered. The traditional software solutions to the very complex BCH decoder equations are avoided, because straightforward hardware solutions are available. Encoder and decoder circuit design uses shift registers, LFSR registers, ROM memory, clocks, and glue logic. There are serial and parallel formats. Bits in a word are transmitted sequentially (serially) in a communication channel. The bits in a word are transmitted simultaneously (in parallel) in a system with multiple channels such as a memory. Turbo codes use a concatenated coding scheme, which combines two block codes and an interleaver to produce codes with superior performance. We only begin to explain turbo codes, because explaining their complexity in full requires a separate text. Code designers will find the Galois field information listed here a great convenience when they sit down to design codes.

商品描述(中文翻譯)

錯誤更正碼設計

本書與所有其他 ECC 書籍不同,因為重點在於如何實際設計 G 和 H 矩陣,以實現 Hamming、Cyclic、BCH 和 Reed Solomon 碼。重點包括展示如何設計實現 G 編碼器和 H 解碼器的串行和並行電路,並包括時序。我們在其他地方未找到這些設計資訊。

本書可讀性強,因為抽象代數的語言已被置於背景中。另一方面,我們僅解釋 Turbo 碼的基本概念,因為 Turbo 將碼的設計提升到另一個層次,解釋 Turbo G 和 H 的複雜性需要另一本完整的書籍。

基本上有兩種不同類型的碼。一種是樹碼,它連續處理信息位元的連續序列,而不將其分解為 k 位元的區塊。另一種是區塊碼,它以 k 位元的區塊處理信息位元的連續序列。本書主要討論二進位區塊碼。

錯誤位元

考慮一個可以傳輸位元值 0 和 1 的二進位通道。噪聲的存在可能導致傳輸的 0 被接收為 1,傳輸的 1 被接收為 0。當位元發生這種情況時,該位元被稱為錯誤位元。碼的設計是關於檢測和更正錯誤位元。

碼的設計是一個非常複雜的主題,使用非常複雜的數學。然而,數學以直接和清晰的方式應用,因此複雜性不會干擾學習設計過程。碼的設計產生編碼 G 和解碼 H 矩陣,以及實現設計的電子電路。

產生碼的編碼 G 和解碼 H 矩陣的設計過程以直接的方式呈現,並不涉及抽象代數的語言。此外,還有一種簡化的直接方法生成 G 和 H 矩陣。

距離和權重的概念提供了二進位碼具有 t 錯誤更正能力的必要和充分條件。

R. W. Hamming 的巧妙碼的發明告訴我們為什麼需要奇偶校驗,以及 Hamming 碼如何通過 G 和 H 矩陣進行編碼和解碼。Hamming 向我們展示了碼設計任務的輸出應該是什麼。

概述描述了實現所需數學結構的代數編碼理論的角色。

Galois 有限域為區塊碼設計提供了代數結構。在 Galois 域的呈現中避免使用抽象代數的語言,而不會降低呈現的深度。

二進位循環碼是區塊碼的一個重要子集。循環碼具有顯著的代數結構,便於創建編碼 G 和解碼 H 矩陣。

BCH 碼可以更正多於一個錯誤,從而克服了單錯誤 Hamming 的限制。相關的 Reed-Solomon 碼用於執行一種特定類型的更正,稱為突發更正。

解碼器告訴你有錯誤,但不告訴你有多少。方程式處理解碼器輸出,以便發現錯誤位元。傳統的軟體解決方案對於非常複雜的 BCH 解碼器方程式被避免,因為有直接的硬體解決方案可用。

編碼器和解碼器電路設計使用移位暫存器、LFSR 暫存器、ROM 記憶體、時鐘和邏輯閘。存在串行和並行格式。字中的位元在通訊通道中按順序(串行)傳輸。字中的位元在具有多個通道的系統中(如記憶體)同時(並行)傳輸。

Turbo 碼使用串接編碼方案,結合兩個區塊碼和一個交錯器,以產生性能優越的碼。我們僅開始解釋 Turbo 碼,因為全面解釋其複雜性需要另一本書。

碼設計師在設計碼時會發現這裡列出的 Galois 域資訊非常方便。