我有一个基于 Cortex-M4 的 MCU,通过 16 位并行存储器总线接口连接到 FPGA。本质上,FPGA 的行为类似于映射到 MCU 存储空间的外部存储器:MCU 提供一个地址,后跟一个数据字(写)或读取 FPGA 提供的字(读)。
我想在寻址和数据写入/读取期间保护读取和写入免受传输错误的影响。但是,由于两个部分之间的距离很短,我预计不会有很多位错误。
我可以在 FPGA 内轻松实现奇偶校验、汉明码或 CRC 校验和生成。然而,在 uC 中做同样的事情(检查和生成)似乎比较困难,因为我不想削弱吞吐量。如果没有错误检测,读取和写入 16 位字大约需要 4-6 个处理器周期,因此相当快。因此,我不想在保护措施上花费数百个周期。
最后,我正在寻找一种在 uC 中以尽可能少的周期实现的 16 位数据的中等效率错误检测方法。