CN104731550B - 一种基于单fifo的双倍时钟双向数字延迟方法 - Google Patents

一种基于单fifo的双倍时钟双向数字延迟方法 Download PDF

Info

Publication number
CN104731550B
CN104731550B CN201510107828.1A CN201510107828A CN104731550B CN 104731550 B CN104731550 B CN 104731550B CN 201510107828 A CN201510107828 A CN 201510107828A CN 104731550 B CN104731550 B CN 104731550B
Authority
CN
China
Prior art keywords
fifo
data
read
write
length
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.)
Active
Application number
CN201510107828.1A
Other languages
English (en)
Other versions
CN104731550A (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201510107828.1A priority Critical patent/CN104731550B/zh
Publication of CN104731550A publication Critical patent/CN104731550A/zh
Application granted granted Critical
Publication of CN104731550B publication Critical patent/CN104731550B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)
  • Communication Control (AREA)

Abstract

该发明公开了一种基于单FIFO的双倍时钟双向数字延迟方法,属于信号处理技术,特别涉及数字信号延迟技术。使用的FIFO的控制信号的时钟频率为延迟线输入输出数据的时钟频率的2倍,通过控制FIFO的读使能、写使能信号,来控制FIFO的读写,进而控制FIFO的长度。其中,FIFO的写使能信号在每个读写时钟周期(即FIFO的控制时钟周期)进行改变,交替地有效、无效,而FIFO的读使能信号则根据FIFO当前的长度和需要的延迟来确定是否使能。该发明通过采用双倍时钟,大大提高了延迟线长度变化时的效率;克服现有的单FIFO延迟线延迟时间更改时需要清除FIFO、占用系统处理时间的不足。

Description

