还给设计者提供了一个-uwb超宽带定位原理及系统架构介绍!

时间:2021-06-10 01:32:22
【文件属性】:
文件名称:还给设计者提供了一个-uwb超宽带定位原理及系统架构介绍!
文件大小:208KB
文件格式:PDF
更新时间:2021-06-10 01:32:22
crc 5.1 CRC一32编码器的验证仿真 本 文 利 用 Xilinx公 司 Virtex2系 列 的 XC2V40— 6FG256的FPGA开发板对 CRC-32码 的编 码和译码进行 设计,并对结果进行了功能验证。采用 ISE开发平台和 Verilog HDL进行设计,验证系统的总体结构如图4所示, 系统的仿真波形如图5所示。 球 c c 0 l~~Imseq /~cZEnout , c,cRc /crc/dataP~c /mc/dout /crc/CRCcheek 图 4 验证 系统 的总设计 图 图 5 系统 仿 真 波 形 系统结构中的模块说明如下: 模块mgen:m序列信号发生器 ,并将产生的信号做 串/并转换,输出qout是 32位宽的数据流 ,作为信号源; 模块crcgen:CRC一32编码器,使用本文介绍的并行 算法并采用图3中的LFSR2电路结构进行编码计算,输出 dout是已经添加了 32位 CRC码 的数据 ; 模块sigproc:传输控制模块 ,人为地引入误码 ,以达 到验证算法的目的; 模块crccheck:接收译码检错部分,译码采用图2中的 LFSR电路结构 ,输出data是去除CRC码的数据,而输出 CRCcheck是CRC译码伴随式。 仿真波形图中的主要信号说明如下: sdin:输入到CRC一32编码器的序列; CRCout:CRC一32编码器的编码输出,包括CRC码 和信息码字; dataProc:传输控制模块的信号输 出,包含人为引入 的误码 ; dout:CRC一32译码后的数据输出,不含有CRC码; CRCcheck:CRC译码产生的伴随式 。 从图5中可以看出,当输入码字为0x60E84E34H,他 的CRC码输出是0x7DB9CBC8H,这与用串行方法实现得 出的结果是一致的。再来看接收译码检错部分 ,在传输没 有误码的情况下 ,CRC的译码伴随式CRCcheck的输出为 0,表示信息码输出dout是正确的;如果有误码产生,如 图4中的方框部分所示传输出现了错误,这时伴随式将不 再等于0,系统可以根据这个非零值进行近一步的处理,对 错误处理本文没有涉及。至此,从实践的观点证明了本文 介 绍的并行算法 的正确性,并且可以对此方便地通过 FPGA设计加以实现。 5.2 符合IEEE802.3要求的CRC一32编码器的设计实现 为了符合IEEE802.3的协议要求,对 CRC编码器部 分稍微进行改动。IEEE802.3规定,以太网的帧校验序列 FCS以CRC-32为基础 ,在编码时首先对数据的前32位取 反 ,再编码计算 出CRC-32码后对结果取反 ,最后的结果 才是需要的FCS。同时IEEE802.3还给设计者提供了一个 测 试样 本 ,将 以 下 12 B的序 列 :OxBED7—2347—6B8F— B314—5EFB一3559循环 126次后得到的序列作为输入数 据 ,经过CRC一32编码后得到的FCS是 0x94D2—54AC。 最后将稍微改动后的CRC一32编码器进行综合布线 , 所用的FPGA器件就是上面提到的XC2V4O~6FG256,再 利用IEEE8O2.3提供的序列进行后仿真验证,得到了正确 的结 果。从综 合 后 的结果 知道 ,输入 输 出 的延 迟是 4.366 ns,允许的最高时钟频率超过200 MHz,所耗费的资 源如表 1所 示。 表 1 CRC一32编码器的综合结果 Number of Slices Number of Slice Flip Flops Number of 4 input LUTs Number of bonded IOBs Number of GCLKs M aximum Frequency 114 8O 2l3 65 l 229.069M Hz 6 结 语 本文介绍的CRC并行算法,在分析了CRC的串行实 现电路结构的基础上,通过系统状态方程的求解和矩阵计 算,推导出并行CRC码。采用这种方法可以容易地实现各 种CRC生成多项式在不同并行度下的计算,相对于其他 并行算法更具优越性 。当然同其他并行实现方法一样,并 行计算需要通过多级组合逻辑的反馈 ,产生较大的门时 延 ,应该通过优化组合电路结构 ,在最大程度上降低延迟, 使电路适用于较高的时钟频率。 (下转第 26页) 23 维普资讯 http://www.cqvip.com

网友评论