FPGA-Based Design and Implementation of CRC-16 Encoder and Decoder
Corressponding author's email:
tandd@hcmute.edu.vnDOI:
https://doi.org/10.54644/jte.71B.2022.1140Keywords:
CRC, FPGA, Verilog, Encoder, DecoderAbstract
Error control coding is an important functional block to ensure the reliability of any communication system. Specifically, Cyclic Redundancy Check (CRC) codes are widely used in many fields such as civil communication and industrial communication. CRC codes efficiently provide the first layer of protection against data corruption during data transmission sent from a transmitter to a receiver over channels. With the advantage of being simple but effective in detecting and possibly correcting errors in data transmission and storage of digital data. In this paper, we present a detailed design and implementation of a CRC-16 encoder and decoder based on Field Programmable Gate Array (FPGA) using Verilog hardware description language. Then, we evaluate the design using both Xilinx ISE software and AX309 FPGA kit where error detection capability and resource usage are tested in detail. Extensive simulations and FPGA board based experimental results have been conducted to confirm the effectiveness of our proposed design.
Downloads: 0
References
Martin P.Clark, Wireless Access Networks: Fixed Wireless Access and WLL Networks-Design and Operation, John Wiley & Sons Ltd, 2000. DOI: https://doi.org/10.1002/0470841516
Todd K.Moon, Error Control Coding—Mathematical Methods and Algorithms, New York: John Wiley & Sons, 2005. DOI: https://doi.org/10.1002/0471739219
Yuan Jiang, A Practical Guide to Error-Control Coding Using MATLAB, Artech House Publishers, 2010.
Ma Yuping & Zhang Jun, “Design and Implementation of CRC Error Correction for ADS-B System Responding Based on FPGA”. Applied Mechanics and Materials, 2014. DOI: https://doi.org/10.4028/www.scientific.net/AMM.577.994
Zonglin Zhong, Wengui Hu, “Error detection and control of IIoT network based on CRC algorithm”, Computer Communications, volume 153, 2020, pages 390-396. DOI: https://doi.org/10.1016/j.comcom.2020.02.035
E. Tsimbalo, X. Fafoutis and R. J. Piechocki, “CRC Error Correction in IoT Applications”, IEEE Transactions on Industrial Informatics, vol. 13, no. 1, Feb. 2017, pp. 361-369. DOI: https://doi.org/10.1109/TII.2016.2605628
J. N. Chhatrawala, N. Jasani and V. Tilva, “FPGA based data acquisition with Modbus protocol”, International Conference on Communication and Signal Processing (ICCSP), 2016, pp. 1251-1254. DOI: https://doi.org/10.1109/ICCSP.2016.7754353
Sarah L.Harris, David Money Harris, Digital Design and Computer Architecture -Arm Edition, Elsevier USA, 04/2015. DOI: https://doi.org/10.1016/B978-0-12-800056-4.00006-6
Stephen M. Trimberger, Field-Programmable Gate Array Technology, Springer Science & Business Media, 1994. DOI: https://doi.org/10.1007/978-1-4615-2742-8
Lin, S., and D. J. Castello, Error Control Coding—Fundamentals and Application, Upper Saddle River, NJ: Prentice-Hall, 2004.
Behrouz A. Forouzan, Data Communications and Networking (Fourth Edition), McGraw-Hill, USA, 2007.
Downloads
Published
How to Cite
Issue
Section
Categories
License
Copyright (c) 2022 Journal of Technical Education Science

This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
Copyright © JTE.


