CN103530259A - 地球物理仪器的跨时钟域串行数据交换方法、装置及系统 - Google Patents

地球物理仪器的跨时钟域串行数据交换方法、装置及系统 Download PDF

Info

Publication number
CN103530259A
CN103530259A CN201310495410.3A CN201310495410A CN103530259A CN 103530259 A CN103530259 A CN 103530259A CN 201310495410 A CN201310495410 A CN 201310495410A CN 103530259 A CN103530259 A CN 103530259A
Authority
CN
China
Prior art keywords
data
register
serial
line interface
serial line
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.)
Granted
Application number
CN201310495410.3A
Other languages
English (en)
Other versions
CN103530259B (zh
Inventor
严发宝
董海
谭胜龙
姚红春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HUNAN QIANGJUN TECHNOLOGY Co Ltd
Original Assignee
HUNAN QIANGJUN TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by HUNAN QIANGJUN TECHNOLOGY Co Ltd filed Critical HUNAN QIANGJUN TECHNOLOGY Co Ltd
Priority to CN201310495410.3A priority Critical patent/CN103530259B/zh
Publication of CN103530259A publication Critical patent/CN103530259A/zh
Application granted granted Critical
Publication of CN103530259B publication Critical patent/CN103530259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开了一种地球物理仪器的跨时钟域串行数据交换方法、装置及系统,涉及地球物理仪器技术领域,所述方法包括以下步骤:S1:采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据,所述第一串行接口为地球物理仪器中数据采集模块的串行接口;S2:采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。本发明通过按照第一串行接口的时钟频率来接收串行数据,并通过第二串行接口的时钟频率来发送数据,使得在不占用地球物理仪器资源的情况下,有效提高了数据交换速度。

Description

地球物理仪器的跨时钟域串行数据交换方法、装置及系统
技术领域
本发明涉及地球物理仪器技术领域,特别涉及一种地球物理仪器的跨时钟域串行数据交换方法、装置及系统。
背景技术
随着技术的进步,信息技术与计算机技术得到了快速发展,包括电磁法在内的地球物理仪器都得到了长足的进步,但随着便携式、小型化、低功耗和低成本的发展要求,地球物理仪器中数据采集模块普遍采用串行输出接口的模/数转换器(Analog-to-Digital Converter,ADC),由于串行输出结构的传输速度比较快,在数据采集完毕进行数据存储或传输时,如果地球物理仪器中数据采集模块的串行接口和数据接收端的串行接口的时钟域不一致,则很难进行无缝连接,虽然可以采用先入先出队列(First Input First Output,FIFO)来实现跨时间域进行数据交换功能,但占用了地球物理仪器为数不多的资源,会影响地球物理仪器的整体性能,并且数据交换速度过低。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何在不占用地球物理仪器资源的情况下,提高数据交换速度。
(二)技术方案
为解决上述技术问题,本发明提供了一种地球物理仪器的跨时钟域串行数据交换方法,所述方法包括以下步骤:
S1:采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据,所述第一串行接口为地球物理仪器中数据采集模块的串行接口;
S2:采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。
其中,步骤S1包括:
S111:采用第一串行接口的时钟频率来接收由所述第一串行接口所传送来的串行数据,并将所述串行数据存储至寄存器A中;
步骤S1和S2之间还包括:
S121:将所述寄存器A所存储的串行数据转移至寄存器C中;
步骤S2包括:
S211:采用第二串行接口的时钟频率将所述寄存器C中存储的串行数据通过第二串行接口发送至数据接收端。
其中,所述寄存器A和寄存器C的位宽相同,且所述寄存器A的位宽与所述串行数据的位数相同。
其中,步骤S121之前还包括:
S120:判断所述寄存器A中是否存满数据,若是,则执行步骤S121,否则返回步骤S111。
其中,设置与所述寄存器A的存储状态相对应的标志寄存器B,当所述寄存器A中存满数据时,所述标志寄存器B被置为1;当所述寄存器A未存满数据时,所述标志寄存器B为0;
步骤S120中,判断所述寄存器A中是否存满数据包括:
判断所述标志寄存器B是否为1,若是,则判定为所述寄存器A已经存满数据,否则判定为未存满数据。
其中,步骤S211之前还包括:
S210:判断所述寄存器C中是否存满数据,若是,则执行步骤S211,否则返回步骤S121。
其中,设置与所述寄存器C的存储状态相对应的标志寄存器D,当所述寄存器C中存满数据时,所述标志寄存器D被置为1;当所述寄存器C未存满数据时,所述标志寄存器D为0;
步骤S210中,判断所述寄存器C中是否存满数据包括:
判断所述标志寄存器D是否为1,若是,则判定为所述寄存器C已经存满数据,否则判定为未存满数据。
本发明还公开了一种地球物理仪器的跨时钟域串行数据交换装置,所述装置包括:
数据接收模块,用于采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据,所述第一串行接口为地球物理仪器中数据采集模块的串行接口;
数据发送模块,用于采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。
本发明还公开了一种地球物理仪器的跨时钟域串行数据交换系统,所述系统包括:数据接收端、地球物理仪器的数据采集模块和所述的装置,所述装置的数据接收模块与所述数据采集模块连接,所述装置的数据发送模块与所述数据接收端连接。
其中,当所述数据采集模块为一个时,所述数据接收端为一个或多个;当所述数据采集模块为多个时,所述数据接收端的个数与所述数据采集模块个数相同、且一一对应。
(三)有益效果
本发明通过按照第一串行接口的时钟频率来接收串行数据,并通过第二串行接口的时钟频率来发送数据,使得在不占用地球物理仪器资源的情况下,有效提高了数据交换速度。
附图说明
图1是本发明一种实施方式的地球物理仪器的跨时钟域串行数据交换方法的流程图;
图2是本发明一种实施例的地球物理仪器的跨时钟域串行数据交换方法的流程图;
图3是本发明一种实施方式的地球物理仪器的跨时钟域串行数据交换装置的结构框图;
图4是本发明一种实施方式的地球物理仪器的跨时钟域串行数据交换系统的结构框图;
图5是本发明一种实施例的多对多的地球物理仪器的跨时钟域串行数据交换系统的结构框图;
图6是本发明另一种实施例的一对多的地球物理仪器的跨时钟域串行数据交换系统的结构框图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1是本发明一种实施方式的地球物理仪器的跨时钟域串行数据交换方法的流程图;参照图1,所述方法包括以下步骤:
S1:采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据(根据地球物理仪器的特性可知,所述串行数据为地球物理仪器中数据采集模块的一帧数据,每帧数据的位数相同),所述第一串行接口为地球物理仪器中数据采集模块的串行接口;
S2:采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。
本实施方式通过按照第一串行接口的时钟频率来接收串行数据,并通过第二串行接口的时钟频率来发送数据,使得在不占用地球物理仪器资源的情况下,有效提高了数据交换速度。
第一串行接口的时钟频率一般要求小于第二串行接口的时钟频率,在特殊情况下,第一串行接口的时钟频率是第二串行接口的时钟频率的整数倍。
获取第一串行接口的时钟频率的方式有多种,此处以两种方式为例:第一种:先向所述数据采集模块发送第一时钟频率获取请求;再接收所述数据采集模块所返回的所述第一串行接口的时钟频率。第二种:直接接收人工设置的所述第一串行接口的时钟频率。获取第二串行接口的时钟频率的方式与获取第一串行接口的时钟频率的方式基本相同,在此不做赘述。
为防止数据出现错误,优选地,步骤S1包括:
S111:采用第一串行接口的时钟频率来接收由所述第一串行接口所传送来的串行数据,并将所述串行数据存储至寄存器A中;根据需要,在将所述串行数据存储之前,还可对所述串行数据进行预处理,所述预处理为平滑、滤波和均值计算等处理中的至少一种。
步骤S1和S2之间还包括:
S121:将所述寄存器A所存储的串行数据转移至寄存器C中;
步骤S2包括:
S211:采用第二串行接口的时钟频率将所述寄存器C中存储的串行数据通过第二串行接口发送至数据接收端。
为节约寄存器的使用空间,并且便于控制,优选地,所述寄存器A和寄存器C的位宽相同,且所述寄存器A的位宽与所述串行数据的位数相同。
为防止寄存器A还未存满,就开始进行数据交换,所导致的串行数据错误,优选地,步骤S121之前还包括:
S120:判断所述寄存器A中是否存满数据,若是,则执行步骤S121,否则返回步骤S111。
为便于获得寄存器A的存储状态,优选地,设置与所述寄存器A的存储状态相对应的标志寄存器B,当所述寄存器A中存满数据时,所述标志寄存器B被置为1;当所述寄存器A未存满数据时,所述标志寄存器B为0;
步骤S120中,判断所述寄存器A中是否存满数据包括:
判断所述标志寄存器B是否为1,若是,则判定为所述寄存器A已经存满数据,否则判定为未存满数据。
为防止寄存器C还未存满,就开始进行数据交换,所导致的串行数据错误,优选地,步骤S211之前还包括:
S210:判断所述寄存器C中是否存满数据,若是,则执行步骤S211,否则返回步骤S121。
为便于获得寄存器C的存储状态,优选地,,设置与所述寄存器C的存储状态相对应的标志寄存器D,当所述寄存器C中存满数据时,所述标志寄存器D被置为1;当所述寄存器C未存满数据时,所述标志寄存器D为0;
步骤S210中,判断所述寄存器C中是否存满数据包括:
判断所述标志寄存器D是否为1,若是,则判定为所述寄存器C已经存满数据,否则判定为未存满数据。
在数据交换完毕后,为便于及时结束流程,优选地,步骤S2之后还包括:
S3:判断数据交换是否全部完成,若是,则结束流程。
实施例
下面以一个具体的实施例来说明本发明,但不限定本发明的保护范围。参照图2,本实施例包括以下步骤:
步骤101:设置一个位数够宽(即与地球物理仪器中数据采集模块的一帧数据的位数相同,例如:24bit或32bit等)的寄存器A,并将其初始值置为0;同时设置一个位数为1bit、且与所述寄存器A的存储状态相对应的标志寄存器B,并将其初值置为0,当所述寄存器A中存满数据时,所述标志寄存器B被置为1;当所述寄存器A未存满数据时,所述标志寄存器B为0;
步骤102:设置一个位宽和寄存器A相同的寄存器C,并将其初始值置为0;同时设置一个位数为1bit、且与所述寄存器C的存储状态相对应的标志寄存器D,并将其初值置为0,当所述寄存器C中存满数据时,所述标志寄存器D被置为1;当所述寄存器C未存满数据时,所述标志寄存器D为0;
步骤103:获取第一串行接口和第二串行接口的时钟频率;
步骤104:采用第一串行接口的时钟频率来接收(每次接收1bit、或者2bit以上的串行数据)由所述第一串行接口所传送来的串行数据,并将所述串行数据依次存储至寄存器A中(若寄存器A中还存在上一次所接收的数据,则等寄存器A的数据全部转移至所述寄存器C后,再接收所述第一串行接口所传来的串行数据;可通过设置新的标志寄存器E来对应寄存器C的数据存储状态,当寄存器C的数据全部被发送时,新的标志寄存器置为1,以判断寄存器C是否还存在上一次所接收的数据);
步骤105:判断所述标志寄存器B是否为1,若是,则执行步骤106,否则返回步骤104;
步骤106:将所述寄存器A所存储的串行数据转移至寄存器C中(若寄存器C中还存在上一次所接收的数据,则等寄存器C的数据全部发送至所述数据接收端后,再将所述寄存器A所存储的串行数据转移至寄存器C中;可通过设置新的标志寄存器F来对应寄存器C的数据存储状态,当寄存器C的数据全部被发送时,新的标志寄存器F置为1,以判断寄存器C是否还存在上一次所接收的数据);
步骤107:判断所述标志寄存器D是否为1,若是,则执行步骤108,否则返回步骤106;
步骤108:采用第二串行接口的时钟频率将所述寄存器C中存储的串行数据通过第二串行接口发送至数据接收端;
步骤109:判断地球物理仪器中数据采集模块的采集工作是否完成(采集工作是否完成可通过接收人工输入的停止信号来判断是否完成,也可以通过在预设时间内,标志寄存器B和D是否均未变化来判断,若是,则认为采集工作完成,否则认为未完成,预设时间可根据需要进行设置,例如:5分钟),若是,则结束流程,否则返回步骤104。
本发明还公开了一种地球物理仪器的跨时钟域串行数据交换装置,参照图3,所述装置包括:
数据接收模块,用于采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据,所述第一串行接口为地球物理仪器中数据采集模块的串行接口;
数据发送模块,用于采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。
所述装置包括:现场可编程门阵列(Field-Programmable GateArray,FPGA)、复杂可编程逻辑器件(Complex Programmable LogicDevice,CPLD)、数字信号处理器(digital signal processor,DSP)和ARM等处理器中的至少一种。
本发明还公开了一种地球物理仪器的跨时钟域串行数据交换系统,参照图4,所述系统包括:数据接收端(所述数据接收端为数据传输接口或数据存储模块,所述数据传输接口即图中的“其他接口”)、地球物理仪器的数据采集模块和所述的装置(即图中的“数据交换装置”),所述装置的数据接收模块与所述数据采集模块连接,所述装置的数据发送模块与所述数据接收端连接。
在具体的数据交换过程中,可能会存在多个一对一的情况,参照图5,即具有n(n为大于1的整数)个地球物理仪器和n个数据接收端、且一一对应,这时所述装置需要具有与之对应的n组寄存器,每组寄存器均包括:寄存器A、标志寄存器B、寄存器C和标志寄存器D;还可能会存在一对多的情况,参照图6,即具有1个地球物理仪器和n个数据接收端,这时需要一个寄存器A和标志寄存器B,及n个寄存器C和标志寄存器D;还可在所述一对多的基础上设置多个一对多的情况,在此不再具体说明。针对上述情况,优选地,当所述数据采集模块为一个时,所述数据接收端为一个或多个(所述多个为至少两个);当所述数据采集模块为多个时,所述数据接收端的个数与所述数据采集模块个数相同、且一一对应。
本发明与现有技术相比,还有以下优点:
(1)充分利用串行通信的特点,在资源够的情况下可以根据需要将多个数据用于串行传输,提升速度,降低设计难度和复杂度。
(2)避免了对多个不同的时钟域进行异化处理,避免了一般将所有时钟域提升为一个时钟域带来的问题,提升了各个时钟域的设计资源的利用率。
(3)能很好解决了地球物理仪器设计中单个FIFO不能进行的一对多的设计、而多个FIFO资源不够或者接口不够或者硬件空间不够的设计,并且能够做到更精简,当有多个数据对的时候采用会有效的避免FIFO等资源不够用而实现不了的情况。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (10)

1.一种地球物理仪器的跨时钟域串行数据交换方法,其特征在于,所述方法包括以下步骤:
S1:采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据,所述第一串行接口为地球物理仪器中数据采集模块的串行接口;
S2:采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。
2.如权利要求1所述的方法,其特征在于,步骤S1包括:
S111:采用第一串行接口的时钟频率来接收由所述第一串行接口所传送来的串行数据,并将所述串行数据存储至寄存器A中;
步骤S1和S2之间还包括:
S121:将所述寄存器A所存储的串行数据转移至寄存器C中;
步骤S2包括:
S211:采用第二串行接口的时钟频率将所述寄存器C中存储的串行数据通过第二串行接口发送至数据接收端。
3.如权利要求2所述的方法,其特征在于,所述寄存器A和寄存器C的位宽相同,且所述寄存器A的位宽与所述串行数据的位数相同。
4.如权利要求3所述的方法,其特征在于,步骤S121之前还包括:
S120:判断所述寄存器A中是否存满数据,若是,则执行步骤S121,否则返回步骤S111。
5.如权利要求4所述的方法,其特征在于,设置与所述寄存器A的存储状态相对应的标志寄存器B,当所述寄存器A中存满数据时,所述标志寄存器B被置为1;当所述寄存器A未存满数据时,所述标志寄存器B为0;
步骤S120中,判断所述寄存器A中是否存满数据包括:
判断所述标志寄存器B是否为1,若是,则判定为所述寄存器A已经存满数据,否则判定为未存满数据。
6.如权利要求3所述的方法,其特征在于,步骤S211之前还包括:
S210:判断所述寄存器C中是否存满数据,若是,则执行步骤S211,否则返回步骤S121。
7.如权利要求6所述的方法,其特征在于,设置与所述寄存器C的存储状态相对应的标志寄存器D,当所述寄存器C中存满数据时,所述标志寄存器D被置为1;当所述寄存器C未存满数据时,所述标志寄存器D为0;
步骤S210中,判断所述寄存器C中是否存满数据包括:
判断所述标志寄存器D是否为1,若是,则判定为所述寄存器C已经存满数据,否则判定为未存满数据。
8.一种地球物理仪器的跨时钟域串行数据交换装置,其特征在于,所述装置包括:
数据接收模块,用于采用第一串行接口的时钟频率来接收并存储由所述第一串行接口所传送来的串行数据,所述第一串行接口为地球物理仪器中数据采集模块的串行接口;
数据发送模块,用于采用第二串行接口的时钟频率将所述串行数据通过第二串行接口发送至数据接收端,所述第二串行接口为所述串行数据接收端的串行接口。
9.一种地球物理仪器的跨时钟域串行数据交换系统,其特征在于,所述系统包括:数据接收端、地球物理仪器的数据采集模块和权利要求8所述的装置,所述装置的数据接收模块与所述数据采集模块连接,所述装置的数据发送模块与所述数据接收端连接。
10.如权利要求9所述的系统,其特征在于,当所述数据采集模块为一个时,所述数据接收端为一个或多个;当所述数据采集模块为多个时,所述数据接收端的个数与所述数据采集模块个数相同、且一一对应。
CN201310495410.3A 2013-10-21 2013-10-21 地球物理仪器的跨时钟域串行数据交换方法、装置及系统 Active CN103530259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310495410.3A CN103530259B (zh) 2013-10-21 2013-10-21 地球物理仪器的跨时钟域串行数据交换方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310495410.3A CN103530259B (zh) 2013-10-21 2013-10-21 地球物理仪器的跨时钟域串行数据交换方法、装置及系统

Publications (2)

Publication Number Publication Date
CN103530259A true CN103530259A (zh) 2014-01-22
CN103530259B CN103530259B (zh) 2016-03-30

Family

ID=49932284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310495410.3A Active CN103530259B (zh) 2013-10-21 2013-10-21 地球物理仪器的跨时钟域串行数据交换方法、装置及系统

Country Status (1)

Country Link
CN (1) CN103530259B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1466348A (zh) * 2002-06-15 2004-01-07 华为技术有限公司 高速数据链路控制协议发送处理模块及其数据处理方法
JP2005071278A (ja) * 2003-08-27 2005-03-17 Nec Corp クロック同期シリアルデータ転送方法および同システム
CN2938595Y (zh) * 2006-02-20 2007-08-22 上海欣泰通信技术有限公司 一种用于板间通信的高速串行接口装置
CN101308480A (zh) * 2008-06-18 2008-11-19 嘉兴闻泰通讯科技有限公司 主机串口同时连接多个异步串口设备的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1466348A (zh) * 2002-06-15 2004-01-07 华为技术有限公司 高速数据链路控制协议发送处理模块及其数据处理方法
JP2005071278A (ja) * 2003-08-27 2005-03-17 Nec Corp クロック同期シリアルデータ転送方法および同システム
CN2938595Y (zh) * 2006-02-20 2007-08-22 上海欣泰通信技术有限公司 一种用于板间通信的高速串行接口装置
CN101308480A (zh) * 2008-06-18 2008-11-19 嘉兴闻泰通讯科技有限公司 主机串口同时连接多个异步串口设备的方法

Also Published As

Publication number Publication date
CN103530259B (zh) 2016-03-30

Similar Documents

Publication Publication Date Title
CN103064805B (zh) Spi控制器及通信方法
CN103366539B (zh) 无线抄表系统以及广播式抄收方式
CN101873299B (zh) 串行总线和通信方法及系统
CN102801744B (zh) 一种通信方法及系统
KR20160065206A (ko) 카메라 제어 인터페이스 슬레이브 디바이스 대 슬레이브 디바이스 통신
CN105553887B (zh) 用于管芯上互连的体系结构
CN104242981B (zh) 一种基于软件无线电的嵌入式通讯装置
CN102567280A (zh) 一种基于dsp和fpga的计算机硬件平台设计方法
CN102253910A (zh) 一种i2c传输方法及其装置
CN102012879A (zh) 大容量数据采集装置及其数据传输方法
CN103019990A (zh) 一种采集端启动pci-e总线dma上传数据的方法
CN113468090B (zh) 一种PCIe通信方法、装置、电子设备及可读存储介质
CN104765701A (zh) 数据访问方法及设备
CN101452427B (zh) 一种dma数据传输系统及方法和一种中央处理器
CN104021097A (zh) 数据传输方法、装置及直接存储器存取
CN104424142B (zh) 一种多核处理器系统中访问共享资源的方法与装置
CN114448493A (zh) 一种卫星一体化数据交互系统
CN102355394B (zh) 针对多路can总线进行数据传输控制的方法及装置
CN201876872U (zh) 一种大容量数据采集装置
CN103176941B (zh) 核间通信方法和代理装置
CN108614795A (zh) 一种usb数据传输的数字实现方法
CN103106177B (zh) 多核网络处理器的片上互联结构及其方法
CN103530259B (zh) 地球物理仪器的跨时钟域串行数据交换方法、装置及系统
CN201918981U (zh) 双相哈佛码总线信号编解码电路
CN101980140B (zh) 一种ssram访问控制系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant