基于FPGA的IEEE1394物理层控制器设计与实现.pdf_第1页
基于FPGA的IEEE1394物理层控制器设计与实现.pdf_第2页
基于FPGA的IEEE1394物理层控制器设计与实现.pdf_第3页
基于FPGA的IEEE1394物理层控制器设计与实现.pdf_第4页
基于FPGA的IEEE1394物理层控制器设计与实现.pdf_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1 基于 FPGA 的 IEEE1394 物理层控制器设计与实现 IEEE1394PHY controller design and its implement in FPGA 汪国有 王至勉 何晓翔 Wang Guoyou Wang Zhimian He Xiaoxiang 摘要 文中介绍了1394物理层控制器 三端口 100M 线缆环境 的工作原理 工作方式和 系统框架 对其中的关键技术作了重点的分析 通过验证 该控制器完全符合 IEEE Std 1394 1995 技术规范 关键词 1394总线 物理层 火线 接口芯片 中图分类号 TP302 1 文献标识码 A Abstract In this paper the working principle working style and system structure of the 1394PHY controller 3 ports 100M cable is presented The main technique in this project is analyzed The experimental result show that this 1394PHY controller fully accords with IEEE Std 1394 1995 Keywords 1394 bus PHY Firewire Interface chip 1 引言 IEEE1394是1986年由Apple公司提出的高速串行总线标准 又被称为 火线 Firewire 目的在于简化计算机接口技术 其标准速度分为100 200和400Mbps 可在计算机和外设间进 行高速的数据传输 它是现今最高速的串行总线接口之一 其线缆环境的主要特点有 支持热 插拔 即插即用 节点自动配置 不需主机系统干预 支持等时和异步传输 支持点到点传输 可以脱离主机CPU 的干预 使用两对双绞线发送信号 一对用于数据传输 一对用于等时化 纯数字接口 易于使用 性价比高 2 1394物理层控制器工作原理和工作流程 2 1 接口定义 该1394物理层控制器满足1394规范要求 3端口设计 遵从基本传输速度100Mbits s要 求 位于1394系统的链路层与1394总线之间 h t t p w w w e l e c f a n s c o m 电子发烧友 h t t p b b s e l e c f a n s c o m 电子技术论坛 2 图1 1394总线协议框图 其中 物理层负责接收 发送数据比特流 为总线提供了电气 机械接口 还实现了仲 裁进程 以确保在同一时间上只有一个节点在总线上传输数据 物理层包含两个接口 与1394 总线的接口和与链路层的接口 该 1394 物理层控制器与 1394 总线的接口包含三个端口 每个端口由三组双绞线组成 其中两组双绞线 TPA TPB 用于传输差模和共模信号 还有一组双绞线用与向节点提供电源 共模信号主要用于设备连接和拆卸的检测和速度信号 差模信号用于复位 仲裁 配置和数 据包传输 1394 物理层控制器与 1394 链路层的接口依照 1394 物理层 链路层接口规范设计 由 SYSCLK CTL 1 0 LREQ D 7 0 组成 2 2 传输方式 1394 物理层支持两种传输方式 异步传输和等时传输 它们都是建立在物理层对 1394 总线的各种空闲状态的检测上 包括仲裁复位间隙 确认间隙 等时传输间隙 短 和子务 间隙 异步传输 等时传输间隙 isoch gap 用于等时事务中 在不连续等时传输之间产生 0 04us 子务间隙 subaction gap 在异步事务中 一个公平间隔内 不同结点获得总线控制 权的总线闲置时间 每个子务间隔后 总线仲裁决定下一个传送异步数据包的结点 10us 确认间隙 ack gap 即异步事务中发送确认包前的总线闲置时间 0 04us 仲裁复位间隙 arbitration reset gap 发生在公平间隔开始前 设置所有有待发异 步数据包的仲裁使能位 保证这些节点可以在以下的公平间隔内可以获得总线控制权 20us IEEE1394规范规定根节点每隔125us广播一个循环开始包 同步1394总线上所有节点并 标记一系列等时事务的开始 由于等时传输间隙 0 04us 小于子务间隙 10us 等时传输 间隙总是先检测到 所以等时传输比异步传输具有更高的总线优先级 一旦要发送等时数据 包的节点收到循环开始包并检测等时传输间隙 它立即开始等时仲裁 获得总线的节点发送 等时数据包 只有当所有要发送等时数据包的节点都获得总线并成功发送等时包后 总线才 会空闲足够长的时间产生子务间隙 10us 子务间隙的检测将开启异步传输 在异步传输 中 节点按照自然优先级 按照各个节点离根结点的距离 距离越近 其自然优先级越高 的 顺序依次获得总线 发送异步数据包 h t t p w w w e l e c f a n s c o m 电子发烧友 h t t p b b s e l e c f a n s c o m 电子技术论坛 3 2 3 工作流程 1394物理层控制器工作流程包括一个三步配置进程和标准仲裁组成 该配置进程包括总 线复位 树标识和自标识 图2 工作流程 总线复位 Bus reset 当给某一节点加点 断电时 或者当向1394总线加入 移出一个节点时 总线复位 它 将强迫所有节点返回它们的初始状态 清除总线已确定好的拓扑结构 使每个节点准备开始 树标识进程 树标识 Tree identity 树标识定义了总线的拓扑结构 当前在总线上新的设备族是拓扑结构的基础 在树标识 过程后 某个节点将成为根结点 在树标识前 每一个节点都知道它是与一个1394节点 当 它是一个总线上的叶节点时 或多于一个节点 当它是总线上的一个分支时 相连 任何一 个节点 叶节点或者分支节点 都可成为根结点 自标识 Self identity 一旦树标识结束后 自标识过程随即开始 在自标识过程执行以下操作 分配给每个节 点物理标识 相邻节点交换传输速度能力信息 广播在树标识过程中定义的拓扑结构 所有 的信号及数据包都是以基本速度 100Mbits s 传送的 标准仲裁 Normal arbitration 在上述三步的配置过程结束后 总线拓扑结构建立起来并确定了根节点 即可通过标准 仲裁来进行异步传输和同步传输 3 系统实现 3 1 系统结构 1394物理层控制器主要由外围电路和FPGA两部分组成 其中 外围电路部分提供与1394 总线接口 负责将1394总线的两对差分信号与FPGA输入 输出的数字信号进行相互转化 FPGA 部分完成所有1394物理层功能 FPGA部分主要包括 节点控制状态机 数据接收模块 数据 发送模块 锁相环 时钟发生器 链路层接口模块组成 其中 链路层接口模块又包括链路 层接口控制状态机 物理层与链路层数据交互电路和LREQ接收电路三部分 h t t p w w w e l e c f a n s c o m 电子发烧友 h t t p b b s e l e c f a n s c o m 电子技术论坛 4 图3 系统组成 3 2 总线接口电路 接口电路作为 1394 总线接口 负责将 1394 总线的两对差分信号与 FPGA 的数字信号相 互转化 该部分主要难点主要在于 TPA 和 TPB 上共模信号和差模信号的检测 共模信号检测是通过 TPB 端的端口状态接收器来实现 该接收器不断的将 0 8v 的参考 电压与 TPA 端的电缆电压进行比较 当有节点连接 该连接节点将由 TPA 端的偏压电压源提 供 TPA 信号线的一个 1 86v 的偏移电压 差模信号有三种状态 差模 0 状态 差模 1 状态和高阻 Z 状态 其关键又在 Z 态的检测 为此在 TPA TPB 上分别使用一对仲裁比较器 设该仲裁比较器门限电压为 V1 输入差模电压为 VID 其工作原理为 当 VIDV1时 比较器输出 1 当 V1 VID V1时 比较器输出为 1 因此 当 1394 双绞线上传输逻辑电平 0 时 电信号经过这一对仲裁比较器后输出 01 当 1394 双绞线上传输逻辑电平 1 时 输出 10 当 1394 节点选通和数据发生器关闭时 双绞线上传输逻辑电平 Z 时 这一 对仲裁比较器后输出 11 将仲裁比较器的输出直接驱动 FPGA 这种仲裁信号的检测策略 很好的完成了高阻 Z 态的检验 在接口电路设计中 采用 TI 公司的差分信号接收器 SN65LVDS3486B 和差分信号发送器 SN65LVDS3487 两款接口芯片 3 3 FPGA 部分 FPGA 选用了 ALTERA 公司 Cyclone 系列的 EP1C6T144C8 该款芯片具有大约 6000 个逻辑 单元 98 个 I O 引脚 内部包含了两个 PLL 电路 FPGA 主要包含节点控制状态机 数据接收模块 数据发送模块 锁相环 时钟发生器 LLC 接口模块五个模块 1 结点状态控制模块 此模块为整个系统的核心模块 其它模块都是在其的控制下协调工作的 该模块主要完 成端口状态检测 仲裁信号解码 总线间隙检测以及实现节点状态机控制 端口状态检测是 h t t p w w w e l e c f a n s c o m 电子发烧友 h t t p b b s e l e c f a n s c o m 电子技术论坛 5 通过检测TPB线上的共模电压来检测该端口远端的连接和拆除状态 仲裁信号解码是对1394 总线接口芯片 SN65LVDS3486B 的输出信号进行解码 确定收到的是 0 1 还是 Z 总 线间隙检测通过一组计时器实现 结点状态机的控制完全是按照 IEEE Std 1394 1995 技术规范中的物理层工作状态机流程来设计 2 数据接收模块 当总线出现数据报头信号 Data Prefix 表示总线上将有数据到来 数据接收模块进 入工作状态 接收到来数据包 并将数据与其内部时钟 Pll C1 同步 该模块将接收到数据 一方面传给 LLC 接口模块 一方面传给发送模块实现转发 该模块的核心部件是两个双时钟 的 FIFO 因为在 QuartusII 开发软件内部有自带元件库 里面就有各种预先设计好的 FIFO 所以就直接调用 QuartusII 的库元件 这样可以节省开发时间 而且保证开发的可靠性 3 数据发送模块 该模块主要实现数据发送功能 节点占有总线时 将要发送数据以 100Mbits s 的速度 在所有端口发出 节点处于接收数据时 将接收端口接收的数据在其它端口以 100Mbits s 的速度转发 该模块主要由一个并 串转换电路构成 其将从链路层双 bit 输入的发送数据 转化为串行数据 4 锁相环 时钟发生器 本模块主要产生 1394PHY 芯片的内部时钟 由外部输入 24 576Mhz 的时钟经过锁相环产 生 49 152Mhz 和 98 304Mhz 两个时钟 前者作为 1394PHY 内部同步时钟并提供给 LLC 后者 提供给发送模块 保证数据以 100Mbits s 的的速率发送 5 与链路层接口电路 该接口遵从 1394 物理层 链路层接口规范 由链路层接口控制状态机 LREQ 接收电路 和物理层与链路层数据交互电路三部分组成 链路层接口控制状态机作为该接口电路的控制模块 该部分 VHDL 设计完全按照物理层 接口的工作流程 LREQ 接收电路负责接收 解码链路层在 LREQ 上发送的串行比特流 判 断链路层发起的服务是申请总线 读物理层寄存器 写物理层寄存器以及加速仲裁控制中的 哪种 物理层与链路层数据交互电路主要负责物理层 链路层间的数据交换 需要互传的数 据包括 LLC 发送数据包 物理层接收数据包 物理层向链路层发送其待读寄存器内容和 1394 总线事件指示 3 4 系统验证 评估板由 ISA 1394 卡和其上一个背板组成 ISA 1394 卡实现了 ISA 总线和 1394 总 线的转换 它一方面为 1394 链路层提供接口服务 另一方面还为主机提供总线接口 背板 上包括该 1394 物理层控制器和 1394 链路层控制器 验证策略是将评估板与 TI 公司的 PCI 1394 卡互联实现两者之间传输图像 h t t p w w w e l e c f a n s c o m 电子发烧友 h t t p b b s e l e c f a n s c o m 电子技术论坛 6 图 4 验证方案 在 pc1 上使用购买的 TI 公司 PCI 1394 卡 在 PC2 上使用评估板 从 PC1 发送一幅图 像 并设定 PCI 1394 卡的发送速度为 100Mbits s 在 PC2 端可以正确的接受并显示发送出 来的图像 因为 TI 的 PCI 1394 是市场上成熟的产品 可以肯定它是符合 IEEE1394 规范 的 现在自行设计的 ISA 1394 卡可以正确地与之保持通信 自然说明基于 FPGA 设计 1394 控制器的正确性 验证结果证明 该评估板可与标准PCI 1394 卡正常通信 因此 1394 物理程控制器完 全符合 IEEE Std 1394 1995 技术规范 4 结论 根据文中方案设计的 1394 物理层控制器 三端口 100M 线缆环境 完全实现了 IEEE Std 1394 1995 技术规范 并通过系统验证 结合 IEEE1394 链路层控制器一起使用就可 以构成一个完整的 IEEE1394 节点控制器 在该 1394 物理层控制器基础上 可以继续开发 支持 200Mbits s 和 400Mbits s 的 1394 物理层控制器 只需在 1394 接口电路部分加上速度编 解码电路 其它部分不变即可 参考文献 1 IEEE Std 1394 1995 S 2 Anderson D著 姜汉龙译 FireWire系统体系 M 北京 中国电力出版社 2001 3 Texas Instruments TSB41AB3 IEEE 1394a 2000

温馨提示

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

评论

0/150

提交评论