CN116049061B - 一种跨时钟域的数据传输方法、系统、芯片及电子设备 - Google Patents

一种跨时钟域的数据传输方法、系统、芯片及电子设备 Download PDF

Info

Publication number
CN116049061B
CN116049061B CN202210242154.6A CN202210242154A CN116049061B CN 116049061 B CN116049061 B CN 116049061B CN 202210242154 A CN202210242154 A CN 202210242154A CN 116049061 B CN116049061 B CN 116049061B
Authority
CN
China
Prior art keywords
clock
phase
phase delay
data
domain
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
CN202210242154.6A
Other languages
English (en)
Other versions
CN116049061A (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.)
Chengdu Haiguang Microelectronics Technology Co Ltd
Original Assignee
Chengdu Haiguang Microelectronics 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 Chengdu Haiguang Microelectronics Technology Co Ltd filed Critical Chengdu Haiguang Microelectronics Technology Co Ltd
Priority to CN202210242154.6A priority Critical patent/CN116049061B/zh
Publication of CN116049061A publication Critical patent/CN116049061A/zh
Application granted granted Critical
Publication of CN116049061B publication Critical patent/CN116049061B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4054Coupling between buses using bus bridges where the bridge performs a synchronising function where the function is bus cycle extension, e.g. to meet the timing requirements of the target bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本申请实施例提供一种跨时钟域的数据传输方法、系统、芯片及电子设备,其中方法包括:接入第一时钟域的第一时钟以及第二时钟域的第二时钟;根据第一时钟和第二时钟,确定桥接时钟,其中,桥接时钟由第一时钟和第二时钟经过校准得到,桥接时钟的相位介于第一时钟和第二时钟的相位之间;使用桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使所述数据在第一时钟的第一信号沿进行第一传输处理,并锁定在第二时钟的第二信号沿进行第二传输处理;其中,对所述数据进行第一传输处理和第二传输处理的第一信号沿与第二信号沿之间的周期间隔,不大于设定的时钟周期。本申请实施例能够在消除亚稳态的情况下,实现低延迟的跨时钟域传输数据。

Description

