集成电路测试方法研究.docx

上传人:b****8 文档编号:10945721 上传时间:2023-02-23 格式:DOCX 页数:40 大小:536.67KB
下载 相关 举报
集成电路测试方法研究.docx_第1页
第1页 / 共40页
集成电路测试方法研究.docx_第2页
第2页 / 共40页
集成电路测试方法研究.docx_第3页
第3页 / 共40页
集成电路测试方法研究.docx_第4页
第4页 / 共40页
集成电路测试方法研究.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

集成电路测试方法研究.docx

《集成电路测试方法研究.docx》由会员分享,可在线阅读,更多相关《集成电路测试方法研究.docx(40页珍藏版)》请在冰豆网上搜索。

集成电路测试方法研究.docx

集成电路测试方法研究

集成电路测试方法研究

1边界扫描测试方法1

1.1边界扫描基本状况1

1.2IEEEStd1149.11

1.3IEEEStd1149.43

1.4IEEEStd1149.55

1.5IEEEStd1149.66

1.6边界扫描测试的发展前景9

1.7本章小结9

2全扫描可测试性实现方法10

2.1为什么需要扫描测试10

2.2可扫描单元类型11

2.2.1多路选择器型的触发器11

2.2.2专用时钟扫描单元12

2.2.3电平敏感扫描设计12

2.2.4辅助时钟LSSD的扫描方式15

2.3如何提高故障覆盖率15

2.3.1门控时钟问题15

2.3.2时钟分频问题16

2.3.3内部复位问题17

2.3.4三态网络的DFT18

2.3.5双向引脚的DFT24

2.4一个实现实例28

2.5本章小结29

3集成电路的低功耗DFT方法30

3.1测试模式下功耗比较高的原因30

3.2基于扫描设计的低功耗DFT方法31

3.2.1测试矢量的处理31

3.2.2合理划分片上的测试资源31

3.2.3减少测试电路节点的翻转次数33

3.2.4软硬件协同测试34

3.3基于非扫描设计的低功耗DFT方法34

3.3.1对测试向量处理得到低功耗ATPG35

3.3.2降低CUT输入端的活动性37

3.3.3采用混合模式测试向量38

3.4本章小结39

1边界扫描测试方法

扫描技术是实现数字系统可测试性的关键技术,它包括边界扫描、全扫描、部分扫描。

本章介绍边界扫描的实现方法,全扫描和部分扫描将在下一章介绍。

边界扫描技术一开始是为了测试芯片之间的简单互连(即导线直接连接)。

由于系统芯片的设计是基于IP核的设计,IP核之间的互连也可以采用边界扫描技术来实现。

1.1边界扫描基本状况

JTAG(JointTestActionGroup,联合测试工作组)于1986年提出了一个标准的边界扫描体系结构,名叫Boundary-ScanArchitectureStandardProposal,最后的目标是应用到芯片、印制板与完整系统上的一套标准化技术。

1988年IEEE与JTAG同意合作开发一个叫做IEEE1149.1的标准,并于1990年发布了该标准[2]。

边界扫描测试技术在降低产品测试成本,提高产品质量和可靠性以及缩短产品上市时间等方面有显著的优点。

所以,边界扫描技术一提出就受到电子行业的普遍关注和广为接受,目前已得到了很多应用。

现在,一些国际性的大公司如Corelis,JTAGTechnology,Acculogic,Agilent等公司已经致力于开发满足相关测试协议的测试仪器和集成电路。

例如,Corelis公司的产品ScanPlus包括自动边界扫描测试程序生成、边界扫描诊断、交互式边界扫描调试、CPLD和flashmemories的在系统编程、用C语言编写的低级扫描函数库驱动器和JTAG在线仿真器等。

在1149.1协议推出以后,新的标准不断推出,下面进行比较详细的介绍。

1.2IEEEStd1149.1

边界扫描测试的基本原理如图3-1所示。

符合边界扫描规则的集成电路除了原有的功能模块外,还要有边界扫描单元(BSC)和测试访问端口控制器(TAPController)。

图1-1中的移位寄存器单元插入到IC的核心逻辑与I/O管脚之间,以提供通过所有IC的一条串行测试数据通路。

因为移位寄存器单元位于IC的边界处,所以这些单元被称为边界扫描单元(BSC,BoundaryScanCell),由它们构成的移位寄存器称为边界扫描寄存器。

串行测试数据的输入端被称为测试数据输入端(TDI),相应的输出端被称为测试数据输出端(TDO)。

为了完成测试功能,相互连接的边界扫描单元必须具有数据移位、数据更新、数据捕获等功能,这些功能是由测试控制逻辑来控制的。

测试控制逻辑由两条信号线驱动:

测试方式选择(TMS)和测试时钟(TCK)。

所以,整个边界扫描测试要求IC中至少有四个可利用的测试管脚,或将它们附加到其他的功能管脚上。

边界扫描测试技术的工作原理就是:

JTAG测试仪利用一个四线测试接口,将测试数据以串行方式由TDI打入到边界扫描寄存器中,通过TMS发送测试控制命令,经TAP控制器控制边界扫描单元完成测试数据的加载和响应数据的捕获。

最后,测试响应数据以串行扫描方式由TDO送出到JTAG测试仪,在那里,将捕获到的响应数据与期望的响应进行比较。

四个管脚TMS、TCK、TDI和TDO被称为测试访问端口(TAP,TestAccessPort),全部测试控制逻辑被称为TAP控制器。

1.3IEEEStd1149.4

1149.1的主要意图是是解决纯数字网络和混合系统中数字部分的可测试性设计问题。

然而,许多系统使用模拟的、数字的以及数模混合的元件。

各功能器件之间的连接不仅有简单的直接导线相连,也有电阻和电容这类耦合方式,如图1-2所示。

IEEE1149.4边界扫描标准协议致力于模拟互连电路可测试性设计的规范化,是直接耦合电路可测试性设计标准IEEE1149.1的扩展,它的基本思想与标准IEEE1149.1一样。

IEEE1149.4边界扫描标准的总体结构如图1-3所示,它向IEEE1149.1标准结构

中加入了一些扩展结构,即模拟端口上的模拟边界模块ABM和连接在模拟测试访问端口上的测试总线接口电路。

图3-3中所示的核心电路是一个模数混合电路,

它分别与数字边界模块(DBM)和模拟边界模块(ABM)相连。

图中画出了两个模拟管脚,在实际情况下,则可能有很多这样的管脚,对于每一个这样的管脚,则需要相同的连接方式。

每一个ABM上都有3个电压值VH,VL和VG,它们是由ABM中的开关矩阵在测试过程中从相应的端子来获得的。

VH是电路中最高的电平,VL是电路中最低的电平,VG则是稳定的参考电平。

值得指出:

这3个电平对于不同的管脚可能是不同的。

在实际测试过程中,将VH和VL分别与VG进行比较,可以得到数字结果,然后将这个数字结果用到TBIC与ABM的控制电路部分,而它们的控制电路是连接在扫描链上的,这样,一个数字结果就可以和1149.1中的数字数据兼容。

内部测试总线有两条,分别叫AB1和AB2。

1149.4支持差分信号传输。

当模拟测试访问端口采用差分形式的时候,就需要增加两个管脚,分别叫做AT1N与AT2N,它们需要另外一个TBIC和另外一对内部测试总线AB1N和AB2N。

在需要进行模拟电路部分测试时,需要外加测试激励,AT1为激励信号输入,AT2为测试结果输出。

测试总线接口电路(TBIC)的作用是在进行模拟测试的时候将AT1与AB1连通,AT2与AB2连通,当不需要进行模拟电路测试的时候,将它们断开。

左下角的4个管脚TDI,TDO,TMS和TCK与1149.1中定义的一致,以便与它兼容。

为了配合电容耦合的测试需要,IEEE1149.4测试标准新增加了一个PROBE公开指令。

对于数字电路,它的工作方式与采样指令SAMPLE相似。

PROBE指令的作用主要体现在模拟电路测试中。

当PROBE指令被选取时,模拟测试单元被设置成与核心电路相连,它可以从AT1端向电路提供激励信号,也可以在AT2端对电路的响应进行监控。

1.4IEEEStd1149.5

开发这个协议的初衷是提供一个有较高利润和标准化的背板模块测试和维护界面,旨在用于将来自不同设计组和销售商的可测试模块集成到一个可测试和可维护的系统中去[6]。

该标准的接口协议和命令可以对于模块上的固件进行访问,支持IEEEStd1149.1边界扫描标准。

该标准支持单个模块的故障隔离和各个模块之间的互连测试。

该总线协议标准化了一种测试和维护命令的通信方法,用于总线上各个子系统测试控制模块(MTM总线主模块)和其它模块(MTM总线从模块)之间的串行数据交

换。

MTM总线的内部可以包含其它的测试总线,它本身则作为全部测试和维护接口体系的一部分来实现。

该标准的体系结构如图1-4所示。

该协议的成功应用范例是波音777(boeing777)。

表1-1两个协议的引脚对应关系

1149.5

1149.1

MMD

TDI

MCTL

TMS

MSD

TDO

MCLK

TCK

MPR

TRST

从某种程度上说,1149.1是1149.5的雏形,在1149.1中,各种内嵌在IC中的BIST电路和这里的从模块具有一定的相似性。

这里的主从模块之间的信号和1149.1中的信号对比关系如表1-1所示,两个协议的主要特征对比关系如表1-2所示:

表1-21149.5与1149.1主要特征比较

1149.5

1149.1

板级

芯片级

基于包流信息

基于位流信息

有错误更正能力

无错误更正能力

无标准器件

有标准器件

有中断能力

返回到IDLE状态

表3-2中需要说明的是:

在IEEE1149.5中,总线上的信息传递是基于包(packet)的技术,像我们熟知的TCP/IP协议一样,而1149.1中的数据传递是按位进行的。

另外,比1149.1更高级的是,1149.5的从模块可以向主控制器申请中断(在异常情况下)。

从图3-4可以看出,这样的结构和星型结构的计算机网络结构基本相同。

因此,在本协议中,详细的定义了主控器和从模块的通信规范。

如同计算机网络协议一样,定义了一个层次型的网络结构规范。

1.5IEEEStd1149.6

本标准的酝酿开始于2001年5月21日,起草者是安捷伦公司和Cisco公司组成的一个叫做特别工业工作组的组织。

该工作组阐明了本标准,意在将它移交给IEEE,使之成为标准。

该工作组的任务是:

提出一种IC设计的方法,该方法支持鲁棒性的板级边界扫描测试,在信号通路中允许使用差分信号与交流耦合技术。

该技术利用并且兼容现有的IEEEStd1149.1。

他们的目标是提高IEEEStd1149.1的能力,以保持快速准确的检测和诊断系统中和电路板上的互连缺陷,尽管差分传送信号有故障掩盖效应,交流耦合传送信号有直流阻断效应。

该工作组开始称自己为“交流外测试(ACEXTEST)”工作组,但是后来改名为“高级I/O(AdvancedI/O)”工作组。

IEEE-SA标准委员会于2004年3月20日通过了该协议[5]。

本标准定义了IEEEstd1149.1-2001的扩展部分,标准化了必需的扫描结构和方法,对现行标准未给予足够重视的高级数字网络,尤其是那些交流耦合的、差模的以及两者兼而有之的网络,在进行边缘扫描测试时,确保简单的、健壮的和最低程度的干扰,该协议类似于IEEEStd1149.1测试常规数字网络,与用于常规模拟测试的IEEE1149.4相衔接。

本标准是IEEE1149.4的补充,明确的目标是高速数字网络的并行测试,而IEEE1149.4则主要解决更传统的模拟网络的串行测试。

对于所有的IEEEStd1149.1-2001所支持的新的I/O测试结构的软件或BSDL,本标准也进行了扩充。

本标准的主要技术是采用对跳变敏感的技术,而以前的协议是采用电平敏感的技术。

对于如图1-5所示的跳变,根据跳变的幅度和时间,采用迟滞比较器,可以较好地解决电路中共模噪声的干扰问题(参看图1-6)。

在一个带有未知漂移的信号中找到跳变的一种方法是将它和它自己的延迟信号比较,就是说,使用它当前的历史作为参考。

图1-6中画出了最初的信号、一个延迟的版本和迟滞比较器的输出结果。

输出信号是原始信号的准确重建,延迟了一个输入波形通过迟滞门限的时间。

输出波形已经变为标准逻辑电平,即:

未知的漂移被消除了。

由此可知,1149.6在克服信道中共模信号的干扰能力方面具有很强的能力。

值得指出的是,在1149.6中采用的这种新方法,即使差模信号以单端信号方式发送,也能够较好的克服共模信号(直流电平)的干扰。

在这个基本的思想下,本标准详细讨论了这种技术的应用。

1.6边界扫描测试的发展前景

IEEEStd1149.1-1990是边界扫描的第一个协议,它拉开了边界扫描技术推广与使用的序幕。

IEEEStd1149.4是对1149.1的一个补充,使得模拟耦合方式的测试成为可能。

1149.6则在以上两个协议的基础上,扩充了指令集,增加了交流耦合通路和差分通路的测试能力。

边界扫描协议IEEEStd1149.5中定义的MTM总线结构,为扫描测试向网络化方面的发展奠定了基础。

主模块和从模块之间的默契,为远程测试做下了铺垫。

1149.6的提出,完善了混合系统测试的方法,使得电路中几乎所有的模块可以相互连接,统一在主测试模块的管辖之下。

Agilent公司的芯片已经可以实现1149.6所要求的功能,完全支持1149.6的交流测试模式。

主模块和从模块的这种网状结构,进一步可以扩展为多级星型结构。

借助于现代的互连网技术和全球定位系统,加上已经比较成熟的无线通信协议,我们相信,在不远的将来,每个服务商和各个运营商将会拥有自己的“Intranet”,随时对自己的设备进行故障检测和故障定位。

1.7本章小结

本章简要的回顾了边界扫描的主要功能和主要实现思想,对边界扫描的系列协议进行了简单的总结,并展望了边界扫描技术在未来测试领域的应用。

今天的系统芯片有望成为明天的IP核,边界扫描结构在以后更大规模的集成电路设计中将成为诸多嵌入式内核之间互连测试的有效方法。

另外,由于边界扫描单元位于芯片的引脚端口,它也是一条直接控制内建自测试的有效通道。

2全扫描可测试性实现方法

为了便于实现ATPG的产生和加载,经常要使用扫描电路。

由于在集成电路中,被集成的IP核要保持原有的特性,对于IP核使用者来说,只在用户自定义逻辑中采用全扫描与部分扫描技术。

对于IP核设计者来说,一般而言,大多都要用到全扫描或部分扫描技术(一部分BIST电路除外)。

本章首先简要介绍扫描测试的必要性,然后详细探讨可扫描单元的基本类型和扫描链处理上的一些问题。

值得指出:

虽然本章介绍了多种可扫描单元类型,例如多路选择器型的触发器型、专用时钟型、电平敏感型等,但是在后面关于扫描链问题的处理上,通常用多路选择器类型中的二选一选择器D型触发器为例来进行探讨,对于其它类型的可扫描单元也可以使用类似的方法。

2.1为什么需要扫描测试

集成电路器件的制造面临着许多测试问题。

现实情况表明,集成电路器件的发展趋势是更高的密度、更多的引脚、更大的晶圆尺寸、更小的特征尺寸、更细的导线、更高的频率,这就使得集成电路对污染、工艺更加敏感,与此同时,也包含了出现物理故障的更高概率(由于更多的门与门之间的互连)。

“更高的频率”、“更多的管脚数”和“更高的复杂性”使得测试平台的价格不断提升,出现了“测试代价危机(crisisintestcost)”。

在某些市场,由于测试而带来的消费是硅片和封装价格总和的2~4倍[20]。

面对这样的问题,最好的解决方案就是提供某种测试访问机制,该机制能够提高电路内部节点的可控性和可观察性,从而缩短测试时间、减小测试数据量、降低测试平台复杂性。

扫描测试可以有效的解决这个问题。

扫描测试是在设计的时候用可扫描寄存器替换原来的标准寄存器,从而增加电路中的可控制点和可观察点,相当于增加了许多虚拟探头。

它的不足之处在于它会对原来电路的性能发生一定程度的影响,也会增加布局布线的复杂性和芯片的面积。

2.2可扫描单元类型

可测试性设计的一般思想是构造扫描链,构造扫描链的关键是用可扫描寄存器替换原来的标准寄存器。

一般情况下,可以使用的具有扫描功能的寄存器有四种类型,分别是:

多路选择器型、专用时钟型、电平敏感型、辅助时钟型。

下面逐一加以介绍。

