我正在尝试使用包含SystemC模块的C ++代码。这是我想要实现的目标:
MEX文件应根据用户提供的输入进行操作。
第一次调用它时,我想分叉一个新进程,它应该创建一个简单的SystemC模块(它包含一个SC_THREAD,它必须等待来自MATLAB的事件(我打算用信号量实现它) )。创建SystemC模块后,我将开始模拟。新进程现在包含SystemC模块,SC_THREAD函数运行一次,并等待来自MATLAB的事件。现在,我将结果返回给MATLAB并退出主MEX过程。我很可能会返回现在包含SystemC模块的进程的进程ID。
当我在此之后调用MEX时,从我传递的参数中,它确定SystemC模块已经存在并且应该发布触发SC_THREAD的信号量并且它运行一次并将结果返回给MATLAB。
最后,我想杀死这个过程。
我的问题是:所有这些都有意义,在MATLAB中是否可行?