半导体装置、操作半导体装置的方法和包括该装置的系统与流程

文档序号:14195042阅读:143来源:国知局
半导体装置、操作半导体装置的方法和包括该装置的系统与流程

相关申请的交叉引用

本申请要求于2016年10月5提交的韩国专利申请no.10-2016-0128398的优先权,其该申请的内容以引用方式并入本文中。

本发明构思涉及半导体装置、半导体系统及其操作方法。



背景技术:

术语外围设备互连(pci)指与电子装置之间的数据相互通信关联的不断发展的技术规范。快速pci(pcie)是pci的扩展并且提供了广泛用于计算工业中的接口协议,以有助于在半导体装置之间或者在包括在半导体系统中的装置之间高速传输数据。pcie接口协议被充分记录为一种串行数据传输接口协议。因此,可容易获得诸如由被称作pcisig的组织公布的“快速pci基础规范3.1a版”的特定pcie技术规范。(参见例如https://pcisig.com/)。下文中,将本领域技术人员在常规上可接受的所有有关文献(全部或一部分并且包括相关的近期更新)称作“pcie技术规范”。

如pcie技术规范中详细描述的,pcie技术提供了一种可用于同时发送和接收数据的双向连接。在该语境中,术语“同时”意指能够用于pcie的装置发送数据的时间段与该装置接收数据的时间段至少部分地重叠。双向连接可包括单工发送路径和单工接收路径。为了强调这种结构,通过pcie接口协议限定的双向连接模型还可被称作双单工连接模型。有鉴于此,可替代性地将装置说成是“pcie可用的”、“能够用于pcie的”或者能够“在pcie环境下操作”,其实质上包并入了pcie技术规范指明的特征和性能。

能够用于pcie的装置之间的发送和接收路径被称作“链路”,其中链路包括至少一对发送和接收路径。这里,构成一个这种“对”的发送和接收路径可被称作“通路”。关于这一点,将包括在链路中的通路数量定义为对应的“链路宽度”。

为了使pcie装置能够发送和接收数据,必须执行用于限定(或“设置”)pcie接口协议的物理层中的链路的初始化程序。然而,不能确保初始化程序的成功执行,并且一个或多个通路的设置可失效。例如,如果不能建立数据发送路径,则在初始化程序中可不设置通路。在发生“失效通路”的情况下,pcie装置应该利用一个或多个其它通路建立链路。



技术实现要素:

一方面,本发明构思提供了一种半导体装置,即使作为在pcie装置之间设置链路的结果存在一个或多个失效通路,该半导体装置也能够使pcie装置之间的链路宽度最大化。

在另一方面,本发明构思提供了一种类似地能够使pcie装置之间的链路宽度最大化的半导体系统。

在又一方面,本发明构思提供了一种操作半导体装置或半导体系统的方法,即使作为在pcie装置之间设置链路的结果存在一个或多个失效通路,所述半导体装置或半导体系统也能够使pcie装置之间的链路宽度最大化。

然而,本发明构思的实施例不仅限于这些列出的方面,并且本公开中阐述的本发明构思的其它方面将对于本领域普通技术人员变得更清楚。

根据本发明构思的一个实施例,提供了一种能够用于pcie的半导体装置,包括:分别被构造为在pcie环境中发送和接收数据的各个端口;以及pcie控制器,其被构造为在能够用于pcie的半导体装置与另一能够用于pcie的半导体装置之间设置链路,其中,所述链路包括在各个端口中的至少一个端口上实施的至少一个通路,并且pcie控制器包括链路训练和状况状态机(ltssm),其被构造为根据各个端口的第一排序执行第一通路号协商并根据与各个端口的第一排序不同的各个端口的第二排序执行第二通路号协商,并且根据第一通路号协商和第二通路号协商的结果确定链路的最佳链路宽度。

根据本发明构思的另一实施例,提供了一种能够用于pcie的半导体装置,包括:分别被构造为在pcie环境中发送和接收数据的n个端口,‘n’是大于二的正整数;以及pcie控制器,其被构造为在能够用于pcie的半导体装置与另一能够用于pcie的半导体装置之间设置链路,其中,链路包括利用n个端口之一分别建立的‘m’个通路,‘m’是不大于n的正整数,其中,pcie控制器包括链路训练和状况状态机(ltssm),其被构造为:根据各个端口的第一排序执行第一通路号协商以产生第一通路数量,并且将第一通路数量与参考值m/2进行比较,并且如果第一通路数量不小于参考值,则确定链路的最佳链路宽度对应于第一通路数量,否则如果第一通路数量小于参考值,则根据各个端口的第二排序执行第二通路号协商以产生第二通路数量,并且确定链路的最佳链路宽度对应于第二通路数量。

根据本发明构思的另一实施例,提供了一种pcie系统,其包括能够用于pcie的第一半导体装置和能够用于pcie的第二半导体装置,其中,第一半导体装置建立链路,所述链路包括分别被构造为经多个端口中的一个端口发送和接收数据的各个通路,所述多个端口在pcie环境中连接第一半导体装置和第二半导体装置;并且第一半导体装置被构造为根据各个端口的第一排序执行第一通路号协商并根据与各个端口的第一排序不同的各个端口的第二排序执行第二通路号协商,并且根据第一通路号协商和第二通路号协商的结果确定链路的最佳链路宽度。

根据本发明构思的另一实施例,提供了一种pcie系统,其包括能够用于pcie的第一半导体装置和能够用于pcie的第二半导体装置,其中,第一半导体装置建立包括m个通路的链路,所述m个通路分别被构造为经n个端口中的一个端口发送和接收数据,所述n个端口在pcie环境中连接第一半导体装置和第二半导体装置,‘n’是大于二的正整数,‘m’是不大于n的正整数,并且第一半导体装置根据各个端口的第一排序执行第一通路号协商以产生第一通路数量,并且将第一通路数量与参考值m/2进行比较,并且如果第一通路数量不小于参考值,则确定链路的最佳链路宽度对应于第一通路数量,否则如果第一通路数量小于参考值,则根据各个端口的第二排序执行第二通路号协商以产生第二通路数量,并且确定链路的最佳链路宽度对应于第二通路数量。

根据本发明构思的另一实施例,提供了一种操作pcie系统的方法,所述pcie系统包括能够用于pcie的第一半导体装置和能够用于pcie的第二半导体装置。所述方法包括步骤:利用第一半导体装置在第一半导体装置与第二半导体装置之间设置链路,其中,链路包括各个通路,每个通路分别连接第一半导体装置的一个端口和第二半导体装置的对应端口。链路的设置包括:执行第一通路号协商和第二通路号协商中的至少一个,其中根据连接第一半导体装置和第二半导体装置的各个端口的第一排序关于各个端口执行第一通路号协商,根据与连接第一半导体装置和第二半导体装置的各个端口的第一排序不同的各个端口的第二排序关于各个端口执行第二通路号协商;根据第一通路号协商和第二通路号协商的结果确定链路的最佳链路宽度。

根据本发明构思的另一实施例,提供了一种操作能够用于pcie的半导体装置的方法,其中所述能够用于pcie的半导体装置包括:分别被构造为在pcie环境中发送和接收数据的n个端口,‘n’是大于二的正整数;以及被构造为在能够用于pcie的半导体装置与另一能够用于pcie的半导体装置之间设置链路的pcie控制器,其中,链路包括利用n个端口之一分别建立的‘m’个通路,‘m’是不大于n的正整数。所述方法包括步骤:根据各个端口的第一排序执行第一通路号协商以产生第一通路数量,并且将第一通路数量与参考值m/2进行比较;以及如果第一通路数量不小于参考值,则确定链路的最佳链路宽度对应于第一通路数量,否则,如果第一通路数量小于参考值,则根据各个端口的第二排序执行第二通路号协商以产生第二通路数量,并且确定链路的最佳链路宽度对应于第二通路数量。

附图说明

图1是描述根据本发明构思的实施例的半导体系统的概念图。

图2至图5分别是示出根据本发明构思的实施例的在pcie装置之间设置链路的方式的框图。

图6至图9分别是示出根据本发明构思的实施例的在pcie装置之间设置链路的另一方式的框图。

图10至图14分别是示出根据本发明构思的实施例的在pcie装置之间设置链路的另一方式的框图。

图15是将根据本发明构思的实施例的操作半导体装置的方法总结为一个示例的流程图。

具体实施方式

下文中,将参照以上附图描述本发明构思的特定实施例。然而,应该注意,本发明构思的范围不仅限于示出的实施例。

图1是描述根据本发明构思的实施例的半导体系统的概念图。

参照图1,半导体系统通常包括第一pcie装置100和第二pcie装置200。第一pcie装置100和第二pcie装置200被构造为利用pcie接口协议发送和接收数据。从对有关技术规范的回顾中应该清楚,pcie架构可被理解为包括多个“层”,其包括物理层(pl)、数据链路层(dl)、事务层(tl)和软件层(sl)。

pl对应于最下面的层,并且在pcie装置之间连续地发送通过dl产生的数据分组。参照图1,pl在pcie装置100和200之间提供通过发送(tx)和接收(rx)形成的链路。经限定的链路(link)在pcie装置100和200之间交换具有限定的格式的数据分组。

dl对应于布置在pl上(或者通过pl功能性启用)的层,并且提供确保经链路的分组传输的可靠性的特定功能,以及管理链路的相关功能。例如,dl可用于将序列号、循环冗余检查(crc)信息等等加至通过tl产生的分组。

tl接收数据和/或发送数据以及根据sl限定的相关请求和/或确认。因此,可使用tl来产生请求分组,并且将请求分组转移至dl。此外,可使用tl从dl接收响应分组,并且将接收到的响应分组与从sl接收的数据读或写请求匹配。

sl对应于未明确通过pcie技术规范限定的最上面的层,可包括用于驱动pcie装置的软件,用于从用户或主机应用接收数据读请求或写请求的软件,以及用于将对数据读请求或写请求的响应提供给用户或主机应用的软件。

可通过pcie技术规范的资源获得更多的关于物理层(pl)、数据链路层dl、事务层(tl)和软件层(sl)的特定信息。

再参照图1,假设第一pcie装置100的pl包括链路训练和状况状态机(ltssm)150。虽然图1中未示出,但是第二pcie装置200也可包括ltssm。在这点上,本领域普通技术人员应该理解,可从对pcie技术规范的回顾中理解示例性ltssm。例如,在本发明构思的特定实施例中,ltssm150可构造在通过连接的pcie装置之一或二者提供的pcie控制器中(或者利用其资源构造),但是本发明构思的范围不限于此。

在这点上,本发明构思的特定实施例将使用被构造为与根复合体相关地操作的pcie控制器。再一次说明,在pcie技术规范中提供了根复合体的更详细的描述。

在下面的示出的实施例的描述中,假设根复合体用于控制第一pcie装置100的ltssm150的操作。因此,第一pcie装置100的ltssm150可包括十一(11)个状态:检查、轮询、构造、恢复、l0、l0s、l1、l2、热复位、环回(loopback)和禁用。并且ltssm150可用于根据pcie接口协议执行与数据的发送关联的各种任务,同时在十一种状态中的任一种状态下操作。在pcie技术规范中提供了与十一种状态关联的定义,并且通常遵照在pcie技术规范中描述的ltssm的定义来实施ltssm150。

因此,第一pcie装置100的ltssm150运行(或执行)用于设置pcie装置100和200之间用于发送和接收数据的链路的初始化程序。如上所述,将pcie装置之间的发送路径和接收路径定义为链路。链路包括至少一对发送和接收路径。构成一对的发送和接收路径限定了一个通路,并且构成一个链路的通路的数量被称作链路宽度。

第一pcie装置100的ltssm150执行链路号协商和通路号协商,以与第二pcie装置一起设置链路。在这些协商中,ltssm150还确定通路是否正常操作,选择用于数据传输以建立链路的通路,并且确定链路宽度。

为了执行链路号协商和通路号协商,第一pcie装置100的ltssm150将信号发送至第二pcie装置200,并且利用ts1有序集合从第二pcie装置200接收信号。在pcie技术规范中限定了关于ts1有序集合的特定信息。

这里应该注意,与先前的pci技术不同,pcie技术采用串行传输接口。因此,pcie技术规范限定了高速串行输入/输出(i/o)接口。因此,应该理解,可在所谓的“pcie环境”以及更加通用的“高速串行i/o环境”中实施在pcie技术规范中描述的各种示例。

下文中,将参照图2至图5描述运行使得pcie装置100的ltssm150能够设置链路的初始化程序的一种方式。

图2至图5分别是示出根据本发明构思的实施例的用于在pcie装置之间设置链路的一个可能的初始化程序的框图。

参照图2,第一pcie装置100包括第一pcie接口连接器110,第二pcie装置200包括第二pcie接口连接器220。根据pcie接口协议,根据在pcie技术规范中针对数据传输的目的限定的标准来实施这些pcie接口连接器110和220。

第一pcie接口连接器110包括多个端口p0至p7,第二pcie接口连接器220也包括多个端口p0至p7。

在该实施例中,为了便于解释,示出了第一pcie接口连接器110和第二pcie接口连接器220中的每一个包括八个端口。然而,明显的是,在连接器中的每一个中包括的端口的数量不限于此。

pcie接口协议采用包括单工发送路径和单工接收路径的双单工连接模型。这些发送路径和接收路径形成链路。在它们中,一对发送路径和接收路径形成一个通路。

例如,第一pcie接口连接器110的端口p0与第二pcie接口连接器220的端口p0之间的发送路径和接收路径可形成通路0,第一pcie接口连接器110的端口p2与第二pcie接口连接器220的端口p2之间的发送路径和接收路径可形成通路2,等等。

可根据将在稍后描述的通过第一pcie装置100的ltssm150执行的链路号协商和通路号协商运行通路形成过程。

图3示出了在第一pcie装置100的ltssm150与第二pcie装置200执行链路号协商的同时,第一pcie接口连接器110的端口p6与第二pcie接口连接器220的端口p6之间的预期通路不正常操作的情况。也就是说,在图3中,通路6对应于失效通路。

例如,可能存在这样的情况,在从第一pcie接口连接器110的端口p6通过其将数据发送至第二pcie接口连接器220的端口p6的发送路径中发生问题,或者存在这样的情况,在第一pcie接口连接器110的端口p6通过其从第二pcie接口连接器220的端口p6接收数据的接收路径中发生问题。

在这种情况下,第一pcie装置100的ltssm150按照(例如)第一pcie接口连接器110的多个端口p0至p7的端口号依次增大的次序执行通路号协商。换句话说,各个端口的次序可为从最低指定端口(例如,p0)至最高指定端口(例如,p7)的升序。可替换地,各个端口的次序可为从最高指定端口(例如,p7)至最低指定端口(例如,p0)的降序。

根据pcie技术规范,通常将对应于形成一个链路的通路数量的链路宽度确定为通路1、通路2、通路4、通路8、通路12、通路16和通路32中的任一个。(为了避免在元件的不同序号之间混淆,下面将利用命名法“1”、“2”、“4”等称呼链路宽度)。因此,第一pcie装置100的ltssm150可利用端口号从第一pcie接口连接器110的端口号p0按次序增大的第一端口号排序来设置宽度为“4”的链路。

在图3所示的当前实施例中,因此,假设相对于给定的一组端口针对链路宽度定义考虑的通路的次序为升序(即,升序端口号排序)。然而,本发明构思的范围不限于此。因此,根据另一方式,可根据降序端口号(即,降序端口号排序)考虑通路。

然而,继续看图3示出的示例,根据pcie接口协议,第一pcie装置100和第二pcie装置200最终被构造为根据链路宽度“4”操作。

图4和图5分别示出了在第一pcie装置100的ltssm150与第二pcie装置200执行链路号协商的同时,第一pcie接口连接器110的端口p2与第二pcie接口连接器220的端口p2之间的通路不正常操作的情况。也就是说,在图4和图5中,通路2对应于失效通路。

例如,可能存在这样的情况,在从第一pcie接口连接器110的端口p2通过其将数据发送至第二pcie接口连接器220的端口p2的发送路径中发生问题,或者存在这样的情况,在第一pcie接口连接器110的端口p2通过其从第二pcie接口连接器220的端口p2接收数据的接收路径中发生问题。

参照图4,在这种情况下,第一pcie装置100的ltssm150根据第一pcie接口连接器110的端口p0至p7的端口号的升序执行通路号协商。作为按照升序执行通路号协商的结果,第一pcie装置100的ltssm150设置了宽度为“2”的链路。

然而,形成链路的通路数量仅为“2”,而不形成链路也不对应于失效通路的通路数量为五。即使考虑了可根据pcie技术规范形成的链路宽度,第一pcie装置100的ltssm150也不使用对应于端口号p4至p7的四个通路,并且仅使用对应于端口号p0和p1的比所述四个通路的带宽更小的两个通路来设置链路。根据以上观点,可考虑浪费了的能够提供更宽的带宽的四个通路。

参照图5,为了更好地解决图4所示的问题,第一pcie装置100的ltssm150可另替换地或可附加地按照相对于第一pcie接口连接器110的端口p0至p7的降序执行通路号协商。

将示出的示例进行扩展,利用一组升序的端口号关于端口p0至p7实施“第一排序方式”,而利用一组降序的端口号关于相同的端口p0至p7实施“第二排序方式”。因此,可关于端口的特定编号和排序方式实施不同的排序方式(例如,偶数/奇数;升/降;等),以识别出最大的链路宽度,并且在pcie系统中的连接的pcie装置之间运行的一个或多个通路号协商期间可完成所有这些。再次参照图4和图5的前述示例,“第一通路号协商”导致链路宽度为“2”,而“第二通路号协商”导致链路宽度为“4”。并且,由于宽度为“2”的链路的鲁棒性明显小于宽度为“4”的链路,因此pcie装置100与200之间的链路定义应该使用通过第二通路号协商识别的端口p4至p7。因此,第一pcie装置100的ltssm150最终可设置宽度为“4”的链路。

按照这种方式,当关于pcie装置之间的链路的定义(或者设置)存在失效通路时,可使pcie装置之间的链路宽度最大化。

这里,应该注意,关于图5所示的实施例,第一pcie装置100的ltssm150形成第一pcie接口连接器110的端口7与第二pcie接口连接器220的端口7之间的通路0,并且形成第一pcie接口连接器110的端口6与第二pcie接口连接器220的端口6之间的通路1。也就是说,在图5的实施例中,由于第一pcie装置100的ltssm150设置了通路,因此ltssm150必须支持pcie技术规范定义的pcie通路反转功能。为了运行上述第二通路号协商,ltssm150可利用pcie通路反转功能按照反向次序设置通路号。

在前述实施例中,第一pcie装置100的ltssm150可根据第一次序执行通路号协商,然后根据第二次序执行通路号协商,并且随后根据第一通路号协商结果和第二通路号协商结果确定最佳(或者链路宽度最大化的)链路。

因此,如果第一pcie装置100的ltssm150能够预先预测失效通路,则可仅利用单个通路号协商获得具有最大化的链路宽度的最佳链路。

根据pcie技术规范,在与第二pcie装置200执行通路号协商之前,第一pcie装置的ltssm150能够执行内部通路号协商。在该过程中,可确定关于给定的一组端口是否可预期通路失效(以及确定哪个通路失效)。

也就是说,第一pcie装置100的ltssm150可关于端口p0至p7执行内部通路号协商,以检测失效的通路号,并且因此可鉴于先前确定的失效的通路号而仅执行单个外部通路号协商。

例如,将先前结合图4和图5描述的示例进行扩展,在确定检测到的失效通路端口号是否小于预定值之后,第一pcie装置100的ltssm150可关于第二pcie装置200仅执行第一通路号协商或第二通路号协商。这里,预定值可为通过将通路的总数除以二获得的值(即,对于图4和图5示出的实施例预定值为四)。因此,当失效通路的端口号小于4时,在第一通路号协商之后,第一pcie装置100的ltssm150可执行第二通路号协商,并且当失效通路的端口号等于或大于4时,在第一通路号协商之后,可不执行第二通路号协商。

下文中,将参照图6至图14另外地详细描述执行使得第一pcie装置100的ltssm150可设置最佳链路的初始化处理的示例。

图6、图7、图8和图9分别是示出根据本发明构思的实施例的在pcie装置之间设置链路的初始化处理的各个示例的框图。

为了便于描述,图6、图7、图8和图9的示出的示例假设pcie装置100和200分别包括四个端口(端口0、1、2和3),其中端口2与失效通路关联(即,通路2是失效通路)。

参照图6,第一pcie装置100的ltssm150执行第一链路号协商,以使得ltssm150经端口0、1、2和3之一向第二pcie装置200传达所得链路号‘n’。例如,可在ts1有序集合中记录链路号并且将其发送至第二pcie装置200。

参照图7,第二pcie装置200可随后经端口0、1、2和3中的每一个向第一pcie装置100传达(或返回)相同的链路号n。再次,可在ts1有序集合中记录返回的链路号并将其发送至第一pcie装置100。

然而,这里,在示出的示例的工作设想下,通路2是失效通路,因此,第二pcie装置200将不能将返回的链路号发送至第一pcie装置100的端口2。根据实施方式,第二pcie装置200可关于端口2发送对应于分组填充物(packetfiller)的pad符号,但是本发明构思的范围不限于此。

由于第二pcie装置200的响应,第一pcie装置100的ltssm150可辨识可用于建立链路的通路0和通路1。

接着,参照图8,第一pcie装置100的ltssm150可执行第一通路号协商。

第一pcie装置100的ltssm150经端口0和1中的每一个将通路号发送至第二pcie装置200。具体地说,将通路号0赋予端口0,并且将通路号1赋予端口1。可将通路号记录在ts1有序集合中并且将其发送至第二pcie装置200。相反,不将通路号赋予端口2和3。

其原因是第一pcie装置100的ltssm150排除通路2来选择宽度更宽的链路,因为通路2是失效通路。

作为允许第一pcie装置100的ltssm150选择宽度最大的链路的特定方法,可使用前述各种方法。

也就是说,第一pcie装置100的ltssm150在对应于端口0和1的宽度为2的宽度较宽的链路和对应于端口3的宽度为1的链路中进行选择,然后仅通过端口0和1将通路号发送至第二pcie装置200。

参照图9,第二pcie装置200通过端口0和1中的每一个将与从第一pcie装置100接收的通路号相同的通路号0和1发送至第一pcie装置100。可将通路号记录在ts1有序集合中并且将其发送至第一pcie装置100。

由于第二pcie装置200的响应,第一pcie装置100的ltssm150可辨识协商已完成,并且链路已建立,可转变为l0状态,并且可开始数据传输。

图10、图11、图12、图13和图14分别是示出根据本发明构思的实施例的在pcie装置之间设置链路的示例的框图。

为了便于描述,针对图10至图14所示的各个示出的示例,假设pcie装置100和200中的每一个包括四个端口(通路0、1、2和3),其中通路1是失效通路。

参照图10,第一pcie装置100的ltssm150执行第一链路号协商。

这里,ltssm150经端口0至3中的每一个将任意链路号n发送至第二pcie装置200。可将链路号记录在ts1有序集合中并且将其发送至第二pcie装置200。

参照图11,第二pcie装置200通过端口0至3中的每一个将与从第一pcie装置100接收的链路号相同的链路号n发送至第一pcie装置100。可将链路号记录在ts1有序集合中并且将其发送至第一pcie装置100。

然而,这里,由于通路1是失效通路,因此第二pcie装置200不能通过端口1将与从第一pcie装置100接收的链路号相同的链路号n发送至第一pcie装置100。根据实施方式,第二pcie装置200可关于端口1发送对应于分组填充物的pad符号,但是本发明构思的范围不限于此。

由于第二pcie装置200的响应,第一pcie装置100的ltssm150可辨识可用于建立线路的通路0、通路2和通路3。

接着,参照图12,第一pcie装置100的ltssm150执行第一通路号协商。

也就是说,第一pcie装置100的ltssm150通过端口0将通路号发送至第二pcie装置200。具体地说,将通路号0赋予端口0。可将通路号记录在ts1有序集合中并且将其发送至第二pcie装置200。相反,不将通路号赋予端口1、2和3中的每一个。

接着,参照图13,通过经端口2和3中的每一个将通路号发送至第二pcie装置200,第一pcie装置100的ltssm150执行第二通路号协商。ltssm150可针对第二通路号协商的目的利用pcie通路反转功能按照反向次序设置通路号。

也就是说,第一pcie装置100的ltssm150通过端口2和3中的每一个将通路号发送至第二pcie装置200。具体地说,将通路号1赋予端口2,并且将通路号0赋予端口3。可将通路号记录在ts1有序集合中并且将其发送至第二pcie装置200。相反,不将通路号赋予端口0和1中的每一个。

作为第一通路号协商和第二通路号协商的结果,第一pcie装置100的ltssm150可选择宽度更宽的链路。然而,允许第一pcie装置100的ltssm150选择宽度更宽的链路的特定方法不限于此,并且可使用涉及图5的前述各种方法。

也就是说,第一pcie装置100的ltssm150在对应于端口0的宽度为1的链路和对应于端口2和3的宽度为2的链路中选择宽度更宽的链路,并且随后仅通过端口2和3将通路号发送至第二pcie装置200。

参照图14,第二pcie装置200通过端口2和3中的每一个将与从第一pcie装置100接收的通路号相同的通路号0和1发送至第一pcie装置100。可将通路号记录在ts1有序集合中并且将其发送至第一pcie装置100。

由于第二pcie装置200的响应,第一pcie装置100的ltssm150可辨识出协商已完成并且链路已建立,可转变为l0状态,并且可开始数据传输。

图15是根据本发明构思的实施例的在一个示例中总结操作半导体装置的方法的流程图。

参照图15,开始链路设置(s1501),并且第一pcie装置100将链路号发送至第二pcie装置200,以执行第一链路号协商(s1503)。

响应于此,第二pcie装置200将返回的链路号发送至第一pcie装置100(s1505)。

第一pcie装置100基于从第二pcie装置200接收的响应确定是否存在失效通路(s1507)。如果存在失效通路,第一pcie装置100确定失效通路的通路号是否小于预定值,例如,通过将通路的总数除以二获得的值(s1509)。

如果不存在失效通路或如果虽然存在失效通路但是失效通路的通路号等于或大于预定值,则第一pcie装置100针对通路号协商的目的提供第一次序的通路号,并且将这些通路号发送至第二pcie装置200(s1511)。

如果失效通路的通路号小于预定值,则第一pcie装置100针对执行第二通路号协商的目的提供第二(例如,反向)次序的通路号,并且将这些通路号发送至第二pcie装置200(s1513)。

响应于此,第二pcie装置200将通路号发送至第一pcie装置100(s1515)。

由于第二pcie装置200的响应,第一pcie装置100可辨识出已完成协商并且已建立链路,可转变为l0状态,并且可开始数据传输(s1517)。

根据本发明构思的各个实施例,在为了在pcie装置之间设置链路的初始化处理中,如果存在失效通路,则可确定pcie装置之间的最佳链路宽度。

虽然已针对示出的目的公开了本发明构思的优选实施例,但是本领域技术人员应该理解,在不脱离权利要求中公开的本发明构思的范围的情况下,各种修改、增加和替换都是可能的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1