主要内容

hdldaemon

控制MATLAB支持与HDL模拟器交互的金宝app服务器

描述

hdldaemon启动HDL Link MATLAB®服务器使用共享内存进行进程间通信。只有一个hdldaemon每个MATLAB会话可以在任何给定的时间运行。

例子

hdldaemon (名称,值使用一个或多个指定的附加选项名称,值对参数。

  • 如果不指定内存类型,服务器将使用共享内存启动。

  • 如果指定套接字名称,值参数时,服务器开始使用套接字内存。

请注意

如果服务器已经在运行,则发出hdldaemon使用这些参数关闭当前服务器,然后使用共享内存启动一个新的服务器会话(除非指定了套接字)。

例子

hdldaemon (选项接受单个可选输入。在单个调用中只能指定一个选项。您必须在调用之前建立服务器连接hdldaemon用其中一个选项。

例子

年代= hdldaemon (___以结构形式返回服务器状态连接年代,使用前面语法中的任何输入参数。

例子

全部折叠

启动MATLAB服务器使用共享内存通信,并使用整数表示时间。

hdldaemon (“时间”“int64”
HDLDaemon共享内存服务器以0连接运行

启动MATLAB服务器并在端口4449上指定套接字通信。

hdldaemon (“套接字”, 4449)
HDLDaemon套接字服务器在端口4449上运行,连接数为0

与一个或多个连接:

hdldaemon (“状态”
HDLDaemon套接字服务器在端口4449上运行,有1个连接

没有连接:

hdldaemon (“状态”
HDLDaemon共享内存服务器以0连接运行

服务器未启动:

hdldaemon (“状态”
HDLDaemon未运行

检查连接信息中的通信模式、现有连接数和进程间通信标识符(ipc_id)的MATLAB服务器正在使用的一个链接。

套接字连接的返回消息:

x = hdldaemon (“状态”
X = comm: 'socket '连接:0 ipc_id: '4449'

共享内存连接返回的消息:

x = hdldaemon (“状态”
ipc_id: '\\.\pipe\E505F434-F023-42a6-B06D-DEFD08434C67'

您可以检查ipc_id在MATLAB命令提示符中输入:

x.ipc_id
“\ \ \ \ E505F434-F023-42a6-B06D-DEFD08434C67管。”

在不关闭MATLAB的情况下关闭服务器。

hdldaemon (“杀”
日志含义HDLDaemon服务器关闭

发出简单或复杂的Tcl命令。

简单的例子:

hdldaemon (“tclcmd”“这是一个测试”

复杂的例子:

tclcmd = {(“cd”, unixprojdir],...“vlib工作”...%创建库(如果适用)“威科姆公司-performdefaultbinding”unixsrcfile1),...“威科姆公司-performdefaultbinding”unixsrcfile2),...“威科姆公司-performdefaultbinding”unixsrcfile3),...“vsimmatlab工作。osc_top”...'matlabcp u_osc_filter -mfunc oscfilter'...“添加波sim: / osc_top / clk”...“添加波sim: / osc_top / clk_enable '...“添加波sim: / osc_top /重置”...'add wave -height 100 -基数十进制-format analog-step -scale 0.001 -offset 50000 '...“sim: / osc_top / osc_out”],...'add wave -height 100 -基数十进制-format analog-step -scale 0.00003125 -offset 50000 '...“sim: / osc_top / filter1x_out”],...'add wave -height 100 -基数十进制-format analog-step -scale 0.00003125 -offset 50000 '...“sim: / osc_top / filter4x_out”],...'add wave -height 100 -基数十进制-format analog-step -scale 0.00003125 -offset 50000 '...“sim: / osc_top / filter8x_out”],...'强制sim:/osc_top/clk_enable 1 0'...'force sim:/osc_top/reset 1 0, 0 120 ns'...'force sim:/osc_top/clk 1 0ns, 0 40 ns -r 80ns'...};

本例摘自《在MATLAB中实现一个振荡器的滤波器组件》。请参阅完整示例,了解在上下文中如何使用这个复杂的Tcl命令。

输入参数

全部折叠

服务器选项关闭MATLAB服务器或显示服务器状态,指定为这些字符向量之一:

“杀” 在不关闭MATLAB的情况下关闭MATLAB服务器。
“停止” 在不关闭MATLAB的情况下关闭MATLAB服务器。使用和使用没有区别“杀”“停止”
“状态” 显示MATLAB服务器的状态。你也可以用s = hdldaemon(的状态),显示MATLAB服务器状态并在结构中返回状态年代

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“时间”、“int64’,‘安静’,‘真正的’指定时间值作为64位整数返回,并且抑制输出消息。

给MATLAB服务器的指令,说明它应该如何发送和返回时间值,指定为逗号分隔对,由“时间”其中一个价值观是:

“int64”

指定MATLAB服务器将MATLAB函数回调中的时间值作为64位整数发送和返回,该整数表示模拟步骤的数量。
看到matlabcp/matlabtbtnow参数引用(MATLAB函数语法和函数参数定义).

“秒”

指定MATLAB服务器在MATLAB函数回调中发送和返回时间值为值,HDL验证器™根据当前的HDL模拟分辨率缩放到秒。

如果服务器已经在运行,则发出hdldaemon时间参数单独将关闭当前服务器,并使用共享内存再次启动服务器。

例子:“时间”、“int64”

指示符禁止打印诊断消息,指定为逗号分隔对,由“安静”以及下列值之一:

“真正的”

禁止打印诊断消息。

“假”

不要抑制打印诊断消息。

错误仍然出现。使用此选项可以在使用时抑制MATLAB服务器关闭消息hdldaemon获取未使用的套接字编号。如果服务器已经在运行,则发出hdldaemon安静的参数单独将关闭当前服务器,并使用共享内存再次启动服务器。

例子:“安静”,“真正的”

用于通信的TCP/IP端口,指定为逗号分隔的对“套接字”和一个值。取值为0,表示主机自动选择一个有效的TCP/IP端口、显式的端口号(1024 < port < 49151)或服务(别名)/文件。

如果指定操作系统选项(0),使用hdldaemon(的状态)获取指定的套接字端口号。

例子:“套接字”,4449年

Tcl命令传输到所有连接的客户端,指定为任何有效的Tcl命令字符向量或字符串标量。

您指定的Tcl命令不能包括加载HDL模拟器项目或修改模拟器状态的命令。例如,字符向量不能包含如下命令开始停止,或重新启动(ModelSim®)或运行停止,或重置(敏锐的®).

请注意

只有当软件与服务器建立连接后,才能执行此命令。

谨慎

不叫hdldaemon(“tclcmd”、“Tcl命令”)从内matlabtbmatlabcp函数。这样做会导致一个竞争条件,并且模拟器会挂起。

例子:“tclcmd”、“将”“完成”的

输出参数

全部折叠

结构,其中包含有关连接的信息。该结构包含以下变量:

“通讯” 要么共享内存的“套接字”
“连接” 打开连接数
“ipc_id” 如果是共享内存,则为共享内存通信通道的文件系统名称。socket表示TCP/IP端口号。
介绍了R2008a