支持采用外部输入/输出接口对测试、调试或追踪信息的传递的装置、系统和方法与流程

文档序号:23628645发布日期:2021-01-12 10:42阅读:156来源:国知局
支持采用外部输入/输出接口对测试、调试或追踪信息的传递的装置、系统和方法与流程

相关申请的交叉引用

本申请要求2015年10月23日提交的美国临时申请no.60/245,931的权益,通过引用将其全部内容结合到本文中。

本文所讨论的实施例一般涉及微电子电路装置,以及更具体地(但排他地)涉及使用通用接口来评估集成电路的操作。



背景技术:

当前,典型膝上型电脑、平板电脑、智能电话或其它系统包括片上系统(soc)和/或其它集成电路(ic),其经由jtag(或cjtag)接口来调试和测试。典型地,期望经由存在于系统上的高速接口从系统电路(例如soc或其它ic)发送调试追踪。jtag测试数据输出(tdo)引脚也能够用来发送输出调试追踪,尽管以更低数据速率进行。典型地,ieee-1149.1jtag接口以大约100mhz运行。ieee标准委员会还已经经由ieee-1149.7标准来发展2引脚jtag接口(又称作紧凑jtag或cjtag),其将tms和tck信号用于调试和测试。由于jtag接口的数据速率典型地为大约100mhz并且大多数追踪要求比jtag数据速率要高得多,所以追踪按常规经由专用高速串行追踪端口从系统发出。然而,随着装置趋向于具有更少外部连接器的“封闭机箱”解决方案,存在对消除特定于支持测试、调试和/或追踪信息的外部端口的增加需求。

附图说明

作为示例而不是作为限制来在附图中的图中示出本发明的各种实施例,并且其中:

图1是示出根据常规技术的、执行调试和追踪操作的片上系统的元件的功能框图。

图2是示出根据实施例的、提供执行测试、调试或追踪(tdt)功能性的系统的元件的功能框图。

图3是示出根据实施例的、评估电路组件的方法的元件的流程图。

图4是示出根据实施例的、支持追踪和调试操作的系统的元件的功能框图。

图5是示出根据实施例的、基于存储器映射输入/输出信息来评估电路的系统的元件的功能框图。

图6是示出根据实施例的、基于存储器映射输入/输出信息来评估电路的系统的元件的功能框图。

图7是示出根据实施例的、执行tdt操作的系统的元件的功能框图。

图8a、图8b是各自示出根据对应实施例的、评估一个或多个电路组件的相应系统的元件的功能框图。

图9a、图9b是各自示出根据对应实施例的、评估一个或多个电路组件的相应系统的元件的功能框图。

图10是示出根据实施例的、执行菊花链装置的tdt评估的系统的元件的功能框图。

图11是示出根据一个实施例的示范计算机装置的功能框图。

具体实施方式

本文所讨论的实施例以各种方式提供用于使通用输入/输出(io)接口(例如与thunderbolt™标准或pcie标准兼容的接口)适合促进调试、测试和/或追踪功能性的技术和/或机制。如本文所使用的“pcie”指的是与外设组件互连(pci)高速(或pcie)标准(例如由pci特殊兴趣组(pci-sig)于2014年11月所发布的pcie3.1规范、由pci-sig于2011年11月29日宣布的pcie4.0规范的标准或者各种其它这种标准的任何标准)的兼容性。术语“thunderbolt™”(或“tbt”)在本文中指的是与thunderbolt™2要求、thunderbolt™3要求或者其它类型的thunderbolt™接口兼容的特性。本文中参照外部接口来讨论各种实施例的某些特征,所述外部接口是“pcie/tbt”(即pcie接口或者thunderbolt™(tbt)接口)并且其用来与“测试接入端口网络”(即,系统内部的测试接入端口的网络)交换tbt信息。然而,这种讨论可扩展到包括各种其它类型的外部接口的任何外部接口和/或各种其它类型的内部系统网络的任何内部系统网络。例如,一些实施例可改为与“调试接入端口网络”(即,系统中的各种组件的调试接入端口的网络)交换tdt。串行线调试(swd)端口只是可相互互连以形成调试接入端口(dap)网络以便参加与pcie、tbt或其它功能接口的tdt交换的端口的一个示例。

如本文所使用的“测试/调试/追踪”(或“tdt”)指的是支持测试、调试和/或追踪操作的功能性和/或基于(或者以其它方式支持)这种操作的调试信息、测试信息和/或调试信息的传递的功能性。“外部接口”在本文中用来指系统的有线或无线接口,提供系统到外部代理的通信耦合的接口。外部接口至少在配置成除支持tdt功能性之外而支持一种或多种类型的通信的程度上可以是通用的。例如,外部i/o接口可与外设互连标准(例如pcie标准或thunderbolt™标准)兼容,所述外设互连标准支持除任何测试信息、调试信息或追踪信息之外的操作数据的传递。

术语“m.2”在本文中指的是与m.2标准(例如pci-sigm.2规范或者satarev.3.2规范的标准)的兼容性。先前又称作ngff(下一代形状因子)连接器的m.2连接器可用于内部安的装扩充卡和连接器。这些可提供对msata标准连接器的替代,并且支持pci高速迷你卡和连接器。如本文所使用的“(c)jtag”指的是与联合测试行动组(jtag)标准(例如电气和电子工程师协会(ieee)的ieee1149.1规范的标准)或者紧凑jtag(cjtag)标准(例如ieee的ieee1149.7规范的标准)的兼容性。术语“usb”在本文中指的是与通用串行总线(usb)标准(例如由usb实施者论坛于2008年11月所发布的usb3.0规范、于2013年7月31日所发布的usb3.1规范的标准或者其它这种标准)的兼容性。术语“wifi”在本文中指的是与各种无线通信标准的任何无线通信标准(例如wifi联盟或蓝牙特殊兴趣组的标准)的兼容性,其基于ieee的ieee802.11规范。

现有系统(例如包括平板电脑、膝上型电脑、桌上型电脑、智能电话等的平台、soc等)典型地包含配置成单独被调试的若干组件(芯片、封装等),其中对于每个组件,存在用于将组件耦合到某个调试软件单元的相应连接器。调试可包括分析、优化和/或观测组件的操作的操作。这种组件可包括例如调制解调器、应用处理器、不同芯片、无线lan等的一个或多个。这些组件按传统单独被调试。在历史上,已经存在使每个组件连接到包括调试软件/硬件逻辑的测试单元的专用接口(独立连接器)。这种调试可调谐组件—例如以便为调制解调器提供改进带宽、为应用处理器提供改进响应时间等。

图1示出支持使用常规机制进行调试的典型系统100。系统100包括一个(c)jtag端口120(4引脚(或者5引脚)jtag连接器或者2引脚cjtag连接器),其支持与系统100的测试接入点(tap)网络130的测试和/或调试信息的交换。组件140(其被示为包括说明性包括中央处理单元(cpu)核142、硬件(hw)加速器144和音频数字信号处理器(dsp)146)连接到tap网络130,其又与(c)jtag端口120进行接口。外部调试器(未示出)经由(c)jtag端口120与tap网络130之间的信令来访问组件140,以读取给定组件的一个或多个寄存器。系统100的附加追踪端口110辅助追踪信息112、114的流传送和/或其它交换。由于jtag接口的数据速率典型地为大约100mhz并且大多数追踪要求比jtag数据速率要高得多,所以追踪按常规经由专用高速串行追踪端口110从系统发出。

