CN114637369A - 数据延迟补偿器电路 - Google Patents

数据延迟补偿器电路 Download PDF

Info

Publication number
CN114637369A
CN114637369A CN202111240198.7A CN202111240198A CN114637369A CN 114637369 A CN114637369 A CN 114637369A CN 202111240198 A CN202111240198 A CN 202111240198A CN 114637369 A CN114637369 A CN 114637369A
Authority
CN
China
Prior art keywords
flip
flop
signal
clock signal
data
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
Application number
CN202111240198.7A
Other languages
English (en)
Inventor
H·魏
B·布鲁恩
P·扎瓦尔尼
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.)
Silicon Laboratories Inc
Original Assignee
Silicon Laboratories Inc
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 Silicon Laboratories Inc filed Critical Silicon Laboratories Inc
Publication of CN114637369A publication Critical patent/CN114637369A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/135Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals
    • 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/10Distribution of clock signals, e.g. skew
    • 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/06Clock generators producing several clock signals
    • 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/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

Landscapes

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

Abstract

本公开涉及数据延迟补偿器电路。公开一种用于补偿数据延迟的电路。该电路利用内部时钟信号。该内部时钟信号经过I/O缓存器以变成外部时钟。然后,该外部时钟经过I/O缓存器以创建返回时钟信号。内部时钟信号和返回时钟信号之间的这个差被定义为I/O延迟。在某些实施例中,该I/O延迟可以是多于一个时钟周期,这通常导致同步逻辑的不正确操作。本电路通过用于捕获和同步返回数据的新颖方法而允许N个时钟周期的I/O延迟,其中N大于一。这允许高速微控制器利用较低速度的I/O缓存器来减少干扰,或允许这些微控制器与较慢外部设备对接。

Description

