WO2018072445A1 - 一种嵌入式虚拟装置运行方法和系统 - Google Patents
一种嵌入式虚拟装置运行方法和系统 Download PDFInfo
- Publication number
- WO2018072445A1 WO2018072445A1 PCT/CN2017/086081 CN2017086081W WO2018072445A1 WO 2018072445 A1 WO2018072445 A1 WO 2018072445A1 CN 2017086081 W CN2017086081 W CN 2017086081W WO 2018072445 A1 WO2018072445 A1 WO 2018072445A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- real
- time
- virtual
- data
- subsystem
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
- G06F11/364—Software debugging by tracing the execution of the program tracing values on a bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Definitions
- the invention belongs to the field of embedded device development, and particularly relates to an embedded virtual device operation method and system.
- the embedded device is a key device for safe and stable operation in the fields of power system and industrial control. Its professionalization threshold is high, the research and development process is complex, complex functions require team development, and research and development costs are high.
- Embedded device development includes application algorithms, software and hardware platforms, device debugging and other processes. At present, the degree of integration of embedded devices is also increasing. For example, centralized protection and monitoring devices include multiple functions such as line protection, transformer protection, bus protection, stability control, measurement and control, etc.
- the serial development and development cycle of the device is long. Parallel development requires more device samples and commissioning equipment.
- the object of the present invention is to realize a virtual running environment of an embedded device, and has a virtual running test function of the whole machine.
- the present invention provides an embedded virtual device running method, which is characterized in that a virtual management process reads a device configuration file, loads a real-time module, a non-real-time module, and hierarchically serializes the relationship according to a task cycle in a real-time scheduling thread.
- the tasks of each real-time module are scheduled to achieve precise synchronization of multi-processor data exchange.
- the virtual management process starts multiple threads to run event callbacks and periodic tasks of non-real-time modules, and realizes parallel communication with multiple protocol debugging clients. Specifically, the following steps are included:
- the first step the PC main interface process obtains the simulation setting information, and starts the virtual management process of the embedded device.
- the virtual management process reads the device configuration file, obtains the hardware configuration information, loads the real-time module of each processor, acquires the process configuration information of the main CPU, loads the corresponding non-real-time module, and the management process reads the configuration information of the human-machine communication in the configuration file.
- Create configuration shared memory the management process extracts and records the predefined module export function address when the module is loaded.
- the second step the virtual management process performs initialization interaction through the virtual CAN bus and the real-time module according to the hardware declaration order, and the management process summarizes the data exchange information of each real-time module to create a data bus.
- the virtual management process performs initialization interaction through the virtual FIFO and the non-real-time module according to the non-real-time process declaration order in the configuration file.
- the third step the virtual management process starts the virtual real-time task scheduling thread, calls the pre-defined export interface of the real-time module, and serially schedules the real-time tasks in each cycle.
- the virtual management process starts multiple non-real-time threads and calls non-real-time module periodic tasks to implement parallel communication with multiple debugging clients.
- Step 4 During the operation of the virtual device, the real-time module acquires interaction data between the processors based on the data bus, and the real-time module and the non-real-time module exchange data based on the shared memory.
- the real-time SLAVE module flushes the variable agent of the non-real-time module to the data bus and passes it to other processors.
- the DSP processor real-time module is a dynamic link library, which is compiled by an operating system-less application of the embedded device and a virtual DSP system library.
- the real-time module SLAVE of the main CPU is a dynamic link library, which is compiled by the embedded device based on the real-time program developed by the operating system and compiled with the virtual main CPU real-time system library.
- the non-real-time module is reconstructed by the embedded device based on the non-real-time program developed by the operating system, and the virtual main CPU non-real-time system library is compiled.
- the device application Based on the virtual PC platform library, the device application only needs to switch the compilation environment to recompile without modifying the code.
- the virtual emulation device and the actual device share the same configuration file, and the application personnel need not modify the device configuration.
- the tasks of the real-time modules are serially managed according to the periodic level, and the least common multiple of the multiple real-time task periods of the virtual real-time task scheduling thread computing device is used as the step loop according to the least common multiple, and the step size is When accumulating the period value of the corresponding level, the task of the level is called, and the time stamp of the virtual device is updated to the shared memory, and the minimum resolution is virtual microsecond.
- the virtual real-time task scheduling thread supports sequential scheduling according to the data bus read, the real-time computing task, and the data bus write, accurately simulates the embedded device parallel bus 1 point delay; also supports data bus read, data bus write, real-time operation
- the sequential scheduling of tasks accurately simulates the embedded device serial bus with 2 point delays, and the scheduling mode can be configured.
- the non-real-time thread periodically invokes the interface, supports the event-triggered communication message sending and receiving task, and supports reading the actual time of the PC to execute the millisecond-level periodic task.
- the real-time module SLAVE creates a circular buffer area, and can store the data bus accumulated second-level data, and is used for recording the data of the period before the recording is triggered when the virtual device is recorded.
- the non-real-time module sends the data of the corresponding point from the buffer to the debug client according to the current virtual time stamp in the shared memory.
- the debugging client supports visual page debugging, IEC61850 protocol debugging, IEC103 debugging, LCD liquid crystal debugging debugging, etc., based on the system common library, can flexibly expand the new debugging protocol and develop new modules.
- the PC emulation main interface process supports the real-time display of the prompt information during the initialization and operation of the virtual device through the output redirection after the virtual management process is started.
- the PC main interface process supports the specified Comtrade waveform file input, PSCAD/Hypersim data array input, process layer network GOOSE data, and empty data.
- the PC main interface process supports importing the application directory, automatically forming a Makefile, and calling the PC compiler to form an application dynamic link library.
- the simulation main interface process obtains the task operation statistics recorded by the virtual management process, and provides an interface display, including the task operation time of each level, the current task count, and supports tabular and graphical information display.
- An embedded virtual device running system characterized in that the system comprises: a visual configuration subsystem, a simulation interface subsystem, a virtual management subsystem, a real-time subsystem, a non-real-time subsystem, a platform interface library subsystem, and virtual data.
- Input subsystem, debug customer terminal system among them:
- the visual configuration subsystem is configured for hardware and software functions of the embedded device, and uses graphical symbols and visual page building device application functions to form a device driver package and a configuration file.
- the simulation interface subsystem is used for simulation information setting, start-stop simulation, virtual device output information and task statistics display, and application automatic compilation.
- the emulation interface subsystem allows the user to import several directory files, automatically form a Makefile, and compile the application.
- the simulation interface subsystem supports setting the simulation mode and the simulation data source, starts the virtual management process, and obtains the output information of the virtual management process and displays it. Get real-time task statistics and display them in the form of tables, charts, and more.
- the virtual management subsystem reads the device configuration file, loads the device real-time subsystem, and the non-real-time subsystem, performs real-time tasks, non-real-time task scheduling, and creates and releases shared memory.
- the real-time subsystem is compiled into a dynamic link library corresponding to the program functions of the respective processors of the device.
- the non-real-time subsystem corresponds to a non-real-time process developed by the main CPU of the device based on the operating system, including various communication server terminals and device common service process simulations, and is compiled into a dynamic link library.
- the platform interface library subsystem includes a DSP real-time library, a main CPU real-time library, a main CPU non-real-time library, provides a platform-plated public interface and service, defines a real-time module, a non-real-time module export interface function, and provides data registration, Variable management, bus communication and other functions.
- the virtual data input subsystem provides a data source for the virtual device, supports waveform reading analysis and channel mapping, supports output data of third party simulation software such as EMTDC/PSCAD, Hypersim software, supports data array of a custom format, etc. .
- the debugging client terminal system includes a visual debugging client, and supports visual page debugging; including a virtual liquid crystal debugging client, displaying a hierarchical menu of the physical device liquid crystal and a main screen content; including an IEC61850 debugging client, displaying a device model, a report, Data sets and settings; including IEC103 debug client, showing general packet data, top-loading waveforms; including print client, print device menu, settings, waveform data.
- the debug client terminal system is developed based on the common system library interface, and new sub-modules can be flexibly added.
- the present invention has the following beneficial effects: supporting the complete simulation and testing of the whole function of the device by dividing the device into a management process, a real-time module and a non-real-time module, and the configuration of the device R&D personnel based on the platform development method And the program can be run in the actual device and the virtual device, and the homologous maintenance is performed, the development efficiency is significantly improved, the problem diagnosis and the problem-checking efficiency in the development process are accelerated, and the development quality is improved.
- Device developers can also develop in parallel during the business trip and without the device, shortening the development cycle.
- FIG. 1 is a diagram showing an operational architecture of an embedded virtual device in the present invention
- FIG. 3 is a schematic diagram of the real-time task scheduling principle of the embedded virtual device in the present invention.
- FIG. 4 is a structural diagram of an embedded virtual device system in the present invention.
- the embedded device is divided into a virtual management process master, a plurality of real-time modules, and a plurality of non-real-time modules.
- the virtual management process reads the device configuration file, loads the real-time module, and the non-real-time module, and the virtual management process starts the real-time scheduling thread, and sets the relationship according to the task cycle.
- the tasks of each real-time module are hierarchically scheduled, and the multi-processor data exchange is accurately synchronized.
- the virtual management process starts multiple threads to run event callbacks and periodic tasks of non-real-time modules, and realizes parallel communication with multiple protocol debugging clients.
- the implementation method of the embedded virtual device is shown in FIG. 1 and includes the following steps:
- PC main interface process provides a setting interface, obtains simulation setting information (device configuration file path name, simulation input data, simulation time, etc.), and invokes the command line to start the virtual management process master of the embedded device.
- the virtual management process reads the device configuration file and obtains the hardware configuration information.
- the real-time module corresponding to each processor is loaded through the LoadLibrary (preferably, the SLAVE real-time module of the main CPU is SLAVE.dll, other processors are named by ID, such as B02.dll, B03_C1R1.dll, etc.).
- Record the predefined module export function address, the predefined function interface is defined in the system library, such as newModule, initModule, freeModule, runTask1, runTask2 and other interfaces.
- the system library based on the embedded device is transplanted and reconstructed under the Windows operating system to form a DSP system library, a main CPU real-time library, and a main CPU non-real-time library.
- the DSP processor real-time module is a dynamic link library of applications, which is compiled by an operating system-less application of the embedded device and a virtual DSP system library.
- the real-time module SLAVE of the main CPU is a dynamic link library, which is compiled by the embedded device based on the real-time program developed by the operating system and compiled with the virtual main CPU real-time system library.
- the non-real-time module is reconstructed by the embedded device based on the non-real-time program developed by the operating system, and the virtual main CPU non-real-time system library is compiled.
- the PC main interface process supports importing the application directory, automatically forming a Makefile, and calling the PC.
- a compiler (VC or GCC compiler) that forms an application dynamic link library. Based on the virtual PC platform library, the device application only needs to switch the compilation environment to recompile without modifying the application layer code.
- the configuration file of the embedded device is formed by a visual configuration tool, and the virtual simulation device and the actual device share the same configuration file, and the application personnel need not modify the device configuration.
- the main process of the PC emulation process obtains the prompt information (acquiring printf/perror output information) during the initialization and operation of the master virtual device through output redirection, and displays it on the interface.
- the simulation main interface process acquires task operation statistics recorded by the virtual management process (preferably, acquires related data through inter-process Pipe communication), and provides interface display, including various levels of task operation time, current task count, and supports tabularization and graphics. Information display.
- PC main interface main process also supports setting virtual simulation data source, optional Comtrade waveform file input, PSCAD/Hypersim/custom data array input (preferably, using text format, point by point storage according to channel), process layer network GOOSE data (preferably, winpcap capture packet to obtain link layer GOOSE message), empty data and other simulation modes, Master switches the corresponding simulation mode according to the command parameter, when input by waveform and data array, the master is in real-time thread Click to read the data, and the real-time module obtains the current point input data according to the channel number through the callback function.
- virtual simulation data source optional Comtrade waveform file input
- PSCAD/Hypersim/custom data array input preferably, using text format, point by point storage according to channel
- process layer network GOOSE data preferably, winpcap capture packet to obtain link layer GOOSE message
- empty data and other simulation modes Master switches the corresponding simulation mode according to the command parameter, when input by waveform and data array, the master is in real-time thread Click to read the data, and the real-time
- the virtual management process performs initialization interaction through the virtual CAN bus and the real-time module according to the hardware declaration order.
- the real-time module sends input and output variable registration information, fixed value registration information, and the management process delivers the device task cycle information, and summarizes the real-time modules. Data exchange information, the variable data exchange address of each interrupt in the data bus is allocated, and a data bus is created.
- the virtual management process initializes and interacts with the virtual FIFO and the non-real-time module according to the non-real-time process declaration order in the configuration file.
- the non-real-time module sends the variable registration information and the fixed value registration information, and the management process sends the relevant information of the shared memory.
- the real-time process can read the configuration shared memory during the initialization process and complete the initialization work corresponding to the module.
- the initialization process of the embedded virtual device is shown in Figure 2.
- the virtual management process starts the virtual real-time task scheduling thread, calls the predefined export interface of the real-time module, and serially schedules the real-time tasks in each cycle.
- the principle of task scheduling of real-time threads is shown in Figure 3.
- the tasks of each real-time module are serially managed according to the periodic level.
- the minimum common multiple of multiple real-time task cycles of the virtual real-time task scheduling thread computing device is used as the step size cycle according to the least common multiple.
- Virtual real-time task scheduling thread supports sequential scheduling according to data bus read, real-time computing tasks, and data bus writes, accurately simulating embedded devices in parallel Line 1 point delay; also supports data bus read, data bus write, real-time operation task sequence scheduling, accurate simulation of embedded device serial bus 2 point delay, scheduling mode configurable.
- the non-real-time thread's periodic call interface supports event-triggered communication packet sending and receiving tasks (TCP select/poll event, serial port read and write events, etc.), and supports reading the actual time of the PC to execute millisecond-level periodic tasks (
- the platform library provides an AddTimerTask management cycle task, and the interface is invoked periodically to calculate the multi-period task scheduling of the non-real-time module by calculating the current time and the last time difference.
- One non-real-time module corresponds to one thread, the management process starts multiple non-real-time threads, calls non-real-time module periodic tasks, and realizes parallel communication with multiple debugging clients.
- the real-time module acquires interaction data between the processors based on the data bus, and the real-time module and the non-real-time module exchange data based on the shared memory.
- the real-time SLAVE module supports flushing variable agents of non-real-time modules to the data bus for delivery to other processors.
- the real-time module SLAVE creates a circular buffer area, which can store the data bus accumulated second-level data (for example, a cumulative 3-second serial high-speed bus interrupt interaction data).
- the virtual device forms a waveform file, it can push forward several cycles of data before the recording. .
- the non-real-time module sends the data of the corresponding point from the shared data buffer to the debug client according to the current virtual time stamp in the shared memory.
- An embedded virtual device running system comprising: a visual configuration subsystem, a simulation interface subsystem, a virtual management subsystem, a real-time subsystem, a non-real-time subsystem, a platform interface library subsystem, a virtual data input subsystem, Debug the customer terminal system as shown in Figure 4. among them:
- the visual configuration subsystem is configured for hardware and software functions of the embedded device, supports graphical symbols, visual page building device application functions, supports tabular configuration setting grouping, device human-machine interface information, and communication point table configuration. Etc., forming a device driver package and a configuration file; the formed configuration file is an input file of the virtual device;
- the simulation interface subsystem is used for simulation information setting, start-stop simulation, virtual device output information and task statistics display, and application automatic compilation.
- the user is allowed to import h/c files of several directories.
- the subsystem automatically scans and obtains the h/c file in the directory, automatically forms the Makefile required by the VC and GCC compilers, calls the compiler, and links the system library. , compile the application and form a dynamic link library *.DLL file.
- the subsystem supports setting simulation mode and simulation data source (optional Comtrade waveform file input, PSCAD/Hypersim/custom data array input, process layer network GOOSE data, empty data, etc.), which starts the virtual management subsystem. Obtain the output information of the virtual management process and display it, obtain real-time task statistics and display it according to tables, charts, etc.
- the virtual management subsystem reads the device configuration file in the main entry function, acquires hardware configuration information, loads the device real-time subsystem, acquires configuration information of the main CPU process, loads the non-real-time subsystem, creates related threads, and performs real-time tasks. , non-real-time task scheduling, creating and releasing shared memory;
- the real-time subsystem is compiled into a dynamic link library corresponding to the program functions of the respective processors of the device.
- the non-real-time subsystem corresponds to a non-real-time process developed by the main CPU of the device based on the operating system, and includes functions of various communication server terminals and device common services such as printing;
- the platform interface library subsystem includes a DSP real-time library sysapi_dsp.lib, a main CPU real-time library sysapi_cpu_rt.lib, and a main CPU non-real-time library sysapi_cpu_nrt.lib, which provides a device platform common public interface and service, defines a real-time module,
- the export interface function of the non-real-time module provides functions such as data registration, variable management, and bus communication;
- the virtual data input subsystem provides a data source for the virtual device, supports waveform reading analysis and channel mapping, supports output data of third party simulation software such as EMTDC/PSCAD, Hypersim software, supports data array of a custom format, etc. ;
- the debugging client terminal system comprises a visual debugging client, supports double-clicking the connection line of the visualization page, issuing a variable to the virtual management subsystem, and the virtual management subsystem sends the variable value, and visually debugging the client to display the data in real time;
- the LCD debugging client displays the hierarchical menu and main screen contents of the physical device LCD, and issues debugging control commands; including the IEC61850 debugging client, reads the device model through the IEC61850 protocol, and displays reports, data sets and settings; including IEC103 debugging clients. End, through the IEC103 network, serial protocol, show general packet data, upload waveform; including print client, based on network protocol, print device menu, settings, waveform data.
- the debug client terminal system is developed based on the common system library interface, and can be flexibly expanded to add new sub-modules. Support click on the relevant button in the simulation subsystem, start the relevant debugging client, perform TCP communication through 127.0.0.1, support virtual keyboard response event, serial port transceiver and so on.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
Abstract
Description
Claims (11)
- 一种嵌入式虚拟装置运行方法,其特征在于,所述方法具体步骤包括:第一步:设置仿真信息,启动嵌入式装置的虚拟管理进程,虚拟管理进程读取装置配置文件,获取硬件配置信息,加载各个处理器的实时模块,获取主CPU的进程配置信息,加载对应的非实时模块;虚拟管理进程读取配置文件中人机通信配置信息,创建配置共享内存;虚拟管理进程在加载模块时,提取并记录预定义的模块导出函数地址;第二步:虚拟管理进程按照硬件声明顺序,通过虚拟CAN总线和实时模块进行初始化交互,虚拟管理进程汇总各个实时模块的数据交换信息,创建数据总线;虚拟管理进程按照配置文件中的非实时进程声明顺序,通过虚拟FIFO和非实时模块进行初始化交互;第三步:虚拟管理进程启动虚拟实时任务调度线程,调用实时模块预定义的导出接口,对各个周期实时任务串行分级调度;虚拟管理进程启动多个非实时线程,调用非实时模块周期任务,实现和多个调试客户端的并行通信;第四步:虚拟装置运行过程中,实时模块基于数据总线获取处理器之间的交互数据,实时模块和非实时模块基于共享内存交互数据;实时SLAVE模块将非实时模块的变量代理刷新到数据总线,传递给其它处理器。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第一步中,DSP处理器的实时模块是动态链接库,由嵌入式装置的无操作系统的应用程序和虚拟DSP系统库编译形成;主CPU的实时模块SLAVE是动态链接库,由嵌入式装置基于操作系统开发的实时程序移植重构后和虚拟的主CPU实时系统库编译形成;非实时模块由嵌入式装置基于操作系统开发的非实时程序移植重构后和虚拟的主CPU非实时系统库编译形成;基于虚拟的PC机平台库,装置应用程序切换编译环境实现重新编译,虚拟仿真装置和实际装置共用相同的配置文件。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第三步中,按照周期等级串行管理各个实时模块的任务,虚拟实时任务调度线程计算装置的多个实时任务周期的最小公倍数,按照最小公倍数作为步长循环,步长累加到对应等级的周期值时,调用该等级的任务,并更新虚拟装置的时标到共享内存。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第三步中,虚拟实时任务调度线程按照数据总线读、实时运算任务、数据总线写的顺序调度,精确模拟嵌入式装置并行总线1个点延时;或者,虚拟实时任务调度线程按照数据总线读、数据总线写、实时运算任务的顺序调度,精确模拟嵌入式装置串行总线2个点延时。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第三步中,非实时线程的周期调用接口中,支持基于事件触发的通信报文收发任务,支持读取PC机的实际时间执行毫秒级的周期任务。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第四步中,实时模块SLAVE创建循环缓存区,存储数据总线累计秒级数据,用于虚拟装置录波时记录触发录波前若干周期数据;非实时模块根据共享内存中当前虚拟时标从缓存区中读取对应点的数据上送给调试客户端显示。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第一步中, 在启动虚拟管理进程后,通过输出重定向,实时显示虚拟装置初始化和运行过程中的提示信息。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第一步中,所述仿真信息对应支持的仿真模式包括指定Comtrade波形文件输入、PSCAD/Hypersim数据阵列输入、过程层网络GOOSE数据或者空数据。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第一步中,通过导入应用程序目录,形成Makefile,调用PC机编译器,形成应用程序动态链接库。
- 如权利要求1所述的一种嵌入式虚拟装置运行方法,其特征在于:所述的第一步中,对虚拟管理进程记录的任务运算统计信息提供界面展示,所述信息界面展示的内容包括各个等级任务运算时间、当前任务计数,信息界面展示的形式支持表格化、图形化的信息展示。
- 一种嵌入式虚拟装置运行系统,其特征在于,所述系统包括:可视化配置子系统、仿真界面子系统、虚拟管理子系统、实时子系统、非实时子系统、平台接口库子系统、虚拟数据输入子系统和调试客户端子系统,其中:所述的可视化配置子系统,用于嵌入式装置的硬件和软件功能配置,采用图形化符号、可视化页面搭建装置应用功能,形成装置驱动包和配置文件;所述的仿真界面子系统,用于仿真信息设置、启动停止仿真、虚拟装置输出信息和任务统计展示、应用程序自动编译;仿真界面子系统支持用户导入若干目录文件,自动形成Makefile,编译应用程序;仿真界面子系统支持设置仿真模式和仿真数据源,启动虚拟管理进程,获取虚拟管理进程的输出信息并展示,获取实时任务统计信息并按照表格、图表等方式展示;所述的虚拟管理子系统,读取装置配置文件,加载装置实时子系统、非实时子系统,进行实时任务、非实时任务调度,创建释放共享内存;所述的实时子系统,对应装置各个处理器的程序功能,编译为动态链接库;所述的非实时子系统,对应装置主CPU基于操作系统开发的非实时进程,包括各种通信服务器端、装置公共服务进程模拟,编译为动态链接库;所述的平台接口库子系统,包括DSP实时库、主CPU实时库、主CPU非实时库,提供装置平台化公共接口和服务,定义实时模块、非实时模块的导出接口函数,提供数据注册、变量管理、总线通信等功能;所述的虚拟数据输入子系统,为虚拟装置提供数据源,支持波形读取解析和通道映射、支持第3方仿真软件的输出数据,支持自定义格式的数据阵列;所述的调试客户端子系统,包括可视化调试客户端,支持可视化页面调试;包括虚拟液晶调试客户端,展示物理装置液晶的层次菜单和主画面内容;包括IEC61850调试客户端,展示装置模型、报告、数据集和定值;包括IEC103调试客户端,展示通用分组数据,上装波形;包括打印客户端,打印装置菜单、定值、波形数据;调试客户端子系统基于公共系统库接口开发,可灵活增加新的子模块。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17862886.3A EP3525094A4 (en) | 2016-10-20 | 2017-05-26 | EXECUTION METHOD FOR INTEGRATED TYPE VIRTUAL DEVICE AND SYSTEM |
BR112019008039A BR112019008039A2 (pt) | 2016-10-20 | 2017-05-26 | método de execução para dispositivo e sistema virtual do tipo embarcado |
US16/343,389 US10949242B2 (en) | 2016-10-20 | 2017-05-26 | Development of embedded type devices and running method for embedded type virtual device and system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610913664.6A CN106445640B (zh) | 2016-10-20 | 2016-10-20 | 一种嵌入式虚拟装置运行方法和系统 |
CN201610913664.6 | 2016-10-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018072445A1 true WO2018072445A1 (zh) | 2018-04-26 |
Family
ID=58176862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2017/086081 WO2018072445A1 (zh) | 2016-10-20 | 2017-05-26 | 一种嵌入式虚拟装置运行方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10949242B2 (zh) |
EP (1) | EP3525094A4 (zh) |
CN (1) | CN106445640B (zh) |
BR (1) | BR112019008039A2 (zh) |
WO (1) | WO2018072445A1 (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109858111A (zh) * | 2019-01-15 | 2019-06-07 | 天津大学 | Rlv虚拟仿真平台设计及实现方法 |
CN111352616A (zh) * | 2020-02-20 | 2020-06-30 | 苏宁云计算有限公司 | 实时计算可视化开发系统及其应用方法 |
CN112612672A (zh) * | 2020-12-18 | 2021-04-06 | 四川九洲电器集团有限责任公司 | 一种嵌入式软件实时运行状态监控方法 |
CN112685197A (zh) * | 2020-12-28 | 2021-04-20 | 浪潮软件科技有限公司 | 接口数据的交互系统 |
CN112685095A (zh) * | 2020-12-25 | 2021-04-20 | 北京浪潮数据技术有限公司 | 一种虚拟设备的加载方法、装置、设备及存储介质 |
CN113407214A (zh) * | 2021-06-24 | 2021-09-17 | 广东泰坦智能动力有限公司 | 一种基于can通信的可重构化多线程并行上位机系统 |
CN113608879A (zh) * | 2021-08-27 | 2021-11-05 | 北京易智联科技有限公司 | 一种可重构的模拟器或测试设备架构设计方法 |
CN113609694A (zh) * | 2021-08-13 | 2021-11-05 | 国家电网有限公司华北分部 | 基于pscad的继电保护闭环仿真系统数据传输及同步方法 |
CN113792444A (zh) * | 2021-11-15 | 2021-12-14 | 成都泰盟软件有限公司 | 一种机能学虚拟仿真实验波形构建方法 |
CN114347072A (zh) * | 2021-12-06 | 2022-04-15 | 埃夫特智能装备股份有限公司 | 一种机器人控制器模拟化平台及其虚拟方法 |
WO2022126930A1 (zh) * | 2020-12-17 | 2022-06-23 | 威胜集团有限公司 | 一种嵌入式设备驱动系统及方法 |
CN114915515A (zh) * | 2022-05-04 | 2022-08-16 | 中国第一汽车股份有限公司 | 一种基于soc的can通信方法及系统 |
CN114968745A (zh) * | 2022-06-10 | 2022-08-30 | 北京世冠金洋科技发展有限公司 | 一种处理系统模型的运行信息的方法及装置 |
CN116090372A (zh) * | 2023-03-23 | 2023-05-09 | 湖南泛联新安信息科技有限公司 | 一种基于fpga的芯片仿真加速方法和系统 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445640B (zh) | 2016-10-20 | 2019-06-18 | 南京南瑞继保电气有限公司 | 一种嵌入式虚拟装置运行方法和系统 |
CN107479983B (zh) * | 2017-07-11 | 2021-04-20 | 核动力运行研究所 | 基于时域控制技术的变步长多程序同步计算系统及方法 |
CN108460216B (zh) * | 2018-03-12 | 2021-09-10 | 中国人民解放军国防科技大学 | 航天器测控覆盖分析设计平台 |
CN109948123B (zh) * | 2018-11-27 | 2023-06-02 | 创新先进技术有限公司 | 一种图像合并方法及装置 |
CN110955602B (zh) * | 2018-11-30 | 2023-07-07 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种基于资源共享的分布式嵌入式软件测试系统 |
CN109814478B (zh) * | 2019-01-14 | 2020-04-24 | 浙江工业大学 | 基于iOpenWorks的虚拟调试系统 |
CN110784545B (zh) * | 2019-10-31 | 2022-02-11 | 上海埃威航空电子有限公司 | 实时数据分发系统 |
CN110781103B (zh) * | 2019-11-05 | 2022-02-15 | 中电科思仪科技股份有限公司 | 一种pxi总线开关模块控制系统及方法 |
CN111078666B (zh) * | 2019-12-11 | 2023-06-27 | 中国建设银行股份有限公司 | 基于跨中心多数据库的自动化卸数供数的方法 |
CN111176136B (zh) * | 2019-12-18 | 2023-04-25 | 中国船舶重工集团公司第七一五研究所 | 一种机电液装备虚实一体化仿真系统 |
CN111143218B (zh) * | 2019-12-27 | 2024-03-26 | 深圳市共进电子股份有限公司 | 适用于5G嵌入式设备的log调试方法、装置和可读存储介质 |
CN111258571A (zh) * | 2020-02-11 | 2020-06-09 | 达闼科技(北京)有限公司 | 机器人应用程序开发方法、系统、装置及存储介质 |
CN111404793B (zh) * | 2020-03-11 | 2022-01-21 | 超越科技股份有限公司 | 一种控制物理can口和虚拟can口进行映射的方法,系统,设备及可读存储介质 |
CN112379866A (zh) * | 2020-11-03 | 2021-02-19 | 中国直升机设计研究所 | 一种综合任务处理系统仿真软件架构及工作方法 |
CN112328313B (zh) * | 2020-11-09 | 2023-07-14 | 中国船舶重工集团公司第七0七研究所九江分部 | 一种应用于嵌入式软件的通用系统 |
CN112463614B (zh) * | 2020-12-01 | 2023-07-14 | 北京计算机技术及应用研究所 | 一种基于硬件板卡接入的软件虚拟化测试环境构建方法 |
CN112765018B (zh) * | 2021-01-12 | 2022-09-13 | 武汉光庭信息技术股份有限公司 | 一种仪器仪表调试系统及方法 |
CN113064708B (zh) * | 2021-04-06 | 2022-03-18 | 上海大学 | 高速连续运动中的机械臂系统多任务协同与信息同步方法 |
CN113438008B (zh) * | 2021-04-20 | 2022-10-28 | 北京控制工程研究所 | 一种适用于姿轨控系统多机容错架构的多机时标仿真方法 |
CN113608782B (zh) * | 2021-06-22 | 2023-08-01 | 天津津航计算技术研究所 | 一种能够重定向于can总线的控制台设计方法 |
CN113806012B (zh) * | 2021-08-17 | 2023-10-17 | 南京南瑞继保工程技术有限公司 | 一种电力系统嵌入式设备功能集成的系统及其运行方法 |
CN113821330B (zh) * | 2021-11-24 | 2022-03-15 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
CN114201149B (zh) * | 2022-02-18 | 2022-05-31 | 北京阿丘科技有限公司 | 运行流程生成方法、装置、系统与计算机可读存储介质 |
CN114756492B (zh) * | 2022-03-29 | 2023-11-03 | 中国西安卫星测控中心 | 适用于多种运载器的1553b数据总线处理方法 |
CN115002190A (zh) * | 2022-05-27 | 2022-09-02 | 努比亚技术有限公司 | 一种功能配置文件调控方法、设备及计算机可读存储介质 |
CN115102278B (zh) * | 2022-06-16 | 2024-01-23 | 国网信息通信产业集团有限公司 | 一种分布式光伏电能质量的配置监测系统及方法 |
CN115080280B (zh) * | 2022-08-16 | 2022-12-27 | 南方电网数字电网研究院有限公司 | 一种多时间尺度数据融合的边缘计算平台控制系统和方法 |
CN115658277B (zh) * | 2022-12-06 | 2023-03-17 | 苏州浪潮智能科技有限公司 | 一种任务调度方法、装置及电子设备和存储介质 |
CN116842763B (zh) * | 2023-08-31 | 2024-01-26 | 国汽(北京)智能网联汽车研究院有限公司 | 仿真测试方法、装置、电子设备和存储介质 |
CN117880117A (zh) * | 2024-03-12 | 2024-04-12 | 泉州华中科技大学智能制造研究院 | 一种用于虚拟调试的EtherCAT虚拟从站实现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453371A (zh) * | 2008-06-26 | 2009-06-10 | 北京科技大学 | 网络化嵌入式系统的仿真方法及其装置 |
CN102508697A (zh) * | 2011-11-25 | 2012-06-20 | 武汉钢铁(集团)公司 | 一种Java实现8位嵌入式CPU仿真运行环境的方法 |
CN102609297A (zh) * | 2010-12-28 | 2012-07-25 | 微软公司 | 虚拟化嵌入式设备 |
US20140130048A1 (en) * | 2010-01-04 | 2014-05-08 | Vmware, Inc. | Dynamic scaling of management infrastructure in virtual environments |
CN106445640A (zh) * | 2016-10-20 | 2017-02-22 | 南京南瑞继保电气有限公司 | 一种嵌入式虚拟装置运行方法和系统 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5444853A (en) * | 1992-03-31 | 1995-08-22 | Seiko Epson Corporation | System and method for transferring data between a plurality of virtual FIFO's and a peripheral via a hardware FIFO and selectively updating control information associated with the virtual FIFO's |
US5892941A (en) * | 1997-04-29 | 1999-04-06 | Microsoft Corporation | Multiple user software debugging system |
US7047176B2 (en) * | 2000-05-05 | 2006-05-16 | Fujitsu Limited | Method and system for hardware simulation |
JP4620771B2 (ja) * | 2005-03-16 | 2011-01-26 | ゲートロケット・インコーポレーテッド | Fpgaエミュレーションシステム |
US20070204271A1 (en) * | 2006-02-28 | 2007-08-30 | Andrew Gaiarsa | Method and system for simulating a multi-CPU/multi-core CPU/multi-threaded CPU hardware platform |
US8600556B2 (en) * | 2009-06-22 | 2013-12-03 | Johnson Controls Technology Company | Smart building manager |
US9042366B2 (en) * | 2010-09-30 | 2015-05-26 | Vitesse Semiconductor Corporation | Timestamp predictor for packets over a synchronous protocol |
WO2013143121A1 (en) * | 2012-03-30 | 2013-10-03 | Intel Corporation | Accessing a device on a remote machine |
TW201421420A (zh) * | 2012-11-21 | 2014-06-01 | Inst Information Industry | 圖形處理單元虛擬裝置、圖形處理單元主機裝置及其圖形處理單元程式處理方法 |
CN103235756B (zh) * | 2013-04-22 | 2015-11-04 | 北京航空航天大学 | 一种面向嵌入式系统分区应用程序软件的仿真测试方法 |
JP6241144B2 (ja) * | 2013-08-30 | 2017-12-06 | 富士通株式会社 | 制御プログラム、制御方法および制御装置 |
US9898388B2 (en) * | 2014-05-23 | 2018-02-20 | Mentor Graphics Corporation | Non-intrusive software verification |
CN104267283A (zh) * | 2014-09-26 | 2015-01-07 | 上海科梁信息工程有限公司 | 一种数字化变电站过程层到间隔层测试平台及方法 |
CN104750068B (zh) * | 2015-02-13 | 2018-08-21 | 湖北锐世数字医学影像科技有限公司 | 一种多节点传感器网络的数据传输及控制装置 |
CN105718305B (zh) * | 2016-03-15 | 2018-11-13 | 南京南瑞继保电气有限公司 | 一种基于进程的仿真任务并行调度方法 |
-
2016
- 2016-10-20 CN CN201610913664.6A patent/CN106445640B/zh active Active
-
2017
- 2017-05-26 US US16/343,389 patent/US10949242B2/en active Active
- 2017-05-26 BR BR112019008039A patent/BR112019008039A2/pt unknown
- 2017-05-26 WO PCT/CN2017/086081 patent/WO2018072445A1/zh unknown
- 2017-05-26 EP EP17862886.3A patent/EP3525094A4/en not_active Ceased
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453371A (zh) * | 2008-06-26 | 2009-06-10 | 北京科技大学 | 网络化嵌入式系统的仿真方法及其装置 |
US20140130048A1 (en) * | 2010-01-04 | 2014-05-08 | Vmware, Inc. | Dynamic scaling of management infrastructure in virtual environments |
CN102609297A (zh) * | 2010-12-28 | 2012-07-25 | 微软公司 | 虚拟化嵌入式设备 |
CN102508697A (zh) * | 2011-11-25 | 2012-06-20 | 武汉钢铁(集团)公司 | 一种Java实现8位嵌入式CPU仿真运行环境的方法 |
CN106445640A (zh) * | 2016-10-20 | 2017-02-22 | 南京南瑞继保电气有限公司 | 一种嵌入式虚拟装置运行方法和系统 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3525094A4 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109858111A (zh) * | 2019-01-15 | 2019-06-07 | 天津大学 | Rlv虚拟仿真平台设计及实现方法 |
CN111352616A (zh) * | 2020-02-20 | 2020-06-30 | 苏宁云计算有限公司 | 实时计算可视化开发系统及其应用方法 |
WO2022126930A1 (zh) * | 2020-12-17 | 2022-06-23 | 威胜集团有限公司 | 一种嵌入式设备驱动系统及方法 |
CN112612672B (zh) * | 2020-12-18 | 2022-03-01 | 四川九洲电器集团有限责任公司 | 一种嵌入式软件实时运行状态监控方法 |
CN112612672A (zh) * | 2020-12-18 | 2021-04-06 | 四川九洲电器集团有限责任公司 | 一种嵌入式软件实时运行状态监控方法 |
CN112685095B (zh) * | 2020-12-25 | 2024-03-22 | 北京浪潮数据技术有限公司 | 一种虚拟设备的加载方法、装置、设备及存储介质 |
CN112685095A (zh) * | 2020-12-25 | 2021-04-20 | 北京浪潮数据技术有限公司 | 一种虚拟设备的加载方法、装置、设备及存储介质 |
CN112685197A (zh) * | 2020-12-28 | 2021-04-20 | 浪潮软件科技有限公司 | 接口数据的交互系统 |
CN112685197B (zh) * | 2020-12-28 | 2022-08-23 | 浪潮软件科技有限公司 | 接口数据的交互系统 |
CN113407214A (zh) * | 2021-06-24 | 2021-09-17 | 广东泰坦智能动力有限公司 | 一种基于can通信的可重构化多线程并行上位机系统 |
CN113609694A (zh) * | 2021-08-13 | 2021-11-05 | 国家电网有限公司华北分部 | 基于pscad的继电保护闭环仿真系统数据传输及同步方法 |
CN113609694B (zh) * | 2021-08-13 | 2024-01-02 | 国家电网有限公司华北分部 | 基于pscad的继电保护闭环仿真系统数据传输及同步方法 |
CN113608879A (zh) * | 2021-08-27 | 2021-11-05 | 北京易智联科技有限公司 | 一种可重构的模拟器或测试设备架构设计方法 |
CN113608879B (zh) * | 2021-08-27 | 2024-02-09 | 北京易智联科技有限公司 | 一种可重构的模拟器或测试设备架构设计方法 |
CN113792444A (zh) * | 2021-11-15 | 2021-12-14 | 成都泰盟软件有限公司 | 一种机能学虚拟仿真实验波形构建方法 |
CN114347072A (zh) * | 2021-12-06 | 2022-04-15 | 埃夫特智能装备股份有限公司 | 一种机器人控制器模拟化平台及其虚拟方法 |
CN114915515B (zh) * | 2022-05-04 | 2024-01-26 | 中国第一汽车股份有限公司 | 一种基于soc的can通信方法及系统 |
CN114915515A (zh) * | 2022-05-04 | 2022-08-16 | 中国第一汽车股份有限公司 | 一种基于soc的can通信方法及系统 |
CN114968745B (zh) * | 2022-06-10 | 2023-06-16 | 北京世冠金洋科技发展有限公司 | 一种处理系统模型的运行信息的方法及装置 |
CN114968745A (zh) * | 2022-06-10 | 2022-08-30 | 北京世冠金洋科技发展有限公司 | 一种处理系统模型的运行信息的方法及装置 |
CN116090372A (zh) * | 2023-03-23 | 2023-05-09 | 湖南泛联新安信息科技有限公司 | 一种基于fpga的芯片仿真加速方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US20190317791A1 (en) | 2019-10-17 |
EP3525094A1 (en) | 2019-08-14 |
US10949242B2 (en) | 2021-03-16 |
CN106445640A (zh) | 2017-02-22 |
EP3525094A4 (en) | 2019-11-13 |
CN106445640B (zh) | 2019-06-18 |
BR112019008039A2 (pt) | 2019-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018072445A1 (zh) | 一种嵌入式虚拟装置运行方法和系统 | |
Zhang et al. | Panappticon: Event-based tracing to measure mobile application and platform performance | |
US8739129B1 (en) | Multi-domain unified debugger | |
Böhm et al. | xSim: The extreme-scale simulator | |
US20130263090A1 (en) | System and method for automated testing | |
CN111930365B (zh) | 基于Qt的应用程序快速开发框架、开发方法及运行方法 | |
CN103544103A (zh) | 一种软件性能测试模拟并发方法及系统 | |
KR101275172B1 (ko) | 이산 사건 시뮬레이션 방법 | |
CN104750603A (zh) | 一种多核dsp软件仿真器及其物理层软件测试方法 | |
CN112486791A (zh) | 一种服务器集群的性能测试方法、装置及设备 | |
Di Sanzo et al. | A flexible framework for accurate simulation of cloud in-memory data stores | |
CN113051040A (zh) | 一种异地远程分布式联合仿真方法 | |
CN103942092A (zh) | 一种支持LabView图形化编程的HLA协同仿真方法 | |
Schlatte et al. | Modeling and analyzing resource-sensitive actors: a tutorial introduction | |
Reiss | Visual representations of executing programs | |
Kunkel | HDTrace–a tracing and simulation environment of application and system interaction | |
CN116069649A (zh) | 页面测试方法、装置、设备及介质 | |
Carvalho et al. | Experimental evaluation of distributed middleware with a virtualized java environment | |
Lehrig et al. | Performance prototyping with protocom in a virtualised environment: A case study | |
Daoud et al. | Multilevel analysis of the java virtual machine based on kernel and userspace traces | |
Henning | Prototype of a scalable monitoring infrastructure for Industrial DevOps | |
Andrade et al. | Openmads: An open source tool for modeling and analysis of distributed systems | |
Mos | A framework for adaptive monitoring and performance management of component-based enterprise applications | |
Rover et al. | Software tools for complex distributed systems: Toward integrated tool environments | |
CN113268421A (zh) | 服务调用处理方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17862886 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112019008039 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 2017862886 Country of ref document: EP Effective date: 20190508 |
|
ENP | Entry into the national phase |
Ref document number: 112019008039 Country of ref document: BR Kind code of ref document: A2 Effective date: 20190418 |