一些实施例基于如下实现:存在能够将系统与外部代理和/或网络进行接口的某些类型的连接器,其可用来访问这种系统的内部网络,其中内部网络促进多个系统组件的调试、测试和/或追踪。这种实施例提供经由支持这种外部连接的一个公共硬件接口来交换调试、测试和/或追踪信息的功能性。至少在对一个或多个其它系统组件的访问可经由特定组件进行的程度上,外部连接器可由系统的特定组件所“拥有”。这种连接器可符合标准(例如,诸如pcie规范和/或thunderbolt™类型之一),其并不限于特定通信类型,例如调试、测试和/或追踪信息的传递。术语“通用i/o”、“带内”、“功能”在本文中用来描述并不限于调试、追踪和/或测试信息的传递的这种接口的特性。尽管某些实施例并不限于这个方面,但是外部连接器所兼容的标准可提供“推送模型”协议—例如其中来自主机/源/等代理的命令被推送到存储器或客户端/汇(sink)/等组件。pcie和thunderbolt™是推送模型接口类型的示例—例如其中usb是拉取模型接口类型的示例。

备选地或另外地,系统的内部网络(仅经由系统的外部连接器来访问的网络)可包括一个或多个总线和/或其它互连,其符合互连标准—例如诸如pcie规范的标准。某些组件以各种方式使一个或多个外部系统接口连接器能够以各种方式被消除或者至少更有效地利用。代替使用专用接入点,一些实施例利用系统内部的网络来执行(例如)调试、测试和/或追踪操作。pcie只是这种网络机制的一个示例。在一些说明性实施例中,外部可访问(例如thunderbolt™)连接用来访问系统组件(例如硬盘驱动器等)之间的内部网络。通过这种thunderbolt™(或其它)连接,一些实施例支持菊花链配置的使用来将不同装置相互连接。通过网络化调试功能性,到外部组件的单个连接允许调试主机通过这个连接进行调试,以完善装置以及潜在地被链接的所有装置。

某些实施例以各种方式提供调试操作,其对于外部接口依靠利用推送类型信息交换的协议。例如,即使usb协议使用拉取模型来以各种方式进行通信,pcie/thunderbolt™改为实现推送模型,其中(例如)命令从外部代理推送到系统的存储器。系统/平台的外部(功能)接口可用来访问系统/平台的多个功能块。一些实施例,对这种多个功能块的访问可经由一个或多个无线接口和/或一些或所有这种功能块的菊花链配置进行。两个这种功能块之间的互连(例如pcie总线)可使一个系统组件能够充当用于一个或多个其它组件的调试和/或测试的媒介—例如其中一个或多个其它组件处于同一系统中或者系统的外部。

如本文所使用的术语“封闭机箱”指的是系统在其最外壳体或其它外壳缺乏专用于仅支持一种或多种类型的tbt功能性的外部接口的特性。在实施例中,封闭机箱系统的组件耦合到外部(pcie、tbt、m.2或其它)接口,其中tbt相关通信和/或操作经由接口要被支持。一些实施例的至少一个优点在于pcie或thunderbolt™支持调试功能性(例如而不是使用usb)的适应。预期下一代接口技术由于对高速率(例如20gbps和40gbps)信令的支持而更趋向于pcie/thunderbolt™。

本文所述的技术可在一个或多个电子装置中实现。可利用本文所述技术的电子装置的非限制性示例包括任何种类的移动装置和/或固定装置,例如照相装置、蜂窝电话、计算机终端、桌上型计算机、电子阅读器、传真机、公用电话亭、上网本计算机、笔记本计算机、因特网装置、支付终端、个人数字助理、媒体播放器和/或记录器、服务器(例如刀片服务器、机架安装服务器、其组合等)、机顶盒、智能电话、平板个人计算机、超级移动个人计算机、有线电话、其组合等。在一些实施例中,本文所述的技术可用于桌上型计算机、膝上型计算机、智能电话、平板计算机、上网本计算机、笔记本计算机、个人数字助理、服务器、其组合等中。更一般来说,本文所述的技术可用于多种电子装置的任何电子装置中,所述电子装置包括外部接口以及配置成参加经由外部接口所支持的tbt操作的组件。

为了加速调试和/或其它tdt通信,pcie和/或thunderbolt™(例如)在实施例中可用来与测试接入点的网络(或者“tap网络”)进行接口,和/或用作由各种系统组件所发送的追踪的追踪目的地。在各种追踪源之间进行选择的多路复用(复用)机制可在中央组件中或者备选地在共同操作以实现复用功能性的组件的某种组合中实现。

图2示出根据实施例的、支持电路的tdt评估的通信和/或其它操作的系统200(例如soc、膝上型电脑、平板电脑、智能电话等)。系统200可以是封闭机箱系统,其中外部接口(系统200通过其访问外部tdt代理)不是仅专用于tdt通信。系统200包括功能(例如通用)i/o接口210(例如pcie接口或thunderbolt™接口)以使能系统200到外部tdt单元的耦合。m.2是可适合于tdt的外部接口类型的另一个示例。根据一些实施例,又一些示例包括usb、wifi或者其它外部接口机制。在一些实施例中,系统200还包括外部tdt专用接口(未示出),其中至少一些tdt交换仍然可经由i/o接口210发生。

系统200是实施例的示例,其中采用耦合到组件235的一些或所有的功能i/o接口210和内部tap网络230来促进tdt访问—例如允许调试的简易性。在所示说明性实施例中,组件235包括应用处理器240、调制解调器基带处理器bbp260和调制解调器收发器(tx/rx)280。然而,在其它实施例中,系统200可包括更多、更少和/或不同的组件。在一个说明性实施例中,组件235的调制解调器tx/rx280或者其它电路提供wifi、蓝牙、频率调制(fm)无线电和/或其它无线功能性。

组件235可经由一个或多个互连(例如所示的说明性pcie总线250、270)以各种方式相互耦合。处理器间通信(ipc)链路可用于各种处理核和/或系统200的其它组件之间。例如,互连250可包括ap240与调制解调器bbp260之间的ipc-pcie接口或者经由所述ipc-pcie接口耦合。这种实施例的一个优点可在于,整个soc可经由功能i/o接口210使用(c)jtag和/或追踪交换来评估。常规技术而是依靠专用调试器—各自用于不同的相应组件和/或各自经由相应调试端口所耦合。在一个说明性实施例中,互连270支持与digrf规范(例如由mipi联盟于2011年12月所发布的规范digrfsmv4v1.10)兼容的通信。然而,这种通信可能不支持通过pcie网络的直接控制。在这种情况下,调试协议可在这种digrf通信中隧道传递(tunneled)。

