应用TEXTl0和MATLAB进行复杂数字系统仿真
发布时间:2008/5/26 0:00:00 访问次数:783
    
    
    作者:国防科技大学atr重点实验室 张望,常青,喻小虎
    
    摘要:在基于fpga的复杂数字系统的仿真测试中,设计者常常面临各种挑战。以数字图像处理系统的仿真为例。如果采用完备性仿真测试方法,那么测试矢量的数量将是非常巨大的;如果采用常规方法.不仅效率不高.而且可能无法达到仿真测试的目的。针对这个难题,提出一种进行仿真测试的新方法.该方法应用textio和matlab来辅助仿真测试过程,使问题得到较好的解决。以电视图像实时多目标捕获单元的仿真测试为例。全面、细致地讨论这种新方法。
    
    关 键 词:textio;matlab;testbench;仿真;测试激励中图分类号:tn707 文献标识码:a 文章编号:。1006—6977(2006)01—0004—04
    
    1 引言
    
    在对复杂数字系统进行仿真测试时,设计者常常面对测试向量数量庞大而难以实现的问题。以数字图像处理系统的仿真测试为例,如果采用完备性测试方法.那么所需测试向量的数量将非常巨大,甚至无法实现:而采用测试向量波形图或者用hdl语言描述等常用方法.不仅仿真测试工作的效率低下,而且工作量巨大。在数字图像处理系统中,一帧320x240的数字图像所产生的测试向量数量达到320x240x2=153 600个。无论采用完备性测试方法还是向量波形图或者.hdl语言描述的方法,由于测试向量的数量极其巨大,采用这些方法都难以进行仿真测试。
    
    针对这个难题,笔者提出一种进行仿真测试的新方法.该方法应用texti0和:matlab来辅助仿真测试过程.使测试向量数量巨大、难以处理的难题得到很好的解决。以电视视频系统中实时多目标捕获单元的仿真测试为例.对这种新方法进行全面的讨论。
    
    2 基于textio的vlii)l仿真
    
    2.1 textio的功能
    
    texxtl0是vhdl标准库std中的程序包(package),它提供了vhdl与磁盘文件直接访问的桥梁。textio定义了3种类型:line类型、text类型及side类型。texti0在程序包中定义了一些访问文件的过程(procedure)。
    
    textio提供的基本过程有:
    
    (1)procedure readlne(文件变量,行变量),用于从指定文件读取一行数据到行变量中;
    (2)procedure writelne(文件变量,行变量),用于向指定文件写入行变量所包含的数据;
    (3)procedure read(行变量,数据类型),用于从行变量中读取相应数据类型的数据.根据参数的数据类型及参数个数的不同.有多种重载方式,tex-tio提供了bit、bit、bit_vector、boolean、character、in-teger、real、string、time数据类型的重载;
    (4)mcedure write(行变量,数据变量,写入方式,位宽),该过程将数据写入行变量。其中,写入方式表示写在行变量的左边还是右边,其值只能为left或right,位宽表示写入数据时占的位宽。例如write(oufljne,outdata,left,2/表示将变量outdata写入line 变量outline的左边,占2个字节。
    
    2.2 仿真测试方案
    
    使用texto和mntlab辅助testbench进行复杂数字系统仿真的方案框图如图1所示。
    
    
    
    2.3 仿真测试步骤
    
    2.3.1 使用matlab生成测试激励文件
    
    matlab是矩阵实验室(matrix laboratory)的缩写,是1984年mathworks公司推出的软件。经过20多年的发展,matlab已成为通用科技计算、图视交互系统和程序语言,广泛应用于研究和解决各种具体工程问题。
    
    在复杂数字系统仿真中,用户可以利用mat-lab的强大处理功能生成测试激励文件。测试激励文件的数据格式由设计者自行定义。测试激励文件应包含输入信号的测试激励数据.也可以包含输出信号的期望输出数据.这些内容常常以.ascii码
    
    
    作者:国防科技大学atr重点实验室 张望,常青,喻小虎
    
    摘要:在基于fpga的复杂数字系统的仿真测试中,设计者常常面临各种挑战。以数字图像处理系统的仿真为例。如果采用完备性仿真测试方法,那么测试矢量的数量将是非常巨大的;如果采用常规方法.不仅效率不高.而且可能无法达到仿真测试的目的。针对这个难题,提出一种进行仿真测试的新方法.该方法应用textio和matlab来辅助仿真测试过程,使问题得到较好的解决。以电视图像实时多目标捕获单元的仿真测试为例。全面、细致地讨论这种新方法。
    
    关 键 词:textio;matlab;testbench;仿真;测试激励中图分类号:tn707 文献标识码:a 文章编号:。1006—6977(2006)01—0004—04
    
    1 引言
    
    在对复杂数字系统进行仿真测试时,设计者常常面对测试向量数量庞大而难以实现的问题。以数字图像处理系统的仿真测试为例,如果采用完备性测试方法.那么所需测试向量的数量将非常巨大,甚至无法实现:而采用测试向量波形图或者用hdl语言描述等常用方法.不仅仿真测试工作的效率低下,而且工作量巨大。在数字图像处理系统中,一帧320x240的数字图像所产生的测试向量数量达到320x240x2=153 600个。无论采用完备性测试方法还是向量波形图或者.hdl语言描述的方法,由于测试向量的数量极其巨大,采用这些方法都难以进行仿真测试。
    
    针对这个难题,笔者提出一种进行仿真测试的新方法.该方法应用texti0和:matlab来辅助仿真测试过程.使测试向量数量巨大、难以处理的难题得到很好的解决。以电视视频系统中实时多目标捕获单元的仿真测试为例.对这种新方法进行全面的讨论。
    
    2 基于textio的vlii)l仿真
    
    2.1 textio的功能
    
    texxtl0是vhdl标准库std中的程序包(package),它提供了vhdl与磁盘文件直接访问的桥梁。textio定义了3种类型:line类型、text类型及side类型。texti0在程序包中定义了一些访问文件的过程(procedure)。
    
    textio提供的基本过程有:
    
    (1)procedure readlne(文件变量,行变量),用于从指定文件读取一行数据到行变量中;
    (2)procedure writelne(文件变量,行变量),用于向指定文件写入行变量所包含的数据;
    (3)procedure read(行变量,数据类型),用于从行变量中读取相应数据类型的数据.根据参数的数据类型及参数个数的不同.有多种重载方式,tex-tio提供了bit、bit、bit_vector、boolean、character、in-teger、real、string、time数据类型的重载;
    (4)mcedure write(行变量,数据变量,写入方式,位宽),该过程将数据写入行变量。其中,写入方式表示写在行变量的左边还是右边,其值只能为left或right,位宽表示写入数据时占的位宽。例如write(oufljne,outdata,left,2/表示将变量outdata写入line 变量outline的左边,占2个字节。
    
    2.2 仿真测试方案
    
    使用texto和mntlab辅助testbench进行复杂数字系统仿真的方案框图如图1所示。
    
    
    
    2.3 仿真测试步骤
    
    2.3.1 使用matlab生成测试激励文件
    
    matlab是矩阵实验室(matrix laboratory)的缩写,是1984年mathworks公司推出的软件。经过20多年的发展,matlab已成为通用科技计算、图视交互系统和程序语言,广泛应用于研究和解决各种具体工程问题。
    
    在复杂数字系统仿真中,用户可以利用mat-lab的强大处理功能生成测试激励文件。测试激励文件的数据格式由设计者自行定义。测试激励文件应包含输入信号的测试激励数据.也可以包含输出信号的期望输出数据.这些内容常常以.ascii码
热门点击
- OrCAD/PSpice9偏压点和直流扫描分
- 有限带宽信号的采样和混叠分析
- LTC6910系列数字控制可编程增益放大器原
- 可编程多路A/D转换芯片THS1206的原理
- 四通道四象限模拟乘法器MLT04
- 使用Verilog实现基于FPGA的SDRA
- 基于FCHIP2指纹芯片的应用方案
- PCB线路板抄板方法及步骤
- 基于Nios的掌纹鉴别系统设计与实现
- 模拟/数模混合电路加速仿真技术
推荐技术资料
- 泰克新发布的DSA830
- 泰克新发布的DSA8300在一台仪器中同时实现时域和频域分析,DS... [详细]