模拟块及用于测试其的测试块的制作方法

文档序号:9438671阅读:653来源:国知局
模拟块及用于测试其的测试块的制作方法
【技术领域】
[0001]以下描述涉及集成电路装置(“1C”)。
[0002]更确切地说,以下描述涉及用于IC的模拟块及用于测试模拟块的测试块。
【背景技术】
[0003]可编程装置(例如,可编程逻辑装置(“PLD”))可具有许多组件。在过去,通常可通过对用于内建式自测试(“BIST”)系统的可编程资源(例如,“构造”)进行编程来测试PLD的大量组件,所述BIST系统是经由此类构造中的配置位流来提供的。但是,PLD已发展成芯片上系统(“SoC”),且对于具现化的此类BIST系统测试来说并非可经由构造来存取待测试的所有大量组件。沿着那些线,一或多个模拟块可从此类构造去耦,并且因此可能不可经由构造存取以用于此类BIST系统测试。
[0004]因此,提供其中可测试模拟块的SoC将是有用的。

【发明内容】

[0005]一种设备通常涉及芯片上系统。在此类设备中,所述芯片上系统具有至少一个模拟块、输入/输出接口、数据测试块和处理单元。处理单元耦合到输入/输出接口以控制对至少一个模拟块的存取。数据测试块经由输入/输出接口耦合到至少一个模拟块。处理单元耦合到数据测试块,并且经配置以执行具有至少一个测试图案的测试代码。数据测试块在由处理单元执行的测试代码的控制下被配置成以测试图案来测试至少一个模拟块。
[0006]—种方法通常涉及测试模拟块。在此类方法中,所述模拟块包含环回数据序列。将配置信息提供到链路测试块的配置控制器。响应于配置信息在配置控制器的控制下配置模拟块。通过链路测试块的误码率测试仪从模拟块接收数据序列。误码率测试仪配置有测试图案信息。数据序列对与测试图案信息相关联的测试图案作出响应。通过误码率测试仪来确定数据序列的误码率。输出误码率。
[0007]一种方法通常涉及产生数据眼。将配置信息提供到链路测试块的配置控制器。响应于配置信息在配置控制器的控制下配置模拟块。通过链路测试块的眼球扫描控制器经由第一输入/输出总线从模拟块接收应用程序数据。由眼球扫描控制器响应于应用程序数据来产生数据眼。所述数据眼是用于响应于配置信息来设定模拟块。输出数据眼。
【附图说明】
[0008]附图示出了( 一或多个)例示性设备和/或方法。但是,附图不应理解为限制权利要求的范围,而是仅用于阐释和理解。
[0009]图1是描绘例示性柱状现场可编程门阵列(“FPGA”)架构的简化框图。
[0010]图2是描绘例示性芯片上系统(“SoC”)的框图。
[0011]图3是描绘例示性模拟块测试流程的流程图。
[0012]图4是描绘图3的测试流程的例示性环回测试流程的流程图。
[0013]图5是描绘例示性数据眼产生流程的流程图。
【具体实施方式】
[0014]在以下描述中,阐述众多特定细节以提供对本文中描述的特定实例的更彻底描述。但是,所属领域的技术人员应显而易见,可在没有下文给出的所有特定细节的情况下实践一或多个其它实例和/或这些实例的变化。在其它例子中,未详细地描述熟知的特征以免混淆本文中的实例的描述。为便于说明,在不同的图式中使用相同的编号标签以参考相同的项目;但是,所述项目在替代实例中可能不同。
[0015]在描述若干图中的说明性地描绘的实例之前,提供总体介绍以有助于进一步的理解。可编程装置(例如,可编程逻辑装置(“PLD”))可具有许多组件。在过去,通常可通过对用于内建式自测试(“BIST”)系统的可编程资源(例如,“构造”)进行编程来测试PLD的大量组件,所述BIST系统是经由此类构造中的配置位流来提供的。但是,PLD已发展成芯片上系统(“SoC”),且并非可将待测试的所有组件耦合到具现化于构造中的此类BIST系统的构造。沿着那些线,模拟块可从此类构造去耦。
[0016]如下文额外详细描述,描述了用于测试SoC的一或多个模拟块的嵌入式测试块。确切地说,描述了对基于模拟的SERDES的测试。尽管以下描述是就SoC而言的,但此类SoC可为单块裸片上或多裸片封装(例如,在具有或不具有用于堆叠裸片的内插物的堆叠式裸片封装中)上的许多SoC中的一者。
[0017]记住以上一般理解,下文一般性地描述SoC的各种实施例。
[0018]因为本文中使用特定类型的IC来描述上述实例中的一或多者,所以下文提供此类IC的详细描述。但是,应理解,其它类型的IC也可受益于本文中所描述的一或多个技术。举例来说,可使用与下文描述的技术和电路类似的技术和电路来测试具有嵌入块的其它1C。
[0019]可编程逻辑装置(“PLD”)是熟知类型的集成电路,其可经编程以执行指定的逻辑功能。一种类型的PLD,即现场可编程门阵列(“FPGA”)通常包含可编程单元片的阵列。这些可编程单元片可包含(例如)输入/输出块(“Ι0Β”)、可配置逻辑块(“CLB”)、专用随机存取存储器块(“BRAM”)、乘法器、数字信号处理块(“DSP”)、处理器、时钟管理器、延迟锁定环路(“DLL”)等等。如本文中所使用,“包含(include/including) ”意指包含而无限制。
[0020]每一可编程单元片通常包含可编程互连和可编程逻辑两者。所述可编程互连通常包含由可编程互连点(“PIP”)互连的不同长度的大量互连线。所述可编程逻辑使用可包含(例如)函数产生器、寄存器、算术逻辑等等的可编程元件实施用户设计的逻辑。
[0021]通常,通过将配置数据流加载到定义可编程元件的配置方式的内部组态存储器单元,对可编程互连与可编程逻辑进行编程。配置数据可通过外部装置从存储器(例如,从外部PR0M)中读取或写入FPGA中。随后,个体存储器单元的集体状态确定FPGA的功能。
[0022]PLD的另一类型为复杂可编程逻辑装置,或CPLD。CPLD包含通过互连开关矩阵连接在一起并且连接到输入/输出(“I/O”)资源的两个或两个以上“功能块”。CPLD的每一功能块包含与在可编程逻辑阵列(“PLA”)和可编程阵列逻辑(“PAL”)装置中使用的结构类似的二层与/或(AND/OR)结构。在CPLD中,配置数据通常以芯片上方式存储在非易失性存储器中。在一些CPLD中,配置数据以芯片上方式存储在非易失性存储器中,随后作为初始配置(编程)序列的一部分下载到易失性存储器上。
[0023]对于所有这些可编程逻辑装置(“PLD”)来说,此些装置的功能性由为了所述目的而提供到装置的数据位控制。数据位可存储在易失性存储器(例如,当在FPGA与一些CPLD中时的静态存储单元)中、非易失性存储器(例如,当在一些CPLD中时的快闪存储器)中、或任何其它类型的存储单元中。
[0024]通过应用以可编程的方式互连所述装置上的各种元件的处理层(例如,金属层)对其它PLD进行编程。这些PLD被称为掩模可编程装置。PLD还可以其它方式来实施,例如,使用熔丝或反熔丝技术。术语“PLD”和“可编程逻辑装置”包含但不限于这些例示性装置,并且涵盖仅仅部分可编程的装置。举例来说,一种类型的PLD包含经硬编码的晶体管逻辑与以可编程的方式互连所述经硬编码的晶体管逻辑的可编程开关构造的组合。
[0025]如上文所指出,高级的FPGA可在阵列中包含几个不同类型的可编程逻辑块。举例来说,图1说明包含大量不同可编程单元片的FPGA架构100,所述可编程单元片包含多千兆位收发器(“MGT”)101、可配置逻辑块(“CLB”)102、随机存取存储器块(“BRAM”)103、输入/输出块(“Ι0Β”)104、配置与定时逻辑(“CONFIG/CLOCKS”)105、数字信号处理块(“05?”)106、专用输入/输出块(“I/O”)107(例如,配置端口和时钟端口 )以及其它可编程逻辑108 (例如,数字时钟管理器、模/数转换器、系统监控逻辑等等)。一些FPGA也包含专用处理器块(“PR0C”)110。
[0026]在一些FPGA中,每一可编程单元片包含规范化地连接到和连接自每一相邻单元片中的对应互连元件的可编程互连元件(“INT”)111。因此,所述可编程互连元件结合在一起实施用于所说明的FPGA的可编程互连结构。可编程互连元件111还包含到以及自同一单元片内的可编程逻辑元件的连接,如通过包含在图1的顶部处的实例示出。
[0027]举例来说,CLB 102可包含可经编程以实施用户逻辑的可配置逻辑元件(“CLE”)112,外加单个可编程互连元件(“INT”)111。除一或多个可编程互连元件之外,BRAM 103还可包含BRAM逻辑元件(“BRL”)113。通常,包含在单元片
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1