2.2.1多路选择器型的触发器

这是一种主流类型。

用带有选择器的触发器(或锁存器)单元替代标准的触发器(锁存器)单元,并将它们串在一起,形成扫描链,然后将ATPG施加到其上,就可以控制和观察电路内部节点处的信号。

图4-1给出了采用多路选择器构成的可扫描触发器。

图a为常规的D触发器示意图,图b为可扫描D触发器符号,图c为图b相对应的内部电路结构。

由图中可以看出,具有扫描功能的触发器增加了两个输入端口:

Scan_in和Scan_En。

Scan_in引脚用于接受扫描数据的输入,Scan_En用于扫描使能。

在测试模式下,将测试向量打入寄存器的时候,将Scan_En置为“1”;在正常工作模式下和测试模式下的非扫描状态,将其置为“0”。

采用多路选择器而增加的延迟表现在功能路径中,有较少的面积增加。

一个带多路选择器的D触发器通常将一个标准D触发器的面积增加15%到30%;增加的I/O端口最少的可以只有一个Scan_En。

在实际设计中,可能并不需要增加一个另外的I/O端口用于Scan_in或者Scan_out,因为可以在设计中将这些引脚和功能引脚复用。

2.2.2专用时钟扫描单元

专用时钟控制的扫描方法是使用一个专用的、边沿触发的测试时钟来提供串行移位驱动。

在功能模式下,系统时钟是活动的,系统数据被时钟打入单元电路。

在测试移位过程中,测试时钟是活动的,扫描数据被打入该电路单元。

电路符号如图4-2所示。

图a为标准的D触发器,图b为专用时钟控制的可扫描单元。

在这种结构中,相当于有两个D输入端,两个时钟输入端。

在这种方式下,需要增加的测试引脚有:

扫描输入、测试时钟、扫描输出(可以和输出功能引脚共用)。

专用时钟控制扫描方式的特征是:

对电路性能影响可以忽略;面积的增加可以接受:

一个专用时钟控制的扫描单元一般比普通的D触发器的面积增加15%--30%;支持这种扫描方式的工艺库具有触发器和锁存器两种等效单元;很适用于部分扫描设计:

专用的测试时钟提供了一种机制,在扫描移位的过程中,可以很容易地保持非扫描单元的状态;支持带有异步置位和复位端的锁存器;典型的应用是具有边沿触发的设计风格。

2.2.3电平敏感扫描设计

常见的电平敏感扫描(LSSD扫描设计,LevelSensitiveScandesign)单元有3种方式:

单锁存器、双锁存器、专用时钟控制锁存器。

2.2.3.1单锁存LSSD

单锁存电平敏感扫描单元的逻辑结构如图4-3所示。

图a为通常意义下的D触发器,图b为它相应的可扫描单元。

图b增加了一个数据输入端、两个时钟输入端:

Test_Scan_Clock_a和Test_Scan_Clock_b。

增加的两个时钟是电平触发的。

在测试模式下,Test_Scan_Clock_a和Test_Scan_Clock_b连接到所有的同类扫描单元,分别在不同的时刻将扫描数据逐位移动。

Scan_in引脚的数据来自上一个扫描单元。

单锁存器LSSD的特征是:

a)对电路性能的影响可以忽略;

b)较高的面积代价。

用一个LSSD单元替换一个简单的锁存器将会增加100%或者更多时序逻辑的面积。

增加的主测试时钟和从测试时钟也增加了布线的面积(与多路选择器型的触发器扫描类型相比);

c)支持带有异步复位和清零端的锁存器;

d)因为增加了专用的测试时钟,所以适合用于部分扫描设计。

2.2.3.2双锁存器LSSD

双锁存器LSSD的基本结构如图4-4所示。

图a为常规的主从式D触发器,图b为它的可扫描单元。

相对于图a而言,图b增加了两个引脚:

Scan_in和Test_Scan_Clock_a。

在工作模式下,LSSD单元中的主从锁存器实现原来的主从锁存器的功能,系统数据被主从时钟c和b打入锁存器对,数据在从锁存器输出端输出。

在串行移位模式下,两相非交叠主从测试时钟施加到时钟输入端实现数据移位。

注意在双锁存LSSD中,从时钟(b)既用于工作模式又用于测试模式,而在单锁存LSSD中,它只用于扫描模式下的串行移位。

双锁存器LSSD特征是:

a)对电路性能的影响可以忽略;

b)较低的面积增加量(15%--30%);

c)支持具有异步复位和清零端的锁存器;

d)因为有专用的测试时钟的加入,所以适用于部分扫描设计。

2.2.3.3专用时钟控制的LSSD

专用时钟控制的LSSD使用与LSSD兼容的触发器单元替换边沿触发器。

在正常工作模式下,系统时钟有效,一个专用时钟控制的LSSD单元像一个边沿触发器一样完成系统数据的存储。

在扫描模式下,两相非交叠时钟驱动主从测试时钟完成扫描数据的移入和移出。

专用时钟控制的LSSD的特征:

a)对电路性能的影响可以忽略

b)中等的面积开销。

一个扫描单元的面积比基本的触发器增加40%---80%。

布线面积也会因为两个测试时钟的加入而有所增加。

c)适合于部分扫描设计,因为有专用的测试时钟。

2.2.4辅助时钟LSSD的扫描方式

此类可扫描单元要采用三个测试时钟,因而带来较大的面积开销,并且不能测试系统时钟的故障,因而实际应用中较少采用,所以此处不再给出具体的分析。

2.3如何提高故障覆盖率

提高故障覆盖率的关键就是要提高电路的可控制性和可观察性。

由于种种原因,某些电路的可控制性和可观察性往往不高,不可控制或者不可观察,也就造成某些故障的不可测试。

鉴于这样的原因,就需要对电路进行修改,修改电路的同时,要保证逻辑和时序的正确。

这里给出一些常见问题的解决办法。

2.3.1门控时钟问题

如下图4-5所示,当F0、F1中的任何一个为0时,时钟脉冲将被阻止传到F2,因此F2将不能和F0、F1放在同一个扫描链中。

解决这个问题的办法如图4-6所示。

在正常工作时,ASIC_TEST为低电平,插入的两个或门均打开,和图4-5功能相同。

图4-5门控时钟问题

图4-6门控时钟问题解决办法

在测试期间,测试信号ASIC_TEST为高电平,扫描和捕获时钟总能到达F2,因此F2可以和F0、F1放在同一个扫描链中。

2.3.2时钟分频问题

ATE只能控制输入端口的波形,对于如图4-7所示的情况,ATE只能控制CLK,在扫描过程中,对于虚线框中的F0和F1,并不是每一个测试时钟都能够到达F0和F1,因此,在测试过程中,很难预测它们的状态变化。

这样就需要改造该电路来实现可测试性。

改造后的电路如图4-8所示。

图中增加了一个二选一选择器。

在正常工作状态,ASIC_TEST为低电平,分频后的时钟信号可以驱动F0和F1,与图4-7的逻辑功能相同。

在测试方式下,CLK可以直接作用到F0和F1,因此F0和F1可以被包括到扫描链中。

值得指出,选择器的引入可能造成时钟歪斜(clockskew),但是,在频率不高的情况下,可以忽略这个影响。

图4-7时钟分频问题示例

图4-8时钟分频问题解决方法示例

2.3.3内部复位问题

该问题是指在电路内部有不可控制的异步复位端,如图4-9所示。

从图中可以看出,F2和F3的复位端和F1的Q端相连,因此,在测试向量施加的过程中,F1的状态将影响F2和F3的值,造成扫描链测试数据加载混乱。

为了解决这个问题,采用图4-10所示的方法:

增加一个多路选择器。

在正常工作模式下,该选择器是透明的,

图4-9内部复位问题示例

电路的工作逻辑和图4-9完全相同,也就是说,不会出现功能上的错误。

在测试模式下,ASIC_TEST为高电平,复位时钟可以有效的施加在所有的触发器上,使得扫描链可以正常的加载测试向量,进行扫描测试。

图4-10内部复位问题解决办法1

另外还有一种解决该问题的办法,如图4-11所示。

在正常工作模式下,ASIC_TEST为低电平,或门对于Q1而言是直通的,不影响电路的正常功能。

在测试模式下,ASIC_TEST为高电平,从而阻碍了Q1对F2和F3的影响,因而它们都可以放在扫描链中。

至于是否放在同一个扫描链中,就看设计的需要了。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 成考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1