CN111580595A - 一种用于fpga的相关衍生时钟域中信号同步的*** - Google Patents
一种用于fpga的相关衍生时钟域中信号同步的*** Download PDFInfo
- Publication number
- CN111580595A CN111580595A CN202010380200.XA CN202010380200A CN111580595A CN 111580595 A CN111580595 A CN 111580595A CN 202010380200 A CN202010380200 A CN 202010380200A CN 111580595 A CN111580595 A CN 111580595A
- Authority
- CN
- China
- Prior art keywords
- module
- data
- clock domain
- sem
- iom
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明提供一种用于FPGA的相关衍生时钟域中信号同步的***,属于FPGA设计技术领域,包含数据编码和解码模块BJM,数据单位扩展校对模块KJM,数据FIFO传递模块SEM,数据接口模块IOM,数据同步电路顶层模块TPM等部分组成。本发明实施方便,流程简单,高效稳定,可以实现不同相关时钟域的信号同步。
Description
技术领域
本发明涉及FPGA设计技术,尤其涉及一种用于FPGA的相关衍生时钟域中信号同步的***。
背景技术
目前,电子信息技术产业发展迅速,对于专用芯片的性能要求越来越高,在集成电路制技术迅速进步的同时,集成电路的复杂度呈指数增加,研发生产周期大幅延长,不能很好的适应多变的市场需求。
大规模现场可编程逻辑器件(FPGA)提供了一种可以灵活实现电路的方法,平衡了产品研发周期和产品性能之间的矛盾。FPGA作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
随着***应用需求的不断增多和集成电路技术的快速发展,大规模数字电路中常包含多个时钟域,设计中不可避免地要完成数字信号在不同时钟域间的传递,这时,如何保持***的稳定,顺利完成控制信号和数据通路的传输就变得至关重要,这也是电路设计中最为棘手的问题之一。
由于FPGA设计功能的复杂度上升,信号所属时钟域越来越多,这其中有许多是由具有相同时钟驱动的PLL或MMCM生成的衍生时钟域,这些时钟域中的信号有时因设计需要同步。
发明内容
针对现有FPGA设计中由具有相同时钟驱动的PLL或MMCM生成的衍生时钟域简称为相关衍生时钟域,不同相关衍生时钟域中输入信号的同步提出了一种高可靠性信号同步电路。通过使用高可靠编码、单bit转多bit等方式实现高可靠跨时钟域信号同步,实现多个相关衍生时钟域输入信号的高可靠同步。
本发明的技术方案是:
一种用于FPGA的相关衍生时钟域中信号同步的***,
主要包括:数据编码和解码模块即BJM模块、数据单位扩展校对模块即KJM模块、数据FIFO传递模块即SEM模块、数据接口模块即IOM模块、数据同步电路顶层模块即TPM模块;
其中,
IOM模块是数据输入和输出的接口模块,对外连接不同时钟域需要信号同步的数据通路,对内连接BJM模块、KJM模块和SEM模块;
TPM模块根据实际需求实例化多个BJM模块、多个KJM模块、多个SEM模块和一个IOM模块。
进一步的,
通过使用高可靠编码、单bit转多bit方式实现高可靠跨时钟域信号同步。
进一步的,
所述IOM模块根据选通控制信号将接收的数据发送给各模块完成相应的数据同步处理,并将处理后的数据发送给各对应时钟域模块。
进一步的,
所述BJM模块将接收的数据根据选通控制信号使用独热码或格雷码进行编码,然后进行跨时钟域信号处理后再进行数据解码,将还原数据发送给SEM模块。
进一步的,
所述KJM模块将接收的数据每1bit位扩展为16bit位,然后进行跨时钟域信号处理,根据数据比较规则将数据还原后发送给SEM模块。
再进一步的,
所述SEM模块将接收的数据存入FIFO中,然后读出数据发送给终端时钟域模块,完成中间时钟域到终端时钟域的数据同步。
其中,BJM模块与KJM模块的数量相对应。
被同步信号输入IOM模块的输入端口,IOM模块将接收的数据发送给BJM模块和KJM模块,两个模块完成数据从被同步时钟域到输入驱动时钟域的信号同步,然后两个模块的输出分别发送给SEM模块,然后SEM模块将数据通过IOM模块发送给被同步时钟域模块,完成输入驱动时钟域到相关衍生时钟域的信号同步。
本发明的有益效果是
实施方便,流程简单,高效稳定,可以实现不同相关时钟域的信号同步。
附图说明
图1是本发明的工作框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的一种用于FPGA的多个相关衍生时钟域中信号同步***,主要由数据编码和解码模块BJM,数据单位扩展校对模块KJM,数据FIFO传递模块SEM,数据接口模块IOM,数据同步电路顶层模块TPM等部分组成;
所述IOM模块是同步电路的数据输入和输出接口模块,对外连接不同时钟域需要信号同步的数据通路,对内连接BJM模块、KJM模块和SEM模块,根据选通控制信号将接收的数据发送给各模块完成相应的数据同步处理,并将处理后的数据发送给各对应时钟域模块。
所述BJM模块将接收的数据根据选通控制信号使用独热码或格雷码进行编码,然后进行跨时钟域信号处理后再进行数据解码,将还原数据发送给SEM模块。
所述KJM模块将接收的数据每1bit位扩展为16bit位,然后进行跨时钟域信号处理,根据数据比较规则将数据还原后发送给SEM模块。
所述SEM模块将接收的数据存入FIFO中,然后读出数据发送给终端时钟域模块,完成中间时钟域到终端时钟域的数据同步。
所述TPM模块根据实际需求实例化多个BJM模块、多个KJM模块、多个SEM模块和一个IOM模块。
首先,根据设计中需要进行输入信号同步的相关衍生时钟域个数和信号个数在设计中实例化相应数量的各功能模块。
如图1所示,该实施例中设计中有需要进行输入信号同步的相关衍生时钟域个数为4个,需要同步的信号为2个,两个信号的数据位宽均为4bit,相关衍生时钟域的输入驱动时钟称为时钟A,相关衍生时钟称为时钟A1、A2、A3、A4,被同步时钟域时钟称为时钟B,因此,本实施例需要实例化一个TPM模块,TPM模块需要实例化两个个BJM模块、两个KJM模块、十六个SEM模块和一个IOM模块。
然后,将来自时钟B时钟域的两个被同步信号输入IOM模块的输入端口,IOM模块将接收的数据1发送给一个BJM模块和一个KJM模块,两个模块完成数据从时钟B时钟域到时钟A时钟域的信号同步,然后两个模块的输出分别发送给四个SEM模块,然后SEM模块将数据通过IOM模块发送给被同步时钟域模块,完成时钟A时钟域到时钟A1、A2、A3、A4时钟域的信号同步。
以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种用于FPGA的相关衍生时钟域中信号同步的***,其特征在于,
包括:数据编码和解码模块即BJM模块、数据单位扩展校对模块即KJM模块、数据FIFO传递模块即SEM模块、数据接口模块即IOM模块、数据同步电路顶层模块即TPM模块;
IOM模块是数据输入和输出的接口模块,对外连接不同时钟域需要信号同步的数据通路,对内连接BJM模块、KJM模块和SEM模块;
TPM模块根据实际需求实例化一个以上的BJM模块、一个以上的KJM模块、一个以上的SEM模块和一个IOM模块。
2.根据权利要求1所述的***,其特征在于,
通过使用高可靠编码、单bit转多bit方式实现高可靠跨时钟域信号同步。
3.根据权利要求1或2所述的***,其特征在于,
所述IOM模块根据选通控制信号将接收的数据发送给各模块完成相应的数据同步处理,并将处理后的数据发送给各对应时钟域模块。
4.根据权利要求3所述的***,其特征在于,
所述BJM模块将接收的数据根据选通控制信号使用独热码或格雷码进行编码,然后进行跨时钟域信号处理后再进行数据解码,将还原数据发送给SEM模块。
5.根据权利要求3所述的***,其特征在于,
所述KJM模块将接收的数据每1bit位扩展为16bit位,然后进行跨时钟域信号处理,根据数据比较规则将数据还原后发送给SEM模块。
6.根据权利要求4或5所述的***,其特征在于,
所述SEM模块将接收的数据存入FIFO中,然后读出数据发送给终端时钟域模块,完成中间时钟域到终端时钟域的数据同步。
7.根据权利要求1所述的***,其特征在于,
BJM模块与KJM模块的数量相对应。
8.根据权利要求6所述的***,其特征在于,
被同步信号输入IOM模块的输入端口,IOM模块将接收的数据发送给BJM模块和KJM模块,两个模块完成数据从被同步时钟域到输入驱动时钟域的信号同步,然后两个模块的输出分别发送给SEM模块,然后SEM模块将数据通过IOM模块发送给被同步时钟域模块,完成输入驱动时钟域到相关衍生时钟域的信号同步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010380200.XA CN111580595A (zh) | 2020-05-08 | 2020-05-08 | 一种用于fpga的相关衍生时钟域中信号同步的*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010380200.XA CN111580595A (zh) | 2020-05-08 | 2020-05-08 | 一种用于fpga的相关衍生时钟域中信号同步的*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111580595A true CN111580595A (zh) | 2020-08-25 |
Family
ID=72124761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010380200.XA Pending CN111580595A (zh) | 2020-05-08 | 2020-05-08 | 一种用于fpga的相关衍生时钟域中信号同步的*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580595A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112114615A (zh) * | 2020-08-31 | 2020-12-22 | 济南浪潮高新科技投资发展有限公司 | 一种跨时钟域数据同步电路、方法及设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760277B1 (en) * | 2001-04-06 | 2004-07-06 | Advanced Micro Devices, Inc. | Arrangement for generating multiple clocks in field programmable gate arrays of a network test system |
US7352836B1 (en) * | 2001-08-22 | 2008-04-01 | Nortel Networks Limited | System and method of cross-clock domain rate matching |
CN101692218A (zh) * | 2009-09-27 | 2010-04-07 | 上海大学 | 一种数据高速传输方法 |
US20140052951A1 (en) * | 2012-08-17 | 2014-02-20 | Renesas Mobile Corporation | Method and Apparatus for Transferring Data from a First Domain to a Second Domain |
US20140062548A1 (en) * | 2012-09-06 | 2014-03-06 | Changku Hwang | Wide-range glitch-free asynchronous clock switch |
CN104991878A (zh) * | 2015-06-18 | 2015-10-21 | 北京亚科鸿禹电子有限公司 | 一种fpga虚拟io片间互连电路 |
CN107132790A (zh) * | 2017-04-24 | 2017-09-05 | 浪潮通信信息***有限公司 | 一种基于fpga的多路同步数据采集模块 |
CN107656886A (zh) * | 2017-09-30 | 2018-02-02 | 中国科学院长春光学精密机械与物理研究所 | 一种跨时钟域信号处理电路及其处理方法 |
US20180107622A1 (en) * | 2015-07-29 | 2018-04-19 | State Nuclear Power Automation System Engineering Co., Ltd. | FPGA-based Interface Signal Remapping Method |
CN108829373A (zh) * | 2018-05-25 | 2018-11-16 | 西安微电子技术研究所 | 一种异步fifo实现电路 |
CN110765047A (zh) * | 2019-10-24 | 2020-02-07 | 南方科技大学 | 基于指令集的数字信号控制***、fpga模块及方法 |
-
2020
- 2020-05-08 CN CN202010380200.XA patent/CN111580595A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760277B1 (en) * | 2001-04-06 | 2004-07-06 | Advanced Micro Devices, Inc. | Arrangement for generating multiple clocks in field programmable gate arrays of a network test system |
US7352836B1 (en) * | 2001-08-22 | 2008-04-01 | Nortel Networks Limited | System and method of cross-clock domain rate matching |
CN101692218A (zh) * | 2009-09-27 | 2010-04-07 | 上海大学 | 一种数据高速传输方法 |
US20140052951A1 (en) * | 2012-08-17 | 2014-02-20 | Renesas Mobile Corporation | Method and Apparatus for Transferring Data from a First Domain to a Second Domain |
US20140062548A1 (en) * | 2012-09-06 | 2014-03-06 | Changku Hwang | Wide-range glitch-free asynchronous clock switch |
CN104991878A (zh) * | 2015-06-18 | 2015-10-21 | 北京亚科鸿禹电子有限公司 | 一种fpga虚拟io片间互连电路 |
US20180107622A1 (en) * | 2015-07-29 | 2018-04-19 | State Nuclear Power Automation System Engineering Co., Ltd. | FPGA-based Interface Signal Remapping Method |
CN107132790A (zh) * | 2017-04-24 | 2017-09-05 | 浪潮通信信息***有限公司 | 一种基于fpga的多路同步数据采集模块 |
CN107656886A (zh) * | 2017-09-30 | 2018-02-02 | 中国科学院长春光学精密机械与物理研究所 | 一种跨时钟域信号处理电路及其处理方法 |
CN108829373A (zh) * | 2018-05-25 | 2018-11-16 | 西安微电子技术研究所 | 一种异步fifo实现电路 |
CN110765047A (zh) * | 2019-10-24 | 2020-02-07 | 南方科技大学 | 基于指令集的数字信号控制***、fpga模块及方法 |
Non-Patent Citations (2)
Title |
---|
宋文强;胡毅;: "FPGA跨时钟域信号同步设计方法研究" * |
肖安洪;曾辉;秦友用;靳津;周俊?;郭文;陈俊杰;: "基于FPGA的"龙鳞"通信模块跨时钟域验证实践" * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112114615A (zh) * | 2020-08-31 | 2020-12-22 | 济南浪潮高新科技投资发展有限公司 | 一种跨时钟域数据同步电路、方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107154836B (zh) | 一种基于fpga的并行循环冗余crc校验方法 | |
US7436210B2 (en) | Next generation 8B10B architecture | |
CN101299647B (zh) | 一种实现sdh业务无损切换的装置和方法 | |
US6593863B2 (en) | Serializer | |
US7659838B2 (en) | Deserializer circuitry for high-speed serial data receivers on programmable logic device integrated circuits | |
CN102710240B (zh) | 信号处理装置、方法、serdes和处理器 | |
CN102340316A (zh) | 基于fpga的微型空间过采样直流平衡串行解串器 | |
US7889763B2 (en) | Data transmission apparatus and data transmission method | |
CN115543016B (zh) | 一种时钟架构及处理模组 | |
CN111580595A (zh) | 一种用于fpga的相关衍生时钟域中信号同步的*** | |
CN112286853B (zh) | 一种支持多协议的fpga***及数据处理方法 | |
US20190044695A1 (en) | Method and apparatus for performing non-unique data pattern detection and alignment in a receiver implemented on a field programmable gate array | |
JP2000261296A (ja) | 非同期パルス信号を同期パルス信号に変換する同期素子 | |
CN104615192A (zh) | 一种强化异步时钟管理的复杂可编程逻辑器件 | |
VidyaSagar et al. | Modified run length encoding scheme for high data compression rate | |
CN102754407B (zh) | 串行接收机及其方法与通信*** | |
CN110008157A (zh) | 一种串行解串器的硬件架构 | |
CN111522769B (zh) | 一种多线程spi通信数据传输方法 | |
CN1573642A (zh) | 在收到控制信号后可编程时钟管理部件的重新配置 | |
CN113364514A (zh) | 一种应用于卫星平台的高速基带数据处理装置 | |
CN1669274B (zh) | 广播路由器及向其选择性地提供多个独立或冗余基准输入的方法 | |
CN205356305U (zh) | 一种串行数据时钟数字锁相装置 | |
CN206743287U (zh) | 一种信道控制板 | |
CN1286296C (zh) | 可编程电信网接口 | |
Sim et al. | A SpaceWire PHY with double data rate and fallback redundancy |
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 |