CN103685292A - 一种通用的协议转换装置及方法 - Google Patents
一种通用的协议转换装置及方法 Download PDFInfo
- Publication number
- CN103685292A CN103685292A CN201310711623.5A CN201310711623A CN103685292A CN 103685292 A CN103685292 A CN 103685292A CN 201310711623 A CN201310711623 A CN 201310711623A CN 103685292 A CN103685292 A CN 103685292A
- Authority
- CN
- China
- Prior art keywords
- protocol
- execution step
- signal
- data
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
一种通用的协议转换装置及方法,属于虚拟仿真试验领域。解决了现有通过软件进行协议转换的方法存在转换效率和转换精度低的问题。本发明包括两个JTAG接口模块、96针扩展接口模块、RJ45接口模块、FPGA、信号处理器和存储器,FPGA包括接收缓存单元、协议匹配模块、寄存器模块和发送缓存单元,将96针扩展接口模块输入的协议数据存储到接收缓存单元,同时送到协议匹配模块进行匹配,协议匹配模块完成协议匹配后,将结果存储在寄存器模块,接收缓存单元的数据和寄存器区的信息可以被信号处理器过外部存储器接口访问;通过信号处理器进行协议转换,并将转换结果发送出去。本发明具体应用在协议转换领域。
Description
技术领域
本发明属于虚拟仿真试验领域。
背景技术
分布式虚拟仿真试验基于以太网构建,由大量虚拟、半实物、实装设备参与。在实装设备参与虚拟仿真试验时,由于实装设备的数据格式与虚拟试验系统的数据格式不匹配,需要进行协议转换。针对该问题,一种解决方案是使用接口板卡将试验设备连接到计算机,并在计算机上开发协议转换软件,但软件转换存在效率较低、产生较大时间延迟且延迟时间不确定等缺点。而在实时性要求较高的仿真试验中,数据与指令传输的实时性和设备响应的实时性对于仿真试验的成败有着决定性的影响;因此,有必要研制基于硬件的实时协议转换装置。此外,针对不同的仿真试验系统及仿真试验实装设备,开发不同的协议转换装置,不仅会大大降低试验系统构建效率,还将浪费大量人力、物力、财力。
发明内容
本发明是为了解决现有通过软件进行协议转换的方法存在转换效率和转换精度低的问题,本发明提供了一种通用的协议转换装置及方法。
一种通用的协议转换装置,它包括两个JTAG接口模块、96针扩展接口模块、RJ45接口模块、FPGA、信号处理器和存储器,
所述的其中一个JTAG接口模块的烧写程序信号输出端与FPGA烧写程序信号输入端连接,另一个JTAG接口模块的烧写程序信号输出端与信号处理器烧写程序信号输入端连接,
96针扩展接口模块的上行协议数据信号输出端与FPGA4上行协议数据信号输入端连接,96针扩展接口模块的下行协议数据信号输入端与FPGA4下行协议数据信号输出端连接,
FPGA的中断信号输出端与信号处理器的中断信号输入端连接,FPGA的匹配结果信号输出端与信号处理器的匹配结果信号输入端连接,FPGA的上下协议数据输入输出端与信号处理器的上下协议数据输入输出端连接,
存储器的配置数据信号输出端与FPGA的配置数据信号输入端连接,所述的存储器的协议描述文件信号输出端同时与FPGA的协议描述文件信号输入端和信号处理器5的协议描述文件信号输入端连接,所述的存储器的存储信号输入输出端与信号处理器的存储信号输入输出端连接,所述的RJ45接口模块的上位机通信信号输入输出端与信号处理器的上位机通信信号输入输出端连接。
所述的FPGA包括接收缓存单元、协议匹配模块、寄存器模块和发送缓存单元,
所述的接收缓存单元的数据信号输入端与协议匹配模块数据信号输入端连接后作为FPGA上行协议数据信号输入端,接收缓存单元的上行协议数据信号输入端和发送缓存单元下行协议数据信号输入均作为的上下协议数据输入输出端与信号处理器的上下协议数据输入输出端连接,
发送缓存单元的数据信号输出端作为FPGA下行协议数据信号输出端,
寄存器模块的中断信号输出端作为FPGA的中断信号输出端,
寄存器模块的匹配结果信号输出端作为FPGA的匹配结果信号输出端。
一种通用的协议转换方法,它是基于下述装置实现的,所述装置包括两个JTAG接口模块、96针扩展接口模块、RJ45接口模块、FPGA、信号处理器和存储器,
其中一个JTAG接口模块的烧写程序信号输出端与FPGA烧写程序信号输入端连接,另一个JTAG接口模块的烧写程序信号输出端与信号处理器烧写程序信号输入端连接,
96针扩展接口模块的上行协议数据信号输出端与FPGA上行协议数据信号输入端连接,96针扩展接口模块的下行协议数据信号输入端与FPGA下行协议数据信号输出端连接,
FPGA的中断信号输出端与信号处理器的中断信号输入端连接,FPGA的匹配结果信号输出端与信号处理器的匹配结果信号输入端连接,FPGA的上下协议数据输入输出端与信号处理器的上下协议数据输入输出端连接,
存储器的配置数据信号输出端与FPGA的配置数据信号输入端连接,所述的存储器的协议描述文件信号输出端同时与FPGA的协议描述文件信号输入端和信号处理器的协议描述文件信号输入端连接,所述的存储器的存储信号输入输出端与信号处理器的存储信号输入输出端连接,所述的RJ45接口模块的上位机通信信号输入输出端与信号处理器的上位机通信信号输入输出端连接;
信号处理器包括协议转换模块、TCP网络接口模块和协议存储及加载模块,
协议存储及加载模块通过从存储器中读写协议描述文件,用于加载或存储协议描述文件,为协议转换做准备;
协议转换模块,用于对协议数据包进行元素位置重排和函数处理操作,将试验设备的硬件数据包转换为可供虚拟试验系统使用的资源,并把虚拟试验系统的资源转换为试验设备识别的硬件数据包;
TCP网络接口模块,用于使接入的试验设备与虚拟试验系统之间进行资源独立交互,
该通用的协议转换方法是由嵌入在信号处理器中软件实现的,所述软件依托于DSP/BIOS操作系统,所述通用的协议转换方法是通过在协议转换模块中嵌入的多线程技术实现,具体包括以下多个线程:
数据包接收中断处理线程、上行协议转换线程、下行协议转换线程、TCP数据包装配线程和TCP数据包处理线程,
上行协议转换线程,用于将实装设备数据转换成虚拟试验系统所需数据,获得SEM_In、QUE_In和LCK_In;
下行协议转换线程,用于将虚拟试验系统发送的数据转换成实装设备所需数据,
数据包接收中断处理线程,利用接收到的中断信号激活上行协议转换线程,通过使用信号量SEM_PacketReady实现,
TCP数据包装配线程,用于将接收到的上行协议转换线程处理后的信号发送到虚拟试验系统中订购了这个对象或者相关属性的成员,
TCP数据包处理线程,解析从虚拟试验系统中接收到的数据包,该线程发出SEM_Out、QUE_Out和LCK_Out,且SEM_Out用于激活下行协议转换线程;
其中,SEM_In表示输入信号量,用于线程同步和互斥,有计数功能;
QUE_In表示输入队列,用于实现线程间同步和资源的共享;
LCK_In表示输入资源锁,用于实现对共享资源的互斥;
SEM_Out表示输出信号量,用于线程同步和互斥,有计数功能;
QUE_Out表示输出队列,用于实现线程间同步和资源的共享;
LCK_Out表示输出资源锁,用于实现对共享资源的互斥。
本发明所述的一种通用的协议转换装置及方法的转换效率提高了30%以上,转换精度提高了20%以上,且具备通用硬件接口,可适配不同的接口功能板;支持协议更新、存储,及上电自动加载;能同时加载64条协议。
附图说明
图1为本发明所述的一种通用的协议转换装置的原理示意图;
图2为具体实施方式二所述的FPGA的原理示意图;
图3为具体实施方式三所述的协议匹配单元的原理示意图;
图4为具体实施方式五所述的信号处理器的原理示意图;
图5为具体实施方式五所述的协议转换模块的原理示意图;
图6为具体实施方式六所述的上行协议转换线程的数据处理过程流程图;
图7为具体实施方式七所述的下行协议转换线程的数据处理过程流程图;
图8为具体实施方式八所述的TCP数据包装配线程的数据处理过程流程图;
图9为具体实施方式九所述的TCP数据包处理线程的数据处理过程流程图;
图10为具体实施方式十所述的协议存储及加载模块数据处理过程流程图。
具体实施方式
具体实施方式一:参见图1说明本实施方式,本实施方式所述的一种通用的协议转换装置,它包括两个JTAG接口模块1、96针扩展接口模块2、RJ45接口模块3、FPGA4、信号处理器5和存储器6,
所述的其中一个JTAG接口模块1的烧写程序信号输出端与FPGA4烧写程序信号输入端连接,另一个JTAG接口模块1的烧写程序信号输出端与信号处理器5烧写程序信号输入端连接,
96针扩展接口模块2的上行协议数据信号输出端与FPGA4上行协议数据信号输入端连接,96针扩展接口模块2的下行协议数据信号输入端与FPGA4下行协议数据信号输出端连接,
FPGA4的中断信号输出端与信号处理器5的中断信号输入端连接,FPGA4的匹配结果信号输出端与信号处理器5的匹配结果信号输入端连接,FPGA4的上下协议数据输入输出端与信号处理器5的上下协议数据输入输出端连接,
存储器6的配置数据信号输出端与FPGA4的配置数据信号输入端连接,所述的存储器6的协议描述文件信号输出端同时与FPGA4的协议描述文件信号输入端和信号处理器5的协议描述文件信号输入端连接,所述的存储器6的存储信号输入输出端与信号处理器5的存储信号输入输出端连接,所述的RJ45接口模块3的上位机通信信号输入输出端与信号处理器5的上位机通信信号输入输出端连接。
具体实施方式二:参见图1和2说明本实施方式,本实施方式与具体实施方式一所述的一种通用的协议转换装置的区别在于,所述的FPGA4包括接收缓存单元4-1、协议匹配模块4-2、寄存器模块4-3和发送缓存单元4-4,
所述的接收缓存单元4-1的数据信号输入端与协议匹配模块4-2数据信号输入端连接后作为FPGA4上行协议数据信号输入端,接收缓存单元4-1的上行协议数据信号输入端和发送缓存单元4-4下行协议数据信号输入均作为FPGA4的上下协议数据输入输出端与信号处理器5的上下协议数据输入输出端连接,
发送缓存单元4-4的数据信号输出端作为FPGA4下行协议数据信号输出端,
寄存器模块4-3的中断信号输出端作为FPGA4的中断信号输出端,
寄存器模块4-3的匹配结果信号输出端作为FPGA4的匹配结果信号输出端。
本实施方式中,将96针扩展接口模块2输入的协议数据存储到接收缓存单元4-1,同时送到协议匹配模块4-2进行匹配,协议匹配模块4-2完成协议匹配后,将结果存储在寄存器模块4-3,接收缓存单元4-1的数据和寄存器区的信息可以被信号处理器5通过外部存储器接口访问;另外,向实装设备发送的数据包,经过发送缓存单元4-4缓存后,通过96针接口发送出去。
具体实施方式三:参见图1、2和3说明本实施方式,本实施方式与具体实施方式三所述的一种通用的协议转换装置的区别在于,所述的协议匹配模块4-2的获得过程为,将64个协议匹配单元4-2-1组成协议匹配单元阵列,所述的协议匹配单元阵列加上辅助功能逻辑,最终得到协议匹配模块4-2;
协议匹配单元4-2-1用于将接收到的上行协议数据信号进行协议匹配,并将匹配结果发送给信号处理器5的匹配结果信号输入端,
所述的辅助功能逻辑包括64位与模块、64位或模块、64位优先级编码器和8位触发器,
64位优先级编码器对match_ris进行优先级编码,match_ris为匹配出现信号,
64位与模块使用两级8位与模块实现,64位与模块用于将接收到的done信号进行与运算,获得所有匹配是否完成信号alldone和其上升沿信号alldone_ris;所述的done为匹配完成信号;
64位或模块使用两级8位或模块实现,64位或模块用于将接收到的match信号进行或运算,获得最终匹配结果信号hasmatch,所述的match为匹配结果信号;
64位优先级编码器基于16位优先级编码器级联构成,所述的64位优先级编码器基于16位优先级编码器级联构成的具体过程为,首先由16位优先级编码器级联构成32位优先级编码器,然后由32位优先级编码器级联构成64位优先级编码器;
所述的协议匹配单元4-2-1包括字节计数器、帧头数据区、比较单元、匹配完成信号生成逻辑、匹配信号生成逻辑和上升沿检测逻辑,
协议匹配单元4-2-1进行协议匹配的具体过程为,字节计数器对数据包字节计数,直到计数值与帧头长度相等为止,根据计数值从帧头数据区取出帧头字节,
帧头字节与数据包字节在比较单元中进行比较获得result,并将result同时发送至匹配完成信号生成逻辑和匹配信号生成逻辑,其中,result为比较结果信号,
比较单元是带记忆功能的比较模块,它能保存上次比较的结果,
当匹配结束时,匹配完成信号生成逻辑输出的done有效;
当数据包与某帧头匹配时,匹配信号生成逻辑输出的match有效,并将match作为上升沿检测逻辑的输入,得到match_ris;
所述的帧头数据区是包含16个字节空间的存储区,存储一个协议帧头的信息,其中,第一个字节存储帧头的长度,其余15个字节依次存储帧头内容。
本实施方式中,所述的16位优先级编码器为组合逻辑模块。
协议匹配模块4-2的基本原理是,设置存储器存储各个帧头的内容和帧头的长度,并设置若干协议匹配单元,每个协议匹配单元负责一个协议帧头的比较,当硬件数据包来临时,协议匹配单元将数据包的第一个接收的字节与帧头的第一个字节比较,如果第一个字节相同则将数据包第二个字节与帧头的第二个字节比较,当某一个字节不相同或者已匹配的字节相同且匹配完帧头的所有字节时,该协议匹配单元匹配完成,得到比较结果,当所有协议匹配单元都完成匹配后,可以得到最终匹配结果。
具体实施方式四:参见图1、2和3说明本实施方式,本实施方式与具体实施方式三所述的一种通用的协议转换装置的区别在于,所述的信号处理器5采用TMS320DM642型DSP处理器实现,FPGA4是采用Altera公司的EP3C55F484I7型FPGA。
具体实施方式五:参见图1至5说明本实施方式,一种通用的协议转换方法,它是基于下述装置实现的,所述装置包括两个JTAG接口模块1、96针扩展接口模块2、RJ45接口模块3、FPGA4、信号处理器5和存储器6,
其中一个JTAG接口模块1的烧写程序信号输出端与FPGA4烧写程序信号输入端连接,另一个JTAG接口模块1的烧写程序信号输出端与信号处理器5烧写程序信号输入端连接,
96针扩展接口模块2的上行协议数据信号输出端与FPGA4上行协议数据信号输入端连接,96针扩展接口模块2的下行协议数据信号输入端与FPGA4下行协议数据信号输出端连接,
FPGA4的中断信号输出端与信号处理器5的中断信号输入端连接,FPGA4的匹配结果信号输出端与信号处理器5的匹配结果信号输入端连接,FPGA4的上下协议数据输入输出端与信号处理器5的上下协议数据输入输出端连接,
存储器6的配置数据信号输出端与FPGA4的配置数据信号输入端连接,所述的存储器6的协议描述文件信号输出端同时与FPGA4的协议描述文件信号输入端和信号处理器5的协议描述文件信号输入端连接,所述的存储器6的存储信号输入输出端与信号处理器5的存储信号输入输出端连接,所述的RJ45接口模块3的上位机通信信号输入输出端与信号处理器5的上位机通信信号输入输出端连接;
信号处理器5包括协议转换模块5-2、TCP网络接口模块5-3和协议存储及加载模块5-1,
协议存储及加载模块5-1通过从存储器6中读写协议描述文件,用于加载或存储协议描述文件,为协议转换做准备;
协议转换模块5-2,用于对协议数据包进行元素位置重排和函数处理操作,将试验设备的硬件数据包转换为可供虚拟试验系统使用的资源,并把虚拟试验系统的资源转换为试验设备识别的硬件数据包;
TCP网络接口模块5-3,用于使接入的试验设备与虚拟试验系统之间进行资源独立交互,
该通用的协议转换方法是由嵌入在信号处理器5中软件实现的,所述软件依托于DSP/BIOS操作系统,
所述通用的协议转换方法是通过在协议转换模块5-2中嵌入的多线程技术实现,具体包括以下多个线程:
数据包接收中断处理线程、上行协议转换线程、下行协议转换线程、TCP数据包装配线程和TCP数据包处理线程,
上行协议转换线程,用于将实装设备数据转换成虚拟试验系统所需数据,获得SEM_In、QUE_In和LCK_In;
下行协议转换线程,用于将虚拟试验系统发送的数据转换成实装设备所需数据,
数据包接收中断处理线程,利用接收到的中断信号激活上行协议转换线程,通过使用信号量SEM_PacketReady实现,
TCP数据包装配线程,用于将接收到的上行协议转换线程处理后的信号发送到虚拟试验系统中订购了这个对象或者相关属性的成员,
TCP数据包处理线程,解析从虚拟试验系统中接收到的数据包,该线程发出SEM_Out、QUE_Out和LCK_Out,且SEM_Out用于激活下行协议转换线程;
其中,SEM_In表示输入信号量,用于线程同步和互斥,有计数功能;
QUE_In表示输入队列,用于实现线程间同步和资源的共享;
LCK_In表示输入资源锁,用于实现对共享资源的互斥;
SEM_Out表示输出信号量,用于线程同步和互斥,有计数功能;
QUE_Out表示输出队列,用于实现线程间同步和资源的共享;
LCK_Out表示输出资源锁,用于实现对共享资源的互斥。
本实施方式中,通过设置信号量实现各线程间同步,其中,数据包接收中断处理线程和上行协议转换线程的同步是采用信号量SEM_PacketReady实现,通过设置队列实现线程间的通信,通过设置资源锁实现对相关数据的原子操作,
具体实施方式六:参见图1至6说明本实施方式,本实施方式与具体实施方式五所述的一种通用的协议转换方法的区别在于,所述的上行协议转换线程的处理过程为,
步骤A1、初始化从FPGA4发送过来的硬件应用协议数据包,执行步骤A2;
步骤A2、利用函数pend(SEM_PacketReady)的等待信号量SEM_PacketReady,待信号量SEM_PacketReady来到后,用于激活上行协议转换线程,执行步骤A3;
步骤A3、读取数据包长度和协议信号,执行步骤四;
步骤A4、判断数据包长度==0或协议信号==0xFFF,结果为真,执行步骤A2,否则执行步骤A5;
步骤A5、定位源协议和目的协议描述信息,执行步骤A6;
步骤A6、分配或者调整原协议元素集存储区,执行步骤A7;
步骤A7、元素集存储区清0,执行步骤A8;
步骤A8、解析源协议元素,执行步骤A9;
步骤A9、分配或者调整资源对象缓存区,执行步骤A10;
步骤A10、拷贝资源对象至缓冲区,执行步骤A11;
步骤A11、函数处理,将资源对象的数据格式转化成源协议的数据格式,执行步骤A12;
步骤A12、函数处理完成后,资源对象内容得到更新,再将缓冲区的内容拷贝至资源对象实例化区,执行步骤A13;
步骤A13、通过函数put(QUE_In)在队列QUE_In尾添加元素项,执行步骤A14;
步骤A14、通过函数post(SEM_In)发送信号量SEM_In,执行步骤A2。
本实施方式中,在上行协议转换时,将源协议元素值解析至元素集存储区域,将资源对象实例化区的内容拷贝至缓冲区,函数处理过程在源协议元素集存储区和资源对象实例化缓冲区之间进行,函数处理完成后,对象内容得到更新,再将缓冲区的内容拷贝至资源对象实例化区,函数处理的工作是将资源对象的数据格式转化成源协议的数据格式,更新资源对象实例化区域后,将对象号添加到QUE_In队列,并发出SEM_In信号量,激活TCP数据包装配线程。
具体实施方式七:参见图1至7说明本实施方式,本实施方式与具体实施方式六所述的一种通用的协议转换方法的区别在于,所述的下行协议转换线程的处理过程为,
步骤B1、初始化TCP数据包处理线程发送过来的数据,执行步骤B2;
步骤B2、利用函数pend(SEM_Out)的等待信号量SEM_Out,待信号量SEM_Out来到后,用于激活下行协议转换线程,执行步骤B3;
步骤B3、利用函数get(QUE_Out)得到队列QUE_Out尾的元素项,即得到资源对象的对象号,执行步骤B4;
步骤B4、定位原协议描述信息,执行步骤B5;
步骤B5、定位目的协议描述信息,执行步骤B6;
步骤B6、分配或者调整资源对象缓存区,执行步骤B7;
步骤B7、利用函数pend(LCK_ObjOut)锁住资源对象直至拷贝完成,执行步骤B8;
步骤B8、拷贝资源对象从实例化区至缓冲区,执行步骤B9;
步骤B9、利用函数post(LCK_ObjOut)锁住资源对象直至拷贝完成,执行步骤B10;
步骤B10、分配或者调整目的协议元素集存储区;执行步骤B11;
步骤B11、生成目的协议必选元素;执行步骤B12;
步骤B12、生成目的协议可选元素;执行步骤B13;
步骤B13、输出包含信号量SEM_Out的数据包,,执行步骤B2。
本实施方式中,下行协议转换线程从队列QUE_Out中取出对象的对象号,然后定位对象的协议描述信息和对象的实例化区域,在下行协议转换线程中设置资源对象缓冲区缓存对象数据,函数处理过程在资源对象缓冲区和目的协议集存储区之间进行,先生成必选元素,再生成可选元素。与上行协议转换线程不同,下行协议转换线程不是按照元素在协议描述信息中的索引号存储元素值,而是依次存储生成的必选元素和可选元素,以方便数据包的输出。
具体实施方式八:参见图1至8说明本实施方式,本实施方式与具体实施方式七所述的一种通用的协议转换方法的区别在于,所述的TCP数据包装配线程的处理过程为,
步骤C1、初始化从上行协议转换线程发来的数据;执行步骤C2;
步骤C2、利用函数pend(SEM_In)的等待信号量SEM_In,待信号量SEM_In来到后,用于激活TCP数据包装配线程,执行步骤C3;
步骤C3、利用函数get(QUE_In)获得队列QUE_In尾的元素项,即得到资源对象的对象号,执行步骤C4;
步骤C4、判断资源接入设备是否加入试验系统,结果为真,执行步骤C5,结果为假,执行步骤C2;
步骤C5、分配或者调整资源对象存储区,执行步骤C6;
步骤C6、拷贝资源对象至缓存区,执行步骤C7;
步骤C7、获取发布列表节点,执行步骤C8;
步骤C8、判断是否遍历完成发布列表,结果为真,执行步骤C2,结果为假,执行步骤C9;
步骤C9、判断成员已运行,是否未连接,结果为真,执行步骤C10,结果为假,执行步骤步骤C11;
步骤C10、发送连接命令并等待,执行步骤C11;
步骤C11、判断资源对象号是否相符,结果为真,执行步骤C12,结果为假,执行步骤C7;
步骤C12、判断成员已运行,且连接,结果为真,执行步骤C13,结果为假,执行步骤C7;
步骤C13、装配属性值更新消息包或对象值更新消息包,执行步骤C14;
步骤C14、利用函数put(QUE_SndTcp)在队列QUE_SndTcp尾添加元素项,执行步骤C15;
步骤C15、利用函数post(SEM_SndTcp)的发送信号量SEM_SndTcp,执行步骤C7。
本实施方式中,TCP数据包装配线程激活后,确定更新的对象,然后遍历发布列表,将更新后的数据发送到订购了这个对象或者相关属性的成员,发送消息包前若检测到尚未建立连接,则首先向TCP发送线程发送创建连接命令。
TCP数据包装配线程设置资源对象缓冲区,将资源对象实例化区的内容拷贝至该区域,使得在发布对象值或属性值更新消息期间,上行协议转换过程仍可更新实例化区域,即发布过程和更新过程互不影响。在操作资源对象实例化区时,伴随获取和释放资源锁LCK_ObjIn,从而保证对实例化区域操作的原子性。发送连接命令后,当发送的信号量有效时,表明成功建立连接。
具体实施方式九:参见图1至9说明本实施方式,本实施方式与具体实施方式八所述的一种通用的协议转换方法的区别在于,所述的TCP数据包处理线程的处理过程为,
步骤D1、利用函数pend(SEM_RevTcp)的等待信号量SEM_RevTcp,待信号量SEM_RevTcp来到后,用于激活TCP数据包处理线程,执行步骤D2;
步骤D2、利用函数get(QUE_RcvTcp)得到队列QUE_RcvTcp尾的元素项,执行步骤D3;
步骤D3、获取数据包类型,执行步骤D4;
步骤D4、判断数据包类型,当数据包类型为属性值数据包时,执行步骤D5,当数据包类型为对象值数据包时,执行步骤D6;
步骤D5、对属性值数据包进行解析,执行步骤D51;
步骤D51、进行查找成员订购表记录,执行步骤D52;
步骤D52、判断是否完成查找成员订购表记录,结果为真,执行步骤D1,结果为假,执行步骤D53;
步骤D53、获取源对象号、协议索引号,执行步骤D54;
步骤D54、更新资源对象属性值,执行步骤D55;
步骤D55、清除更新状态比特位,执行步骤D56;
步骤D56、判断更新状态是否为0,结果为真,执行步骤D57,结果为假,执行步骤D51;
步骤D57,利用函数put(QUE_Out)在队列QUE_Out尾添加元素项,执行步骤D58;
步骤D58、通过函数post(SEM_Out)发送信号量SEM_Out,执行步骤D59;
步骤D59、设置对象属性值更新状态,执行步骤D51;
步骤D6、对对象值数据包进行解析,执行步骤D61;
步骤D61、进行查找成员订购表记录,执行步骤D62;
步骤D62、判断是否完成查找成员订购表记录,结果为真,执行步骤D1,结果为假,执行步骤D63;
步骤D63、获取资源对象号、协议索引号,执行步骤D64;
步骤D64、更新资源对象,执行步骤D65;
步骤D65、利用函数put(QUE_Out)在队列QUE_Out尾添加元素项,执行步骤D66;
步骤D66、通过函数post(SEM_Out)发送信号量SEM_Out,执行步骤D67;
步骤D67、设置对象值更新状态,执行步骤D61。
本实施方式中,TCP数据包处理线程解析接收到的数据包,如果是对象值更新消息包,则查询订购列表并更新对象实例化区域,然后将对象的对象号添加到QUE_Out队列,再激活下行协议转换线程将对象转换为硬件协议数据包;如果是属性值更新消息包,则根据订购列表的查询结果更新对象的部分实例化区域,然后清除更新状态的相应比特位,当更新状态的各比特位都被清除时,将对象的对象号添加到QUE_Out队列,并激活下行协议转换线程执行,更新对象实例化区域时,需要使用资源锁LCK_ObjOut进行保护。
具体实施方式十:参见图1至10说明本实施方式,本实施方式与具体实施方式五所述的一种通用的协议转换方法的区别在于,所述的协议存储及加载模块5-1的处理过程为,
步骤E1、调用freeGInfo过程释放上次执行时为gInfo变量分配的存储空间,执行步骤E2;
步骤E2,为gInfo.raw分配存储区,执行步骤E3;
步骤E3、拷贝协议描述文件内容至gInfo.raw指向区域,执行步骤E4;
步骤E4、给*gInfo.raw的指针赋值为gInfo.protoNum,执行步骤E5;
步骤E5、给*(gInfo.raw+2)的指针赋值为gInfo.resNum,执行步骤E6;
步骤E6、为gInfo.resInfos分配存储区,并初始化该存储区使内容为0,执行步骤E7;
步骤E7、为gInfo.protoInfos分配存储区,并初始化该存储区使内容为0,执行步骤E8;
步骤E8、设置gInfo.resInfos数组的值,执行步骤E9;
步骤E9、设置gInfo.protoInfos数组的值,执行步骤E10;
步骤E10、设置FPGA帧头数据区域,处理完成。
本实施方式中,可根据虚拟仿真系统及实装设备的数据格式生成对应的协议描述文件,动态加载到本发明装置中,并存储在FLASH中,当协议固定后,上电后可将FLASH中的协议信息自动加载到FPGA的协议匹配单元及DSP协议解析软件中。如果实装设备协议格式改变,可重新生成协议描述文件,并重新加载到FLASH中。由此,既实现了对不同实装设备的通用性,又保证了针对同一实装设备只需一次加载协议描述文件。
协议描述文件包含了协议的数目、对象的数目、各协议的描述信息、对象项信息(ResItem)多种信息。该文件的数据使用二进制形式存放。
执行协议描述信息加载(更新)过程,将信息加载至全局唯一的GlobalInfo变量gInfo中。由于协议描述文件按预定义的二进制格式存储信息,因此加载(更新)的过程主要包含内存空间分配、指针赋值(内存区域映射)等操作。协议描述信息加载(更新)过程(getGInfo)的流程图10所示。
在每次执行协议描述信息加载过程时,首先调用freeGInfo过程释放上次执行时为gInfo变量分配的一系列存储空间。然后分别加载对象项信息数组和协议信息数组,并设置协议的属性名称列表指针。最后,初始化FPGA帧头数据存储区域,为协议匹配做好准备。
具体实施方式十一:参见图1说明本实施方式,本实施方式与具体实施方式一所述的一种通用的协议转换方法的区别在于,所述的存储器6包括EPCS模块6-1、Flash模块6-2和SDRAM模块6-3,
所述的EPCS模块6-1的信号输出端为存储器6的配置数据信号输出端;
Flash模块6-2的信号输出端为存储器6的协议描述文件信号输出端;
SDRAM模块6-3的信号输入输出端为存储器6的存储信号输入输出端。
Claims (10)
1.一种通用的协议转换装置,其特征在于,它包括两个JTAG接口模块(1)、96针扩展接口模块(2)、RJ45接口模块(3)、FPGA(4)、信号处理器(5)和存储器(6),
所述的其中一个JTAG接口模块(1)的烧写程序信号输出端与FPGA(4)烧写程序信号输入端连接,另一个JTAG接口模块(1)的烧写程序信号输出端与信号处理器(5)烧写程序信号输入端连接,
96针扩展接口模块(2)的上行协议数据信号输出端与FPGA(4)上行协议数据信号输入端连接,96针扩展接口模块(2)的下行协议数据信号输入端与FPGA(4)下行协议数据信号输出端连接,
FPGA(4)的中断信号输出端与信号处理器(5)的中断信号输入端连接,FPGA(4)的匹配结果信号输出端与信号处理器(5)的匹配结果信号输入端连接,FPGA(4)的上下协议数据输入输出端与信号处理器(5)的上下协议数据输入输出端连接,
存储器(6)的配置数据信号输出端与FPGA(4)的配置数据信号输入端连接,所述的存储器(6)的协议描述文件信号输出端同时与FPGA(4)的协议描述文件信号输入端和信号处理器(5)的协议描述文件信号输入端连接,所述的存储器(6)的存储信号输入输出端与信号处理器(5)的存储信号输入输出端连接,所述的RJ45接口模块(3)的上位机通信信号输入输出端与信号处理器(5)的上位机通信信号输入输出端连接。
2.根据权利要求1所述的一种通用的协议转换装置,其特征在于,所述的FPGA(4)包括接收缓存单元(4-1)、协议匹配模块(4-2)、寄存器模块(4-3)和发送缓存单元(4-4),
所述的接收缓存单元(4-1)的数据信号输入端与协议匹配模块(4-2)数据信号输入端连接后作为FPGA(4)上行协议数据信号输入端,接收缓存单元(4-1)的上行协议数据信号输入端和发送缓存单元(4-4)下行协议数据信号输入均作为FPGA(4)的上下协议数据输入输出端与信号处理器(5)的上下协议数据输入输出端连接,
发送缓存单元(4-4)的数据信号输出端作为FPGA(4)下行协议数据信号输出端,
寄存器模块(4-3)的中断信号输出端作为FPGA(4)的中断信号输出端,
寄存器模块(4-3)的匹配结果信号输出端作为FPGA(4)的匹配结果信号输出端。
3.根据权利要求2所述的一种通用的协议转换装置,其特征在于,所述的协议匹配模块(4-2)的获得过程为,将64个协议匹配单元(4-2-1)组成协议匹配单元阵列,所述的协议匹配单元阵列加上辅助功能逻辑,最终得到协议匹配模块(4-2);
协议匹配单元(4-2-1)用于将接收到的上行协议数据信号进行协议匹配,并将匹配结果发送给信号处理器(5)的匹配结果信号输入端,
所述的辅助功能逻辑包括64位与模块、64位或模块、64位优先级编码器和8位触发器,
64位优先级编码器对match_ris进行优先级编码,match_ris为匹配出现信号,
64位与模块使用两级8位与模块实现,64位与模块用于将接收到的done信号进行与运算,获得所有匹配是否完成信号alldone和其上升沿信号alldone_ris;所述的done为匹配完成信号;
64位或模块使用两级8位或模块实现,64位或模块用于将接收到的match信号进行或运算,获得最终匹配结果信号hasmatch,所述的match为匹配结果信号;
64位优先级编码器基于16位优先级编码器级联构成,所述的64位优先级编码器基于16位优先级编码器级联构成的具体过程为,首先由16位优先级编码器级联构成32位优先级编码器,然后由32位优先级编码器级联构成64位优先级编码器;
所述的协议匹配单元(4-2-1)包括字节计数器、帧头数据区、比较单元、匹配完成信号生成逻辑、匹配信号生成逻辑和上升沿检测逻辑,
协议匹配单元(4-2-1)进行协议匹配的具体过程为,字节计数器对数据包字节计数,直到计数值与帧头长度相等为止,根据计数值从帧头数据区取出帧头字节,
帧头字节与数据包字节在比较单元中进行比较获得result,并将result同时发送至匹配完成信号生成逻辑和匹配信号生成逻辑,其中,result为比较结果信号,
比较单元是带记忆功能的比较模块,它能保存上次比较的结果,
当匹配结束时,匹配完成信号生成逻辑输出的done有效;
当数据包与某帧头匹配时,匹配信号生成逻辑输出的match有效,并将match作为上升沿检测逻辑的输入,得到match_ris;
所述的帧头数据区是包含16个字节空间的存储区,存储一个协议帧头的信息,其中,第一个字节存储帧头的长度,其余15个字节依次存储帧头内容。
4.根据权利要求1、2或3所述的一种通用的协议转换装置,其特征在于,所述的信号处理器(5)采用TMS320DM642型DSP处理器实现,FPGA(4)是采用Altera公司的EP3C55F484I7型FPGA。
5.一种通用的协议转换方法,它是基于下述装置实现的,所述装置包括两个JTAG接口模块(1)、96针扩展接口模块(2)、RJ45接口模块(3)、FPGA(4)、信号处理器(5)和存储器(6),
其中一个JTAG接口模块(1)的烧写程序信号输出端与FPGA(4)烧写程序信号输入端连接,另一个JTAG接口模块(1)的烧写程序信号输出端与信号处理器(5)烧写程序信号输入端连接,
96针扩展接口模块(2)的上行协议数据信号输出端与FPGA(4)上行协议数据信号输入端连接,96针扩展接口模块(2)的下行协议数据信号输入端与FPGA(4)下行协议数据信号输出端连接,
FPGA(4)的中断信号输出端与信号处理器(5)的中断信号输入端连接,FPGA(4)的匹配结果信号输出端与信号处理器(5)的匹配结果信号输入端连接,FPGA(4)的上下协议数据输入输出端与信号处理器(5)的上下协议数据输入输出端连接,
存储器(6)的配置数据信号输出端与FPGA(4)的配置数据信号输入端连接,所述的存储器(6)的协议描述文件信号输出端同时与FPGA(4)的协议描述文件信号输入端和信号处理器(5)的协议描述文件信号输入端连接,所述的存储器(6)的存储信号输入输出端与信号处理器(5)的存储信号输入输出端连接,所述的RJ45接口模块(3)的上位机通信信号输入输出端与信号处理器(5)的上位机通信信号输入输出端连接;
信号处理器(5)包括协议转换模块(5-2)、TCP网络接口模块(5-3)和协议存储及加载模块5-1,
协议存储及加载模块(5-1)通过从存储器(6)中读写协议描述文件,用于加载或存储协议描述文件,为协议转换做准备;
协议转换模块(5-2),用于对协议数据包进行元素位置重排和函数处理操作,将试验设备的硬件数据包转换为可供虚拟试验系统使用的资源,并把虚拟试验系统的资源转换为试验设备识别的硬件数据包;
TCP网络接口模块(5-3),用于使接入的试验设备与虚拟试验系统之间进行资源独立交互,
该通用的协议转换方法是由嵌入在信号处理器(5)中软件实现的,所述软件依托于DSP/BIOS操作系统,其特征在于,
所述通用的协议转换方法是通过在协议转换模块(5-2)中嵌入的多线程技术实现,具体包括以下多个线程:
数据包接收中断处理线程、上行协议转换线程、下行协议转换线程、TCP数据包装配线程和TCP数据包处理线程,
上行协议转换线程,用于将实装设备数据转换成虚拟试验系统所需数据,获得SEM_In、QUE_In和LCK_In;
下行协议转换线程,用于将虚拟试验系统发送的数据转换成实装设备所需数据,
数据包接收中断处理线程,利用接收到的中断信号激活上行协议转换线程,通过使用信号量SEM_PacketReady实现,
TCP数据包装配线程,用于将接收到的上行协议转换线程处理后的信号发送到虚拟试验系统中订购了这个对象或者相关属性的成员,
TCP数据包处理线程,解析从虚拟试验系统中接收到的数据包,该线程发出SEM_Out、QUE_Out和LCK_Out,且SEM_Out用于激活下行协议转换线程;
其中,SEM_In表示输入信号量,用于线程同步和互斥,有计数功能;
QUE_In表示输入队列,用于实现线程间同步和资源的共享;
LCK_In表示输入资源锁,用于实现对共享资源的互斥;
SEM_Out表示输出信号量,用于线程同步和互斥,有计数功能;
QUE_Out表示输出队列,用于实现线程间同步和资源的共享;
LCK_Out表示输出资源锁,用于实现对共享资源的互斥。
6.根据权利要求5所述的一种通用的协议转换方法,其特征在于,所述的上行协议转换线程的处理过程为,
步骤A1、初始化从FPGA4发送过来的硬件应用协议数据包,执行步骤A2;
步骤A2、利用函数pend(SEM_PacketReady)的等待信号量SEM_PacketReady,待信号量SEM_PacketReady来到后,用于激活上行协议转换线程,执行步骤A3;
步骤A3、读取数据包长度和协议信号,执行步骤四;
步骤A4、判断数据包长度==0或协议信号==0xFFF,结果为真,执行步骤A2,否则执行步骤A5;
步骤A5、定位源协议和目的协议描述信息,执行步骤A6;
步骤A6、分配或者调整原协议元素集存储区,执行步骤A7;
步骤A7、元素集存储区清0,执行步骤A8;
步骤A8、解析源协议元素,执行步骤A9;
步骤A9、分配或者调整资源对象缓存区,执行步骤A10;
步骤A10、拷贝资源对象至缓冲区,执行步骤A11;
步骤A11、函数处理,将资源对象的数据格式转化成源协议的数据格式,执行步骤A12;
步骤A12、函数处理完成后,资源对象内容得到更新,再将缓冲区的内容拷贝至资源对象实例化区,执行步骤A13;
步骤A13、通过函数put(QUE_In)在队列QUE_In尾添加元素项,执行步骤A14;
步骤A14、通过函数post(SEM_In)发送信号量SEM_In,执行步骤A2。
7.根据权利要求6所述的一种通用的协议转换方法,其特征在于,所述的下行协议转换线程的处理过程为,
步骤B1、初始化TCP数据包处理线程发送过来的数据,执行步骤B2;
步骤B2、利用函数pend(SEM_Out)的等待信号量SEM_Out,待信号量SEM_Out来到后,用于激活下行协议转换线程,执行步骤B3;
步骤B3、利用函数get(QUE_Out)得到队列QUE_Out尾的元素项,执行步骤B4;
步骤B4、定位原协议描述信息,执行步骤B5;
步骤B5、定位目的协议描述信息,执行步骤B6;
步骤B6、分配或者调整资源对象缓存区,执行步骤B7;
步骤B7、利用函数pend(LCK_ObjOut)锁住资源对象直至拷贝完成,执行步骤B8;
步骤B8、拷贝资源对象从实例化区至缓冲区,执行步骤B9;
步骤B9、利用函数post(LCK_ObjOut)锁住资源对象直至拷贝完成,执行步骤B10;
步骤B10、分配或者调整目的协议元素集存储区;执行步骤B11;
步骤B11、生成目的协议必选元素;执行步骤B12;
步骤B12、生成目的协议可选元素;执行步骤B13;
步骤B13、输出包含信号量SEM_Out的数据包,,执行步骤B2。
8.根据权利要求7所述的一种通用的协议转换方法,其特征在于,所述的TCP数据包装配线程的处理过程为,
步骤C1、初始化从上行协议转换线程发来的数据;执行步骤C2;
步骤C2、利用函数pend(SEM_In)的等待信号量SEM_In,待信号量SEM_In来到后,用于激活TCP数据包装配线程,执行步骤C3;
步骤C3、利用函数get(QUE_In)获得队列QUE_In尾的元素项,执行步骤C4;
步骤C4、判断资源接入设备是否加入试验系统,结果为真,执行步骤C5,结果为假,执行步骤C2;
步骤C5、分配或者调整资源对象存储区,执行步骤C6;
步骤C6、拷贝资源对象至缓存区,执行步骤C7;
步骤C7、获取发布列表节点,执行步骤C8;
步骤C8、判断是否遍历完成发布列表,结果为真,执行步骤C2,结果为假,执行步骤C9;
步骤C9、判断成员已运行,是否未连接,结果为真,执行步骤C10,结果为假,执行步骤步骤C11;
步骤C10、发送连接命令并等待,执行步骤C11;
步骤C11、判断资源对象号是否相符,结果为真,执行步骤C12,结果为假,执行步骤C7;
步骤C12、判断成员已运行,且连接,结果为真,执行步骤C13,结果为假,执行步骤C7;步骤C13、装配属性值更新消息包或对象值更新消息包,执行步骤C14;
步骤C14、利用函数put(QUE_SndTcp)在队列QUE_SndTcp尾添加元素项,执行步骤C15;
步骤C15、利用函数post(SEM_SndTcp)的发送信号量SEM_SndTcp,执行步骤C7。
9.根据权利要求8所述的一种通用的协议转换方法,其特征在于,所述的TCP数据包处理线程的处理过程为,
步骤D1、利用函数pend(SEM_RevTcp)的等待信号量SEM_RevTcp,待信号量SEM_RevTcp来到后,用于激活TCP数据包处理线程,执行步骤D2;
步骤D2、利用函数get(QUE_RcvTcp)得到队列QUE_RcvTcp尾的元素项,执行步骤D3;
步骤D3、获取数据包类型,执行步骤D4;
步骤D4、判断数据包类型,当数据包类型为属性值数据包时,执行步骤D5,当数据包类型为对象值数据包时,执行步骤D6;
步骤D5、对属性值数据包进行解析,执行步骤D51;
步骤D51、进行查找成员订购表记录,执行步骤D52;
步骤D52、判断是否完成查找成员订购表记录,结果为真,执行步骤D1,结果为假,执行步骤D53;
步骤D53、获取源对象号、协议索引号,执行步骤D54;
步骤D54、更新资源对象属性值,执行步骤D55;
步骤D55、清除更新状态比特位,执行步骤D56;
步骤D56、判断更新状态是否为0,结果为真,执行步骤D57,结果为假,执行步骤D51;
步骤D57,利用函数put(QUE_Out)在队列QUE_Out尾添加元素项,执行步骤D58;
步骤D58、通过函数post(SEM_Out)发送信号量SEM_Out,执行步骤D59;
步骤D59、设置对象属性值更新状态,执行步骤D51;
步骤D6、对对象值数据包进行解析,执行步骤D61;
步骤D61、进行查找成员订购表记录,执行步骤D62;
步骤D62、判断是否完成查找成员订购表记录,结果为真,执行步骤D1,结果为假,执行步骤D63;
步骤D63、获取资源对象号、协议索引号,执行步骤D64;
步骤D64、更新资源对象,执行步骤D65;
步骤D65、利用函数put(QUE_Out)在队列QUE_Out尾添加元素项,执行步骤D66;
步骤D66、通过函数post(SEM_Out)发送信号量SEM_Out,执行步骤D67;
步骤D67、设置对象值更新状态,执行步骤D61。
10.根据权利要求5所述的一种通用的协议转换方法,其特征在于,所述的协议存储及加载模块(5-1)的处理过程为,
步骤E1、调用freeGInfo过程释放上次执行时为gInfo变量分配的存储空间,执行步骤E2;
步骤E2,为gInfo.raw分配存储区,执行步骤E3;
步骤E3、拷贝协议描述文件内容至gInfo.raw指向区域,执行步骤E4;
步骤E4、给*gInfo.raw的指针赋值为gInfo.protoNum,执行步骤E5;
步骤E5、给*(gInfo.raw+2)的指针赋值为gInfo.resNum,执行步骤E6;
步骤E6、为gInfo.resInfos分配存储区,并初始化该存储区使内容为0,执行步骤E7;
步骤E7、为gInfo.protoInfos分配存储区,并初始化该存储区使内容为0,执行步骤E8;
步骤E8、设置gInfo.resInfos数组的值,执行步骤E9;
步骤E9、设置gInfo.protoInfos数组的值,执行步骤E10;
步骤E10、设置FPGA帧头数据区域,处理完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310711623.5A CN103685292A (zh) | 2013-12-20 | 2013-12-20 | 一种通用的协议转换装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310711623.5A CN103685292A (zh) | 2013-12-20 | 2013-12-20 | 一种通用的协议转换装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103685292A true CN103685292A (zh) | 2014-03-26 |
Family
ID=50321606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310711623.5A Pending CN103685292A (zh) | 2013-12-20 | 2013-12-20 | 一种通用的协议转换装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103685292A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957198A (zh) * | 2014-04-15 | 2014-07-30 | 深圳市玖坤信息技术有限公司 | 一种传感数据接收转换方法及系统 |
CN104615483A (zh) * | 2015-02-12 | 2015-05-13 | 哈尔滨工业大学 | 反射内存卡及反射内存网及反射内存卡的访问方法 |
CN105045743A (zh) * | 2015-07-27 | 2015-11-11 | 燕山大学 | 一种具备优先级调度的多协议转换方法 |
CN106656970A (zh) * | 2016-10-13 | 2017-05-10 | 哈尔滨工业大学 | Hit‑tena试验设备适配器及其适配方法 |
CN107193768A (zh) * | 2016-03-15 | 2017-09-22 | 北京忆芯科技有限公司 | 查询队列状态的方法与装置 |
CN107800717A (zh) * | 2017-11-17 | 2018-03-13 | 广西小草信息产业有限责任公司 | 一种通信处理系统和方法 |
CN108667817A (zh) * | 2018-04-19 | 2018-10-16 | 厦门市智联信通物联网科技有限公司 | 报文转换系统和报文转换方法 |
CN110224948A (zh) * | 2019-06-25 | 2019-09-10 | 山东浪潮人工智能研究院有限公司 | 一种基于fpga的多协议通信数据交换装置及方法 |
CN112835847A (zh) * | 2021-02-05 | 2021-05-25 | 中国电子科技集团公司第五十八研究所 | 一种用于互联裸芯的分布式中断传输方法及其系统 |
CN113031496A (zh) * | 2021-05-27 | 2021-06-25 | 之江实验室 | 一种基于fpga的工业协议映射结构和方法 |
CN113342730A (zh) * | 2021-05-19 | 2021-09-03 | 智车优行科技(北京)有限公司 | 用于板间通信的通信接口装置、板卡以及数据处理方法 |
CN114578790A (zh) * | 2022-03-04 | 2022-06-03 | 沃飞长空科技(成都)有限公司 | 一种无人机飞控自动测试方法、系统、设备和介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770417A (zh) * | 2010-01-15 | 2010-07-07 | 哈尔滨工业大学 | 基于jtag的硬件故障注入系统及故障注入方法 |
-
2013
- 2013-12-20 CN CN201310711623.5A patent/CN103685292A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770417A (zh) * | 2010-01-15 | 2010-07-07 | 哈尔滨工业大学 | 基于jtag的硬件故障注入系统及故障注入方法 |
Non-Patent Citations (3)
Title |
---|
谢东周: "虚拟试验支撑平台实时资源接入设备研制", 《哈尔滨工业大学硕士学位论文》, 25 December 2012 (2012-12-25) * |
黄敬礼 等: "基于DM642的实时多协议转换器设计", 《现代电子技术》, 15 November 2011 (2011-11-15) * |
黄敬礼: "通用协议转换设备研制", 《哈尔滨工业大学硕士学位论文》, 20 March 2013 (2013-03-20) * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957198A (zh) * | 2014-04-15 | 2014-07-30 | 深圳市玖坤信息技术有限公司 | 一种传感数据接收转换方法及系统 |
CN103957198B (zh) * | 2014-04-15 | 2018-02-02 | 庞克学 | 一种传感数据接收转换方法及系统 |
CN104615483A (zh) * | 2015-02-12 | 2015-05-13 | 哈尔滨工业大学 | 反射内存卡及反射内存网及反射内存卡的访问方法 |
CN105045743B (zh) * | 2015-07-27 | 2018-01-23 | 燕山大学 | 一种具备优先级调度的多协议转换方法 |
CN105045743A (zh) * | 2015-07-27 | 2015-11-11 | 燕山大学 | 一种具备优先级调度的多协议转换方法 |
CN107193768B (zh) * | 2016-03-15 | 2021-06-29 | 厦门旌存半导体技术有限公司 | 查询队列状态的方法与装置 |
CN107193768A (zh) * | 2016-03-15 | 2017-09-22 | 北京忆芯科技有限公司 | 查询队列状态的方法与装置 |
CN106656970A (zh) * | 2016-10-13 | 2017-05-10 | 哈尔滨工业大学 | Hit‑tena试验设备适配器及其适配方法 |
CN107800717A (zh) * | 2017-11-17 | 2018-03-13 | 广西小草信息产业有限责任公司 | 一种通信处理系统和方法 |
CN108667817A (zh) * | 2018-04-19 | 2018-10-16 | 厦门市智联信通物联网科技有限公司 | 报文转换系统和报文转换方法 |
CN110224948A (zh) * | 2019-06-25 | 2019-09-10 | 山东浪潮人工智能研究院有限公司 | 一种基于fpga的多协议通信数据交换装置及方法 |
CN112835847A (zh) * | 2021-02-05 | 2021-05-25 | 中国电子科技集团公司第五十八研究所 | 一种用于互联裸芯的分布式中断传输方法及其系统 |
CN113342730A (zh) * | 2021-05-19 | 2021-09-03 | 智车优行科技(北京)有限公司 | 用于板间通信的通信接口装置、板卡以及数据处理方法 |
CN113031496A (zh) * | 2021-05-27 | 2021-06-25 | 之江实验室 | 一种基于fpga的工业协议映射结构和方法 |
CN113031496B (zh) * | 2021-05-27 | 2021-09-21 | 之江实验室 | 一种基于fpga的工业协议映射结构和方法 |
WO2022247019A1 (zh) * | 2021-05-27 | 2022-12-01 | 之江实验室 | 一种基于fpga的工业协议映射结构和方法 |
JP2023533599A (ja) * | 2021-05-27 | 2023-08-03 | 之江実験室 | Fpgaに基づく工業プロトコルマッピング構造及び方法 |
CN114578790A (zh) * | 2022-03-04 | 2022-06-03 | 沃飞长空科技(成都)有限公司 | 一种无人机飞控自动测试方法、系统、设备和介质 |
CN114578790B (zh) * | 2022-03-04 | 2024-05-14 | 四川傲势科技有限公司 | 一种无人机飞控自动测试方法、系统、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103685292A (zh) | 一种通用的协议转换装置及方法 | |
US20210081258A1 (en) | Synthesis Path For Transforming Concurrent Programs Into Hardware Deployable on FPGA-Based Cloud Infrastructures | |
CN110297689B (zh) | 智能合约执行方法、装置、设备及介质 | |
US11010681B2 (en) | Distributed computing system, and data transmission method and apparatus in distributed computing system | |
US10915664B2 (en) | Data masking systems and methods | |
US20200233660A1 (en) | Distributed parallel build system | |
EP3285170A1 (en) | Application profiling job management system, program, and method | |
CN108573029B (zh) | 一种获取网络访问关系数据的方法、装置及存储介质 | |
CN104731569A (zh) | 一种数据处理方法及相关设备 | |
CN110673839A (zh) | 分布式工具配置化构建生成方法及系统 | |
CN103514119A (zh) | 将多功能设备以usb组合设备呈现给主机的方法、装置及应用 | |
CN116049141A (zh) | 一种基于多源异构数据的数据迁移方法及系统 | |
CN106406980A (zh) | 一种虚拟机的部署方法和装置 | |
US20120011490A1 (en) | Development system | |
US9064042B2 (en) | Instrumenting computer program code by merging template and target code methods | |
CN102521250A (zh) | 一种智能测量仪器通用语法分析的实现方法 | |
CN112115118A (zh) | 数据库压测的优化方法及装置、存储介质、电子设备 | |
US9189299B2 (en) | Framework for system communication for handling data | |
Peñil et al. | Automatic synthesis from UML/MARTE models using channel semantics | |
Viskic et al. | Design exploration and automatic generation of MPSoC platform TLMs from Kahn Process Network applications | |
Tirado et al. | Analyzing the data behavior of parallel application for extracting performance knowledge | |
Chapeland et al. | Readout software for the ALICE integrated Online-Offline (O2) system | |
CN114625359B (zh) | 通过同步并发网络连接的多机无耦合数字化开发平台 | |
Genius et al. | High-level modeling of communication-centric applications: Extensions to a system-level design and virtual prototyping tool | |
Lantreibecq et al. | Formal analysis of a hardware dynamic task dispatcher with CADP |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140326 |