CN101884035A - 针对系统级芯片设计的源同步数据链路 - Google Patents
针对系统级芯片设计的源同步数据链路 Download PDFInfo
- Publication number
- CN101884035A CN101884035A CN2008801189117A CN200880118911A CN101884035A CN 101884035 A CN101884035 A CN 101884035A CN 2008801189117 A CN2008801189117 A CN 2008801189117A CN 200880118911 A CN200880118911 A CN 200880118911A CN 101884035 A CN101884035 A CN 101884035A
- Authority
- CN
- China
- Prior art keywords
- clock
- source
- circuit
- synchronous
- response
- 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
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
- G06F13/4273—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a clocked protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Semiconductor Integrated Circuits (AREA)
- Information Transfer Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
一种使用系统级芯片(SoC)架构来制造集成电路(700)的方法,所述方法包括:在第一同步岛(IoS)中提供第一电路(710);以及在第一IoS中的第一电路(710)与第二IoS中的硬核(720)之间提供源同步数据链路(755/757,765/767),以在第一电路(710)与硬核(720)之间传送n比特数据单元。源同步数据链路(755/757,765/767)包括:n条数据线的集合(755,765),用于在第一电路(710)与硬核(720)之间传输n比特数据单元;以及源同步时钟线(757,767),用于在第一电路(710)与硬核(720)之间传输源时钟以对n比特数据单元提供定时。硬核(720)不包括用于与源同步数据链路(755/757,765/767)通过接口连接的总线接口适配器。
Description
技术领域
本发明涉及系统级芯片(SoC)设计和通过SoC设计而制造的集成电路的领域,更具体地,涉及使用源同步数据链路将存储器子系统与硬核通过接口连接的SoC设计方法以及通过这种设计方法而制造的IC产品。
背景技术
系统级芯片(SoC)设计是一种常见且普遍的制造集成电路的方法。预先设计和预先验证的硬件模块(也称作IP核)的使用,在SoC设计中是设计和实现复杂系统的努力的重要部分。
如现有技术中已知的,软IP核或“软核”是被设计为通常在特定用途集成电路(ASIC)或现场可编程门阵列(FPGA)芯片中实现的数字逻辑块。通常使用定义了比硬核更高级的逻辑的寄存器传输级(RTL)硬件描述语言(HDL)来提供软核,软核被定义在门级。最常见的RTL语言是超大规模集成电路硬件描述语言(VHDL)和Verilog硬件描述语言。有时,以门级网表或图表的形式而不是以RTL形式来提供软核。对于ASIC芯片,在SoC设计阶段,将与设计相关联的RTL软核和其他RTL合成门级网表。基于该网表,布置和路由逻辑门,并然后使逻辑门成为光掩模以制造芯片。软核的最终实现是由晶体管及其互连构成的硬接线逻辑门。关于FPGA,使用合成的网表来产生配置文件,配置文件将用于对器件内部的查找表和可配置逻辑块进行编程。软核是灵活且便携的;这是因为软核不是特定于工艺的,可以在针对工艺迁移或针对相同工艺的多重来源而重新设计的芯片上使用这些软核。软核的一个缺陷是:软核的性能不是“固态的”;以不同工艺来实现会导致性能变化。
硬IP核或“硬核”是被设计为在ASIC或FPGA芯片中实现的数字逻辑块。对于ASIC芯片,以逻辑门的形式来提供硬核,其中,逻辑门的物理位置彼此相关并且逻辑门之间的互连是预定义的。硬核对于特定工艺具有固定布局,或者可以采取具有布局和路由信息的网表格式。处理整个设计的布局和路由软件将硬核看作是“黑盒”。可以由软件来确定硬核的总体位置,然而硬核的内部内容是“锁定的”。关于FPGA,硬核已被物理上实现为嵌入FPGA构造内的硬接线块。缺乏软核灵活性,硬核具有公知的性能特性,包括固定的单元布局和内部互连。
图1示出了使用上述软核和硬核的SoC开发工艺的图示。通常,如图1所示,SoC设计采用与一个或多个软核相结合的一个或多个硬核,以及根据用户限定的逻辑而制造的定制电路,以有效地便于设计和制造集成电路上的复杂系统。
大规模SoC设计的提高的复杂度需要从事于以下物理设计步骤或“后端”步骤的技术:布局、路由和时序收敛。这些技术之一是同步岛(IoS)的使用。使用IoS,将大SoC分成可以独立时序收敛的若干电路“岛”。即,可以将IoS限定为集成电路的一部分,该部分基于相同的时钟而同步工作,但是根据与集成电路的其他部分不同的时钟而运行。在任何两个IoS或“时钟域”之间不存在同步互连,因此不需要全局时钟平衡。
此外,为了解决电池供电市场的功耗需求,岛可以具有其自己的电源开关。在这些环境下,IoS也是电源岛(IoP)。即,IoP可以被限定为集成电路的一部分,该部分工作在相同的功率上,但是在与集成电路的其他部分不同的功率上运行。IoP可以使其自己完全断电。在多个IoP或“功率域(power domain)”之间的信号通信需要对跨功率域的信号插入电平移位器(和/或钳位器)。
然而,IoS技术对岛之间的通信造成了一些挑战。具体地,当存储器子系统位于一个IoS中并且访问存储器子系统的电路(例如,处理器)位于另一IoS中时,会发生某些问题。在IoS之间需要非同步通信链路以避免需要全局同步时钟。此外,希望提供一种简化时序收敛约束的数据链路架构。此外,通常希望使必须在岛之间路由的上层接线的数目最小化。此外,在许多情况下,等待时间也是问题,需要提供一种以低等待时间工作的数据链路。
相应地,希望提供一种使用系统级芯片(SoC)架构来制造集成电路的方法,所述系统级芯片(SoC)架构包括在同步岛之间的、不需要全局同步时钟的低等待时间数据链路。还希望提供一种单片结构,所述单片结构包括通过不需要全局同步时钟的低等待时间数据链路连接至外部电路的硬核。
发明内容
在本发明的一方面,一种制造集成电路的方法使用系统级芯片(SoC)架构。该方法包括:在集成电路的第一同步岛(IoS)中提供第一电路,第一IoS与第一时钟相关联;以及在第一IoS的第一电路与集成电路的第二IoS中的硬核之间提供源同步数据链路,第二IoS与第二时钟相关联,第二时钟不与第一时钟同步。源同步数据链路在第一电路与硬核之间传送n比特数据单元。源同步数据链路包括:n条数据线的集合,用于在第一电路与硬核之间传输n比特数据单元;以及源同步时钟线,用于在第一电路与硬核之间传输源时钟以对n比特数据单元提供定时。硬核不包括用于与源同步数据链路通过接口连接的总线接口适配器。
在本发明的另一方面,一种单片器件包括:第一电路,以第一时钟来工作;第二电路,实现为以第二时钟来工作的硬核,所述第二时钟不与第一时钟同步;以及源同步数据链路,在第一电路与第二电路之间,用于在第一电路与第二电路之间传送n比特数据单元。源同步数据链路包括:n条数据线的集合,用于在第一电路与第二电路之间传输n比特数据单元;以及源同步时钟线,用于在第一电路与第二电路之间传输源时钟以对n比特数据单元提供定时。硬核不包括用于与源同步数据链路通过接口连接的总线接口适配器。
附图说明
图1示出了系统级芯片(SoC)开发过程。
图2示出了具有异步数据链路的器件的示例实施例。
图3示出了采用使用异步数据链路在硬核内部执行时钟域交叉的SoC设计的单片器件的示例实施例。
图4示出了采用使用异步数据链路在硬核外部执行时钟域交叉的SoC设计的单片器件的示例实施例。
图5示出了具有源同步数据链路的器件的示例实施例。
图6示出了采用在硬核内部具有第一时钟域交叉、在硬核外部具有第二时钟域交叉的SoC设计的单片器件的示例实施例。
图7示出了采用使用源同步数据链路在硬核外部执行时钟域交叉的SoC设计的单片器件的示例实施例。
具体实施方式
在以下详细描述中,出于说明而非限制性目的,列举公开特定细节的示例实施例,以便更全面地理解根据本教义的实施例。然而,对于得益于本公开的本领域技术人员来说显而易见的是,除了本文所公开的特定细节以外的根据本发明教义的其他实施例也在所附权利要求的范围之内。此外,可以省略对公知设备和方法的描述,以避免混淆示例实施例的描述。这样的方法和设备显然在教义的范围之内。
不需要全局同步时钟的一种类型的通信链路是异步数据链路。
图2示出了具有异步数据链路255的器件200的示例实施例。图2示出了源块210与目的地块220之间数据的流动,其中源块210和目的地块220工作在不同的时钟域和功率域。源块210由源时钟“A”205来提供定时,目的地块220由目的地时钟“B”215来提供定时。
出于说明的目的,考虑将4个n比特单元从源块210传递至目的地块220的一个事务的情况。在这种情况下,在源块210中在源侧将所有4*n比特数据存储在缓冲器212中,利用源时钟“A”205来输出。在异步链路255中,所有4个数据单元跨时钟/功率域。如图2所示,跨功率域的信号需要经过电平移位器。这导致了总数为4*n个的上层接线(针对4个n比特缓冲器实体)。关于异步数据链路255,上层接线的数目随着在单个事务中传递的数据单元的数目的增大而增大。在中央处理单元(CPU)从存储器访问数据单元的情况下,每个事务的单元数目通常是一个高速缓存线,一个高速缓存线可以是几百字节。在这种情况下,异步数据链路255必须包括几百条线。此外,关于时序收敛约束,对于异步数据链路255,跨域的数据应当被看作是相对于目的地时钟“B”215的多条周期路径。
等待时间灵敏器件(例如,CPU)的性能依赖于其存储器子系统的总延迟。当等待时间灵敏器件根据与存储器子系统的时钟不同的时钟来工作时,需要时钟域交叉。时钟域交叉向存储器子系统添加了关于通信的额外延迟。为了最小化这种额外延迟,必须在包含等待时间灵敏器件自身(CPU)的硬核内部执行时钟域交叉。
图3示出了采用使用异步数据链路355和365在硬核320内部执行时钟域交叉的SoC设计的单片器件300的示例实施例。器件300包括存储器子系统310和硬核320。硬核320包括核IP单元322,在一个实施例中,核IP单元322可以包括CPU。存储器子系统310和核IP 322工作在不同的时钟域和功率域。存储器子系统310由存储器时钟305来提供定时,核IP 322由核时钟315来提供定时。
相应地,硬核320还包括总线适配器,所述总线适配器包括与核IP322在相同时钟和功率域中的第一适配器组件324a以及与存储器子系统310在相同时钟和功率域中的第二适配器组件324b。异步数据链路355和365在第一和第二总线适配器组件324a和324b之间在相反的方向上延伸。总线适配器324具有以下功能:为核IP322所呈现的特定总线结构提供接口,以与可以被器件300用来与存储器子系统310通过接口连接的一般总线结构一起操作。每个异步数据链路355/365包括总计M*n条线,其中M是在单个事务中在存储器子系统310与核IP单元322之间传递的数据单元的数目(例如,256),n是针对每个数据单元的比特数(例如,8)。此外,由于核IP单元322和存储器子系统310在不同的功率域,因此每个异步数据链路355/365针对M*n条线中的每条线包含电平移位器。
器件300还包括在存储器子系统310与硬核320之间的异步数据链路325和335。
然而器件300有一些缺点。
首先,相对于物理设计过程(布局、路由以及时序收敛),由于硬核320与存储器子系统310之间的数据链路325/335是同步的,所以需要全局时钟平衡(向硬核320和存储器子系统310馈送存储器时钟305)。
其次,总线适配器324是硬核320的一部分,在具有不同需求的另一SoC中重新使用相同硬核320的能力可能需要额外的协议适配级。此外,不同的SoC可能在功耗方面有不同需求。在一些情况下,可能需要使核IP 322和存储器子系统310工作在相同的功率域,从而不需要电平移位器。在这种情况下,硬核320中的电平移位器可以不是必要的,但仍然占用所制造的单片器件中的空间。由于负责时钟和功率域交叉的总线适配器324a/324b在硬核320内部,所以该方法既不协议友好也不灵活。
为了解决协议友好和灵活性问题,可以将总线适配器移到硬核320外部。
图4示出了采用使用异步数据链路455和465在硬核420外部执行时钟域交叉的SoC设计的单片器件400的示例实施例。器件400包括存储器子系统410、硬核(例如,CPU)420、包括第一总线适配器组件424a和第二总线适配器组件424b在内的总线适配器、以及在第一和第二总线适配器组件424a和424b之间延伸的异步数据链路455和465。存储器子系统410和第二总线适配器组件424b工作在与硬核420和第一总线适配器组件424a不同的时钟域和功率域。存储器子系统410和第二总线适配器组件424b由存储器时钟405提供定时,而硬核420和第一总线适配器424a由核时钟415来提供定时。
总线适配器424a/424b具有以下功能:为硬核(例如,CPU)420所呈现的特定总线结构提供接口,以与可以在SoC设计400中使用的一般总线结构一起操作。每个异步数据链路455/465包括总计M*n条线,其中M是在单个事务中在存储器子系统310与核IP单元322之间传递的数据单元的数目(例如,256),n是每个数据单元的比特数(例如,8)。此外,每个异步数据链路455/465针对M*n条线中的每条线包括电平移位器。
器件400还包括在存储器子系统410与第二总线适配器组件424b之间的同步数据链路425和435。
采用这种方法,以软核(即,与硬核420分开)的形式来提供总线适配器424a/424b。可以采用不同的总线适配器在不添加任何额外等待时间的情况下执行SoC特定协议适配。因此,相同的硬核420可以连接至不同的存储器子系统。此外,该方法将M*n个电平移位器置于总线适配器424a/424b中,使得当具体器件400不需要这些适配器时(例如,当硬核420和存储器子系统410工作在相同功率域时)可以去除这些适配器,而不是将M*n个电平移位器置于硬核420中。
然而,器件400的SoC设计具有一些缺点。异步数据链路455/465仍然具有许多跨时钟和功率域的上层接线。此外,特别是在器件400中在硬核420和第一总线适配器组件424a远离存储器子系统410和第二总线适配器组件424b的情况下,很难满足异步数据链路455/465提出的定时约束。
为了解决这些限制和缺点,可以采用另一种类型的不需要全局同步时钟的通信链路,来取代异步数据链路。
图5示出了具有源同步数据链路555的器件500的示例实施例。图5示出了工作在不同时钟域和功率域的源块510和目的地块420之间的数据流。源块510由源时钟“A”505来提供定时,目的地块520由目的地(或“核”)时钟“B”515来提供定时。
出于说明的目的,考虑将4个n比特单元从源块510传递至目的地块520的一个事务的情况。在器件500中,源块510包括用于向源同步时钟线557提供源时钟的源同步时钟发生器512,目的地块520包括用于存储经由源同步时钟链路555接收的数据的缓冲器522。利用源同步数据链路555,每次仅一个数据单元与经由源同步时钟线557的源时钟一起跨时钟/功率域。经由源同步时钟线557将时钟域A中的源时钟发送至时钟域B中的目的地块520,并使用该源时钟将数据单元写入存储缓冲器522。
因此,与使用异步数据链路255的器件200相比,在具有源同步数据链路555的器件500中,上层接线的数目由每个单元的宽度来确定(在本示例中是n),并且与针对每个事务的单元数目无关。因此,总数为n+1个的上层接线跨时钟/功率域(一个n比特数据单元加上相关的源同步时钟线557)。异步数据链路255与源同步数据链路555之间的另一重要差别是时序收敛约束。对于异步链路255,跨域的数据应当被看作是相对于目的地时钟“B”215的多个周期路径。对于源同步时钟,仅需要约束源同步数据链路555上的数据与源同步时钟线557上跨域的源时钟之间的相对歪斜。因此,在上层接线的数目以及时序约束方面,源同步时序收敛需求更适于SoC设计的后端步骤。
图6示出了采用在硬核620内部具有第一时钟域交叉,在硬核620外部具有第二时钟域交叉的SoC设计的单片器件600的示例实施例。器件600包括存储器子系统610和硬核620。硬核620本质上与图3的器件300的硬核320相同。具体地,硬核620包括核IP单元622、包括第一总线适配器组件624a和第二总线适配器组件624b在内的总线适配器、以及在第一和第二总线适配器组件624a和624b之间延伸的异步数据链路625和635。
器件600还包括:包括第一总线适配器组件630a和第二总线适配器组件630b在内的总线适配器;以及在存储器子系统610与硬核620之间的源同步数据链路655和665。
存储器子系统610和第二总线适配器组件630b工作在与硬核620和第一总线适配器组件630a不同的时钟域和功率域。存储器子系统610和第二总线适配器630b由存储器时钟605来提供定时,而硬核620和第一总线适配器组件630a由核时钟615来提供定时。
在器件600中,第一总线适配器组件630a向源同步时钟线657提供源时钟(例如,核时钟615),目的地端包括用于存储经由源同步数据链路655接收的、并利用经由源同步时钟线657上的源时钟而输入的数据的缓冲器。同时,第二总线适配器组件630b向源同步时钟线667提供源时钟(例如,存储器时钟305),目的地端包括用于存储经由源同步数据链路665接收的、并经由源同步时钟线667上的源时钟而输入的数据的缓冲器。
该方法使用原始硬核并添加了源同步链路,以与存储器子系统通信。由于上层接线的数目有限并且易于满足源同步链路的定时需求,因此便于后端设计步骤(布局、路由和时序收敛)。
然而,图6所示的这种方法在等待时间方面有缺点。置于硬核620外部的附加源同步数据链路增加了总系统等待时间。浪费了硬核620内部的总线适配器624a/624b所提供的时钟和功率域供给。
图7示出了采用使用源同步数据链路755和765在硬核720外部执行时钟域交叉的SoC设计的单片器件700的示例实施例。器件700包括存储器子系统710、硬核720、包括第一总线适配器组件730a和第二总线适配器组件730b在内的总线适配器、以及在第一和第二总线适配器组件730a和730b之间延伸的源同步数据链路755和765。硬核720可以包括处理器,如,CPU、3D图形处理器、音频处理器、控制处理器等。存储器子系统710和第二总线适配器组件730b与硬核(例如,CPU)720和第一总线适配器组件730a不同的时钟域和功率域。存储器子系统710和第二总线适配器730b由存储器时钟705来提供定时,而硬核720和第一总线适配器组件730a由核时钟415来提供定时。
总线适配器730a/730b具有以下功能:为硬核(例如,CPU)720所呈现的特定总线结构提供接口,以与可以在器件700中使用的一般总线结构一起操作。每个源同步数据链路755/765包括总计n+1条线,其中n是针对每个数据单元的比特数(例如,8)。此外,每个源同步数据链路755/765针对n+1条线中的每条线包括电平移位器。
采用这种方法,以软核(即,与硬核720分开)的形式来提供总线适配器730a/730b。可以采用不同的总线适配器在不添加任何额外等待时间的情况下执行SoC特定协议适配。因此,相同的硬核720可以连接至不同的存储器子系统。此外,该方法将n+1个电平移位器置于总线适配器730a/730b中,使得当具体器件700不需要这些适配器时(例如,当硬核720和存储器子系统710工作在相同功率域时)可以去除这些适配器,而不是将n+1个电平移位器置于硬核720中。
图7的布置提供了多个优点。利用源同步通信在以下方面的优点简化了后端设计步骤(布局、路由和时序收敛):(1)更少的上层接线;以及(2)放宽的时序约束(核时钟仅去往硬核和相关的适配器,存储器时钟仅去往存储器子系统和相关的适配器)。此外,利用位于硬核720外部的总线适配器730a/730b解决了等待时间、协议友好和灵活性问题。总线适配器730a/730b结合时钟和功率域交叉来执行总线协议适配。此外,总线适配器730a/730b可以在SoC不需要电平移位器时(例如,当存储器子系统710与硬核720工作在相同的功率岛(IoP)时)去除电平移位器。
尽管上述实施例在存储器子系统与体现为硬核的处理器之间通过接口连接的情况下尤为有利,然而应理解,本发明原理可以应用于需要低等待时间通信的其他器件和应用。此外,尽管例如图7所示的实施例采用两个源同步数据链路,然而在一些器件中,硬核可以与多于两个源同步数据链路通过接口连接,或者接口可能仅需要一个源同步数据链路(例如,对于双向数据链路来说)。
本文描述了优选实施例,然而在本发明的构思和范围之内的许多变型是可能的。本领域技术人员在阅读说明书、附图和权利要求之后将更清楚这样的变型。因此,本发明仅由所附权利要求的精神和范围来限定。
Claims (24)
1.一种使用系统级芯片SoC架构来制造集成电路(700)的方法,所述方法包括:
在集成电路(700)的第一同步岛IoS中提供第一电路(710),第一IoS与第一时钟(705)相关联;以及
在第一IoS的第一电路(710)与集成电路(700)的第二IoS中的硬核(720)之间提供源同步数据链路(755/757,765/767),第二IoS与第二时钟(715)相关联,第二时钟(715)不与第一时钟(705)同步,源同步数据链路(755/757,765/767)在第一电路(710)与硬核(720)之间传送n比特数据单元,所述源同步数据链路(755/757,765/767)包括:
n条数据线的集合(755,765),用于在第一电路(710)与硬核(720)之间传输n比特数据单元,以及
源同步时钟线(757,767),用于在第一电路(710)与硬核(720)之间传输源时钟(705,715)以对n比特数据单元提供定时,
其中,硬核(720)不包括用于与源同步数据链路(755/757,765/767)通过接口连接的总线接口适配器。
2.根据权利要求1所述的方法,其中,提供源同步数据链路(755/757,765/767)还包括:提供用于对在n条数据线(755,765)上传输的数据的电压电平以及在源同步时钟线(757,767)上传输的源时钟(705,715)的电压电平进行移位的多个电平移位器。
3.根据权利要求1所述的方法,其中,集成电路(700)还包括:用于响应于源时钟(757)来存储多个n比特数据单元以及响应于第二时钟(715)来输出所述多个n比特数据单元的缓冲器。
4.根据权利要求3所述的方法,其中,集成电路(700)还包括:用于响应于第二源时钟(767)来存储多个n比特数据单元以及响应于第一时钟(705)来输出所述多个n比特数据单元的第二缓冲器。
5.根据权利要求1所述的方法,其中,集成电路(700)还包括:用于响应于源时钟(767)来存储多个n比特数据单元以及响应于第一时钟(705)来输出所述多个n比特数据单元的缓冲器。
6.根据权利要求1所述的方法,还包括:提供用于将第一电路(710)通过接口连接至源同步数据链路(755/757,765/767)的总线接口适配器(730a/730b)。
7.根据权利要求6所述的方法,其中,总线接口适配器(730a/730b)还包括:用于响应于源时钟(767)来存储多个n比特数据单元以及响应于第一时钟(705)来输出所述多个n比特数据单元的缓冲器。
8.根据权利要求6所述的方法,其中,总线接口适配器(730a/730b)包括第一IoS中的第一总线接口适配器组件(730b)和第二IoS中的第二总线接口适配器组件(730a)。
9.根据权利要求6所述的方法,其中,总线接口适配器(730a/730b)还包括用于响应于源时钟(757)来存储多个n比特数据单元以及响应于第二时钟(715)来输出所述多个n比特数据单元的缓冲器。
10.根据权利要求1所述的方法,还包括:提供用于将硬核(720)通过接口连接至源同步数据链路(755/757,765/767)的总线接口适配器(730a/730b)。
11.根据权利要求10所述的方法,其中,总线接口适配器(730a/730b)还包括:用于响应于源时钟(757)来存储多个n比特数据单元以及响应于第二时钟(715)来输出所述多个n比特数据单元的缓冲器。
12.根据权利要求1所述的方法,其中,n条数据线的集合(755)在第一方向上在第一电路(710)与硬核(720)之间传输n比特数据单元,源同步数据链路(755/757,765/767)还包括:
第二个n条数据线的集合(765),用于在与第一方向相反的第二方向上在第一电路(710)与硬核(720)之间传输n比特数据单元;以及
第二源同步时钟线(767),用于在硬核(720)与第一电路(710)之间传输第二源时钟,以对第二个n条数据线的集合(765)所传输的n比特数据单元提供定时。
13.一种单片器件(700),包括:
第一电路(710),以第一时钟(705)来工作;
第二电路,实现为以第二时钟(715)来工作的硬核(720),所述第二时钟(715)不与第一时钟(705)同步;以及
在第一电路(710)与第二电路之间的源同步数据链路(755/757,765/767),用于在第一电路(710)与第二电路之间传送n比特数据单元,所述源同步数据链路(755/757,765/767)包括:
n条数据线的集合(755,765),用于在第一电路(710)与第二电路之间传输n比特数据单元,以及
源同步时钟线(757,767),用于在第一电路(710)与第二电路之间传输源时钟以对n比特数据单元提供定时,
其中,硬核(720)不包括用于与源同步数据链路(755/757,765/767)通过接口连接的总线接口适配器。
14.根据权利要求13所述的器件(700),其中,源同步数据链路(755/757,765/767)还包括:多个电平移位器,用于对在n条数据线(755,765)上传输的数据的电压电平以及在源同步时钟线(757,767)上传输的源时钟(705,715)的电压电平进行移位。
15.根据权利要求13所述的器件(700),还包括:用于响应于源时钟(757)来存储多个n比特数据单元以及响应于第二时钟(715)来输出所述多个n比特数据单元的缓冲器。
16.根据权利要求15所述的器件(700),还包括:用于响应于第二源时钟(767)来存储多个n比特数据单元以及响应于第一时钟(705)来输出所述多个n比特数据单元的第二缓冲器。
17.根据权利要求13所述的器件(700),还包括:用于响应于源时钟(767)来存储多个n比特数据单元以及响应于第一时钟(705)来输出所述多个n比特数据单元的缓冲器。
18.根据权利要求13所述的器件(700),还包括:用于将第一电路(710)通过接口连接至源同步数据链路(755/757,765/767)的总线接口适配器(730a/730b)。
19.根据权利要求18所述的器件(700),其中,总线接口适配器(730a/730b)还包括:用于响应于源时钟(767)来存储多个n比特数据单元以及响应于第一时钟(705)来输出所述多个n比特数据单元的缓冲器。
20.根据权利要求18所述的器件(700),其中,总线接口适配器(730a/730b)包括第一IoS中的第一总线接口适配器组件(730b)和第二IoS中的第二总线接口适配器组件(730a)。
21.根据权利要求18所述的器件(700),其中,总线接口适配器(730a/730b)还包括用于响应于源时钟(757)来存储多个n比特数据单元以及响应于第二时钟(715)来输出所述多个n比特数据单元的缓冲器。
22.根据权利要求13所述的器件(700),还包括:用于将硬核(720)通过接口连接至源同步数据链路(755/757,765/767)的总线接口适配器(730a/730b)。
23.根据权利要求22所述的器件(700),其中,总线接口适配器(730a/730b)还包括:用于响应于源时钟(767)来存储多个n比特数据单元以及响应于第二时钟(715)来输出所述多个n比特数据单元的缓冲器。
24.根据权利要求13所述的器件(700),其中,n条数据线的集合(755)在第一方向上在第一电路(710)与第二电路之间传输n比特数据单元,源同步数据链路(755/757,765/767)还包括:
第二个n条数据线的集合(765),用于在与第一方向相反的第二方向上在第一电路(710)与第二电路之间传输n比特数据单元;以及
第二源同步时钟线(767),用于在第二电路与第一电路(710)之间传输第二源时钟,以对第二个n条数据线的集合(765)所传输的n比特数据单元提供定时。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US99271007P | 2007-12-05 | 2007-12-05 | |
US60/992,710 | 2007-12-05 | ||
PCT/IB2008/054981 WO2009072038A2 (en) | 2007-12-05 | 2008-11-27 | Source-synchronous data link for system-on-chip design |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101884035A true CN101884035A (zh) | 2010-11-10 |
Family
ID=40718283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008801189117A Pending CN101884035A (zh) | 2007-12-05 | 2008-11-27 | 针对系统级芯片设计的源同步数据链路 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8418092B2 (zh) |
EP (1) | EP2220566A2 (zh) |
KR (1) | KR20100087408A (zh) |
CN (1) | CN101884035A (zh) |
WO (1) | WO2009072038A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108693465A (zh) * | 2018-03-30 | 2018-10-23 | 北京联想核芯科技有限公司 | 一种测试控制方法、电路及系统 |
CN113282533A (zh) * | 2021-07-20 | 2021-08-20 | 中科南京智能技术研究院 | 一种异步链路发送端电路及芯片接收端电路 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8661383B1 (en) * | 2010-07-28 | 2014-02-25 | VSYNC Circuits, Ltd. | VLSI black-box verification |
US8707229B1 (en) | 2010-07-28 | 2014-04-22 | VSYNC Circuit, Ltd. | Static analysis of VLSI reliability |
US8631364B1 (en) | 2010-12-26 | 2014-01-14 | VSYNC Circuits Ltd. | Constraining VLSI circuits |
US9177615B2 (en) * | 2011-07-06 | 2015-11-03 | Qualcomm Technologies, Inc. | Power disconnect unit for use in data transport topology of network on chip design having asynchronous clock domain adapter sender and receiver each at a separate power domain |
US8995207B2 (en) * | 2011-08-12 | 2015-03-31 | Qualcomm Incorporated | Data storage for voltage domain crossings |
EP3531651B8 (de) | 2018-02-26 | 2023-03-08 | Rohde & Schwarz GmbH & Co. KG | System und verfahren zur übertragung zeitkritischer analoger signale und digitaler daten |
US11989148B2 (en) | 2020-12-30 | 2024-05-21 | Stmicroelectronics International N.V. | Data bridge for interfacing source synchronous datapaths with unknown clock phases |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6209072B1 (en) | 1997-05-06 | 2001-03-27 | Intel Corporation | Source synchronous interface between master and slave using a deskew latch |
US7110423B1 (en) | 1999-11-29 | 2006-09-19 | Cisco Technology, Inc. | Method and system for source synchronous clocking |
US7720107B2 (en) * | 2003-06-16 | 2010-05-18 | Cisco Technology, Inc. | Aligning data in a wide, high-speed, source synchronous parallel link |
US20060041693A1 (en) * | 2004-05-27 | 2006-02-23 | Stmicroelectronics S.R.L. | Asynchronous decoupler |
JP4456432B2 (ja) | 2004-08-02 | 2010-04-28 | 富士通株式会社 | 基準信号を用いて同期伝送を行う装置および方法 |
US7084680B2 (en) | 2004-08-31 | 2006-08-01 | Micron Technology, Inc. | Method and apparatus for timing domain crossing |
CN101133597A (zh) * | 2005-03-04 | 2008-02-27 | 皇家飞利浦电子股份有限公司 | 用于仲裁共享资源的电子设备和方法 |
-
2008
- 2008-11-27 EP EP08856322A patent/EP2220566A2/en not_active Withdrawn
- 2008-11-27 CN CN2008801189117A patent/CN101884035A/zh active Pending
- 2008-11-27 WO PCT/IB2008/054981 patent/WO2009072038A2/en active Application Filing
- 2008-11-27 KR KR1020107014911A patent/KR20100087408A/ko not_active Application Discontinuation
- 2008-11-27 US US12/746,302 patent/US8418092B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108693465A (zh) * | 2018-03-30 | 2018-10-23 | 北京联想核芯科技有限公司 | 一种测试控制方法、电路及系统 |
CN113282533A (zh) * | 2021-07-20 | 2021-08-20 | 中科南京智能技术研究院 | 一种异步链路发送端电路及芯片接收端电路 |
CN113282533B (zh) * | 2021-07-20 | 2021-09-28 | 中科南京智能技术研究院 | 一种异步链路发送端电路及芯片接收端电路 |
Also Published As
Publication number | Publication date |
---|---|
US20100271084A1 (en) | 2010-10-28 |
US8418092B2 (en) | 2013-04-09 |
KR20100087408A (ko) | 2010-08-04 |
EP2220566A2 (en) | 2010-08-25 |
WO2009072038A3 (en) | 2009-09-17 |
WO2009072038A2 (en) | 2009-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101884035A (zh) | 针对系统级芯片设计的源同步数据链路 | |
KR102261805B1 (ko) | 높은 스루풋 키값 저장부의 구현을 위한 메모리 배치 | |
KR101524451B1 (ko) | Ip 블럭의 회로 테스팅을 위한 기능적 패브릭 기반 테스트 래퍼 | |
US8677306B1 (en) | Microcontroller controlled or direct mode controlled network-fabric on a structured ASIC | |
Healy et al. | Design and analysis of 3D-MAPS: A many-core 3D processor with stacked memory | |
CN107924428B (zh) | 可编程逻辑ic的块存储器布局和体系架构及其操作方法 | |
US7614020B2 (en) | Structurally field-configurable semiconductor array for in-memory processing of stateful, transaction-oriented systems | |
US8788756B2 (en) | Circuit for and method of enabling the transfer of data by an integrated circuit | |
US8270231B2 (en) | Configurable embedded processor | |
CN101132336A (zh) | 异构多核处理器高速异步互连通信网络 | |
US20110260764A1 (en) | Semiconductor integrated circuit, method for designing semiconductor integrated circuit, and computer readable recording medium | |
US6718411B2 (en) | Asic system architecture including data aggregation technique | |
US20090160483A1 (en) | Field programmable application specific integrated circuit with programmable logic array and method of designing and programming the programmable logic array | |
CN104598404B (zh) | 计算设备扩展方法和装置、以及可扩展的计算系统 | |
US7389481B2 (en) | Integrated circuit design utilizing array of functionally interchangeable dynamic logic cells | |
Abdelhadi | Synthesizable synchronization FIFOs utilizing the asynchronous pulse-based handshake protocol | |
US7738496B1 (en) | Device that provides the functionality of dual-ported memory using single-ported memory for multiple clock domains | |
Kakoee et al. | A resilient architecture for low latency communication in shared-L1 processor clusters | |
Shahu | ASIC Design Implementation of UART using Synopsys EDA tools | |
Vij et al. | Interfacing synchronous and asynchronous domains for open core protocol | |
Kiamilev et al. | Smart pixel IC layout methodology and its application to photonic page buffers | |
US9948307B2 (en) | Supporting pseudo open drain input/output standards in a programmable logic device | |
Aken’Ova | Bridging the gap between soft and hard eFPGA design | |
Scott et al. | Asynchronous on-Chip Communication: Explorations on the Intel PXA27x Processor Peripheral Bus | |
Butera | OpenRAM: An open-source memory compiler |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20101110 |