系统生产、测试、验证、调试等可通过使用功能i/o接口210访问tdt的内部tap网络来改进。通过功能i/o接口210,外部调试工具或者其它这种tdt代理可访问系统200的不同组件235—例如以建立追踪流、访问各种组件的任何组件中的寄存器等。系统200还可包括胶连逻辑(gluelogic)220,其包括电路、固件、软件和/或其它逻辑,以提供tap网络230与功能i/o接口210之间的接口。例如,功能i/o接口210可包括phy、协议栈和/或根据pcie、thunderbolt™或其它这种功能i/o标准进行操作的其它逻辑的一些或所有。胶连逻辑220示出将功能i/o接口210(例如其pcie协议逻辑和/或其thunderbolt™协议逻辑)与tap网络230进行接口的硬件和/或运行软件的一个示例。这种接口逻辑可实现速度转化以适应不同信号通信速率。例如,胶连逻辑220可包括或者以其它方式可以访问一个或多个缓冲器222。胶连逻辑220可控制由一个或多个缓冲器222进行的缓冲和去缓冲,以便存储以第一速率从功能i/o接口210所接收的信息,其中这种数据随后被去缓冲,以用于以比第一速率要低的第二速率(例如100mhz)经由tap网络230的通信。备选地或另外地,这种缓冲器控制可存储(例如存储到不同缓冲器)以相对低速率从tap网络230所接收的数据,其中这种信息随后被去缓冲以用于以快得多的速率经由功能i/o接口210的通信。因此,胶连逻辑220可作为pcie到tap(pcie2tap)接口和/或thunderbolt™到tap(tbt2tap)接口进行操作。

各种追踪(例如来自ap240、调制解调器基带260和调制解调器rf280的说明性追踪流244、264、284)可被带到功能i/o接口210以用于到外部调试工具的通信。在各种追踪源之间进行选择的复用机制可在中央组件中或者在可适应这个逻辑的组件之一中实现。尽管追踪流244、264、284示为绕过tap网络230和胶连逻辑220,某些实施例并不限于这个方面,以及一些或所有这种追踪流可要求处理(例如在胶连逻辑220)以准备根据pcie协议或tbt协议从系统200的通信。

在所示的说明性实施例中,对ap240、调制解调器bbp260和调制解调器tx/rx280的tdt访问(例如包括(c)jtag(或其它)调试访问和/或追踪访问)可由相应tdt逻辑242、262、282以各种方式来支持。这种tdt逻辑242、262、282可以以各种方式提供从常规技术所适配的某个追踪、调试和/或测试功能性。在一些实施例中,tdt逻辑242、262、282的一个或多个提供组件加载和运行本地tdt代理以执行例如同一组件或另一个组件的tdt评估的功能性。备选地或另外地,tdt逻辑242、262、282的一个或多个可提供将对应组件表示为支持tdt功能性的类型的装置(例如使用修改pcie类惯例如此识别的多功能装置)的功能性。

可通过采用pcie和thunderbolt™所支持的数据速率(例如包括5千兆比特每秒(gps)乃至高达20gps和40gps的速率)极大地改进tdt访问和交换。相反,例如在系统100所执行的那些tap交换的tap交换按传统已处于大约100兆赫。一些实施例能够通过功能(例如thnderbolt™)i/o接口210,以访问应用处理器(ap)240并且运行其中的代理过程。代理可经由系统200的内部网络(例如诸如包括pcie总线250、270的网络)来交换tdt命令/查询。进行响应,系统200的一个或多个其它组件可向ap240回送信息以用于评估、转发和/或其它处理。

系统200可包括一个或多个附加或备选连接器(例如存储模块或通信模块的m.2连接器),其支持pcie机制。这种连接器可支持系统200到测试或调试工具的连接,所述测试或调试工具要访问系统200内部的组件—例如用于边界扫描、内置自检(bist)、熔融、闪烁(flashing)、测试和/或调试)。

图3示出根据实施例的、基于经由功能接口的通信来执行tdt操作的方法300的元件。方法300可在ic芯片、封装装置、计算机平台或者具有例如系统200的一些或所有特征的其它硬件来执行。

方法300可包括在310经由装置的输入/输出(i/o)接口将装置耦合到外部代理。在实施例中,装置(例如其可以是或者以其它方式包括例如系统200)包括多个电路组件,例如组件235。装置还可包括将多个电路组件相互耦合的第一网络,第一网络包括互连以交换tdt信息的接入点。这种第一网络可包括测试接入点的网络(tap网络),其耦合在多个电路组件与i/o接口之间。在实施例中,i/o接口与外设互连标准(例如pcie标准或thunderbolt™标准)兼容,所述外设互连标准支持除了任何测试信息、调试信息或追踪信息之外的操作数据的传递。

在实施例中,方法300还包括在320经由i/o接口与外部代理交换信息,以及在330在测试接入点的网络与i/o接口之间经由装置的胶连逻辑来交换信息。在330的交换可包括胶连逻辑调整i/o接口的第一速率与测试接入点的网络的第二速率之间的信息的传递。例如,胶连逻辑可包括一个或多个缓冲器,其中胶连逻辑通过以不同相应速率采用一个或多个缓冲器以各种方式对数据进行缓冲和去缓冲来调整信息的传递的速率。

在一些实施例中,在330的交换包括识别配置状态的映射i/o信息和/或描述电路组件的一个或多个的其它信息。例如,装置还可包括第二网络,其经由耦合在第一网络与第二网络之间的逻辑(本文中称作总线接入单元)与第一网络进行接口。第二网络可支持具有不同格式、数据速率和/或除了由第一网络所支持特性之外的特性的通信。备选地或另外地,第二网络可被耦合以交换除了任何tdt信息之外的信息。总线接入单元可提供在第一网络与第二网络的不同相应通信速率之间进行调整的功能性。在这种实施例中,在330的交换可包括胶连逻辑交换存储器映射i/o信息,其中这种存储器映射i/o经由第二网络来访问。在330的交换还可包括总线接入单元调整这种存储器映射i/o信息的传递的速率。

方法还可包括在340执行tdt操作以评估多个电路组件其中之一。在实施例中,tdt操作生成信息,或者响应信息而执行。例如,信息可包括由外部代理所提供的软件代码,其中执行tdt操作包括多个电路组件的第一电路组件运行软件代码。软件代码的运行可导致第一电路组件提供tdt过程,其评估第一电路组件和/或装置的某个其它电路组件。备选地或另外地,在320和330所交换的信息可包括要由tdt代理所服务的一个或多个命令、tdt操作的结果等。

图4示出根据实施例的、执行tdt操作的系统400的元件。系统400是其中平台的一个装置托管平台的其它装置的tdt胶连逻辑功能性的实施例的一个示例。系统400可包括例如系统200的特征的一些或所有。在一个实施例中,方法300在系统400执行。

系统400包括主机410,其包括或者耦合到功能接口(i/f)412,所述功能接口(i/f)412提供系统400到调试工具和/或其它外部tdt代理(未示出)的耦合。例如,功能i/f412可驻留于soc上或者包括soc和/或一个或多个其它ic装置的计算机平台上。主机410可促进tdt操作以评估系统400的一个或多个组件,例如说明性调制解调器450和连接性逻辑cnv460(例如包括蓝牙、无线lan和/或其它这种电路)。