一种跨时钟域的数据传输方法、系统、芯片及电子设备
技术领域
本申请实施例涉及集成电路技术领域,具体涉及一种跨时钟域的数据传输方法、系统、芯片及电子设备。
背景技术
芯片等集成电路在设计时,为兼顾不同功能模块的工作需求,可以使用异步时序设计方式进行时钟设计。在异步时序设计方式下,集成电路中可以设计多个时钟信号(简称时钟),并且不同的时钟可作用在电路中的不同区域(时钟所作用的电路区域可称为时钟域)。
在异步时序设计的集成电路中,不同时钟域的时钟为异步关系,如果直接跨时钟域的进行数据传输,则可能产生亚稳态情况,因此如何优化跨时钟域的数据传输方案,成为了本领域技术人员亟需解决的技术问题。
发明内容
有鉴于此,本申请实施例提供一种跨时钟域的数据传输方法、系统、芯片及电子设备,以在跨时钟域的进行数据传输时,消除亚稳态情况,并降低数据传输延迟。
为实现上述目的,本申请实施例提供如下技术方案。
第一方面,本申请实施例提供一种跨时钟域的数据传输方法,包括:
接入第一时钟域的第一时钟以及第二时钟域的第二时钟;
根据所述第一时钟和所述第二时钟,确定桥接时钟;其中,所述桥接时钟由所述第一时钟和第二时钟经过校准得到,所述桥接时钟的相位介于第一时钟和第二时钟的相位之间;
使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使所述数据在第一时钟的第一信号沿进行第一传输处理,并锁定在所述第二时钟的第二信号沿进行第二传输处理;
其中,对所述数据进行第一传输处理和第二传输处理的第一信号沿与第二信号沿之间的周期间隔,不大于设定的时钟周期。
第二方面,本申请实施例提供一种跨时钟域的数据传输系统,包括:第一功能模块、第二功能模块和校准电路;其中,所述第一功能模块用于在第一时钟域的第一时钟的作用下,对数据进行第一传输处理;所述第二功能模块用于在第二时钟域的第二时钟的作用下,对所述数据进行第二传输处理;
所述校准电路,用于接入第一时钟和第二时钟;根据所述第一时钟和所述第二时钟,确定桥接时钟,其中,所述桥接时钟由所述第一时钟和第二时钟经过校准得到,所述桥接时钟的相位介于第一时钟和第二时钟的相位之间;使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使所述第一功能模块在第一时钟的第一信号沿对所述数据进行第一传输处理,并且所述第二功能模块锁定在第二时钟的第二信号沿对所述数据进行第二传输处理;
其中,对所述数据进行第一传输处理和第二传输处理的第一信号沿与第二信号沿之间的周期间隔,不大于设定的时钟周期。
第三方面,本申请实施例提供一种芯片,包括如上述所述的跨时钟域的数据传输系统。
第四方面,本申请实施例提供一种电子设备,包括如上述所述的芯片。
本申请实施例提供的跨时钟域的数据传输方法,能够在第一时钟域和第二时钟域之间传输数据时,基于第一时钟域的第一时钟和第二时钟域的第二时钟,产生对第一时钟域和第二时钟域之间传输的数据进行桥接的桥接时钟,并且桥接时钟的相位介于第一时钟和第二时钟的相位之间;从而通过桥接时钟的数据桥接,将第一时钟和第二时钟进行数据传输处理的信号沿进行锁定,即所述数据在第一时钟的第一信号沿进行第一传输处理,并锁定在所述第二时钟的第二信号沿进行第二传输处理。本申请实施例可通过桥接时钟的数据桥接,将第一时钟和第二时钟进行数据传输处理的信号沿锁定在一定的时钟周期,并且实现在第一时钟域和第二时钟域之间传输数据时的同步处理,从而避免在第一时钟域和第二时钟域之间引入多级的同步器来进行同步处理,能够在消除亚稳态的情况下,通过将第一时钟和第二时钟进行数据传输处理的信号沿锁定在一定的周期间隔内,来达到降低数据传输延迟的目的。因此,本申请实施例能够在消除亚稳态的情况下,实现低延迟的跨时钟域传输数据。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为亚稳态的示例图。
图2为使用异步FIFO进行同步处理的电路示例图。
图3为异步FIFO的时序示例图。
图4为本申请实施例提供的跨时钟域的数据传输方法的流程图。
图5A为本申请实施例提供的跨时钟域的数据传输系统的示例图。
图5B为本申请实施例提供的跨时钟域的数据传输系统的另一示例图。
图6为本申请实施例提供的确定桥接时钟的方法流程图。
图7A为本申请实施例提供的校准电路的示例图。
图7B为本申请实施例提供的校准电路的另一示例图。
图8A为本申请实施例提供的时序示例图。
图8B为本申请实施例提供的另一时序示例图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在异步时序设计的集成电路中,不同时钟域的时钟信号为异步关系,例如不同时钟域的时钟信号的相位关系不确定,因此如果直接跨时钟域的传输数据,可能无法满足触发器建立和保持时间的要求,从而产生亚稳态情况。
需要说明的是,亚稳态是由于违背了触发器的建立和保持时间而产生的,芯片等集成电路中的任何一个触发器都有特定的建立和保持时间;也就是说,在时钟上升沿前后的时间窗口内,数据输入信号必须保持稳定,如果信号在这段时间窗口内发生了变化,那么输出将是未知的,即称为亚稳态。为便于理解,图1示例性的示出了亚稳态的示例图,图1中D表示输入数据,clk表示时钟,Q表示输出数据,Ts表示触发器的建立时间,Th表示触发器的保持时间,Tm表示时序余量(Timing Margin)。如图1所示,输入数据D在时钟clk的上升沿的时间窗口内并未保持稳定,这导致输出数据Q的状态处于未知情况,从而产生亚稳态情况。
亚稳态将破坏集成电路的稳定性,并且在亚稳态状态下,任何诸如噪声、电源干扰等细微扰动将导致更恶劣的状态不稳定,这时集成电路的传输延时将增大、状态输出错误。基于亚稳态情况对集成电路工作的恶劣影响,在跨时钟域传输数据时,需要消除亚稳态情况。
消除亚稳态情况的一种实现方式是在跨时钟域传输数据时进行同步处理。比如采用异步FIFO(First Input First Output,先进先出)数据缓存器进行同步处理。以数据从写时钟域传输到读时钟域为例,作为一个示例,图2示例性的示出了使用异步FIFO进行同步处理的电路示例图,如图2所示,异步FIFO采用至少两级同步器(例如2至4级的同步器),将使能信号从写时钟域同步到读时钟域,从而消除了亚稳态情况,保证了在写时钟域和读时钟域之间传输数据时的时序正确性。具体来说,写时钟域的写使能信号wptr_en通过至少两级的同步器,与读时钟域的读使能信号rptr_en相同步,从而消除了亚稳态情况,保障了在写时钟域和读时钟域之间传输数据的时序正确性。其中,写使能信号wptr_en为写时钟域的写指针wptr对应的使能信号,wrclk表示写时钟域的写时钟,读使能信号rptr_en为读时钟域的读指针rptr对应的使能信号,rdclk表示读时钟域的读时钟。
异步FIFO方式虽然能在跨时钟域传输数据时消除亚稳态情况,但是异步FIFO方式存在较大的数据传输延迟(Latency);具体来说,异步FIFO方式为了消除亚稳态情况,需要使用多级的同步器(例如两级到四级的同步器),这导致数据传输的延迟会基于使用的同步器级数相应增加。比如,异步FIFO方式使用两级到四级的同步器,则跨时钟域的数据传输延迟将相应增加两到四个时钟周期。在一个示例中,图3示例性的示出了异步FIFO的时序示例图,可进行参照,由图3可以看出,写指针wptr写数据和读指针rptr读取数据之间存在延迟,该延迟的时钟周期数与使用的同步器级数相应。
基于此,本申请实施例提供改进的跨时钟域的数据传输方案,以在消除亚稳态情况的基础上,降低跨时钟域的数据传输延迟,实现无亚稳态情况下低延迟的跨时钟域传输数据。
在一些实施例中,本申请实施例可将传输数据的两个不同时钟域称为第一时钟域和第二时钟域,并且数据由第一时钟域传输至第二时钟域,以进行跨时钟域的数据传输。在第一时钟域和第二时钟域之间进行数据传输时,为消除亚稳态情况并降低数据传输延迟,本申请实施例可对芯片等集成电路的设计进行改进,在集成电路中设置校准(Calibration)电路。该校准电路可基于第一时钟域的第一时钟和第二时钟域的第二时钟,产生对第一时钟域和第二时钟域之间传输的数据进行桥接的桥接时钟,从而通过桥接时钟的数据桥接,将第一时钟和第二时钟进行数据传输处理的信号沿进行锁定,实现在第一时钟域和第二时钟域之间传输数据时的同步处理,从而消除亚稳态情况;同时,在产生桥接时钟时,可设置桥接时钟的相位介于第一时钟和第二时钟的相位之间,从而使得第一时钟和第二时钟进行数据传输处理的信号沿锁定在一定的周期间隔内,实现在第一时钟域和第二时钟域之间传输数据时,降低数据传输延迟的目的。
基于上述思路,作为可选实现,图4示例性的示出了本申请实施例提供的跨时钟域的数据传输方法的可选流程图,该方法流程可由校准电路执行实现,如图4所示,该方法流程可以包括如下步骤。
在步骤S410中,接入第一时钟域的第一时钟以及第二时钟域的第二时钟。
在本申请实施例中,第一时钟域和第二时钟域可以是进行数据传输的两个时钟域,数据在第一时钟域和第二时钟域之间进行跨时钟域的传输。第一时钟可以为第一时钟域对应的时钟,第二时钟可以为第二时钟域对应的时钟,第一时钟和第二时钟为异步关系。
在一些实施例中,数据可以是在写时钟域和读时钟域之间进行跨时钟域的传输,相应的,第一时钟域可以为写时钟域、第一时钟可以为写时钟,第二时钟域可以为读时钟域、第二时钟可以为读时钟。当然,本申请实施例所指的第一时钟域和第二时钟域也可以是任意两个传输数据的异步时钟所对应的时钟域,而不限于上述说明。
当数据在时钟为异步关系的第一时钟域和第二时钟域之间进行传输时,可以使用本申请实施例提供的方案,消除亚稳态情况并降低数据跨时钟域的传输延迟。此时,本申请实施例可接入第一时钟域对应的第一时钟,以及第二时钟域对应的第二时钟。
在一些实施例中,芯片等集成电路中的时钟可由时钟生成电路产生,并作用于电路中的区域,相应的,集成电路中的第一时钟生成电路可产生第一时钟并作用于第一时钟域,第二时钟生成电路可产生第二时钟并作用于第二时钟域。基于此,作为接入第一时钟和第二时钟的一种可选实现,校准电路可从第一时钟生成电路接入第一时钟以及从第二时钟生成电路接入第二时钟。
在步骤S411中,根据所述第一时钟和所述第二时钟,确定桥接时钟;其中,所述桥接时钟由所述第一时钟和第二时钟经过校准得到,所述桥接时钟的相位介于第一时钟和第二时钟的相位之间。
在步骤S412中,使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使得所述数据在第一时钟的第一信号沿进行第一传输处理,并锁定在所述第二时钟的第二信号沿进行第二传输处理。
在接入第一时钟和第二时钟后,区别于通过多级同步器来消除亚稳态的方式,本申请实施例可通过对接入的第一时钟和第二时钟进行校准,来得到桥接时钟,并且桥接时钟的相位介于第一时钟和第二时钟的相位之间;从而通过桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,而不是通过多级同步器来进行同步,进而使得数据在第一时钟域和第二时钟域进行传输处理时,能够在锁定第一时钟和第二时钟的信号沿的情况下,实现跨时钟域的数据传输。
作为可选实现,通过桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,则数据在第一时钟的第一信号沿进行第一传输处理时,能够锁定在第二时钟的第二信号沿进行第二传输处理,从而通过锁定第一时钟和第二时钟进行数据传输处理的信号沿,实现数据在第一时钟域和第二时钟域之间传输时的同步处理,以消除亚稳态情况。同时,桥接时钟基于第一时钟和第二时钟校准得到,并且桥接时钟的相位介于第一时钟和第二时钟的相位之间,因此本申请实施例可使得对数据进行第一传输处理和第二传输处理的第一信号沿与第二信号沿锁定在一定的周期间隔内,例如,锁定的周期间隔不大于设定的时钟周期(比如半个或一个时钟周期),从而达到在第一时钟域和第二时钟域之间进行数据传输时,降低数据传输延迟的效果。
需要说明的是,当数据在第一时钟域和第二时钟域之间进行传输时,第一传输处理可以视为数据在第一时钟域所进行的传输处理,第二传输处理可以视为数据在第二时钟域所进行的传输处理。例如,在第一时钟域为写时钟域,第二时钟域为读时钟域时,基于数据在写时钟域和读时钟域之间进行传输,则第一传输处理可以为写数据,第二传输处理可以为读取数据。
信号沿对应时钟信号的电平状态发生变化的情况,例如,时钟信号由上升沿开始上升电平,由下降沿开始下降电平。数据在第一时钟进行第一传输处理的信号沿可称为第一信号沿,数据在第二时钟进行第二传输处理的信号沿可称为第二信号沿,第一信号沿和第二信号沿可以为相反的信号沿,例如第一信号沿为上升沿,第二信号沿为下降沿。当数据在第一时钟的第一信号沿进行第一传输处理后,通过本申请实施例的校准电路提供的桥接时钟对数据进行桥接,则数据可锁定在第二时钟的第二信号沿进行第二传输处理,从而达到第一时钟和第二时钟对数据进行传输处理的信号沿被锁定的状态,达到第一时钟域和第二时钟域之间传输数据时的同步,并且数据传输延迟可基于桥接时钟的具体相位设置进行可控的降低。
在图4方法流程的原理下,图5A示例性的示出了本申请实施例提供的跨时钟域的数据传输系统的一种示例图,如图5A所示,该系统可以包括:第一功能模块510、第二功能模块520和校准电路530。
第一功能模块510可以视为是第一时钟域中的功能模块,当数据在第一时钟域和第二时钟域之间进行传输时,第一功能模块可在第一时钟的作用下对数据进行第一传输处理。例如,当数据在写时钟域和读时钟域之间进行传输时,第一功能模块可在写时钟的作用下写数据。
第二功能模块520可以视为是第二时钟域中的功能模块,第二功能模块可在第二时钟的作用下对数据进行第二传输处理。例如,第二功能模块可在读时钟的作用下读取数据。
校准电路530为本申请实施例设置的用于在跨时钟域传输数据时实现同步处理并降低数据传输延迟的电路。在本申请实施例中,校准电路530可接入第一时钟域的第一时钟,以及第二时钟域的第二时钟;根据所述第一时钟和所述第二时钟,确定桥接时钟,其中,所述桥接时钟由所述第一时钟和第二时钟经过校准得到,所述桥接时钟的相位介于第一时钟和第二时钟的相位之间;从而使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,使第一功能模块在第一时钟的第一信号沿对数据进行第一传输处理,并且第二功能模块锁定在第二时钟的第二信号沿对数据进行第二传输处理,进而实现数据在第一时钟域和第二时钟域之间进行传输时,消除亚稳态并降低数据传输延迟的效果。
作为一个示例,以数据在写时钟域和读时钟域之间进行传输为例,图5B示例性的示出了本申请实施例提供的跨时钟域的数据传输系统的另一示例图,如图5B所示,数据从第一触发器541(第一触发器可以视为第一功能模块的一种示例)传输至第二触发器542(第二触发器可以视为第二功能模块的一种示例),并且经过第三触发器543;其中,第一触发器541位于写时钟域,第二触发器542位于读时钟域。
在本申请实施例中,校准电路530可接入写时钟wrclk以及读时钟rdclk,并且通过校准写时钟wrclk以及读时钟rdclk,产生相位介于写时钟wrclk以及读时钟rdclk之间的桥接时钟bridge clock;桥接时钟bridge clock可作用于第一触发器541与第二触发器542之间的第三触发器543,从而在数据经过第三触发器543时对数据进行桥接,使得第一触发器541在写时钟的第一信号沿(例如下降沿)进行写数据时,第二触发器542锁定在读时钟的第二信号沿(例如上升沿)进行读取数据,实现数据在写时钟域和读时钟域之间进行传输时,消除亚稳态并降低数据传输延迟的效果。
作为校准电路产生桥接时钟的一种可选实现,校准电路在接入第一时钟和第二时钟后,可尝试使用不同的相位延迟大小,对第二时钟进行相位延迟处理,直至第一时钟与相位延迟后的第二时钟的相位相对齐,从而在第一时钟与相位延迟后的第二时钟同步的情况下,产生用于对传输过程中的数据进行桥接的桥接时钟。作为可选实现,图6示例性的示出了本申请实施例提供的确定桥接时钟的可选方法流程图,该方法流程可由校准电路执行实现,如图6所示,该方法流程可以包括如下步骤。
在步骤S610中,接入第一时钟和第二时钟。
在步骤S611中,根据相位延迟大小,对第二时钟进行多次迭代的相位延迟处理,得到相位延迟后的第二时钟。
在接入第一时钟和第二时钟后,校准电路可将第一时钟与相位延迟后的第二时钟的相位相对齐作为目标,基于指定的相位延迟大小,对第二时钟进行多次迭代的相位延迟处理。本申请实施例所指的多次迭代的相位延迟处理可以理解为是,连续对第二时钟进行多次相位延迟处理,并且上一次相位延迟处理的结果作为下一次相位延迟处理的输入。以对第二时钟进行两次迭代的相位延迟处理为例,则本申请实施例可根据指定的相位延迟大小,对第二时钟进行第一次的相位延迟处理,然后再根据指定的相位延迟大小,对第一次相位延迟后的第二时钟进行第二次的相位延迟处理,从而得到相位延迟后的第二时钟。
在步骤S612中,比较第一时钟与相位延迟后的第二时钟的相位是否对齐,若否,执行步骤S613,若是,执行步骤S614。
在对接入的第二时钟进行多次迭代的相位延迟处理后,本申请实施例可比较第一时钟与相位延迟后的第二时钟的相位关系,从而判断第一时钟与相位延迟后的第二时钟的相位是否相对齐。作为可选实现,第一时钟与相位延迟后的第二时钟的相位相对齐可以视为是,第一时钟与相位延迟后的第二时钟的延时为一个时钟周期。可以理解的是,如果第一时钟与相位延迟后的第二时钟的相位相对齐,则第一时钟与第二时钟的相位关系可确定,两者可实现同步。
在步骤S613中,产生控制信号,以调整相位延迟大小,并返回步骤S611。
如果第一时钟与相位延迟后的第二时钟的相位不对齐,则本申请实施例需调整相位延迟大小,并再次对第二时钟进行多次迭代的相位延迟处理;此时,本申请实施例可产生控制调整所述相位延迟大小的控制信号,以对相位延迟大小进行调整并返回到步骤S611,从而以调整的相位延迟大小对第二时钟再次进行多次迭代的相位延迟处理,然后再比较第一时钟与相位延迟后的第二时钟的相位是否相对齐;通过不断的重复上述步骤,以不断调整的相位延迟大小,来不断的比较第一时钟与相位延迟后的第二时钟的相位关系,直至第一时钟与相位延迟后的第二时钟的相位相对齐。
在一些实施例中,基于控制信号调整相位延迟大小的方式可以是增大相位延迟大小,或者减小相位延迟大小。比如,在当前相位延迟大小的基础上,以一定的数值,递增或者递减相位延迟大小。作为可选实现,本申请实施例所产生的控制信号可以是用于减小相位延迟大小的递减控制信号,也可能是用于增大相位延迟大小的递增控制信号。比如,在相位延迟后的第二时钟超前于第一时钟时,本申请实施例产生递增控制信号,以增大相位延迟大小;在相位延迟后的第二时钟滞后于第一时钟时,本申请实施例可产生递减控制信号,以减小相位延迟大小。
在步骤S614中,将所述多次迭代的相位延迟处理中产生的过程时钟,确定为所述桥接时钟。
如果第一时钟与相位延迟后的第二时钟的相位相对齐,则第二时钟的相位延迟调整完成,本申请实施例可将对应的多次迭代的相位延迟处理中产生的过程时钟,确定为所述桥接时钟。作为可选实现,本申请实施例可将所述多次迭代的相位延迟处理中产生的中间时钟,确定为所述桥接时钟。作为一个示例,假设当前对第二时钟进行n次迭代的相位延迟处理,且相位延迟后的第二时钟与第一时钟的相位相对齐,则本申请实施例可将当前n次迭代的相位延迟处理中产生的中间时钟,确定为桥接时钟。例如,该n次迭代的相位延迟处理中,第n/2次相位延迟处理产生的时钟,确定为桥接时钟。
在进一步的示例中,假设对第二时钟进行两次迭代的相位延迟处理,并且相位延迟后的第二时钟与第一时钟的相位相对齐,则第一次相位延迟处理所产生的时钟,可确定为桥接时钟。
需要说明的是,在第一时钟与相位延迟后的第二时钟的相位相对齐的情况下,选取对应的多次迭代的相位延迟处理中产生的中间时钟作为桥接时钟,仅是本申请实施例基于第一时钟和第二时钟校准得到桥接时钟,并且使得桥接时钟的相位介于第一时钟和第二时钟之间的可选实现方式。本申请实施例也可选择多次迭代的相位延迟处理中的非中间时钟作为桥接时钟,例如,在多次迭代的相位延迟处理中可能产生多个过程时钟,本申请实施例可根据实际需要选择该多个过程时钟中的一个时钟,作为桥接时钟。比如,基于数据在第一时钟和第二时钟进行传输处理需锁定的信号沿的需求,选择该多个过程时钟中的一个时钟,作为桥接时钟。
本申请实施例通过对第二时钟进行多次迭代的相位延迟处理,当相位延迟后的第二时钟与第一时钟的相位实现对齐时,本申请实施例可从多次迭代的相位延迟处理产生的过程时钟中选取桥接时钟,使得桥接时钟的相位介于第一时钟和第二时钟的相位之间。比如,桥接时钟的第一信号沿介于第一时钟的第一信号沿和第二时钟的第二信号沿之间。从而通过桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,则可使得数据在经过桥接时钟的桥接后,能够锁定数据在第一时钟的第一信号沿进行第一传输处理,并且锁定数据在第二时钟的第二信号沿进行第二传输处理,同时该第一信号沿与第二信号沿的周期间隔不大于一个时钟周期,实现在无亚稳态情况下低延迟的跨时钟域传输数据。
进一步的,如果选取多次迭代的相位延迟处理中产生的中间时钟,作为桥接时钟时,则桥接时钟的相位可以是第一时钟与第二时钟的相位之和的一半,即桥接时钟的相位=(rdclk的相位+wrclk的相位)/2;基于桥接时钟的相位为第一时钟和第二时钟的相位之和的一半,则通过该桥接时钟对跨时钟域传输的数据进行桥接,则数据在第一时钟和第二时钟进行传输处理所锁定的第一信号沿和第二信号沿之间的周期间隔,可不大于半个时钟周期。
基于图6所示方法流程的原理,图7A示例性的示出了本申请实施例提供的校准电路的一种示例图。如图7A所示,该校准电路可以包括:相位延迟电路710、鉴相器(phasedetect)720、数字控制环路滤波器(digital loop filter)730。
其中,相位延迟电路710可以根据相位延迟大小,对接入校准电路的第二时钟进行多次迭代的相位延迟处理,得到相位延迟后的第二时钟。例如,以第二时钟为读时钟rdclk为例,相位延迟电路710可对读时钟进行多次迭代的相位延迟处理,得到相位延迟后的读时钟rdclk_d。
在一些实施例中,相位延迟电路710可以由多个数字控制延迟电路(controlleddelay line)级联得到。作为可选实现,图7B示例性的示出了本申请实施例提供的校准电路的另一示例图。结合图7A和图7B所示,在图7B所示的校准电路中,相位延迟电路710可包括级联的多个数字控制延迟电路711。
该级联的多个数字控制延迟电路中,一个数字控制延迟电路用于根据指定的相位延迟大小,对输入的时钟进行一次相位延迟处理;并且下一个数字控制延迟电路基于上一个数字控制延迟电路的输出,进行相位延迟处理;从而通过级联的多个数字控制延迟电路,本申请实施例可实现对接入的第二时钟进行多次迭代的相位延迟处理。
在本申请实施例中,相位延迟电路710每次进行相位延迟处理的相位延迟大小(例如每个数字控制延迟电路的相位延迟大小)可以相同也可以不同。作为可选实现,该相位延迟大小可以由数字控制环路滤波器730调整,并且数字控制环路滤波器730调整的相位延迟大小,受鉴相器720的控制。
在本申请实施例中,相位延迟电路710得到的相位延迟后的第二时钟(例如相位延迟后的读时钟rdclk_d)可接入鉴相器720;同时,鉴相器可接入第一时钟域的第一时钟(例如写时钟域的写时钟wrclk),从而鉴相器可比较第一时钟与相位延迟后的第二时钟的相位关系(例如比对写时钟wrclk以及相位延迟后的读时钟rdclk_d的相位关系);
如果鉴相器比较第一时钟与相位延迟后的第二时钟的相位不对齐,则鉴相器可产生控制数字控制环路滤波器730的控制信号,从而由数字控制环路滤波器基于控制信号,调整相位延迟电路的相位延迟大小。
在一些实施例中,鉴相器可基于第一时钟域与相位延迟后的第二时钟的相位关系,输出递增(inc)控制信号或者递减(dec)控制信号,以控制数字控制环路滤波器调整增大或者减小相位延迟电路的相位延迟大小;例如,数字控制环路滤波器可基于递增控制信号,增大相位延迟电路的相位延迟大小,数字控制环路滤波器可基于递减控制信号,减小相位延迟电路的相位延迟大小。
作为可选实现,鉴相器可在比较相位延迟后的第二时钟的相位,超前于第一时钟时(例如相位延迟后的读时钟的相位,超前于写时钟),输出递增控制信号,以控制数字控制环路滤波器增大相位延迟电路的相位延迟大小(例如增大相位延迟电路中每个数字控制延迟电路的相位延迟大小);鉴相器可在比较相位延迟后的第二时钟的相位,滞后于写时钟时(例如相位延迟后的读时钟的相位,滞后于写时钟),输出递减控制信号,以控制数字控制环路滤波器减小相位延迟电路的相位延迟大小(例如减小相位延迟电路中每个数字控制延迟电路的相位延迟大小)。
在一些实施例中,如果鉴相器比较相位延迟后的第二时钟的相位与第一时钟的相位相对齐,则可控制停止对第二时钟进行相位延迟处理,以将相位延迟电路在多次迭代的相位延迟处理中产生的过程时钟(例如中间时钟),作为桥接时钟。
校准电路可通过上述结构,不断的调整相位延迟电路的相位延迟大小,直至鉴相器比较相位延迟后的第二时钟的相位与第一时钟相对齐时,本申请实施例可停止对第二时钟的相位延迟处理;此时,相位延迟电路在多次的相位延迟处理中产生的过程时钟(例如中间时钟)可确定为桥接时钟,用于对第一时钟域和第二时钟域之间传输的数据进行桥接。
在一个示例中,以写时钟域向读时钟域传输数据为例,本申请实施例可通过两个级联的数字控制延迟电路,对接入校准电路的读时钟进行相位延迟处理。如果鉴相器比较相位延迟后的读时钟与写时钟的相位不对齐,则鉴相器可基于相位延迟后的读时钟与写时钟的相位超前或者滞后关系,控制数字控制环路滤波器递增或者递减每个数字控制延迟电路的相位延迟大小,直至两个级联的数字控制延迟电路处理后的读时钟与写时钟的相位相对齐。当相位延迟后的读时钟与写时钟的相位相对齐时,本申请实施例可将第一个数字控制延迟电路产生的时钟作为桥接时钟,用于桥接写时钟域传输至读时钟域的数据;此时,桥接时钟的相位为写时钟与读时钟的相位之和的一半,并且桥接时钟的第一信号沿(例如上升沿)介于写时钟的第一信号沿和读时钟的第一信号沿之间,读时钟的第一信号沿通过桥接时钟与写时钟相锁定。比如,读时钟的上升沿锁定在写时钟的下降沿,则在跨写时钟域和读时钟域传输数据时,数据传输延迟可以小于半个时钟周期;具体来说,在读时钟和写时钟的频率相同时,在通过桥接时钟的数据桥接后,读时钟锁定在写时钟的下降沿,则数据在写时钟的上升沿写入,在读时钟的下降沿读出,可使得数据在跨写时钟域和读时钟域传输时,数据传输延迟小于或等于半个时钟周期。
为便于理解本申请实施例提供的方案具有在消除亚稳态情况下,降低数据传输延迟的效果,以写时钟域向读时钟域传输数据为例,图8A示例性的示出了本申请实施例提供的时序示例图,可进行参照。如图8A所示,读时钟rdclk在经过校准电路的多次相位延迟处理后,相位延迟后的读时钟rdclk_d与写时钟wrclk的相位相对齐,并且用于桥接数据的桥接时钟bridge clock的相位介于读时钟和写时钟之间,比如桥接时钟的上升沿介于读时钟的上升沿和写时钟的上升沿之间,桥接时钟的相位为读时钟和写时钟的相位之和的一半。
在通过桥接时钟桥接写时钟域传输至读时钟域的数据的情况下,图8B示例性的示出了本申请实施例提供的另一时序示例图,如图8B所示,在经过桥接时钟的数据桥接后,数据在写时钟wrclk的上升沿写入,并且在间隔小于半个时钟周期的读时钟rdclk的下降沿读取,从而使得跨时钟域传输数据的延时能够控制在半个时钟周期内。
本申请实施例提供的跨时钟域的数据传输方案,能够在第一时钟域和第二时钟域之间传输数据时,基于第一时钟域的第一时钟和第二时钟域的第二时钟,产生对第一时钟域和第二时钟域之间传输的数据进行桥接的桥接时钟,并且桥接时钟的相位介于第一时钟和第二时钟的相位之间;从而通过桥接时钟的数据桥接,将第一时钟和第二时钟进行数据传输处理的信号沿进行锁定,实现在第一时钟域和第二时钟域之间传输数据时的同步处理,以消除亚稳态情况,并且使得第一时钟和第二时钟进行数据传输处理的信号沿锁定在一定的周期间隔内,实现降低数据传输延迟的目的。可见,本申请实施例能够在消除亚稳态的情况下,实现低延迟的跨时钟域传输数据。
在进一步的一些实施例中,本申请实施例还提供一种芯片,该芯片可以包括本申请实施例提供的跨时钟域的数据传输系统。
在进一步的一些实施例中,本申请实施例还提供一种电子设备,例如服务器设备或者终端设备,该电子设备可以包括本申请实施例上述提供的芯片。
上文描述了本申请实施例提供的多个实施例方案,各实施例方案介绍的各可选方式可在不冲突的情况下相互结合、交叉引用,从而延伸出多种可能的实施例方案,这些均可认为是本申请实施例披露、公开的实施例方案。
虽然本申请实施例披露如上,但本申请并非限定于此。任何本领域技术人员,在不脱离本申请的精神和范围内,均可作各种更动与修改,因此本申请的保护范围应当以权利要求所限定的范围为准。

