一种基于FPGA的多通道分片合并处理方法及系统与流程

文档序号:20276899发布日期:2020-04-07 14:36阅读:683来源:国知局
一种基于FPGA的多通道分片合并处理方法及系统与流程

本发明属于卫星通信接收机多载波解调技术领域,尤其涉及一种将多载波多通道突发数据进行处理的方法。



背景技术:

作为软件无线电系统和通信接收机的关键技术之一,信道化技术用于提取包含在接收带宽内的单个或多个相互独立的子带信号以便于后端的基带处理,其实现的具体功能包括:数字下变频、符号速率转换、匹配滤波、解扩等。高效高性能的实现多载波信道化也是研究热点。

多载波解调中如果使用多路并行的信道化处理,可最大限度的满足处理带宽要求,但由于高速数据流经过下抽后的数据率变低,所以基带处理的每一级都使用多路并行处理是没有必要的,另外现场可编程门阵列(fpga,fieldprogrammablegatearray)实现时需考虑资源与速度平衡,故需综合考虑解调性能与硬件实现。

将多载波数字下变频和符号速率变换后的多通道数据经过并转串后,实现将多路数据归为单路,送给后级进行单路匹配滤波,可有效的减少设计资源,由于多载波抽样后的数据流速率仍然很高,故需采用高速读写的外部存储器ddr2sdram(第二代双倍数据率同步动态随机存取存储器,double-data-ratetwosynchronousdynamicrandomaccessmemory)进行缓存转发,亟待解决卫星通信接收机多载波解调处理需求的问题。



技术实现要素:

本发明所要解决的技术问题是:针对卫星通信接收机多载波解调的处理需求,基于fpga+ddr2sdram互联架构,提出了一种基于fpga的多通道分片合并处理技术,主要应用于卫星通信接收机突发解调过程中,实现对多载波信道化后多个并行载波的突发数据包片的通道合并处理,将频率维度和时间维度上多个载波通道的多个突发数据包片以一定的规则实现并路转串路处理。

本发明为解决上述技术问题而采用以下技术方案:

本发明提出一种基于fpga的多通道分片合并处理方法,包括:

1)令牌环轮询控制机制,用于实现将多通道的多片数据包以固定单元长度为单位进行并转串操作;

2)读写仲裁机制,用于实现对内外部存储的读写仲裁和速率平衡;

3)分区存储访问控制机制,用于实现与外部存储控制器的读写交互访问。

进一步的,本发明所提出的方法中,令牌环轮询控制机制采用并列的n个数据缓存,以存满一个固定小单元长度的数据为触发写入令牌,并采用令牌轮询机制进行令牌读取,得到令牌后以固定小单元长度为单位进行数据包片的串行输出。

进一步的,本发明所提出的方法中,所述读写仲裁机制用于平衡外部存储器与内部存储器之间的读写数据流吞吐,内部存储器以数据包片为单位进行数据写,以固定小单元为单位进行数据读,外部存储器以固定小单元为单位进行数据写,以数据包片为单位进行数据读。

进一步的,本发明所提出的方法中,所述分区存储访问控制机制,利用存储控制器ip,简化存储访问接口,并对外部存储器进行区域划分,按通道划分扇区,每个通道又进行乒乓,拼接后的单通道数据由内部存储进行输出缓存。

本发明还提出一种基于fpga的多通道分片合并处理系统,包括:

令牌环轮询控制模块,用于实现将多通道的多片数据包以固定单元长度为单位进行并转串操作;

读写仲裁机制模块,用于实现对内外部存储的读写仲裁和速率平衡;

分区存储访问控制模块,用于实现与外部存储控制器的读写交互访问。

进一步的,本发明所提出的一种基于fpga的多通道分片合并处理系统,令牌环轮询控制模块包括多通道缓存器、令牌存储队列、令牌环轮询器和合并输出控制器;其中,

多通道缓存器,设置于多通道数据输入端,包括并行的n个512*256的bram(块随机存储器,blockrandomaccessmemory)用于数据缓存,输入端的n个通道数据以突发包形式输入各自通道的数据缓存,当某个通道数据缓存中的数据达到16个时,触发状态机向一个命令队列写入通道标识;

令牌环轮询器,设置令牌环轮询状态机在轮询命令队列,查询到命令队列非空时,取出该通道标识,检测标识后使对应的通道得到令牌,触发对应通道的数据缓存读操作,数据缓存中读出一个固定小单元长度的数据,该小单元读取完毕后,下一个得到令牌的通道进行读取操作,如果没有通道被触发则等待;

合并输出控制器,多通道的突发数据包片被打散为固定小单元,通过合并输出控制器合并为一路输出缓存。

进一步的,本发明所提出的一种基于fpga的多通道分片合并处理系统,分区存储访问控制模块包括分区读写控制器、ddr2sdram存储控制器和输出缓冲控制器;

ddr2sdram存储控制器,实现与ddr2sdram的交互操作,将输出后的单通道固定小单元写入外部存储器ddr2sdram;其中每个固定小单元设置各自的通道信息、长度信息及编号信息;

分区读写控制器,将外部存储分为2n个扇区,每个固定小单元按照顺序写入各自通道对应的扇区,当某个扇区的固定小单元攒满一个突发包片长度的数据时,将该扇区的数据以突发包片为单位进行数据读取,其他通道以此类推;

输出缓冲控制器,以固定小单元为单位的串行数据流转为以突发包片为单位的串行数据流。

本发明采用以上技术方案,与现有技术相比,具有以下技术效果:

