CN106549843A - 分布式多芯片协议应用接口 - Google Patents

分布式多芯片协议应用接口 Download PDF

Info

Publication number
CN106549843A
CN106549843A CN201610908365.3A CN201610908365A CN106549843A CN 106549843 A CN106549843 A CN 106549843A CN 201610908365 A CN201610908365 A CN 201610908365A CN 106549843 A CN106549843 A CN 106549843A
Authority
CN
China
Prior art keywords
circuit
fifo
fifo block
block
multiple 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.)
Granted
Application number
CN201610908365.3A
Other languages
English (en)
Other versions
CN106549843B (zh
Inventor
G·B·瓦利希斯
K·杜维尔
C·L·马乌
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.)
Altera Corp
Original Assignee
Altera Corp
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 Altera Corp filed Critical Altera Corp
Priority to CN201910947788.XA priority Critical patent/CN110691021B/zh
Publication of CN106549843A publication Critical patent/CN106549843A/zh
Application granted granted Critical
Publication of CN106549843B publication Critical patent/CN106549843B/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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4286Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40091Bus bridging
    • 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
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40123Interconnection of computers and peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)
  • Logic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Bus Control (AREA)

Abstract

本申请公开了一种分布式多芯片协议应用接口。提供支持跨越多芯片互连接口的宽协议接口的***和方法。宽协议接口的数据信号被分解成多个数据流。在第一电路和第二电路之间建立握手信号,而第一电路和第二电路是多芯片装置中的芯片。第一电路通过多个多芯片互连信道将多个数据流发送到第二电路。基于握手信号压缩多个数据流中的每个数据流,以提供具有降低的所需管脚数目的宽协议接口。

Description

分布式多芯片协议应用接口
技术领域
本发明涉及多芯片集成电路装置,其包括可编程逻辑器件(PLD)。特别地,本发明能够用在用于支持在这种装置上进行多功能信令的***和方法中。
背景技术
多个集成电路(IC)芯片能够用多芯片互连连接。在一些实例中,多芯片互连能够实现为信道化接口,此处多个信道用于在多个IC芯片之间中继转发数据信号。
协议应用层栈(protocol application layer stack)能够驻留在一个或更多个通过多芯片互连连接的IC芯片上。在某些模式中,两个协议应用层栈之间的通信以多芯片互连接口的方式实现。
发明内容
本发明描述了一种支持跨越信道化接口(诸如多芯片互连)的多功能数据信令的简便方法。在一些实现方式中,能够聚合多芯片互连的若干通道以支持协议应用层的宽协议总线接口。
支持跨越多个IC芯片的宽协议总线接口中的一个特别挑战是多芯片互连典型地被实现为狭窄的、独立的和异步的信道。为了发送,宽协议总线接口中的并行数据位必须跨越多芯片互连的不同信道被分解并且重新分配。另外,由于信道彼此独立地和异步地操作,用于驱动多芯片互连接口信道的异步先进先出设备(FIFO)具有引起数据流偏斜(skew)的潜在可能。
因此,根据本发明的实施例,提供一种用于支持跨越多芯片互连的宽协议接口的方法。宽协议接口的数据信号被分解成多个数据流。在驻留在多芯片装置的IC芯片上的第一电路和第二电路之间建立握手信号。第一电路通过多芯片互连接口的多个信道将多个数据流发送到第二电路。为了减少多个数据流中的偏斜,多芯片互连接口的多个信道可以由共享同步信号结合在一起。为了提供具有降低的所需管脚数目的宽协议接口,多个数据流的每个数据流基于握手信号被压缩。
当多个数据流的每个数据流被压缩时,驱动多个数据流的第一数据流以2∶1加速比(speed-up rate)通过第一FIFO和以1∶2减速比(slow-down rate)通过第二FIFO。驱动多个数据流的第二数据流以2∶1加速比通过第三FIFO和以1∶2减速比通过第四FIFO。在一些实施例中,第一FIFO和第三FIFO由第一对共享同步信号结合在一起,并且第二FIFO和第四FIFO由第二对共享同步信号结合在一起。
在一些实施例中,确定协议层FIFO中剩余的容量,并基于握手信号确定与第一FIFO和第二FIFO相关联的反压延迟(back-pressure latency)。在一些实施例中,基于确定的反压延迟调整协议层FIFO中剩余的容量。
在一些实施例中,通过串行移位链在第一电路和第二电路之间建立握手信号。在一些进一步实施例中,跨越多个数据流收集并分解与宽协议接口的数据信号相关联的控制信号。
附图说明
结合附图考虑下面的详细说明,本发明的进一步特征、其特性和各种优点将变得明显,其中相似附图标记始终表示相似部件,并且其中:
图1显示了根据本发明的一个实施例的跨越两个IC芯片的多芯片互连接口的电路图;
图2显示了根据本发明的一个实施例的多芯片互连接口中的电路信道的实现方式;
图3是根据本发明的一个实施例的用于在多芯片装置的两个IC芯片之间实现多芯片互连接口的方法流程图;
图4是根据本发明的一个实施例的应用集成电路装置的说明性***的简化框图;
图5是编码有一组机器可执行指令的磁数据存储介质的横截面图,该指令用于执行根据本发明的方法,所述方法配置可编程集成电路装置以实现多芯片互连;以及
图6是编码有一组机器可执行指令的光学可读数据存储介质的横截面图,该指令用于执行根据本发明的方法,所述方法配置可编程集成电路装置以实现多芯片互连。
具体实施方式
为了提供对本发明的全面理解,现在将描述一些说明性实施例。但是,本领域技术人员将理解的是,本文描述的***和方法可调整和修改为适合于所处理的应用并且本文描述的***和方法可应用于其他合适的应用中,并且这种其他的添加和修改将不会脱离本发明的范围。
本文描述的附图显示了说明性实施例;但是,附图没有必要显示并且不意在显示实施例中包含的硬件组件的精确布图。本文所公开的实施例可根据本领域所知的原理以任何合适数量的组件和任何组件的合适布图实现。
图1显示了跨越两个IC芯片的多芯片互连接口的电路图。多芯片装置100可包含主芯片(main die)120和次级芯片(secondary die)140,这两个芯片通过多芯片互连彼此进行通信。多芯片互连可实现为信道化接口。例如,信道化多芯片互连接口可包含多芯片互连接口(MDII)130(例如,图1的MDII0,MDII1,...MDIIN)和多芯片互连信道(MDIC)150。信道化多芯片互连接口能够是,例如,购自加利福尼亚州的圣何塞的阿尔特拉公司(AlteraCorporation公司)的2.5D多芯片接口,并且其能够在主芯片120和次级芯片140两者上实施。MDIC 150的信道上通信的数据信号在本文可称作数据信号流或数据流。信道化多芯片互连接口能够同时支持多个数据流。
可编程逻辑器件(PLD)结构,例如PLD结构122,能够在主芯片120上实施。若干收发器信道142能够在次级芯片140上实施。通过信道化路径146、MDIC 150和信道化路径126,次级芯片140上的收发器信道142能够桥接到主芯片120上的PLD结构122。在一些实施例中,为了允许收发器信道142被桥接到PLD结构122,将信道化的多芯片互连接口(MDII 130和MDIC150)定义为每信道互连(例如,每信道96个管脚)。例如,当收发器信道桥接到PLD结构122时,收发器信道142的信道7(例如,XCV7)可与信道化多芯片互连接口的一个信道(诸如MDII7)具有一对一的关系。在一些实施例中,信道化多芯片互连接口是双向接口。例如,MDIC150中的每信道96个管脚能够在主到次方向和次到主方向这两个方向上进行操作。
除了收发器信道142外,协议应用层栈144(诸如***组件互连表示(PCIe)栈)及其应用接口也能够被提供在次级芯片140上以便次级芯片140参与协议应用层而直接与主芯片120上的协议应用层124进行通信。在一些实施例中,协议应用层124需要宽通信总线(例如,超过1200个管脚),诸如非信道化路径128和148。
MDIC 150的每个信道能够支持三种不同种类的数据信号:
1)源同步数据;
2)内存映射数据,例如用在高速时域复用(TDM)接口中的;以及
3)异步带外数据信号,如用在串行移位链中的。
例如,MDIC 150信道中的96个管脚的6个管脚可用于异步串行移位链通信,20个管脚可被保留用于内存映射数据,而剩余的70个管脚可用于源同步数据以及各种传输时钟和异步复位信号。
这三个种类的数据信号可不同地实施并用于不同功能。源同步数据是在确定时间到达并包含独立于接收***时钟的时钟信号(“选通(strobe)”)的数据。源同步数据传输通常能够获得比实施全局时钟源拓扑的方案更高的传输速率。高速TDM接口处理源和接收点(sink)(例如,次级芯片140上的协议层FIFO和互连接口FIFO)之间的内存映射数据的同步传输。例如,如将关于图2所说明的,应用接口Tx FIFO 246是协议层FIFO,并且多芯片互连接口Tx FIFO 230n是互连接口FIFO。最后,异步串行移位链,诸如图2的串行移位链260,允许异步握手信号(例如,“发送Ready”信号或“FIFO空”标志)在协议栈和PLD结构应用逻辑之间相互通信,以便能够在FIFO块上发生任何通信之前建立适当的并行数据通信。
协议栈144利用现有的信道化多芯片互连接口(MDII 130和MDIC 150)以便将其非信道化应用接口桥接到主芯片120。如前面描述的,非信道化应用接口可需要宽通信总线(例如,超过1200个管脚),但是,在示出的实例中,MDIC150的每个信道可具有相对小的带宽(例如,96个管脚)。因此,信道化的多芯片互连接口的管脚数限制会要求次级芯片140跨越MDIC 150中的多个信道与主芯片120通信协议应用层数据。但是,无论何时一个具体信道(例如,图1的MDII7)用于协议应用层通信,MDIC 150中的其他信道的些或全部可失去它们执行其他功能的能力。例如,PCIe xl通路(lane)仅用一个收发器;但是,为了起作用其对应的PCIe协议栈可需要MDIC 150中的十六个信道。使用者因此将失去本可能用作其他用途的十五个收发器信道,因为无论何时只要启用协议栈144,收发器接口142的所有十六个信道将对其他模块变得不可用。本发明能够减少用来实施协议应用层通信的信道化的多芯片互连接口中的信道数量。
信道化接口(例如,MDII 130和MDIC 150)上的数据通信的另一问题源于这样的事实,这些信道本质上是异步的。MDII 130和MDIC 150可导致通过信道化接口内的每个独立异步互连FIFO驱动的宽数据总线产生偏斜。本发明能够降低或消除在通过MDIC 150发送的宽数据总线中间的偏斜。
最后,多芯片装置100上的每个芯片都可具有独立的复位接口,并由于它们不同的复位周期因此可配置成在不同时间被唤醒。在主芯片120和次级芯片140两者的复位周期结束之前,在它们之间的任何数据信号交换都是不确定的。相应地,数据通信应当被选通直到这两个芯片已经退出复位周期。
关于图1的前述公开讨论了示例性多芯片装置,在此需要多芯片互连用于协议应用层通信。也展示了若干现有的问题和设计挑战,将关于图2在下面提出针对它们的解决方案。
图2显示了根据本发明的一个实施例的多芯片互连接口中的电路信道的实现方式。更特别地,图2包含电路图200,电路图200显示出如关于图1描述的多芯片装置100的某些元件的具体实现方式。图2包含主芯片220和次级芯片240,它们分别对应于主芯片120和次级芯片140。
若干多芯片互连接口FIFO,诸如多芯片互连接口Tx(MITx)FIFO 232a..232n和多芯片互连接口Rx(MIRx)FIFO 234a..234n,驻留于主芯片220上。虽然在图2中仅示出两个MITx FIFO和MIRx FIFO,但是可实现任何数量的这种FIFO而不脱离本发明的范围。
在次级芯片240上,实现协议栈244、收发器信道242a.242n以及若干MITx FIFO230a..230n和MIRx FIFO 236a..236n。协议栈244基本上对应于图1的协议栈144。收发器信道242a..242n基本上对应于图1的收发器信道142。在主芯片220和次级芯片240两者上实施的多芯片互连接口FIFO,以及串行移位链260,是图1的信道化多芯片互连接口(例如,MDII130和MDIC 150)的电路级实现方式。
在次级芯片240上实现的协议栈244可与两个协议层FIFO进行通信:应用接口发送(AITx)FIFO 246和应用接口接收(AIRx)FIFO 248。AITx FIFO 246从MITx FIFO230a..230n接收数据信号以中继到协议栈244,而AIRx FIFO 248从协议栈244将数据信号发送到MIRx FIFO 236a..236n。如先前关于图1描述的,协议层FIFO 246和248也可被称为源,而多芯片互连接口FIFO 230和236也可被称为图2中所示的接口的接收点。
在一个示例性实施例中,协议栈244需要宽同步协议数据总线(例如,256位)用于与PLD结构122上实现的协议应用层逻辑进行通信。同步协议数据总线与若干控制管脚关联,诸如分组数据开始(Start-of-Packet(SOP))、分细数据结束(End-of-Packet(EOP))、有效(Valid)和就绪(Ready)。SOP由源断言以标记分组数据的开始。EOP由源断言以标记分组数据的结束。Valid由源断言以使所有其他源到接收点信号取得资格。接收点仅在Valid被断言的周期采样源到接收点信号;忽略所有其他周期。最后,Ready由接收点断言以指示接收点能够接受数据。源仅可以断言Valid并在Ready周期期间传递数据。
如先前关于图1所讨论的,由于数据信道彼此独立操作,因此多芯片互连信道150中的数据信道可引起偏斜。为了解决这个问题并消除数据总线中的偏斜,信道化的多芯片互连接口中的多个信道可由同步信号(例如,多芯片互连接口中每个FIFO块的读/写使能信号)结合在一起。在一些实施例中,同步信号能够沿着FIFO结合连接件(bondingconnection)238传递。
作为这些其他方面的异步和独立数据信道的同步化操作的结果,数据和控制管脚(例如,如前面讨论的SOP、EOP、Ready、Valid等)能够跨越多芯片互连接口的多个信道分布,因为多个信道被有效地结合为同一束。多芯片互连接口(例如MDII 130和MDIC 150)中的任意数量的数据信道可结合在一起。以这种方式,未使用的数据信道能够用于其他功能,或重新用于其他协议应用层通信。
收发器信道242a..242n可通过复用单元的方式与互连FIFO耦合,以接收和发送源同步数据。在没有协议应用层通信的情况下,每个收发器信道可与一个或更多个MITx FIFO230a..230n进行通信以接收数据,并与一个或更多个MIRxFIFO 236a..236n进行通信以发送数据。
收发器锁相环(PLL)210能够在多芯片装置100上实现以向多芯片通信接口提供不同的时钟信号。特别地,收发器PLL 210可提供两个时钟信号:PLL固定时钟212和PLL固定时钟2X 214。PLL固定时钟2X 214基本上以两倍的PLL固定时钟212的速率运行。
PLL固定时钟212可以可选择地被细分以产生协议时钟信号211和互连1x时钟信号213。PLL固定时钟2x 214可以可选择地被细分以产生互连2x时钟信号215。协议时钟信号211用于驱动协议层FIFO(例如,AITx FIFO 246和AIRx FIFO 248)的运行。互连1x时钟信号213和互连2x时钟信号215共同地用于促进主芯片220和次级芯片240两者上的互连FIFO以支持数据管脚压缩和相位补偿。
互连FIFO以相位补偿模式运行,并以2∶1加速跨越多芯片互连信道150中的信道被实施。2∶1加速由主芯片220上的MITx FIFO 232a..232n和次级芯片240上的MIRx FIFO236a..236n使用互连1x时钟信号213和互连2x时钟信号215之间的2x关系来发起。在多芯片互连信道150中信道的另一端,次级芯片240上的MIFx FIFO 230a..230n和MIRx FIFO234a..234n以1∶2减速实施。2∶1加速和1∶2减速用于最小化给定宽总线通信所需要的管脚数,并需要2x时钟(例如,互连1x时钟信号213和互连2x时钟信号215)以驱动源同步互连传输。在一些实施例中,具有2x(即,2∶1)加速的互连FIFO在协议路径中表现为额外延迟。
如前面讨论的,源(例如,协议FIFO)仅可断言Valid并在由接收点(例如,互连FIFO150)断言的Ready周期期间发送数据。Ready->Valid反压延迟指示从Ready被断言的时间起直到能驱动Valid数据的周期数。作为由于跨越互连FIFO的2x加速的额外延迟的结果,协议层FIFO(例如,AITx FIFO 246和AIRx FIFO 248)应当具有足够的空间来解决增加的Ready->Valid反压延迟。
除了协议栈244和FIFO,电路图200也可包含串行移位链260。各种用户控制状态信息,诸如FIFO空标志,可跨越串行移位链260传达,以便在多芯片互连接口的信道上开始数据通信之前初始化IC芯片。
根据本发明的一个实施例的用于在多芯片装置的两个IC芯片之间实施多芯片互连的方法绘制于图3中。在310,宽协议接口的数据信号被分解成多个数据流。在320,在第一电路和第二电路之间建立握手信号。在一些实施例中,控制信号(例如,握手信号)选通接口信号直到两个芯片都已退出它们各自的复位周期。在正常操作期间,附加的控制(握手)信号管理两个芯片(例如,主芯片220和次级芯片240)之间的握手过程,以便Ready信号和Valid信号仅在适当时刻被置位(set)。在一些实施例中,异步串行移位链(例如,串行移位链260)需要在两个芯片之间传递控制(握手)信息。在330,多个数据流通过多芯片互连接口的多个信道从第一电路发送到第二电路。在340,多个数据流中的每个数据流基于握手信号被压缩。
如前面讨论的,为了减少多个数据流中的偏斜将多芯片互连接口的多个信道结合。FIFO结合可通过在多个异步FIFO块中运行共享的同步信号来实现。例如,第一FIFO块(例如,MITx FIFO 230n)可以是产生同步信号的主块。同步信号能够以FIFO结合238的方式而被馈送到其他FIFO块(例如,MIRx FIFO263n和MITx FIFO 230a)。在一些实施例中,同步信号控制并行异步FIFO块的读/写使能。以这种方式,异步FIFO块,其驻留于多芯片互连接口的独立和并行信道上,能够以同步方式运行以跨越IC芯片运送数据流,因此消除由独立异步复位引起的数据流上的偏斜。
如前面说明的,串行移位链,诸如串行移位链260,能够为异步控制和握手信号(例如,FIFO空标志)提供备选路径,其应当在数据流通过FIFO块发送之前被建立。串行移位链260使用独立振荡器过采样异步控制和握手信号以便初始化两个IC芯片。
因此可以看到,已经提供了一种用于在两个IC芯片之间实现多芯片互连的***和方法。
图4说明了数据处理***400内包含基于本文描述的模型设计或配置的电路***的实施例的电路或其他装置402。在一个实施例中,集成电路或装置402可以是集成电路、专用标准产品(ASSP)、专用集成电路(ASIC)、可编程逻辑器件(PLD)(包括现场可编程门阵列(FPGA)、全定制芯片或专用芯片)。在一些实施例中,元件402可配置为多芯片装置100、主芯片120或次级芯片140。数据处理***400可包含下面的组件中的一个或更多个:电路402、处理器406、存储器408、I/O电路***410和***装置412。这些组件通过***总线或其他互连420连接在一起,并位于终端用户***440中所包含的电路板430上。
***400可用在宽的各种应用中,诸如通信、计算机联网、数据联网、测试设备、视频处理、数字信号处理或任何其他的需要使用可编程或可重复编程逻辑优势的应用中。电路402可用于执行多种不同的逻辑功能。在一些实施例中,电路402可配置为与处理器406协同工作的处理器或控制器。电路402也可用作用于仲裁访问***400中的共享资源的仲裁器。在又一个其他的实例中,电路402能够配置为处理器406和***400中其他组件中的一个组件之间的接口。应当注意的是,***400仅是示例性的,并且本发明的真实范围和精神应当由下面的权利要求来指示。
虽然在上面发明中组件被描述为彼此连接的,但是它们可作为替代可能通过它们之间的其他组件彼此连接。应当理解的是,前述仅是本发明原理的说明,并且本领域技术人员能够作出各种修改而不脱离本发明范围和精神。本领域技术人员将明白的是,本发明能够以不同于描述的实施例的方式来实施,所描述的实施例是为了说明目的而存在,并非为了限制的目的,并且本发明仅由下面的权利要求来限定。
执行根据本发明的方法用于编程可编程装置以实现多芯片互连接口的指令可在机器可读介质上被编码,并由合适的计算机或类似装置执行以实现本发明的用于编程和配置PLD或其他可编程器件的方法。例如,个人计算机可装配有PLD能连接的接口,并且个人计算机能够由用户使用以用前面描述的合适的软件工具对PLD编程。
图5展示了磁数据存储介质500的横截面,磁数据存储介质500能够用机器可执行程序进行编码,这些程序能够由诸如前面提到的个人计算机或其他计算机或类似装置的***执行。介质500可以是软盘或硬盘,或磁带,介质500具有合适的基底501和合适的涂层(coating)502,基底501和涂层502可以是常规的,涂层可在一面或两面上,涂层包含极生或取向能够被磁力地改变的磁畴(不可见)。除了是磁带这种情况外,介质500也可具有开口(未示出)用于接收磁盘驱动器或其他数据存储装置的主轴。
根据本发明,介质100的涂层502的磁畴被极化或定向,使得可以常规的方式编码机器可执行程序,通过诸如个人计算机或其他计算机或类似***的编程***来执行,***具有插口或***附件以便被编程的PLD可***,从而配置包含其专业化处理块的PLD的合适部分,如果有的话。
图6示出光学可读数据存储介质510的横截面,可读数据存储介质510也能够用这种机器可执行程序进行编码,机器可执行程序能够用诸如前面提到的个人计算机、或其他计算机或类似装置来执行。介质51O可以是常规的光盘只读存储器(CD-ROM)或数字视频光盘只读存储器(DVD-ROM)或可重写介质诸如CD-R、CD-RW、DVD-R、DVD-RW、DVD+R、DVD+RW或DVD-RAM或磁-光盘,磁-光盘是光学可读的并且是磁-光可重写的。介质510优选具有合适的基底511和合适的涂层512,基底511和涂层512可以是常规的,涂层512通常在基底511的一面或两面上。
在基于CD的或基于DVD的介质的情况下,如众所周知的,涂层512是反射性的,并且压印有多个凹坑513,凹坑配置在一层或更多层上,以编码机器可执行程序。可通过将激光反射离开涂层512的表面来读取凹坑的布置。保护涂层514安置在涂层512的顶部,其优选是实质上透明的。
在磁-光盘的情况下,如众所周知的,涂层512没有凹坑513,但是具有多个磁畴,当被加热到特定温度以上时,如通过激光(未示出)加热,这些磁畴的极性或取向可被磁力地改变。畴的取向能够通过测量由涂层512反射的激光的极性来读取。如前面所述的畴的布置对程序进行编码。
应当理解的是,前面仅是本发明原理的说明,并且本领域技术人员可作出各种修改而不脱离本发明范围和精神,并且本发明仅由下面的权利要求来限定。例如,本文已经讨论的本发明各个方面能够在某些实施例中或全部一起使用,或其他实施例可仅使用本发明的各个方面中的一个或更多个(但是少于全部)。并且如果使用了本发明的多个方面(但少于全部),那么能够涉及利用本发明各个方面的任意组合。贯穿本发明,作为可能修改的其他实例,可涉及控制器中使用的特定数量的组件。这些特定数量仅是示例,并且如果需要能够代替使用其他合适参数值。