数据延迟补偿器电路
技术领域
本公开描述了用于在接收同步数据时补偿可变延迟的***和方法。
背景技术
半导体元器件(例如微控制器(MCU))通常需要与外部设备(例如用于加载执行命令代码的存储器或I/O设备)通信。由于环境变化例如温度或电源变化,环回(loop back)延迟(I/O的发送延迟加上接收延迟)可能经历大的变化,这可能导致不确定的数据捕获时间。此外,在不同的应用中,由一个I/O缓存器驱动的设备的数量可以不同。这导致大的负载电容变化,这也将导致在环回延迟方面的大的变化。
因此,为了实现可预测的通信,通常采用快速I/O缓存器来发送或接收时钟和数据信号。然而,在一些实施例中,半导体元器件可以包括射频部分。如果要求MCU的射频部分同时运行,则高速I/O信号可能引起干扰,所述干扰降低无线通信质量。
另一方面,如果实施慢I/O缓存器,则射频干扰被减少,但是大的环回延迟将产生。
许多***实施如下***:借此,要发送和接收的数据与内部时钟同步。图1示出用于该功能的典型电路图。
触发器10接收半导体元器件1内部的、要向外发送的数据。触发器10是使用内部时钟信号11来钟控的。该内部时钟信号11可以是任何频率,例如高达100 MHz或更高。触发器10的输出与数据输出I/O缓存器12通信,该数据输出I/O缓存器12用作半导体元器件1的内部和外部之间的接口。数据输出I/O缓存器12的输出被称为DATA_OUT(数据输出)信号。内部时钟信号11也与时钟I/O缓存器13通信以产生外部时钟信号。时钟I/O缓存器13的输出被称为CLOCK(时钟)信号。时钟I/O缓存器13用作收发器,其中,外部时钟信号(CLOCK信号)也是输入,以便创建返回时钟信号14。由于返回时钟信号14是基于外部时钟信号(CLOCK)产生的,因此它包括与CLOCK信号关联的I/O延迟。由外部设备发送的返回数据(DATA_IN(数据输入)信号)基本上与由外部设备50接收的CLOCK信号对准。通常,与其他输出信号例如DATA_OUT信号关联的延迟与外部时钟信号关联的延迟相当。DATA_OUT信号和CLOCK信号可以用作外部设备50的输入。
来自外部设备50的外部数据进入半导体器件1并且经过数据输入I/O缓存器15。数据输入I/O缓存器15的输出被称为返回数据16。注意,数据可以是双向的,使得输入输出I/O缓存器12和数据输入I/O缓存器15可以是单个双向缓存器。
返回数据16是触发器17的输入,该触发器17利用返回时钟信号14作为其时钟。被称为Q返回信号18的触发器17的输出然后用作触发器19的输入。触发器19是使用内部时钟信号11来钟控的。这个触发器19用来使输入数据与内部时钟11同步。这个触发器19的输出被称为Q最终信号20。
然而,这个电路要求小的I/O延迟。具体讲,图2A示出了说明图1中所示的电路的操作的时序图。在该图中,I/O延迟(其为内部时钟信号11和返回时钟信号14之间的时间差)是小的,例如小于1个时钟周期。在该时序图中,假设DATA_IN信号(以及因此返回数据16)与返回时钟信号14的负沿对齐。因此,不管I/O延迟如何,对应于DATA_IN信号的Q返回信号18在返回时钟信号14的随后上升沿上由触发器17输出。这是因为返回数据16与返回时钟信号14同步。由于I/O延迟小于1个周期,Q最终信号20由内部时钟信号11的第三上升沿产生。因此,如图2A中所示,在内部时钟信号11的导致DATA_IN信号产生的上升沿和对应的Q最终信号20之间存在两个时钟周期延迟。
然而,图2B示出大于一个时钟周期的I/O延迟。如前所述,对应于DATA_IN的Q返回信号18在随后的返回时钟信号14上从触发器17输出。然而,由于I/O延迟大于1个周期,因此Q最终信号20由内部时钟信号11的第四上升沿产生。如图2B中所示,在内部时钟信号11的导致DATA_IN信号产生的上升沿与对应的Q最终信号20之间存在三个时钟周期延迟。
换句话说,有效Q最终信号20存在的时间根据I/O延迟而变化。这种不定性是不可接受的,因为它将在更下游产生不正确的处理。
因此,如果存在一种同步接收半导体器件的如下输入的方法和***,将是有利的:所述输入容忍大于一个时钟周期的I/O延迟。此外,如果I/O延迟可以是两个时钟周期或更大,将是有利的。
发明内容
公开一种用于补偿数据延迟的电路。该电路利用内部时钟信号。该内部时钟信号经过I/O缓存器以变成外部时钟。然后,该外部时钟经过I/O缓存器以创建返回时钟信号。内部时钟信号和返回时钟信号之间的这个差被定义为I/O延迟。在某些实施例中,该I/O延迟可以是多于一个时钟周期,这通常导致同步逻辑的不正确操作。本电路通过用于捕获和同步返回数据的新颖方法而允许0与N个时钟周期之间的I/O延迟,其中,N大于一。这允许高速微控制器利用较低速度的I/O缓存器来减少干扰、节省功率/面积预算,或允许这些微控制器与较慢外部设备对接。
根据一个实施例,公开一种用于在半导体器件内使用的数据延迟补偿电路。该数据延迟补偿电路包括:I/O缓存器,用于将来自外部设备的返回数据提供到半导体器件的内部;时钟I/O缓存器电路,用于将内部时钟信号提供到所述半导体器件的外部并且将返回时钟信号提供到所述半导体器件的内部;返回数据捕获级,包括:多个捕获触发器,其使用返回时钟信号来钟控,其中,所述多个是N,其中,每个捕获触发器每N个时钟接收更新的返回数据;返回数据同步级,包括:N个同步触发器,其使用内部时钟信号来钟控,其中,每个同步触发器每N个时钟从对应的捕获触发器接收更新的数据;复用器,用于选择来自所述N个同步触发器中的一个的输出;以及,最终触发器,其使用内部时钟信号来钟控并且接收来自复用器的输出作为输入。在某些实施例中,返回数据捕获级包括捕获选择器电路以唯一地选择N个捕获触发器中的一个,其中,捕获选择器电路由返回时钟信号来钟控。在某些进一步的实施例中,捕获选择器电路包括计数器。在某些进一步的实施例中,捕获选择器电路包括移位寄存器。在一些实施例中,返回数据捕获级包括具有输入、多个输出和一个或多个选择信号的解复用器,其中,解复用器的输入包括返回时钟信号,选择信号包括捕获选择器电路的输出,并且每个输出与相应捕获触发器的时钟输入通信。在一些实施例中,返回数据捕获级包括N个复用器,每个复用器的输出与相应捕获触发器的输入通信,其中,每个复用器在返回数据和相应捕获触发器的输出之间选择。在某些实施例中,返回数据同步级包括同步选择器电路以唯一地选择N个同步触发器中的一个,其中,同步选择器电路由内部时钟信号来钟控。在某些进一步的实施例中,同步选择器电路包括计数器。在某些进一步的实施例中,同步选择器电路包括移位寄存器。在某些实施例中,返回数据同步级包括具有输入、多个输出和一个或多个选择信号的解复用器,其中,解复用器的输入包括内部时钟信号,选择信号包括同步选择器电路的输出,并且每个输出与相应同步触发器的时钟输入通信。在某些实施例中,返回数据捕获级包括N个复用器,每个复用器的输出与相应同步触发器的输入通信,其中,每个复用器在来自对应的捕获触发器的输出和相应同步触发器的输出之间选择。在某些实施例中,内部时钟信号和返回时钟信号之间的时间差被定义为I/O延迟,并且如果I/O延迟小于N个时钟周期,则从内部时钟信号的第一脉冲到来自最终触发器的输出有效所在的时间的时间是确定的。在某些实施例中,半导体器件在双数据速率模式下操作,并且其中,时钟I/O缓存器电路包括时钟I/O缓存器、用于在由时钟I/O缓存器发送之前将内部时钟信号除以二的除2电路、以及用于将来自时钟I/O缓存器的内部输出乘以二以创建返回时钟信号的乘2电路。
根据另一实施例,公开一种用于在半导体器件内使用的数据延迟补偿电路。该数据延迟补偿电路包括:I/O缓存器,用于将来自外部设备的返回数据提供到半导体器件的内部;时钟I/O缓存器电路,用于将内部时钟信号提供到所述半导体器件的外部并且将返回时钟信号提供到所述半导体器件的内部;返回数据捕获级,包括:捕获除2电路,其使用返回时钟信号来钟控以创建切换信号;第一捕获触发器和第二捕获触发器,其使用返回时钟信号来钟控,其中,每个捕获触发器基于切换信号的状态每隔一个时钟接收更新的返回数据;返回数据同步级,包括:同步除2电路,其使用所述内部时钟信号来钟控以创建内部时钟/2信号;第一同步触发器和第二同步触发器,其使用内部时钟信号来钟控,其中,基于内部时钟/2信号的状态,第一同步触发器每隔一个时钟从第一捕获触发器接收更新的数据,并且其中,第二同步触发器每隔一个时钟从第二捕获触发器接收更新的数据;复用器,用于基于所述内部时钟/2信号的状态而选择来自所述第一同步触发器和所述第二同步触发器中的一个的输出;以及,最终触发器,其使用内部时钟信号来钟控并且接收来自复用器的输出作为输入。在某些实施例中,返回数据捕获级包括具有输入、选择信号和两个输出的解复用器,其中,解复用器的输入是返回时钟信号,选择信号是切换信号,并且两个输出中的第一输出与第一捕获触发器的时钟信号通信,并且两个输出中的第二输出与第二捕获触发器的时钟信号通信。在某些实施例中,返回数据同步级包括具有输入、选择信号和两个输出的解复用器,其中,解复用器的输入是内部时钟信号,选择信号是内部时钟/2信号,并且两个输出中的第一输出与第一同步触发器的时钟信号通信,并且两个输出中的第二输出与第二同步触发器的时钟信号通信。在某些实施例中,返回数据捕获级包括:第一复用器,具有两个输入、选择信号和输出,其中,复用器的输入包括返回数据和第一捕获触发器的输出,选择信号是切换信号,并且输出与第一捕获触发器的输入通信;以及,第二复用器,具有两个输入、选择信号和输出,其中,复用器的输入包括返回数据和第二捕获触发器的输出,选择信号是切换信号,并且输出与第二捕获触发器的输入通信。在某些实施例中,返回数据同步级包括:第一复用器,具有两个输入、选择信号和输出,其中,复用器的输入包括第一捕获触发器的输出和第一同步触发器的输出,选择信号是内部时钟/2信号,并且输出与第一同步触发器的输入通信;以及,第二复用器,具有两个输入、选择信号和输出,其中,复用器的输入包括第二捕获触发器的输出和第二同步触发器的输出,选择信号是内部时钟/2信号,并且输出与第二同步触发器的输入通信。在一些实施例中,内部时钟信号和返回时钟信号之间的时间差被定义为I/O延迟,并且如果I/O延迟小于2个时钟周期,则从内部时钟信号的第一脉冲到来自最终触发器的输出有效所在的时间的时间是确定的。在某些实施例中,基于内部时钟信号产生返回时钟,基于返回时钟的沿产生返回数据,并且从内部时钟信号的断言(assertion)到在最终触发器的输出处有效数据的接收的延迟是4个时钟周期。在某些实施例中,半导体器件在双数据速率模式下操作,并且其中,时钟I/O缓存器电路包括时钟I/O缓存器、用于在由时钟I/O缓存器发送之前将内部时钟信号除以二的除2电路、以及用于将来自时钟I/O缓存器的内部输出乘以二以创建返回时钟信号的乘2电路。
附图说明
为了更好地理解本公开,参考附图,在所述附图中相同的元件用相同的数字来引用并且在所述附图中:
图1是根据现有技术的用于接收同步信号的电路;
图2A-2B是与图1的电路关联的针对不同I/O延迟的时序图;
图3是根据一个实施例的用于接收同步信号的电路;
图4A-4B是与图3的电路关联的针对不同I/O延迟的时序图;
图5A-5B示出根据另一实施例的用于接收同步信号的电路;
图6A-6B示出供图3和5A-5B中所示的电路使用的备选(alternate)配置;以及
图7示出用于在双数据速率模式下操作的时钟I/O缓存器电路。
具体实施方式
图3示出了可以用于针对各种I/O延迟提供可预测数据捕获的代表性电路。这个电路可以设置在半导体器件1(例如微控制器)内。在这个公开中,I/O延迟被定义为内部或源时钟与所接收的时钟之间的差。图中所示的电路产生具有I/O延迟的可预测结果,所述I/O延迟可以与源时钟的两个周期一样大。
触发器100接收半导体器件1内部的要向外部发送的数据。使用内部时钟信号101对触发器100进行钟控。该内部时钟信号101可以是任何频率,例如高达100 MHz或更高。触发器100的输出与数据输出I/O缓存器102通信,所述数据输出I/O缓存器102用作半导体器件1的内部和外部之间的接口。数据输出I/O缓存器102的输出被称为DATA_OUT信号。内部时钟信号101也与时钟I/O缓存器103通信以产生外部时钟信号。时钟I/O缓存器103的输出被称为CLOCK信号。时钟I/O缓存器103用作收发器,其中,外部时钟信号(CLOCK)也是输入,以便创建返回时钟信号104。由于返回时钟信号104是基于外部时钟信号(CLOCK)产生的,因此它包括与时钟信号关联的I/O延迟。通常,与其他输出信号例如DATA_OUT关联的延迟与和外部时钟信号关联的延迟相当。DATA_OUT信号和CLOCK信号可以用作外部设备2的输入。
来自外部设备2的外部数据进入半导体器件1并且经过数据输入I/O缓存器105。数据输入I/O缓存器105的输出被称为返回数据106。注意,数据可以是双向的,使得数据输出I/O缓存器102和数据输入I/O缓存器105可以是单个双向缓存器。
返回时钟信号104用作除2电路(divide-by-2 circuit)108的输入。除2电路108可以是触发器,其中,触发器的输入是触发器的Qbar输出。当然,除2电路108也可以以其他方式来实施。除2电路108的输出被称为Toggle(切换)信号107。
类似地,内部时钟信号101用作除2电路110的输入。除2电路110可以是触发器,其中,触发器的输入是触发器的Qbar输出。当然,除2电路110也可以以其他方式来实施。除2电路110的输出被称为内部时钟/2信号109。
内部时钟/2信号109和切换信号107之间的相位是确定的。在一个实施例中,内部时钟/2信号109由内部时钟信号101的特定上升沿断言(assert)。内部时钟信号101的相同上升沿用于产生返回时钟信号104的上升沿。返回时钟信号104的该上升沿然后用于断言切换信号107。换句话说,内部时钟信号101的同一上升沿用于直接断言内部时钟/2信号109以及间接断言切换信号107。
在该实施例中,存在两个捕获触发器120、125,所述两个捕获触发器120、125用于将输入数据(即返回数据106)与返回时钟信号104同步。这两个捕获触发器120、125和除2电路108形成第一级,所述第一级可以被称为返回数据捕获级170。具体讲,切换信号107用于选择两个捕获触发器120、125中的哪个针对返回时钟信号104的每个上升沿接收新数据。两个捕获触发器120、125的输出分别被称为Qa信号121和Qb信号126。
在一个实施例中,切换信号107用作去往复用器123的选择信号,该选择信号使返回时钟信号104与两个捕获触发器120、125的时钟输入中的正好一个通信。在该实施例中,每个捕获触发器120、125的时钟输入以等于切换信号107频率的频率被断言。
在图6A中所示的另一实施例中,返回时钟信号104与两个捕获触发器120、125的时钟输入通信。在该实施例中,切换信号107用于选择复用器124、128的两个输入中的哪个与两个捕获触发器120、125中的每个的D输入通信。这两个输入可以是相应捕获触发器的输出和返回数据106。在该实施例中,每个捕获触发器120、125的时钟输入以等于返回时钟信号104频率的频率被断言,但是输入数据以等于切换信号107频率的频率被更新。
这样,每当返回时钟信号104被断言同时切换信号107被断言时,捕获触发器120的输出(即,Qa信号121)就更新。每当返回时钟信号104被断言同时切换信号107被解除断言时,捕获触发器125的输出(即Qb信号126)就更新。这样,输入数据由两个捕获触发器120、125交替地(alternatively)捕获。
再次参考图3,返回数据捕获级170的输出用作返回数据同步级180的输入。返回数据同步级180包括两个同步触发器130、135和除2电路110。
具体讲,内部时钟/2信号109用于选择两个同步触发器130、135中的哪个针对内部时钟信号101的每个上升沿接收新数据。两个同步触发器130、135的输出分别被称为Qa_sync信号131和Qb_sync信号136。
在一个实施例中,内部时钟/2信号109用作去往复用器133的选择信号,该选择信号使内部时钟信号101与两个同步触发器130、135的时钟输入中的正好一个通信。在该实施例中,每个同步触发器130、135的时钟输入以等于内部时钟/2信号109频率的频率被断言。
在另一实施例中,内部时钟信号101与两个同步触发器130、135的时钟输入通信。在图6B中所示的该实施例中,内部时钟/2信号109用于选择复用器134、138的两个输入中的哪个与两个同步触发器130、135中的每个的D输入通信。这两个输入可以是相应触发器的输出和来自返回数据捕获级170的输出。换句话说,复用器134的输出与同步触发器130的D输入通信。复用器134的输入是Qa_sync信号131和Qa信号121。类似地,复用器138的输出与同步触发器135的D输入通信。复用器138的输入是Qb_sync信号136和Qb信号126。在该实施例中,每个同步触发器130、135的时钟输入以等于内部时钟信号101频率的频率被断言,但是输入数据以等于内部时钟/2信号109频率的频率被更新。
这样,每当内部时钟信号101被断言同时内部时钟/2信号109被断言时,同步触发器130的输出(即,Qa_sync信号131)就更新。每当内部时钟信号101被断言同时内部时钟/2信号109被解除断言时,同步触发器135的输出(即Qb_sync信号136)就更新。这样,来自返回数据捕获级170的数据由两个同步触发器130、135交替地捕获。
再次参考图3,Qa_sync信号131和Qb_sync信号136然后用作复用器140的输入。复用器140的输出(被称为Q_Combo信号141)由内部时钟/2信号109选择。
Q_Combo信号141用作最终数据捕获级的输入,该最终数据捕获级包括最终触发器150。内部时钟信号101用作最终触发器150的时钟输入,而Q_Combo信号141用作输入。最终数据捕获级的输出被称为Q_Mux信号151。
然后,该Q_Mux信号151可以是设置在半导体器件1内的其他电路的输入。Q_Mux信号151可以用作同步逻辑的一部分,其中,同步逻辑引入数据延迟补偿电路的确定性延迟。
因此,在一个实施例中,用于同步接收数据的电路包括三个级:返回数据捕获级170、返回数据同步级180和最终捕获级。此外,与传统电路不同,前两级每个包括多个触发器。使用返回时钟信号104对返回数据捕获级170进行钟控,而使用内部时钟信号101对返回数据同步级180进行钟控。
图4A-4B示出与图3的电路关联的时序图,其中,每个假设不同的I/O延迟。
在图4A中,I/O延迟被假设为小的,例如小于一个时钟周期,或小于时钟周期的一半。
如上所述,内部时钟信号101经过时钟I/O缓存器103,然后外部时钟被传回到半导体器件1中以创建返回时钟信号104。如上所述,在该示例中,内部时钟信号101和返回时钟信号104之间的延迟是小的。此外,基于返回时钟信号104的下降沿产生返回数据106,使得返回数据106相对于返回时钟信号104同步。
另外,除2电路110用于创建内部时钟/2信号109。除2电路108用于创建切换信号107。如上所述,使内部时钟/2信号109被断言的内部时钟信号101的同一沿也间接使切换信号107被断言。由于内部时钟信号101的同一沿使两个信号都被断言,所以这两个信号(内部时钟/2信号109和切换信号107)被称为同相。
切换信号107用于确定捕获触发器120、125中的哪个在返回时钟信号104的每个时钟期间接收更新的数据。在该实施例中,当切换信号107被断言时,捕获触发器120接收更新的返回数据106,并且当切换信号107被解除断言时,捕获触发器125接收更新的返回数据106。因此,在这个例子中,在返回时钟信号104的第二、第四、第六等脉冲上更新Qa信号121。在返回时钟信号104的第三、第五、第七等脉冲上更新Qb信号126。
类似地,当内部时钟/2信号109被断言时,同步触发器130接收更新的Qa信号121。因此,在这个示例中,在内部时钟/2信号104的第四、第六、第八等脉冲上更新Qa_sync信号131。在内部时钟/2信号109的第五、第七、第九等脉冲上更新Qb_sync信号136。
换句话说,在该实施例中,内部时钟信号101和返回时钟信号104被分成两个时钟脉冲的重复序列。触发器120、130使用偶数脉冲,而触发器125、135使用奇数脉冲。
Qa_sync信号131和Qb_sync信号136被提供作为复用器140的输入,所述复用器140基于内部时钟/2信号109的状态来选择这些信号中的一个。因此,当内部时钟/2信号109被解除断言时,Qa_sync信号131由复用器140传送。当内部时钟/2信号109被断言时,Qb_sync信号136由复用器140传送。
最后,Q_Combo信号141由内部时钟信号101的每个脉冲来钟控。注意,从内部时钟信号101的第一脉冲(其间接导致第一返回数据106)到在Q_Mux信号151处出现第一返回数据106所在的脉冲的延迟是4个时钟周期。
图4B示出类似的时序图。然而,在此示例中,I/O延迟接近2个时钟周期。
返回时钟信号104、返回数据106、切换信号107、Qa信号121和Qb信号126之间的关系与上述相同。然而,由于I/O延迟远大于图4A中所示的I/O延迟,所以Qa信号121和Qb信号126出现得更晚得多。
如上所述,当内部时钟/2信号109被断言时,同步触发器130更新。因此,在内部时钟信号101的第四脉冲,用第一返回数据106更新Qa_sync信号131。在内部时钟信号101的第五脉冲,用第二返回数据106更新Qb_sync信号136。Qa_sync信号131和Qb_sync信号136被提供作为复用器140的输入,所述复用器140基于内部时钟/2信号109的状态来选择这些信号中的一个。因此,当内部时钟/2信号109被解除断言时,Qa_sync信号131由复用器140传送。当内部时钟/2信号109被断言时,Qb_sync信号136由复用器140传送。
最后,Q_Combo信号141由内部时钟信号101的每个脉冲来钟控。注意,从内部时钟信号101的第一脉冲(其间接导致第一返回数据106)到在Q_Mux信号151处出现第一返回数据106所在的脉冲的延迟是4个时钟周期。
换句话说,最终触发器150的输出总是落后于导致返回数据106的内部时钟信号101正好4个时钟脉冲。这对于从接近0到接近两个时钟周期的I/O延迟是属实的。
注意,图3中所示的电路将内部时钟信号101分成时钟脉冲的重复序列,其中,返回数据同步级180中的触发器中的一个总是接收与所述序列中的同一时钟沿关联的数据。例如,在图3中,内部时钟信号101被分成两个时钟脉冲的重复序列,其中,同步触发器130每偶数时钟脉冲接收更新的数据,而同步触发器135每奇数时钟脉冲接收更新的数据。
同样,返回时钟信号104被分成重复序列,其中,返回数据捕获级170中的捕获触发器中的一个总是接收与序列中的同一时钟沿关联的数据。例如,在图3中,返回时钟信号104被分成两个时钟脉冲的重复序列,其中,捕获触发器120每偶数时钟脉冲接收更新的数据,而捕获触发器125每奇数时钟脉冲接收更新的数据。
然而,本公开不限制于图3中所示的实施例。例如,如果内部时钟信号101和返回时钟信号104被分成多于两个时钟脉冲的重复序列,则可以增加最大可允许的I/O延迟。
例如,如果返回数据捕获级和返回数据同步级每个包括N个触发器,则最大可允许的I/O延迟可以被增加到N个时钟周期,其中,N大于1。这在图5A-5B中示出。
换句话说,如图5A中所示,返回数据捕获级270包括N个捕获触发器220-1至220-N,而不是返回数据捕获级中的两个捕获触发器120、125。此外,图3的除2电路108用选择器来代替,该选择器提供该重复序列中的N个脉冲中的哪个当前正被捕获的指示。例如,除2电路108可以用捕获选择器电路208来代替。捕获选择器电路208可以是从0至N-1重复计数的计数器。作为替选(alternatively),可以使用N位移位寄存器,其中,每次断言正好一位。当然,捕获选择器电路208可以以其他方式来实施。捕获选择器电路208的输出是唯一地识别在下一个时钟期间被更新的捕获触发器220-1至220-N的一个或多个信号。
然后,该捕获选择器电路208的输出可以与解复用器223一起使用,以将返回时钟信号104路由到返回数据捕获级270中的捕获触发器220-1至220-N中的仅一个。作为替选,捕获触发器220-1至220-N中的每个的输入可以为复用器的输出,所述复用器基于来自捕获选择器电路208的值而选择返回数据106或相应捕获触发器的当前输出。这种配置类似于图6A中所示的配置,其中,存在附加的捕获触发器并且复用器可以具有附加的输入。复用器的所有输入,除了一个输入之外,都连接到相应捕获触发器的输出。因此,捕获选择器电路208允许复用器在返回数据106和相应捕获触发器的当前输出之间选择。返回数据捕获级270的输出221-1至221-N作为输入被提供到返回数据同步级280。
同样,如图5B中所示,返回数据同步级280包括N个同步触发器230-1至230-N。另外,除2电路110可以用同步选择器电路来代替,该同步选择器电路提供该重复序列中的N个脉冲中的哪个当前正在被同步的指示。例如,除2电路110可以用从0到N-1重复计数的同步选择器电路210来代替。作为替选,可以使用N位移位寄存器,其中,每次断言正好一位。当然,同步选择器电路210可以以其他方式来实施。同步选择器电路210的输出是唯一地识别在下一时钟期间被更新的同步触发器230-1至230-N的一个或多个信号。
该同步选择器电路210的输出可以与解复用器233一起使用,以选择返回数据同步级280中的N个同步触发器230-1至230-N中的仅一个。作为替选,类似于图6B中所示的配置,同步触发器230-1至230-N中的每个的输入可以为复用器的输出,所述复用器基于来自同步选择器电路210的值而在返回数据同步级280中的对应同步触发器的输出或相应捕获触发器的当前输出之间选择。
复用器240接收来自同步选择器电路210的信号以选择来自同步触发器230-1至230-N的同步输出231-1至231-N中的一个。来自复用器240的输出用作最终触发器250的输入。最终触发器250的输出是Q mux 51。
这样,可以使从初始内部时钟信号101到第一有效返回数据的延迟任意长(即N+2时钟周期延迟),但是只要I/O延迟小于N个时钟周期,所述延迟总是可预测的。
其他实施例也是可能的。例如,本***也可以用于双数据速率(DDR)模式。在该模式中,内部时钟信号101在时钟I/O缓存器103之前被除以二。这导致外部CLOCK信号是内部时钟信号101的频率的一半。如上所述,外部设备2从数据输出I/O缓存器102接收数据,并经由数据输入I/O缓存器105将数据发送到半导体器件1。外部设备2在CLOCK信号的上升沿和下降沿上接收和发送数据。从时钟I/O缓存器103接收的内部信号也将是内部时钟信号101的频率的一半。因此,倍频器接收来自时钟I/O缓存器103的内部输出以产生返回时钟信号104(图3中所示),使得返回时钟信号104与内部时钟信号101是相同频率。电路的其余部分如上所述。
因此,在该实施例中,图7中所示的时钟I/O缓存器电路包括时钟I/O缓存器103,并且还包括除2电路400以在半导体器件1外部发送之前将内部时钟信号101除以二。时钟I/O缓存器电路还包括乘2电路410以将来自时钟I/O缓存器103的内部输出乘以二,以便创建返回时钟信号104。
与之相对,在以上图3和5A-5B中所示的实施例中,时钟I/O缓存器电路包括时钟I/O缓存器103,但不包括除法或乘法电路。
本***和方法具有许多优点。首先,该***允许在高速通信***中利用慢I/O接口的可能性。这对其他敏感模块例如射频电路产生少得多的干扰。这样,电路设计者可以针对射频通信进行优化,而没有不利地影响半导体器件1的其他操作。另外,该***允许较慢外部设备与高速接口一起使用,同时保持同步通信。如图3和图5A-5B中所示,在返回数据捕获级和返回数据同步级中的多个触发器的使用允许更长的I/O延迟,同时保持可预测的操作。
本公开在范围上不受本文所述的具体实施例限制。实际上,除了本文所述的那些实施例之外,根据前面的描述和附图,本公开的其他各种实施例和修改对于本领域普通技术人员将是显而易见的。因此,这些其他实施例和修改旨在落入本公开的范围内。此外,尽管本文在特定环境中在特定实施方式的上下文中出于特定目的而描述了本公开,但是本领域普通技术人员将认识到:其有用性不限制于此,并且本公开可以出于任何数目的目的而在任何数目的环境中有益地实施。因此,应当鉴于如本文所述的本公开的全部广度和精神来解释下文所陈述的权利要求。