本发明通过令牌环轮询的方式进行并行通道存储和串行通道输出,使用读写仲裁控制机制完成对数据读写的权限仲裁与速率平衡。规避了ddr2sdram存储控制的复杂度,提高了并转串的效率,节省了fpga内部的存储资源开销,可通过参数配置实现不同场景下的灵活应用。

附图说明

图1为令牌环轮询控制机制图。

图2为分区存储访问控制机制图。

图3为读写仲裁机制图。

具体的实施方式

下面结合实施方案步骤对本设计进行描述:

本发明基于fpga与外围的2片ddr2sdram颗粒,利用mig存储控制器实现与外围ddr2sdram芯片的读写操作,通过令牌环轮询的方式进行并行通道存储和串行通道输出,使用读写仲裁控制机制完成对数据读写的权限仲裁与速率平衡。规避了ddr2sdram存储控制的复杂度,提高了并转串的效率,节省了fpga内部的存储资源开销,可通过参数配置实现不同场景下的灵活应用。

本发明的具体实施技术方案如下:

1.令牌环轮询控制机制。

令牌环轮询控制机制在多通道数据输入端设置并行的n个512*256的bram用于数据缓存,输入端的n个通道数据以突发包形式输入各自通道的数据缓存,由于每个通道(对应每个载波)的数据速率不一致,所以写入数据缓存的速率也有差别,当某个通道数据缓存中的数据达到16个(固定小单元)时,触发状态机向一个命令队列写入通道标识,另外设置令牌环轮询状态机在轮询命令队列,查询到命令队列非空时,取出该通道标识,检测标识后使对应的通道得到令牌,触发对应通道的数据缓存读操作,数据缓存中读出一个固定小单元长度的数据,该小单元读取完毕后,下一个得到令牌的通道进行读取操作,如果没有通道被触发则等待,通过令牌环轮询机制,使多通道的突发数据包片被打散为固定小单元,合并为一路输出缓存。

令牌环轮询控制机制如图1所示,其中包括多通道缓存器、令牌存储队列、令牌环轮询器和合并输出控制器。

2.分区存储访问控制机制。

主要实现将并转串后的单通道数据小单元写入对应的存储分区,并以突发包片为单位对存储分区进行读取操作。

输出后的单通道固定小单元需写入外部存储器ddr2sdram,与ddr2sdram的交互操作由存储控制器ip实现,每个固定小单元有各自的通道信息、长度信息及编号信息,将外部存储分为2n个扇区,每个固定小单元按照顺序(编号信息)写入各自通道对应的扇区(每个通道对应2个,用于乒乓操作),当某个扇区的固定小单元攒满一个突发包片长度的数据时,将该扇区的数据以突发包片为单位进行数据读取,其他通道以此类推,既而以固定小单元为单位的串行数据流转为以突发包片为单位的串行数据流。

分区存储访问控制机制如图2所示,其中包括分区读写控制器、ddr2sdram存储控制器和输出缓冲控制器。

3.读写仲裁机制

主要实现对内外部存储的读写仲裁和速率平衡。

外部存储器中某个扇区的数据达到一个突发包片长度时,需要对外部存储器进行读取操作,内部并行缓存的数据达到一个固定小单元长度时,需要对缓存进行读取操作,并对外部存储器进行写入操作。ddr2sdram的读写通道只有一个,所以对其进行读写操作不可同时进行。对外部存储器进行读取操作时,内部并行缓存的读操作需停止,此时并行缓存只有写入没有读出,应避免在此过程中并行缓存满现象;若对外部存储器进行读操作过频繁,由于突发包片数据较长,外部存储器读取出的突发速率较高,又会导致输出缓冲控制器中的输出缓存的满现象,所以需要由仲裁机制进行数据吞吐的平衡和控制。

在并行缓存和后级输出缓冲控制器中的缓存设置满标识,当任何一个缓存将满时对仲裁控制发出告警,仲裁控制根据是哪一方的告警进行相应的操作。

读写仲裁机制如图3所示。

本发明基于fpga+ddr2sdram架构,在fpga中实现,主要包括多通道缓存器、令牌存储队列、令牌环轮询器、合并输出控制器、分区读写控制器、ddr2sdram存储控制器、输出缓冲控制器和读写仲裁器。

其中令牌环轮询控制机制在多通道数据输入端设置并行的n个512*256的bram用于数据缓存,输入端的n个通道数据以突发包形式输入各自通道的数据缓存,当某个通道的数据缓存中的数据达到16个(固定小单元)时,触发状态机向命令队列写入通道标识,另外设置令牌环轮询状态机在轮询n个通道的命令队列,查询到命令队列非空时,取出该通道的通道标识,检测标识后使对应的通道得到令牌,触发对应通道的数据缓存读操作,数据缓存中读出一个固定小单元长度的数据,该小单元读取完毕后,下一个得到令牌的通道进行读取操作,如果没有通道被触发则等待,通过令牌环轮询机制,使多通道的数据包片被打散为固定小单元为单位;另外,上述读取操作需要在读写仲裁器的仲裁下进行,当仲裁控制检测到外部存储器的一个扇区攒够一个突发包片的长度,并行缓存的满告警未拉高且输出缓存器告警未拉高时,从外部存储器中读取一整个突发包片数据;当检测到并行缓存的满告警拉高或输出缓存器告警拉高时,不使能外部存储器读操作,需继续进行并行缓存的读操作,即外部存储器的写操作。对外部存储器的读写控制通过外部存储访问控制机制实现。通过并行通道的令牌环轮询控制、读写仲裁和对外部存储器的访问控制,实现由多通道多突发包片到单通道多突发包片的转换,输出的单通道数据送给后级做相应的基带处理。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1