基于FPGA的以太网物理层信号处理器的研究.pdf_第1页
基于FPGA的以太网物理层信号处理器的研究.pdf_第2页
基于FPGA的以太网物理层信号处理器的研究.pdf_第3页
基于FPGA的以太网物理层信号处理器的研究.pdf_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 2 8卷第 4期 2 0 0 5年 1 2月 电 子器件 Ch i n e s e J o u r n a l o f El e c t r o n De v i c e s Vo 1 2 8 No 4 De c 2 00 5 Re s e a r c h o n Et h e r ne t Ph y s i c a l La y e r Pr o c e s s o r Ba s e d o n FPGA W ANG K u n FEN G Do n g q i n I n s t i t u t e o fAd v a n c e d Pr e s s C o n t r o l Z h e j i a n g Un i v e r s i t y Ha n g z h o u 3 1 0 0 2 7 C h i n a Abs t r a c t I n o r de r t o t a k e t he a dv a nt a ge of FPGA TECH t o r e a l i z e t he f u n c t i on s of hu b c o nt r o l l e r c hi p a nd De c o d e En c o d e e h i p t h i s p r o c e s s o r a d o p t s t o p d o wn d e s i g n f l o w t o a c t u a l i z e En c o d e De c o d e me c h a n i s m f or M a nc he s t e r Co de And f o r t he f i r s t t i m e FPGA i s u s e d t O de a l wi t h a na l og s i g n a l s t r a n s f e r r e d on t he Et h e r n e t wi t h t h e h e l p o f a d i f f e r e n t i a l c i r c u i t Fu r t h e r mo r e i t r e a l i z e s s o me f u n c t i o n s o f DLL Da t a Li n k La y e r s u c h a s CRC一 3 2 me c h a n i s m Th i s r e s e a r c h wi d e n s t h e a p p l i c a t i o n o f FP GA i n t h e f i e l d o f d a t a s i gn a l p r oc e s s i n g a n d i t c o nt r i b ut e s a va l i d s ol u t i o n t o u ni f y t he PH Y a nd t he DLL da t a pr o c e s s i ng i n FP GA Ke y wo r d s F PGA En c o d e De c o d e me c h a n i s m CRC一 3 2 me c h a n i s m EEACC 6 1 40 基于 F P GA的 以太 网物理层信号处理器的研 究 汪 昆 冯冬 芹 浙江大学 先进控制研究所 杭州 3 1 0 0 2 7 摘 要 为了利用 F P GA灵活实现以太网中继器芯片和编解码芯片的功能 本处理器采用 自上而下的模块化设计思想 实现 了 Ma n c h e s t e r 编码 的编 解码算法 开 创性地将 F P GA应 用在 以太 网物理信 号的处理 上 同时该处理器 还实现 了部分数据 链 路层的功能 例如 C R C一3 2差错校验算法 拓宽 了 F P GA在数字信号处理领域 的应 用 更为 F P GA将 以太 网物理层 和数据链 路层 信号处理 统一 实现 提供 了有效地解决方案 关键词 F P G A 编解码算法 C R C 一 3 2 差错校验算法 中 图分 类号 T P 3 9 3 1 1 文献 标识 码 A 文 章编 号 1 0 0 5 9 4 9 O 2 O O 5 O 4 一 O 8 5 5 一 O 4 传 统 的以太 网物 理层芯 片分 为物 理层 编解码 芯 片 R TL 8 2 0 1 R T L8 2 0 8等 和 集 线 器 控 制 芯 片 DM9 0 8 1 8 3 C 7 9 5等 两者 均采 用 A S I C Ap p l i e a t i o n S p e c i f i c I n t e g r a t e d C i r c u i t 技 术 具 有高 速 高 集成度 单芯片成本低等特点 但是同时存在着成片 后逻辑不能再改动的缺点 对于一些需要经常改动 其内部逻辑的场合 其应用受到了一定 的限制L 1 目 前对 于工 业 以太 网 多种 通讯 协议 同 时并存 但是 大 多数 是基 于 同样 的 1 O M 以太 网 不 同之 处 在 于 上 层协 议 的处理 机制 不 同 而 常用 的处 理模式 是 下层 通讯模块 MC U 微处理器 这样则需 要两块 芯 片E z 3 而 采用 F P GA F i e l d P r o g r a mma b l e Ga t e Ar r a y 进 行 以太 网物 理层 信 号 处 理 可 以对 于解 码 以 后 的数字 信号 进行 进一 步处 理 从 而 只需 一块 芯 片 更重要的在于 F P GA 由于其通用性强 设置灵活的 特点 能够根据要求快速更改内部逻辑设计 对 于设 计适用于各种不同通讯协议 的协议芯片具有 AS I C 方式所不可比拟的优势 本处理器正是利用该特性 开创性地将 F P GA应用在 以太 网物理层信 号的处 理方 面 实现 了 Ma n c h e s t e r编码的编解码算法 在 收稿 日期 2 0 0 5 0 4 2 8 基金项 目 国家 自然科学基金项 目资助 6 0 4 2 1 0 0 2 作者简介 汪 昆 1 9 7 8 一 男 研究生 从 事现场总线方 面的研究 和开发 k e l v i n 2 u h o t ma i l c o rn 维普资讯 8 5 6 电 子 器 件 第 2 8卷 此 基础 上 实现 了 以太 网集 线器 芯 片 和 编解 码 芯 片 的灵 活选择功能 同时尝试进行数据链路层 的信号 处理 功能 实现 了 C R C 一 3 2差 错校 验算 法 为进 一 步 利 用 F P GA 进行 数 据 链 路 层 的 数据 处 理 奠定 了基 础 1 处理器硬件设计框 图 图 1为 处理 器 的硬件 实 现 框 图 其 中包 括 以下 几个 主要 部 件 网络 变压 器 接 收信 号 处 理 电路 晶 振和 核心芯 片 F P GA 臣 I l处 理 器 硬 件 框 图 1 网络变压 器 主要用 来实 现信 号 隔离功 能 和 网络终 端器 功能 2 接 收信号 处理 电路 以太 网信 号是 通过 曼 彻 斯 特编码 方 式 差分 传 输 的 对 于处 理 数字 信 号 的 F P GA 来说 没 有办法 辨识这 种 差分 传输 的信号 而 接收信号处理电路采用一个差分放大 电路 对于信 号进 行整形 同时提 高 了电平 将 曼彻 斯 特差分 信号 转换 成 F P GA 可 以辨识 的数字 信号 输入 3 晶振 该 处 理器采 用 了 8 0 M 的 晶振 作 为 处理器的采样频率 来进行信号的解码和编码工作 4 核 心 芯 片 F P GA 本 处理 器 充分 利用 F P G A 灵 活设 置 高速 处理 数 字信 号 的特 点 对 于 以太 网信 号进行 解 码 和 编码 同时 可 以通 过 硬件 描 述 语 言 对 于信号 的转 发 和存 储 进行 控 制 灵 活 多变 的 实 现 各种功 能 2 处理器软件设计框 图 这 一 部 分 将 着重 介 绍 Ma n c h e s t e r编码 的编 解 码 算法 和 C RC 一 3 2 差 错校 验算 法 的实现 这也 是本 处 理器 的核 心部分 图 2是 F P GA 的 内部 模块 图 我们 采用 了 Ve r i l o g硬 件描 述 语 言对 于 F P GA 进 行设 置 采 用 自顶 而 下 的设 计 方 式 并将 处理 器按 照 功 能设 计 分 为 四 个 模块 主 控 制模 块 解 码模 块 存 储 模 块和 编 码模 块 主控制模块 负责调度 决定对于接收的数据 进行 如何 处 理 同时决定 在何 时进行 数 据的转 发 l 送信 正端 解 l 控制 块 F P G A 接收f J 码 l 囊 l 发 送 信 号 负 端 块r I I 块I 儿 I l 发送信号 丌 l G A接收信号 编 J 缓 存 区 码 发 送 信 号 负 瑞 模 块 F P GA 图 2 FPGA 内 鄙 模 块 图 解 码 模 块 对 于 R J 4 5 口 上 的 数 据 进 行 解 码 将 Ma n c h e s t e r编 码 发 送 的 数 据 按 字 节 解 码 成 NRZ 码 存储 模 块 包 括 两个 5 1 2 B YT E 的 RA M 分 别 存储从解码模块送过来 的数据 支持异步读取 编 码 模 块 收到 主控 制 模块 发 送 数据 的信 号 从 存 储模 块 中按位读取 出待发送 的数据 然后按 照 Ma n c h e s t e r 编码 方式 发送 出去 2 1 编解 码 算法 实现 2 1 1 解码 算 法 以太 网信 号 是 以 Ma n c h e s t e r 编 码 方 式 差 分 发 送 的 而 Ma n c h e s t e r 编码 方式 发送 数据 时是 分 为两 个部分发送的 前半个时段传送信号是该时段传送 比特值 的反 码 后半个 时段传送 的是 该 比特值 本 身 这 种 发送 方 式决 定 了在一 个 时 间段 内 其 中 间点 中 有一 个信号 电平 的变化 正 因为如此 Ma n c h e s t e r 编码 方 式在 发送信 号 的 同时 也 传输 了 同步信 息 可 以使 网络上 的每一 个设 备保 持 同步 I 3 解码 算法 正是 利用 这个 特性 来完成 以太 网信 号 的采 集 以 4 0 M 采样 频 率 为例 查 看 图 3 采 样 和 同步 收到 的 信号 监 测 到 跳 变沿 后 开 始 计 数 计 数是 为 了保 证 芯 片 只采 集 在 一个 位 时 段 的 中间点 的 电平 跳 变 避 开 时段 起 始 点 的 电平 跳 变 当监测到一个 电平跳变后 芯片只有在计数 器 计 到 3时 才重 新 开始 监 测 电平 跳 变 当使 用 4 0 M 钟 振 一个 时钟 周期 为 2 5 U S 而 当计 数 器计 到 3时 也 就是 7 5 U S 正好 避 开 了起 始 点 的可能 出现 的 电平 跳变 从 而保证了信号 同步和监测到的电平跳变必 定是中间点的 计数器清零 一直等到再次检测 到 电平 变化 计数器 重新 开 始计 数 对于 1 0 M 网络 实际的采样频率应该在 8 O M 之上 因为这样 才 可 以保 证数 据解 码 的正确 性 而对 于 1 0 0 M 甚至 1 0 0 0 M 网络 F P GA 已经提供了一 些特殊的采样方法 例如带 P L L功能 以实现对 于 高频信 号 的足 够 的采样频 率 2 1 2 编 码 算法 由 于 Ma n c h e s t e r编码 机 制 是 在 一 个 数 据 发 送 位 中有一 次 电平变 换 所 以在发 送时 实 际的码 元 发 维普资讯 第 4期 汪 昆 冯 冬 芹 基 于 F P GA 的 以 太 网物 理 层 信 号 处 理 器 的研 究8 5 7 圉 3 M a n c h e s t e r解 码 机 理 送频率是 网络传输速度 的两倍 也就是说 对于 1 0 M 的网络 此时 的码元 发送 频率 为 2 0 M 而本 处理 器选 用的 8 0 M 的晶振可 以方便 的分频出 2 0 M 的 频率 当有数据传输时 芯片要将解码后信号按照 Ma n c h e s t e r编码 方式 发送 出去 而在 数据 发 送完 毕 时 TX D 要保持高电平三个 B i t Ti me s 当没有数 据传输时 处理器必须每隔 8 r D S 到 2 4 ms之间发出 一 个 NL P脉 冲 No r ma l Li n k P u l s e 以通 知 对侧 通 讯设备 连接 仍然 有效 本 编解 码 算法 对 于 Ma n c h e s t e r编 码都 是 通 用 的 所 以对 于 1 0 M 1 O O M 甚 至 1 0 0 0 M 网络都 是 适 用 的 而不 同之 处在 于 采样 频率 的 不 同 对 于 1 0 M 网络相对频率比较低的网络 可以采用 比较高的 采样 频 率 来保 证 解 码 后 数 据 的正 确 性 而对 于 1 0 0 M 甚 至 1 0 0 0 M 网络 不 适 合 采 用 更 高 的 采 样 频 率 而 目前 几大 F P GA 厂 家推 出了一 些特 殊 方法 解 决 该 问题 例 如增 加 P I I 功 能 在 完成 数据 采集后 解码算 法则是 通用 的 2 2 C R C 一 3 2差 错校 验算 法 循 环 冗 余 校 验 C R C C y c l i c R e d u n d a n c y C h e c k 是用来在网络传输中进行信息的校对 当数 据在传输过程中发生了错码和误码 C R C将尽最大 可能检测出来 但并不纠正传输差错 由于其原理简 单 实现方便 因此在通信 系统 中得 到了广 泛的应 用 C R C差错校验功能属于数据链路层的传输差错 控制 功 能 并不 是物 理链 路层 的必 需功 能 但 是 由于 为了提高传输数据的可靠性 减少错码和误码率 同 时尝试实现部分数据链路层 功能 本处理器实现了 C RC差 错 校验算 法 为 进一 步进 行数 据 链路 层 的数 据处 理进行 了基础性 研究 C R C校验 采用 多项 式 编码 方法 被处 理 的数据 块 可 以看 作 是 一 个 阶 的 二 进 制 多 项 式 由 a 一 z 一 日 n 2 z 一 日 1 z 日 0 如一个 8位 二进制 数 1 0 1 1 0 1 0 1可 以表 示 为 1 z O x I x I x O x 1 z 0 z 1 多项 式乘 除法 运算 过程 与普通代 数 多项 式 的乘除 法 相同 多项 式 的加减 法运 算 以 2为 模 加减时不进 错位 和逻辑异或运算一致 采用 C R C校验时 发送方和接收方用同一个生成多项式 g z 并且 g z 的首位和最后一位 的系数必须 为 1 C RC的处理 方 法是 发送 方 以 g z 去 除 t z 得 到余数作为 CR C校验码 校验时 以计算的校正结 果是否为 0为据 判断数据帧是否出错 3 而在 常用 的通 讯 网络 中 大 多 采 用 C R C 一 3 2差 错校验算法 即发送方从 开始发送数据时就开始计 算 C RC校 验码 可 以按 位 计 算 也可 以按 字 节来 计 算 在发送 完 所有 的数 据后 将计 算好 的 C R C校验 码 添 加到发送 数据 的最后 C R C 一 3 2则 表示 C R C码 为 4 b y t e 3 2 b i t 而 C R C一3 2的生 成多 项式 是 g z 一 z z z z 一 z z z u z z z z z z z 1 在 常见 的 C RC 一 3 2差 错 校 验 算 法 通 常 由两 种 方法 来 实 现 一种 就是 比特 型 C RC算 法 另 一种 是 字 节 型 C R C算 法 字 节型 C R C算 法基 于这样 一 个原 理 计 算 本字 节 后 的 C R C 码 等 于 上 一 字 节 余 式 C R C码 的 低 8 位左 移 8位 加 上上 一字 节 C R C 右移 8位 和本 字节 之 和 后所 求得 的 C R C码 如果把 8位 二进制 序列 数 的 C RC 共 2 5 6个 全 部 计算 出来 放在 一 个 表 里 编 码 时只要 从 表 中查 找 对应 的值进 行处 理 即可 这 个方法可 以极大 的提高计算速度 但需要占据一定 的存 储 空 间 比特 型 C RC算法则 是 基 于计 算 本位 后 的 C R C 码 等于 上一位 C RC码 乘 以 2 后 除 以多项 式 所得 的 余数 再 加上 本位 值除 以 多项式 所得 的余数 这种 算 法代码简单 占用内存较小 但是对 于处理器来说 由于 需 要按 位 计 算 C RC 占用 了大 量 处 理 器 时 间 所以应用 比较少 而 F P GA进行数字逻辑运算是其 优势 同时 由于是基 于硬 件 对于信号可 以并行处 理 所以本处理器采用了该算法来实现 C R C计算 首 先 确定 数 据 的长 度 即确 定 何 时 开 始 计 算 C RC 何 时 停 止 计 算 C RC 然 后 按 位 跟 特 征 值 3 2 h 0 4 Cl l D B7相 与 所 得 值 再 加 上 上 一 位 产 生 的 C R C校验码 即是该位的校验码 F P GA其特点在 于处理数字信号速度快 并行处理数据 因此这种按 位进行 C R C计算的方式非常适合 F P GA 同时算法 简单 占用内存少 通过 Ve r i l o g硬件描述语言编写 仅仅需要十多行代码就可以实现 在实际应用 中该 算 法实 现方 法 也能满 足各 方 面的要 求 维普资讯 8 5 8 电 子 器件 第 2 8卷 2 3 其 他功 能模块 2 3 1 控制模 块 控制模块负责控制 F I F O的数据读写功能和进 行通讯信号的收发控制 目前 由于主要工作在物理 层 所以控制功能比较简单 而后期工作将重点在这 个方面进行进一步的研究开发 争取逐步实现一些 数据链路层功能 使其成为处理器的核心模块 2 3 2 FI FO F I F O模块的实现是基于 F P GA芯片提供 的资 源 硬件上 F P GA提供了足够大的 R AM 可以用来 储存数据 而在程序方面 则可以直接调用厂家提供 的 I P C o r e 从 而 生成 两个 先进 先 出 的 F I F O 用 于 存 储 两个 通 道 上 的以太 网数据 F I F O 模块 缓 存 了部 分的接收数据 一定程度提高了接收数据的正确性 3 结束语 本 处 理 器 已经 在 1 O M 网 络 中试 验 成 功 可 以 灵活实现 以太网数据信号的编解码功能和信号接收 转发 功 能 并在 工业 以太 网 E P A 协议 系统 中正在 尝 试应用 同时本处理器提 出的 Ma n c h e s t e r 编解码算 法和 C R C 一 3 2算 法具有一定的通用性 可 以应用在 各种工业以太 网协议 中的数据链路层信号处理 中 为利用 F P GA技术处理工业 以太 网信号奠定 了基 础 参 考文 献 1 赵雅兴 F P GA 原理 设计及应 用 M 天津 天津 大学 出版 社 1 9 9 9 2 冯冬芹 黄文君 工业通信 网络与系统集成 M 北京 科学 出 版社 2 0 0 4 3 I E E E S t d 8 0 2 3 P a r t 3 C a r r i e r s e n s e mu l t i p l e a c c e s s wi t h c o l l i s io n d e t e c t ion CS M A CD a c c e s s me t h o d a n d p hy s i c a l l a y e r s p e c i f i c a t i o n s 2 0 0 0 E d i t i o n s I s 0 I E c 8 8 0 2 3 2 0 0 0 上 接 第 8 4 5页 3 降低 芯 片封 装 中 的 电源 和 地 管 脚 的 电感 比如 增 加 电源 地 的管 脚 数 目 减 短 引 线 长度 采 用 更好 的封装 等 4 增 加 电源 和地 的互 相耦 合 电感 也可 以减 小 回路总 的 电感 因此要让 电源和地 的管 脚成对 分 布 并 尽量靠 近 5 给系统 电源增加去耦 电容 这些电容可 以 给高频的瞬变交流信号提供低 电感的旁路 而变化 较慢的信号仍然走系统电源 回路 虽然负载电容也 可以看作去耦 电容 但由于其电容相对较小 所以对 交流旁路作用不大 6 考虑在 芯片封装 内部使用去耦 电容 这样 高频电流的回路 电感会非常小 能在很大 程度上减 小芯片 内部 的同步 开关 噪声 参考文 献 1 Ve mu r u S R Ac c u r a t e s i mu l t a n e o u s s wi t c h i n g n o i s e e s t i ma t i o n i n c l u d i n g v e l o c i t y s a t u r a t i o n e f f e c t s J I E EE T r a n s Co mp Pa c k a g a n d M a n u f a c t Te c h n o l B 1 9 9 6 3 1 9 3 4 4 3 4 9 2 Ve mu r u S R E f f e c t s o f s i mu l t a n e o u s s wit c h i n g n o i s e o n t h e t a p e r e d b u f f e r d e s i g n J I E E E T r a n s VL S I S y s t 1 9 9 7 9 5 2 9 0 3 0 0 3 Va n V a l k e n b u r g M E N e t w o r k An a l y s is M E n g l e wo od Cl i f f s NJ P r e n t i c e Ha l l 19 7 4 6 1 3 9 1 6 3 4 L a r s s o n P Re s o n a n c e a n d d a mp i n g i n C MOS c i r c u i t s wi t h o n c h i p d e c o u p l i n g c a p a c i t a n c e J I E EE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论