一种可编程的ieee1394总线监测系统及监测方法

文档序号:7929171阅读:205来源:国知局
专利名称:一种可编程的ieee1394总线监测系统及监测方法
技术领域
本发明涉及一种可编程IEEE1394总线控制器的范畴,特别是涉及一种可编程的 IEEE1394总线监测系统及监测方法,可以对IEEE1394总线数据进行有选择的记录,对工作 状态进行实时监测的集成电路芯片设计和对总线的监测方法。
背景技术
IEEE1394总线是一种商用总线,最初由A卯le公司提出,目的是为实时数字数据 传输提供一个高速接口,主要应用于各种数字多媒体设备。IEEE1394总线的数据传输方 式分为两种异步传输和等时传输。在异步传输时,收发节点要对收发的数据进行CRC校 验,目的节点在收到数据包后,要发送确认数据包到源节点,以保证数据包被正确的接收; IEEE1394总线为等时传输提供了固定的传输带宽,以保证有实时传输要求的数据被及时 传输。由于IEEE1394总线兼有可靠传输和实时传输的特点,而且具有很高的传输速度 (目前IEEE1394支持的速度为100Mbps、200Mbps和400Mbps,而IEEE1394b可支持高达 3. 2Gbps的数据传输率),因此IEEE1394总线得到了广泛的商业应用, 一些空间组织也选择 了 IEEE1394作为其未来卫星平台的高速数据总线。 开发电子设备的过程中,调试工具是不可或缺的,功能完备、强大、高效的调试设 备,可以帮助工程设计人员迅速的定位和解决问题,对设计工作可以起到事半功倍的作用。
目前在国内的市场上,IEEE1394总线监测和调试设备并不常见,其主要原因是 如果要对IEEE1394总线进行监测,按照协议的结构,必须在协议的物理层和链路层进行 设计,才能实现对串行总线上传输的所有数据包进行记录以及对总线状态进行监控的功 能。但是,目前我国并没有拥有自主知识产权的IEEE1394总线协议控制芯片,没有掌握 IEEE1394总线底层协议的核心技术。

