计算机系统中在一芯片集中的存储器控制器集线器(204)和输入/输出集线器(206)之间传送数据的一种接口。该接口的一个具体实例,包括一个双向数据信号通道(202)和一对源同步选通信号。该数据信号通道借助分离事务以信息包的形式传送数据。此外,这些信息包中包括一个请求信息包,和一个完成信息包,如有必要。而且,在一个具体实例中,请求信息包还包括一个事务描述符。(*该技术在2019年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术涉及计算机系统领域。特别是涉及在计算机组件间提供一种改进的接口这一领域。
技术介绍
现代计算机系统包括一个与系统存储器(103)相连接的中央处理器(CPU 101)(即CPU/memory子系统)。如图1所示,数据和其它信号通过一个一般叫做主桥105的组件在CPU和系统存储器之间传输。主桥105也可以为计算机内的其它组件和/或子系统提供一个通往CPU/memory子系统的接口。例如,如图1进一步所示,外设组件(如键盘109、硬盘驱动器110和/或鼠标111)可以通过输入/输出(I/O)桥107相互连接。I/O桥107又可以与主桥105连接,为外设与CPU/memory子系统之间提供一个接口。虽然,附加外部总线也可与I/O桥107和CPU/memory子系统间的这个接口相连。但结果会使I/O桥107和CPU/memory子系统间的这个接口进一步复杂化,而且受到连接I/O桥107和CPU/memory子系统间接口的外部总线113(如PCI)的规定/要求的限制。所以,在外设组件和处理器/存储器子系统间需要一种改进的接口。专利技术概述本专利技术提供一种在计算机系统内分离的集线器之间传送数据的接口。它包含一个借助分类事务以信息包形式在集线器之间传输数据的数据信号通道。在一个具体实例中,数据是以源同步模式传输的。此外,在一个具体实例中,如果需要,传送数据的信息包还包含一个请求包和一个完成包。而且,在一个具体实例中,信息包中包含事务描述符。 附图说明本专利技术以举例的方式来说明。而且不限于附图中的内容。附图中相同的标号表示相同的部件。其中图1表示按过去的技术,在计算机组件之间实现接口的一个计算机系统。图2是一个在计算机组件间实现了改进的接口的计算机系统的一个具体实例的方框图。图3是一个说明由一个具体实例接口实现的分类事务的时间图。图4是一个在计算机组件间实现了分级的具有多个改进接口的计算机系统具体实例的方框图。图5说明根据一个具体实例的数据包仲裁和传送的时间图。图6说明根据一个具体实例的数据包流控制信息的时间图。图7是根据一个具体实例描述相应流控制操作的步骤的流程图。图8说明根据一个具体实例的物理信号接口。图9是根据一个具体实例说明源同步时钟的时间图。图10说明根据一个具体实例的在计算机组件之间实现改进接口的具有多个处理器的计算机系统。详细说明现在描述一个计算机组件之间的改进的接口。此接口在此或称为集线器链路(hub link)。集线器链路是一个通过窄而高的带宽接口连接核心逻辑构件的接口。如图2所示,一个集线器链路的具体实例提供的各组件具有点对点接口。但在其它替代具体实例中,集线器链路可以为三个或更多的组件之间提供接口。更具体地说,图2说明了一个集线器链路204的具体实例,其原来用来连接一芯片集(chipset)中的两个分离的组件(即集线器代理hub agents)。集线器代理为两个或两个以上的分离总线和/或其它类型的通讯线路提供一个中央连接。如图2进一步所示,所述芯片集中包括一个存储器控制器集线器204(MCH)和一个输入/输出(I/O)集线器206。如图2所示,存储器控制器集线器204在一个或多个中央处理器208(CPU)和系统存储器210之间提供了相互连接/集线器。I/O集线器206为系统内的各种外设组件(如键盘208,硬盘驱动器224,扫描器222和/或鼠标220)提供了一个相互连接。而且,外部总线和它们的代理(如PCI总线212和PCI代理214)通过集线器链路202间接地与存储器210和CPU 208相连接,它们与I/O集线器206连接,而不是直接与存储器控制器集线器204连接。通过运用这种集线器链路来连接存储器控制器集线器204和I/O集线器206,改善了I/O组件和CPU/memory子系统之间的访问状况(如增加了带宽、协议独立性和较少的等待时间)。此外,这种集线器链路还可以通过给I/O构件提供一个主通道来改善计算机系统的可升级性(如从一个基本的桌上电脑平台升级为高端桌上电脑平台或工作站平台)。为了提供的改进接口,集线器链路含有一个或多个的独特的特性。在一个具体实例中,事务是用一个基于分离事务协议的信息包通过该集线器链路来传送的。例如,用一个请求包来启动一个事务,如果需要,接着再用一个独立的完成包来终止一个事务。图3是说明分离事务通过这种集线器链路的一个例子。如图3所示,开始时,集线器代理通过仲裁302获得集线器链路的所有权。仲裁之后,产生一个请求状态304,如果需要(如在读事务的返回数据情况下),一个完成状态308将跟随这个请求状态。但是,在完成状态之前,响应的集线器代理,首先经仲裁306拥有集线器链路的所有权。在发送通过集线器链路的请求包和相应的完成包之间的时间里,一些独立的无关的信息包可以按照预定的顺序法则通过该集线器链路传送。如下面将更详细地讨论的。例如,在从某个外设发往存储器的读请求情况下,规定被请求数据需要若干时钟周期才能准备好在完成包中返回数据。在获得被请求数据所需要的时间内,一些在存储器控制器集线器204的队列/通道内等候的独立的无关的完成包和/或请求包可被传送到I/O集线器206。而且,如图3所示,每一个请求和完成是作为一个通过此接口的信息包来传送的。对写入型事务来说,数据是与请求相关联的,对读出型事务来说,数据将与完成有关。在某些情况下,即当完成包被断开,实际上其被分成多个完成包时,一个请求将有一个以上的完成。另外,在一个具体实例中,集线器链路用事务描述符来安排集线器链路信息流的程序和识别某个事务的特征。例如,描述符可以用来将某个事务定义为同步的或异步的,然后可以按照事先规定的协议进行处理。而且,在一个具体实例中,接口带宽由于通过源同步时钟模式传送数据包而部分的增加了。更进一步,在一个具体实例中,尽管使用了窄的接头(如较少的插头/插座),集线器链路仍提供了较宽的带宽。然而,在不脱离本专利技术范围的情况下,其它具体实例中的集线器链路可能只具备以上讨论的部分特性,。而且,这种集线器链路也可能用来将(计算机)内部的或外部的桥以及和/或其它组件连接到一芯片集上,这也在本专利技术的范围之内。事务、协议和物理层为了更清楚起见,用三个部分描述集线器链路事务层、协议层和物理层。但是,各层之间的区别是在说明意义上而不是在限制意义上来考虑的,因此这些区别并不意味着是一个特殊的优选实施例。事务层在一个集线器链接的具体实例中,事务层支持通过集线器链路传送的独立事务(它可能由一个或多个信息包组成)的路由。例如在一个具体实例中,产生事务描述符的集线器链路的事务层包含在请求包和数据包中。事务描述符可以用来支持集线器代理(如MCH)中队列的仲裁,和/或用来促进通过此集线器链路的请求包和数据包的路由。例如在一个具体实例中,事务描述符支持完成包返回初始请示代理的路由,这种路由是基于最初提供的(在请求包内的)路由信息。事务描述符还有助于把集线器代理内的码解包逻辑减小或最小化。在另外的具体实例中,事务描述符还能根据各个请求处各自的事务特征提供区分其处理请求的能力。例如,在事务描述符中区分的事务特征可以识别同步操作Isochronous(即在常规基础上移动固定数量的数据的操作,如视频或音频实时操作)。结果,这种由事本文档来自技高网...
【技术保护点】
在一个计算机系统内的第一集线器和第二集线器之间直接传输数据的接口,它包括: 一个通过分类事务以信息包形式传送数据的数据信号通道;和 一组指令信号。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:J阿亚诺维克,DJ哈里曼,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。