一种基于单FIFO的双倍时钟双向数字延迟方法
技术领域
本发明属于信号处理技术,特别涉及数字信号延迟技术。
背景技术
延迟是信号处理的一个基本操作,随着数字技术的发展,数字延迟线在雷达、通信等领域得到越来越广泛的应用。
数字延迟线一般是通过预设FIFO(先入先出队列)中数据存储区的长度来实现的。如图1所示,每一个数据时钟周期到来一个新数据,当需要延时N个时钟周期,则设置数据存储区的长度为N。开始时,每到来一个新数据,就向写指针指向的存储单元写入数据,直到已经写入了N个数据。然后,每到来一个新数据,向写指针指向的存储单元写入数据的同时从读指针指向的存储单元读取数据,实现输入数据与输出数据之间延时N个时钟周期。
在雷达回波信号模拟中,目标到雷达的距离可能会变化,导致回波信号的延迟变化(增大或减小)。在传统的基于FIFO的数字延迟线中,在延迟时长变化时,先将FIFO中的数据存储区清空,按照新的时长重新设置数据存储区大小后,等待数据装满再输出新的经过时延的数据。从清空FIFO到重新装满FIFO之间,存在一定的时间间隔,导致雷达回波信号模拟系统出现等待数据输出的空闲状态,如果FIFO的长度很大,会导致丢失1个甚至多个PRI(脉冲重复间隔)的数据。这样的空闲状态和真实的回波环境不相符,因此如何避免出现空闲状态显得非常重要。
发明内容
本发明所要解决的技术问题是针对背景技术的不足之处提供一种成本低廉、处理速度快的基于FIFO的数字延迟线实现方法。
本发明为解决上述技术问题所采用的技术方案是,一种基于单FIFO的双倍时钟双向数字延迟方法。本发明中使用的FIFO的控制信号的时钟频率为延迟线输入输出数据的时钟频率的2倍,通过控制FIFO的读使能、写使能信号,来控制FIFO的读写,进而控制FIFO的长度。其中,FIFO的写使能信号在每个读写时钟周期(即FIFO的控制时钟周期)进行改变,交替地有效、无效,而FIFO的读使能信号则根据FIFO当前的长度和需要的延迟来确定是否使能。
本发明一种基于单FIFO的双倍时钟双向数字延迟方法,该方法包括:
首先本发明使用的FIFO控制信号的时钟频率为延迟线输入输出数据时钟频率的2倍;
初始时,FIFO数据存储区无数据,初始设置FIFO的长度,并设置FIFO为读不使能状态,写使能信号则在每个读写控制周期翻转(从使能变不使能,或从不使能变使能),需进行延时的数据不间断依序送入FIFO数据存储区;当数据存储区的长度达到设定的要求后,FIFO的写使能、读使能信号在每个读写控制周期同时翻转,FIFO的长度保持不变。如图2所示;
当输出数据相对于输入数据的延迟需要增加时,FIFO的写使能信号在每个读写控制周期翻转,读使能信号则在连续的2个或多个读写控制周期为不使能状态;直到FIFO的长度重新达到设定的要求后,设置FIFO写使能、读使能信号在每个读写控制周期同时翻转,此时FIFO的长度在新的长度要求下保持不变;在FIFO调整长度增加的过程中,FIFO没有读出新的数据,所以延迟线的输出保持原来的数据,即数据被重复。如图3所示。
当输出数据相对于输入数据的延迟需要减少时,FIFO的写使能信号在每个读写控制周期翻转,读使能信号则在连续的2个或多个读写控制周期为使能状态,直到FIFO的长度重新达到设定的要求后,设置FIFO写使能、读使能信号在每个读写控制周期同时翻转,此时FIFO的长度在新的长度要求下保持不变;在FIFO调整长度变短的过程中,FIFO连续地输出两个或多个数据,而延迟线只输出每2个数据中的1个,即有数据被丢失。如图4所示。
本发明充分考虑了FIFO的工作特点,采用2倍的时钟频率来控制FIFO的读写使能信号,而不是控制数据本身的方法,在极短的时间内实现FIFO长度的重配置。
本发明的有益效果是:
1、通过采用双倍时钟,大大提高了延迟线长度变化时的效率,在FIFO的长度调整步长为m时,FIFO的调整时间不超过[1+m/2]个输入输出数据的时钟周期;一般的雷达回波信号模拟系统中,调整步长为1,所以调整时间不超过2个输入输出数据的时钟周期,可以更好地模拟出真实的雷达回波环境;
2、延迟线变短或变长的过程类似,FIFO的调整时间几乎相同;
3、克服现有的单FIFO延迟线延迟时间更改时需要清除FIFO、占用系统处理时间的不足。例如延迟线长度从K变到K+1时,如果采用先清除再加载的单FIFO延迟线,即使不计算清除FIFO的时间,至少也需要K+1个数据时钟周期来完成长度的变化;而采用本发明的单FIFO、双倍时钟延迟线,只需要2个数据时钟周期即可;当K很大时,效率提高非常明显。
附图说明
图1为基于FIFO的数字延迟线的示意图;
图2为本发明的数字延迟线的FIFO初始化时序图;
图3为本发明的数字延迟线的FIFO长度变长时序图;
图4为本发明的数字延迟线的FIFO长度变短时序图。
图中:“clk_fifo”表示FIFO的读写使能信号的控制时钟,上升沿有效;“clk_data”表示延迟线的输入输出数据的基准时钟,上升沿有效;“data_in”表示延迟线的输入数据,和“clk_data”的上升沿对齐;“need_delay”表示需要延迟线延迟的时长,以“clk_data”的周期为单位;“FIFO_usedw”表示FIFO的当前的数据长度;“FIFO_wrreq”表示FIFO的写请求信号,在“clk_fifo”的上升沿被锁存;“FIFO_rdreq”表示FIFO的读请求信号,在“clk_fifo”的上升沿被锁存。
具体实施方式
实施例1
如图1所示,实现基于单FIFO、双倍时钟的双向数字延迟线需要用到1个可预置数据存储区大小的FIFO,用于保存输入数据。
基于单FIFO、双倍时钟的双向数字延迟实现方法,以模拟的雷达回波环境中目标的运动越来越近、回波信号时延逐渐减小为例,步骤如下:
步骤1、设置FIFO数据存储区的初始大小为P,并设置FIFO为读不使能状态,写使能信号在每个读写控制周期(2倍于FIFO的数据时钟频率)翻转,数据依序输入写指针指向的存储单元。如图2所示。
步骤2、当数据存储区的长度达到设定的要求后,FIFO的写使能、读使能信号在每个读写控制周期同时翻转,FIFO的长度保持不变。如图2所示。
步骤3、当输出数据相对于输入数据的延迟由P减少到P-1时,FIFO的写使能信号在每个读写控制周期翻转,读使能信号则在连续的多个读写控制周期为使能状态,如图4所示。
步骤4、直到FIFO的长度重新达到P-1后,设置FIFO写使能、读使能信号在每个读写控制周期同时翻转,此时FIFO的长度在新的长度要求下保持不变。如图4所示。
经过上述步骤处理,即可得到符合延时要求的输出信号。
实施例2
采用雷达信号模拟器作为平台,模拟目标不断接近雷达的情况。假设模拟目标从进入雷达波束主瓣到离开雷达波束主瓣,一共收到M个雷达脉冲,并假设其第一个脉冲重复周期的回波信号与发射信号间的延迟为N时钟周期,第二个脉冲重复周期的回波信号与发射信号间的延迟为N-1时钟周期,以此类推,第M个回波信号与发射信号间的延迟为N-M+1个时钟周期,因此需设置的FIFO大小为N~N-M+1。
步骤1、设置FIFO数据存储区的大小,长度为N。
步骤2、数据依序送入FIFO,直至数据缓冲区被写满。
步骤3、新来的数据依次写入FIFO,同时旧数据从FIFO依次读出,FIFO的输出数据相对于输入数据延迟N个时钟周期。
步骤4、当目标延迟需要调整为N-1时,用2倍时钟连续从FIFO中读出2个数据,如图4所示。
步骤5、重复步骤3、4,直到FIFO的长度变成N-M+1。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的实施方法,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。