作为说明而不是限制,主机410的胶连逻辑420可使能功能i/f412与tap网络之间的tdt信息的交换,所述tap网络(例如)包括主机410、调制解调器450和cnv460的相应端点ep422、ep452和ep462。如本文所使用的“端点”(或者“ep”)指的是通信链路的逻辑终点(terminus)。tap网络还可包括链路(例如包括说明性链路444、446)以各种方式将ep422、ep452和ep462相互耦合。

胶连逻辑420的追踪主干424可包括控制通信和/或例如从常规追踪技术所适配的其它操作的电路。为了提供追踪信息的交换,接口逻辑(在功能上表示为trace2pcie422)可提供缓冲、数据速率转换和/或其它功能性,以促进tap网络(经由追踪主干424)与包含在功能i/f420中或者与其操作的pcie机制之间的通信。备选地或另外地,调试控制428可包括控制通信和/或例如从常规(c)jtag和/或其它调试技术所适配的其它操作的电路。附加接口逻辑(在功能上表示为jtag2pcie426)可类似地促进tap网络(经由调试控制428)与包含在功能i/f420中或者与其操作的pcie机制之间的调试信息的传递。

在所示的说明性实施例中,主机410包括本地资源(例如包括说明性处理器430),其要通过tbt操作来评估和/或以其它方式参加tbt操作。处理器430可包括(例如中央处理单元(cpu)、应用处理器等的)一个或多个核436,以实现软件、固件和/或其它逻辑(例如提供主机操作系统(os)、用户界面等的逻辑)。处理器430的互连438可促进一个或多个核436到处理器430的其它组件(未示出)的连接—例如其中一些或所有这种组件要根据实施例通过tbt过程来评估。备选地或另外地,互连438可提供对例如要从处理器430传送追踪信息的外部通信路径的访问。在一个实施例中,处理器430包括本地接口逻辑(通过功能块pcie2tap434所表示),其包括将处理器430的pcie机制与tap网络进行接口的电路。作为说明而不是限制,pcie2tap436的电路可提供缓冲、速度转化和/或支持内部网络(例如包括互连438的pcie硬件)与以各种方式驻留于组件上的、要生成追踪数据的相应电路之间的交换的其它胶连逻辑功能性。

处理器430的端点ep432可经由交换机440来耦合到ep422,所述交换机440例如也促进ep442与胶连逻辑420之间的调试和/或其它tdt通信。处理器430还可经由pcie根414来耦合到交换机440—例如其中pcie根414提供与功能i/f412和/或各种组件(例如调制解调器450和ncv460)的任何组件的通用(例如除了tdt之外)交换。处理器430通过其耦合到功能i/f412、胶连逻辑420和/或ep442的主机410中的特定架构只是说明性的,而不是对一些实施例进行限制。

耦合到主机410的一个或多个组件可包括相应机制(例如与处理器430的那些机制相似)以便以各种方式参加tbt操作。例如,调制解调器450可包括一个或多个处理器核456和逻辑(在功能上通过pcie2tap454所表示),其提供tap网络与调制解调器450内部的pcie机制之间的接口。这种内部pcie机制可用于例如使一个或多个核456访问或者以其它方式管理调制解调器450的其它资源(未示出),其它资源经由互连458来耦合。根据实施例,一些或所有这种其它资源可通过tdt操作来评估。备选地或另外地,cnv460可包括一个或多个核466、pcie2tap464和互连468,其(至少相对于tdt操作)提供与一个或多个核456、pcie2tap454和互连458的相应功能性相似的功能性。

系统400的端点组件可(例如经由一个或多个pcie总线)以各种方式相互耦合。pcie网络可包括一个或多个路径,其根据实施例适合促进追踪信息的流传送和/或其它交换。基于存储器i/o的机制(例如根据pcie所支持的那些机制)可适合于对寄存器的读和写访问,以用于交换tbt数据、命令和/或其它信息。在所示的说明性实施例中,与调制解调器450和/或cnv460交换追踪信息的访问经由处理器430和功能i/f412进行。功能i/f412可以另外地或备选地包括符合例如thunderbolt™标准的电路和/或其它硬件。在一些实施例中,功能i/f412包括符合usb标准或wifi标准的电路和/或其它硬件。

某些实施例适配各种pcie和/或其它外部接口机制(例如装置类)以支持附加tbt功能性。一些实施例引入调试装置类的使用,以经由pcie来实现调试操作—例如其中调试装置类用来通过pcie端点来暴露调试能力。在实施例中,要调试的系统组件(“调试从设备(debugslave)”)对调试主机代理可能没有被识别为独立装置。相反,调试从设备可表示为调试主机通过其访问调试从设备的pcie端点的功能。表示可例如使用pcie多功能装置选项(例如诸如pcie报头空间的报头类型字段中所指示的选项)来实现。因此,调试功能性可有选择地基于装置设定来暴露(或者备选地隐藏),从而避免对于为调试从设备组件分配和管理专用端点配置信息的需要。

另外地或备选地,pcie功能可适合以各种方式使用子类和程序接口—例如以在系统400中实现各自实现相应数据操控和/或组件配置的一个或多个独立驱动器实例。在实施例中,在调制解调器460和cnv460之一中运行的追踪驱动器因而能够在引导之后作为独立代理进行操作。备选地或另外地,这种一个或多个追踪驱动器实例可通过一个中央系统驱动器(例如在主机410)对各种系统组件进行注册来以各种方式来建立,其中相应追踪信息要由对应驱动器来操控。

在一个说明性实施例中,配置子类可由调试装置类的任何装置来暴露。配置类可用来使接口暴露于调试从设备的调试拓扑—例如采取分级树或链接列表的形式。备选地或另外地,调试访问类可用来暴露诸如内置自检(bist)、扫描和软件(sw)代码调试的功能性。这些功能性可支持断点机制、运行控制和/或其它特征。

在一些实施例中,追踪类可用来配置追踪源的输出路径。取决于实现,追踪数据可通过这个接口来读出或者由装置本身来写。备选地或另外地,追踪配置子类可暴露追踪源配置,以及在一些实施例中暴露存储追踪装置外部的一个或多个追踪所需的配置。这种追踪配置子类可用来传递例如pull或push功能性的选择、dma写的基址等。例如,当前pcie标准没有定义任何这种调试装置类或追踪类。

图5示出根据另一个实施例的系统500的特征,所述系统500包括配置成提供对存储器和/或i/o空间的tdt访问的外部(例如pcie或thunderbolt™)接口。系统500可包括例如系统200、400其中之一的特征。在一个实施例中,方法300的一些或所有在系统500执行。

系统500包括功能接口510(例如包括外部pcie连接器或thunderbolt™连接器),其耦合到总线接入单元514。总线接入单元514包括提供对追踪片上网络(noc)520的访问的电路—例如其中追踪noc520专用于交换追踪信息并且例如与系统500的通用noc加以区分。追踪noc520又可提供(例如)对系统500的存储器540、i/o空间542和/或应用处理器550中的存储器空间的访问。这种访问可支持运行和/或追踪控制功能性。

