摘 要
“虚拟实验平台”主要采用以“软”代“硬”和“虚”、“实”结合的设计思路,强调实用性,以最大限度地仿真真实的实验环境。主要实现了“专用实验台”的虚拟化,将它“搬”到了“微机”的显示器上,而原有在微机上的实验操作环境和方法仍然保持不变。系统还提供必要的测试仪器和工具(如示波器等),以便在实验调试时能够对运行结果进行监视或测量,如输出电平或波形,这种虚拟的测试仪器和工具也在界面和操作方面做到了尽可能的逼真。本文介绍了该虚拟试验平台的整体功能特点,主要介绍了8088CPU的结构,工作方式,以及如何用VC实现这些具体功能的编程方法。并加入了一些程序片段,对完成工作中遇到的困难也做了些总结。
关键词:仿真试验平台;8088CPU;VC;封装;寄存器;移植
目录
论文总页数:21页
1 概述 1
1.1课题背景及意义 1
1.2项目介绍 1
1.2.1虚拟化技术简介 1
1.2.2 CPU虚拟化技术简介 2
1.3项目要求 2
2 VC++6.0的编程 2
2.1 MFC编程 2
2.2 DLL相关知识 2
3 8088CPU介绍 3
3.1. 概述 3
3.2 8088CPU引线及其功能 3
3.3 8088CPU的内部结构 4
3.4 时序 5
3.5 简化的8088CPU模型概述 5
3.6移植bochs仿真实现8088CPU功能的基本思路 7
4 Bochs介绍 7
4.1 Bochs概述 7
4.2 类 BX_CPU_C 介绍 7
4.2.1 主要的数据成员 7
4.2.2 主要的成员函数 8
4.3 BX_CPU_C 类对CPU工作流程的简易描述 9
4.4 基本内存系统 11
4.4内存的访问 12
4.5 Bochs 时钟系统 14
4.6 Bochs中断系统 15
5 具体移植实现 17
5.1 虚拟实验平台统一的器件模型 17
5.2 CPU类的主要功能及实现方法 17
5.2.1 修改cpu loop 18
5.2.2 修改插库 18
结 论 18
参考文献 19
致 谢 20
声 明 21
简化的8088CPU逻辑功能的仿真实现
1 概述
1.1课题背景及意义
过去当人们在开发一个项目时可能会遇到以下问题(1)经常苦于经费不足,缺少足够的硬件开发板和完善的软件开发环境,相关的书籍对一些最新软件的分析还不够全面(2)高层次的软件设计和开发一般不用过多考虑底层硬件的实现细节,如果直接处于一具体的硬件环境下,在开发和研究中可能会陷入硬件的具体细节中不能自拔,而不能把精力放到高层次的软件设计和开发上。(3)如果硬件开发环境不太稳定(这种情况经常见到),且对身体的硬件不是很了解,则可能在排除问题上花费大量不必要的时间,所以人们利用仿真技术来解决这些问题以到达节约人力物力的目的。