直接内存地址转换的有效测试制造技术

技术编号:23632253 阅读:46 留言:0更新日期:2020-04-01 00:42
一种电路和方法提供了对诸如链路处理单元之类的集成电路中地址转换的有效压力测试。随机DMA模式(RDM)电路提供随机输入,以索引到转换验证表(TVT)中,该转换验证表用于生成实存储器地址。RDM电路允许测试TVT的所有条目,从而测试所有DMA模式,而不管链路处理单元连接了什么总线代理。RDM电路可以使用多路复用器在运行时输入和由随机位发生器提供的随机测试输入之间进行选择。当链接处理单元处于测试模式时,会置位模式选择位以选择随机测试输入。

【技术实现步骤摘要】
【国外来华专利技术】直接内存地址转换的有效测试
本公开总体上涉及测试直接存储器地址转换,并且更具体地涉及在集成电路中,例如在一个或多个处理器与图形处理单元之间的高速通信链路中的直接存储器访问转换的有效测试。
技术介绍
集成电路测试工具试图为集成电路生成最彻底和最有压力的的测试用例。从理论上讲,生成的测试用例应提供最大的测试覆盖范围,并应能够强调各种时序方案和集成电路上的操作。测试可以在开发和生产期间执行。建立测试用例以彻底测试复杂的集成电路可能会花费大量时间和资源。建立有效的测试代码是集成电路测试的重要目标。直接存储器访问(DMA)是计算机系统的一项功能,它允许硬件子系统访问独立于中央处理单元(CPU)的主系统存储器。在某些高速系统中,链路处理单元用于在芯片之间或芯片的一部分之间互连,以在芯片之间提供DMA,同时确保存储器一致性。此链接处理单元的示例用法是将CPU芯片连接到图形处理单元(GPU)芯片集群。CPU和GPU集群能够一致地读取和写入彼此的内存。GPU可以使用非缓存(DMA)读写来在GPU内存和CPU内存之间进行高带宽数据移动。
技术实现思路
一种电路和方法在诸如链路处理单元的集成电路中提供有效的压力测试地址转换。随机DMA模式(RDM)电路提供随机输入,以索引到转换验证表(TVT)中,该转换验证表用于生成实存储器地址。在示出的示例中,到表中的输入通常是与连接到系统的特定总线代理相对应的可分区端点号(PE#)。RDM电路允许测试TVT的所有条目,从而测试所有DMA模式,而不管链路处理单元连接了什么总线代理。RDM电路可以使用多路复用器在运行时输入和由随机位发生器提供的随机测试输入之间进行选择。当链接处理单元处于测试模式时,会置位模式选择位以选择随机测试输入。如附图所示,根据以下更具体的描述,前述和其他特征和优点将变得显而易见。附图说明将结合附图描述本公开,其中相同的标号表示相同的元件,并且:图1是具有链接处理单元的系统的框图,该链接处理单元具有用于在集成电路上有效测试DMA地址转换的随机DMA模式电路;图2是具有用于有效测试DMA地址转换的随机DMA模式电路的链路处理单元的框图;图3是图2所示的ATS块的一部分的简化框图,以及用于有效测试DMA地址转换的随机DMA模式电路的具体例子;图4是图1-3所示的随机DMA模式(RDM)电路的一种实现方式的简化框图;图5是用于在集成电路上有效测试DMA地址转换的方法的流程图;以及图6是用于图5中的步骤520的特定方法的流程图。具体实施方式本公开和权利要求涉及一种用于在诸如链路处理单元之类的集成电路中对地址转换进行有效压力测试的电路和方法。随机DMA模式(RDM)电路提供随机输入,以索引到转换验证表(TVT)中,该转换验证表用于生成实存储器地址。在示出的示例中,表中的输入通常是与连接到系统的特定总线代理相对应的可分区端点号(PE#)。RDM电路允许测试TVT的所有条目,从而测试所有DMA模式,而不管链路处理单元连接了什么总线代理。RDM电路可以使用多路复用器在运行时输入和由随机位发生器提供的随机测试输入之间进行选择。当链接处理单元处于测试模式时,会置位模式选择位以选择随机测试输入。图1是具有链路处理单元(LPU)120的系统100的系统框图,该链路处理单元(LPU)120具有随机DMA模式(RDM)电路110,用于通过使用如本文所要求的DMA访问模式来有效地测试DMA地址转换。链接处理单元120提供高速连接,以将一个或多个中央处理单元(CPU)连接到GPU集群。在所示的示例中,单个CPU114链接到两个GPU130A、130B,统称为GPU或GPU130。在此示例中,LPU120和CPU114集成在一起并驻留在处理器芯片112上。在该示例中,GPU130驻留在单独的芯片上。备选地,GPU130可以驻留在处理器芯片112上。所示出的示例包括加载有测试软件118的存储器116。存储器116可以如图所示位于处理器芯片112上或者可以位于芯片外。测试软件118可以如现有技术中已知的那样加载转换表。如下文进一步所述,测试软件测试存储器,而RDM电路110在测试中随机化DMA访问模式,而不管连接了什么代理。LPU120的示例是由国际商业机器公司开发的Power9(P9)NV-Link处理单元(NPU)。在本文的示例中,除了本文所述的RDM电路110之外,LPU120类似于NPU。P9NV-Link处理单元(NPU)使用NV-LinkTM互连将中央处理单元(CPU)芯片112连接到GPU芯片130的集群。NV-LinkTM(以下称为NV-Link)是NVIDIA公司拥有的高速互连架构。NV-Link以很高的数据带宽在芯片之间提供内存缓存一致性。CPU和GPU群集具有一致地读取和写入彼此的内存的能力。GPU可以使用非缓存(DMA)读写来在GPU内存和CPU内存之间进行高带宽数据移动。NPU为处理器的NV-Link提供事务层功能。此功能包括从NV-Link数据链路逻辑接受命令,将其转换为总线命令序列,然后基于总线命令的结果生成响应。响应通过数据链路逻辑发送回NV-Link。支持的命令包括读取、写入、探测和刷新。NPU可以通过NV-Link将相同类型的命令以及升级和降级命令发送到GPU群集。图2是图1中引入的链路处理单元(LPU)120的简化框图。LPU120的主要块包括三个NPU公共队列块(NPCQ)210A、210B、210C、六个NV-链路事务处理层块(NTL)212A-212F、扩展转换服务块(XTS)214和地址转换块(ATS)216。如上所述,LPU120包括用于有效测试DMA访问模式的随机DMA模式(RDM)电路110。在该示例中,RDM110被合并到地址转换块(ATS)216中。当在来自GPU的命令中使用未转换的地址时,ATS216提供地址重定位和验证。下面参考图3进一步描述RDM电路110和ATS216的功能。再次参考图2,LPU120包括六个NV-link事务层块(NTL)212A-212F,统称为NTL块212。每个NTL块212包括称为砖的单元。每个砖向NV-Link提供单独的命令流,每个砖可以连接到一个或多个外部芯片。对于每个砖,所有订购要求都是独立执行的。LPU120还包括三个NPU公共队列块(NPCQ)210A、210B、210C,统称为NPCQ210。NPCQ提供三个PowerBus单元接口,在图2中示为218A、218B和218C。每个PowerBus接口都支持两个NV-Link块(NTL块212)。再次参考图2,LPU120还包括扩展转换服务块(XTS)214。XTS214用于支持NV-Link的地址转换服务操作。该块接受来自GPU的地址转换请求,查找必要的转换上下文,并为P9创建转换请求。转换上下文保存在XTS单元的表中。当NestMMU响应转换请求时,XTS块将创建一个地址转换响应,该响应将通过NV-Link发送到GPU。如现有技术中本文档来自技高网...

【技术保护点】
1.一种集成电路,包括:/n第一转换表,包括多个转换条目,其中所述多个转换条目中的每一个包含转换信息,以转换用于连接到所述集成电路的多个代理中的一个的直接存储器访问(DMA)地址;以及/n随机DMA模式(RDM)电路,该电路在测试模式期间在所述第一转换表中随机选择转换控制条目,以选择所述转换控制条目表中的所有所述多个条目。/n

【技术特征摘要】
【国外来华专利技术】20170812 US 15/675,7171.一种集成电路,包括:
第一转换表,包括多个转换条目,其中所述多个转换条目中的每一个包含转换信息,以转换用于连接到所述集成电路的多个代理中的一个的直接存储器访问(DMA)地址;以及
随机DMA模式(RDM)电路,该电路在测试模式期间在所述第一转换表中随机选择转换控制条目,以选择所述转换控制条目表中的所有所述多个条目。


2.如权利要求1所述的集成电路,其中,当仅单个代理连接到所述集成电路时,所述RDM电路从所述第一转换表中的所有所述转换中随机选择。


3.如权利要求1所述的集成电路,其中,所述RDM电路包括:
连接到多路复用器指定输入的随机发生器信号;
选择所述指定输入的所述多路复用器的选择输入;以及
在所述测试模式期间将所述随机发生器信号提供给所述转换表的所述多路复用器的输出,以在测试期间随机选择所述转换表的条目。


4.如权利要求1所述的集成电路,其中,所述第一转换表是转换验证表,其包含针对多个代理中的每一个的转换验证条目,所述条目指向转换控制条目表,并且其中,所述RDM电路随机地选择指向所述转换控制条目表中的转换控制条目的转换验证条目。


5.如权利要求4所述的集成电路,其中,所述RDM通过随机选择转换验证条目来随机选择所述转换控制条目。


6.如权利要求5所述的集成电路,其中,在所述第一转换表的每个条目中转换DMA地址的所述信息包括转换表地址、转换控制条目树深度、转换控制条目表大小和输入/输出页面大小。


7.如权利要求1所述的集成电路,其中,所述代理包括中央处理单元和至少一个图形处理单元。


8.如权利要求1所述的集成电路,其中,所述集成电路是链路处理单元的一部分。


9.如权利要求8所述的集成电路,其中,所述链接处理单元被制造在具有中央处理单元的所述集成电路上。


10.一种测试集成电路的计算机实现的方法,该方法包括:
加载具有多个转换条目的第一转换表,其中所述多个转换条目中的每一个包含转换信息,以将用于连接到所述集成电路的多个代理中的一个转换为直接存储器访问(DMA)地址;以及
通过在测试模式下使用连接到所述集成电路的单个代理通过随机选择带有转换信息的所述表的条目来测试所述转换表中的所有所述转换条目,以使用所...

【专利技术属性】
技术研发人员:S·卡普尔M·杜莎娜普迪N·吴
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1