总线接入单元514的功能性可与本文中相对于pcie2tap或其它这种接口逻辑所讨论的速度转化(胶连逻辑)功能性相似。这种胶连逻辑可匹配接口速度。例如,追踪noc520可包括相对慢的32比特或64比特总线,而pcie接口提供串行通信—例如以8千兆赫的字段速率(fieldrate)。在这种实施例中,总线接入单元514可包括缓冲器电路和串行器/解串器电路,以适应两种接口类型之间的交换。在另一个实施例中,系统500没有包括专用追踪noc,以及总线接入单元514促进经由通用noc530的追踪交换。

在实施例中,其它tdt交换通过除了功能接口510之外的接口来执行。作为说明而不是限制,系统500可包括另一个外部接口(在功能上表示为说明性jtag2bus512),其专用于传递调试信息(例如包括调试命令、输出等)。除了(c)jtag连接器硬件之外,例如,jtag2bus512还可包括电路逻辑,促进缓冲、速度匹配和/或与总线接入单元514进行接口的其它胶连逻辑功能。

为了支持调试信息的高吞吐量交换以及得到追踪操作的高速访问,pcie和/或其它机制可在noc530来提供,以支持对ap550、存储器540或者i/o空间542的相应资源的存储器映射输入/输出(mmio)访问。因此,追踪源可通过追踪noc520经由高速pcie/thunderbolt™接口来访问。在各种追踪源之间进行选择的复用机制可在中央模块中或者跨多个组件来实现。较粗线在图5中用来表示追踪信号路径。

图6示出根据另一个实施例的、执行tdt操作的系统600的元件。系统600可包括例如系统200、400和500其中之一的特征。在一个实施例中,方法300的一些或所有在系统600执行。系统600是包括包含例如(1)第一接口逻辑以及(2)第二接口逻辑的接口逻辑的多个(例如嵌套)层两者的系统的一个示例,所述第一接口逻辑耦合在tap网络与功能接口之间,所述第二接口逻辑耦合在tap网络与另一个内部网络之间。系统600的一个功能接口可包括pcie/tbt电路和/或其它硬件。这种功能接口可经由接口逻辑来访问tap网络,所述接口逻辑提供速度速度转化、缓冲和/或其它接口功能性,例如本文所述的功能性。tap网络可提供对多种组件(包括例如cpu核、硬件加速器、音频数字信号处理器等)的任何组件的访问。在实施例中,tap网络还可访问总线接入模块,其又提供对noc的访问以及在一些实施例中提供对于经由noc所耦合的一个或多个组件(例如存储器和i/o空间)的访问。接口逻辑(例如pcie2tap电路或tbt2tap电路)还可提供仲裁状态机或者其它这种逻辑,以促进组件之间的握手/协调。

在系统600的说明性实施例中,一个或多个功能接口(例如包括pcie端口612和/或usb端口614)可配置成支持tdt通信和/或其它操作以评估系统600的组件。在所示的说明性实施例中,这种组件可包括一个或多个cpu核650、hw加速器652、音频dsp654。评估一些或所有这种组件的调试操作可经由pcie端口612和usb端口614其中之一来执行。在其它实施例中,专用外部调试接口(例如说明性(c)jtag端口610)可提供到外部调试代理的连接性。

对系统600的组件的tdt访问可由tap网络630以及在一些实施例中由另一个内部网络(例如说明性noc660)以各种方式促进。系统600的胶连逻辑可包括pcie端口612与tap网络630之间的第一接口(表示为pcie2tap620)。pcie2tap620可促进系统600的调试能力—例如其中pcie2tap620进行操作以基于从耦合到pcie端口612的外部调试器代理所接收的pcie命令来生成(c)jtag序列。系统600的胶连逻辑另外地或备选地可包括usb端口614与tap网络630之间的第二接口(表示为usb2tap622)。pcie2tap620和usb2tap622可如本文所述以各种方式提供缓冲、数据速率匹配和/或其它接口功能性。tap网络630和noc660可经由胶连逻辑(例如由说明性总线接入单元640所提供的胶连逻辑)相互进行接口。

基于存储器i/o的机制(例如根据pcie所支持的那些机制)可适合于对寄存器的读和写访问,以用于交换tbt数据、命令和/或其它信息。例如,pcie功能性可使用pcie2tap620用来访问tap网络630,以及又访问否则可能使用(c)jtag端口610所调试的组件。tap网络630可以(例如独立于noc660)可访问一个或多个cpu核650、hw加速器652、音频dsp654等的一些或所有。这种访问可基于存储器映射i/o信息,其例如是经由耦合到noc660的存储器670和/或i/o空间672可用的。例如,tap网络630可经由总线接入模块640和片上网络640来访问存储器670中的寄存器空间和i/o空间672。

图7示出根据实施例的、执行tdt操作的系统700的元件。系统700可包括例如系统600的特征。在一个实施例中,方法300的一些或所有在系统700执行。系统700的外部端口可包括pcie端口712、usb端口714和(c)jtag端口710的一些或所有,其提供与例如pcie端口612、usb端口614和(c)jtag端口610的相应功能性对应的功能性。要通过tdt操作所评估的系统700的组件可包括一个或多个cpu核750、hw加速器752和音频dsp754(分别对应于例如一个或多个cpu核650、hw加速器652和音频dsp654)。这种tdt操作可经由tap网络730、总线接入单元740和noc760(例如具有与tap网络630、总线接入单元640和noc660的相应功能性对应的功能性)的一些或所有以各种方式交换追踪、调试和/或测试信息。促进这些交换的胶连逻辑可包括pcie2tap720和usb2tap722(例如分别对应于pcie2tap620和usb2tap622)。用来评估系统700的组件的tdt访问可包括或者以其它方式基于对存储器映射i/o信息的访问,其使能对这种组件的访问或者以其它方式描述这种组件。一些或所有这种存储器映射i/o信息可例如由存储器770和/或i/o空间772(具有与例如存储器670和i/o空间672的相应功能性对应的功能性)来存储。

系统700是包括用于使能例如代替另外的常规调试功能性或除其以外的测试模式(例如用于扫描测试、存储器测试等)的机制的实施例的示例。在实施例中,系统700的串并行(s2p)接口接收经由外部pcie接口所提供的测试激励。s2p接口可将激励转换成并行测试协议,其随后例如应用于扫描接口或者存储器bist接口(未示出)。来自这种扫描接口或者存储器bist接口的响应可通过并串行(p2s)接口从并行转换成串行格式,并且经由外部pcie端口712从系统700发送。

