CN113419599A - 数据同步方法、装置、电子设备及存储介质 - Google Patents
数据同步方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113419599A CN113419599A CN202110786981.7A CN202110786981A CN113419599A CN 113419599 A CN113419599 A CN 113419599A CN 202110786981 A CN202110786981 A CN 202110786981A CN 113419599 A CN113419599 A CN 113419599A
- Authority
- CN
- China
- Prior art keywords
- chip
- port
- output
- signals
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012360 testing method Methods 0.000 claims abstract description 28
- 238000006243 chemical reaction Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 10
- 238000005215 recombination Methods 0.000 claims description 3
- 230000006798 recombination Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 8
- 238000005070 sampling Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000001788 irregular Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
- G06F13/423—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请提供一种数据同步方法、装置、电子设备及存储介质,包括:在AD芯片为测试模式下,针对AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至对应的I/O口;第一信号和第二信号不同;确定多个信号的连续M个信号中的第一信号的数量;在确定数量不为一个时,将对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个时,将AD芯片配置为正常工作模式,保证各个I/O口输出的信号的中心与FPGA的内部时钟沿对齐,实现数据同步。
Description
技术领域
本申请涉及数字信号技术领域,具体而言,涉及一种数据同步方法、装置、电子设备及存储介质。
背景技术
波形数字化技术,即,利用高采样率的AD芯片将模拟信号转换成数字信号,从而便于在计算机、处理芯片中进行处理的技术。由于光信号的传输速度特别快,因此,对于作为对光信号进行采样的AD芯片的采样频率的要求比较高。随着单通道采样频率的提高,AD芯片的价格也成倍地上涨,为了在获得更高的采样频率的同时减少成本,可以进行多通道采样的AD芯片应运而生。
然而,由于各种原因导致AD芯片的各个数据位通道输出至现场可编程门阵列(Field Programmable Gate Array,FPGA)的对应I/O口的信号的中心无法与FPGA的时钟沿对齐,继而导致AD芯片输出的数据无法被FPGA正确地采样。
发明内容
鉴于此,本申请实施例的目的在于提供一种数据同步方法、装置、电子设备及存储介质,以解决上述问题。
第一方面,本申请实施例提供一种数据同步方法,所述方法包括:在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应;确定所述多个信号的连续M个信号中的所述第一信号的数量;在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
在上述实现过程中,通过将AD芯片配置为在测试模式下,多个数据通道中的每个数据位通道每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口,继而在AD芯片为测试模式下,针对每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号,并在确定多个信号的连续M个信号中的第一信号的数量为不为一个时,将对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个时,才将所述AD芯片配置为正常工作模式,由此,保证各个I/O口输出的信号的中心与FPGA的内部时钟沿对齐,实现数据同步,继而保证AD芯片输出的数据能够被FPGA正确地采样。
基于第一方面,在一种可能的设计中,所述将所述AD芯片配置为正常工作模式,包括:在确定各个I/O口在同一个时钟周期输出的信号相同时,将所述AD芯片配置为正常工作模式。
在上述实现过程中,在确定各个I/O口在同一个时钟周期输出的信号相同时,才将所述AD芯片配置为正常工作模式,以保证AD芯片在正常工作模式下,各个I/O口能够将需要同步输出的数据同步输出,继而保证AD芯片输出的数据能够被FPGA正确地采样。
基于第一方面,在一种可能的设计中,所述方法还包括:在确定各个I/O口在同一个时钟周期输出的信号不同时,确定在该时钟周期输出所述第一信号的目标I/O口;针对每个目标I/O口,将该目标I/O口对应的延时模块的第二延时参数的值加1个时钟周期,直至各个I/O口在同一个时钟周期输出的信号相同。
在上述实现过程中,在确定各个I/O口在同一个时钟周期输出的信号不同时,通过确定出在该时钟周期输出所述第一信号的目标I/O口;针对每个目标I/O口,将该目标I/O口对应的延时模块的第二延时参数的值加1个时钟周期,直至各个I/O口在同一个时钟周期输出的信号相同,以保证AD芯片在正常工作模式下,各个I/O口按照对应的延时模块中的第一延时参数的值和第二延时参数的值,在FPGA的内部时钟的基础上延时输出数据,以使各个I/O口能够将需要同步输出的数据同步输出,继而保证AD芯片输出的数据能够被FPGA正确地采样。
基于第一方面,在一种可能的设计中,若所述AD芯片的多个数据位通道被划分为至少两个通道组,每个所述通道组包括相同数量的数据位通道,且不同的所述通道组中数据位通道各不相同,所述方法还包括:在所述AD芯片为正常工作模式下,通过所述FPGA的I/O口获取各个通道组输出的数据;针对每个通道组,确定出该通道组输出的数据的幅值、功率和相位;将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与所述基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值;将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致。
在上述实现过程中,在所述AD芯片为正常工作模式下,根据各个I/O口输出的数据,确定出各个通道组输出的数据的幅值、功率和相位,并将至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值;接着通过将控制字偏置参数的值,写入AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致,继而保证各个通道组输出的数据的幅值、功率和相位一致,以实现数据同步,从而实现在AD芯片处于正常工作模式下,保证各个数据的幅值、功率和相位的一致性。
基于第一方面,在一种可能的设计中,所述方法还包括:在所述AD芯片为正常工作模式下,获取所述FPGA中的各个高速串并转换模块输出的数据;所述FPGA中的高速串并转换模块与I/O口一一对应连接;按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据的排列顺序一致。
在上述实现过程中,按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据的排序顺序一致,保证数据处理前后的一致性。
第二方面,本申请实施例提供一种数据同步装置,所述装置包括:第一获取单元,用于在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应;数量确定单元,用于确定所述多个信号的连续M个信号中的所述第一信号的数量;第一延时处理单元,用于在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
基于第二方面,在一种可能的设计中,所述将所述AD芯片配置为正常工作模式,包括:在确定各个I/O口在同一个时钟周期输出的信号相同时,将所述AD芯片配置为正常工作模式。
基于第二方面,在一种可能的设计中,所述装置还包括:目标I/O口确定单元,用于在确定各个I/O口在同一个时钟周期输出的信号不同时,确定在该时钟周期输出所述第一信号的目标I/O口;第二延时处理单元,用于针对每个目标I/O口,将该目标I/O口对应的延时模块的第二延时参数的值加1个时钟周期,直至各个I/O口在同一个时钟周期输出的信号相同。
基于第二方面,在一种可能的设计中,若所述AD芯片的多个数据位通道被划分为至少两个通道组,每个所述通道组包括相同数量的数据位通道,且不同的所述通道组中数据位通道各不相同,所述装置还包括:第二获取单元,用于在所述AD芯片为正常工作模式下,通过所述FPGA的I/O口获取各个通道组输出的数据;信息确定单元,用于针对每个通道组,确定出该通道组输出的数据的幅值、功率和相位;参数值确定单元,用于将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与所述基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值;参数值写入单元,用于将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致。
基于第二方面,在一种可能的设计中,所述装置还包括:第三获取单元,用于在所述AD芯片为正常工作模式下,获取所述FPGA中的各个高速串并转换模块输出的数据;所述FPGA中的高速串并转换模块与I/O口一一对应连接;重组单元,用于按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据一致。
第三方面,本申请实施例提供一种电子设备,包括处理器以及与所述处理器连接的存储器,所述存储器内存储计算机程序,当所述计算机程序被所述处理器执行时,使得所述电子设备执行第一方面所述的方法。
第四方面,本申请实施例提供一种存储介质,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行第一方面所述的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的电子设备的结构示意图。
图2为本申请实施例提供的数据同步系统的结构示意图。
图3为本申请实施例提供的数据同步方法的流程示意图。
图4为本申请实施例提供的数据同步装置的结构示意图。
图标:100-电子设备;101-处理器;102-存储器;103-存储介质;400-数据同步装置;410-第一获取单元;420-数量确定单元;430-第一延时处理单元。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参照图1,图1为本申请实施例提供的一种电子设备100的结构示意图,电子设备100可以是个人电脑、平板电脑、智能手机、个人数字助理(personal digital assistant,PDA)等。
电子设备100可以包括:存储器102、处理器101、通信接口101和通信总线,通信总线用于实现这些组件的连接通信。
所述存储器102用于存储本申请实施例提供的数据同步方法和装置对应的计算程序指令等各种数据,其中,存储器102可以是,但不限于,随机存取存储器,只读存储器(ReadOnly Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器101用于读取并运行存储于存储器中的数据同步方法和装置对应的计算机程序指令,在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取现场可编程门阵列(Field Programmable Gate Array,FPGA)中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应;确定所述多个信号的连续M个信号中的所述第一信号的数量;在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
其中,处理器101可能是一种集成电路芯片,具有信号的处理能力。上述的处理器101可以是通用处理器,包括CPU、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
通信接口103,用于接收或者发送数据。
请参照图2,图2为本申请实施例提供的一种数据同步系统,所述系统包括:电子设备100、AD芯片和FPGA;所述电子设备100分别与所述AD芯片和所述FPGA连接;所述AD芯片与所述FPGA连接;
所述AD芯片包括:多个数据位通道;
所述FPGA包括:I/O口模块和内部时钟;所述I/O模块与所述内部时钟连接;所述I/O口模块包括多个I/O口;I/O口的数量大于等于数据位通道的数量;所述多个数据位通道与所述多个I/O口一一对应连接;
所述FPGA还包括:多个延时模块;所述多个延时模块与所述I/O口模块连接;延时模块的数量与数据位通道的数量一致;延时模块和与数据位通道对应连接的I/O口一一对应,延时模块用于控制与数据位通道对应连接的I/O口输出信号的时间。
请参照图3,图3为本申请实施例提供的一种数据同步方法的流程图,所述方法应用于图3所示的电子设备100,下面将对图3所示的流程进行详细阐述,所述方法包括步骤S31-S33。
S31:在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应。
S32:确定所述多个信号的连续M个信号中的所述第一信号的数量。
S33:在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
下面对上述方法进行详细介绍。
作为一种实施方式,在S31之前,所述方法还包括:向所述AD芯片发送配置指令,以将所述AD芯片配置为在自身处于测试模式下,每个数据位通道按照FPGA的内部时钟,每隔预设M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;其中,M为大于等于2的正整数;所述第一信号和所述第二信号不同。
在本实施例中,所述第一信号为电平值为1的信号,所述第二信号为电平值为0的信号;在其他实施例中,所述第一信号和所述第二信号的电平值还可以为其他值,根据实际需求设定。
作为一种实施方式,在S31之前,所述方法还包括:向所述AD芯片发送测试指令,以将所述AD芯片配置为测试模式。
其中,可以通过如下方式将AD芯片配置为测试模式,将所述AD芯片中的状态参数的值设置为0、1、01等,根据实际需求设定,以使所述AD芯片处于测试模式。
S31:在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应。
在实际实施过程中,S31可以按照如下方式实施,在所述AD芯片为测试模式下,由于每个数据位通道会按照FPGA的内部时钟每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口,因此,针对每个数据位通道,电子设备100获取与该数据位通道对应连接的I/O口连续输出的多个信号,其中,所述多个信号的数量大于等于M。
电子设备100在获取到所述多个信号之后,执行步骤S32。
S32:确定所述多个信号的连续M个信号中的所述第一信号的数量。
在实际实施过程中,S32可以按照如下方式实施,从所述多个信号中随机地确定出一组连续的M个信号,继而针对该组连续的M个信号中的每个信号,确定该信号的电平值是否与第一信号的电平值相同,若相同,则确定该信号为第一信号;若不相同,则确定该信号不为所述第一信号,继而确定出该组连续的M个信号中的第一信号的数量。
作为一种实施方式,在所述多个信号的数量大于等于M时,从所述多个信号中确定出至少两组连续的M个信号,针对每组连续的M个信号,均采用上述方式确定该组连续的M个信号中的第一信号的数量。
S33:在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
若S32中确定出一组连续的M个信号中的第一信号的数量,则S33可以按照如下方式实施,确定所述数量是否为一个,在所述数量不为一个时,电子设备100向所述对应的I/O口对应的延时模块发送第一延时指令,以控制所述对应的延时模块将当前时刻存储的第一延时参数的值加1,实现对所述对应的延时模块的第一延时参数的值的更新;其中,所述对应的延时模块的第一延时参数的初始值为0,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间,所述对应的I/O口的信号输出时间在FPGA的内部时钟的基础上延时第一时长,其中,第一时长的值等于所述第一延时参数的值与预设时长的积,所述预设时长根据实际需求设定,所述预设时长小于所述FPGA的内部时钟的一个时钟周期。
在对所述对应的延时模块的第一延时参数的值的更新之后,获取该数据位通道对应的I/O口根据所述第一延时参数的当前值连续输出的新的M个信号,并确定该数据位通道对应的I/O口连续输出的新的M个信号中的第一信号的数量是否为一个,在为是时,停止对该数据位通道对应的I/O口模块的第一延时参数的值进行更新,直至确定各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个时,向AD芯片发送测试结束指令,以将AD芯片配置为工作模式。
其中,可以通过如下方式将AD芯片配置为工作模式,将所述AD芯片中的状态参数的值设置为0、1、01等,根据实际需求设定,以使所述AD芯片处于工作模式;其中,工作模式和测试模式各自对应的状态参数的值不同。
值得一提的是,在AD芯片被配置为工作模式时,AD芯片不会输出第一信号或第二信号,而是将第三方设备输入至AD芯片的初始数据采样后并行输出至FPGA。其中,在本实施例中,所述初始数据为雷达数据,在其他实施例中,所述初始数据也可以其他类型的数据。
若S32中确定出至少两组连续的M个信号中的各个组所对应的数量,则S33可以按照如下方式实施,电子设备100确定至少两组中的每个组所对应的数量是否均为一个,若为否,电子设备100向所述对应的I/O口对应的延时模块发送第一延时指令,以控制所述对应的延时模块将当前时刻存储的第一延时参数的值加1,实现对所述对应的延时模块的第一延时参数的值的更新,直至确定各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个时,电子设备100向AD芯片发送测试结束指令,以将AD芯片配置为工作模式。
作为一种实施方式,所述将所述AD芯片配置为正常工作模式,包括:在确定各个I/O口在同一个时钟周期输出的信号相同时,将所述AD芯片配置为正常工作模式。
具体地,在确定各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个之后,实时或不定时地获取各个I/O口在同一个时钟周期输出的一个信号,确定各个I/O口在该时钟周期输出的信号的电平值是否相同,若相同,则将所述AD芯片配置为正常工作模式。
与上述实施方式不同的是,实时或不定时地获取各个I/O口在多个时钟周期输出的信号,针对多个时钟周期中的每个时钟周期,若各个I/O口在该时钟周期输出的信号的电平值均相同,则将所述AD芯片配置为正常工作模式。
作为一种实施方式,所述方法还包括步骤A1和A2。
A1:在确定各个I/O口在同一个时钟周期输出的信号不同时,确定在该时钟周期输出所述第一信号的目标I/O口。
在实际实施过程中,A1可以按照如下方式实施,在确定各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个之后,实时或不定时地获取各个I/O口在同一个时钟周期输出的一个信号,确定各个I/O口在该时钟周期输出的信号的电平值是否相同,若不相同,则确定在该时钟周期输出的信号为所述第一信号的目标I/O口。
与上述实施方式不同的是,实时或不定时地获取各个I/O口在多个时钟周期输出的信号,针对多个时钟周期中的每个时钟周期,若确定各个I/O口在该时钟周期输出的信号的电平值不同,则确定在该时钟周期输出所述第一信号的目标I/O口。
在确定出目标I/O口之后,执行步骤A2。
A2:针对每个目标I/O口,将该目标I/O口对应的延时模块的第二延时参数的值加1个时钟周期,直至各个I/O口在同一个时钟周期输出的信号相同。
在实际实施过程中,A2可以按照如下方式,针对每个目标I/O口,电子设备100向该目标I/O口对应的延时模块发送第二延时指令,以控制所述对应的延时模块将当前时刻存储的第二延时参数的值加1个时钟周期,实现对所述对应的延时模块的第二延时参数的值的更新;其中,所述对应的延时模块的第二延时参数的初始值为0,所述对应的延时模块的第二延时参数和第一延时参数一起用于控制所述对应的I/O口的信号输出时间,所述对应的I/O口的信号输出时间在FPGA的内部时钟的基础上延长第二时长,其中,所述第二时长等于对应的I/O口的第一时长与第二延时参数的值之和。
在对所述对应的延时模块的第二延时参数的值的更新之后,实时或者不定时地获取各个I/O口根据对应的第一延时参数和第二延时参数当前值,在同一个时钟周期输出的一个信号,确定各个I/O口在该时钟周期输出的新的信号是否相同,若相同,则停止更新各个I/O口各自对应的第二延时参数的值。
在对所述对应的延时模块的第二延时参数的值的更新之后,与上述实施方式不同的是,实时或者不定时地获取各个I/O口根据对应的第一延时参数和第二延时参数当前值,在多个时钟周期输出的信号,针对多个时钟周期中的每个时钟周期,若确定各个I/O口在该时钟周期输出的信号的电平值均相同,则停止更新各个I/O口各自对应的第二延时参数的值。
作为一种实施方式,若所述AD芯片的多个数据位通道被划分为至少两个通道组,每个所述通道组包括相同数量的数据位通道,且不同的所述通道组中数据位通道各不相同;所述AD芯片包括至少两个控制字寄存器,控制字寄存器与通道组一一对应;所述方法还包括步骤:B1-B4。
B1:在所述AD芯片为正常工作模式下,通过所述FPGA的I/O口获取各个通道组输出的数据。
在实际实施过程中,B1可以按照如下方式实施,在所述AD芯片为正常工作模式下,电子设备100向AD芯片串行的输入多个测试数据,以使AD芯片针对至少两个通道组中每个通道组,根据预先设定的该通道组对应的信号的幅值、功率和相位,对需要通过该通道组输出的测试数据处理后输出至对应的I/O口,继而电子设备100获取与该通道组对应的I/O口输出的数据。
其中,测试数据可以为正弦信号或余弦信号,在本实施例中,测试数据为正弦信号。
与上述实施方式不同的是,多个测试数据也可以是第三方设备发送的。
在获取到各个通道组输出的数据之后,执行步骤B2。
B2:针对每个通道组,确定出该通道组输出的数据的幅值、功率和相位。
在实际实施过程中,B2可以按照如下方式实施,针对每个通道组,根据该通道组输出的数据,确定出该通道组输出的各个数据的幅值的平均值、各个数据的功率的平均值和各个数据的相位的平均值。
其中,该通道组输出的各个数据的幅值的平均值为该通道组对应的幅值;该通道组输出的各个数据的功率的平均值为该通道组对应的功率;该通道组输出的各个数据的相位的平均值为该通道组对应的相位。
在确定出各个通道组各自对应的幅值、相位和功率之后,执行步骤B3。
B3:将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与所述基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值。
在实际实施过程中,B3可以按照如下方式实施,将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,将该通道组和基准通道各自对应的幅值作差,得到幅值差;将该通道组和基准通道各自对应的功率作差,得到功率差;将该通道组和基准通道各自对应的相位作差,得到相位差;继而根据幅值差、功率差和相位差,确定出与该通道组对应的控制字偏置参数的值。
其中,根据幅值差、功率差和相位差,确定控制字偏置参数的值的具体实施方式为本领域熟知技术,因此,在此不再赘述。
针对其余通道组中的每个通道组,在确定出该通道组对应的控制字偏置参数的值之后,执行步骤B4。
B4:将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致。
电子设备100将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,其中,通道组与控制字寄存器一一对应,以使AD芯片在正常工作模式下,可以根据与该通道组对应的控制字寄存器中的控制字偏置参数的值,对需要从该通道组输出的数据进行处理后输出,最终使得该通道组输出的数据的幅值、功率和相位与基准通道组一致。
作为一种实施方式,所述FPGA还包括:多个高速串并转换模块,多个高速串并转换模块与多个数据位通道对应的I/O口一一对应连接,所述方法还包括步骤C1-C2。
C1:在所述AD芯片为正常工作模式下,获取所述FPGA中的各个高速串并转换模块输出的数据;所述FPGA中的高速串并转换模块与I/O口一一对应连接。
在所述AD芯片为正常工作模式下,若外界设备串行的向AD芯片输入原始数据,AD芯片根据内部时钟,将原始数据进行处理后从各个数据位通道并行的输出至对应的I/O口,I/O模块根据内部时钟和对应的I/O口对应的延时模块,控制从对应的I/O口输出处理后的数据至对应的高速串并转换模块的时间,则C1按照如下方式实施,在所述AD芯片为正常工作模式下,针对每个高速串并转换模块,获取该高速串并转换模块输出的数据。
若AD芯片包括控制字寄存器,则AD芯片将原始数据进行处理后从各个数据位通道并行的输出至对应的I/O口可以按照如下方式实施:
AD芯片针对每个数据位通道,若该数据位通道对应的控制字寄存器中存在控制字偏置参数的值,则按照该控制字偏置参数的值,对需要从该数据通道输出的数据进行处理后输出至对应的I/O口。
在接收到各个高速串并转换模块输出的数据之后,执行步骤C2。
C2:按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据的排序顺序一致。
请参照图4,图4是本申请实施例提供的一种数据同步装置400的结构框图。下面将对图4所示的结构框图进行阐述,所示装置包括:
第一获取单元410,用于在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取所FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应。
数量确定单元420,用于确定所述多个信号的连续M个信号中的所述第一信号的数量。
第一延时处理单元430,用于在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
作为一种实施方式,所述将所述AD芯片配置为正常工作模式,包括:在确定各个I/O口在同一个时钟周期输出的信号相同时,将所述AD芯片配置为正常工作模式。
作为一种实施方式,所述装置还包括:目标I/O口确定单元,用于在确定各个I/O口在同一个时钟周期输出的信号不同时,确定在该时钟周期输出所述第一信号的目标I/O口;第二延时处理单元,用于针对每个目标I/O口,将该目标I/O口对应的延时模块的第二延时参数的值加1个时钟周期,直至各个I/O口在同一个时钟周期输出的信号相同。
作为一种实施方式,若所述AD芯片的多个数据位通道被划分为至少两个通道组,每个所述通道组包括相同数量的数据位通道,且不同的所述通道组中数据位通道各不相同,所述装置还包括:第二获取单元,用于在所述AD芯片为正常工作模式下,通过所述FPGA的I/O口获取各个通道组输出的数据;信息确定单元,用于针对每个通道组,确定出该通道组输出的数据的幅值、功率和相位;参数值确定单元,用于将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与所述基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值;参数值写入单元,用于将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致。
作为一种实施方式,所述装置还包括:第三获取单元,用于在所述AD芯片为正常工作模式下,获取所述FPGA中的各个高速串并转换模块输出的数据;所述FPGA中的高速串并转换模块与I/O口一一对应连接;重组单元,用于按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据的排列顺序一致。
本实施例对的各功能模块实现各自功能的过程,请参见上述图1-3所示实施例中描述的内容,此处不再赘述。
此外,本申请实施例还提供了一种存储介质,在该存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行本申请任一项实施方式所提供的方法。
综上所述,本申请各实施例提出的数据同步方法、装置、电子设备及存储介质,通过将AD芯片配置为在测试模式下,多个数据通道中的每个数据位通道每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口,继而在AD芯片为测试模式下,针对每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号,并在确定多个信号的连续M个信号中的第一信号的数量为不为一个时,表征对应的I/O口输出的信号的中心未与FPGA的内部时钟沿对齐,因此,将对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的第一信号的数量均为一个时,才将所述AD芯片配置为正常工作模式,保证各个I/O口输出的信号的中心与FPGA的内部时钟沿对齐,实现数据同步,继而保证AD芯片输出的数据能够被FPGA正确地采样。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
Claims (10)
1.一种数据同步方法,其特征在于,所述方法包括:
在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应;
确定所述多个信号的连续M个信号中的所述第一信号的数量;
在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
2.根据权利要求1所述的方法,其特征在于,所述将所述AD芯片配置为正常工作模式,包括:
在确定各个I/O口在同一个时钟周期输出的信号相同时,将所述AD芯片配置为正常工作模式。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在确定各个I/O口在同一个时钟周期输出的信号不同时,确定在该时钟周期输出所述第一信号的目标I/O口;
针对每个目标I/O口,将该目标I/O口对应的延时模块的第二延时参数的值加1个时钟周期,直至各个I/O口在同一个时钟周期输出的信号相同。
4.根据权利要求1所述的方法,其特征在于,若所述AD芯片的多个数据位通道被划分为至少两个通道组,每个所述通道组包括相同数量的数据位通道,且不同的所述通道组中数据位通道各不相同,所述方法还包括:
在所述AD芯片为正常工作模式下,通过所述FPGA的I/O口获取各个通道组输出的数据;
针对每个通道组,确定出该通道组输出的数据的幅值、功率和相位;
将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与所述基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值;
将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述AD芯片为正常工作模式下,获取所述FPGA中的各个高速串并转换模块输出的数据;所述FPGA中的高速串并转换模块与I/O口一一对应连接;
按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据一致。
6.一种数据同步装置,其特征在于,所述装置包括:
第一获取单元,用于在AD芯片为测试模式下,针对所述AD芯片的多个数据位通道中的每个数据位通道,获取FPGA中与该数据位通道对应连接的I/O口连续输出的多个信号;该数据位通道被配置为每隔M个时钟周期输出一个第一信号至对应的I/O口,其余每个时钟周期输出一个第二信号至所述对应的I/O口;M为大于等于2的正整数;所述第一信号和所述第二信号不同;所述AD芯片中的数据位通道与所述FPGA中的I/O口一一对应;
数量确定单元,用于确定所述多个信号的连续M个信号中的所述第一信号的数量;
第一延时处理单元,用于在确定所述数量不为一个时,将所述对应的I/O口对应的延时模块的第一延时参数的值加1,直至各个I/O口各自连续输出的M个信号中的所述第一信号的数量均为一个时,将所述AD芯片配置为正常工作模式;其中,所述对应的延时模块的第一延时参数用于控制所述对应的I/O口的信号输出时间。
7.根据权利要求6所述的装置,其特征在于,若所述AD芯片的多个数据位通道被划分为至少两个通道组,每个所述通道组包括相同数量的数据位通道,且不同的所述通道组中数据位通道各不相同,所述装置还包括:
第二获取单元,用于在所述AD芯片为正常工作模式下,通过所述FPGA的I/O口获取各个通道组输出的数据;
信息确定单元,用于针对每个通道组,确定出该通道组输出的数据的幅值、功率和相位;
参数值确定单元,用于将所述至少两个通道组中的任一通道组作为基准通道组,针对其余通道组中的每个通道组,根据该通道组与所述基准通道组各自对应的幅值、功率和相位,确定出与该通道组对应的控制字偏置参数的值;
参数值写入单元,用于将所述控制字偏置参数的值,写入所述AD芯片中与该通道组对应的控制字寄存器中,以使该通道组输出的数据的幅值、功率和相位与所述基准通道组一致。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第三获取单元,用于在所述AD芯片为正常工作模式下,获取所述FPGA中的各个高速串并转换模块输出的数据;所述FPGA中的高速串并转换模块与I/O口一一对应连接;
重组单元,用于按照预设规则将各个高速串并转换模块输出的数据进行重组,以使重组后的数据与输入至所述AD芯片中的原始数据一致。
9.一种电子设备,其特征在于,包括存储器以及处理器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如权利要求1-5中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序指令,所述计算机程序指令被计算机读取并运行时,执行如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110786981.7A CN113419599A (zh) | 2021-07-12 | 2021-07-12 | 数据同步方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110786981.7A CN113419599A (zh) | 2021-07-12 | 2021-07-12 | 数据同步方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113419599A true CN113419599A (zh) | 2021-09-21 |
Family
ID=77720790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110786981.7A Pending CN113419599A (zh) | 2021-07-12 | 2021-07-12 | 数据同步方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113419599A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070189417A1 (en) * | 2006-02-15 | 2007-08-16 | Texas Instruments Incorporated | Precise delay alignment between amplitude and phase/frequency modulation paths in a digital polar transmitter |
CN104378114A (zh) * | 2014-10-23 | 2015-02-25 | 西安电子科技大学 | 一种实现多通道模数转换器同步的方法 |
CN108804371A (zh) * | 2018-05-28 | 2018-11-13 | 电子科技大学 | 一种多通道高速数据接收的同步自校正方法 |
CN112260689A (zh) * | 2020-09-28 | 2021-01-22 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 自适应延时补偿串行adc采样系统采样校准方法 |
CN113078909A (zh) * | 2021-03-23 | 2021-07-06 | 汕头市超声检测科技有限公司 | 一种基于fpga的多通道高速串行lvds数据整序方法及电路 |
-
2021
- 2021-07-12 CN CN202110786981.7A patent/CN113419599A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070189417A1 (en) * | 2006-02-15 | 2007-08-16 | Texas Instruments Incorporated | Precise delay alignment between amplitude and phase/frequency modulation paths in a digital polar transmitter |
CN104378114A (zh) * | 2014-10-23 | 2015-02-25 | 西安电子科技大学 | 一种实现多通道模数转换器同步的方法 |
CN108804371A (zh) * | 2018-05-28 | 2018-11-13 | 电子科技大学 | 一种多通道高速数据接收的同步自校正方法 |
CN112260689A (zh) * | 2020-09-28 | 2021-01-22 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 自适应延时补偿串行adc采样系统采样校准方法 |
CN113078909A (zh) * | 2021-03-23 | 2021-07-06 | 汕头市超声检测科技有限公司 | 一种基于fpga的多通道高速串行lvds数据整序方法及电路 |
Non-Patent Citations (2)
Title |
---|
何文: "《四通道高速数据接收与存储系统设计》", 《中国优秀博硕士学位论文全文数据库(硕士)-信息科技辑》 * |
张浩: "《高速多通道采样系统关键技术研究与实现》", 《中国优秀博硕士学位论文全文数据库(硕士)-信息科技辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108363737B (zh) | 一种数据格式转换方法、装置及设备 | |
US10204024B2 (en) | Sent error generator | |
CN106897238A (zh) | 一种数据处理装置及方法 | |
US11343067B2 (en) | Sampling point identification for low frequency asynchronous data capture | |
CN102904550A (zh) | 基于ad9959的多通道同步波形发生器 | |
CN212622809U (zh) | 检测电路 | |
CN202929519U (zh) | 一种多通道相位可调的信号发生器 | |
CN104156333A (zh) | 一种基于fpga的uart多接口扩展系统和方法 | |
WO2018120612A1 (zh) | 一种数据采样方法、芯片和计算机存储介质 | |
US20150149842A1 (en) | Test device and method using a separate control module for test | |
CN117388673A (zh) | Ate设备及其芯片测试方法、电子设备、存储介质 | |
CN112448867B (zh) | 信号延时测试方法、装置、计算机可读存储介质及电子设备 | |
CN113419599A (zh) | 数据同步方法、装置、电子设备及存储介质 | |
CN109308275A (zh) | 一种正交编码脉冲的转换系统及方法 | |
US11402431B2 (en) | Detection circuit and detection method | |
CN113885655A (zh) | 一种信号同步器 | |
CN107562164A (zh) | 一种cpld/fpga输入复位信息号预处理电路及方法 | |
CN110806719B (zh) | 一种plc系统及其控制方法 | |
CN117851306B (zh) | 一种运行模式的确定方法、芯片、芯片模组及存储介质 | |
CN105718402B (zh) | 可编程时序发生器 | |
CN107741919B (zh) | 应用在控制系统中的数据通信装置 | |
CN116346950B (zh) | 基于spi控制器的信号处理方法、装置及系统 | |
US6275952B1 (en) | Information transmission system and information transmission apparatus | |
CN106899502B (zh) | 一种用于PXIe背板的触发信号分段路由装置及方法 | |
CN221042830U (zh) | 一种模数转换器控制系统、芯片和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210921 |