Claims (20)

1.一种用于在半导体器件内使用的数据延迟补偿电路,包括:
I/O缓存器,用于将来自外部设备的返回数据提供到所述半导体器件的内部;
时钟I/O缓存器电路,用于将内部时钟信号提供到所述半导体器件的外部并且将返回时钟信号提供到所述半导体器件的所述内部;
返回数据捕获级,包括:
多个捕获触发器,使用所述返回时钟信号来钟控,其中,所述多个是N,其中,每个捕获触发器每N个时钟接收更新的返回数据;
返回数据同步级,包括:
N个同步触发器,使用所述内部时钟信号来钟控,其中,每个同步触发器每N个时钟从对应的捕获触发器接收更新的数据;
复用器,用于选择来自所述N个同步触发器中的一个的输出;以及
最终触发器,使用所述内部时钟信号来钟控并且接收来自所述复用器的输出作为输入。
2.如权利要求1所述的数据延迟补偿电路,其中,所述返回数据捕获级包括捕获选择器电路以唯一地选择所述N个捕获触发器中的一个,其中,所述捕获选择器电路由所述返回时钟信号来钟控。
3.如权利要求2所述的数据延迟补偿电路,其中,所述捕获选择器电路包括计数器。
4.如权利要求2所述的数据延迟补偿电路,其中,所述捕获选择器电路包括移位寄存器。
5.如权利要求2所述的数据延迟补偿电路,其中,所述返回数据捕获级包括具有输入、多个输出以及一个或多个选择信号的解复用器,其中,所述解复用器的所述输入包括所述返回时钟信号,所述选择信号包括所述捕获选择器电路的输出,并且每个输出与相应捕获触发器的时钟输入通信。
6.如权利要求2所述的数据延迟补偿电路,其中,所述返回数据捕获级包括N个复用器,每个复用器的输出与相应捕获触发器的输入通信,其中,所述N个复用器中的每个复用器在所述返回数据和所述相应捕获触发器的输出之间选择。
7.如权利要求1所述的数据延迟补偿电路,其中,所述返回数据同步级包括同步选择器电路以唯一地选择所述N个同步触发器中的一个,其中,所述同步选择器电路由所述内部时钟信号来钟控。
8.如权利要求7所述的数据延迟补偿电路,其中,所述同步选择器电路包括计数器或移位寄存器。
9.如权利要求7所述的数据延迟补偿电路,其中,所述返回数据同步级包括具有输入、多个输出以及一个或多个选择信号的解复用器,其中,所述解复用器的所述输入包括所述内部时钟信号,所述选择信号包括所述同步选择器电路的输出,并且每个输出与相应同步触发器的时钟输入通信。
10.如权利要求7所述的数据延迟补偿电路,其中,所述返回数据捕获级包括N个复用器,每个复用器的输出与相应同步触发器的输入通信,其中,所述N个复用器中的每个复用器在来自所述对应的捕获触发器的输出与所述相应同步触发器的输出之间选择。
11.如权利要求1所述的数据延迟补偿电路,其中,所述内部时钟信号与所述返回时钟信号之间的时间差被定义为I/O延迟,并且其中,如果所述I/O延迟小于N个时钟周期,则从所述内部时钟信号的第一脉冲到来自所述最终触发器的输出有效所在的时间的时间是确定的。
12.如权利要求1所述的数据延迟补偿电路,其中,所述半导体器件在双数据速率模式下操作,并且其中,所述时钟I/O缓存器电路包括时钟I/O缓存器、用于在由所述时钟I/O缓存器发送之前将所述内部时钟信号除以二的除2电路、以及用于将来自所述时钟I/O缓存器的内部输出乘以二以创建所述返回时钟信号的乘2电路。
13.一种用于在半导体器件内使用的数据延迟补偿电路,包括:
I/O缓存器,用于将来自外部设备的返回数据提供到所述半导体器件的内部;
时钟I/O缓存器电路,用于将内部时钟信号提供到所述半导体器件的外部并且将返回时钟信号提供到所述半导体器件的所述内部;
返回数据捕获级,包括:
捕获除2电路,使用所述返回时钟信号来钟控以创建切换信号;
第一捕获触发器和第二捕获触发器,使用所述返回时钟信号来钟控,其中,每个捕获触发器基于所述切换信号的状态每隔一个时钟接收更新的返回数据;
返回数据同步级,包括:
同步除2电路,使用所述内部时钟信号来钟控以创建内部时钟/2信号;
第一同步触发器和第二同步触发器,使用所述内部时钟信号来钟控,其中,基于所述内部时钟/2信号的状态,所述第一同步触发器每隔一个时钟从所述第一捕获触发器接收更新的数据,并且其中,所述第二同步触发器每隔一个时钟从所述第二捕获触发器接收更新的数据;
复用器,用于基于所述内部时钟/2信号的状态而选择来自所述第一同步触发器和所述第二同步触发器中的一个的输出;以及
最终触发器,使用所述内部时钟信号来钟控并且接收来自所述复用器的输出作为输入。
14.如权利要求13所述的数据延迟补偿电路,其中,所述返回数据捕获级包括具有输入、选择信号和两个输出的解复用器,其中,所述解复用器的所述输入是所述返回时钟信号,所述选择信号是所述切换信号,并且所述两个输出中的第一输出与所述第一捕获触发器的时钟信号通信,并且所述两个输出中的第二输出与所述第二捕获触发器的时钟信号通信。
15.如权利要求13所述的数据延迟补偿电路,其中,所述返回数据同步级包括具有输入、选择信号和两个输出的解复用器,其中,所述解复用器的所述输入是所述内部时钟信号,所述选择信号是所述内部时钟/2信号,并且所述两个输出中的第一输出与所述第一同步触发器的时钟信号通信,并且所述两个输出中的第二输出与所述第二同步触发器的时钟信号通信。
16.如权利要求13所述的数据延迟补偿电路,其中,所述返回数据捕获级包括:第一复用器,所述第一复用器具有两个输入、选择信号和输出,其中,所述复用器的所述两个输入包括所述返回数据和所述第一捕获触发器的输出,所述选择信号是所述切换信号,并且所述输出与所述第一捕获触发器的输入通信;以及,第二复用器,具有两个输入、选择信号和输出,其中,所述复用器的所述两个输入包括所述返回数据和所述第二捕获触发器的输出,所述选择信号是所述切换信号,并且所述输出与所述第二捕获触发器的输入通信。
17.如权利要求13所述的数据延迟补偿电路,其中,所述返回数据同步级包括:第一复用器,所述第一复用器具有两个输入、选择信号和输出,其中,所述复用器的所述两个输入包括所述第一捕获触发器的输出和所述第一同步触发器的输出,所述选择信号是所述内部时钟/2信号,并且所述输出与所述第一同步触发器的输入通信;以及,第二复用器,所述第二复用器具有两个输入、选择信号和输出,其中,所述复用器的所述两个输入包括所述第二捕获触发器的输出和所述第二同步触发器的输出,所述选择信号是所述内部时钟/2信号,并且所述输出与所述第二同步触发器的输入通信。
18.如权利要求13所述的数据延迟补偿电路,其中,所述内部时钟信号与所述返回时钟信号之间的时间差被定义为I/O延迟,并且其中,如果所述I/O延迟小于2个时钟周期,则从所述内部时钟信号的第一脉冲到来自所述最终触发器的输出有效所在的时间的时间是确定的。
19.如权利要求18所述的数据延迟补偿电路,其中,基于所述内部时钟信号产生所述返回时钟信号,基于所述返回时钟信号的沿产生所述返回数据,并且从所述内部时钟信号的断言到在所述最终触发器的输出处有效数据的接收的延迟是4个时钟周期。
20.如权利要求13所述的数据延迟补偿电路,其中,所述半导体器件在双数据速率模式下操作,并且其中,所述时钟I/O缓存器电路包括时钟I/O缓存器、用于在由所述时钟I/O缓存器发送之前将所述内部时钟信号除以二的除2电路、以及用于将来自所述时钟I/O缓存器的内部输出乘以二以创建所述返回时钟信号的乘2电路。
CN202111240198.7A 2020-12-16 2021-10-25 数据延迟补偿器电路 Pending CN114637369A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/123949 2020-12-16
US17/123,949 US11262786B1 (en) 2020-12-16 2020-12-16 Data delay compensator circuit

Publications (1)

Publication Number Publication Date
CN114637369A true CN114637369A (zh) 2022-06-17

Family

ID=80442466

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111240198.7A Pending CN114637369A (zh) 2020-12-16 2021-10-25 数据延迟补偿器电路

Country Status (2)

Country Link
US (1) US11262786B1 (zh)
CN (1) CN114637369A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116418320B (zh) * 2023-03-28 2024-03-29 成都电科星拓科技有限公司 一种自动调整多路分频器延迟相等的方法及电路

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002168913A (ja) * 2000-11-29 2002-06-14 Kawasaki Microelectronics Kk 半導体装置のスキャンテスト方法および半導体装置
US20020136064A1 (en) * 2001-03-26 2002-09-26 Kawasaki Microelectronics, Inc. Semiconductor device having scan test circuit that switches clock signal between shift mode and capture mode, and method of testing the semiconductor device
CN1542585A (zh) * 2002-11-18 2004-11-03 尔必达存储器株式会社 延迟产生方法、基于它的延迟调整方法、以及应用这些方法的延迟产生电路和延迟调整电路
CN1953099A (zh) * 2005-10-20 2007-04-25 尔必达存储器株式会社 同步型半导体存储装置
CN1965282A (zh) * 2004-04-05 2007-05-16 米克伦技术公司 延迟线同步器装置和方法
US20100001769A1 (en) * 2008-07-03 2010-01-07 Texas Instruments Incorporated Method and Apparatus for Synchronizing Time Stamps
US20120166856A1 (en) * 2010-12-28 2012-06-28 Stmicroelectronics Pvt. Ltd. Signal synchronizing systems and methods
CN104716946A (zh) * 2013-12-17 2015-06-17 美国亚德诺半导体公司 时钟信号同步

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905391A (en) * 1997-07-14 1999-05-18 Intel Corporation Master-slave delay locked loop for accurate delay or non-periodic signals
JP2000244309A (ja) * 1999-02-18 2000-09-08 Mitsubishi Electric Corp クロック生成回路および半導体装置
DE10149512B4 (de) * 2001-10-08 2006-08-03 Infineon Technologies Ag Verfahren und Vorrichtung zur Synchronisation der Datenübertragung zwischen zwei Schaltungen
US6614314B2 (en) * 2001-12-03 2003-09-02 Gennum Corporation Non-linear phase detector
JP4448076B2 (ja) * 2005-09-16 2010-04-07 富士通株式会社 データ送受信回路のタイミング調整回路、lsi及びデータ送受信システム
US7482841B1 (en) * 2007-03-29 2009-01-27 Altera Corporation Differential bang-bang phase detector (BBPD) with latency reduction
US9123408B2 (en) * 2013-05-24 2015-09-01 Qualcomm Incorporated Low latency synchronization scheme for mesochronous DDR system
US10069508B1 (en) * 2017-08-23 2018-09-04 Avago Technologies General Ip (Singapore) Pte. Ltd. Multiplexer circuit for a digital to analog converter

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002168913A (ja) * 2000-11-29 2002-06-14 Kawasaki Microelectronics Kk 半導体装置のスキャンテスト方法および半導体装置
US20020136064A1 (en) * 2001-03-26 2002-09-26 Kawasaki Microelectronics, Inc. Semiconductor device having scan test circuit that switches clock signal between shift mode and capture mode, and method of testing the semiconductor device
CN1542585A (zh) * 2002-11-18 2004-11-03 尔必达存储器株式会社 延迟产生方法、基于它的延迟调整方法、以及应用这些方法的延迟产生电路和延迟调整电路
CN1965282A (zh) * 2004-04-05 2007-05-16 米克伦技术公司 延迟线同步器装置和方法
CN1953099A (zh) * 2005-10-20 2007-04-25 尔必达存储器株式会社 同步型半导体存储装置
US20100001769A1 (en) * 2008-07-03 2010-01-07 Texas Instruments Incorporated Method and Apparatus for Synchronizing Time Stamps
US20120166856A1 (en) * 2010-12-28 2012-06-28 Stmicroelectronics Pvt. Ltd. Signal synchronizing systems and methods
CN104716946A (zh) * 2013-12-17 2015-06-17 美国亚德诺半导体公司 时钟信号同步

Also Published As

Publication number Publication date
US11262786B1 (en) 2022-03-01

Similar Documents

Publication Publication Date Title
CN100417029C (zh) 具有加大建立和保持时间的容限的串行器-解串器电路
KR100457868B1 (ko) 엘러스틱 인터페이스 장치 및 그 방법
US6359479B1 (en) Synchronizing data transfers between two distinct clock domains
US7783911B2 (en) Programmable bus driver launch delay/cycle delay to reduce elastic interface elasticity requirements
US7702945B2 (en) Semiconductor device and communication control method
US8363773B2 (en) Digital phase interpolation control for clock and data recovery circuit
US7180336B2 (en) Glitch-free clock switching apparatus
EP1575170A1 (en) Highly configurable pll architecture for programmable logic device
US8837639B2 (en) Parallel synchronizing cell with improved mean time between failures
US8471607B1 (en) High-speed frequency divider architecture
US7936854B2 (en) Method and system of cycle slip framing in a deserializer
US6943595B2 (en) Synchronization circuit
WO2021129050A1 (zh) 无毛刺时钟切换电路
US6960942B2 (en) High speed phase selector
CN114637369A (zh) 数据延迟补偿器电路
KR19990078113A (ko) 데이터 전송 장치
US6664859B1 (en) State machine based phase-lock-loop for USB clock recovery
CN113300799A (zh) 适用于jesd204b协议的时钟同步方法、电路及逻辑设备
US7007186B1 (en) Systems and methods for synchronizing a signal across multiple clock domains in an integrated circuit
US5848109A (en) Apparatus and process for sampling a serial digital signal
JP2013034087A (ja) シリアル通信用インターフェース回路及びパラレルシリアル変換回路
US6388484B1 (en) Clock control circuit
US6571346B1 (en) Elastic interface for master-slave communication
EP1601131B1 (en) Asynchronous multi-clock system
US6040723A (en) Interface circuit with high speed data transmission

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