一种可编程的IEEE1394总线监测系统及监测方法.pdf

上传人:奻奴 文档编号:1106388 上传时间:2018-03-31 格式:PDF 页数:10 大小:603.21KB
返回 下载 相关 举报
摘要
申请专利号:

CN200810240814.7

申请日:

2008.12.23

公开号:

CN101764794A

公开日:

2010.06.30

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H04L 29/06申请日:20081223|||公开

IPC分类号:

H04L29/06; H04L1/00; H04L12/56

主分类号:

H04L29/06

申请人:

中国科学院空间科学与应用研究中心

发明人:

周庆瑞; 孙辉先; 陈晓敏; 曹松

地址:

100084 北京市海淀区中关村南二条1号

优先权:

专利代理机构:

北京法思腾知识产权代理有限公司 11318

代理人:

杨小蓉

PDF下载: PDF下载
内容摘要

本发明涉及一种可编程的IEEE1394总线监测系统及监测方法,其特征在于,该监测系统在IEEE1394总线链路层的基础上设计,作为一个正常节点通过一个标准的物理层协议控制芯片与IEEE1394串行总线相连,另一端连接用于控制的微处理器和用于数据缓冲的高速先入先出存储器/高速双口随机存储器;用于记录总线上传输的所有类型数据包,监测各种总线状态;所述的IEEE1394总线监测系统包括:控制接口、高速数据接口、控制寄存器、循环冗余校验模块、数据包收发模块、数据缓冲处理模块和链路层物理层接口;本发明的监测方法在接收数据包的同时,链路层物理层接口会实时监测总线的状态,以实现对IEEE1394总线的监测和调试。

权利要求书

1.  一种可编程的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串行总线上传输的所有数据包及状态信息,其中,数据包转发到数据缓冲处理模块,总线状态直接更新到控制寄存器的相应位;
3)满足触发条件后,监测系统开始记录初始化时指定的数据包和总线状态;
4)通过数据包收发模块对接收到的数据包进行分析,包括数据包的类型、目的地址的信息,并通过循环冗余校验模块对串行总线上传输的数据包进行校验,如果数据包满足初始化时指定的要求,则由高速数据接口输出满足记录条件的数据包,同时给出循环冗余校验模块的结果;
5)如果总线的状态满足初始化时指定的条件,则产生中断,CPU通过控制接口读出状态信息;
6)满足监测结束条件或接到终止命令后,结束对数据包和总线状态的记录。

7.
  根据权利要求6所述的可编程的IEEE1394总线的监测方法,其特征在于,在接收数据包的同时,链路层物理层接口会实时监测总线的状态,当监测到总线的某种指定状态,或满足某个中断触发条件时,所述的控制接口会向外部CPU发出中断申请,外部CPU会在中断服务中读出总线状态的相关信息。

8.
  根据权利要求6所述的可编程的IEEE1394总线的监测方法,其特征在于,所述的数据缓冲处理模块采用异步先入先出存储器实现数据的缓冲和同步。

9.
  根据权利要求6所述的可编程的IEEE1394总线的监测方法,其特征在于,所述高速数据接口直接对各种通用的先入先出存储器或双口随机存储器进行操作。

说明书