Claims (1)

1.一种基于单FIFO的双倍时钟双向数字延迟方法,该方法包括:
首先使用的FIFO控制信号的时钟频率为延迟线输入输出数据时钟频率的2倍;
初始时,FIFO数据存储区无数据,初始设置FIFO的长度,并设置FIFO为读不使能状态,写使能信号则在每个读写控制周期翻转,需进行延时的数据不间断依序送入FIFO数据存储区;当数据存储区的长度达到设定的要求后,FIFO的写使能、读使能信号在每个读写控制周期同时翻转,FIFO的长度保持不变;
当输出数据相对于输入数据的延迟需要增加m个输入输出数据线时钟周期时,FIFO的写使能信号在每个读写控制周期翻转,读使能信号则在连续的2m个读写控制周期为不使能状态;直到FIFO的长度重新达到设定的要求后,设置FIFO写使能、读使能信号在每个读写控制周期同时翻转,此时FIFO的长度在新的长度要求下保持不变;在FIFO调整长度增加的过程中,FIFO没有读出新的数据,所以延迟线的输出保持原来的数据,即数据被重复;
当输出数据相对于输入数据的延迟需要减少加m个输入输出数据线时钟周期时,FIFO的写使能信号在每个读写控制周期翻转,读使能信号则在连续的2m个读写控制周期为使能状态,直到FIFO的长度重新达到设定的要求后,设置FIFO写使能、读使能信号在每个读写控制周期同时翻转,此时FIFO的长度在新的长度要求下保持不变;在FIFO调整长度变短的过程中,FIFO连续地输出2m个数据,而延迟线只输出每2个数据中的1个,即有数据被丢失。
CN201510107828.1A 2015-03-12 2015-03-12 一种基于单fifo的双倍时钟双向数字延迟方法 Active CN104731550B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510107828.1A CN104731550B (zh) 2015-03-12 2015-03-12 一种基于单fifo的双倍时钟双向数字延迟方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510107828.1A CN104731550B (zh) 2015-03-12 2015-03-12 一种基于单fifo的双倍时钟双向数字延迟方法

Publications (2)

Publication Number Publication Date
CN104731550A CN104731550A (zh) 2015-06-24
CN104731550B true CN104731550B (zh) 2017-10-17

Family

ID=53455481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510107828.1A Active CN104731550B (zh) 2015-03-12 2015-03-12 一种基于单fifo的双倍时钟双向数字延迟方法

Country Status (1)

