测试嵌入式模拟/混合信号磁心的方法和结构的制作方法

文档序号:6854162阅读:289来源:国知局
专利名称:测试嵌入式模拟/混合信号磁心的方法和结构的制作方法
技术领域
本发明涉及用于测试芯片上系统(SoCsystem-on-a-chip)IC中的嵌入式磁心的方法和结构,更具体地说,是涉及测试基于微处理器的芯片上系统(SoC)IC中的模拟/混合信号磁心的方法和结构。
近些年来,ASIC(特定用途集成电路)技术已经从芯片组基本观点发展为基于嵌入式磁心的芯片上系统(SoC)概念。一个SoC IC包括各种可再度使用的功能块,例如微处理器、接口、存储阵列和DSP(数字信号处理器)。这种事先设计好的功能块通常被称为“磁心”(cores)。


图1是表示这样一个SoC IC的内部结构的例子的示意图。在图1的例子中,SoC IC 10包括一个微处理器磁心12、存储器磁心13-16、特定功能磁心21-23、一个锁相环(PLL)磁心25、一个测试接入端口(TAP)26、一个A/D(模数)和D/A(数模)磁心27、一个PCI(接口)磁心28和一个胶合逻辑电路(如I/O等支持逻辑电路)。如何测试这种嵌入式磁心在IC测试中是一个新的且复杂的问题。本发明就是用来测试SOC IC中的这种嵌入式磁心,特别是模拟和/或混合信号磁心,如模数转换器(ADC)和数模转换器(DAC)的方法和结构。
嵌入式模拟/混合信号磁心的测试被认为是SoC IC测试中的一个难题。通常,使用各种测试用设计(DFT)方案来访问例如数模转换器(DAC)和模数转换器(DAC)等嵌入式模拟块,而通过例如混合信号自动测试装置(ATE)或IC测试器的专门硬件来进行该测试。测试嵌入式模拟/混合信号块的困难是双重的;首先是访问模拟块以便能应用测试激励,其次是观测模拟块的响应以用于求值。基于这些模块需要模拟信号作为测试输入或它们的响应输出为模拟信号的事实,所以更进一步增加了困难。这样,在测试中就不能进行简单的二进制比较。
在如上所述的常规技术中,已经使用如混合信号IC测试器的专门的混合信号测试装置来测试例如DAC和ADC的模拟和混合信号块。无论是单片的DAC/ADC还是嵌入式DAC/ADC,该测试方法是相同的。当单片的DAC/ADC中的输入和输出的入口已穿过主要的输入-输出管脚时,已使用测试点插入和测试用逻辑(DFT)来访问嵌入式DAC/ADC的输入-输出。
偏移电压(Vos)、满标量程(FSRFull Scale Range)、全部代码值,特别是遗漏码(missing codes)和主转变(major transitions)、微分非线性度(DNL)和积分非线性度(INL)等都是被用于DAC/ADC测试的关键参数。通常使用的用于测量代码转变级以求得这些参数的测试方法为AC条形图方法、斜坡条形图方法和代码密度测试方法。
在所有常规方法中,一个专用硬件被用在ATE系统中正被测试的装置(DUT)附近的负载板上。当利用混合信号IC测试器来进行测试时,测试器管脚接口电路被用于测试模式应用和测量,而响应求值由测试器的软件来完成。在一些关于模拟内置式自测试方法的研究计划中,专用的芯片上硬件用于产生测试和响应求值(1999年3月的IEEE J.固态电路第318-330页上的、作者为B.Dufort和G.W.Roberts的“用于混合信号内置式自测试的芯片上模拟信号的生成”)。然而,这种常规的方法需要大量的额外硬件(系统开销),导致生产率下降和成本增加。另外,这种硬件系统开销引起性能损失,例如,信号传播延迟。
因此,本发明的一个目的是提供一种测试芯片上系统(SoC)IC中的嵌入式模拟和/或混合信号磁心的方法和结构,其基本上没有SoCIC中硬件的系统开销的增加。
本发明的另一个目的是提供一种测试芯片上系统(SoC)IC中的嵌入式模拟/混合信号磁心的方法和结构,其基本上没有对SoC IC的性能上的不利因素。
本发明的再一个目的是提供一种测试芯片上系统(SoC)IC中的嵌入式模拟/混合信号磁心的、具有高的测试效率和低成本的方法和结构。
本发明的一个方面是一种测试其内具有微处理器磁心和存储器磁心的集成电路芯片中的嵌入式模拟磁心的方法。该方法由下列步骤构成在微处理器磁心和将被测试的模拟磁心之间的集成电路芯片中提供一个测试寄存器;测试该微处理器磁心和存储器磁心;使用一个在该微处理器磁心上运行的汇编语言测试程序,由该微处理器磁心来产生一个测试模式;由该微处理器磁心将该测试模式应用于该模拟磁心,并且通过该微处理器磁心或一个从该集成电路芯片外部提供的测试系统来求得该模拟磁心的响应值。
在上述测试方法中,通过使用伪随机数据多次执行微处理器指令和求出结果值来首先测试该微处理器磁心。接着,由生成存储测试模式并将该存储测试模式应用于该存储器磁心并求得该存储器磁心中的存储数据的值的该微处理器磁心来测试该存储器磁心。前述的微处理器磁心和存储器磁心的测试是由本发明的相同发明人提交的单独的美国专利申请09/170,179、09/182,382和09/183,033的主题。
本发明的另一方面是测试模拟/混合信号磁心用的结构。该结构包括形成于该微处理器磁心和将被测试的一模拟磁心之间的集成电路芯片中的一个测试寄存器;位于该测试寄存器和该模拟磁心之间、用来选择地向该模拟磁心提供数据的一个多路复用器;用来多次执行微处理器指令并求得该结果以确保微处理器磁心的完整性和通过由该微处理器磁心生成一存储测试模式来测试一存储器磁心并求得该结果的装置;和一个用于通过一个接口电路向该微处理器磁心提供可执行测试程序的主机;其中,该模拟磁心被提供一个由该微处理器磁心生成的测试模式,并且由该微处理器或该主机来求得该模拟磁心的合成输出的值。
根据本发明,该测试方法不需要大面积的系统开销(它仅需要芯片上系统IC中的一个寄存器和一个多路复用器)。因为该硬件系统开销可以忽略,所以该新的测试方法不会引起性能损失。本发明还能避免特定的测试设备,因此,不需要在SoC IC设计中设置专用的观测和控制点。该方法可应用于标准DAC/ADC产品,也可用于基于微处理器的芯片上系统中的嵌入式模拟/混合信号磁心。
图1是表示具有多个嵌入式磁心的通常被称为芯片上系统(SoC)IC的大规模集成电路(LSI)的内部结构的示意图;图2是表示本发明中用于测试SoC IC中的模拟/混合信号磁心的整个结构的示意图;图3是表示本发明中用来测试SoC IC中的模拟和/或混合信号磁心的SoC IC中的基本结构的示意图;图4A和4B是表示在如DAC/ADC的模拟磁心中涉及的各种测试参数的图解说明的示意图;图5表示应用于SoC IC中的微处理磁心的、来自外部的、用来生成应用于模拟/混合信号磁心的测试信号并从而求得响应值的汇编语言测试程序的一个实例。
本发明提供一用来测试具有微处理器磁心和存储器磁心的芯片上系统(SoC)IC中的模拟和/或混合信号磁心的方法和结构。典型地,模拟/混合信号磁心是ADC(模数转换器)和DAC(数模转换器)。在本测试方法中,首先测试微处理器磁心,接着,利用该微处理器磁心的计算功率来生成用于模拟/混合信号磁心的测试模式。该微处理器磁心将该测试模式应用于该要被测试的模拟/混合信号磁心,并由求得该测试响应的值来判定故障。本申请的发明人已经在1998年10月29日提交的美国专利申请09/182,382中描述了测试SoCIC中的微处理器磁心的方法和结构。除了附加于该微处理器磁心的可以忽略的硬件外,该测试方法不需要任何设计的更改或如用于常规测试用设计(DFT)和内置式自测试(BIST)方法中的额外电路(硬件系统开销)。
关于嵌入在这样一个SoC IC中的DAC/ADC,需要指出的是,当ADC的输出是不可存取的时候,其输入通常是可存取的。另一方面,当DAC的输入是不可存取的时候,其输出通常是可存取的。这样,测试DAC的最简单的形式就是在该芯片内(芯片上)生成测试激励(模式),因为该DAC的输入是不可存取的,而由外部ATE(片外)进行响应求值,因为输出是可存取的。类似地,测试ADC的最简单的形式就是由ATE生成并应用测试激励,而在该芯片内进行响应求值,因为输出是不可存取的。
图2是表示用来测试SoC IC中的模拟/混合信号磁心的结构的示意框图。在图2中,在SoC IC的外部提供包括一个主机31、一个硬盘33和一个I/O接口36的自动测试装置(ATE)。ATE的一个实例是一个常规的IC测试器。典型地,该硬盘33存储一个用于测试SoC IC中的模拟磁心的测试程序。主机31通过I/O接口36向SoC芯片内的微处理磁心12提供汇编语言测试程序的可执行代码。该汇编语言测试程序由微处理磁心12的汇编程序转换成二进制形式。该汇编程序可位于SoC外部的主机31中。这样,微处理器磁心12从该目标代码生成测试模式。这些测试模式被应用于模拟/混合信号磁心。
图3是表示本发明中用来测试SoC IC中的模拟/混合信号磁心的SoC IC中的基本结构的示意框图。图3表示被测试的DAC27和微处理器磁心12,以及测试寄存器44和多路复用器46。在虚线内的该测试寄存器44和多路复用器46仅是加在SoC IC中的外部硬件。
该测试寄存器44将由微处理器磁心12产生的测试数据(模式)应用于DAC 27以被测试。测试寄存器44中的测试数据由微处理器中的一个数据寄存器提供。多路复用器36基于模式选择信号选择地将来自测试寄存器44的测试数据或正常的输入数据传送至DAC27。在测试模式下,多路复用器46向DAC提供测试数据,而在正常模式下,它向DAC 27提供正常输入数据。
测试寄存器44的内容可由变址寻址来改变,例如由通过任何一个微处理器地址寄存器的寻址。测试寄存器44的实现可以是一个独立的寄存器或一个专用的存储单元。测试寄存器34和多路复用器46可被单独执行或当芯片上具有总线时,在该芯片上总线内被执行。
在图2和3的构造中,在微处理器磁心12无故障的假设下,则可由微处理器磁心12来进行ADC/DAC的测试。测试这样一个嵌入式微处理器磁心的方法和结构在由本发明的相同发明人于1998年10月29日提交的美国专利申请09/182,382和1998年10月30日提交的美国专利申请09/183,033中进行了描述。用于该测试的目的,开发了一种汇编语言程序(用微处理器的汇编语言编写),以当由微处理器磁心12执行时,生成必需的测试激励。使用微处理器汇编程序将这样一个测试程序转换成二进制代码。该二进制代码被存储在例如硬盘33中的ATE存储器中,并可通过接口电路36将它应用于微处理器磁心12。
该微处理器磁心12执行包括微处理器指令和数据的该二进制代码,因而生成所需的用于DAC/ADC 27的测试模式。DAC/ADC 27对于该测试模式的响应或是由微处理器磁心12同时求值,或者是存储在芯片上存储器中以用于以后的求值。或者,DAC/ADC 27的响应还可由ATE(主机31)来求值。
当微处理器磁心12也进行求值的情况下,这样一个求值过程通过执行微处理器磁心12上的另一个程序来进行,类似地也以汇编语言开发该程序,将其转换成二进制代码并应用于微处理器磁心12。响应于该求值程序,微处理器磁心12进行必要的计算以求得ADC/DAC的响应值,并确定其中是否有故障。值得注意的是,如果芯片上存储器不足以存储该ADC/DAC响应,则该响应应被存储在ATE存储器中,并由ATE求值以决定通过/故障。
前述的顺序总结如下步骤1测试微处理器磁心和存储器磁心。在上面提到的本发明的相同发明人的专利申请中描述一种用于这种测试的新方法。
步骤2开发一个能够生成用于要被测试的DAC/ADC磁心27的所需的测试模式的汇编语言程序。在图5中给出了生成用于各种DAC/ADC参数的该测试模式的实例过程。
步骤3使用该微处理器磁心12的汇编程序来生成该汇编语言程序的目标代码。在上述专利申请中描述了一个生成该目标代码的一般化的过程。
步骤4通过一个接口电路将该目标代码应用于微处理器磁心12。
步骤5微处理器磁心12生成DAC/ADC测试模式,并将该测试模式应用于要被测试的DAC/ADC磁心27。
步骤6微处理器磁心12收集并求得DAC/ADC磁心信号的响应值。一方面,该响应被收集于芯片上存储器中。微处理器磁心12执行该测试求值程序并计算特定的参数值。基于这些值,微处理器磁心12决定通过/故障并向主机发出该信息。另一方面,该响应被收集于在ATE或其它测试器中的主机中。主机执行一个程序来计算各种参数并决定通过/故障。该程序不必是以汇编语言的形式。
图4A和4B表示例如数模转换器(DAC)和模数转换器(ADC)的模拟磁心中涉及的各种测试参数。参照图4A和4B,典型的测试参数如下(P1)偏移电压(Vos)对于DAC而言,偏移电压Vos是一个在输入处施加无效或全零码时的模拟输出电压。测试矢量的宽度与DAC分辨位的宽度相同,而长度为2N,如16、32、64等等。另外,为了避免由噪音引起的失真,多次应用相同的矢量,并取响应输出的平均值来计算偏移电压Vos。简单地通过向一个微处理器数据寄存器施加全零就可获得该测试矢量。一个单一的微处理器指令“MVI0000H,Di”被用于这个目的,其中,Di是第i个数据寄存器。在图5的实例中,用寄存器D1代替第i个寄存器以用于说明。
(P2)满标量程(FSR)对于DAC而言,满标量程FSR是当在输入处施加该满标代码(全1)值(VFS)时的模拟输出电压和当在输入处施加无效(全0)代码值(Vos)时的模拟输出电压之间的差,如FSR=VFS-Vos。用于该满标量程电压VFS的测试激励为全1值,这样,该过程与生成用于偏移电压Vos的测试矢量的过程相同。由此,两个指令提供用于FSR的必需的测试激励(全0和全1值)。
(P3)遗漏码和主转变对于DAC而言,主转变是引起一个进位以反转最低有效的非零位并设置下一位的代码之间的转变。对于N位的DAC而言,从0计到2N-1的计数器提供所有可能的代码值,这样,就足以测试任何遗漏码和主转变。一汇编语言程序提供这种计数功能。值得注意的是,对于代码转变测试而言,仅主代码转变就足够了,例如满标量程的1/4、1/2和3/4而无需应用所有代码值。
(P4)微分非线性度对于DAC而言,它是在相邻输入码之间的实际模拟输出幅度偏离1(一)LSB(最低有效位)的最大偏差。它要求全0、全1和所有代码输入的一个线性顺序。这样,在上述参数P2和P3中给出的组合的过程提供必要的测试激励。
(P5)积分非线性度对于DAC而言,它是代码边缘或模拟输出偏离第一和最后代码之间所绘的直线的最大偏差。这样,在上述参数P2和P3中给出的组合的过程提供必要的测试激励。
在将该测试模式应用于被测试的DAC/ADC之后,通过下面的过程获得上述参数。虽然为了说明而将计算方法一般化,但下面的实例表示DAC的数字化输出响应的使用。
(S1)偏移电压(Vos)如上所述,为了消除噪音失真,最好多次应用全0矢量并因此获得一个平均值。为了计算Vos,DAC的输出在微处理器磁心12的一个数据寄存器内被累加2N次,其中N为一整数。该累加值被右移N位,其等效于除法操作,以获得该平均值。
(S2)满标量程(FSR)对于DAC而言,该值为FSR=VFS-Vos,其中,VFS为测量的满标量程电压,Vos为测量的偏移电压。获得满标量程电压VFS的机构与获得偏移电压的机构相同,除了对于满标量程VFS而言,输入矢量为全1而不是全0。因此,对于满标量程FSR而言,DAC27在全0下的输出被累加在一个数据寄存器(D1)中,DAC27在全1下的输出被存储在另一个数据寄存器(D2)中。两个数据寄存器D1和D2的内容向右移N位以获得电压VFS和Vos。最后,寄存器D2和D1之间的差,即D2-D1提供该满标量程FSR。该计算的值FSR可被存储在另一个数据寄存器(D3)中。前述的步骤如下所述(S2-a)如步骤(S1)中所述获得偏移电压Vos。在数据寄存器D1中存储该值Vos。
(S2-b)用如步骤(S2)中所述的过程获得全1下的VFS。将该值VFS存储在数据寄存器D2中。
(S2-c)进行减法D2-D1以获得满标量程FSR。将该值FSR存储在数据寄存器D3中。通过指定微处理器磁心或SoC IC中的存储器磁心内的存储单元中的内部寄存器来执行这种数据寄存器D1-D3。
(S3)遗漏码和主转变数字化DAC输出并将它存储在芯片上存储器或如硬盘33的ATE存储器中。使用两个额外的数据寄存器(D4和D5)在两个连续代码值下来存储数字化的输出。通过指定微处理器磁心或SoC IC中的存储器磁心内的存储单元中的内部寄存器来执行这种数据寄存器D1-D5。如前面所述,一个计数器(在汇编语言下执行)将该代码值应用于测试下的DAC27。数据寄存器D4和D5的内容表示代码转变。当寄存器D4或D5获得一个无效值时,检测到一个遗漏码。D4和D5的值之间的差识别该主转变。
(S4)差分非线性度(DNL)在满标量程FSR被计算之后,进行一进一步的除法操作来获得LSB(最低有效位)的大小。用两个额外的数据寄存器(D4和D5)来存储两个连续代码下的数字化输出,同时,一计数器将该代码值应用于如前所述的测试下的DAC。从D5中减去数据D4即提供DNL。进一步将该计算的DNL与事先设定的最大值进行比较,以生成一个通过/故障标志。前述步骤为(S4-a)如步骤(S1)中所述获得偏移电压Vos并将该值Vos存储在数据寄存器D1中。如步骤(S2-b)中所述获得满标电压VFS。将该值存储在寄存器D2中。如步骤(S2-c)中所述获得FSR。
(S4-b)用2N-1除以FSR以获得LSR的大小。将该值存储在寄存器D6中。
(S4-c)对应于关于遗漏码和主转变的步骤(S3),应用如所述的从0到2N-1的二进制序列。
(S4-d)将在每个连续代码下的数字化输出放在寄存器D4和D5内。计算D4-D5差值以获得DNL。
(S4-e)将计算的DNL与事先设定的DNL进行比较。如果计算的DNL大于事先设定的DNL,则产生一个故障标志。
该测试方法的主要优点在于能够利用可忽略的面积系统开销来非常有效地测试嵌入式模拟/混合信号电路。本发明避免了专门的测试装置,因此不需要在设计中设置专用的观测和控制点。虽然我们用ADC/DAC作为实例,但该方法被一般化并可应用于任何模拟/混合信号电路。
虽然这里只特别说明和描述了一个最佳实施例,但应该明白,在不脱离本发明的实质和预期范围下,在上述教导的启发下和后面的权利要求的范围内,本发明的许多更改和改变是可能的。
权利要求
1.一种用来测试其内具有一个微处理器磁心和一个存储器磁心的集成电路芯片上的嵌入式模拟磁心的方法,包括下列步骤在该微处理器磁心和将被测试的模拟磁心之间的集成电路芯片上提供一测试寄存器;通过多次执行微处理器指令并求得结果来测试该微处理器磁心;使用一在该微处理器磁心上运行的汇编语言测试程序,以由该微处理器磁心来产生一测试模式;由该微处理器磁心将该测试模式应用于该模拟磁心,并且通过该微处理器磁心或一个从该集成电路芯片外部提供的测试系统来求得该模拟磁心的响应值。
2.如权利要求1所述的用于测试嵌入式模拟磁心的方法,还包括在由生成存储器测试模式并将该存储器测试模式应用于所述存储器磁心且求得在存储器磁心中的存储数据值的微处理器磁心测试该模拟磁心之前,测试该存储器磁心的步骤。
3.如权利要求1所述的用于测试嵌入式模拟磁心的方法,其中,应用于该微处理器磁心的测试程序是一汇编语言测试程序的目标代码。
4.如权利要求3所述的用于测试嵌入式模拟磁心的方法,其中,所述汇编语言测试程序由外部主机通过I/O接口提供给所述微处理器磁心。
5.如权利要求3所述的用于测试嵌入式模拟磁心的方法,其中,所述汇编语言测试程序由外部IC测试器通过I/O接口提供给所述微处理器磁心。
6.如权利要求1所述的用于测试嵌入式模拟磁心的方法,其中,该集成电路芯片是一个芯片上系统IC。
7.如权利要求1所述的用于测试嵌入式模拟磁心的方法,其中,该嵌入式模拟磁心为模数转换器(ADC)和/或数模转换器(DAC)。
8.一种用于测试其内具有一个微处理器磁心和一个存储器磁心的集成电路芯片上的嵌入式模拟磁心的结构,包括一个形成于该微处理器磁心和一个被测试的模拟磁心之间的集成电路芯片上的测试寄存器;一个位于该测试寄存器和该模拟磁心之间、用于选择性地将数据提供给该模拟磁心的多路复用器;用于多次执行微处理器指令并求得该结果以确保该微处理器磁心的完整性及用于通过由该微处理器磁心生成一存储器测试模式并求得该结果来测试一存储器磁心的装置;和一个用来通过接口电路向该微处理器磁心提供可执行测试程序的主机;其中,该模拟磁心被提供一个由该微处理器磁心产生的测试模式,该模拟磁心的结果输出由该微处理器磁心或该主机来求值。
9.如权利要求8所述的用于测试嵌入式模拟磁心的结构,其中,当向该多路复用器提供测试模式信号时,该测试寄存器通过该多路复用器将测试数据从该微处理器磁心传送至被测试的模拟磁心。
10.如权利要求8所述的用于测试嵌入式模拟磁心的结构,其中,在由产生一存储器测试模式并将该存储器测试模式应用于所述存储器磁心并求得该存储器磁心中的存储数据的值的该微处理器磁心测试该模拟磁心之前,进行该存储器磁心的测试。
11.如权利要求8所述的用于测试嵌入式模拟磁心的结构,其中,应用于该微处理器磁心的测试程序为一汇编语言测试程序的目标代码。
12.如权利要求11所述的用于测试嵌入式模拟磁心的结构,其中,该汇编语言测试程序由外部主机通过I/O接口提供给该微处理器磁心。
13.如权利要求11所述的用于测试嵌入式模拟磁心的结构,其中,该汇编语言测试程序由外部IC测试器通过I/O接口提供给该微处理器磁心。
14.如权利要求8所述的用于测试嵌入式模拟磁心的结构,其中,该集成电路芯片为一芯片上系统IC。
15.如权利要求8所述的用于测试嵌入式模拟磁心的结构,其中,该嵌入式模拟磁心为模数转换器(ADC)和/或数模转换器(DAC)。
全文摘要
测试具有微处理器磁心和存储器磁心的集成电路芯片中的嵌入式模拟磁心的一种方法。其包括下列步骤:在微处理器磁心和将被测试的模拟磁心之间的集成电路芯片上提供一个测试寄存器,测试该微处理器磁心和该存储器磁心,使用一在该微处理器磁心上运行的汇编语言测试程序,以由该微处理器磁心产生一测试模式,通过该微处理器磁心来将该测试模式应用于该模拟磁心,并且由该微处理器磁心或一个外部提供的测试系统来求得模拟磁心的响应值。
文档编号H01L21/66GK1373505SQ0110437
公开日2002年10月9日 申请日期2001年2月28日 优先权日2001年2月28日
发明者罗池特·雷兹曼 申请人:株式会社鼎新
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1