CN110688269B - 采用axi总线接口的rtl代码自动化验证装置及方法 - Google Patents

采用axi总线接口的rtl代码自动化验证装置及方法 Download PDF

Info

Publication number
CN110688269B
CN110688269B CN201910866273.7A CN201910866273A CN110688269B CN 110688269 B CN110688269 B CN 110688269B CN 201910866273 A CN201910866273 A CN 201910866273A CN 110688269 B CN110688269 B CN 110688269B
Authority
CN
China
Prior art keywords
simulation
rtl code
file
preset
port
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
Application number
CN201910866273.7A
Other languages
English (en)
Other versions
CN110688269A (zh
Inventor
贾仪彬
朱浪
曹雨
梁文豪
许端
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Jimu Intelligent Technology Co ltd
Original Assignee
Wuhan Jimu Intelligent Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Jimu Intelligent Technology Co ltd filed Critical Wuhan Jimu Intelligent Technology Co ltd
Priority to CN201910866273.7A priority Critical patent/CN110688269B/zh
Publication of CN110688269A publication Critical patent/CN110688269A/zh
Application granted granted Critical
Publication of CN110688269B publication Critical patent/CN110688269B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种采用AXI总线接口的RTL代码自动化验证装置及方法,属于FPGA仿真领域,该装置包括:用于使用脚本语言自动生成各包含AXI总线接口的RTL代码的Testbench仿真文件的仿真文件生成模块;用于调取预设TCL指令,以调用Vivado仿真环境对仿真文件开始仿真的仿真控制开始模块;用于在满足仿真结束条件时,发出仿真停止TCL指令,以使Vivado仿真环境停止仿真的仿真结束控制模块及用于调用脚本语言将保存在本地的仿真输出文件中的数据与预设数据对比,以验证各RTL代码正确性的仿真结果验证模块。本发明实现了自动生成仿真文件、仿真开始、仿真结束及数据比对等一键化操作,有效缩短仿真操作时间。

Description

采用AXI总线接口的RTL代码自动化验证装置及方法
技术领域
本发明属于FPGA仿真技术领域,更具体地,涉及一种采用AXI总线接口的RTL代码自动化验证装置及方法。
背景技术
AXI(Advanced eXtensible Interface)是一种ARM公司提出的总线协议和接口,它是一种面向高性能、高带宽及低延迟的片内总线,可以满足超高性能和复杂的片上系统设计需求。在FPGA开发中,AXI接口可以用来进行内部模块间或者与外部CPU等数字芯片间的大量数据传输。同时在较大规模FPGA开发中,RTL代码仿真作为必不可少的重要环节可以有效的定位代码中存在的问题和错误。在传统的仿真方法中,需要开发人员涉及较多的手动开发环节,例如设计编写仿真文件、添加仿真激励、添加仿真波形及观察对比仿真波形等,才能对代码的功能正确性进行验证。在FPGA设计中,当某个模块采用AXI接口时往往涉及大量数据传输,若采用传统的仿真方法,需要对各个模块手动编写不同的仿真文件,同时添加AXI总线接口的仿真波形,通过肉眼逐帧判断总线波形上各个数据是否正确。此过程较为繁琐,耗时较长,同时容易引入人为误判。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提出了一种采用AXI总线接口的RTL代码自动化验证装置及方法,由此解决现有验证方法中涉及较多人为手动操作而存在的过程繁琐、耗时较长及容易误判的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种采用AXI总线接口的RTL代码自动化验证装置,包括:仿真文件生成模块、仿真控制开始模块、仿真结束控制模块及仿真结果验证模块;
所述仿真文件生成模块,用于使用脚本语言自动生成各RTL代码的Testbench仿真文件,其中,各所述RTL代码为采用AIX总线接口的RTL代码;
所述仿真控制开始模块,用于调取预设的TCL指令,以调用Vivado仿真环境对所述仿真文件开始仿真操作;
所述仿真结束控制模块,用于在满足仿真结束条件时,发出仿真停止TCL指令,以使所述Vivado仿真环境停止仿真;
所述仿真结果验证模块,用于调用所述脚本语言将保存在本地的仿真输出文件中的数据与预设的标准数据对比,并根据对比结果验证各所述RTL代码的正确性。
优选地,所述仿真文件生成模块包括:
仿真文件模板预设模块,用于在Python脚本语言中预设通用仿真文件模板;
端口例化模块,用于针对各所述RTL代码,检测各所述RTL代码中各端口名称,并将各所述RTL代码的端口例化在与之对应的Testbench仿真文件中;
仿真文件生成子模块,用于将预设的所述通用仿真文件模板写入各所述RTL代码对应的Testbench仿真文件中,其中,各所述RTL代码在编写时输入数据接口和输出数据接口均使用标准AXI总线协议。
优选地,预设的所述通用的仿真文件模板包括:仿真时钟生成Task、产生仿真开始激励、AXI接口导入输入数据Function及AXI接口导入输入数据Task和AXI接口保存输出数据Function及AXI接口保存输出数据Task。
优选地,所述端口例化模块,具体用于使用所述Python脚本语言的正则表达式对各所述RTL代码中各端口名字之前的目标字符串进行检测,截取各所述目标字符串后面的端口名称和端口位宽信息,并将各所述目标字符串后面的端口名称和端口位宽信息例化在各所述RTL代码对应的所述Testbench仿真文件中。
优选地,所述装置还包括:仿真波形显示模块;
所述仿真波形显示模块,用于发出信号波形查看指令,以添加与所述信号波形查看指令对应的RTL代码的仿真波形,其中,所述信号波形查看指令包含在预设的信号波形TCL指令集中,所述预设的信号波形TCL指令集为在TCL脚本文件中预设的需要查看的信号波形TCL指令集。
按照本发明的另一方面,提供了一种采用AXI总线接口的RTL代码自动化验证方法,包括:
(1)使用脚本语言自动生成各RTL代码的Testbench仿真文件,其中,各所述RTL代码为采用AIX总线接口的RTL代码;
(2)调取预设的TCL指令,以调用Vivado仿真环境对所述仿真文件开始仿真操作;
(3)在满足仿真结束条件时,发出仿真停止TCL指令,以使所述Vivado仿真环境停止仿真;
(4)调用所述脚本语言将保存在本地的仿真输出文件中的数据与预设的标准数据对比,并根据对比结果验证各所述RTL代码的正确性。
优选地,步骤(1)包括:
(1.1)在Python脚本语言中预设通用仿真文件模板;
(1.2)针对各所述RTL代码,检测各所述RTL代码中各端口名称,并将各所述RTL代码的端口例化在与之对应的Testbench仿真文件中;
(1.3)将预设的所述通用仿真文件模板写入各所述RTL代码对应的Testbench仿真文件中,其中,各所述RTL代码在编写时输入数据接口和输出数据接口均使用标准AXI总线协议。
优选地,预设的所述通用的仿真文件模板包括:仿真时钟生成Task、产生仿真开始激励、AXI接口导入输入数据Function及AXI接口导入输入数据Task和AXI接口保存输出数据Function及AXI接口保存输出数据Task。
优选地,步骤(1.2)包括:
使用所述Python脚本语言的正则表达式对各所述RTL代码中各端口名字之前的目标字符串进行检测,截取各所述目标字符串后面的端口名称和端口位宽信息,并将各所述目标字符串后面的端口名称和端口位宽信息例化在各所述RTL代码对应的所述Testbench仿真文件中。
优选地,所述方法还包括:
发出信号波形查看指令,以添加与所述信号波形查看指令对应的RTL代码的仿真波形,其中,所述信号波形查看指令包含在预设的信号波形TCL指令集中,所述预设的信号波形TCL指令集为在TCL脚本文件中预设的需要查看的信号波形TCL指令集。
按照本发明的另一方面,提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现如上述任一所述的采用AXI总线接口的RTL代码自动化验证方法。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、通过Python等脚本语言自动生成SystemVerilog语言的Testbench仿真文件,解决在FPGA或ASIC开发验证阶段RTL代码仿真需单独手动编写仿真文件的繁琐过程;同时避免了手动编写仿真文件引入的错误对仿真结果及原RTL代码功能正确性带来的人为误判。
2、通过将仿真过程中AXI接口上各个时钟周期的配置信息或有效数据保存在本地,并通过Matlab或其他脚本将本地仿真数据与标准数据进行比对,报告仿真数据正确性或错误信息,避免了传统AXI接口仿真通过人为观察、对比仿真波形验证大量数据传输正确性的繁琐错误以及人为引入的误判。
3、通过脚本语言和上位机实现了自动生成仿真文件、添加仿真文件、仿真开始、添加仿真波形、仿真结束、数据比对等一键化操作,有效缩短了仿真操作时间。
附图说明
图1是本发明实施例提供的一种采用AXI总线接口的RTL代码自动化验证装置的结构示意图;
图2是本发明实施例提供的一种采用AXI总线接口的RTL代码自动化验证方法的流程示意图;
图3是本发明实施例提供的一种仿真文件生成方法的流程示意图;
图4是本发明实施例提供的一种仿真流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明主要利用了脚本语言和AXI总线接口协议统一规范的特点,实现了对代码的自动化仿真。针对FPGA包含AXI接口的RTL代码自动化仿真工具的运行,主要由基于Python语言的图形界面上位机控制,每个单独的子功能由对应的按键控制,如图1所示是本发明实施例提供的一种采用AXI总线接口的RTL代码自动化验证装置的结构示意图,在图1所示的结构中包括:仿真文件生成模块、仿真控制开始模块、仿真结束控制模块及仿真结果验证模块;
其中,仿真文件生成模块,用于使用脚本语言自动生成各RTL代码的Testbench仿真文件,其中,各RTL代码为采用AIX总线接口的RTL代码;
仿真控制开始模块,用于调取预设的TCL指令,以调用Vivado仿真环境对仿真文件开始仿真操作;
仿真结束控制模块,用于在满足仿真结束条件时,发出仿真停止TCL指令,以使Vivado仿真环境停止仿真;
仿真结果验证模块,用于调用脚本语言将保存在本地的仿真输出文件中的数据与预设的标准数据对比,并根据对比结果验证各RTL代码的正确性。
本发明实施例中的装置可以为上位机等设备。
作为一种可选的实施方式,上述仿真文件生成模块包括:
仿真文件模板预设模块,用于在Python脚本语言中预设通用仿真文件模板;
其中,预设的通用的仿真文件模板包括:仿真时钟生成Task、产生仿真开始激励、AXI接口导入输入数据Function及AXI接口导入输入数据Task和AXI接口保存输出数据Function及AXI接口保存输出数据Task。
端口例化模块,用于针对各RTL代码,检测各RTL代码中各端口名称,并将各RTL代码的端口例化在与之对应的Testbench仿真文件中;
仿真文件生成子模块,用于将预设的通用仿真文件模板写入各RTL代码对应的Testbench仿真文件中,其中,各RTL代码在编写时输入数据接口和输出数据接口均使用标准AXI总线协议。
作为一种可选的实施方式,上述端口例化模块,具体用于使用Python脚本语言的正则表达式对各RTL代码中各端口名字之前的目标字符串进行检测,截取各目标字符串后面的端口名称和端口位宽信息,并将各目标字符串后面的端口名称和端口位宽信息例化在各RTL代码对应的Testbench仿真文件中。
其中,在RTL代码中,每个端口在定义时,每个端口名字之前必定存在“input”、“output”或者“inout”三种字符串之一。
作为一种可选的实施方式,该装置还包括:仿真波形显示模块;
仿真波形显示模块,用于发出信号波形查看指令,以添加与信号波形查看指令对应的RTL代码的仿真波形,其中,信号波形查看指令包含在预设的信号波形TCL指令集中,预设的信号波形TCL指令集为在TCL脚本文件中预设的需要查看的信号波形TCL指令集。
如图2所示是本发明实施例提供的一种采用AXI总线接口的RTL代码自动化验证方法的流程示意图,在图2所示的方法中,包括以下步骤:
S1:使用脚本语言自动生成各RTL代码的Testbench仿真文件,其中,各RTL代码为采用AIX总线接口的RTL代码;
其中,在对任何的代码进行仿真之前,需要先有对应的Testbench仿真文件。在传统的仿真方法中,需要对仿真文件进行手动编写。在本发明实施例中,使用Python编程语言自动生成System Verilog语言类型的Testbench仿真文件。为实现该功能,需要原RTL代码编写时输入和输出数据接口均使用标准AXI总线协议。如图3所示,在Python语言中预设好通用的仿真文件模板,包含仿真时钟生成Task、产生仿真开始激励、AXI接口导入输入数据Function及Task、AXI接口保存输出数据Function及Task。针对不同RTL代码,还需检测原RTL模块代码各个端口名称并将模块端口例化在仿真文件中。在RTL代码中,每个端口在定义时,每个端口名字之前必定存在“input”、“output”或者“inout”三种字符串之一,使用Python的“正则表达式”对这三种字符串进行检测,截取这三种字符串后面的端口名称和端口位宽等信息,将其例化在仿真文件中。
S2:调取预设的TCL指令,以调用Vivado仿真环境对仿真文件开始仿真操作;
在本发明的仿真工具中,使用Vivado EDA软件工具的仿真环境。Vivado软件支持TCL脚本语言指令,通过上位机发出提前预设的TCL指令,无需打开Vivado软件即可调用其仿真环境实现仿真功能。仿真开始后的整个仿真流程如图4所示:
首先上位机发出TCL指令,指定需要进行仿真的仿真文件;然后上位机发出仿真开始TCL指令;加载时钟和复位信号、触发仿真激励;从本地加载仿真所需AXI总线输入数据;将仿真得到的各阶段AXI总线输出保存在本地。
S3:在满足仿真结束条件时,发出仿真停止TCL指令,以使Vivado仿真环境停止仿真;
其中,仿真结束条件可以根据实际需要确定,也可以由仿真人员控制。
S4:调用脚本语言将保存在本地的仿真输出文件中的数据与预设的标准数据对比,并根据对比结果验证各RTL代码的正确性。
在本发明实施例子,在仿真过程中,Testbench仿真文件中的Task和Function会将RTL代码AXI总线各个环节的输出数据以Log的形式保存在本地计算机中,通过上位机调用Python脚本语言将仿真输出文件中的数据与提前预备的标准数据作对比,并打印比对结果。若仿真输出数据与标准数据可以一一匹配,说明仿真通过,原RTL代码功能和AXI总线数据传输正确,否则说明代码功能实现有误或传输错误。
作为一种可选的实施方式,上述方法还包括:发出信号波形查看指令,以添加与信号波形查看指令对应的RTL代码的仿真波形,其中,信号波形查看指令包含在预设的信号波形TCL指令集中,预设的信号波形TCL指令集为在TCL脚本文件中预设的需要查看的信号波形TCL指令集。
通过本发明的仿真工具无需查看仿真波形即可得到原RTL代码仿真的结果,确认原代码功能的正确性。但当仿真后得知RTL代码功能实现有误时,开发人员往往需要确认代码中的细节,查找问题根源,此时可能需要查看仿真波形。在传统的仿真方法中,需要在Vivado图形界面中手动添加需要查看的仿真波形,由于Vivado支持TCL脚本指令,可在TCL脚本文件中提前预设需要查看的信号波形TCL指令集,由上位机将指令发出,实现波形信号的添加。在实际情况中,可以预设多套指令集,实现不同波形信号的添加、查看和删除的一键操作,避免之前复杂、重复的手动繁琐操作。
本发明利用了AXI总线接口协议规范统一的特点和Python编程语言正则表达式功能,实现了RTL代码对应仿真文件自动生成。通过在原代码AXI总线接口上加载输入数据,保存AXI总线接口上的输出数据,将源代码模块视作黑盒子,只需将AXI总线上的输出数据与标准数据自动比对即可得到仿真结果,判断原代码功能及数据传输是否正确,取代了传统仿真中需要查看各层信号仿真波形才能得知原RTL代码功能正确性的操作;将传统仿真方法中多个需要人工手动的繁琐操作环节改为一键化自动操作,有效节省时间,提升了效率,同时避免了人为失误引起的错误和误判;本仿真工具利用的多个平台,实现了最大程度上的自动化仿真,同时多个平台之间由上位机界面统一控制,避免了开发人员在不同平台之间的来回切换
在本发明的另一实施例中,还提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现如上述任一所述的采用AXI总线接口的RTL代码自动化验证方法。
需要指出,根据实施的需要,可将本申请中描述的各个步骤/部件拆分为更多步骤/部件,也可将两个或多个步骤/部件或者步骤/部件的部分操作组合成新的步骤/部件,以实现本发明的目的。
上述根据本发明的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的处理方法。此外,当通用计算机访问用于实现在此示出的处理的代码时,代码的执行将通用计算机转换为用于执行在此示出的处理的专用计算机。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种采用AXI总线接口的RTL代码自动化验证装置,其特征在于,包括:仿真文件生成模块、仿真控制开始模块、仿真结束控制模块及仿真结果验证模块;
所述仿真文件生成模块,用于使用脚本语言自动生成各RTL代码的Testbench仿真文件,其中,各所述RTL代码为采用AXI总线接口的RTL代码;
所述仿真控制开始模块,用于调取预设的TCL指令,以调用Vivado仿真环境对所述仿真文件开始仿真操作;
所述仿真结束控制模块,用于在满足仿真结束条件时,发出仿真停止TCL指令,以使所述Vivado仿真环境停止仿真;
所述仿真结果验证模块,用于调用所述脚本语言将保存在本地的仿真输出文件中的数据与预设的标准数据对比,并根据对比结果验证各所述RTL代码的正确性;
所述仿真文件生成模块包括:
仿真文件模板预设模块,用于在Python脚本语言中预设通用仿真文件模板;
端口例化模块,用于针对各所述RTL代码,检测各所述RTL代码中各端口名称,并将各所述RTL代码的端口例化在与之对应的Testbench仿真文件中;
仿真文件生成子模块,用于将预设的所述通用仿真文件模板写入各所述RTL代码对应的Testbench仿真文件中,其中,各所述RTL代码在编写时输入数据接口和输出数据接口均使用标准AXI总线协议;
所述端口例化模块,具体用于使用所述Python脚本语言的正则表达式对各所述RTL代码中各端口名字之前的目标字符串进行检测,截取各所述目标字符串后面的端口名称和端口位宽信息,并将各所述目标字符串后面的端口名称和端口位宽信息例化在各所述RTL代码对应的所述Testbench仿真文件中。
2.根据权利要求1所述的装置,其特征在于,预设的所述通用的仿真文件模板包括:仿真时钟生成Task、产生仿真开始激励、AXI接口导入输入数据Function及AXI接口导入输入数据Task和AXI接口保存输出数据Function及AXI接口保存输出数据Task。
3.根据权利要求2所述的装置,其特征在于,所述装置还包括:仿真波形显示模块;
所述仿真波形显示模块,用于发出信号波形查看指令,以添加与所述信号波形查看指令对应的RTL代码的仿真波形,其中,所述信号波形查看指令包含在预设的信号波形TCL指令集中,所述预设的信号波形TCL指令集为在TCL脚本文件中预设的需要查看的信号波形TCL指令集。
4.一种采用AXI总线接口的RTL代码自动化验证方法,其特征在于,包括:
(1)使用脚本语言自动生成各RTL代码的Testbench仿真文件,其中,各所述RTL代码为采用AXI总线接口的RTL代码;
(2)调取预设的TCL指令,以调用Vivado仿真环境对所述仿真文件开始仿真操作;
(3)在满足仿真结束条件时,发出仿真停止TCL指令,以使所述Vivado仿真环境停止仿真;
(4)调用所述脚本语言将保存在本地的仿真输出文件中的数据与预设的标准数据对比,并根据对比结果验证各所述RTL代码的正确性;
步骤(1)包括:
(1.1)在Python脚本语言中预设通用仿真文件模板;
(1.2)针对各所述RTL代码,检测各所述RTL代码中各端口名称,并将各所述RTL代码的端口例化在与之对应的Testbench仿真文件中;
(1.3)将预设的所述通用仿真文件模板写入各所述RTL代码对应的Testbench仿真文件中,其中,各所述RTL代码在编写时输入数据接口和输出数据接口均使用标准AXI总线协议;
步骤(1.2)包括:
使用所述Python脚本语言的正则表达式对各所述RTL代码中各端口名字之前的目标字符串进行检测,截取各所述目标字符串后面的端口名称和端口位宽信息,并将各所述目标字符串后面的端口名称和端口位宽信息例化在各所述RTL代码对应的所述Testbench仿真文件中。
5.根据权利要求4所述的方法,其特征在于,预设的所述通用的仿真文件模板包括:仿真时钟生成Task、产生仿真开始激励、AXI接口导入输入数据Function及AXI接口导入输入数据Task和AXI接口保存输出数据Function及AXI接口保存输出数据Task。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
发出信号波形查看指令,以添加与所述信号波形查看指令对应的RTL代码的仿真波形,其中,所述信号波形查看指令包含在预设的信号波形TCL指令集中,所述预设的信号波形TCL指令集为在TCL脚本文件中预设的需要查看的信号波形TCL指令集。
CN201910866273.7A 2019-09-12 2019-09-12 采用axi总线接口的rtl代码自动化验证装置及方法 Active CN110688269B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910866273.7A CN110688269B (zh) 2019-09-12 2019-09-12 采用axi总线接口的rtl代码自动化验证装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910866273.7A CN110688269B (zh) 2019-09-12 2019-09-12 采用axi总线接口的rtl代码自动化验证装置及方法

Publications (2)

Publication Number Publication Date
CN110688269A CN110688269A (zh) 2020-01-14
CN110688269B true CN110688269B (zh) 2023-03-14

Family

ID=69109149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910866273.7A Active CN110688269B (zh) 2019-09-12 2019-09-12 采用axi总线接口的rtl代码自动化验证装置及方法

Country Status (1)

Country Link
CN (1) CN110688269B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023065309A1 (zh) * 2021-10-22 2023-04-27 华为技术有限公司 一种电路设计方法及装置
CN114510902B (zh) * 2022-04-20 2022-07-26 北京芯愿景软件技术股份有限公司 仿真结果的验证方法、装置、设备及计算机存储介质
CN114519279A (zh) * 2022-04-20 2022-05-20 北京芯愿景软件技术股份有限公司 仿真结果的验证方法、装置、设备及计算机存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577274A (zh) * 2003-07-01 2005-02-09 华为技术有限公司 自动化仿真方法及系统
CN1744092A (zh) * 2004-09-04 2006-03-08 华为技术有限公司 一种自动调度逻辑仿真与代码覆盖率分析的方法与系统
US7100133B1 (en) * 2000-06-23 2006-08-29 Koninklijke Philips Electronics N.V Computer system and method to dynamically generate system on a chip description files and verification information
CN104679963A (zh) * 2015-03-20 2015-06-03 杭州士兰微电子股份有限公司 一种基于tcl的仿真验证装置和方法
CN105589993A (zh) * 2015-12-18 2016-05-18 中国科学院微电子研究所 微处理器功能验证设备及微处理器功能验证方法
CN106682370A (zh) * 2017-02-28 2017-05-17 郑州云海信息技术有限公司 一种仿真验证系统
CN109739766A (zh) * 2018-12-29 2019-05-10 湖北航天技术研究院总体设计所 一种快速搭建fpga数字仿真模型的系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10824783B2 (en) * 2015-03-31 2020-11-03 Marvell Asia Pte, Ltd. Approach for logic signal grouping and RTL generation using XML

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7100133B1 (en) * 2000-06-23 2006-08-29 Koninklijke Philips Electronics N.V Computer system and method to dynamically generate system on a chip description files and verification information
CN1577274A (zh) * 2003-07-01 2005-02-09 华为技术有限公司 自动化仿真方法及系统
CN1744092A (zh) * 2004-09-04 2006-03-08 华为技术有限公司 一种自动调度逻辑仿真与代码覆盖率分析的方法与系统
CN104679963A (zh) * 2015-03-20 2015-06-03 杭州士兰微电子股份有限公司 一种基于tcl的仿真验证装置和方法
CN105589993A (zh) * 2015-12-18 2016-05-18 中国科学院微电子研究所 微处理器功能验证设备及微处理器功能验证方法
CN106682370A (zh) * 2017-02-28 2017-05-17 郑州云海信息技术有限公司 一种仿真验证系统
CN109739766A (zh) * 2018-12-29 2019-05-10 湖北航天技术研究院总体设计所 一种快速搭建fpga数字仿真模型的系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于FPGA的1553B总线接口设计与验证;泮朋军等;《现代电子技术》;20150201;第1-5页 *
基于分离传输的网络处理器片上总线设计与实现;刘培彦;《中国优秀硕士学位论文全文数据库(电子期刊)》;20110831;第1-21页 *

Also Published As

Publication number Publication date
CN110688269A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN113312879B (zh) 芯片电路功能验证系统、方法、设备及存储介质
CN110688269B (zh) 采用axi总线接口的rtl代码自动化验证装置及方法
JP7270764B2 (ja) 人工知能チップ検証
CN111950212A (zh) 高效的多模式验证平台及方法
WO2019134113A1 (zh) 自动化测试方法及系统
US9690888B2 (en) Method and apparatus for system design verification
CN111428431A (zh) 一种支持eda软件的自动化测试并记录的方法及系统
US8423934B1 (en) Model validation cockpit
CN111382055B (zh) 一种基于统一描述语言的自动化单元测试方法及装置
CN115562982A (zh) 参考模型调试方法、装置、电子设备和存储介质
JP2010044622A (ja) 情報処理装置試験プログラム及び方法
CN112286750A (zh) 一种gpio验证方法、装置、电子设备和介质
CN116992804B (zh) 芯片验证的方法及计算设备
CN111124790B (zh) 一种可重用仿真接口模型的生成系统
CN110955605A (zh) 一种cpu验证单步动态执行的方法
CN116069635A (zh) Soc系统的测试方法、装置、计算机设备及存储介质
CN114239459B (zh) Fpga原型设计文件的处理方法、装置、设备及介质
CN115758963A (zh) 芯片eda仿真中打印信息的处理装置、方法及系统
CN111124897B (zh) 一种可重用仿真接口模型的生成方法
CN113792522A (zh) 仿真验证方法、装置及计算设备
CN115034165A (zh) 一种芯片仿真验证方法、系统、设备以及存储介质
CN114661615A (zh) 一种fpga软件测试方法和设备
CN112765021A (zh) 一种引导程序的调试检验方法、装置、设备及存储介质
CN111338761A (zh) 一种51单片机虚拟中断控制器及实现方法
CN110991129A (zh) 一种基于fpga的密码协处理器全自动仿真验证方法

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