Country Link
CN (1) CN104731550B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106681687B (zh) * 2016-12-30 2018-08-07 周阳 一种fifo数据均衡输出方法及其输出装置
CN108665922B (zh) * 2018-04-24 2021-09-24 电子科技大学 一种应用于雷达模拟的可变双向数字延迟方法
CN109143186A (zh) * 2018-08-17 2019-01-04 电子科技大学 一种宽带雷达信号多目标远距离模拟装置及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004111860A3 (en) * 2003-06-16 2005-02-10 Koninkl Philips Electronics Nv Data processing circuit with multiplexed memory
CN102163980A (zh) * 2011-05-17 2011-08-24 中国电子科技集团公司第十研究所 自动校准和差通道信号传输时延一致的处理方法
CN103066997A (zh) * 2012-11-29 2013-04-24 电子科技大学 一种基于fpga的双通道无缝数字延迟实现方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8301932B2 (en) * 2009-11-16 2012-10-30 Arm Limited Synchronising between clock domains

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004111860A3 (en) * 2003-06-16 2005-02-10 Koninkl Philips Electronics Nv Data processing circuit with multiplexed memory
CN102163980A (zh) * 2011-05-17 2011-08-24 中国电子科技集团公司第十研究所 自动校准和差通道信号传输时延一致的处理方法
CN103066997A (zh) * 2012-11-29 2013-04-24 电子科技大学 一种基于fpga的双通道无缝数字延迟实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于FPGA的DDR SDRAM控制器设计与实现;高群福等;《可编程器件应用》;20110831;第34卷(第8期);56-59 *

Also Published As

Publication number Publication date
CN104731550A (zh) 2015-06-24

Similar Documents

Publication Publication Date Title
TW518508B (en) Dual clock domain read FIFO
CN106874224B (zh) 自动搬运且适应器件的多线SPI-Flash控制器
US9378790B2 (en) Apparatus and method for buffered write commands in a memory
KR101087419B1 (ko) 비휘발성 메모리용 고속 인터페이스
CN104731550B (zh) 一种基于单fifo的双倍时钟双向数字延迟方法
CN101162452B (zh) 多输入/输出串行外围接口电路及数据传输方法
CN110462599A (zh) 用于循环缓冲器的自主硬件管理的设备和方法
GB2430512A (en) Controller for NAND flash memory
CN105527609A (zh) 基于dsp的pd雷达系统矩阵转置方法
CN103811080A (zh) 存储器测试系统以及存储器测试方法
CN105094743A (zh) 一种先进先出数据缓存器及其进行时延控制的方法
US10002090B2 (en) Method for improving the performance of synchronous serial interfaces
CN108710587B (zh) 基于axi总线的信号处理fpga通用处理架构系统
CN103066997B (zh) 一种基于fpga的双通道无缝数字延迟实现方法
US20120110368A1 (en) Data paths using a first signal to capture data and a second signal to output data and methods for providing data
JP5449032B2 (ja) メモリシステム
CN110221780A (zh) 存储器控制器、存储器控制方法、以及电脑系统
CN103135097B (zh) 一种基于fpga的16通道双模式雷达数字下变频方法
US7191162B2 (en) FIFO interface for flag-initiated DMA frame synchro-burst operation
CN106847319B (zh) 一种fpga电路及窗口信号调整方法
CN111290889A (zh) 基于fpga的面向通用处理器的测试方法及系统
CN109143186A (zh) 一种宽带雷达信号多目标远距离模拟装置及方法
CN101923524B (zh) 一种基于clb总线的存储器接口方法
CN103914417A (zh) 一种基于dsp的数据传输与处理的方法
CN105183664A (zh) 一种可变长度雷达脉冲数据缓存方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Zhou Yun

Inventor after: Liu Hua

Inventor after: Wang Xuegang

Inventor after: Zhao Guanglei

Inventor after: Zhou Yangpeng

Inventor after: Shu Zhanjun

Inventor after: Luo Xu

Inventor after: Cui Minglei

Inventor before: Zhou Yun

Inventor before: Zhou Yangpeng

Inventor before: Shu Zhanjun

Inventor before: Luo Xu

Inventor before: Cui Minglei

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant