CN111812490B - 一种测试fpga芯片中信号传输延时的方法 - Google Patents
一种测试fpga芯片中信号传输延时的方法 Download PDFInfo
- Publication number
- CN111812490B CN111812490B CN201910292343.2A CN201910292343A CN111812490B CN 111812490 B CN111812490 B CN 111812490B CN 201910292343 A CN201910292343 A CN 201910292343A CN 111812490 B CN111812490 B CN 111812490B
- Authority
- CN
- China
- Prior art keywords
- modules
- clb
- fpga chip
- module
- signal transmission
- 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
Images
Classifications
-
- 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/31725—Timing aspects, e.g. clock distribution, skew, propagation delay
-
- 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/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318516—Test of programmable logic devices [PLDs]
- G01R31/318519—Test of field programmable gate arrays [FPGA]
-
- 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/3181—Functional testing
- G01R31/3187—Built-in tests
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
一种测试FPGA芯片中信号传输延时的方法,通过可编程互联线将至少一个CLB模块和至少一个I/O模块连接成环形振荡器,环形振荡器中的CLB模块的数量为奇数,CLB模块中的LUT模块配置为非门电路。本发明直接利用FPGA芯片自带的逻辑资源和互联资源进行信号传输延时测试,免去了额外的电路开销,节省了电路面积,测试方法非常灵活且准确,可以支持各个位置的测试和各种晶体管类型的测试。
Description
技术领域
本发明涉及一种测试FPGA芯片中信号传输延时的方法。
背景技术
FPGA(现场可编程逻辑阵列)是一种集成电路芯片,包含可配置逻辑模块CLB(Configurable Logic Block)、输入/输出模块(I/O模块)和可编程互联线PI(Programmable Interconnect)。对于不同规格的FPGA芯片,可分别包含8×8、20×20、44×44甚至92×92个CLB阵列,同时配有64、160、352、甚至448个I/O模块以及为实现可编程连线所必需的其它部件。
集成电路的性能主要由信号的传输延时来判断。如图1所示,第一种测试传输延时的做法是通过独立的测试***分析信号的传输延时。由于在一片晶元上会同时制造大量的芯片,因此在芯片之间存在划线区域。划线区域可以使得晶元分割为独立的芯片,而不会损伤到芯片本身。而划线区域中也提供用于传统集成电路测试技术中的专用测试区域。因此这种方案在FPGA芯片之外的划线区域内,用和芯片内相同的晶体管搭建独立的环形振荡器测试电路并进行封装,然后在测试台上测量这个电路的输出频率,获得晶体管的传输延时。这一延时可以反映出与晶元相关的制造问题。如图2所示,第二种方案是在FPGA芯片内部额外做一些嵌入式的环形振荡器测试电路(PMV),通过FPGA的输出端口获得振荡器的输出频率,获得晶体管的传输延时。
如图3所示,环形振荡器利用奇数个反相器连接形成一个环,满足振荡器的放大和反馈条件,从而可以产生稳定的时钟。时钟的周期的一半为整个环路的延时。测量振荡器产生的时钟周期,根据级数n可计算出每一个反相器内部的传输延时。
对于第一种测试方案,它的测试区域在FPGA电路之外,而由于制造偏差,晶片的不同位置的信号传输延时是不同的,因此它不能很好地表现出FPGA电路内部的信号传输延时。而且通过测量台进行测试的频率有限,一般低于1MHz,而FPGA电路内部的信号传输频率一般大于100MHz,因此这种方案很难精确测量。
而对于第二种测试方案,它是可以测试FPGA电路内部信号传输延时的,但是这种方案只是在FPGA内的一小块地方放置了这种测试电路,而由于制造偏差,FPGA芯片内不同位置的信号传输延时也是不同的,所以这种测试方案是不全面的。而且FPGA电路内部电路延时分为前段延时和后段延时两种,前段延时取决于逻辑资源的晶体管,后段延时取决于互联资源。在前段延时中,不同种类的晶体管的延时也不同,例如核心逻辑模块CLB中的高速晶体管和输入/输出模块中的高功率晶体管的传输延时就不同。因此,想要充分模拟电路内的延时,在同一位置又需要设计多种测试电路,从而也会消耗面积,增加成本。
发明内容
本发明提供一种测试FPGA芯片中信号传输延时的方法,直接利用FPGA芯片自带的逻辑资源和互联资源进行信号传输延时测试,免去了额外的电路开销,节省了电路面积,测试方法非常灵活且准确,可以支持各个位置的测试和各种晶体管类型的测试。
为了达到上述目的,本发明提供一种测试FPGA芯片中信号传输延时的方法,通过可编程互联线将至少一个CLB模块和至少一个I/O模块连接成环形振荡器,环形振荡器中的CLB模块的数量为奇数,CLB模块中的LUT模块配置为非门电路。
通过改变CLB模块中SRAM的值来改变LUT模块的逻辑功能。
通过改变可编程互联线中SRAM的值来改变可编程互联线两端连接的模块。
FPGA芯片通过下载外部的位流文件来改变CLB模块中SRAM和可编程互联线中SRAM的值。
本发明直接利用FPGA芯片自带的逻辑资源和互联资源进行信号传输延时测试,免去了额外的电路开销,节省了电路面积,测试方法非常灵活且准确,可以支持各个位置的测试和各种晶体管类型的测试。
附图说明
图1是背景技术中第一种测试FPGA信号传输延时的示意图。
图2是背景技术中第二种测试FPGA信号传输延时的示意图。
图3是背景技术中环形振荡器电路的示意图。
图4是本发明中利用LUT模块构建的环形振荡器的电路图。
图5是测试FPGA芯片中相邻模块之间的信号传输延时的示意图。
图6是测试FPGA芯片中相邻两个模块之间的信号传输延时的示意图。
图7是测试FPGA芯片中相邻四个模块之间的信号传输延时的示意图。
图8是测试FPGA芯片中不同种类的晶体管的信号传输延时的示意图。
图9是测试FPGA芯片中不同位置的晶体管的信号传输延时的示意图。
具体实施方式
以下根据图4~图9,具体说明本发明的较佳实施例。
FPGA芯片包含可配置逻辑模块CLB(Configurable Logic Block)、输入/输出模块(I/O模块)和可编程互联线,可编程互联线实现CLB模块之间、I/O模块之间、以及CLB模块和I/O模块之间的连线。CLB模块、I/O模块和可编程互联线都包含SRAM(Static RandomAccess Memory,静态随机存储器),在使用FPGA芯片之前,需要下载位流文件,该位流文件里描述的就是FPGA芯片中SRAM的值,是可以灵活更改的。通过更改CLB模块中SRAM里的值,可以实现不同的逻辑功能,如与门、或门、非门等各种组合逻辑的功能。通过更改可编程互联线中SRAM里的值,可以实现CLB模块之间、I/O模块之间、以及CLB模块和I/O模块之间的不同连接关系。
CLB模块是FPGA芯片内部的核心逻辑模块,CLB模块一般包含触发器和LUT模块(查找表Look Up Table),数字逻辑电路一般都是通过时序部件(触发器)和组合逻辑(与门,或门,异或门等)来完成一系列的功能。FPGA芯片的组合逻辑部分一般都是基于LUT模块。LUT模块本质上就是一个RAM,它把数据事先写入RAM后,每当输入一个信号就等于输入一个地址进行查表,找出地址对应的内容,然后输出。
可以将LUT模块配置为多种逻辑,假设在FPGA芯片中要实现一个2输入的与门,那么该与门的输入输出对应关系为:
输入 | 输出 |
0,0 | 0 |
0,1 | 0 |
1,0 | 0 |
1,1 | 1 |
既然有了此对应的逻辑关系,那么在SRAM对应的地址中只需存储相应的输出数值,而输入数值作为地址来查表即可得到正确的输出值。当输入地址为0,0时,输出0地址里存储的值为0,当输入地址为0,1时,输出1地址里存储的值为0,当输入地址为1,0时,输出2地址里存储的值为0,当输入地址为1,1时,输出3地址里存储的值为1。
通过写入FPGA芯片的位流文件来改变CLB模块中SRAM里的值,从而改变LUT模块的逻辑功能,将LUT模块构造为不同的逻辑,例如反向逻辑(非门),即可以将LUT模块构造为反相器,并且具有一定延时,因此可以用LUT模块搭建环形振荡器。
如图4所示,利用奇数个LUT模块连接形成一个环,组成环形振荡器,满足振荡器的放大和反馈条件,从而可以产生稳定的时钟。时钟周期的一半为整个环路的延时。测量环形振荡器产生的时钟周期,根据级数n可计算出每一个LUT模块内部的传输延时。
通过可编程互联线来实现CLB模块之间的连接,即实现LUT模块之间的连接,以使奇数个LUT模块组成环形振荡器。同样是通过写入FPGA芯片的位流文件来改变可编程互联线中SRAM里的值,从而改变可编程互联线的选择端,自由选择不同方向和长度的连线。
本发明提供一种测试FPGA芯片中信号传输延时的方法,通过可编程互联线将至少一个CLB模块和至少一个I/O模块连接成环形振荡器,环形振荡器中的CLB模块的数量为奇数,CLB模块中的LUT模块配置为非门电路。
通过改变CLB模块中SRAM的值来改变LUT模块的逻辑功能。
通过改变可编程互联线中SRAM的值来改变可编程互联线两端连接的模块。
FPGA芯片通过下载外部的位流文件来改变CLB模块中SRAM和可编程互联线中SRAM的值。
如图5所示,如果需要测试FPGA芯片中相邻模块之间的信号传输延时,通过写入FPGA芯片的位流文件来改变可编程互联线中SRAM里的值,从而改变可编程互联线的选择端,使可编程互联线分别连接相邻的两个CLB模块,使奇数个LUT模块组成环形振荡器,测试每个CLB模块的信号传输延时。
如图6所示,如果需要测试FPGA芯片中相邻两个模块之间的信号传输延时,通过写入FPGA芯片的位流文件来改变可编程互联线中SRAM里的值,从而改变可编程互联线的选择端,使可编程互联线分别连接距离为2的两个CLB模块,使奇数个LUT模块组成环形振荡器,测试每个CLB模块的信号传输延时。
如图7所示,如果需要测试FPGA芯片中相邻四个模块之间的信号传输延时,通过写入FPGA芯片的位流文件来改变可编程互联线中SRAM里的值,从而改变可编程互联线的选择端,使可编程互联线分别连接距离为4的两个CLB模块,使奇数个LUT模块组成环形振荡器,测试每个CLB模块的信号传输延时。
本发明不仅可以测试CLB模块之间的信号传输延时,还可以测试I/O模块之间的信号传输延时。如图8所示,可以将多个I/O模块和一个CLB模块通过可编程互联线组合在一起组成环形振荡器(至少需要一个CLB模块来实现反相器的功能),测试I/O模块的信号传输延时。I/O模块和CLB模块中的晶体管是两种不同的晶体管,本发明可以方便地测试FPGA芯片中不同种类的晶体管的信号传输延时,而不用增加额外的电路面积开销。
由于在芯片的制造过程中有些随机因素,因此相同的器件在芯片不同位置时速度可能不同。如图9所示,可以将FPGA芯片中不同位置处的CLB模块通过可编程互联线组合在一起组成环形振荡器,测试CLB模块的信号传输延时。本发明可以方便地测试芯片中不同位置的晶体管的信号传输延时,而不用增加额外的电路面积开销。
本发明直接利用FPGA芯片自带的逻辑资源和互联资源进行信号传输延时测试,免去了额外的电路开销,节省了电路面积,测试方法非常灵活且准确,可以支持各个位置的测试和各种晶体管类型的测试。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (3)
1.一种测试FPGA芯片中信号传输延时的方法,其特征在于,该方法包含:通过可编程互联线将至少一个CLB模块和至少一个I/O模块连接成环形振荡器,通过改变可编程互联线中SRAM的值来改变可编程互联线两端连接的模块,环形振荡器中的CLB模块的数量为奇数,CLB模块中的LUT模块配置为非门电路。
2.如权利要求1所述的测试FPGA芯片中信号传输延时的方法,其特征在于,通过改变CLB模块中SRAM的值来改变LUT模块的逻辑功能。
3.如权利要求1或2所述的测试FPGA芯片中信号传输延时的方法,其特征在于,FPGA芯片通过下载外部的位流文件来改变CLB模块中SRAM和可编程互联线中SRAM的值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910292343.2A CN111812490B (zh) | 2019-04-12 | 2019-04-12 | 一种测试fpga芯片中信号传输延时的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910292343.2A CN111812490B (zh) | 2019-04-12 | 2019-04-12 | 一种测试fpga芯片中信号传输延时的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111812490A CN111812490A (zh) | 2020-10-23 |
CN111812490B true CN111812490B (zh) | 2023-04-28 |
Family
ID=72844427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910292343.2A Active CN111812490B (zh) | 2019-04-12 | 2019-04-12 | 一种测试fpga芯片中信号传输延时的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111812490B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115129641B (zh) * | 2022-06-14 | 2024-01-19 | 沐曦集成电路(南京)有限公司 | 双向互联总线延时调整方法、电子设备和介质 |
CN115250113A (zh) * | 2022-09-20 | 2022-10-28 | 旋智电子科技(上海)有限公司 | 一种延时电路及其控制方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495821A (zh) * | 2011-11-16 | 2012-06-13 | 深圳市国微电子股份有限公司 | 一种fpga可编程互连线的延时分析方法 |
CN109217951A (zh) * | 2018-09-07 | 2019-01-15 | 深圳市紫光同创电子有限公司 | 一种基于fpga的传输延时测试方法及装置 |
CN109445366A (zh) * | 2018-12-27 | 2019-03-08 | 南京胜跃新材料科技有限公司 | 一种fpga可编程逻辑资源的筛选测试方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004003582A1 (en) * | 2002-07-01 | 2004-01-08 | University Of North Carolina At Charlotte | Methods for delay-fault testing in field-programmable gate arrays |
CN102033732B (zh) * | 2010-12-17 | 2012-07-18 | 浙江大学 | 基于fpga的高速低延迟浮点累加器及其实现方法 |
CN102288903B (zh) * | 2011-07-26 | 2014-12-10 | 北京航空航天大学 | 一种fpga内连线资源的测试结构及方法 |
CN102419417B (zh) * | 2011-08-17 | 2014-02-26 | 北京时代民芯科技有限公司 | 一种现场可编程逻辑门阵列触发器传播延迟的测试电路 |
CN102736023A (zh) * | 2011-08-31 | 2012-10-17 | 深圳市国微电子股份有限公司 | 在一种fpga互联线测试方法 |
CN108333500A (zh) * | 2013-10-12 | 2018-07-27 | 深圳市爱德特科技有限公司 | 一种基于ddr的测试装置 |
CN104865518B (zh) * | 2015-05-08 | 2017-08-11 | 北京航空航天大学 | 一种sram型fpga的clb动态老炼配置方法 |
CN105842610A (zh) * | 2016-03-31 | 2016-08-10 | 复旦大学 | 基于tdc的fpga电路传输延迟测试***和方法 |
CN106405387A (zh) * | 2016-08-31 | 2017-02-15 | 成都华微电子科技有限公司 | Fpga内部延迟测量方法 |
-
2019
- 2019-04-12 CN CN201910292343.2A patent/CN111812490B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495821A (zh) * | 2011-11-16 | 2012-06-13 | 深圳市国微电子股份有限公司 | 一种fpga可编程互连线的延时分析方法 |
CN109217951A (zh) * | 2018-09-07 | 2019-01-15 | 深圳市紫光同创电子有限公司 | 一种基于fpga的传输延时测试方法及装置 |
CN109445366A (zh) * | 2018-12-27 | 2019-03-08 | 南京胜跃新材料科技有限公司 | 一种fpga可编程逻辑资源的筛选测试方法 |
Non-Patent Citations (1)
Title |
---|
谢长生等.一种一种FPGA芯片时钟SKEW的测试方法.《微电子学与计算机》.2017,第第34卷卷(第第34卷期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111812490A (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10725102B2 (en) | Addressable test chip with sensing circuit | |
US4495628A (en) | CMOS LSI and VLSI chips having internal delay testing capability | |
US8040153B1 (en) | Method and apparatus for configuring the internal memory cells of an integrated circuit | |
US20080094053A1 (en) | Test circuits having ring oscillators and test methods thereof | |
CN111812490B (zh) | 一种测试fpga芯片中信号传输延时的方法 | |
US5687180A (en) | Method and circuit for checking operation of input buffers of a semiconductor circuit | |
US5351211A (en) | Semiconductor integrated circuit device having circuit inspection function | |
US11668748B2 (en) | Addressable test chip | |
CN102353892A (zh) | 一种基于sram的fpga的lut测试结构及方法 | |
US20090144677A1 (en) | Design Structure for a Circuit and Method to Measure Threshold Voltage Distributions in SRAM Devices | |
US7406639B2 (en) | Scan chain partition for reducing power in shift mode | |
US6260181B1 (en) | Integrated circuit and the design method thereof | |
US9021323B1 (en) | Test techniques and circuitry | |
JP2010109115A (ja) | オンチップ型のモニタ回路および半導体装置 | |
US20080024232A1 (en) | Circuit And Method To Measure Threshold Voltage Distributions In Sram Devices | |
JP2020518826A (ja) | 集積回路での動的スキャンチェーン再構成 | |
US8797082B2 (en) | Apparatus and methods for clock characterization | |
Singh et al. | Power-aware testing for maximum fault coverage in analog and digital circuits simultaneously | |
JPH0749368A (ja) | 半導体集積回路 | |
US9154135B1 (en) | Spare gate cell for integrated circuit | |
US7685486B1 (en) | Testing of an embedded multiplexer having a plurality of inputs | |
CN202189123U (zh) | 一种基于sram的fpga的lut测试结构 | |
KR100410554B1 (ko) | 반도체 메모리 장치에서의 패키지 맵 정보 출력방법 및그에 따른 회로 | |
JPH05102831A (ja) | 半導体集積回路の出力回路 | |
US6553528B1 (en) | Test circuit for semiconductor integrated circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |