欢迎来到天天文库
浏览记录
ID:23869080
大小:52.00 KB
页数:6页
时间:2018-11-11
《ia32逻辑功能仿真实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、IA32逻辑功能仿真实现摘要本设计是一个对IA32CPU模拟并动态演示的设计,它应用了VC6.0的MFC开发出的一个仿真硬件的虚拟实验平台,该平台为我们提供了一个对各类硬件定义与实现功能的规范,依据规范我们将CPU、主存等硬件设计成抽象的器件类,并将其封装成随时供平台调用的动态链接库。DLL库中包含了对CPU模型设计,我们通过移植虚拟机Bochs下的CPU库来实现核心功能。CPU核心功能采用调用bochs里的相关库来实现,因此我们将虚拟机bochs中的CPU指令库移植到设计中,并将它封装成一个静态库,器件类可通过调用该库中的程序来完成相关操作。为了使DL
2、L调用这个指令库,CPU内的cpu_loop函数进行了修改,同时又在boshs中的stubs库中扩展了CPU功能。关键词:虚拟实验平台;IA32逻辑功能;仿真;封装;移植概述随着计算机技术的迅猛发展,越来越多的电子器件被开发出来,CPU、主存等硬件的功能更加强大、结构更加复杂,为了更方便地了解硬件的工作时序和逻辑功能,人们开始采用虚拟技术来仿真硬件的工作时序和逻辑功能。计算机仿真技术是以多种学科和理论为基础,以计算机及其相应的软件为工具,通过虚拟试验的方法来分析和解决问题的一门综合性技术。计算机仿真(模拟)早期称为蒙特卡罗方法,是一门利用随机数实验求解随
3、机问题的方法。其原理可追溯到1773年法国自然学家G.L.L.Buffon为估计圆周率值所进行的物理实验。根据仿真过程中所采用计算机类型的不同,计算机仿真大致经历了模拟机仿真、模拟-数字混合机仿真和数字机仿真三个大的阶段。20世纪50年代计算机仿真主要采用模拟机;60年代后串行处理数字机逐渐应用到仿真之中,但难以满足航天、化工等大规模复杂系统对仿真时限的要求;到了70年代模拟-数字混合机曾一度应用于飞行仿真、卫星仿真和核反应堆仿真等众多高技术研究领域;80年代后由于并行处理技术的发展,数字机才最终成为计算机仿真的主流。现在,计算机仿真技术已经在机械制造、
4、航空航天、交通运输、船舶工程、经济管理、工程建设、军事模拟以及医疗卫生等领域得到了广泛的应用。2需求分析2.1虚拟实验台中的CPU仿真计算机技术、大规模集成电路技术和通讯技术的飞速发展,为虚拟实验的发展奠定了坚实的基础。虚拟实验就是在通用计算机上加载相应的软件或硬件,使得使用者在操作这台计算机时,就像是在操作一台专用的传统试验设备一样。在虚拟实验系统中,软件是整个系统的关键,任何以个使用者都可以通过软件的相关设置来达到要实现实验的效果。虚拟实验就是利用外部输入(如鼠标的点击、拖动和键盘的敲击等),将计算机上虚拟的各种仪器,按实验要求、过程,组装成一个完整
5、的实验环境,同时在这个环境中完成实验操作,包括实验器材的添加、实验条件的改变、数据采集以及实验结果的模拟、分析。它包含了虚拟仿真技术、计算机技术、实验技术、网络技术与专业等多方面理论知识。该平台已经设计好了,我们的任务就是能够正确无误的使用它,使各自的设计在平台下正常显示出来。2.2采用VC为开发工具VisualC++是一款比较好的面向对象的软件开发工具,使用次工具我们开发出了可视化虚拟的CPU器件。2.3实验台器件需封装成DLL设计的CPU器件以及这些器件的逻辑功能被封装成DLL,提供给实验平台使用。实验台可根据需要随时调用DLL来进行相关操作。2.4
6、CPU的核心功能采用移植bochs上述的DLL中CPU器件逻辑功能是采用移植虚拟机bochs中CPU库的指令系统来实现的。3相关知识介绍3.1CPU虚拟化技术虚拟化是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。虚拟化技术与多任务以及超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时并行运行,
7、而在虚拟化技术中,则可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上;而超线程技术只是单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作。虚拟化技术也与目前VMM会很容易提高性能,相比软件的虚拟实现方式会很大程度上提高性能。虚拟化技术可提供基于芯片的功能,借助兼容VMM软件能够改进纯软件解决方案。由于虚拟化硬件可提供全新的架构,支持操作系统直接在上面运行,从而无需进行二进制转换,减少了相关的性能开销,极大简化了VMM设计,进而使VMM能够按通用标准
8、进行编写,性能更加强大。3.2VC++6.0及MFC介绍随着多媒体技术和图形图象
此文档下载收益归作者所有