"深亚微米并行CRC32编码芯片的设计和实现 (2014年),郭宝增,吴鹏飞,河北大学电子信息工程学院"
CRC(Cyclic Redundancy Check,循环冗余校验)是一种广泛应用于数据通信和存储系统中的错误检测方法。CRC编码算法基于多项式除法,通过计算数据的CRC值来检测数据传输或存储过程中可能出现的错误。本文主要探讨了在深亚微米工艺下,如何设计并实现一个高速、高效、低功耗且易于量产的CRC32编码芯片。
首先,作者在分析CRC编码算法的基础上,从传统的串行编码算法出发,推导出了适用于高速通信的并行算法。串行CRC算法通常需要逐位处理,而并行算法则可以同时处理多位,大大提高了编码速度,这对于高速通信系统至关重要,因为它能够实现实时的数据校验。
接着,为了验证并行CRC32算法的逻辑功能,作者采用了FPGA(Field-Programmable Gate Array)进行硬件验证。FPGA是一种可重构的集成电路,可以在设计阶段快速验证和调试数字逻辑电路,确保了算法代码的正确性。这一步是芯片设计过程中的关键环节,因为正确的逻辑功能是芯片成功实现的基础。
在验证了算法的正确性后,作者选择了中芯国际的simc18(180纳米工艺库)进行芯片实现。选择这种工艺是因为180纳米是一个相对成熟且广泛应用的工艺节点,它能够在保证性能的同时,实现较低的功耗和较小的芯片面积,有利于批量生产。此外,该设计还注重了资源占用的优化,旨在实现更高的能效比。
设计过程中,作者可能使用了Design Compiler这样的综合工具来优化逻辑门级的布局和布线,以及SoC Encounter这样的物理设计工具来完成布局和布线后的时序分析和优化,以确保芯片在实际工作条件下的性能满足预期。
最后,文章指出,这种并行CRC32编码芯片具有编码速度快、占用资源少、低功耗和易于量产等优点。这些特性使得该芯片在各种高速通信设备,如网络接口卡、存储系统、无线通信模块等领域有广阔的应用前景。
关键词涉及的领域包括:CRC32编码,用于数据错误检测;并行计算,提高计算效率;FPGA验证,硬件级别的功能确认;Design Compiler,逻辑综合工具;以及SoC Encounter,物理设计工具。
这篇论文详细介绍了基于深亚微米技术的并行CRC32编码芯片的设计流程和技术特点,对于理解并行CRC编码算法在高速通信系统中的应用和实现具有重要参考价值。