《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可编程逻辑 > 设计应用 > 基于UVM和C语言验证JTAG调试协议的研究与实现
基于UVM和C语言验证JTAG调试协议的研究与实现
电子技术应用
陶青平,沈婧
(中国电子科技集团公司第五十八研究所,江苏 无锡 214035)
摘要: 芯片验证中,JTAG协议功能的好坏决定了芯片流片回来后是否具有可调试状态。多数情况下是编写一段既冗长且不易维护的TestBench代码进行验证;有些情况依赖FPGA原型验证手段去验证JTAG协议,但在该情况下,一些模块需进行FPGA资源替换,无法保证与RTL级网表一致,可能导致流片后回来的芯片JTAG调试不通。针对这些情况,结合UVM方法学的通用性和C语言的便利性,提出一种基于UVM和C语言联合验证JTAG调试协议的实现方法。UVM搭建验证JTAG协议的框架,C语言侧编写测试用例,用例通过调用UVM侧实现的芯片JTAG接口驱动时序的方法来到达实现C语言验证芯片JTAG协议的结果。
關(guān)鍵詞: UVM FPGA原型验证 C语言 JTAG协议
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)志碼:A DOI: 10.16157/j.issn.0258-7998.233886
中文引用格式: 陶青平,沈婧. 基于UVM和C語言驗(yàn)證JTAG調(diào)試協(xié)議的研究與實(shí)現(xiàn)[J]. 電子技術(shù)應(yīng)用,2023,49(10):112-117.
英文引用格式: Tao Qingping,Sheng Jing. Design and implementation for JTAG protocol test based on UVM and C[J]. Application of Electronic Technique,2023,49(10):112-117.
Design and implementation for JTAG protocol test based on UVM and C
Tao Qingping,Sheng Jing
(China Electronic Technology Group Corporation No.58 Research Institute,Wuxi 214035,China)
Abstract: In IC verification,due to the complexity and multiplicity of the JTAG protocol,the code written separately in TestBench for verification is long and difficult to maintain.Sometimes some companies and groups put this part of verification in FPGA prototype verification.In prototype verification,some modules need to be replaced,which cannot be guaranteed to be the same as the RTL level netlist.It may lead to the failure of chip tog debugging after streaming.In view of this situation,this paper proposes an implementation method for joint verification of JTAG debugging protocol based on UVM and C language.Combining the universality of UVM methodology and the convenience of C language,UCM builds a framework for verification of JTAG protocol,C language verification of chip JTAG protocol is realized by calling the chip JTAG interface implemented on the UVM side to drive the timing.
Key words : UVM;FPGA prtotype verification;C language;JTAG protocol

0 引言

隨著集成電路工藝的快速發(fā)展,芯片的研究設(shè)計(jì)周期亦在不斷縮短[1]。四線制的JTAG接口調(diào)試依然是大多數(shù)芯片設(shè)計(jì)采用的調(diào)試手段。JTAG協(xié)議功能的好壞很大程度上決定了流片回來后的芯片是否具有可調(diào)試狀態(tài)。不同芯片的JTAG協(xié)議不盡相同,基于TestBench或者原型驗(yàn)證的方式,在驗(yàn)證JTAG協(xié)議上存在著驗(yàn)證效率低下、可移植性差或者無法完全復(fù)制芯片的JTAG功能,這對(duì)JTAG協(xié)議驗(yàn)證調(diào)試提出了巨大的挑戰(zhàn)。眾所周知,通用驗(yàn)證方法學(xué)UVM在IC驗(yàn)證領(lǐng)域得到了全面廣泛的運(yùn)用[2-3],其所具有的封裝、繼承、面向?qū)ο蟮冗@些優(yōu)點(diǎn),并且包含大量功能全面的組件和基類,同時(shí)又擁有factory、config、TLM等機(jī)制[4-8],使得其具有良好的移植特性。而C語言作為一種悠久且優(yōu)秀的語言,編寫測(cè)試用例較為便利。

綜合二者的優(yōu)勢(shì),對(duì)比傳統(tǒng)的驗(yàn)證方式,方案中驗(yàn)證JTAG協(xié)議方式猶如上位機(jī)IDE通過JTAG仿真器調(diào)試芯片一樣便利。C語言編程可封裝大量函數(shù)供驗(yàn)證人員調(diào)用,利于僅熟悉C語言編程的開發(fā)和驗(yàn)證人員一同參與到驗(yàn)證JTAG調(diào)試協(xié)議中。更有甚者IDE設(shè)計(jì)開發(fā)亦可同步進(jìn)行開發(fā)。通過該種方法來驗(yàn)證JTAG功能,明顯優(yōu)于依賴FPGA原型驗(yàn)證或者設(shè)計(jì)驗(yàn)證人員寫TestBench來驗(yàn)證其功能的方法。



本文詳細(xì)內(nèi)容請(qǐng)下載:http://m.ihrv.cn/resource/share/2000005723




作者信息:

陶青平,沈婧

(中國電子科技集團(tuán)公司第五十八研究所,江蘇 無錫 214035)


微信圖片_20210517164139.jpg

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。