基于虚拟机技术的DCS仿真系统设计与实现
来源:电子工程世界 作者:—— 时间:2010-06-07 09:52
3 虚拟控制器的实现
虚拟机的实现主要有两种方式:(1)主要由软件完全模拟目标平台的每一条指令,所以称为指令集虚拟机ISA(Instruction Set Architecture),又因为是完全模拟所以又称模拟器;(2)借助于特定平台和OS环境,利用VMM(Virtual Machine Monitor)程序为用户提供一个高效的虚拟执行环境,其主要特点就是执行效率高。由于使用了宿主操作系统的特性对功能进行了虚拟,所以称为功能级或者抽象级虚拟机,也属于一种仿真技术[2-3]。
目前控制器的结构主要包括了CPU、内存、网卡、Flash、DOC、双口RAM、SRAM以及各种端口。其中许多特定的硬件需要模拟,所以选择指令集虚拟机技术设计虚拟控制器。图2所示为虚拟控制器的结构图。
图2中各个模块完全按照现实控制器进行划分和设计。
(1)CPU模块包括实现指令的模拟和各个寄存器的实现。
(2)内存模块主要实现内存的模拟,其大小在虚拟控制器启动时确定,运行期间不能改变。
(3)网卡模块主要实现虚拟控制器的网卡,使得虚拟控制器可以通过网络发送和接收数据。
(4)存储模块相当于实现了虚拟机的存储介质,例如Flash、DOC、电子盘等。
(5)SRAM模块实现控制器用于掉电保护的SRAM,并用于虚拟机的数据掉电保护。
(6)双口RAM模块主要模拟控制器与DP主卡交互数据的双口RAM。
(7)端口模块实现控制器上的各个端口,虚拟控制器需要从端口读取站号,单双机状态、LED灯状态和其他状态。
(8)显示模块主要模拟类似显示器的作用。
(9)主板模块在整个虚拟控制器起着协调作用,具有配置整个虚拟控制器的硬件特性,其中还包括定时器。