如何启动 SystemC 模拟的 Qt 前端
How to start a Qt frontend of a SystemC simulation
我正在用 Qt 编写 GUI,我有:
QApplication app(argc, argv);
调用者:
app.exec();
其中 returns 仅当应用程序终止时。
为了在应用程序中执行 SystemC 模拟,我需要调用:
sc_start(...);
这也 returns 仅当模拟终止时。
我应该破解 Qt 或 SystemC 来绕过这个问题,还是我可以使用一些技巧?如何避免两次阻塞调用的死锁?
您应该 运行 它们在两个不同的线程或进程中。并设计一种通信机制,在仿真和GUI之间交换数据。
SystemC 调试器和交互式波形查看器使用的另一个常见想法是 运行 GDB 下的 SystemC 并使用 GDB-MI 协议从 GUI 控制模拟。
我正在用 Qt 编写 GUI,我有:
QApplication app(argc, argv);
调用者:
app.exec();
其中 returns 仅当应用程序终止时。
为了在应用程序中执行 SystemC 模拟,我需要调用:
sc_start(...);
这也 returns 仅当模拟终止时。
我应该破解 Qt 或 SystemC 来绕过这个问题,还是我可以使用一些技巧?如何避免两次阻塞调用的死锁?
您应该 运行 它们在两个不同的线程或进程中。并设计一种通信机制,在仿真和GUI之间交换数据。
SystemC 调试器和交互式波形查看器使用的另一个常见想法是 运行 GDB 下的 SystemC 并使用 GDB-MI 协议从 GUI 控制模拟。