发明内容
本发明的目的在于,在掌握IEEE1394总线协议核心技术的基础上,在协议的链路 层上进行设计,提供一种可编程的IEEE1394总线监测系统及监测方法,以实现对IEEE1394 总线的监测和调试。 为实现上述发明目的,本发明提供了一种可编程的IEEE1394总线监测系统的 设计,其特征在于,该监测系统在IEEE1394总线链路层的基础上设计,通过一个标准的 物理层协议控制芯片与IEEE1394串行总线相连,另一端连接用于控制的微处理器和用 于数据缓冲的高速先入先出存储器FIFO(First In Finst Out)或双口静态随机存储器 RAM (Random Access Memory);用于记录总线上传输的所有类型数据包,监测各种总线状 态; 所述的IEEE1394总线的监测系统包括控制接口 、高速数据接口 、控制寄存器、循
环冗余校验模块CRC、数据包收发模块、数据缓冲处理模块和链路层物理层接口 ; 所述的链路层物理层接口提供 总线规定的标准接口 ,总线上的所有数据包以及状态信息都通过该接口由物理层转发到监测系统,其中,总线上的数据转发到数
据缓冲处理模块,总线状态直接更新到控制寄存器的相应位; 所述的数据缓冲处理模块由异步FIFO组成,用于数据的缓冲和同步; 所述的控制寄存器,用于提供对监测系统的编程控制;通过对控制寄存器的编程,
实现记录总线数据和监测总线状态的编程控制; 所述的数据包收发模块是本发明的核心部分,该模块根据控制寄存器的要求,用 于有选择地记录总线上传输的数据包,并转发到高速数据接口,同时也可以实现数据包确 认功能; 所述的CRC校验模块,用于对串行总线上传输的数据包进行校验; 所述的控制接口 ,用于提供一个通用的4位、8位或16位的通用CPU接口 ,外部CPU
可以通过该接口存取内部的控制寄存器,以此来实现对监测系统的编程; 所述的高速数据接口 ,用于提供一个输出数据的接口 ,该接口可以直接对各种通
用的高速FIFO和双口 RAM进行操作。 所述的控制接口还提供了中断逻辑,当监测系统监测到总线的某种指定状态,或 满足某个中断触发条件时会发出中断申请,外部的CPU会在中断服务中读出总线状态的相 关信息。 所述的监测系统采用硬件描述语言HDL实现,采用同步设计原则,具有很好的时 序性能。 所述的监测系统具有可编程的功能,可以通过编程控制监测系统选择接收记录不 同类型的数据包,包括接收记录所有的数据包、接收记录指定类型的数据包、接收记录来 自某节点的数据包、接收记录发到某节点的数据包,以及各种数据包的组合接收记录;也可 以通过编程设定记录数据包和监测状态的触发条件。 本发明的另一目的在于提供一种可编程IEEE1394总线的监测方法,其特征在于, 所述的方法基于IEEE1394总线监测系统搭建,IEEE1394总线监测系统通过一个标准的物 理层协议控制芯片与IEEE1394串行总线相连,搭建的系统中还包括一个数据记录设备和 显示设备,分别与高速FIFO(或双口 RAM)和CPU相连,用于记录总线上传输的所有类型数 据包,监测显示各种总线状态; 如图3所示,所述的IEEE1394总线监测方法的具体的实施步骤包括 1)根据调试要求,外部CPU对控制寄存器进行初始化,指定要记录的数据包类型,
开始记录的触发条件、结束条件以及需监测的总线状态,然后启动总线开始工作; 2)物理层芯片通过物理层链路层接口转发IEEE1394串行总线上传输的所有数据
包及状态信息,其中,数据包转发到数据缓冲处理模块,总线状态直接更新到控制寄存器的
相应位; 3)满足触发条件后,监测系统开始记录初始化时指定的数据包和总线状态;
4)通过数据包收发模块对接收到的数据包进行分析,包括数据包的类型、目的地 址等信息,并通过循环冗余校验模块对串行总线上传输的数据包进行校验,如果数据包满 足初始化时的要求,则由高速数据接口输出满足记录条件的数据包,同时给出循环冗余校 验模块的结果; 5)如果总线的状态满足初始化时指定的条件,则产生中断,CPU通过控制接口读
5出状态信息; 6)满足监测结束条件或接到终止命令后,结束对数据包和总线状态的记录。
所述的可编程IEEE1394总线监测方法,在接收数据包的同时,链路层物理层接口 会实时监测总线的状态,当监测到总线的某种指定状态,或满足某个中断触发条件时,所述 的控制接口会向外部CPU发出中断申请,外部CPU会在中断服务中读出总线状态的相关信息。 所述的数据缓冲处理模块采用异步先入先出存储器实现数据的缓冲和同步。
所述的高速数据接口直接对各种通用的先入先出存储器或双口随机存储器进行 操作。 本发明的技术方案是在IEEE1394总线链路层的基础上设计的,可以记录总线上 传输的所有类型的数据包,监测各种总线状态;在接入总线时,以本发明为核心设计的总线 监测和调试设备作为一个总线的节点存在,具有一个正常节点所应具有的功能;本发明设 计使用硬件描述语言实现,采用同步设计原则,具有很好的时序性能;设计中未使用针对某 种FPGA的特定资源,具有较好的可移植性,可使用普通的FPGA实现或用于ASIC流片。
本发明的优点在于以本发明的IEEE1394监测系统为核心可以设计和构建 IEEE1394总线监测和调试设备,记录总线上传输的各种数据包,监测总线的工作状态。本发 明在使用时,具有灵活的可编程功能,通过对其内部寄存器的操作,可以选择要记录的数据 包,选择记录数据的各种触发方式,选择需要监测的各种总线状态信息。
总之,本发明的可编程IEEE1394总线监测系统及其方法可以记录IEEE1394串 行总线上传输的所有类型数据包,监测总线的工作状态,使用该监测芯片可以构建和设计 IEEE1394总线监测或调试设备。本发明在IEEE1394总线协议的链路层上设计,由其构建的 总线监测或调试设备可以作为一个正常的节点接入总线;该监测芯片具有可编程的功能, 监测设备可以根据调试要求选择需要记录的数据包类型或者记录数据包的触发条件;本发 明使用硬件描述语言HDL (Hardware DescriptionLanguage)实现,具有很好的可移植性,可 用于FPGA实现和ASIC流片。


