{"title":"基于FPGA的以太网高速CRC算法的简化查找表设计","authors":"Bajarangbali, P. Anand","doi":"10.1109/INDICON.2016.7839009","DOIUrl":null,"url":null,"abstract":"This paper describes the design and development of modified CRC algorithm for the hardware implementation on FPGA to meet the speed constraint for Ethernet, using the reduced lookup table algorithm. This algorithm can be applied for any length of data, by processing it in a block of 16 bytes at a time. The last block may have less than 16 bytes. To process an input block of 16 bytes, the algorithm first forms an optimized table of pre-calculated CRC. Corresponding to the input data, lookup from this table is done and the results from the table lookup are combined by XOR operations to form the final CRC of the input data. The Ethernet data whose CRC needs to be calculated is processed in blocks of 128 bits at clock frequency of 312.5 MHz to achieve a throughput of 40Gbps. The entire design is functionally verified using ModelSim SE Plus 6.3g. Applications in Internet of Things and Machine-to-Machine require real time big data platforms and Artificial Intelligence platforms, where there is high demand for lower latency and high speed network infrastructure. To create such a reliable network infrastructure at high speeds, a hardware accelerated CRC error detection needs to be used.","PeriodicalId":283953,"journal":{"name":"2016 IEEE Annual India Conference (INDICON)","volume":"533 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"15","resultStr":"{\"title\":\"Design of high speed CRC algorithm for ethernet on FPGA using reduced lookup table algorithm\",\"authors\":\"Bajarangbali, P. Anand\",\"doi\":\"10.1109/INDICON.2016.7839009\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper describes the design and development of modified CRC algorithm for the hardware implementation on FPGA to meet the speed constraint for Ethernet, using the reduced lookup table algorithm. This algorithm can be applied for any length of data, by processing it in a block of 16 bytes at a time. The last block may have less than 16 bytes. To process an input block of 16 bytes, the algorithm first forms an optimized table of pre-calculated CRC. Corresponding to the input data, lookup from this table is done and the results from the table lookup are combined by XOR operations to form the final CRC of the input data. The Ethernet data whose CRC needs to be calculated is processed in blocks of 128 bits at clock frequency of 312.5 MHz to achieve a throughput of 40Gbps. The entire design is functionally verified using ModelSim SE Plus 6.3g. Applications in Internet of Things and Machine-to-Machine require real time big data platforms and Artificial Intelligence platforms, where there is high demand for lower latency and high speed network infrastructure. To create such a reliable network infrastructure at high speeds, a hardware accelerated CRC error detection needs to be used.\",\"PeriodicalId\":283953,\"journal\":{\"name\":\"2016 IEEE Annual India Conference (INDICON)\",\"volume\":\"533 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"15\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2016 IEEE Annual India Conference (INDICON)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/INDICON.2016.7839009\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 IEEE Annual India Conference (INDICON)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/INDICON.2016.7839009","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 15
摘要
本文介绍了一种改进的CRC算法的设计和开发,用于FPGA硬件实现,以满足以太网的速度限制,使用简化查找表算法。该算法可以应用于任何长度的数据,每次以16字节的块进行处理。最后一个块可能小于16字节。为了处理16字节的输入块,算法首先形成一个优化的预计算CRC表。与输入数据相对应,从该表中进行查找,并通过异或操作将表查找的结果组合起来,形成输入数据的最终CRC。需要计算CRC的以太网数据在时钟频率为312.5 MHz的情况下,以128位为块进行处理,可实现40Gbps的吞吐量。使用ModelSim SE Plus 6.3g对整个设计进行了功能验证。物联网和机器对机器的应用需要实时大数据平台和人工智能平台,对低时延和高速网络基础设施有很高的要求。为了在高速下创建这样一个可靠的网络基础设施,需要使用硬件加速的CRC错误检测。
Design of high speed CRC algorithm for ethernet on FPGA using reduced lookup table algorithm
This paper describes the design and development of modified CRC algorithm for the hardware implementation on FPGA to meet the speed constraint for Ethernet, using the reduced lookup table algorithm. This algorithm can be applied for any length of data, by processing it in a block of 16 bytes at a time. The last block may have less than 16 bytes. To process an input block of 16 bytes, the algorithm first forms an optimized table of pre-calculated CRC. Corresponding to the input data, lookup from this table is done and the results from the table lookup are combined by XOR operations to form the final CRC of the input data. The Ethernet data whose CRC needs to be calculated is processed in blocks of 128 bits at clock frequency of 312.5 MHz to achieve a throughput of 40Gbps. The entire design is functionally verified using ModelSim SE Plus 6.3g. Applications in Internet of Things and Machine-to-Machine require real time big data platforms and Artificial Intelligence platforms, where there is high demand for lower latency and high speed network infrastructure. To create such a reliable network infrastructure at high speeds, a hardware accelerated CRC error detection needs to be used.