一种可编程的IEEE1394总线监测系统及监测方法
技术领域
本发明涉及一种可编程IEEE1394总线控制器的范畴,特别是涉及一种可编程的IEEE1394总线监测系统及监测方法,可以对IEEE1394总线数据进行有选择的记录,对工作状态进行实时监测的集成电路芯片设计和对总线的监测方法。
背景技术
IEEE1394总线是一种商用总线,最初由Apple公司提出,目的是为实时数字数据传输提供一个高速接口,主要应用于各种数字多媒体设备。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、数据包收发模块、数据缓冲处理模块和链路层物理层接口;
所述的链路层物理层接口提供IEEE1394总线规定的标准接口,总线上的所有数据包以及状态信息都通过该接口由物理层转发到监测系统,其中,总线上的数据转发到数据缓冲处理模块,总线状态直接更新到控制寄存器的相应位;
所述的数据缓冲处理模块由异步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通过控制接口读出状态信息;
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组成,起到数据缓冲和同步的作用。数据包收发模块是本发明的核心部分,该模块根据控制寄存器的要求,可以有选择地记录总线上传输的数据包,并转发到高速数据接口,同时也可以实现数据包确认功能。CRC校验模块可以对串行总线上传输的数据包进行校验。控制寄存器提供了对监测芯片编程控制的功能。控制接口部分提供了一个通用CPU接口,外部CPU可以通过该接口存取内部的控制寄存器来实现对监测芯片的编程;该接口还提供了中断逻辑,当监测芯片监测到总线的某种指定状态,或满足某个中断触发条件时会发出中断申请,外部CPU会在中断服务中读出总线状态等相关信息。高速数据接口提供了一个输出数据的接口,该接口可以直接对各种通用FIFO和双口RAM进行操作。
如图2所示,一种使用本发明监测芯片构建总线监测或调试设备的建议设计示意图,监测芯片通过一个标准的物理层协议控制芯片与IEEE1394串行总线相连,另一端连接用于控制的微处理器和用于数据缓冲的高速FIFO(双口RAM);数据记录处理和显示设备与FIFO和CPU相连。
在进行总线调试时,根据调试监测要求,外部CPU对控制寄存器进行初始化,指定要记录的数据包类型,开始记录的触发条件以及需监测的总线状态,然后启动总线开始工作。监测芯片接收物理层芯片转发的,串行总线上传输的所有数据包,在数据包收发模块中对接收到的数据包进行分析,通过高速数据接口输出满足记录条件的数据包,同时给出CRC校验的结果。在接收数据包的同时链路层物理层接口会实时监测总线的状态,发现指定的状态后,更新控制寄存器,并向外部CPU发出中断申请,由外部的CPU读出总线的状态。
本实施例中,监测系统提供了三个外部接口,分别由内部的链路层物理层接口模块、高速数据接口模块以及控制接口模块来提供。链路层物理层接口部分一方面提供了IEEE1394总线协议定义的标准接口,以保证本发明可以与各种通用的物理层协议控制芯片的接口兼容,使用的信号有:8位双向数据线D,两位双向控制线Ctl,链路层请求信号Lreq,链路层电源状态信号LPS,链路层开启信号LinkOn,50Mhz的时钟信号Sclk等。其中50Mhz的时钟Sclk是芯片的基础工作时钟,除控制接口和控制寄存器的读写外,其它所有模块都使用该时钟或以该时钟为基础衍生成的时钟。另外该模块还通过双向总线与IP核内部的数据缓冲处理模块和控制寄存器模块相连。链路层物理层接口把物理层转发来的在串行总线上传输的各种数据包写入到数据缓冲处理单元,也可以从数据缓冲单元读取待发送的数据通过物理层芯片转发到总线。同时,该模块还通过链路层与物理层之间的接口信号指示总线上当前的工作状态,并将相应的状态位写入控制寄存器,以供外部的设备读取。
数据缓冲处理模块是一个异步FIFO,提供数据缓冲功能。其一端与链路层物理层接口相连,另一端与数据包收发模块相连。
数据包收发模块是本发明的核心模块,它通过32位的双向数据线分别与数据缓冲处理模块、CRC校验模块、高速数据接口模块相连,同时还接受控制寄存器的控制,以及输出状态到控制寄存器。该收发模块不主动向串行总线发送数据包,只在必要时(接收到发送至本节点的非广播异步包)发送确认包到总线,其重要功能是接收并分析总线上的数据包。链路层物理层接口会把在串行总线上传输的所有数据包全部转发到数据包收发模块,在该模块中分析接收到的数据类型、源节点、目的节点,同时进行CRC校验。根据控制寄存器指定的要求,在满足触发条件时,把需记录的数据包通过高速数据接口输出到外部的存储设备。所谓的触发条件是指可以通过控制寄存器设置的一定条件,当满足该条件时,监测芯片开始记录数据包。触发条件可以是总线的某个状态或者总线上传输的某个数据包。
CRC校验模块通过一些控制线和32位的双向数据线与收发模块相连,提供32位的循环冗余校验功能。
控制寄存器一端与控制接口相连,可以通过控制接口对控制寄存器进行存取操作。另外控制寄存器还与链路层物理层接口和数据收发模块相连。控制寄存器提供的功能是对监测芯片实现编程配置,以及提供一些总线工作的状态,供内部模块更新和外部设备查询。通过对控制寄存器的编程控制可以选择不同的数据包记录模式,可供选择的模式包括以下几种:
1.记录所有数据包;
2.记录所有等时包;
3.记录指定通道的等时包;
4.记录所有异步包;
5.记录某种类型的异步包(指定Tcode);
6.记录来自指定地址的异步包;
7.记录发往某指定地址的异步包;
8.记录普通物理层数据包;
9.记录自标识数据包;
10.记录所有广播包;
11.记录确认包。
控制接口模块提供了一个通用的CPU接口,外部的CPU可以通过该接口存取控制寄存器,实现对记录数据和监测状态的编程选择。该接口还提供中断功能,当监测芯片监测到总线的某种状态或指定的触发条件后,会向外部的CPU发出中断信号,CPU可在中断服务程序中通过控制接口读取所需的信息。
高速接口通过32位的数据线与数据包收发模块相连,该模块提供了一个外部高速FIFO(或双口RAM)的接口,数据宽度是32位,最高工作时钟是50Mhz。
图2给出的监测芯片通过一个标准的物理层芯片与串行总线相连;控制接口连接一个微控制器,用于实现监测控制;高速数据接口连接一个高速FIFO(或双口RAM),缓冲输出高速数据;另外一部分是数据显示记录和显示设备,该部分包括高速大容量磁盘存储器以及显示设备,可以存储并分析总线上传输的数据包,实时动态显示总线的工作状态等。

一种可编程的IEEE1394总线监测系统及监测方法.pdf_第1页
第1页 / 共10页
一种可编程的IEEE1394总线监测系统及监测方法.pdf_第2页
第2页 / 共10页
一种可编程的IEEE1394总线监测系统及监测方法.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《一种可编程的IEEE1394总线监测系统及监测方法.pdf》由会员分享,可在线阅读,更多相关《一种可编程的IEEE1394总线监测系统及监测方法.pdf(10页珍藏版)》请在专利查询网上搜索。

本发明涉及一种可编程的IEEE1394总线监测系统及监测方法,其特征在于,该监测系统在IEEE1394总线链路层的基础上设计,作为一个正常节点通过一个标准的物理层协议控制芯片与IEEE1394串行总线相连,另一端连接用于控制的微处理器和用于数据缓冲的高速先入先出存储器/高速双口随机存储器;用于记录总线上传输的所有类型数据包,监测各种总线状态;所述的IEEE1394总线监测系统包括:控制接口、高速数。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1