图1为本发明的IEEE1394总线监测系统的功能结构示意图;
图2为以总线监测芯片构建的IEEE1394总线调试设备示意图;
图3为本发明的IEEE1394总线监测方法的流程示意图。
具体实施例方式
下面参照附图对本发明进行详细说明。 如图1所示,本发明的监测系统共由7部分组成控制接口 、高速数据接口 、控制寄
存器、CRC校验、数据收发模块、数据缓冲处理模块及链路层物理层接口模块。 链路层物理层接口部分提供IEEE1394总线规定的标准接口 ,总线上的所有数据
包以及状态信息都通过该接口由物理层转发到监测系统,该监测芯片把总线上的数据转发
到数据缓冲处理模块,把总线状态直接更新到控制寄存器的相应位。数据缓冲处理模块连
接链路层物理层接口和后续模块,由异步FIFO组成,起到数据缓冲和同步的作用。数据包
权利要求
一种可编程的IEEE1394总线监测系统,其特征在于,该监测系统在IEEE1394总线链路层的基础上设计,作为一个正常节点通过一个标准的物理层协议控制芯片与IEEE1394串行总线相连,另一端连接用于控制的微处理器和用于数据缓冲的高速先入先出存储器/高速双口随机存储器;用于记录总线上传输的所有类型数据包,监测各种总线状态;所述的IEEE1394总线监测系统包括控制接口、高速数据接口、控制寄存器、循环冗余校验模块、数据包收发模块、数据缓冲处理模块和链路层物理层接口;所述的链路层物理层接口提供IEEE1394总线规定的标准接口,总线上的所有数据包以及状态信息都通过该接口由物理层转发到监测系统,其中,总线上的数据转发到数据缓冲处理模块,把总线状态直接更新到控制寄存器的相应位;所述的数据缓冲处理模块由异步先入先出存储器组成,用于数据的缓冲和同步;所述的控制寄存器,用于提供对监测系统的编程控制;通过对控制寄存器的编程,实现记录总线数据和监测总线状态的编程控制;所述的数据包收发模块,用于根据控制寄存器的要求,用于有选择地记录总线上传输的数据包,并转发到高速数据接口,同时也可以实现数据包确认功能;所述的循环冗余校验模块,用于对串行总线上传输的数据包进行校验;所述的控制接口,用于提供一个通用的4位、8位或16位的CPU通用接口,外部CPU可以通过该接口存取内部的控制寄存器实现对监测系统的编程;所述的高速数据接口,用于提供一个输出数据的接口,该接口可以直接输出数据到各种通用的先入先出存储器或双口随机存储器。
2. 根据权利要求1所述的可编程的IEEE1394总线监测系统,其特征在于,所述的控制接口提供了中断逻辑,当监测系统监测到总线的某种指定状态,或满足某个中断触发条件时会发出中断申请,外部CPU会在中断服务中读出总线状态的相关信息。
3. 根据权利要求1所述的可编程的IEEE1394总线监测系统,其特征在于,所述的监测系统还包括一台数据处理记录设备和显示设备,与微处理器和高速先入先出存储器相连。
4. 根据权利要求1所述的可编程的IEEE1394总线监测系统,其特征在于,所述的监测系统核心模块采用硬件描述语言HDL实现,采用同步设计原则,具有很好的时序性能。
5. 根据权利要求1所述的可编程的IEEE1394总线监测系统,其特征在于,所述的监测系统具有可编程的功能,通过编程控制选择接收记录不同类型的数据包,包括接收记录所有的数据包、接收记录指定类型的数据包、接收记录来自某节点的数据包、接收记录发到某节点的数据包,以及各种数据包的组合接收记录;也可以通过编程设定记录数据包和监测状态的触发条件。
6. —种可编程的IEEE1394总线监测方法,所述的方法可以记录总线上传输的所有类型数据包,监测各种总线状态;所述的IEEE1394总线监测方法的具体的实施步骤包括1) 根据调试要求,外部CPU对控制寄存器进行初始化,指定要记录的数据包类型,开始记录的触发条件、结束条件以及需监测的总线状态,然后启动总线开始工作;2) 物理层芯片通过物理层链路层接口转发IEEE1394串行总线上传输的所有数据包及状态信息,其中,数据包转发到数据缓冲处理模块,总线状态直接更新到控制寄存器的相应位;
全文摘要
本发明涉及一种可编程的IEEE1394总线监测系统及监测方法,其特征在于,该监测系统在IEEE1394总线链路层的基础上设计,作为一个正常节点通过一个标准的物理层协议控制芯片与IEEE1394串行总线相连,另一端连接用于控制的微处理器和用于数据缓冲的高速先入先出存储器/高速双口随机存储器;用于记录总线上传输的所有类型数据包,监测各种总线状态;所述的IEEE1394总线监测系统包括控制接口、高速数据接口、控制寄存器、循环冗余校验模块、数据包收发模块、数据缓冲处理模块和链路层物理层接口;本发明的监测方法在接收数据包的同时,链路层物理层接口会实时监测总线的状态,以实现对IEEE1394总线的监测和调试。
文档编号H04L12/56GK101764794SQ20081024081
公开日2010年6月30日 申请日期2008年12月23日 优先权日2008年12月23日
发明者周庆瑞, 孙辉先, 曹松, 陈晓敏 申请人:中国科学院空间科学与应用研究中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1