CN105190336B - 模拟块及用于测试其的测试块 - Google Patents
模拟块及用于测试其的测试块 Download PDFInfo
- Publication number
- CN105190336B CN105190336B CN201480013855.6A CN201480013855A CN105190336B CN 105190336 B CN105190336 B CN 105190336B CN 201480013855 A CN201480013855 A CN 201480013855A CN 105190336 B CN105190336 B CN 105190336B
- Authority
- CN
- China
- Prior art keywords
- test
- block
- data
- test pattern
- processing unit
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/27—Built-in tests
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/3167—Testing of combined analog and digital circuits
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31708—Analysis of signal quality
- G01R31/3171—BER [Bit Error Rate] test
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31712—Input or output aspects
- G01R31/31716—Testing of input or output with loop-back
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Nonlinear Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
揭示了一种通常关于芯片上系统(200)的设备。在这个设备中,所述芯片上系统(200)具有至少一个模拟块(201)、输入/输出接口(221)、数据测试块(209)和处理单元(230)。所述处理单元(230)耦合到所述输入/输出接口(221)以控制对所述至少一个模拟块(201)的存取。所述数据测试块(209)经由所述输入/输出接口(221)耦合到所述至少一个模拟块(201)。所述处理单元(230)耦合到所述数据测试块(209),并且经配置以执行具有至少一个测试图案的测试代码。在由所述处理单元(230)执行的所述测试代码的控制下,所述数据测试块(209)被配置成以所述测试图案来测试所述至少一个模拟块(201)。
Description
技术领域
以下描述涉及集成电路装置(“IC”)。
更确切地说,以下描述涉及用于IC的模拟块及用于测试模拟块的测试块。
背景技术
可编程装置(例如,可编程逻辑装置(“PLD”))可具有许多组件。在过去,通常可通过对用于内建式自测试(“BIST”)系统的可编程资源(例如,“构造”)进行编程来测试PLD的大量组件,所述BIST系统是经由此类构造中的配置位流来提供的。但是,PLD已发展成芯片上系统(“SoC”),且对于具现化的此类BIST系统测试来说并非可经由构造来存取待测试的所有大量组件。沿着那些线,一或多个模拟块可从此类构造去耦,并且因此可能不可经由构造存取以用于此类BIST系统测试。
因此,提供其中可测试模拟块的SoC将是有用的。
发明内容
一种设备通常涉及芯片上系统。在此类设备中,所述芯片上系统具有至少一个模拟块、输入/输出接口、数据测试块和处理单元。处理单元耦合到输入/输出接口以控制对至少一个模拟块的存取。数据测试块经由输入/输出接口耦合到至少一个模拟块。处理单元耦合到数据测试块,并且经配置以执行具有至少一个测试图案的测试代码。数据测试块在由处理单元执行的测试代码的控制下被配置成以测试图案来测试至少一个模拟块。
一种方法通常涉及测试模拟块。在此类方法中,所述模拟块包含环回数据序列。将配置信息提供到链路测试块的配置控制器。响应于配置信息在配置控制器的控制下配置模拟块。通过链路测试块的误码率测试仪从模拟块接收数据序列。误码率测试仪配置有测试图案信息。数据序列对与测试图案信息相关联的测试图案作出响应。通过误码率测试仪来确定数据序列的误码率。输出误码率。
一种方法通常涉及产生数据眼。将配置信息提供到链路测试块的配置控制器。响应于配置信息在配置控制器的控制下配置模拟块。通过链路测试块的眼球扫描控制器经由第一输入/输出总线从模拟块接收应用程序数据。由眼球扫描控制器响应于应用程序数据来产生数据眼。所述数据眼是用于响应于配置信息来设定模拟块。输出数据眼。
附图说明
附图示出了(一或多个)例示性设备和/或方法。但是,附图不应理解为限制权利要求的范围,而是仅用于阐释和理解。
图1是描绘例示性柱状现场可编程门阵列(“FPGA”)架构的简化框图。
图2是描绘例示性芯片上系统(“SoC”)的框图。
图3是描绘例示性模拟块测试流程的流程图。
图4是描绘图3的测试流程的例示性环回测试流程的流程图。
图5是描绘例示性数据眼产生流程的流程图。
具体实施方式
在以下描述中,阐述众多特定细节以提供对本文中描述的特定实例的更彻底描述。但是,所属领域的技术人员应显而易见,可在没有下文给出的所有特定细节的情况下实践一或多个其它实例和/或这些实例的变化。在其它例子中,未详细地描述熟知的特征以免混淆本文中的实例的描述。为便于说明,在不同的图式中使用相同的编号标签以参考相同的项目;但是,所述项目在替代实例中可能不同。
在描述若干图中的说明性地描绘的实例之前,提供总体介绍以有助于进一步的理解。可编程装置(例如,可编程逻辑装置(“PLD”))可具有许多组件。在过去,通常可通过对用于内建式自测试(“BIST”)系统的可编程资源(例如,“构造”)进行编程来测试PLD的大量组件,所述BIST系统是经由此类构造中的配置位流来提供的。但是,PLD已发展成芯片上系统(“SoC”),且并非可将待测试的所有组件耦合到具现化于构造中的此类BIST系统的构造。沿着那些线,模拟块可从此类构造去耦。
如下文额外详细描述,描述了用于测试SoC的一或多个模拟块的嵌入式测试块。确切地说,描述了对基于模拟的SERDES的测试。尽管以下描述是就SoC而言的,但此类SoC可为单块裸片上或多裸片封装(例如,在具有或不具有用于堆叠裸片的内插物的堆叠式裸片封装中)上的许多SoC中的一者。
记住以上一般理解,下文一般性地描述SoC的各种实施例。
因为本文中使用特定类型的IC来描述上述实例中的一或多者,所以下文提供此类IC的详细描述。但是,应理解,其它类型的IC也可受益于本文中所描述的一或多个技术。举例来说,可使用与下文描述的技术和电路类似的技术和电路来测试具有嵌入块的其它IC。
可编程逻辑装置(“PLD”)是熟知类型的集成电路,其可经编程以执行指定的逻辑功能。一种类型的PLD,即现场可编程门阵列(“FPGA”)通常包含可编程单元片的阵列。这些可编程单元片可包含(例如)输入/输出块(“IOB”)、可配置逻辑块(“CLB”)、专用随机存取存储器块(“BRAM”)、乘法器、数字信号处理块(“DSP”)、处理器、时钟管理器、延迟锁定环路(“DLL”)等等。如本文中所使用,“包含(include/including)”意指包含而无限制。
每一可编程单元片通常包含可编程互连和可编程逻辑两者。所述可编程互连通常包含由可编程互连点(“PIP”)互连的不同长度的大量互连线。所述可编程逻辑使用可包含(例如)函数产生器、寄存器、算术逻辑等等的可编程元件实施用户设计的逻辑。
通常,通过将配置数据流加载到定义可编程元件的配置方式的内部组态存储器单元,对可编程互连与可编程逻辑进行编程。配置数据可通过外部装置从存储器(例如,从外部PROM)中读取或写入FPGA中。随后,个体存储器单元的集体状态确定FPGA的功能。
PLD的另一类型为复杂可编程逻辑装置,或CPLD。CPLD包含通过互连开关矩阵连接在一起并且连接到输入/输出(“I/O”)资源的两个或两个以上“功能块”。CPLD的每一功能块包含与在可编程逻辑阵列(“PLA”)和可编程阵列逻辑(“PAL”)装置中使用的结构类似的二层与/或(AND/OR)结构。在CPLD中,配置数据通常以芯片上方式存储在非易失性存储器中。在一些CPLD中,配置数据以芯片上方式存储在非易失性存储器中,随后作为初始配置(编程)序列的一部分下载到易失性存储器上。
对于所有这些可编程逻辑装置(“PLD”)来说,此些装置的功能性由为了所述目的而提供到装置的数据位控制。数据位可存储在易失性存储器(例如,当在FPGA与一些CPLD中时的静态存储单元)中、非易失性存储器(例如,当在一些CPLD中时的快闪存储器)中、或任何其它类型的存储单元中。
通过应用以可编程的方式互连所述装置上的各种元件的处理层(例如,金属层)对其它PLD进行编程。这些PLD被称为掩模可编程装置。PLD还可以其它方式来实施,例如,使用熔丝或反熔丝技术。术语“PLD”和“可编程逻辑装置”包含但不限于这些例示性装置,并且涵盖仅仅部分可编程的装置。举例来说,一种类型的PLD包含经硬编码的晶体管逻辑与以可编程的方式互连所述经硬编码的晶体管逻辑的可编程开关构造的组合。
如上文所指出,高级的FPGA可在阵列中包含几个不同类型的可编程逻辑块。举例来说,图1说明包含大量不同可编程单元片的FPGA架构100,所述可编程单元片包含多千兆位收发器(“MGT”)101、可配置逻辑块(“CLB”)102、随机存取存储器块(“BRAM”)103、输入/输出块(“IOB”)104、配置与定时逻辑(“CONFIG/CLOCKS”)105、数字信号处理块(“DSP”)106、专用输入/输出块(“I/O”)107(例如,配置端口和时钟端口)以及其它可编程逻辑108(例如,数字时钟管理器、模/数转换器、系统监控逻辑等等)。一些FPGA也包含专用处理器块(“PROC”)110。
在一些FPGA中,每一可编程单元片包含规范化地连接到和连接自每一相邻单元片中的对应互连元件的可编程互连元件(“INT”)111。因此,所述可编程互连元件结合在一起实施用于所说明的FPGA的可编程互连结构。可编程互连元件111还包含到以及自同一单元片内的可编程逻辑元件的连接,如通过包含在图1的顶部处的实例示出。
举例来说,CLB 102可包含可经编程以实施用户逻辑的可配置逻辑元件(“CLE”)112,外加单个可编程互连元件(“INT”)111。除一或多个可编程互连元件之外,BRAM 103还可包含BRAM逻辑元件(“BRL”)113。通常,包含在单元片中的互连元件的数目取决于所述单元片的高度。在所描画的实施例中,BRAM单元片具有与五个CLB相同的高度,但也可使用其它数目(例如,四个)。除了适当数目的可编程互连元件之外,DSP单元片106还可包含DSP逻辑元件(“DSPL”)114。除可编程互连元件111的一个例子之外,IOB 104还可包含(例如)输入/输出逻辑元件(“IOL”)115的两个例子。如所属领域的技术人员将明白,连接(例如)到I/O逻辑元件115的实际I/O衬垫通常并不限于输入/输出逻辑元件115的区域。
在所描画的实施例中,(图1中所示出的)裸片的中心附近的水平区域用于配置、时钟和其它控制逻辑。由这个水平区域或列延伸的垂直列109用于横跨FPGA的宽度来分配时钟和配置信号。
利用图1中所说明的架构的一些FPGA包含额外的逻辑块,所述逻辑块分裂组成FPGA较大部分的普通的柱状结构。所述额外的逻辑块可为可编程块和/或专用逻辑。举例来说,处理器块110跨越了几列CLB与BRAM。
应注意,图1意图仅仅说明例示性FPGA架构。例如,行中的逻辑块的数目、行的相对宽度、行的数目和次序、包含在行中的逻辑块的类型、逻辑块的相对大小以及包含在图1顶部处的互连/逻辑实施方案仅仅是例示性的。举例来说,在实际的FPGA中,通常每当CLB出现时便包含CLB的一个以上相邻行,以便于用户逻辑的有效实施,但相邻CLB行的数目随FPGA的总体大小而变化。
图2是描绘例示性芯片上系统(“SoC”)200的框图。图1的FPGA 100可为此类SoC200,其可为如先前所描述的单块裸片或多裸片堆叠或封装,包含但不限于堆叠硅互连技术(“SSIT”)。
SoC 200包含一或多个串行器-并行器块(“SERDES”)201、输入/输出接口221、数据测试块209、处理单元230、链路测试块203和一或多个媒体存取控制器(“MAC”)202。沿着那些线,SoC 200可完全使用专用或嵌入硬件块来形成。因此,SERDES 201可未直接耦合到可编程构造资源,并且因此专用块203和209可用于测试SERDES 201,如下文额外详细描述。
在这个实例中,输入/输出接口221被说明性地描绘为双向多路复用器;但是,在输入/输出接口的其它配置中,可使用其它电路(即除双向多路复用器以外)。在处理器231的控制下并经由控制选择信号222,多路复用器221可用于经由数据测试块接口229来选择数据测试块209的任何一个SERDES 201。
另外,在这个实例中,应假定,SERDES 201经配置以执行8b/10b编码,换句话说,如果将8个、16个、24个等数据或其它信息位输入到SERDES 201,那么SERDES 201可输出对应的10个、20个、30个等位,此些位包含此些数据或其它信息位以及编码位。但是,在SERDES的其它配置中,可使用其它编码(即,除8b/10b编码以外)。
处理单元230可耦合到输入/输出接口221以将控制选择总线/信号222提供到其上从而控制至SERDES 201和自SERDES 201的存取。数据测试块209可经由输入/输出接口221耦合到SERDES 201。处理单元230可经由双向总线。信令223耦合到数据测试块209。为了允许数据测试块209控制SERDES 201,测试代码或其它软件可写入输入控制寄存器234中的寄存器,所述输入控制寄存器234用于经由输入/输出接口221来控制对SERDES 201的存取。
处理单元230可包含处理器231、只读存储器(“ROM”)232、随机存取存储器(“RAM”)233、控制寄存器234、微控制器接口/总线到外围总线桥接器(“桥接器”)235和微控制器接口/总线开关(“开关”)236。处理器231可包含一或多个核心,并且可为中央处理单元。尽管处理单元230被描述为ARM处理单元,但是应理解,根据本文中的描述,可使用任何处理单元。沿着那些线,应假定,桥接器235是AXI到APB桥接器,并且开关236是AXI开关。但是,AXI和/或APB具有ARM特定性,并且可使用其它类型的处理单元基础设施。
处理器231可耦合到ROM 232以执行存储于其中的启动代码来启动SoC 200。处理器231可进一步耦合到RAM 233以执行测试代码237,其中测试代码237被加载到RAM 233中并在处理器231的控制下经执行以便测试SERDES 201,如下文额外详细描述。处理器231可包含经耦合以用于与开关236的AXI受控器(slave)239进行通信的AXI主控器238。开关236可包含经耦合以用于与桥接器235的AXI受控器241进行通信的AXI主控器240。桥接器235可包含APB主控器242、243和244。APB主控器242可经耦合以用于与控制寄存器234的APB受控器245通信。沿着那些线,在处理器231的控制下,测试代码237可写入控制寄存器234以导致控制寄存器234经由控制总线/信号222将控制信令提供到输入/输出接口221。APB主控器243可经耦合以用于经由媒体总线/信号225与MAC 202通信。APB主控器244可经耦合以用于与数据测试块209的外围总线块212通信,所述外围总线块212对于这个实例来说可为APB受控器块。外围总线块212可包含输入控制寄存器213和输出捕获寄存器214。输入控制寄存器213和输出捕获寄存器214可在测试代码237的控制下经由处理单元230来存取,如下文额外详细描述。
处理器231可可控地执行测试代码237,其中此类测试代码237包含针对用于测试SERDES 201的至少一个测试图案进行编码。输入控制寄存器213可在此类测试代码237的控制下被写入,以导致此类至少一个测试图案被提供到SERDES 201。通过允许测试代码237或其它软件实施产品测试图案,此些软件可实施的产品测试图案与常规经硬编码的测试图案相比可更易于升级。
数据测试块209可进一步包含测试图案产生器210和测试图案检查器211。响应于写入输入控制寄存器213,耦合到此些输入控制寄存器213的此类测试图案产生器210可产生至少一个此类测试图案,以用于经由输入/输出接口221将数据提供到SERDES 201。在这个实例中,测试图案产生器210是线性反馈移位寄存器(“LFSR”)和伪随机位序列(“PRBS”)产生器,并且测试图案检查器211是LFSR和PRBS检查器。举例来说,测试代码237可从多种PRBS图案以及LFSR种子进行选择,配置LFSR/PRBS产生器210和检查器211以产生并检查测试数据。输入控制寄存器213可用于响应于测试代码237中指定的测试图案,来控制由测试图案产生器210进行的测试图案产生。但是,可使用其它类型的测试图案产生器和检查器。
可在测试图案产生器210的控制下将测试图案提供到SERDES 201,以用于环回到测试图案检查器211。此类环回可为仅内部环回(即,完全在SoC 200内),或可包含用于环回的外部装置。SERDES 201可环回此类测试图案数据以供由测试图案检查器211接收。耦合到测试图案检查器211的输出捕获寄存器214可捕获从测试图案检查器211输出的数据或其它信息。可将此类捕获数据提供返回到处理单元230,例如用于后续分析。举例来说,输出捕获寄存器214可用于响应于由测试代码237指定的测试图案,来捕获由测试图案检查器211确定的数据序列和数据误差。沿着那些线,测试图案检查器211可耦合到输入控制寄存器213以便了解待使用的测试图案。对于伪随机位序列来说,应了解,在时钟信号(出于清楚起见未示出)的数个时钟循环之后,此类伪随机位序列可重复。因此,测试图案检查器211可了解将期望什么。
SoC 200进一步包含链路测试块203。链路测试块203包含配置控制器204、状态监视器205、误码率测试仪206、眼球扫描控制器207以及测试输入输出接口(“测试接口”)208。在这个实例中,测试接口208是JTAG接口。耦合到测试接口208的测试总线/信号224可用于与测试接口208双向通信。测试总线/信号224可用于与运行测试软件的计算机系统(例如,工作站或其它计算机系统)通信。链路测试块203可因此负责促进链路调谐和/或特征化。JTAG接口208可用于耦合到处理器系统的JTAG链。沿着那些线,可经由JTAG来控制链路测试块203,以允许经由运行于(例如)PC或其它工作站上的软件实现用户控制。沿着那些线,当经由此类SERDES 201运行数据图案时并且当对位、误差或其它参数进行计数时,可控制和/或调节SERDES 201的模拟配置参数。
总线224可用于相对于处理单元230的操作以非侵入性方式与链路测试块203通信。换句话说,因为链路测试块并非由测试代码237来操作或驱动(或更通常由处理单元230来操作或驱动),所以链路测试块203的操作无需干扰或以其它方式烦扰处理单元230。此外,可与执行用于测试SoC 200的测试代码237同时地来操作链路测试块203,如下文额外详细描述。
MAC 202可经由输入/输出总线226耦合到输入/输出接口221。数据测试块209可经由输入/输出总线229耦合到输入/输出接口221。输入/输出接口221经由输入/输出总线228耦合到SERDES 201。但是,SERDES 201可经由输入/输出总线227直接耦合到链路测试块203,以免除必须穿过处理单元230。任选地。输入/输出总线227可经由输入/输出接口221耦合到输入/输出总线228以用于在SERDES 201与链路测试块203之间通信。输入/输出总线226到229可用于(除了其它信号当)的数据、控制和寻址信令,在此处出于清楚且不加限制起见而未进行区分。
链路测试块203可经由测试接口208独立地控制以在其操作期间调节至少一个SERDES 201的操作参数,例如优化数据眼。沿着那些线,此类至少一个SERDES 201可为模拟设计,并且因而此些操作参数可包含至少一个模拟参数。此类至少一个SERDES 201可包含控制寄存器246和一或多个有限状态机247。配置控制器204可耦合到至少一个SERDES 201以控制(例如,写入、读取、设定和重设)控制寄存器246,从而在此类至少一个SERDES 201的操作期间调节此些操作参数中的至少一者。对控制寄存器246的此类控制可独立于处理单元230。状态监视器205可经耦合以监视至少一个SERDES的状态和按时钟周期粒度捕获从此类至少一个SERDES输出的每一误差。状态机247可用于指示此类状态(例如,在编码误差和/或运行的不一致误差的情况下为SERDES状态,所述两种误差是以关联的时钟循环为基础),可由状态监视器205来监视如由状态机247指示的所述状态。因为用于将测试图案提供到SERDES 201、从SERDES 201读取测试图案和其它信息以及监视SERDES 201的状态的此类时钟周期相依性,SERDES 201的SoC侧部分、测试图案产生器210、测试图案检查器211和状态监视器205可在同一时钟域248中操作。状态监视器205可包含先入先出缓冲器以用于将信息时钟输入到与时钟域248相关联的缓冲器中。但是,无需(但可能)以时钟域248的时钟频率从此类状态监视器中时钟输出状态信息。可上下调节时钟域248以提供不同数据速率。沿着那些线,时钟域248可为测试时钟域。
误码率(“BER”)测试仪206可经配置以使用测试图案来确定误码率。举例来说,BER测试仪206可在时钟域248的每一时钟周期上锁定于时钟周期的8位或某一其它位数的增量中。但是,BER测试仪206可确定在大得多的时间间隔内的BER。因此,可针对多个链路速率中的每一者来指定BER。测试接口208可用于将测试图案或至少足够量的测试图案信息提供到BER测试仪206,以配置BER测试仪206从而提供此些BER。
通常,BER更多地与在已留下之后并且当然以某种形式或另一形式返回到SoC 200裸片的位相关。沿着那些线,SoC 200可具有测试PCB或具有位于空白裸板上的测试迹线的某物,可经由测试PBC耦合到测试零件和/或测试装备。因此,举例来说,BER可针对以数据速率行进某段距离的某种FR4或其它电路板材料。
处理单元230可经耦合以将应用程序250接收到RAM 233中以用于所述应用程序的执行,所述应用程序250涉及经由耦合到输入/输出接口221和处理单元230的一或多个MAC202被提供到至少一个SERDES 201的应用程序数据。嵌入式MAC 202可用于由SoC 200所支持的各种业界协定,包含但不限于乙太网。MAC 202可用于运行SoC 200上的应用程序(例如,用户应用程序)。
眼球扫描控制器207可经配置以在执行此类应用程序(例如,由处理单元230)期间确定此类应用程序数据的数据眼。再次,输入/输出总线227可提供用于在通过眼球扫描控制器收集其应用程序数据时同时操作由处理器231执行的应用程序的独立路径。换句话说,经由输入/输出总线226的应用程序数据的流程可与此类应用程序数据经由输入/输出总线227的流程分开。这便于用户监视数据眼且同时经由配置控制器204来调节SERDES 201的操作以调节此类数据眼。配置控制器204可响应于SERDES 201的数据眼而被用来调节寄存器246进行采样的地点。换句话说,配置控制器204可用于控制寄存器246在数据眼内的不同时间点(包含但不限于上阈值及下阈值)进行采样的地点。眼球扫描控制器207的眼球扫描寄存器可用于存储此些样品,并且眼球扫描控制器207可耦合到配置控制器204以向SERDES201的寄存器246指示关于读取样品的地点。寄存器246的眼球扫描寄存器可因此仅保存个体样品,并且眼球扫描控制器207可用于指示获取样品的地点和时间,并且存储由寄存器246获取的此些样品。
总而言之,通常数据测试块209可用于使用所环回的经测试图案产生的数据,来确定SERDES 201是否以明确定义的配置起作用。通常,另一方面,链路测试块203可用于确定结果的品质(即,SERDES 201的操作的品质)。
图3是描绘例示性模拟块测试流程300的流程图。测试流程300是同时参考图2和图3来进一步描述的。
在301处,测试SERDES 201以环回一连串数据(“数据序列”)。在302处,可将配置信息提供到链路测试块203的配置控制器204(例如,经由测试接口208)。在303处,响应于此类配置信息在配置控制器204的控制下配置SERDES 201。在304处,可由链路测试块203的BER测试仪206从SERDES 201接收此类数据序列。BER测试仪206可在303处配置有测试图案信息。序列数据可因此对与此类测试图案信息相关联的测试图案作出响应。在305处,可由BER测试仪206确定此类数据序列的误码率。在306处,可在306处输出此类误码率。
与接收BER的此类数据序列并行地或分开地,在314处,可由链路测试块203的状态监视器205接收状态信息。此类状态信息可来自于SERDES 201的一或多个状态机247。可相对于所环回的此类数据序列从SERDES 201独立地经由总线输送此类状态信息。在316处,可输出此类状态信息。
图4是描绘测试流程300的例示性环回测试流程301的流程图。测试流程301是同时参考图2到图4来进一步描述的。测试流程301可与使用链路测试块203同时使用数据测试块209。
在401处,可由处理单元230执行测试代码237。测试代码237包含测试图案信息(其可如下传下来)。测试代码237可经配置以切换SERDES 201的输入和输出。在402处,可发布从测试代码237对SERDES 201的操作状态的读取。在403处,可响应于执行测试代码237的此类读取提供来自处理单元230的微控制器总线交易(例如,针对开关236)。在404处,可转变此类微控制器总线交易(例如,通过桥接器235)以提供外围总线交易。对SERDES 201的输入和输出的此类切换可涉及使测试数据块209的外围总线块212加载有此类测试图案信息以用于产生测试图案。可因此通过由处理单元230执行的测试代码237来控制这种加载。沿着那些线,405处的操作可包含在415处寄存(例如,用输入控制寄存器213)由数据测试块209的外围总线块212进行的外围总线交易,以使外围总线块212加载有测试图案信息。
在406处,可响应于由数据测试块209的测试图案产生器210产生的此类测试图案来产生此类数据序列。在407处,可将此类数据序列发送到SERDES 201以切换SERDES 201的输入。可在408处环回或以其它方式发送此类数据序列或至少是其一版本以切换SERDES201的输出。在409处,可由数据测试块209的测试图案检查器211接收所环回的此类数据序列。在410处,可检查由测试图案检查器211接收的此类数据序列以产生SERDES 201的测试数据。在411处,可响应于此类检查从测试图案检查器211捕获此类测试数据(例如,通过输出捕获寄存器214)。在412处,可将此类测试数据输出到处理单元230(例如,经由输入/输出总线223)。测试接口208可用于相对于(例如)在401处由处理单元230执行测试代码237来独立地实现以下各者:在302处提供配置信息、在316处输出状态信息、和在306处输出BER。
图5是描绘例示性数据眼产生流程500的流程图。测试流程500是同时参考图2和图5来进一步描述的。
在501处,可将配置信息提供到链路测试块203的配置控制器204。在502处,可响应于此类配置信息在配置控制器204的控制下配置SERDES 201。
在511处,可由处理单元230执行应用程序代码250以产生应用程序数据。在512处,可将此类应用程序数据从处理单元230提供到MAC 202。在513处,可经由输入/输出总线226将此类应用程序数据从此类MAC 202发送到SERDES 201,所述输入/输出总线226是独立于输入输出总线227。可因此产生此类应用程序数据同时在505处输出数据眼,如下文额外详细描述。
在503处,可由链路测试块203的眼球扫描控制器207经由输入/输出总线227从SERDES 201接收应用程序数据(如先前所描述,经由MAC 202来自于SERDES 201)。在504处,可由眼球扫描控制器207响应于应用程序数据来产生数据眼。在505处,可输出此类数据眼,所述数据眼可用于响应于此类配置信息来设定SERDES 201。
尽管以上描述是就控制基于模拟的SERDES而言的,但以上描述同样适用于具有影响数据眼的模拟参数的其它块(例如,模/数转换器)。简单地说,具有模拟组件(其中调谐和/或特征化其)的任何块可为有用的。因此,针对SoC提供了用于模拟块的BER测试仪以及软件可实施的产品测试特征。
虽然上文描述了例示性实施例,但可在不脱离其范围的情况下设计根据一或多个方面的其它和进一步实施例,所述范围由所附权利要求书及其等效物确定。权利要求书列出的步骤并不暗示步骤的任何次序。商标是其对应的拥有者的财产。
Claims (15)
1.一种用于在集成电路内进行测试的设备,其包括:
芯片上系统,其具有至少一个模拟块、输入/输出接口、和处理单元;
数据测试块,其耦合到所述输入/输出接口,其中所述输入/输出接口耦合到所述至少一个模拟块;
链路测试块,其耦合到所述至少一个模拟块;以及
测试接口,其耦合到所述链路测试块;
其中所述处理单元耦合到所述输入/输出接口以控制对所述至少一个模拟块的存取;
其中所述处理单元耦合到所述数据测试块,并且经配置以执行具有至少一个测试图案的测试代码;
其中在由所述处理单元执行的所述测试代码的控制下,所述数据测试块经配置以所述测试图案来测试所述至少一个模拟块;并且
其中所述链路测试块经由所述测试接口独立地进行控制,以在执行所述测试代码期间调节所述至少一个模拟块的操作参数。
2.根据权利要求1所述的设备,其中所述数据测试块包括输入控制寄存器、输出捕获寄存器、测试图案产生器和测试图案检查器。
3.根据权利要求2所述的设备,其中所述测试图案产生器包括线性反馈移位寄存器和伪随机位序列产生器。
4.根据权利要求2所述的设备,其中所述测试图案检查器包括线性反馈移位寄存器和伪随机位序列检查器。
5.根据权利要求中2至4中任一权利要求所述的设备,其中所述输入控制寄存器和所述输出捕获寄存器在所述测试代码的控制下经由所述处理单元进行存取。
6.根据权利要求2至4中任一权利要求所述的设备,其中:
所述输入控制寄存器将响应于所述测试图案来控制由所述测试图案产生器进行的测试图案产生;
所述输出捕获寄存器将响应于所述测试图案来捕获由所述测试图案检查器确定的数据序列和数据误差;并且
所述测试图案在所述测试图案产生器的控制下被提供到所述至少一个模拟块,以用于环回到所述测试图案检查器;
其中所述至少一个模拟块是至少一个串行器-并行器。
7.根据权利要求1至4中任一权利要求所述的设备,其中所述链路测试块经由所述输入/输出接口耦合到所述至少一个模拟块,其中所述链路测试块包括配置控制器、状态监视器、误码率测试仪、眼球扫描控制器和测试接口。
8.根据权利要求7所述的设备,其中:
所述链路测试块经由所述测试接口独立地进行控制,以在其操作期间调节所述至少一个模拟块的所述操作参数;
并且所述至少一个模拟块是至少一个串行器-并行器。
9.根据权利要求7所述的设备,其中:
所述误码率测试仪经配置以使用所述测试图案来确定误码率;并且
所述测试接口经耦合以将所述测试图案提供到所述误码率测试仪。
10.根据权利要求7所述的设备,其中:
所述处理单元经耦合以执行应用程序,所述应用程序涉及经由耦合到所述输入/输出接口和所述处理单元的存取控制器而被提供到所述至少一个模拟块的应用程序数据;
所述眼球扫描控制器经配置以在所述应用程序的执行期间确定所述应用程序数据的数据眼;并且
所述至少一个模拟块是至少一个串行器-并行器。
11.一种用于在集成电路内进行测试的方法,其包括:
耦合数据测试块到输入/输出接口;
耦合所述输入/输出接口到模拟块;
耦合处理单元到所述输入/输出接口来控制所述模拟块的存取,以启用测试代码的执行;
实施耦合到链路测试块的测试接口,其中所述链路测试块经由所述测试接口独立地进行控制;
通过所述处理单元,使用所述数据测试块测试所述模拟块以环回数据序列;
将配置信息提供到链路测试块的配置控制器;
响应于所述配置信息在所述配置控制器的控制下配置所述模拟块;
由所述链路测试块的误码率测试仪从所述模拟块接收所述数据序列;
其中所述误码率测试仪配置有测试图案信息;
其中所述数据序列对与所述测试图案信息相关联的测试图案作出响应;
由所述误码率测试仪来确定所述数据序列的误码率;
输出所述误码率;以及
由所述链路测试块的所述配置控制器经由所述测试接口,以在执行所述测试代码期间调节所述模拟块的操作参数。
12.根据权利要求11所述的方法,其中所述模拟块是串行器-并行器,并且其中所述测试包括:
由所述处理单元执行所述测试代码;
其中所述测试代码包含所述测试图案信息;
其中所述测试代码经配置以通过下述来切换所述串行器-并行器的输入和输出:
使所述数据测试块的外围总线块加载有所述测试图案信息以用于产生所述测试图案;
其中所述加载是通过由所述处理单元执行的所述测试代码来控制;
响应于所述测试图案由所述数据测试块的测试图案产生器来产生所述数据序列;
将所述数据序列发送到所述串行器-并行器以切换所述串行器-并行器的所述输入;
环回所发送的所述数据序列以切换所述串行器-并行器的所述输出;
由所述数据测试块的测试图案检查器接收所环回的所述数据序列;
检查由所述测试图案检查器接收的所述数据序列以产生所述串行器-并行器的测试数据;
响应于所述检查从所述测试图案检查器捕获所述测试数据;以及
将所述测试数据输出到所述处理单元。
13.根据权利要求12所述的方法,其中所述测试进一步包括:
发布从所述测试代码对所述串行器-并行器的操作状态的读取;
响应于执行对所述测试代码的所述读取,以提供来自所述处理单元的微控制器总线交易;以及
将所述微控制器总线交易转变到外围总线交易;
其中所述加载包括寄存由所述数据测试块的所述外围总线块进行的所述外围总线交易,以使所述外围总线块加载有所述测试图案信息。
14.根据权利要求13所述的方法,其进一步包括:
由所述链路测试块的状态监视器从所述串行器-并行器接收状态信息;
其中所述状态信息是来自所述串行器-并行器的状态机;
其中所述状态信息相对于所环回的所述数据序列从所述串行器-并行器被独立地经由总线输送;以及
输出所述状态信息。
15.根据权利要求14所述的方法,其中所述链路测试块包括所述测试接口,以用于相对于由所述处理单元执行所述测试代码来独立地进行以下各者:对所述配置信息的所述提供、对所述状态信息的所述输出、和对所述误码率的所述输出。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/802,223 | 2013-03-13 | ||
US13/802,223 US9411701B2 (en) | 2013-03-13 | 2013-03-13 | Analog block and test blocks for testing thereof |
PCT/US2014/025438 WO2014159909A1 (en) | 2013-03-13 | 2014-03-13 | An analog block and test blocks for testing thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105190336A CN105190336A (zh) | 2015-12-23 |
CN105190336B true CN105190336B (zh) | 2017-03-29 |
Family
ID=50549450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480013855.6A Active CN105190336B (zh) | 2013-03-13 | 2014-03-13 | 模拟块及用于测试其的测试块 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9411701B2 (zh) |
EP (1) | EP2972429B1 (zh) |
JP (1) | JP6200574B2 (zh) |
KR (1) | KR102065813B1 (zh) |
CN (1) | CN105190336B (zh) |
WO (1) | WO2014159909A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104407885B (zh) * | 2014-10-31 | 2017-11-10 | 武汉精测电子技术股份有限公司 | 同时对多台图形发生器内的fpga进行程序加载的方法 |
CN108139916B (zh) * | 2015-10-06 | 2021-04-30 | 赛灵思公司 | 可编程逻辑设备的多阶段引导映像加载和配置 |
US10404408B1 (en) | 2016-12-13 | 2019-09-03 | Xilinx, Inc. | Pam multi-level error distribution signature capture |
US10234505B1 (en) | 2017-02-27 | 2019-03-19 | Xilinx, Inc. | Clock generation for integrated circuit testing |
US10067189B1 (en) | 2017-03-20 | 2018-09-04 | Xilinx, Inc. | Input/output path testing and characterization using scan chains |
FR3066606B1 (fr) * | 2017-05-19 | 2019-08-23 | Institut Polytechnique De Grenoble | Appareil de test et procede de test d'un circuit integre |
KR102264159B1 (ko) * | 2017-06-08 | 2021-06-11 | 삼성전자주식회사 | 외부 루프백 테스트를 수행하는 직렬 통신 인터페이스 회로 및 이를 포함하는 전자 장치 |
US10033523B1 (en) | 2017-08-14 | 2018-07-24 | Xilinx, Inc. | Circuit for and method of measuring latency in an integrated circuit |
WO2019143327A1 (en) * | 2018-01-17 | 2019-07-25 | Credo Technology Group Limited | Ic dies with parallel prbs testing of interposer |
US20190242941A1 (en) * | 2018-02-06 | 2019-08-08 | Marvell World Trade Ltd. | Methods and Apparatus for Testing an Integrated Circuit |
CN109085489B (zh) * | 2018-07-26 | 2020-07-28 | 烽火通信科技股份有限公司 | 一种背板功能测试系统、设计方法及测试方法 |
CN109596976B (zh) * | 2018-12-11 | 2021-08-27 | 上海精密计量测试研究所 | Fpga内部dsp模块的测试方法 |
CN111008102B (zh) * | 2019-10-18 | 2023-01-10 | 苏州浪潮智能科技有限公司 | Fpga加速卡高速接口si测试控制装置、系统及方法 |
US11334459B2 (en) * | 2020-08-18 | 2022-05-17 | Advantest Corporation | Flexible test systems and methods |
CN112328502A (zh) * | 2020-11-30 | 2021-02-05 | 中国航空工业集团公司西安航空计算技术研究所 | 一种高覆盖率的数据处理模块测试方法和装置 |
TWI760157B (zh) * | 2021-03-24 | 2022-04-01 | 德律科技股份有限公司 | 多核並行測試單一待測物的系統及方法 |
CN114003453B (zh) * | 2021-10-29 | 2023-04-07 | 哲库科技(北京)有限公司 | 一种测试方法、电子设备、系统及计算机存储介质 |
CN114325340B (zh) * | 2021-12-31 | 2024-01-19 | 南京矽典微系统有限公司 | 射频芯片的测试系统及测试方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6970529B2 (en) * | 2001-01-16 | 2005-11-29 | International Business Machines Corporation | Unified digital architecture |
US7091598B2 (en) * | 2001-01-19 | 2006-08-15 | Renesas Technology Corporation | Electronic circuit device |
US6874107B2 (en) * | 2001-07-24 | 2005-03-29 | Xilinx, Inc. | Integrated testing of serializer/deserializer in FPGA |
US6631340B2 (en) | 2001-10-15 | 2003-10-07 | Advantest Corp. | Application specific event based semiconductor memory test system |
JP4461351B2 (ja) * | 2002-08-15 | 2010-05-12 | ソニー株式会社 | 非接触式icカード |
US6925408B2 (en) * | 2003-09-08 | 2005-08-02 | Texas Instruments Incorporated | Mixed-signal core design for concurrent testing of mixed-signal, analog, and digital components |
US7571360B1 (en) * | 2004-10-26 | 2009-08-04 | National Semiconductor Corporation | System and method for providing a clock and data recovery circuit with a fast bit error rate self test capability |
US7315177B1 (en) | 2004-11-22 | 2008-01-01 | National Semiconductor Corporation | Mixed signal integrated circuits with self-test capability |
US7743288B1 (en) | 2005-06-01 | 2010-06-22 | Altera Corporation | Built-in at-speed bit error ratio tester |
US7454658B1 (en) | 2006-02-10 | 2008-11-18 | Xilinx, Inc. | In-system signal analysis using a programmable logic device |
WO2010031879A1 (en) * | 2008-09-22 | 2010-03-25 | Centre National De La Recherche Scientifique - Cnrs - | System and method for wirelessly testing integrated circuits |
US20100097087A1 (en) * | 2008-10-20 | 2010-04-22 | Stmicroelectronics, Inc. | Eye mapping built-in self test (bist) method and apparatus |
US8849226B2 (en) * | 2009-08-13 | 2014-09-30 | Cascoda Limited | Wireless receiver |
WO2011018626A2 (en) * | 2009-08-13 | 2011-02-17 | Cascoda Limited | Wireless receiver |
US8269520B2 (en) * | 2009-10-08 | 2012-09-18 | Teradyne, Inc. | Using pattern generators to control flow of data to and from a semiconductor device under test |
US8433958B2 (en) * | 2010-09-17 | 2013-04-30 | Altera Corporation | Bit error rate checker receiving serial data signal from an eye viewer |
-
2013
- 2013-03-13 US US13/802,223 patent/US9411701B2/en active Active
-
2014
- 2014-03-13 JP JP2016501849A patent/JP6200574B2/ja active Active
- 2014-03-13 WO PCT/US2014/025438 patent/WO2014159909A1/en active Application Filing
- 2014-03-13 KR KR1020157028626A patent/KR102065813B1/ko active IP Right Grant
- 2014-03-13 EP EP14719456.7A patent/EP2972429B1/en active Active
- 2014-03-13 CN CN201480013855.6A patent/CN105190336B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
US9411701B2 (en) | 2016-08-09 |
KR20150127704A (ko) | 2015-11-17 |
EP2972429A1 (en) | 2016-01-20 |
CN105190336A (zh) | 2015-12-23 |
KR102065813B1 (ko) | 2020-01-13 |
EP2972429B1 (en) | 2019-12-25 |
US20140281716A1 (en) | 2014-09-18 |
JP2016519358A (ja) | 2016-06-30 |
JP6200574B2 (ja) | 2017-09-20 |
WO2014159909A1 (en) | 2014-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105190336B (zh) | 模拟块及用于测试其的测试块 | |
US5991907A (en) | Method for testing field programmable gate arrays | |
EP1415168B1 (en) | Application-specific testing methods for programmable logic devices | |
US6725442B1 (en) | Scalable and parallel processing methods and structures for testing configurable interconnect network in FPGA device | |
US6817006B1 (en) | Application-specific testing methods for programmable logic devices | |
US8838406B2 (en) | Re-configurable test circuit, method for operating an automated test equipment, apparatus, method and computer program for setting up an automated test equipment | |
US8479066B2 (en) | Process for making an electric testing of electronic devices | |
CN106503308A (zh) | 一种基于uvm的can控制器ip验证平台 | |
US10061879B2 (en) | Circuit design instrumentation for state visualization | |
US20090112548A1 (en) | A method for testing in a reconfigurable tester | |
US11526644B2 (en) | Controlling test networks of chips using integrated processors | |
US9588176B1 (en) | Techniques for using scan storage circuits | |
CN105956302A (zh) | 一种可配置的抗辐射芯片前端网表自动生成方法 | |
CN103913696A (zh) | 用于核心的全局低功率捕获方案 | |
CN100547425C (zh) | 集成电路的测试 | |
CN106291313A (zh) | 用于测试集成电路的方法和设备 | |
KR102513287B1 (ko) | 집적 회로를 위한 장치, 시스템 및 방법 | |
DE102020108216A1 (de) | Verfahren und Vorrichtungen zum Durchführen von Design for Debug über eine Protokollschnittstelle | |
CN109557459A (zh) | 一种基于JTAG测试的SiP系统及其内部芯片的JTAG测试方法 | |
Han et al. | A New Multi‐site Test for System‐on‐Chip Using Multi‐site Star Test Architecture | |
CN106896317A (zh) | 通过扫描测试的扫描链所执行的电路排错方法及电路排错系统 | |
Nejedlo et al. | Intel® IBIST, the full vision realized | |
JP2021534427A (ja) | デジタル回路試験及び分析モジュール、システム及びそれの方法 | |
Adham et al. | The importance of DFX, a foundry perspective | |
Ravichandran | Design and Development of Burden Lenient Network On-Chip Using FPGA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |