CN114461009B - 一种应用于fpga单比特信号自动识别时钟域转换的方法 - Google Patents

一种应用于fpga单比特信号自动识别时钟域转换的方法 Download PDF

Info

Publication number
CN114461009B
CN114461009B CN202210017057.7A CN202210017057A CN114461009B CN 114461009 B CN114461009 B CN 114461009B CN 202210017057 A CN202210017057 A CN 202210017057A CN 114461009 B CN114461009 B CN 114461009B
Authority
CN
China
Prior art keywords
clock
cnt
counter
clock domain
original
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
CN202210017057.7A
Other languages
English (en)
Other versions
CN114461009A (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.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center 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 Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202210017057.7A priority Critical patent/CN114461009B/zh
Publication of CN114461009A publication Critical patent/CN114461009A/zh
Application granted granted Critical
Publication of CN114461009B publication Critical patent/CN114461009B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开了一种应用于FPGA单比特信号自动识别时钟域转换的方法;包括:步骤一:触发一个一直为高的电平信号;步骤二:原时钟域下的计数器s_cnt与目的时钟域下的计数器d_cnt开始计数;步骤三:所述计数器s_cnt和计数器d_cnt计数到设定值时停止;步骤四:判断出原时钟是快时钟还是慢时钟;步骤五:根据所述步骤四的判断自动选择单比特信号时钟域转换分支。本发明让计数器s_cnt和计数器d_cnt计数到设定值时停止,通过判断到设定值得时间判断出快时钟和慢时钟,这些过程都可以自动实现。可以自动识别原时钟与目的时钟快慢,方便单比特信号CDC设计,减少设计难度。

Description

一种应用于FPGA单比特信号自动识别时钟域转换的方法
技术领域
本发明涉及自动识别时钟域转换的技术领域,尤其涉及一种应用于FPGA单比特信号自动识别时钟域转换的方法。
背景技术
在FPGA(Field Programmable Gate Array,现场可编程门阵列)及IC(IntegratedCircuit,集成电路)功能设计时信号时钟域转换是经常要遇到的问题,处理不好CDC(ClockDomain Conversion,时钟域转换)问题将会使时钟不能采到正确的数据,导致整个系统不能正常工作。
单比特信号跨时钟问题是目前CDC问题常见的一种。在处理单比特信号CDC问题时,现有技术将单比特信号原时钟及目的时钟分为两类处理,一种是原时钟快目的时钟慢,另一种是原时钟慢目的时钟快。这样在设计单比特信号跨时钟转换问题需要考虑原时钟和目的时钟快慢的问题。现有方案中,在比较大的工程设计时,往往需要很多人合作去完成,这样会出现设计人员处理单比特信号时钟域转换时不清楚原时钟和目的时钟谁快谁慢的问题。
发明内容
本发明的目的就是为了解决上述问题,提供一种应用于FPGA单比特信号自动识别时钟域转换的方法,采用自动识别技术,在处理单比特信号时钟域转换时自动识别原时钟及目的时钟的快慢,识别后分别进入相应分支进行时钟域转换处理。
为了实现上述目的,本发明采用如下技术方案:
一种应用于FPGA单比特信号自动识别时钟域转换的方法,包括:
步骤一:触发一个一直为高的电平信号;
步骤二:原时钟域下的计数器s_cnt与目的时钟域下的计数器d_cnt开始计数;
步骤三:所述计数器s_cnt和计数器d_cnt计数到设定值时停止;
步骤四:判断出原时钟是快时钟还是慢时钟;
步骤五:根据所述步骤四的判断自动选择单比特信号时钟域转换分支。
当原时钟域接收到设定数据时,触发一个一直为高的电平信号。
当原时钟域或目的时钟接收到设定数据时,触发一个一直为高的电平信号。
当原时钟域接收到第一个有效数据时,原时钟域下触发一个一直为高的电平信号。
所述步骤三中根据所述计数器s_cnt和计数器d_cnt计数到设定值时所用的时间判断出原时钟是快时钟还是慢时钟。
所述计数器s_cnt计数到设定值时所用时间比所述计数器d_cnt时间长,则原时钟为慢时钟,目的时钟为快时钟,否则原时钟为快时钟,目的时钟为慢时钟。
通过组合逻辑判断出原时钟是快时钟还是慢时钟。
当原时钟是快时钟,目的时钟为慢时钟时,所述步骤五执行快时钟域到慢时钟域单比特信号跨时钟域处理。
当原时钟是慢时钟,目的时钟快时钟时,所述步骤五执行慢时钟域到快时钟域单比特信号跨时钟域处理。
本发明的有益效果:
本发明当原时钟域接收到第一个有效数据时,触发一个高电平信号,这样可以省去一个信号的输入,简化设计。
本发明让计数器s_cnt和计数器d_cnt计数到设定值时停止,通过判断到设定值得时间判断出快时钟和慢时钟,这些过程都可以自动实现。可以自动识别原时钟与目的时钟快慢,方便单比特信号CDC设计,减少设计难度。
当原时钟域收到第一个有效信号时开始进行原时钟与目的时钟频率比较,比较完后进入对应分支进行时钟域转换。这样设计人员在处理单比特信号时钟域转换时无需考虑原时钟与目的时钟快慢的问题。
附图说明
图1为FPGA单比特信号自动识别时钟域转换流程图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
一种应用于FPGA单比特信号自动识别时钟域转换的方法,如图1所示,图中d_clk为原时钟,d_data为原时钟域下的数据,s_clk为目的时钟,s_data为同步后目的时钟域下的数据。当第一个输入信号d_data有效时f_s_elect被拉高,触发原时钟域s_cnt和目的时钟域d_cnt计数器开始计数,当计数到达到设定值时计数停止,如果s_cnt先计数到设定值时进入快->慢单比特跨时钟处理模块,否则进入慢->快单比特跨时钟处理模块。当单比特跨时钟处理完时,通过判断进入了哪个单比特跨时钟处理模块选择s_data输出。
具体方法包括:
步骤一:触发一个一直为高的电平信号;
步骤二:原时钟域下的计数器s_cnt与目的时钟域下的计数器d_cnt开始计数;
步骤三:所述计数器s_cnt和计数器d_cnt计数到设定值时停止;
步骤四:判断出原时钟是快时钟还是慢时钟;
步骤五:根据所述步骤四的判断自动选择单比特信号时钟域转换分支。
当原时钟域接收到设定数据时,触发一个一直为高的电平信号。
当原时钟域接收到第一个有效数据时,原时钟域下触发一个一直为高的电平信号。
所述步骤三中根据所述计数器s_cnt和计数器d_cnt计数到设定值时所用的时间判断出原时钟是快时钟还是慢时钟。
所述计数器s_cnt计数到设定值时所用时间比所述计数器d_cnt时间长,则原时钟为慢时钟,目的时钟为快时钟,否则原时钟为快时钟,目的时钟为慢时钟。
通过组合逻辑判断出原时钟是快时钟还是慢时钟。
当原时钟是快时钟,目的时钟为慢时钟时,所述步骤五执行快时钟域到慢时钟域单比特信号跨时钟域处理。
当原时钟是慢时钟,目的时钟快时钟时,所述步骤五执行慢时钟域到快时钟域单比特信号跨时钟域处理。
当原时钟域接收到第一个有效数据时,开始自动识别原时钟与目的时钟快慢,并在原时钟域下产生一个一直为高电平信号f_s_elect。
在f_s_elect信号为高时,触发原时钟域下的计数器s_cnt与目的时钟域下的计数器d_cnt进行计数。s_cnt与d_cnt计数到相同的值n时计数停止,由于时钟频率不同s_cnt与d_cnt计数到n的时间不同,此时通过组合逻辑就可以判断原时钟域与目的时钟域哪个是快时钟哪个是慢时钟。
通过判断原时钟与目的时钟快慢,自动选择单比特信号时钟域转换分支,即,当判断原时钟快目的时钟慢,进入快时钟域到慢时钟域单比特信号跨时钟域处理,当判断原时钟慢目的时钟快,进入慢时钟域到快时钟域单比特信号跨时钟域处理。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (4)

1.一种应用于FPGA单比特信号自动识别时钟域转换的方法,其特征是,包括:
步骤一:当原时钟域接收到第一个有效数据时,原时钟域下触发一个一直为高的电平信号;
步骤二:原时钟域下的计数器s_cnt与目的时钟域下的计数器d_cnt开始计数;
步骤三:所述计数器s_cnt和计数器d_cnt计数到设定值时停止;
步骤四:所述计数器s_cnt和计数器d_cnt计数到设定值时所用的时间判断出原时钟是快时钟还是慢时钟;所述计数器s_cnt计数到设定值时所用时间比所述计数器d_cnt时间长,则原时钟为慢时钟,目的时钟为快时钟,否则原时钟为快时钟,目的时钟为慢时钟;
步骤五:根据所述步骤四的判断自动选择单比特信号时钟域转换分支。
2.如权利要求1所述一种应用于FPGA单比特信号自动识别时钟域转换的方法,其特征是,通过组合逻辑判断出原时钟是快时钟还是慢时钟。
3.如权利要求1所述一种应用于FPGA单比特信号自动识别时钟域转换的方法,其特征是,当原时钟是快时钟,目的时钟为慢时钟时,所述步骤五执行快时钟域到慢时钟域单比特信号跨时钟域处理。
4.如权利要求1所述一种应用于FPGA单比特信号自动识别时钟域转换的方法,其特征是,当原时钟是慢时钟,目的时钟快时钟时,所述步骤五执行慢时钟域到快时钟域单比特信号跨时钟域处理。
CN202210017057.7A 2022-01-07 2022-01-07 一种应用于fpga单比特信号自动识别时钟域转换的方法 Active CN114461009B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210017057.7A CN114461009B (zh) 2022-01-07 2022-01-07 一种应用于fpga单比特信号自动识别时钟域转换的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210017057.7A CN114461009B (zh) 2022-01-07 2022-01-07 一种应用于fpga单比特信号自动识别时钟域转换的方法

Publications (2)

Publication Number Publication Date
CN114461009A CN114461009A (zh) 2022-05-10
CN114461009B true CN114461009B (zh) 2024-04-26

Family

ID=81409953

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210017057.7A Active CN114461009B (zh) 2022-01-07 2022-01-07 一种应用于fpga单比特信号自动识别时钟域转换的方法

Country Status (1)

Country Link
CN (1) CN114461009B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6112307A (en) * 1993-12-30 2000-08-29 Intel Corporation Method and apparatus for translating signals between clock domains of different frequencies
US6603336B1 (en) * 2000-09-14 2003-08-05 Conexant Systems Inc. Signal duration representation by conformational clock cycles in different time domains
US6845457B1 (en) * 2000-09-26 2005-01-18 Sun Microsystems, Inc. Method and apparatus for controlling transitions between a first and a second clock frequency
CN103197139A (zh) * 2012-01-06 2013-07-10 上海华虹集成电路有限责任公司 时钟频率测试方法和时钟频率测试电路
CN104199276A (zh) * 2014-09-23 2014-12-10 李亚锋 基于fpga的信号时差测量方法及时间数字转换器
CN104412222A (zh) * 2012-06-27 2015-03-11 北欧半导体公司 时钟域之间的数据传输
CN111813181A (zh) * 2020-07-09 2020-10-23 长沙海格北斗信息技术有限公司 Rtc数字电路断电保护方法、rtc数字电路及其芯片
CN113821075A (zh) * 2021-09-27 2021-12-21 上海航天计算机技术研究所 一种异步多比特信号跨时钟域处理方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7809972B2 (en) * 2007-03-30 2010-10-05 Arm Limited Data processing apparatus and method for translating a signal between a first clock domain and a second clock domain
US8024597B2 (en) * 2008-02-21 2011-09-20 International Business Machines Corporation Signal phase verification for systems incorporating two synchronous clock domains
US8443224B2 (en) * 2010-10-27 2013-05-14 Freescale Semiconductor, Inc. Apparatus and method for decoupling asynchronous clock domains
US9134751B2 (en) * 2012-03-30 2015-09-15 Intel Corporation Time keeping in unknown and unstable clock architecture

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6112307A (en) * 1993-12-30 2000-08-29 Intel Corporation Method and apparatus for translating signals between clock domains of different frequencies
US6603336B1 (en) * 2000-09-14 2003-08-05 Conexant Systems Inc. Signal duration representation by conformational clock cycles in different time domains
US6845457B1 (en) * 2000-09-26 2005-01-18 Sun Microsystems, Inc. Method and apparatus for controlling transitions between a first and a second clock frequency
CN103197139A (zh) * 2012-01-06 2013-07-10 上海华虹集成电路有限责任公司 时钟频率测试方法和时钟频率测试电路
CN104412222A (zh) * 2012-06-27 2015-03-11 北欧半导体公司 时钟域之间的数据传输
CN104199276A (zh) * 2014-09-23 2014-12-10 李亚锋 基于fpga的信号时差测量方法及时间数字转换器
CN111813181A (zh) * 2020-07-09 2020-10-23 长沙海格北斗信息技术有限公司 Rtc数字电路断电保护方法、rtc数字电路及其芯片
CN113821075A (zh) * 2021-09-27 2021-12-21 上海航天计算机技术研究所 一种异步多比特信号跨时钟域处理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
数字信号在不同时钟域间同步电路的设计;刘宗福;马冬冬;郭新民;;电子元器件应用;20110715(07);第47-49页 *

Also Published As

Publication number Publication date
CN114461009A (zh) 2022-05-10

Similar Documents

Publication Publication Date Title
US9685953B1 (en) Low latency asynchronous interface circuits
US8255748B2 (en) Soft error and transient error detection device and methods therefor
US4298987A (en) Memory-based frame synchronizer
CN103197139A (zh) 时钟频率测试方法和时钟频率测试电路
CN105245203A (zh) 高精度低速时钟占空比检测系统及方法
CN114461009B (zh) 一种应用于fpga单比特信号自动识别时钟域转换的方法
CN103346771A (zh) 兼容两种协议的多通道切换控制电路及控制方法
AU616258B2 (en) Process and arrangement for the monitoring of a clock signal
US3898444A (en) Binary counter with error detection and transient error correction
CN109164982B (zh) 数据处理电路、方法及数据存储设备
CN114253879A (zh) 一种基于软件模拟的多通道串口通信方法及系统
US3996523A (en) Data word start detector
CN112886951A (zh) 一种高精度守时设备的多时钟源无缝切换电路及方法
CN1287715A (zh) 实现多个计数的计数器及其方法
CN116318090B (zh) 一种逻辑保护电路及其控制方法、功率模块
US20210119621A1 (en) Debounce circuit with noise immunity and glitch event tracking
CN114397953B (zh) 一种集成电路mcu设计中的复位滤波电路设计实现方法
CN112713895B (zh) 一种时钟检测电路及方法
CN1719352A (zh) 基于流水线逻辑控制和游标时间内插方法的连续测时系统
RU2444780C1 (ru) Многоканальное устройство для подключения абонентов к общей магистрали
CN113376513B (zh) 延时测量电路、同步信号补偿装置及ic测量装置
US6677785B1 (en) Power level detection circuit
KR100232868B1 (ko) 공급되는 클럭의 상태를 검출하는 회로
US6670823B2 (en) Detecting counter contents for time-critical applications
CN118054789A (zh) 一种异步saradc亚稳态检测消除电路

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
GR01 Patent grant
GR01 Patent grant