一种数据传递方法及装置制造方法及图纸

技术编号:23399618 阅读:24 留言:0更新日期:2020-02-22 11:56
本发明专利技术公开了一种数据传递方法及装置,用以解决现有技术中异步系统中数据的写入和读取因只能一个端口执行,会导致系统处理带宽低下以及易发生访问冲突,造成系统错误的问题。该方法,包括:收到D端口发送的完成存储信号,根据缓存器的当前状态生成更新标识寄存器置位命令;将所述更新标识寄存器置位命令发送至更新标识寄存器,以使所述更新标识寄存器根据所述更新标识寄存器置位命令将映射到所述D端口的更新标识寄存器的当前状态设置为已更新;其中,所述缓存器的当前状态包括已填和未填。

A data transmission method and device

【技术实现步骤摘要】
一种数据传递方法及装置
本专利技术涉及数字通信
,更具体的涉及一种数据传递方法及装置。
技术介绍
工业级无人机的飞控系统是安全关键系统,飞控系统中飞控计算机内部处理器芯片和FPGA(Field-ProgrammableGateArray,中文为现场可编程逻辑门阵列)芯片所形成的异步系统需要进行数据传递。内部数据传递的安全稳定运行有着非常关键的作用。传统的数据传递方法使用一块双端口RAM(randomaccessmemory,随机存储器)进行数据存储,再使用锁定寄存器(双端口各一个)和一个更新标识寄存器进行双端口访问的控制,以避免数据访问冲突。在实际应用中,锁定寄存器用于将选通信号进行锁定,当锁定寄存器被写入1时,选通信号不能切换;当锁定寄存器被写入0时才允许选通信号切换。更新标识寄存器用于表明当前映射的缓存器中是否有新的数据,1表示有新的数据,0表示无新数据。以下为了方便说明,暂且将双端口RAM的两个端口分别叫D端口和Q端口,数据由D端口写入RAM,从RAM的Q端口读出。具体地,当D端口有数据需要写入时首先需要判断Q端口的本文档来自技高网...

【技术保护点】
1.一种数据传递方法,其特征在于,包括:/n收到D端口发送的完成存储信号,根据缓存器的当前状态生成更新标识寄存器置位命令;/n将所述更新标识寄存器置位命令发送至更新标识寄存器,以使所述更新标识寄存器根据所述更新标识寄存器置位命令将映射到所述D端口的更新标识寄存器的当前状态设置为已更新;/n其中,所述缓存器的当前状态包括已填和未填。/n

【技术特征摘要】
1.一种数据传递方法,其特征在于,包括:
收到D端口发送的完成存储信号,根据缓存器的当前状态生成更新标识寄存器置位命令;
将所述更新标识寄存器置位命令发送至更新标识寄存器,以使所述更新标识寄存器根据所述更新标识寄存器置位命令将映射到所述D端口的更新标识寄存器的当前状态设置为已更新;
其中,所述缓存器的当前状态包括已填和未填。


2.如权利要求1所述的方法,其特征在于,所述缓存器包括缓存器A和缓存器B;
所述完成存储信号为所述D端口将接收到的数据包存储至所述缓存器B后产生的,所述缓存器B存储了所述数据包之后的状态为已填;或者
所述完成存储信号为所述D端口将接收到的数据包存储至所述缓存器A后产生的,所述缓存器A存储了所述数据包之后的状态为已填。


3.如权利要求1所述的方法,其特征在于,所述更新标识寄存器包括所述更新标识寄存器A和所述更新标识寄存器B;选通信号的状态包括0状态和1状态;
当所述选通信号的状态为1时,若所述更新标识寄存器A和缓存器A映射至所述Q端口,所述更新标识寄存器B和缓存器B映射至所述D端口,确定所述Q端口从所述缓存器A数据读取,所述D端口将数据存储至所述缓存器B;或者当所述选通信号的状态为0时,此时所述更新标识寄存器B和缓存器B映射至所述Q端口,所述更新标识寄存器A和缓存器A映射至所述D端口,确定所述Q端口从所述缓存器B数据读取,所述D端口将数据存储至所述缓存器A;或者
当所述选通信号的状态为1时,若所述更新标识寄存器A和缓存器A映射至所述D端口,所述更新标识寄存器B和缓存器B映射至所述Q端口,确定所述D端口将数据存储至所述缓存器A,所述Q端口正在从所述缓存器B数据读取;或者当所述选通信号的状态为0时,此时所述更新标识寄存器B和缓存器B映射至所述D端口,所述更新标识寄存器A和缓存器A映射至所述Q端口,确定所述D端口将数据存储至所述缓存器B,所述Q端口从所述缓存器A数据读取。


4.如权利要求1所述的方法,其特征在于,所述缓存器包括缓存器A和缓存器B;
所述根据缓存器的当前状态生成更新标识寄存器置位命令,具体包括:
当所述缓存器B的当前状态为已填时,确定所述缓存器B和所述更新标识寄存器B映射至所述D端口;确定所述更新标识寄存器置位命令为将与所述D端口映射的所述更新标识寄存器的当前状态设置为已更新;或者
当所述缓存器A的当前状态为已填时,确认所述缓存器A和所述更新标识寄存器A映射至所述D端口;确定所述更新标识寄存器置位命令为将与所述D端口映射的所述更新标识寄存器的当前状态设置为已更新。


5.如权利要求1所述的方法,其特征在于,所述将映射到所述D端口的更新标识寄存器的当前状态设置为已更新之后,还包括:
对所述选通信号的状态进行切换,当确定映射到Q端口的所述更新标识寄存器的当前状态切换为已更新时,确定与所述Q端口映射的所述缓存器A或者缓存器B已经存储数据包;
以使设置在所述Q端口上的锁定寄存器的当前状态切换为已锁定,将映射至所述Q端口的所述更新标识寄存器的当前状态设置为未更新;
以使所述Q端口从所述缓存器A或者缓存器B内读取数据包,当读取所述数据包完成后,将所述锁定寄存器的当前状态切换为未锁定;
其中,所述选通信号的状态进行切换时,所述D端口将数据包已经存储至所述D端口映射的所述缓存器A或者所述缓存器B内;存储完所述数据包的所述缓存器A或者所述缓存器B的当前状态为已填;设置在所述Q端口的所述锁定寄存器...

【专利技术属性】
技术研发人员:季雷唐甜王琦王涛宋乐
申请(专利权)人:西安联飞智能装备研究院有限责任公司
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1