Claims (24)

1.一种支持跨越具有多信道的多芯片互连的宽协议接口的方法,该方法包含:
将宽协议接口的数据信号分解成多个数据流;
在第一电路和第二电路间建立握手信号;
通过所述多芯片互连的多个信道,将所述多个数据流从第一电路发送到第二电路;以及
基于握手信号压缩所述多个数据流的每个数据流。
2.权利要求1的方法,其中压缩多个数据流的每个数据流进一步包含:
驱动多个数据流的第一数据流以2∶1加速比通过第一先进先出块即第一FIFO块并以1∶2减速比通过第二FIFO块;以及
驱动多个数据流的第二数据流以2∶1加速比通过第三FIFO块并以1∶2减速比通过第四FIFO块。
3.权利要求2的方法,进一步包含通过结合第一FIFO块和第三FIFO块以及结合第二FIFO块和第四FIFO块来结合所述多个多芯片互连信道以降低多个数据流中的偏斜。
4.权利要求2的方法,进一步包含:
确定协议层FIFO中剩余的容量;
基于握手信号确定与第一FIFO块和第二FIFO块关联的反压延迟;以及
基于反压延迟调整协议层FIFO中剩余的容量。
5.权利要求1的方法,其中在第一电路和第二电路间建立握手信号进一步包含通过串行移位链发送和接收握手信号。
6.权利要求1的方法,其中第一电路和第二电路是多芯片装置中的芯片。
7.权利要求1的方法,进一步包含:
收集与宽协议接口的数据信号关联的控制信号;以及
跨越多个数据流分解控制信号。
8.一种集成电路多芯片装置,包含:
包含宽协议接口的第一电路,第一电路配置成将宽协议接口的数据信号分解成多个数据流;
包含可编程逻辑架构的第二电路;
串行移位链,配置成在第一电路和第二电路间建立握手信号;以及
多个多芯片互连先进先出块即多个多芯片互连FIFO块,配置成:
将多个数据流从第一电路发送到第二电路;以及
基于握手信号压缩多个数据流中的每个数据流。
9.权利要求8的集成电路,其中所述多个多芯片互连FIFO块进一步配置成:
驱动多个数据流的第一数据流以2∶1加速比通过第一FIFO块并以1∶2减速比通过第二FIFO块;以及
驱动多个数据流的第二数据流以2∶1加速比通过第三FIFO块并以1∶2减速比通过第四FIFO块。
10.权利要求9的集成电路,其中多个多芯片互连FIFO块进一步配置成结合第一FIFO块和第三FIFO块以及结合第二FIFO块和第四FIFO块来降低多个数据流中的偏斜。
11.权利要求9的集成电路,其中第二电路进一步配置成:
确定协议层FIFO中剩余的容量;
基于握手信号确定与第一FIFO块和第二FIFO块关联的反压延迟;以及
基于反压延迟调整协议层FIFO中剩余的容量。
12.权利要求8的集成电路,其中第一电路和第二电路是多芯片装置中的芯片。
13.权利要求8的集成电路,其中第一电路进一步配置成:
收集与宽协议接口的数据信号关联的控制信号;以及
跨越多个数据流分解控制信号。
14.一种配置可编程逻辑装置的方法,该可编程逻辑装置包含第一电路和第二电路,该方法包含:
配置串行移位链以在第一电路和第二电路间建立握手信号;
配置第一电路以将宽协议接口的数据信号分解成多个数据流;以及
将第一电路和第二电路上的多个多芯片互连先进先出块即多个多芯片互连FIFO块配置为:
将多个数据流从第一电路发送到第二电路;以及
基于握手信号压缩多个数据流中的每个数据流。
15.权利要求14的方法,其中配置多个FIFO块进一步包含:
配置多个FIFO块以驱动多个数据流的第一数据流以2∶1加速比通过第一FIFO块并以1∶2减速比通过第二FIFO块;以及
配置多个FIFO块以驱动多个数据流的第二数据流以2∶1加速比通过第三FIFO块并以1∶2减速比通过第四FIFO块。
16.权利要求14的方法,进一步包含:
配置第一FIFO块以与第三FIFO块结合以降低多个数据流中的偏斜;以及配置第二FIFO块以与第四FIFO块结合以降低多个数据流中的偏斜。
17.权利要求15的方法,进一步包含:
配置第二电路以确定协议层FIFO中剩余的容量;
配置第二电路以基于握手信号来确定与第一FIFO块和第二FIFO块关联的反压延迟;以及
配置第二电路以基于反压延迟来调整协议层FIFO中剩余的容量。
18.权利要求14的方法,其中第一电路和第二电路是多芯片装置中的芯片。
19.权利要求14的方法,进一步包含:
配置第一电路来收集与宽协议接口的数据信号关联的控制信号;以及
配置第一电路来跨越多个数据流分解控制信号。
20.一种非瞬时机器可读存储介质,其编码有用于执行配置具有第一电路和第二电路的可编程集成电路装置的方法的指令,该指令包含:
配置串行位移链以在第一电路和第二电路间建立握手信号的指令;以及
配置第一电路以将宽协议接口的数据信号分解成多个数据流的指令;以及
将第一电路和第二电路上的多个多芯片互连先进先出块即多个多芯片互连FIFO块配置为执行以下操作的指令:
将多个数据流从第一电路发送到第二电路;以及
基于握手信号压缩多个数据流中的每个数据流。
21.权利要求20的非瞬时机器可读存储介质,其中配置多个FIFO块的指令进一步包含:
配置多个FIFO块以驱动多个数据流的第一数据流以2∶1加速比通过第一FIFO块并以1∶2减速比通过第二FIFO块的指令;以及
配置多个FIFO块以驱动多个数据流的第二数据流以2∶1加速比通过第三FIFO块并以1∶2减速比通过第四FIFO块的指令。
22.权利要求21的非瞬时机器可读存储介质,其中指令进一步包含结合多个多芯片互连信道以降低多个数据流中的偏斜的指令。
23.权利要求21的非瞬时机器可读存储介质,其中指令进一步包含配置第二电路以执行以下操作的指令:
确定协议层FIFO中剩余的容量;
基于握手信号确定与第一FIFO块和第二FIFO块关联的反压延迟;以及
基于反压延迟调整协议层FIFO中剩余的容量。
24.权利要求20的非瞬时机器可读存储介质,其中指令进一步包含配置第一电路以执行以下操作的指令:
收集与宽协议接口的数据信号关联的控制信号;以及
跨越多个数据流分解控制信号。
CN201610908365.3A 2015-09-03 2016-09-02 分布式多芯片协议应用接口 Active CN106549843B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910947788.XA CN110691021B (zh) 2015-09-03 2016-09-02 分布式多芯片协议应用接口

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/844,920 2015-09-03
US14/844,920 US10162789B2 (en) 2015-09-03 2015-09-03 Distributed multi-die protocol application interface

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910947788.XA Division CN110691021B (zh) 2015-09-03 2016-09-02 分布式多芯片协议应用接口