Claims (18)

1.一种跨时钟域的数据传输方法,其特征在于,包括:
接入第一时钟域的第一时钟以及第二时钟域的第二时钟;
根据所述第一时钟和所述第二时钟,对所述第二时钟进行相位延迟处理,直至第一时钟与相位延迟后的第二时钟同步的情况下,将相位延迟处理中产生的过程时钟确定为桥接时钟;其中,所述桥接时钟由所述第一时钟和第二时钟经过校准得到,所述桥接时钟的相位介于第一时钟和第二时钟的相位之间;
使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使所述数据在第一时钟的第一信号沿进行第一传输处理,并锁定在所述第二时钟的第二信号沿进行第二传输处理;
其中,对所述数据进行第一传输处理和第二传输处理的第一信号沿与第二信号沿之间的周期间隔,不大于设定的时钟周期。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一时钟和所述第二时钟,对所述第二时钟进行相位延迟处理,直至第一时钟与相位延迟后的第二时钟同步的情况下,将相位延迟处理中产生的过程时钟确定为桥接时钟包括:
根据相位延迟大小,对第二时钟进行多次迭代的相位延迟处理,得到相位延迟后的第二时钟;
比较第一时钟与相位延迟后的第二时钟的相位关系;
若第一时钟与相位延迟后的第二时钟的相位相对齐,将所述多次迭代的相位延迟处理中产生的过程时钟,确定为所述桥接时钟。
3.根据权利要求2所述的方法,其特征在于,还包括:
若第一时钟与相位延迟后的第二时钟的相位不对齐,产生控制信号,以调整相位延迟大小,并根据调整后的相位延迟大小,对第二时钟进行多次迭代的相位延迟处理,直至第一时钟与相位延迟后的第二时钟的相位相对齐。
4.根据权利要求3所述的方法,其特征在于,所述若第一时钟与相位延迟后的第二时钟的相位不对齐,产生控制信号,以调整相位延迟大小包括:
若相位延迟后的第二时钟超前于第一时钟,产生递增控制信号,以增大相位延迟大小;
若相位延迟后的第二时钟滞后于第一时钟,产生递减控制信号,以减小相位延迟大小。
5.根据权利要求2所述的方法,其特征在于,所述桥接时钟的第一信号沿介于第一时钟的第一信号沿和第二时钟的第一信号沿之间。
6.根据权利要求2所述的方法,其特征在于,所述过程时钟为所述多次迭代的相位延迟处理中产生的中间时钟;所述桥接时钟的相位为第一时钟和第二时钟的相位之和的一半。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一时钟为写时钟,所述第二时钟为读时钟,所述第一信号沿为上升沿,所述第二信号沿为下降沿。
8.根据权利要求7所述的方法,其特征在于,所述使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使得所述数据在第一时钟的第一信号沿进行第一传输处理,并锁定在所述第二时钟的第二信号沿进行第二传输处理包括:使用所述桥接时钟对写时钟域和读时钟域之间传输的数据进行桥接,以使所述数据在写时钟的上升沿写入,并锁定在读时钟的下降沿读取;
其中,写时钟写入所述数据的上升沿与读时钟读取所述数据的下降沿之间的周期间隔,不大于半个时钟周期。
9.一种跨时钟域的数据传输系统,其特征在于,包括:第一功能模块、第二功能模块和校准电路;其中,所述第一功能模块用于在第一时钟域的第一时钟的作用下,对数据进行第一传输处理;所述第二功能模块用于在第二时钟域的第二时钟的作用下,对所述数据进行第二传输处理;
所述校准电路,用于接入第一时钟和第二时钟;根据所述第一时钟和所述第二时钟,对所述第二时钟进行相位延迟处理,直至第一时钟与相位延迟后的第二时钟同步的情况下,将相位延迟处理中产生的过程时钟确定为桥接时钟,其中,所述桥接时钟由所述第一时钟和第二时钟经过校准得到,所述桥接时钟的相位介于第一时钟和第二时钟的相位之间;使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使所述第一功能模块在第一时钟的第一信号沿对所述数据进行第一传输处理,并且所述第二功能模块锁定在第二时钟的第二信号沿对所述数据进行第二传输处理;
其中,对所述数据进行第一传输处理和第二传输处理的第一信号沿与第二信号沿之间的周期间隔,不大于设定的时钟周期。
10.根据权利要求9所述的系统,其特征在于,所述校准电路包括:相位延迟电路和鉴相器;
所述相位延迟电路,用于根据相位延迟大小,对接入校准电路的第二时钟进行多次迭代的相位延迟处理,得到相位延迟后的第二时钟;
所述鉴相器,用于比较第一时钟与相位延迟后的第二时钟的相位关系;如果第一时钟与相位延迟后的第二时钟的相位相对齐,则控制停止对所述第二时钟进行相位延迟处理,以将所述相位延迟电路在所述多次迭代的相位延迟处理中,产生的过程时钟作为桥接时钟。
11.根据权利要求10所述的系统,其特征在于,所述校准电路还包括:数字控制环路滤波器;
所述鉴相器,还用于如果第一时钟与相位延迟后的第二时钟的相位不对齐,产生控制所述数字控制环路滤波器的控制信号;
所述数字控制环路滤波器,用于根据鉴相器产生的控制信号,调整所述相位延迟电路的相位延迟大小。
12.根据权利要求11所述的系统,其特征在于,所述鉴相器,用于如果第一时钟与相位延迟后的第二时钟的相位不对齐,产生控制所述数字控制环路滤波器的控制信号包括:在比较相位延迟后的第二时钟的相位,超前于写时钟时,输出递增控制信号;在比较相位延迟后的第二时钟的相位,滞后于写时钟时,输出递减控制信号;
所述数字控制环路滤波器,用于根据鉴相器产生的控制信号,调整所述相位延迟电路的相位延迟大小包括:在获取所述递增控制信号时,增大所述相位延迟电路的相位延迟大小;在获取所述递减控制信号时,减小所述相位延迟电路的相位延迟大小。
13.根据权利要求10所述的系统,其特征在于,所述相位延迟电路包括级联的多个数字控制延迟电路;其中,一个数字控制延迟电路,用于根据相位延迟大小,对输入的时钟进行一次相位延迟处理;并且下一个数字控制延迟电路基于上一个数字控制延迟电路的输出,进行相位延迟处理。
14.根据权利要求10所述的系统,其特征在于,所述桥接时钟的第一信号沿介于第一时钟的第一信号沿和第二时钟的第一信号沿之间。
15.根据权利要求10所述的系统,其特征在于,所述过程时钟为所述多次迭代的相位延迟处理中产生的中间时钟;所述桥接时钟的相位为第一时钟和第二时钟的相位之和的一半。
16.根据权利要求9-15任一项所述的系统,其特征在于,所述第一时钟为写时钟,所述第二时钟为读时钟,所述第一信号沿为上升沿,所述第二信号沿为下降沿;
所述校准电路,用于使用所述桥接时钟对第一时钟域和第二时钟域之间传输的数据进行桥接,以使所述第一功能模块在第一时钟的第一信号沿对所述数据进行第一传输处理,并且所述第二功能模块锁定在第二时钟的第二信号沿对所述数据进行第二传输处理包括:
使用所述桥接时钟对写时钟域和读时钟域之间传输的数据进行桥接,以使所述第一功能模块在写时钟的上升沿对所述数据进行写入,并且所述第二功能模块锁定在读时钟的下降沿对所述数据进行读取;
其中,所述写时钟写入所述数据的上升沿与读时钟读取所述数据的下降沿之间的周期间隔,不大于半个时钟周期。
17.一种芯片,其特征在于,包括如权利要求9-16任一项所述的跨时钟域的数据传输系统。
18.一种电子设备,其特征在于,包括如权利要求17所述的芯片。
CN202210242154.6A 2022-03-11 2022-03-11 一种跨时钟域的数据传输方法、系统、芯片及电子设备 Active CN116049061B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210242154.6A CN116049061B (zh) 2022-03-11 2022-03-11 一种跨时钟域的数据传输方法、系统、芯片及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210242154.6A CN116049061B (zh) 2022-03-11 2022-03-11 一种跨时钟域的数据传输方法、系统、芯片及电子设备

