仿真测试平台文件(TestBench)(二)

2023-10-29 17:40
文章标签 平台 仿真 测试 testbench

本文主要是介绍仿真测试平台文件(TestBench)(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2. 测试平台文件的结构
       使用VHDL语言编写测试平台文件时,所有的基本VHDL语法都是适用的,但是测试平台文件与一般的项目设计存在一些区别。一个测试平台文件必须包括与所测试的元件(UUT)相对应的原件声明,以及输入到UUT的激励描述。一个测试平台文件的基本结构如例1:

【例1】
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY test1 IS              --测试平台文件的空实体(不需要定义端口)
END test1;
ARCHITECTURE behavior OF test1 IS COMPONENT dff2                   --被测试元件声明PORT(…);END COMPONENT;Local-signal-declarations           --局部信号声明
BEGIN                              
-- 被测试元件的例化或映射process                          --产生时钟信号begin……end process;
process                          --产生激励源
begin……
end process;

       从上面的基本结构中,可以看出其中包含几个最基本的语句,即实体的定义、所测试元件的例化、产生时钟信号和产生激励源等语句。测试平台中的实体定义不需要定义端口,也就是说测试平台没有输入输出端口,它只是和被测试元件(UUT)通过内部信号相连接。

3.测试平台文件的编写

       前面提到了测试评台的文件,以及怎么编写激励信号,接下来我们将通过对组合和时序的实例程序说明测试文件的编写。下面的实例程序将即为一个测试平台程序以及它所测试的元件。

       1)四选一选择器的仿真(组合逻辑电路)

        ① 测试平台文件。在例2中激励信号波形在一个进程中产生。实体为一个空实体,没有输入输出信号端口。

【例2】四选一数据选择器的测试平台文件
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY test IS                     --测试平台实体
END test;
ARCHITECTURE behavior OF test IS COMPONENT mux             --被测试元件的声明PORT(input : IN  std_logic_vector(3 downto 0);a : IN  std_logic;b : IN  std_logic;y : OUT  std_logic);END COMPONENT;  --Inputs输入信号signal input : std_logic_vector(3 downto 0) := (others => '0');signal a : std_logic := '0';signal b : std_logic := '0';--Outputs输出信号signal y : std_logic;
BEGIN--被测试元件例化uut: mux PORT MAP (input => input,a => a,b => b,y => y);input<="0101";            --这里我们固定数据输入,方面选择端选择-- Stimulus processstim_proc: process          --激励信号begin			a <= '0';b <= '0';wait for 10 ns;a <= '0';b <= '1';wait for 10 ns;a <= '1';b <= '0';wait for 10 ns;a <= '1';b <= '1';wait for 10 ns;end process;
END;

         ②测试文件的VHDL程序,例3是一个简单的四选一数据选择程序。

【例3】四选一数据选择器的VHDL程序
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY mux4 IS
PORT( d  : IN STD_Logic_Vector(3 Downto 0);a,b : IN Std_Logic;y : OUT Std_Logic);
END mux4 ;
ARCHITECTURE mux4_arch OF mux4  IS
SIGNAL sel:Std_Logic_Vector(1 Downto 0);
BEGINsel<=b & a;PROCESS (d,sel)BEGINIF (sel="00") THENy <= d(0);ELSIF (sel="01") THENy <= d(1);ELSIF (sel="10") THENy <= d(2);    ELSEy <= d(3);END IF;   END PROCESS;
END mux4_arch;

       在上面所定义的测试平台文件的基础上,当使用ISIM对上面所定义的元件进行仿真,所得到的仿真波形如图1所示。

图1四选一选择器仿真波形图 

 

这篇关于仿真测试平台文件(TestBench)(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/302270

相关文章

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

Nginx设置连接超时并进行测试的方法步骤

《Nginx设置连接超时并进行测试的方法步骤》在高并发场景下,如果客户端与服务器的连接长时间未响应,会占用大量的系统资源,影响其他正常请求的处理效率,为了解决这个问题,可以通过设置Nginx的连接... 目录设置连接超时目的操作步骤测试连接超时测试方法:总结:设置连接超时目的设置客户端与服务器之间的连接

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟&nbsp;开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚&nbsp;第一站:海量资源,应有尽有 走进“智听

如何解决线上平台抽佣高 线下门店客流少的痛点!

目前,许多传统零售店铺正遭遇客源下降的难题。尽管广告推广能带来一定的客流,但其费用昂贵。鉴于此,众多零售商纷纷选择加入像美团、饿了么和抖音这样的大型在线平台,但这些平台的高佣金率导致了利润的大幅缩水。在这样的市场环境下,商家之间的合作网络逐渐成为一种有效的解决方案,通过资源和客户基础的共享,实现共同的利益增长。 以最近在上海兴起的一个跨行业合作平台为例,该平台融合了环保消费积分系统,在短

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影