用于数据记录与回放的装置、系统及方法

文档序号:7859722阅读:5560来源:国知局
专利名称:用于数据记录与回放的装置、系统及方法
技术领域
本发明涉及数字通信技术领域,更为具体地,涉及一种对高速数字信号进行记录和回放的数据记录与回放系统及方法。
背景技术
在高速数字通信系统设计过程中,为了便于调试和测试通信系统,需要产生特定的数据并且使用该特定数据对系统性能进行调试和测试。同时,为了提高实际测试和系统级联调试时的效率,需要将测试过程中收到的信号先按照要求记录下来,并在调试的过程中将所记录的数据文件以电信号的形式按照需要的码速进行回放,以便于在调试过程中发现并改正系统中存在的问题。在遥感和卫星通信系统中,数据传输速率可以在I兆比特每秒(Mbps)到IOOOMbps的范围内变化。在一些主流遥感和卫星通信系统中,数据传输速率已经达到100Mbps,甚至 是吉比特每秒(Gbps)的量级,例如美国航空航天局和日本宇宙航空研究开发机构已经有多个卫星项目实现了 Gbps量级的下行传输链路,而我国下一代空间卫星通信的传输速率也将达到Gbps量级。为了适配遥感和卫星通信系统中的IMbps到IOOOMbps的数据速率变化,在目前遥感和卫星通信系统所使用的高速数据记录与回放系统中,通常需要设置手动更改系统。这些手动更改系统导致高速数据记录与回放系统的操作复杂并且容易出现错误。此外,在目前的高速记录与回放系统中,由于瞬间高速信号的输入输出,导致系统产生溢出等不稳定情况。

发明内容
鉴于上述问题,本发明的一个目的是提供一种数据记录与回放系统及方法,其能够自适应地适配数据传输速率中的变化。本发明的另一目的是提供一种用于实现高速数据记录的装置及方法。本发明的另一目的是提供一种用于实现高速数据回放的装置及方法。根据本发明的一个方面,提供一种用于实现高速数据记录的装置,包括信号输入电路,被配置为接收从外部输入的基带信号,并且将所接收的基带信号转换为数据;第一 FPGA,与所述信号输入电路相连并且通过总线与外部记录装置相连,被配置为从信号输入电路接收数据,并且将所接收的数据持续输出到第二 FPGA,以及在从第二 FPGA接收到数据后,将所接收的数据通过总线传输到外部记录装置中进行记录;第二 FPGA,与所述第一FPGA相连,被配置为将从第一 FPGA接收的数据写入到第一和第二存储单元中的一个存储单元中,同时从另一存储单元读取数据并缓存在第二 FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第一预定值时,将内部缓存的数据传送到第一 FPGA ;第一和第二存储单元,与所述第二 FPGA相连,其中所述两个存储单元和所述第二 FPGA协作进行乒乓缓存操作,其中,所述第一和第二存储单元的存储容量大小相等,并且由第一 FPGA根据输入信号的速率控制第二 FPGA来设定。在上述方面的一个或多个示例中,所述装置还可以包括电平及串并变换单元,用于对从外部输入的信号进行电平及串并变换。在上述方面的一个或多个示例中,所述装置还可以包括总线桥接器,用于实现第一总线与第二总线间的桥接,其中,所述第一 FPGA与总线桥接器通过第一总线相连,以及所述总线桥接器与外部记录装置通过第二总线相连。在上述方面的一个或多个示例中,所述总线桥接器可以是PEX 8311。根据本发明的另一方面,提供一种用于实现高速数据回放的装置,包括信号输出电路,用于将所接收的数据转换为基带信号;第三FPGA,与所述信号输出电路相连并且通过总线与外部记录装置相连,被配置为从外部记录装置读取所记录的数据,并将所读取的数据持续地传输到第四FPGA,以及在从第四FPGA接收到数据后,将所接收的数据按照指定速率传输到信号输出电路并转换为基带信号后进行回放;第四FPGA,与所述第三FPGA相 连,被配置为将从第三FPGA接收的数据写入到第三和第四存储单元中的一个内存单元中,同时从另一内存单元读取数据并缓存在第四FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第二预定值时,将内部缓存的数据传送到第三FPGA ;以及第三和第四存储单元,与所述第四FPGA相连,其中所述第三和第四存储单元和所述第四FPGA协作进行乒乓缓存操作。在上述方面的一个或多个示例中,所述信号输出电路还可以包括电平及并串变换单元,用于对从第三FPGA输出的数据进行并串及电平变换。在上述方面的一个或多个示例中,所述装置还可以包括总线桥接器,用于实现第一总线与第二总线间的桥接,其中,所述第三FPGA与总线桥接器通过第一总线相连,以及所述总线桥接器与外部记录装置通过第二总线相连。在上述方面的一个或多个示例中,所述指定速率是由第三FPGA根据所接收的数据回放指令中的回放速率信息设定的。在上述方面的一个或多个示例中,所述指定速率是由第三FPGA根据所接收的数据回放指令中的回放速率信息,通过频率综合器设定的。根据本发明的另一方面,提供一种数据记录与回放系统,包括如上所述的用于实现高速记录的装置;如上所述的用于实现高速回放装置;以及记录装置。在上述方面的一个或多个示例中,所述第一 FPGA和第二 FPGA分别与所述第三FPGA和第四FPGA相同,以及所述第一和第二存储单元分别与所述第三和第四存储单元相同。根据本发明的另一方面,提供一种由用于实现高速数据记录的装置执行的数据记录方法,包括通过信号输入电路接收从外部输入的基带信号并转换为数据,并将转换后的数据传输到第一 FPGA ;第一 FPGA将所接收的数据持续输出到第二 FPGA ;第二 FPGA将从第一 FPGA接收的数据写入到第一和第二存储单元中的一个存储单元中,同时从另一存储单元读取数据并缓存在第二 FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第一预定值时,将内部缓存的数据传送到第一 FPGA ;以及在从第二 FPGA接收到数据后,第
一FPGA通过总线将所接收的数据传输到外部记录装置中进行记录,其中,所述第一和第二存储单元的存储容量大小相等,并且由第一 FPGA根据输入信号的速率控制第二 FPGA来设定。根据本发明的另一方面,提供一种由用于实现高速数据回放的装置执行的数据回放方法,包括第三FPGA通过总线从外部记录装置读取所记录的数据,并将所读取的数据持续地传输到第四FPGA ;第四FPGA将从第三FPGA接收的数据写入到第三和第四存储单元中的一个内存单元中,同时从另一内存单元读取数据并缓存在第四FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第二预定值时,将内部缓存的数据传送到第三FPGA ;以及在从第四FPGA接收到数据后,第三FPGA将所接收的数据按照指定速率传输到信号输出电路并转换为基带信号进行回放。 利用上述数据记录与回放系统,可以自适应地适配高速数据传输中的数据速率变化,而无需手动更改系统。此外,还可以消除由于瞬间高速信号的输入输出而导致系统产生溢出等问题。为了实现上述以及相关目的,本发明的一个或多个方面包括 后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。


根据下述参照附图进行的详细描述,本发明的上述和其他目的、特征和优点将变得更加显而易见。在附图中图I示出了根据本发明实施例的用于高速数据记录的装置的结构框图;图2示出了图I中的装置的信号输入电路的一个实现示例的示意图;图3示出了根据本发明实施例的总线控制结构;图4示出了根据本发明实施例的适应多速率的数据缓存结构;图5示出了根据本发明实施例的用于高速数据回放的装置的结构框图;图6示出了图5中的装置的信号输出电路的一个实现示例的示意图;图7示出了根据本发明的数据记录与回放系统的结构框图;图8示出了根据本发明的数据记录与回放系统的一个示例的示意图;图9示出了根据本发明的数据记录与回放系统中的误码统计结构;图10示出了根据本发明实施例的用于进行高速数据记录的方法的流程图;和图11示出了根据本发明实施例的用于进行高速数据回放的方法的流程图。在所有附图中相同的标号指示相似或相应的特征或功能。
具体实施例方式下面描述本公开的各个方面。应该明白的是,本文的教导可以以多种多样形式具体体现,并且在本文中公开的任何具体结构、功能或两者仅仅是代表性的。基于本文的教导,本领域技术人员应该明白的是,本文所公开的一个方面可以独立于任何其它方面实现,并且这些方面中的两个或多个方面可以按照各种方式组合。例如,可以使用本文所阐述的任何数目的方面,实现装置或实践方法。另外,可以使用其它结构、功能、或除了本文所阐述的一个或多个方面之外或不是本文所阐述的一个或多个方面的结构和功能,实现这种装置或实践这种方法。此外,本文所描述的任何方面可以包括权利要求的至少一个元素。下面将结合

根据本发明的实施例。图I示出了根据本发明实施例的用于高速数据记录的装置100的结构框图。如图I所示,装置100包括信号输入电路110、第一 FPGA 120、第二 FPGA130、第一内存单元140以及第二内存单元150。信号输入电路110与第一 FPGA相连。在进行高速数据记录时,信号输入电路110被配置为接收从外部输入的基带信号,比如从外部输入的ECL电平信号,并且将所接收的基带信号转换为数据。随后,将经过转换后得到的数据传输到第一 FPGA 120。在根据本发明的实施例中,信号输入电路110所接收的基带信号的电平可以与第
一FPGA 120的输入信号的电平要求不同。此外,信号输入电路110所接收的基带信号可以 是串行信号,而不是FPGA的输入信号所要求的并行信号。在这种情况下,信号输入电路110还可以包括电平及串并变换单元,用于对从外部接收的基带信号进行电平及串并变换。图2示出了在需要对外部输入的基带信号进行电平及串并变换时信号输入电路的一个实现示例的结构示图。如图2所示,外部输入的基带信号的电平是ECL电平。在图2中示出的电路结构中,首先,通过EP 90芯片对该外部输入的基带信号进行电平变换,将该基带信号的电平变换为LVPECL。接着,利用可编程逻辑延时芯片MC10EP195对EP 90芯片输出的时钟信号进行延迟,从而实现数据与时钟信号的严格对齐。该芯片的理论传输速率为I. 2GHz,延时精度为10ps。然后,利用MC10EP445芯片对数据进行串并转换,将最大IGbps的数据流变为8路最大125MHz的并行数据流。接着,通过MC100LVELT23芯片将MC10EP445变换得到的并行LVPECL信号转化为LVTTL电平信号送给FPGA,MC100LVELT23芯片为双通道LVTTL驱动芯片,单通道传输速率可达180MHz以上。FPGA通过LVTTL接口进行接收。FPGA模块(8口,第一 FPGA和第二 FPGA)采用StratixII EP2S180F1020C3芯片,最高工作频率达到550MHz,其中LVTTL接口传输速率可以达到250Mbps。此外,该信号输入电路中还包括MC100EPT22芯片,用以实现LVTTL电平到LVPECL电平的转化,并实现对以上芯片的控制。第一 FPGA 120被配置为接收从信号输入电路输出的数据。此外,第一 FPGA 120与第二 FPGA 130相连,用于将所接收的数据持续输出到第二 FPGA130。并且,第一 FPGA 120还被配置为通过总线与外部记录装置相连,用于在进行数据记录时,在从接收到第二 FPGA130传送的数据后,通过总线将所接收的数据传输到外部记录装置中进行记录。第二 FPGA 130与第一存储单元140和第二存储单元150相连,并且被配置为将从第一 FPGA 120接收的数据写入到第一存储单元140和第二存储单元150中的一个存储单元中,同时从另一存储单元读取数据并缓存在第二 FPGA130的内部缓存中。此外,在内部缓存所缓存的数据的大小达到第一预定值时,第二 FPGA 130被配置为将内部缓存的数据传送到第一 FPGA 120。所述第一存储单元140和第二存储单元150被配置为缓存数据。在本发明中,利用两个存储单元(在本示例中为DDR2内存)与第二 FPGA 130的内部FIFO配合的方式进行乒乓缓存操作,实现高速串行数据流的缓存。在进行乒乓缓存操作时,通过第二 FPGA 130来控制第一存储单元140和第二存储单元150的硬件时序。例如,在图I所示的实施例中,第一存储单元140、第二存储单元150与第二 FPGA130的内部缓存(即,FIFO)组成缓存结构,并且一起配合来对数据信号执行乒乓缓存操作。所述乒乓缓存操作指的是当对一个存储单元执行写入操作时,对另一存储单元执行读取操作。对第一存储单元140和第二存储单元150执行写入和/或读取操作的切换时序由第二FPGA 130控制。当第二 FPGA 130对一个存储单元执行写入操作并且写满该存储单元时,第
二FPGA 130变为对该存储单元执行读取操作。当第二 FPGA 130对一个存储单元执行读取操作并且读空该存储单元时,第二 FPGA 130变为对该存储单元执行写入操作。此外,第一存储单元140和第二存储单元150的存储容量通常被设置为大小相等,并且该大小由第一FPGA 120根据输入信号的速率控制第二 FPGA 130来设定。此外,在数据记录过程中,数据需要在装置100和外部记录装置(例如,计算机)之间进行传输,为了达到速率的上限要求,装置100还可以包括总线桥接器160,用于实现第一总线与第二总线间的桥接。在这种情况下,通常需要第一 FPGA 120与总线桥接器160之间通过第一总线(即,局部总线)相连,而总线桥接器160与外部记录装置(例如,计算机)通过第二总线(例如,PCI-E总线)相连。在本发明的一个示例中,所述总线桥接器160可以采 用PLX公司的PEX8311。 图3示出了根据本发明实施例的总线控制结构的一个示例的示图。在图3中示出了 FPGA芯片、PEX8311芯片以及PCI-E接口总线的关系。PEX8311是PLX公司的一款PCI-E总线到局部总线的桥接芯片,支持2. 5Gbps的单向传输速率,使数据能够通过PCI-E总线与计算机相互传输,满足速率要求。局部总线采用66M晶振产生的时钟,数据以32bit位宽并行传输。图4示出了根据本发明实施例的适应多速率的数据缓存结构的一个示例的示意图,在该图中采用总线桥接器PEX8311,在进行数据记录时,首先利用PLX公司提供的API函数开启PEX8311的DMA传输。如图4所示,DDR2内存的工作时钟为IOOMHz,由FPGA提供。由于DDR2内存为64bit总线宽度,所以DDR2内存的接口速率可以达到12Gbps以上,完全可以应对IGbps的串行数据流。在进行数据记录时,第一 FPGA 120将输入数据不断写入到第二 FPGA 130,第
二FPGA 130再将数据写入到DDR2内存中进行缓存。当一片DDR2内存被写入时,第二 FPGA130从另一片DDR2内存中读出数据并且缓存到第二 FPGA 130的FIFO中。当FIFO内的数据大于第一预定值时,第二 FPGA 130将FIFO中缓存的数据传到第一 FPGA 120。随后,第一 FPGA 120将数据传到总线桥接器PEX8311。然后,通过DMA传输,将数据信号从总线桥接器PEX8311传输到外部记录装置(例如,计算机)的指定位置(例如,指定文件)中。此外,当PEX8311的DMA传输出现短暂阻塞时,第二 FPGA 140从DDR2内存中读取数据也将暂停,但不影响对另一块内存的数据写入。此外,为了使系统能够自适应地匹配IMbps到IOOOMbps的数据速率变化,并且不会因为瞬间高速信号的输入输出,导致系统产生溢出,在本发明中,第一存储单元140和第二存储单元150的存储容量大小(即缓存区大小)被设置为根据输入数据的数据速率设定,即由第一 FPGA根据输入信号的数据速率控制第二 FPGA来设定。例如,可以在外部记录装置端(例如,计算机软件端),根据输入数据速率将需要开辟的缓存区大小通过命令传至第一 FPGA 120,第一 FPGA 120进而可以控制第二 FPGA 130来设定缓存区大小。在本发明中,缓存区大小与输入数据速率有关。当输入数据速率快时,缓存区被设置为较大,从而防止因数据写入PEX8311的瞬时速率低而造成缓存溢出。此外,缓存区大小也不可以设置为过大,否则在初始阶段,数据写满一片DDR2内存需要很长时间,将导致第一 FPGA长时间无法读取数据,影响记录效率。图5示出了根据本发明实施例的用于高速数据回放的装置500的结构框图。如图5所示,装置500包括信号输出电路510、第三FPGA 520、第四FPGA530、第三存储单元540和第五存储单元550。信号输出电路510用于将所接收的数据转换为基带信号。第三FPGA 520通过总线与外部记录装置相连。此外,第三FPGA 520还与所述信号输出电路510和第四FPGA 530相连。在进行数据回放时,第三FPGA 520被配置为通过总线从外部记录装置(例如,计算机)读取所记录的数据,并将所读取的数据持续地传输到第四FPGA。此外,在从第四FPGA 530接收到数据后,第三FPGA 520还被配置为将所接收的数据,按照指定速率传输到信号输出电路510,并且由信号输出电路510转换为信号后进行回放。所述指定速率是由第三FPGA根据所接收的数据回放指令中的回放速率信息设定的。在本发明的一个示例中,所述指定速率是由第三FPGA根据所接收的数据回放指令中的回放速率信息,通过可调频率综合器 设定的。第四FPGA 530与所述第三FPGA 520、第三存储单元540和第四存储单元550相连。第四FPGA 530的内部缓存与第三和第四存储单元组成缓存结构,对数据信号进行乒乓缓存操作。第四FPGA 530被配置为将从第三FPGA 520接收的数据写入到第三和第四存储单元中的一个内存单元中,同时从另一内存单元读取数据并缓存在第四FPGA 530的内部缓存中。此外,在内部缓存所缓存的数据的大小达到第二预定值时,将内部缓存的数据传送到第三 FPGA 520。在本发明的另一示例中,装置500还可以包括总线桥接器560,用于实现第一总线和第二总线之间的桥接。在这种情况下,第三FPGA 520与总线桥接器560之间通过第一总线(例如,局部总线)连接,而总线桥接器560与外部记录装置(例如,计算机)之间通过第二总线(例如,PCI-E总线)连接。此外,在本发明的另一示例中,装置500还可以包括频率综合器570,用于根据从第三FPGA接收的数据回放指令中的速率信息,设置数据回放时的回放速率,即第三FPGA传输到信号输出电路的指定速率。另外,在本发明的另一示例中,与图I中的信号输入电路110类似,数据信号输出电路510也可以包括并串及电平变换单元,用于对从第三FPGA输出的数据进行并串及电平变换,以转换为基带信号。图6示出了根据本发明的数据回放的工作原理和过程的示意图。在该过程中,用户通过外部记录装置端(例如,计算机软件端)设置回放速率。当第三FPGA 520接收到数据回放指令时,将回放速率大小信息通过命令字传给频率综合器570。频率综合器570输出相应频率的正弦信号,通过MAX9600芯片将正弦信号变为PECL电平的时钟信号,MAX9600芯片输出的PECL再经过始终驱动芯片MC100EP14送给Ι/Q并串转换芯片为MC10EP446,同时它可以根据输入时钟信号进行1/8分频,将得到的1/8分频信号送给MC100LVELT23芯片变为LVTTL电平信号后传给FPGA,实现8位并行数据输出。此外,在图6中所示的电路中,还采用延迟芯片MC10EP195将输出的串行I/Q信号与时钟信号对齐,由时钟延迟芯片输出的LVPECL时钟信号以及芯片MC10EP446输出的I、Q两路信号经过MC100EP91芯片转化为NECL电平信号。回放部分的末端为MC10EP16芯片,用以驱动NECL电平信号。这里要说明的是,上述第一预定值和第二预定值通常被设置为固定值,可以相同,也可以不同。图7示出了根据本发明的数据记录与回放系统10的结构框图。如图7所示,数据记录与回放系统10包括如上所述的装置100、如上所述的装置500、记录装置200。图8示出了根据本发明的数据记录与回放系统10的一个示例的示意图。在该示例中,所述第一 FPGA和第二 FPGA分别与所述第三FPGA和第四FPGA相同,以及所述第一和第二存储单元分别与所述第三和第四存储单元相同。换言之,第一 FPGA与第三FPGA是同一芯片,第二 FPGA与第四FPGA是同一芯片,第一存储单元与第三存储单元是同一存储单元,第二存储单元与第四存储单元是同一存储单元。 在本发明的一个示例中,数据记录与回放系统10还可以具有误码统计功能。图9示出了根据本发明实施例的数据记录与回放系统中用于实现误码统计的结构的示图。如图9所示,在数据记录与回放系统10的第一 FPGA中还可以包括本地M序列产生模块、同步模块/异或运算模块以及计数/误码统计模块。本地M序列产生模块和外部电路中的M序列产生模块都使用移位寄存器和异或门构成。在对所输入的外部M序列产生模块所生成的M序列进行误码统计时,将所接收到的前数个(个数取决于M序列的模式)数据输入到本地M序列产生模块的移位寄存器中,使寄存器自身循环得到与信道同步的正确M序列。将自信道传输来的M序列与本地产生的M序列通过同步模块使数据同步并进行异或运算找出错误比特位。然后,计数/误码统计模块对误比特数进行统计并计算出系统误码率。最后,通过Mailbox寄存器将比对得到的误码率数值传输给服务器,由此完成信号误码率的统计。Mailbox寄存器可以采用PEX8311提供的32位mailbox寄存器,这些寄存器的值可在软件部分调用API函数进行任意的读写,也可以在硬件中由FPGA通过局部总线按照一定的时序进行读写。在本发明中,在执行高速数据回放或记录的时候,利用PEX8311提供的DMA数据传输模式。在DMA传输模式下,通过PLX公司提供的API函数启动和设置DMA传输,并利用API函数得到记录的数据或传出回放的数据。如上参照图I到图9对根据本发明的数据记录与回放系统进行了说明。下面将参照图10到图11对根据本发明的数据记录与回放方法进行描述。图10示出了根据本发明实施例的用于进行高速数据记录的方法的流程图。如图10所示,在进行高速数据记录时,首先,在步骤S1010,通过信号输入电路接收从外部输入的信号,将所接收的信号转换为数据,然后将经过转换后得到的数据传输到第一 FPGA。在接收到从信号输入电路传输的数据后,在步骤S1020,第一 FPGA将所接收的数据持续输出到第二 FPGA。然后,在步骤S1030,第二 FPGA将从第一 FPGA接收的数据写入到第一和第二存储单元中的一个存储单元中,同时从另一存储单元读取数据并缓存在第二 FPGA的内部缓存中。这里,所述第一和第二存储单元的存储容量大小相等,并且由第一 FPGA根据输入数据的速率控制第二 FPGA来设定。接着,在步骤S1040,判断内部缓存的数据的大小是否达到第一预定值。在内部缓存所缓存的数据的大小达到第一预定值时,即,步骤S1040的判断结果为是时,在步骤S1050,将内部缓存的数据传送到第一 FPGA。在从第二 FPGA接收到数据后,在步骤S1060,第一 FPGA通过总线将所接收的数据传输到外部记录装置中进行记录,由此完成高速数据记录过程。在存在总线桥接器(例如,PEX8311)的情况下,还需要利用API函数开启PEX8311的DMA传输功能,并且通过局部总线,将数据从第一 FPGA传入PEX8311,然后PEX8311将数据通过PCI-E总线传递给外部记录装置。图11示出了根据本发明实施例的用于进行高速数据回放的方法的流程图。在进行数据回放时,首先,在步骤S1110,第三FPGA通过总线从外部记录装置读取所记录的数据,并将所读取的数据信号持续地传输到第四FPGA。在存在总线桥接器(例如,PEX8311)的情况下,还需要利用API函数开启PEX8311的DMA传输功能,并且通过PCI-E 总线,将数据从外部记录装置传入PEX8311,然后PEX8311将数据通过局部总线传递给第三FPGA。在从第三FPGA接收到数据后,在步骤SI 120,第四FPGA将从第三FPGA接收的数据写入到第三和第四存储单元中的一个内存单元中,同时从另一内存单元读取数据并缓存在第四FPGA的内部缓存中。接着,在步骤S1130,判断内部缓存所缓存的数据的大小是否达到第二预定值。在内部缓存所缓存的数据的大小达到第二预定值时,即步骤S1130的判断结果为是时,在步骤S1140,第四FPGA将内部缓存的数据传送到第三FPGA。在从第四FPGA接收到数据后,在步骤S1150,第三FPGA将所接收的数据按照指定速率传输到信号输出电路,并且转换为基带信号进行回放。利用本发明的数据记录与回放系统,通过根据输入数据的数据速率设置用于缓存数据的存储单元的存储容量大小(缓冲区大小),可以自适应地匹配数据传输中的数据速率变化,而无需设置手动更改系统。此外,通过将本发明的缓存结构的缓存大小设置为足够大,即使出现瞬间高速信号的输入输出,也不会因溢出而丢失数据。此外,根据本发明的方法还可以被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本发明的方法中限定的上述功能。此外,上述方法步骤以及系统单元也可以利用控制器(例如,处理器)以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储设备实现。尽管前面公开的内容示出了本发明的示例性实施例,但是应当注意,在不背离权利要求限定的本发明的范围的前提下,可以进行多种改变和修改。根据这里描述的发明实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明的元素可以以个体形式描述或要求,但是也可以设想多个,除非明确限制为单数。虽然如上参照图描述了根据本发明的各个实施例进行了描述,但是本领域技术人员应当理解,对上述本发明所提出的各个实施例,还可以在不脱离本发明内容的基础上做出各种改进。因此,本发明的保护范围应当由所附的权利要求书的内容确定。
权利要求
1.一种用于实现高速数据记录的装置,包括 信号输入电路,被配置为接收从外部输入的基带信号,并且将所接收的基带信号转换为数据; 第一 FPGA,与所述信号输入电路相连并且通过总线与外部记录装置相连,被配置为从信号输入电路接收数据,并且将所接收的数据持续输出到第二 FPGA,以及在从第二 FPGA接收到数据后,将所接收的数据通过总线传输到外部记录装置中进行记录; 第二FPGA,与所述第一FPGA相连,被配置为将从第一FPGA接收的数据写入到第一和第二存储单元中的一个存储单元中,同时从另一存储单元读取数据并缓存在第二 FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第一预定值时,将内部缓存的数据传送到第一 FPGA ; 第一和第二存储单元,与所述第二 FPGA相连,其中所述两个存储单元和所述第二 FPGA协作进行乒乓缓存操作, 其中,所述第一和第二存储单元的存储容量大小相等,并且由第一 FPGA根据输入信号的速率控制第二 FPGA来设定。
2.如权利要求I所述的装置,其中,所述信号输入电路还包括 电平及串并变换单元,用于对从外部输入的基带信号进行电平及串并变换。
3.如权利要求I所述的装置,还包括 总线桥接器,用于实现第一总线与第二总线间的桥接, 其中,第一 FPGA与总线桥接器通过第一总线相连,以及所述总线桥接器与外部记录装置通过第二总线相连。
4.如权利要求I所述的装置,其中,所述总线桥接器是PEX8311。
5.一种用于实现高速数据回放的装置,包括 信号输出电路,用于将所接收的数据转换为基带信号; 第三FPGA,与所述信号输出电路相连并且通过总线与外部记录装置相连,被配置为从外部记录装置读取所记录的数据,并将所读取的数据持续地传输到第四FPGA,以及在从第四FPGA接收到数据后,将所接收的数据按照指定速率传输到信号输出电路并转换为基带信号后进行回放; 第四FPGA,与所述第三FPGA相连,被配置为将从第三FPGA接收的数据写入到第三和第四存储单元中的一个内存单元中,同时从另一内存单元读取数据并缓存在第四FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第二预定值时,将内部缓存的数据传送到第三FPGA ;以及 第三和第四存储单元,与所述第四FPGA相连,其中所述第三和第四存储单元和所述第四FPGA协作进行乒乓缓存操作。
6.如权利要求5所述的装置,其中,所述信号输出电路还包括 电平及并串变换单元,用于对从所述第三FPGA输出的数据进行并串及电平变换。
7.如权利要求5所述的装置,还包括 总线桥接器,用于实现第一总线与第二总线间的桥接, 其中,所述第三FPGA与总线桥接器通过第一总线相连,以及所述总线桥接器与外部记录装置通过第二总线相连。
8.如权利要求5所述的装置,其中,所述预定速率是由第三FPGA根据所接收的数据回放指令中的回放速率信息设定的。
9.如权利要求8所述的装置,其中,所述预定速率是由第三FPGA根据所接收的数据回放指令中的回放速率信息,通过频率综合器设定的。
10.一种数据记录与回放系统,包括 如权利要求I到4中任何一个所述的装置; 如权利要求5到9中任何一个所述的装置; 记录装置。
11.如权利要求10所述的数据记录与回放系统,其中,所述第一FPGA和第二 FPGA分别与所述第三FPGA和第四FPGA相同,以及所述第一和第二存储单元分别与所述第三和第四存储单元相同。
12.—种由权利要求I所述的装置执行的数据记录方法,包括 通过信号输入电路接收从外部输入的基带信号并转换为数据,并将经过转换得到的数据传输到第一 FPGA ; 第一 FPGA将所接收的数据持续输出到第二 FPGA ; 第二 FPGA将从第一 FPGA接收的数据写入到第一和第二存储单元中的一个存储单元中,同时从另一存储单元读取数据并缓存在第二 FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第一预定值时,将内部缓存的数据传送到第一 FPGA ;以及 在从第二 FPGA接收到数据后,第一 FPGA通过总线将所接收的数据传输到外部记录装置中进行记录, 其中,所述第一和第二存储单元的存储容量大小相等,并且由第一 FPGA根据输入信号的速率控制第二 FPGA来设定。
13.一种由权利要求5所述的装置执行的数据回放方法,包括 第三FPGA通过总线从外部记录装置读取所记录的数据,并将所读取的数据持续地传输到第四FPGA ; 第四FPGA将从第三FPGA接收的数据写入到第三和第四存储单元中的一个内存单元中,同时从另一内存单元读取数据并缓存在第四FPGA的内部缓存中,并且在内部缓存所缓存的数据的大小达到第二预定值时,将内部缓存的数据传送到第三FPGA ;以及 在从第四FPGA接收到数据后,第三FPGA将所接收的数据按照指定速率传输到信号输出电路并转换为基带信号进行回放。
全文摘要
本发明提供了一种数据记录与回放系统。该系统包括信号输入电路、信号输出电路、两个存储单元、相互协作的第一和第二FPGA以及外部记录装置。两个存储单元与第二FPGA组成缓存结构,对数据进行乒乓缓存处理。该两个存储单元的存储容量大小由第一FPGA根据输入数据的数据速率确定。利用该数据记录与回放系统,可以自适应地适配高速数据传输中的数据速率变化,而无需手动更改系统。此外,还可以消除由于瞬间高速信号的输入输出而导致系统产生溢出等问题。
文档编号H04B7/185GK102882585SQ201210326610
公开日2013年1月16日 申请日期2012年9月5日 优先权日2012年9月5日
发明者张洪群, 吴业炜, 韩家玮, 李安, 张彧, 张国敬 申请人:中国科学院对地观测与数字地球科学中心, 清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1