作为说明而不是限制,系统700可使用pcie端口712(或者在另一个实施例中使用tbt端口)来捕获串行测试流,并且例如将它转换成并行数据通信—例如采用解串器逻辑,例如说明性串并行电路s2p780。并行化数据可从s2p780输出到并行寄存器782(例如包括测试模式i/o寄存器和/或状态寄存器)以供加载扫描链中使用。所加载的扫描链随后可被锁定以用于测试的执行。测试可产生测试数据的输出,其被捕获和串行化—例如经由p2s782的串行器逻辑—并且经由pcie端口720传递给外部测试器单元(未示出),其耦合到系统700。这种交换可发生以用于调试、测试、验证等。pcie端口720(或者在另一个实施例中为tbt接口)因而可用来促进扫描链测试、存储器测试、i/o测试、评估和/或系统700的各种其它组件的任何组件的其它测试。在一些实施例中,其它测试模式命令和/或测试响应可经由tap网络在pcie接口之间交换(独立于任何这种s2p和p2s功能性)以促进各种其它测试模式的任何测试模式。对pcie基础设施的访问可通过thunderbolt™或m.2接口(未示出)来提供,即,其中能够去除插入式卡以获得对pcie的访问。

一些实施例提供将调试和/或测试(调试/测试)命令加载到例如运行于一个组件的代理中,以执行评估另一个组件的tdt操作。参照系统200的示例实施例,ap240的tdt逻辑242可基于由外部tdt单元经由i/o接口210和tap网络230所提供的软件代码来运行调试/测试代理。这种调试/测试代理的运行可评估例如调制解调器bbp260。i/o接口210(例如pcie接口)可用来对ap240加载要由调试/测试代理所服务的测试/调试代理代码和/或命令。调试/测试代理另外地或备选地可评估例如ap240和/或调制解调器tx/rx280。来自所评估的(一个或多个)组件的响应可回送给ap240处的调试/测试代理,并且随后可经由i/o接口210与外部tdt单元相关。

备选地或另外地,调试/测试代理(或其它tdt代理)可加载到能够或运行和执行这种固件和/或软件的多种其它系统组件的任何组件中。又参照系统200,代替地调试/测试代理可被加载以便由驻留在调制解调器bbp260的控制器电路中的处理器逻辑(例如tdt逻辑262)来运行。命令可加载到调制解调器bbp260的这种调试/测试代理中,以便对例如ap420进行调试/测试。i/o接口210可用来为调制解调器bbp260的这种调试/测试代理加载调试/测试命令,以测试调制解调器bbp260、ap240调制解调器tx/rx280和/或系统200的任何其它适当配置的组件。

图8a、图8b以各种方式示出各自根据对应实施例的、执行各种tdt操作的系统800的元件。系统800可包括例如系统200、400、500、600和700其中之一的特征。在一个实施例中,方法300的一些或所有在系统800执行。如图8a所示,系统800可包括应用处理器ap810,其经由链路804来耦合,以接收来自例如经由接口硬件802来耦合到系统800的外部调试/测试代理(未示出)的命令。在一个实施例中,接口硬件802包括外部(例如pcie或thunderbolt™)接口。硬件802还可包括tap网络和胶连逻辑,以便与外部接口进行接口。在一些实施例中,胶连逻辑另外地或备选地在系统800的另一个组件(例如说明性ap810)中被提供。

使用ap810,系统800中的一个或多个pcie链路(例如说明性互连812、814)可被访问以加载一个或多个代理—例如各自在调制解调器820、wifi830和/或各种其它组件的任何组件的相应一个上。电话通信可提供有3gtx/rx824,其经由链路822来耦合到调制解调器820。这种一个或多个代理的一些或所有可以以各种方式执行相应调试和/或测试。例如,被加载以运行于一个组件的代理可执行调试和/或测试以评估那个同一组件或者系统800的一些其它组件。作为说明而不是限制,ap810可促进硬件802的外部接口与由调制解调器820的处理器所运行的调试过程db1之间的调试信息的交换816。另外地或备选地,ap810可促进硬件802的外部接口与由wifi830的处理器所运行的另一个调试过程db2之间的调试信息的交换818。在一些实施例中,代替地wifi830可以是多种无线机制的任何无线机制,例如蓝牙、蓝牙-le、nfc、3g、4g-lte、5g等。

在图8b的说明性实施例中,外部代理可经由无线通信850来交换可运行代码、测试/调试命令和/或其它tdt信息。例如,调试命令可无线下载到wifi830,并且随后经由ap810和互连812、814来发送给调制解调器820。因此,wifi830和ap810可促进外部代理与在调制解调器820所运行的调试过程db3之间的调试信息的交换852。系统800的pcie网络结构的使用可使能调试和/或其它dtd信息的持续高速传递。

图9a、图9b示出各自根据对应实施例的、由系统900以各种方式执行的tdt操作。系统900可包括例如系统800的特征。在一个实施例中,方法300的一些或所有在系统900执行。

如图9a所示,系统900可包括平台902,其例如包括系统800的特征。外部端口(例如说明性m.2连接器904)可将平台902耦合到系统900的一个或多个外部装置。在一个示例、实施例中,这种外部装置包括pcie交换机934、无线通信电路wifi936和pcie卡932。然而,在其它实施例中,平台902可耦合到更少、更多和/或不同的外部装置。除了平台902之外,一些或所有这种外部装置可要由dtd单元930来评估。

平台902的组件可包括ap910、调制解调器920和3gtx/rx924,其例如提供与ap810、调制解调器820和3gtx/rx824的相应功能性对应的功能性。这种组件的相互互连以及与m.2连接器904的互连可采用互连912、942和链路922(例如具有与互连812、842和链路822的相应功能性对应的功能性)来提供。采用dtd单元930所执行的tdt操作可经由平台902、pcie交换机934、wifi936和pcie卡940的网络化布置以各种方式交换追踪、调试和/或测试信息。胶连逻辑(未示出)可以以各种方式包括在网络的一些或所有这种组件中—例如其中这种胶连逻辑要将通用功能接口(例如m.2连接器904)与tap网络进行接口。

如图9a所表示的说明性实施例所示,pcie交换机934可用来由m.2连接器904来提供与分立pcie卡932或者分立wifi936的通信。tdt单元930可参加与pcie卡932的有线通信—例如支持一个或多个交换,例如所示的说明性交换940、944、942。例如,pcie卡932与pcie交换机934之间的交换940可促进下游交换942、944之一或两者。交换942可在m.2连接器904与ap910和调制解调器920之一或两者之间以各种方式传递相应tdt信息。基于交换942,一个或多个测试/调试代理各自可在平台902的相应组件以各种方式运行。作为说明而不是限制,ap910可运行调试过程db4,和/或调制解调器920可运行调试过程db5。备选地或另外地,交换944可产生或者基于由在pcie卡932运行的调试过程db6进行的操作。

在由图9b所表示的实施例中,例如除与pcie卡932的有线通信以外或代替与pcie卡932的有线通信,tdt单元930可参加与wi-fi936的无线通信。这种无线通信可促进tdt信息的交换,例如所示的说明性交换990、992、994。wifi936与pcie交换机934之间的交换990可促进下游交换992、994之一或两者。基于交换992,一个或多个测试/调试代理各自可在平台902的相应组件以各种方式运行。作为说明而不是限制,ap910可运行调试过程db7,和/或调制解调器920可运行调试过程db8。备选地或另外地,交换994可产生或者基于由在pcie卡932运行的调试过程db9进行的操作。

