[发明专利]一种异构多源数据重构瞬态可靠处理方法有效
申请号: | 201711427893.8 | 申请日: | 2017-12-26 |
公开(公告)号: | CN108170634B | 公开(公告)日: | 2018-12-07 |
发明(设计)人: | 陶飞;邹孝付;左颖 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F15/78 | 分类号: | G06F15/78;G06F11/10 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 杨学明;邓治平 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态区 重构 静态区 异构 多源数据 可靠处理 应答帧 瞬态 询问 多源数据处理 发送 缓存 功能切换 数据交互 物理区域 状态判断 解析 中断 返回 | ||
1.一种异构多源数据重构瞬态可靠处理方法,其特征在于:包括以下步骤:
步骤一:FPGA动态区状态判断,具体实现如下:
①建立一个宽度为1,深度为1的双端口BRAM,在FPGA主时钟的驱动下,静态区通过端口A置该BRAM的数值为高电平,在经过10个主时钟周期之后,静态区通过端口A读取并判断该BRAM的数值的电平状态:当为高电平时,表明动态区处于重构过程中:当为低电平时,表明动态区处于非重构过程中;
②动态区在FPGA主时钟的驱动下通过端口B实时读取并判断该BRAM的数值的电平状态,当为高电平时,在下一个时钟周期将该BRAM的数值的电平状态复位为低电平;
③当有k个动态区时,需要在静态区建立k个宽度为1,深度为1的双端口BRAM,各个动态区状态的判断如①和②;
步骤二:FPGA静态区建立数据缓存BRAM实现对重构瞬态数据的缓存,具体实现如下:
①FPGA静态区建立一个BRAM,当静态区监测到动态区处于重构过程中时,静态区将待处理的数据缓存在这个BRAM中;
②FPGA静态区按照各个动态区在FPGA芯片内部物理区域的坐标和在该动态区上运行的重构代码的功能ID的不同,分别将数据缓存在该BRAM的不同偏移地址中;
步骤三:在重构完成后,FPGA动态区向静态区发送询问帧,帧格式具体实现如下:
①字节0-1为帧头,即十六进制5A、54;
②字节2-11为数据区,其中字节2-3表示该动态区在FPGA芯片内部物理区域的左上顶点的横坐标;字节4-5表示该动态区在FPGA芯片内部物理区域的左上顶点的纵坐标;字节6-7表示该动态区在FPGA芯片内部物理区域的右下顶点的横坐标;字节8-9表示该动态区在FPGA芯片内部物理区域的右下顶点的纵坐标;字节10-11表示在该动态区上运行的重构代码的功能ID;
③字节12为数据区结束标识符,即十六进制00;
④字节13为校验,即数据区中各个字节的逻辑和取低字节;
⑤字节14-15为数据区的长度,其中字节14为高字节;
⑥字节16-17为帧尾,即十六进制5A、FE;
当询问帧中的数据区出现帧尾,即十六进制5A、FE时,需要在该5A、FE前插入转义字符十六进制00;数据区的长度不包括插入的转义字符;
步骤四:FPGA静态区解析动态区发送的询问帧,在解析询问帧时需要将插入的转义字符去除,得到该动态区在FPGA芯片内部物理区域的坐标和在该动态区上运行的重构代码的功能ID,然后静态区读取数据缓存BRAM中对应的数据;
步骤五:FPGA静态区向动态区返回应答帧,帧格式具体实现如下:
①字节0-1为帧头,即十六进制5A、54;
②字节2-(n+1)为数据区,即重构时缓存在BRAM中的数据,其中n为数据字节长度;
③字节n+2为数据区结束标识符,即十六进制00;
④字节n+3为校验,即数据区中各个字节的逻辑和取低字节;
⑤字节n+4、n+5为数据区的长度,其中字节n+4为高字节;
⑥字节n+6、n+7为帧尾,即十六进制5A、FE;
当应答帧中的数据区出现帧尾,即十六进制5A、FE时,需要在该5A、FE前插入转义字符十六进制00;数据区的长度不包括插入的转义字符。
2.如权利要求1所述的一种异构多源数据重构瞬态可靠处理方法,其特征在于:所述的方法适用于Xilinx公司Virtex-5FPGA芯片。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711427893.8/1.html,转载请声明来源钻瓜专利网。