Publications (2)

Publication Number Publication Date
CN106549843A true CN106549843A (zh) 2017-03-29
CN106549843B CN106549843B (zh) 2019-11-05

Family

ID=56936275

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910947788.XA Active CN110691021B (zh) 2015-09-03 2016-09-02 分布式多芯片协议应用接口
CN201610908365.3A Active CN106549843B (zh) 2015-09-03 2016-09-02 分布式多芯片协议应用接口

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910947788.XA Active CN110691021B (zh) 2015-09-03 2016-09-02 分布式多芯片协议应用接口

Country Status (3)

Country Link
US (6) US10162789B2 (zh)
EP (1) EP3139551B1 (zh)
CN (2) CN110691021B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10344204B2 (en) 2015-04-09 2019-07-09 Diversion Technologies, LLC Gas diverter for well and reservoir stimulation
US10012064B2 (en) 2015-04-09 2018-07-03 Highlands Natural Resources, Plc Gas diverter for well and reservoir stimulation
US10162789B2 (en) 2015-09-03 2018-12-25 Altera Corporation Distributed multi-die protocol application interface
US10982520B2 (en) 2016-04-27 2021-04-20 Highland Natural Resources, PLC Gas diverter for well and reservoir stimulation
KR102315325B1 (ko) 2017-07-05 2021-10-19 삼성전자주식회사 반도체 패키지
US11721651B2 (en) 2020-09-29 2023-08-08 Xilinx, Inc. Communication between integrated circuit (IC) dies in wafer-level fan-out package

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188699B1 (en) * 1997-12-11 2001-02-13 Pmc-Sierra Ltd. Multi-channel encoder/decoder
CN1586022A (zh) * 2001-11-14 2005-02-23 马科尼通讯股份有限公司 多芯片模块
US20120027026A1 (en) * 2010-07-28 2012-02-02 Keith Duwel Scalable interconnect modules with flexible channel bonding
US20150156284A1 (en) * 2013-11-07 2015-06-04 Integrated Device Technology, Inc. Methods and apparatuses for a unified compression framework of baseband signals
US20150156141A1 (en) * 2013-12-04 2015-06-04 Sony Corporation Data processing device and data processing method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006318A (en) * 1995-08-16 1999-12-21 Microunity Systems Engineering, Inc. General purpose, dynamic partitioning, programmable media processor
CN100359856C (zh) * 2003-12-26 2008-01-02 劲永国际股份有限公司 一种数据传输接口与串列总线接口装置
KR100889730B1 (ko) * 2006-12-01 2009-03-24 한국전자통신연구원 직접 메모리 접근 제어 방법 및 장치
US8977788B2 (en) * 2008-08-13 2015-03-10 Intel Corporation Observing an internal link via an existing port for system on chip devices
US8165191B2 (en) 2008-10-17 2012-04-24 Altera Corporation Multi-protocol channel-aggregated configurable transceiver in an integrated circuit
US9146610B2 (en) * 2010-09-25 2015-09-29 Intel Corporation Throttling integrated link
US8972707B2 (en) * 2010-12-22 2015-03-03 Via Technologies, Inc. Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin
US9040348B2 (en) * 2011-09-16 2015-05-26 Altera Corporation Electronic assembly apparatus and associated methods
US8972640B2 (en) * 2012-06-27 2015-03-03 Intel Corporation Controlling a physical link of a first protocol using an extended capability structure of a second protocol
CN103685086B (zh) * 2012-09-07 2017-05-24 北京信威通信技术股份有限公司 一种支持多芯片架构的基带信号处理器及其处理方法
US9367114B2 (en) * 2013-03-11 2016-06-14 Intel Corporation Controlling operating voltage of a processor
CN103178996B (zh) * 2013-03-15 2015-07-01 烽火通信科技股份有限公司 分布式包交换芯片模型验证***及验证方法
US9489009B2 (en) * 2014-02-20 2016-11-08 Samsung Electronics Co., Ltd. System on chip, bus interface and method of operating the same
CN104735053A (zh) * 2015-01-28 2015-06-24 上海兰宝传感科技股份有限公司 基于spi总线以及modbus通讯协议的多cpu控制***
US10162789B2 (en) * 2015-09-03 2018-12-25 Altera Corporation Distributed multi-die protocol application interface
US10372158B2 (en) * 2016-09-16 2019-08-06 Apple Inc. Inter-chip time synchronization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6188699B1 (en) * 1997-12-11 2001-02-13 Pmc-Sierra Ltd. Multi-channel encoder/decoder
CN1586022A (zh) * 2001-11-14 2005-02-23 马科尼通讯股份有限公司 多芯片模块
US20120027026A1 (en) * 2010-07-28 2012-02-02 Keith Duwel Scalable interconnect modules with flexible channel bonding
US20150156284A1 (en) * 2013-11-07 2015-06-04 Integrated Device Technology, Inc. Methods and apparatuses for a unified compression framework of baseband signals
US20150156141A1 (en) * 2013-12-04 2015-06-04 Sony Corporation Data processing device and data processing method