图10示出根据实施例的、执行tdt操作的系统1000的元件。系统1000可包括例如系统200、400其中之一的特征。在一个实施例中,方法300的一些或所有在系统1000执行。根据实施例,系统1000包括用于tdt操作和/或通信的采用菊花链配置所布置的多个装置。菊花链装置可经由相应功能接口(例如包括pcie接口和/或tbt接口)相互耦合。包含于或者耦合到系统1000的tdt主机(例如tdt单元1002、1004之一)可位于各自处于连续装置之间的菊花链连接的端。这种装置各自可包括相应胶连逻辑(例如包括pcie2tap电路、tbt2tap电路、总线访问机制等),以便以各种方式辅助功能接口机制与内部装置组件的相应测试接入点之间的tdt操作/通信。

在系统1000的说明性实施例中,菊花链装置包括主平台1010,其具有例如主机410的一些或所有特征。主平台1010和其它装置1020、1030、1040可经由相应物理层phy1016、1022、1032、1042和相应端点ep1014、1024、1034、1044相互串联耦合。在一个实施例中,主机平台1010的主机接口1012使能在菊花链配置的一端的tdt单元1002的连接。装置1020、1030、1040的控制器1026、1036、1054以各种方式提供各自执行相应tdt操作的处理器功能性。对于装置1020、1030、1040的一些或所有,相应胶连逻辑(例如所示的各种pcie2tap接口电路p2t1028、p2t1038、p2t1050其中之一)可将装置的本地pcie机制与装置的tap网络结构进行接口。一个或多个装置可包括促进tdt操作的附加或备选架构。例如,装置1040可包括追踪主干tbb1062,以支持追踪功能性,其例如从常规技术所适配)。装置1040的胶连逻辑tr2p1060可将tbb1060与装置1040的pcie机制进行接口。在实施例中,这种pcie机制可包括或者耦合到交换机1046,p2t1050、控制器1054和ep1044通过所述交换机1046相互通信并且例如与cpu1052进行通信。

在一些实施例中,装置的pcie/tbt接口可耦合到那个装置的独立功率轨道,例如调试功率轨道。这可使能相对早和/或低功率状态调试操作。pcie/thunderbolt™接口典型地在系统唤醒期间在其它组件上电之后开启。这是因为用户在调制解调器(或其它组件)最初唤醒时典型地不需要高速接口。例如,收听音乐的用户不希望未使用的thunderbolt™接口同时消耗功率。然而,将这种功能(例如带内)接口置于独立功率轨道可至少对于tbt功能性而使能接口的及早加电—例如以调试音频逻辑、功率管理控制器(pmc)和/或各种其它相对低功率组件的其它任何组件。

图11示出采取计算机系统1100的示范形式的机器的图解表示,在所述计算机系统1100中可运行用于使机器执行本文所述方法的任何一个或多个的指令集。在备选实施例中,机器可连接(例如网络化)到局域网(lan)、内联网、外联网或因特网中的其它机器。机器在客户端-服务器网络环境中以服务器或客户端机器的能力进行操作,或者在对等(或分布式)网络环境中作为对等机器进行操作。机器可以是个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、万维网设备、服务器、网络路由器、交换机或桥接器或者能够运行指定要由那个机器所采取的动作的指令集(顺序或其它方式)的任何机器。此外,虽然仅示出单个机器,但是,术语“机器”还应被理解为包括单独或联合运行一个(或多个)指令集以执行本文所述方法的任一个或多个的机器(例如计算机)的任何集合。

