发明名称 |
一种基于轮询/中断的实时虚拟无线电数据的同步方法 |
摘要 |
本发明提供一种基于轮询/中断的实时虚拟无线电数据的同步方法,包括虚拟无线电系统中物理层状态机在PCI设备中的相关FPGA中写入收发指令;PCI设备中的FPGA判断为发送指令还是接收指令;若是接收指令,FPGA接收数据并将接收的数据传输到PC中的环形队列中,并通过轮询或中断,读取环形队列中的有效数据;若是发送指令,每当环形队列中存储N个有效BLOCK数据块时,FPGA将PC中的环形队列中的有效数据读取到FPGA中的DMA数据区。本发明的基于轮询/中断的实时虚拟无线电数据的同步方法解决了基于RTX和Windows的虚拟无线电系统中PC与RCB之间数据同步问题。 |
申请公布号 |
CN106294235A |
申请公布日期 |
2017.01.04 |
申请号 |
CN201510292254.X |
申请日期 |
2015.06.01 |
申请人 |
中国科学院上海高等研究院 |
发明人 |
陈达;李志伟;陆小凡;李明齐 |
分类号 |
G06F13/32(2006.01)I;G06F13/366(2006.01)I |
主分类号 |
G06F13/32(2006.01)I |
代理机构 |
上海光华专利事务所 31219 |
代理人 |
高园园 |
主权项 |
一种基于轮询的实时虚拟无线电数据的同步方法,其特征在于:PC中的环形队列用于存储若干个BLOCK数据块,每个BLOCK数据块包括32对IQ两路采样数据,每一路数据的最后一个无效位组成信息位;第一个信息位是标志位,表示数据是否有效,第二个信息位是天线号,用于表明发送/接收数据的天线;最后一个信息位是时间戳,用于在接收数据时记录采样的时间点;所述基于轮询的实时虚拟无线电数据的同步方法包括以下步骤:步骤S11、虚拟无线电系统中物理层状态机根据收发指令,在PCI设备中的相关FPGA中的寄存器中写入收发指令;步骤S12、PCI设备中的FPGA检测寄存器中的指令,判断为发送指令还是接收指令;若是接收指令,转入步骤S13;若是发送指令,转入步骤S14;步骤S13、FPGA接收数据并将接收的数据传输到PC中的环形队列中,并在接收的数据大小首次超过一个BLOCK数据块的大小时触发中断;PC响应该中断,开启轮询线程,不断轮询环形队列,读取环形队列中的有效数据并传递到下一个通信模块或者上层协议进行后续的处理;步骤S14、每当环形队列中存储N个有效BLOCK数据块时,PC就在FPGA中写入一个标志;FPGA根据该标志,将PC中的环形队列中的有效数据读取到FPGA中的DMA数据区,并在规定时间发送反馈帧。 |
地址 |
201210 上海市浦东新区海科路99号 |