Also Published As

Publication number Publication date
US11169951B2 (en) 2021-11-09
EP3139551A1 (en) 2017-03-08
EP3139551B1 (en) 2018-03-07
US20200183877A1 (en) 2020-06-11
US20190179792A1 (en) 2019-06-13
US10936531B2 (en) 2021-03-02
US20170068638A1 (en) 2017-03-09
CN110691021A (zh) 2020-01-14
CN110691021B (zh) 2022-02-15
US11657016B2 (en) 2023-05-23
US10162789B2 (en) 2018-12-25
US20210064566A1 (en) 2021-03-04
CN106549843B (zh) 2019-11-05
US20220066977A1 (en) 2022-03-03
US10565155B2 (en) 2020-02-18
US20230289319A1 (en) 2023-09-14

Similar Documents

Publication Publication Date Title
CN106549843B (zh) 分布式多芯片协议应用接口
US9042404B2 (en) Scalable interconnect modules with flexible channel bonding
US9979432B2 (en) Programmable distributed data processing in a serial link
TWI400465B (zh) 經由第二鏈結以觀察內部鏈結
CN101496367B (zh) 串行互联多通道的对齐和纠偏的方法及发送器
CN108255761A (zh) 集成电路管芯之间的接口桥
KR101679333B1 (ko) 트랜잭션 계층 패킷의 싱글 엔드형 통신을 위한 방법, 장치 및 시스템
JP2004520778A (ja) スキュー耐性のないデータグループを有するパラレルデータ通信
US20190238179A1 (en) Valid lane training
US11693813B2 (en) Alternative protocol over physical layer
US8260994B2 (en) Interface for prototyping integrated systems
CN107181702A (zh) 一种实现RapidIO和以太网融合交换的装置
WO2023113959A1 (en) Systems and methods for configurable interface circuits
US7657804B2 (en) Plesiochronous transmit pin with synchronous mode for testing on ATE
US11243856B1 (en) Framing protocol supporting low-latency serial interface in an emulation system
CN104321714B (zh) 至少部分地由晶片制成并且包括至少一个复制的集成电路的至少一个管芯
CN103825757A (zh) 一种以太无源光网络***的管理口连接方法
CN101257418B (zh) 误码产生的方法和装置以及实现误码***的***
CN118363919A (zh) 用于多fpga平台的全透明波形编解码和恢复重建方法

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