MATLAB,Simulink与Modelsim联合仿真步骤及实例[1]
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1:什么是link for modelsim
2:link for modelsim的安装与设置
3:使用link for modelsim仿真的实例
什么是link for modelsim
Link for modelsim是一个联合仿真的接口,它将MathWorks工具整合到EDA工作环境中,使其应用于FPGA和ASIC的开发。这个接口在HDL仿真器ModelSim SE/PE于MathWorks的产品Matlab和SimuLink间提供了一个双向连接,以指导硬件的设计验证和联合仿真。这种整合可以分别充分发挥Matlab/SimuLink和ModelSim各自的优势。1.联合仿真环境
Link for ModelSim是一个客户/服务器的车是平台和联合仿真应用,ModelSim在这个仿真环境中所起的作用取决于ModelSim与Matlab还是SimuLink连接,本说明只讲ModelSim与Matlab的连接。
a.ModelSim与Matlab连接
当与Matlab相连接时,ModelSim作为客户端,如下图所示:
在这个模式中,Matlab服务器等到ModelSim客户端发出的服务请求,当接收到一个请求时,Matlab建立一个通信连接,而且调用一个指定的Matlab函数,这个函数封装了用于计算数据以验证或者使当前在ModelSim中仿真的HDL模型的可视化。
下图显示了在一个测试平台环境中Matlab函数如何与ModelSim进行通信
Matlab服务器可以用于多个HDL实体之间的联合仿真,但是你必须为多个HDL实体指定一个通信方式使他们可以相互通信,下图显示了两个ModelSim客户端如何连接到服务器的TCP/IP的4449端口:
回到目录
2.通信模式
在ModelSim和Matlab之间的通信模式有共享内存和网络两种,当你的ModelSim和MatLab运行与同一个系统的时候,可以指定为共享内存方式和网络方式,但共享内存方式更加合适,其也是默认的方式。
网络方式的应用范围更加广泛,它可以应用于单系统和网络环境,对于有增长潜力的系统它更加适合。
使用link for modelsim的过程
1.安装和设置
a.确定应用环境要求
b.对配置作出决定
c.如为网络环境,则识别出服务器
d.选择TCP/IP端口
e.检查产品要求
f.安装相关应用软件
g.安装Link for modelsim
h.设置modelsim
Link for modelsim的安装与设置
当所有要求的软件都已经安装好了以后,你就可以安装modelsim,使它可以与Matlab 或simulink一起工作,你可以立即完成或者稍后在完成这份工作。为配置ModelSim使它可以与Link for ModelSim一起工作,作为安装的以部分,可以使用Matlab函数setupmodelsim.setupmodelsim函数为Modelsim仿真器注册一个新的Matlab和Simulink相关的Tcl令,通过在Modelsim安装目录中创建文件...\tcl\ModelSimTclFunctionsForMATLAB.tcl。注意,setupmodelsim并不选择所配置的Modelsim为使用vsim命令时的默认仿真器。
你可以使用setupmodelsim命令用交互式或者命令行的方式,交互式的方式显示小心和提示。命令行的方式在教本方式下可以使用,以下为如何使用交互式方式:
1.在matlab命令提示符或键入:
Setupmodelsim
又或者你可以指定属性名称和属性值‘action’,‘install’
安装教本提示你确认你相为Link for modelsim安装的Modelsim的版本
Identify the ModelSim installation to be configured for MATLAB and Simulink
Do you want setupmodelsim to locate installed ModelSim executables [y]/n?n
2.指定一个已经安装的modelsim版本,如果你想明确指定已经安装的modelsim的路径的话,可以键入n,命令提示符提示你输入一个明确的路径
Please enter the path to your ModelSim executable
file(modelsim.exe or vsim.exe):
回到目录
如果你希望setupmodelsim定位和显示所有已经安装的modelsim的版本,键入y或者直接按enter键,函数将搜索已经安装的modelsim版本而且显示如下:
Select a ModelSim installation:
[1]d:\Modeltech_6.1b\win32ModelSim SE6.1b
[0]None
Selected Modelsim installation:
3.根据第2步得到得信息,键入完整得Modelsim或者vsim可执行文件得路径,或者从列表中选择一个已经搜索到得版本,键入1。函数将修改已经安装的文件,并显示如下:Previous MATLAB startup file found in this installation of ModelSim:
d:\Modeltech_6.1b\win32\..\tcl\ModelSimTclFunctionsForMATLAB.tcl
Do you want to replace this file[y]/n?y
是否替代已经安装得文件?y是,n否。
Modelsim successfully configured for MATLAB and Simulink
仿真实例
一:加法器的仿真
本实例假设已经安装了link for modelsim和相关的软件。
1.加法器的verilog代码入下:
module add8(sum,cout,a,b,cin);
output[7:0]sum;
output cout;
input[7:0]a,b;
input cin;
assign{cout,sum}=a+b+cin;
endmodule
2.在使用link for modelsim仿真时,你必须建立一个满足仿真要求的Matlab函数,在此例中,函数的代码如下:
function[iport,tnext]=add8(oport,tnow,portinfo)
persistent odata;
persistent inc;
tnext=[];
iport=struct();
if isempty(odata)
inc=0;
end
tnext=tnow+1e8;%下次modelsim调用matlab函数的时间,距开始的时间,以秒为单位
a=int8(10+40*rand(1));%tnow为这次mdoelsim调用matlab函数的时间
b=int8(10+40*rand(1));
cin=randint(1);
iport.a=dec2bin(a,8);
回到目录