Publications (2)

Publication Number Publication Date
CN116049061A CN116049061A (zh) 2023-05-02
CN116049061B true CN116049061B (zh) 2024-01-19

Family

ID=86116931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210242154.6A Active CN116049061B (zh) 2022-03-11 2022-03-11 一种跨时钟域的数据传输方法、系统、芯片及电子设备

Country Status (1)

Country Link
CN (1) CN116049061B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116775546B (zh) * 2023-06-30 2024-08-30 海光信息技术股份有限公司 用于芯粒互联接口的数据传输方法及芯粒互联接口
CN116795172B (zh) * 2023-08-29 2023-12-12 芯耀辉科技有限公司 一种用于高速数字传输的跨时钟域处理方法、介质及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543437A (zh) * 2018-05-29 2019-12-06 赛灵思公司 跨时钟域的延迟同步
US11048289B1 (en) * 2020-01-10 2021-06-29 Rockwell Collins, Inc. Monitoring delay across clock domains using constant phase shift
CN113642285A (zh) * 2020-05-11 2021-11-12 美商新思科技有限公司 确定和验证时钟域交叉中的亚稳态

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543437A (zh) * 2018-05-29 2019-12-06 赛灵思公司 跨时钟域的延迟同步
US11048289B1 (en) * 2020-01-10 2021-06-29 Rockwell Collins, Inc. Monitoring delay across clock domains using constant phase shift
CN113642285A (zh) * 2020-05-11 2021-11-12 美商新思科技有限公司 确定和验证时钟域交叉中的亚稳态

Also Published As

Publication number Publication date
CN116049061A (zh) 2023-05-02

Similar Documents

Publication Publication Date Title
CN116049061B (zh) 一种跨时钟域的数据传输方法、系统、芯片及电子设备
US7239681B2 (en) System and method for maintaining a stable synchronization state in a programmable clock synchronizer
US7702945B2 (en) Semiconductor device and communication control method
US20060036915A1 (en) Deskew circuit and disk array control device using the deskew circuit, and deskew method
JP2001320273A (ja) 遅延同期ループ回路及び遅延同期方法
US20100322365A1 (en) System and method for synchronizing multi-clock domains
KR101699787B1 (ko) 지연동기루프 회로, 이를 포함하는 반도체 장치 및 메모리 시스템
CN109831206B (zh) 延迟锁定环及延迟锁定方法
US7242737B2 (en) System and method for data phase realignment
CA2338320C (en) Integrated data clock extractor
US7283601B2 (en) Timing signal generating system and receiving circuit for transmitting signals at high speed with less circuitry
US8860475B1 (en) Techniques for adjusting phases of clock signals
US9584305B2 (en) Deskew FIFO buffer with simplified initialization
JP4448076B2 (ja) データ送受信回路のタイミング調整回路、lsi及びデータ送受信システム
KR100419795B1 (ko) 위상 차 확대기
JPH0358263A (ja) データ転送同期装置及び方法
US7092471B2 (en) Digital phase synchronization circuit
JP2848800B2 (ja) シリアルデジタル信号の標本化方法
US6774823B1 (en) Clock synchronization logic
US6636978B1 (en) Rescheduling data input and output commands for bus synchronization by using digital latency shift detection
US6628155B2 (en) Internal clock generating circuit of semiconductor memory device and method thereof
JPH03171945A (ja) ディジタルシステム
US20240329924A1 (en) Deterministic reset mechanism for asynchronous gearbox fifos for predictable latency
JP2024122007A (ja) データ転送装置
CN118677453A (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
GR01 Patent grant
GR01 Patent grant