新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 数字视频采集系统中1394总线模块的设计

数字视频采集系统中1394总线模块的设计

作者:时间:2011-11-14来源:网络收藏

  中传输与显示模块负责把捕获的信息或处理后的信息,发送给终端进 行存储,显示或进一步的处理。由于图像,尤其是视频图像,数据量大,实时性又高,对数 据的传输速率要求非常严格。现在应用较为普遍的传输总线有USB2.0 和IEEE1394a。这两 种高速串行总线的最高数据传输速率分别为480Mbps 和400Mbps。本系统的设计目标是成 为独立的系统,而不仅仅是PC 机的一个外设。而采用IEEE1394 总线与PC 机进行通信, 既不影响系统的独立性,又方便了系统的开发和调试工作。

  一、IEEE1394 高速串行总线

  1394 最初由苹果公司于1986 年公布,原名为火线(FireWire)高速串行传输线。1995 年由IEEE(Institute of Electrical and Electronic Engineers 电气与电子工程师学会)发布,称为 IEEE1394,正式名称为IEEE1394-1995。另外,索尼及德州仪器(TI)也制定了1394 的另外一 种规格: IEEE1394a,现在已经普遍用于领域,也称为i.Link 或Lynx。

  IEEE1394 高速串行总线的主要特点有:

  ⑴使用方便-支持热插拔、即插即用(Plug and Play,PnP)

  ⑵传输速率高-IEEE1394a 支持100M/200M/400Mbps 的数据传输率,IEEE11394b 则支 持800M/1.6G/3.2Gbps 的数据传输率

  ⑶具有很大的地址映射空间-1 条总线最多可支持63 个节点,每个节点具有256TB 的地址映射空间

  ⑷可以独立于主机系统进行操作-支持点对点及时通信

  ⑸线缆供电-最多可提供 45W 的功率

  ⑹支持等时和异步两种传输模式

  二、1394 总线传输模块设计

  外设与 PC 机的通信大致分为两种:并行方式和串行方式。并行端口比较复杂,需要许 多的软件方面的控制。相对而言,串行总线只有几根线组成,比并行总线简单,成本也低, 并且大部分串行总线都支持即插即用和热插拔,使用方便。目前应用较广的串行总线主要是 USB 和1394。本系统采用的是IEEE1394a 异步传输方式,由TI 公司的1394 链路层控制器 TSB12LV32 和1394 物理层控制器TSB41AB3 组成。1394 总线可以提供8~40V DC 的电压 以及最高可达1.5A 的电流,足以满足整个系统的供电需求。

  1、IEEE1394 协议

  为了简化硬件和软件的实现,IEEE 1394 定义了4 个协议层:

  ⑴总线管理层——负责总线配置和每个节点的活动管理:1394 的各个节点都实现了总 线管理层,以支持包括总线配置,电源配置在内的多种功能,具体包含的功能取决于节点的 实际能力,如该节点是否为根节点。根据不同的应用场合,每个节点的总线管理层所包含的 功能各异。但所有的节点,无论是根节点还是子节点,都必须包含支持总线自动配置这一功 能。

  ⑵事务层——支持有关异步传输读取,写入,锁定操作的请求和响应,由应用程序直接 调用驱动程序实现:事务层只支持异步传输。确切的说,事务层是一个软件层,1394 应用 程序与事务层以下的各层是相互隔离的,所有的传输请求都由事务层转换成完成这个请求所 需的一个或多个事务请求,产生的事务请求指示了事务类型——读取,写入,或者锁定。

  ⑶链路层——将事务层请求和响应转化为相应的包或者子事务,发送到串行总线上。本 层还对异步包和等时包进行地址或信道号的编解码,冗余校验:对于异步事务,链路层提供 了事务层和物理层之间的接口,请求者的链路层将来自事务层的事务请求转换成数据包,然 后发送到1394 总线上;响应者接收到数据包后,解码并传递给本地的事务层。对于等时事 务,链路层提供等时软件驱动程序和物理层之间的接口。传输期间,链路层负责生成将要通 过1394 总线发送的等时包。链路层还接收来自总线的等时包,并将包的信道号解码,如果 此节点是数据包的目标节点,则将包传给软件驱动程序。

  ⑷物理层——提供数据传输所必需的电气和机械接口,负责管理总线的仲裁进程,以确 保同一时刻只有一个节点在总线上传输数据:物理层提供链路层和1394 电缆之间的接口, 每个端口使用两对双绞线(TPA/TPA*和TPB/TPB*)发送信号,支持IEEE1394 协议操作所 需的多种事件,包括总线配置,总线仲裁以及数据传输等。

  实际的1394 电缆分4 芯和6 芯两种。区别是前者只有两对双绞线,采用差分信号传输 数据;后者还包括一对电源线。6 芯的电缆如图1 所示:


  2、链路层控制器

  TSB12LV32 是一款同时兼容IEEE 1394-1995 和 IEEE1394a 协议标准的链路层控制器 (LLC),具有2KB 的通用接收FIFO(GRF)与2KB 的通用发送FIFO(ATF),支持异步 与等时事务。微控制器接口支持8/16 位的可编程数据宽度,能够非常方便地与各种微控制 器,如Motorola 的68000 和ColdFire 处理器相连,工作时钟频率最高可达60MHz, I/O 管 脚同时兼容3.3V 和5V。

  TSB12LV32 提供直通模式(DMA)的数据传送,待发送数据无需事先打包,可以边 读取边传送,这使得异步包发送能够达到与等时传送相当的总线带宽,从而传输效率大大提高。TSB12LV32 内部的寄存器配置由DSP 完成,设备的发现与识别,驱动程序的安装,1394 控制寄存器的初始化等也需要DSP 进行响应和干预。DSP 充当了链路层控制器的微控制器 (MCU)。因为本系统在调试阶段,是PC 机的外设。为了实现两者之间的通信,必须安装 与本系统相对应的1394 设备驱动程序,这需要DSP 的控制和响应。而且1394 接口控制芯 片LLC 和PLC 的内部寄存器也需要DSP 进行配置和初始化,该过程可以用图2 来描述:


  上述过程中,DSP 最重要的工作就是,在1394 总线进行自标识期间,构造根节点PC 机 读取配置ROM 信息的quadlet 异步读响应包。配置ROM 包含有设备驱动程序的安装信息, 设备的功能信息等重要内容。PC 机在完全确认设备的相关信息后,才会发现和识别设备, 并安装相应的设备驱动,然后就可以调用相应的函数访问设备了。

  3、物理层控制器

  物理层控制器(PHY )TSB41AB3 提供3 个1394 端口,3.3V 单一供电,符合1394a 协议标准,支持等时传输和异步传输,支持100/200/400Mbps 的传输速率,可以与 TSB12LV21、TSB12LV31、TSB12LV32、TSB12LV41 或TSB12LV01A 等链路层控制器实现 无缝连接,具有较高的通信速率与可靠性。

  TSB41AB3 具有线缆电压监测功能,与链路层的接口支持总线隔离。此外,TSB41AB3 有多种封装形式以供选择——PHP48-pin,PAP48-pin,GQE80-ball 和ZQE64-ball。

  4、 LLC 与PHY 的接口电路设计

  链路层与物理层的接口电路如图 3 所示。微控制器的数据,地址和读写控制信号由DSP 控制;DM 端口连接到FPGA 中1394 传输控制模块,主要完成视频图像的实时传输; TSB41AB3 直接与1394 电缆连接,完成系统和PC 机之间的通信工作和数据传输。


  创新点:本系统采用IEEE1394 总线与PC 机进行通信,既不影响系统的独立性,又方便了 系统的开发和调试工作。提高了传输速度的同时,使视频不仅是PC 机的一个外设, 更是一个独立的系统。



评论


相关推荐

技术专区

关闭