示范计算机系统1100包括处理器1102、主存储器1104(例如只读存储器(rom)、闪速存储器、动态随机存取存储器(dram)(例如同步dram(sdram)或存储器总线dram(rdram)等)、静态存储器1106(例如闪速存储器、静态随机存取存储器(sram)等)以及辅存储器1118(例如数据存储装置),其经由总线1130相互通信。

处理器1102表示一个或多个通用处理装置,例如微处理器、中央处理单元等。更具体来说,处理器1102可以是复杂指令集计算(cisc)微处理器、简化指令集计算(risc)微处理器、超长指令字(vliw)微处理器、实现其它指令集的处理器或实现指令集的组合的处理器。处理器1102也可以是一个或多个专用处理装置,例如专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器等。处理器1102配置成运行处理逻辑1126以用于执行本文所述的操作。

计算机系统1100还可包括网络接口装置1108。计算机系统1100还可包括视频显示单元1110(例如液晶显示器(lcd)、发光二极管显示器(led)或阴极射线管(crt))、字母数字输入装置1112(例如键盘)、光标控制装置1114(例如鼠标)和信号生成装置1116(例如扬声器)。

辅存储器1118可包括机器可访问存储介质(或者更具体来说是计算机可读存储介质)1132,其上存储了实施本文所述方法或功能的任一个或多个的一个或多个指令集(例如软件1122)。软件1122也可在由计算机系统1100对于其的运行期间完全或者至少部分驻留在主存储器1104中和/或处理器1102中,主存储器1104和处理器1102还构成机器可读存储介质。软件1122还可经由网络接口装置1108通过网络1120来传送或接收。

虽然机器可访问存储介质1132在示范实施例中示为单个介质,但是术语“机器可读存储介质”应当被理解为包括存储一个或多个指令集的单个介质或者多个介质(例如集中式或分布式数据库和/或关联的高速缓存存储器和服务器)。术语“机器可读存储介质”也将被认为包括任何介质,其能够对于由机器运行的指令集进行存储或编码并且使机器执行一个或多个实施例的任何实施例。术语“机器可读存储介质”相应地将被理解为包括但不限于固态存储器以及光和磁介质。

在一个实现中,装置包括输入/输出(i/o)接口,以便将装置耦合到外部代理并且与外部代理交换信息,其中i/o接口与外设互连标准兼容,所述外设互连标准支持除了任何测试信息、调试信息或追踪信息之外的操作数据的传递。装置还包括第一网络;经由第一网络相互耦合的多个电路组件,其中第一网络包括耦合在多个电路组件与i/o接口之间的测试接入点的网络;以及在测试接入点的网络与i/o接口之间交换信息的胶连逻辑,其中多个电路组件包括执行测试、调试或追踪(tdt)操作以评估多个电路组件之一的电路,其中tdt操作生成信息或者对信息进行响应。

在实施例中,在测试接入点的网络与i/o接口之间交换信息的胶连逻辑包括调整i/o接口的第一速率与测试接入点的网络的第二速率之间的信息的传递的胶连逻辑。在另一个实施例中,胶连逻辑包括一个或多个缓冲器,其中调整第一速率与第二速率之间的信息的传递的胶连逻辑包括以不同相应速率对数据进行缓冲和去缓冲的胶连逻辑。在另一个实施例中,装置还包括总线接入单元;以及经由总线接入单元来耦合到第一网络的第二网络,其中总线接入单元包括在第一网络与第二网络的不同相应通信速率之间进行调整的电路,其中在测试接入点的网络与i/o接口之间交换信息的胶连逻辑包括交换经由第二网络所访问的存储器映射i/o信息的胶连逻辑。在另一个实施例中,外设互连标准是外设组件互连高速(pcie)标准或thunderbolt™标准。在另一个实施例中,信息包括由外部代理提供给多个电路组件的软件代码,其中执行tdt操作的多个电路组件包括运行软件代码的第一电路组件。在另一个实施例中,tdt操作要评估多个电路组件的第二电路组件,第二电路组件不同于第一电路组件。

在另一个实现中,一种方法包括经由装置的输入/输出(i/o)接口将装置耦合到外部代理,装置包括多个电路组件以及将多个电路组件相互耦合的第一网络,第一网络包括耦合在多个电路组件与i/o接口之间的测试接入点的网络,其中i/o接口与外设互连标准兼容,所述外设互连标准支持除了任何测试信息、调试信息或追踪信息之外的操作数据的传递;经由i/o接口与外部代理交换信息;经由装置的胶连逻辑在测试接入点的网络与i/o接口之间交换信息;以及执行测试、调试或追踪(tdt)操作,以评估多个电路组件之一,其中tdt操作生成信息或者对信息进行响应。

在实施例中,在测试接入点的网络与i/o接口之间交换信息包括胶连逻辑调整i/o接口的第一速率与测试接入点的网络的第二速率之间的信息的传递。在另一个实施例中,胶连逻辑包括一个或多个缓冲器,其中胶连逻辑调整第一速率与第二速率之间的信息的传递包括胶连逻辑来以不同相应速率对数据进行缓冲和去缓冲。在另一个实施例中,经由胶连逻辑在测试接入点的网络与i/o接口之间交换信息包括胶连逻辑交换经由装置的第二网络所访问的存储器映射i/o信息,以及调整第一网络与第二网络的不同相应通信速率之间的存储器映射i/o信息的传递。在另一个实施例中,外设互连标准是外设组件互连高速(pcie)标准或thunderbolt™标准。在另一个实施例中,信息包括由外部代理提供给多个电路组件的软件代码,其中执行tdt操作包括多个电路组件的第一电路组件运行软件代码。在另一个实施例中,tdt操作评估多个电路组件的第二电路组件,第二电路组件不同于第一电路组件。

在另一个实现中,系统包括片上系统(soc),所述片上系统包括输入/输出(i/o)接口,以便将soc耦合到外部代理并且与外部代理交换信息,其中i/o接口与外设互连标准兼容,所述外设互连标准支持除了任何测试信息、调试信息或追踪信息之外的操作数据的传递。soc还包括第一网络;经由第一网络相互耦合的多个电路组件,其中第一网络包括耦合在多个电路组件与i/o接口之间的测试接入点的网络;以及在测试接入点的网络与i/o接口之间交换信息的胶连逻辑,其中多个电路组件包括执行测试、调试或追踪(tdt)操作以评估多个电路组件之一的电路,其中tdt操作生成信息或者对信息进行响应。系统还包括耦合到soc的显示器,显示器基于经由i/o接口所交换的操作数据来生成图像。

在实施例中,在测试接入点的网络与i/o接口之间交换信息的胶连逻辑包括调整i/o接口的第一速率与测试接入点的网络的第二速率之间的信息的传递的胶连逻辑。在另一个实施例中,胶连逻辑包括一个或多个缓冲器,其中调整第一速率与第二速率之间的信息的传递的胶连逻辑包括以不同相应速率对数据进行缓冲和去缓冲的胶连逻辑。在另一个实施例中,soc还包括总线接入单元;以及经由总线接入单元来耦合到第一网络的第二网络,其中总线接入单元包括在第一网络与第二网络的不同相应通信速率之间进行调整的电路,其中在测试接入点的网络与i/o接口之间交换信息的胶连逻辑包括交换经由第二网络所访问的存储器映射i/o信息的胶连逻辑。在另一个实施例中,外设互连标准是外设组件互连高速(pcie)标准或thunderbolt™标准。在另一个实施例中,信息包括由外部代理提供给多个电路组件的软件代码,其中执行tdt操作的多个电路组件包括运行软件代码的第一电路组件。在另一个实施例中,tdt操作要评估多个电路组件的第二电路组件,第二电路组件不同于第一电路组件。

本文描述用于支持测试、调试和/或追踪功能性的技术和架构。为了解释的目的,在以上描述中提出大量具体的细节,以便提供对某些实施例的透彻理解。然而,对本领域的技术人员将会显而易见的是,在没有这些具体细节的情况下,也能够实践某些实施例。在其它实例中,结构和装置以框图形式示出,以免模糊描述。

本说明书中提到“一个实施例”或“实施例”意思是结合实施例所述的具体特征、结构或特性包含在本发明的至少一个实施例中。短语“在一个实施例中”在本说明书的各种位置的出现不一定全部指同一个实施例。

本文中的详细描述的一些部分根据对计算机存储器中的数据比特的操作的算法和符号表示来呈现。这些算法描述和表示是由计算领域的技术人员用来向本领域的其它技术人员最有效地传达他们的工作主旨的手段。算法在此以及一般预期是产生期望结果的步骤的自洽序列。步骤是要求物理量的物理操控的那些步骤。这些量通常但不一定采取能够被存储、传递、组合、比较以及以其它方式操控的电或磁信号的形式。主要为了一般使用的原因,将这些信号称作比特、值、元素、符号、字符、项、编号等,已经证明有时是便利的。

然而应当记住,所有这些及类似项要与适当的物理量关联,并且只是应用于这些量的便利标签。除非另加具体说明,否则从本文的讨论显而易见,要意识到的是,在整个描述中,利用诸如“处理”或“计算”或“演算”或“确定”或“显示”等的术语的讨论指的是计算机系统或类似电子计算装置的动作和过程,所述计算机系统或类似电子计算装置操控表示为计算机系统的寄存器和存储器中的物理(电子)量的数据并将其变换为类似地表示为计算机系统存储器或寄存器或者其它这种信息存储、传输或显示装置中的物理量的其它数据。

某些实施例还涉及用于执行本文中的操作的设备。这种设备可专门构造用于所需目的,或者它可包括通过计算机中存储的计算机程序有选择地激活或重新配置的通用计算机。这种计算机程序可存储在计算机可读存储介质中,例如但不限于:任何类型的盘,包括软盘、光盘、cd-rom和磁光盘;只读存储器(rom)、随机存取存储器(ram),例如动态ram(dram)、eprom、eeprom;磁或光卡;或者适合存储电子指令、并且耦合到计算机系统总线的任何类型的介质。

本文所呈现的算法和显示并不是固有地与任何特定计算机或其它设备相关。各种通用系统可与根据本文教导的程序一起使用,或者构建更专门的设备来执行所需方法步骤可证明是便利的。多种这些系统的所需结构将由本文的描述将会显现。另外,某些实施例没有参照任何具体编程语言来描述。将会意识到的是,多种编程语言可用于实现如本文所述的这种实施例的教导。

除了本文所描述的事物之外,可对其公开实施例和实现进行各种修改,而不背离它们的范围。因此,本文中的说明和示例应当被解释为说明性而不是限制性的。本发明的范围应当仅参照以下权利要求来限定。

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