基于嵌入式计算机原理仿真系统设计
2018-01-18刘明江
刘明江
摘要:基于嵌入式计算机组成原理仿真实验系统是一套非常优秀的系统。它可以用软件开发设计自己的8位模型机,可以直观的观察数据的流动和存储过程,可以通过接口扩展来进行计算机接口的各种试验,可以模拟多种8位CPU的运行(如INTEL86系列、RISC及C51系列等),可以脱离硬件用软件模拟仿真全部的硬件实现等等。本论文从不同方面阐述基于嵌入式计算机原理仿真系统设计,希望为研究计算机原理仿真系统的专家和学者提供理论参考依据。
关键词:嵌入式技术;计算机原理;仿真系统设计
中图分类号:TP391.9 文献标识码:A 文章编号:1007-9416(2018)09-0146-01
基于嵌入式计算机组成原理仿真实验系统,将会成为计算机应用教学中的重要工具。它是一套既能实现组成基本计算机模型,又能够灵活的组成各种结构的计算机处理模型的实验系统。它还可以模拟几种典型的单片机以及8088等CPU的运行模式及指令系统,从而进行接口实验,仿真实验,和CPU的结构,微程序设计,满足教学实验和科研开发的仿真过程。
1 实验系统设计思想
一个完善的组成原理实验系统,还要有一个强大的软件开发平台。这个软件可以用来指定所用的指令集或者设计自己的指令集。编译用户输入的源程序。还要对实验进行软件的模拟仿真,使其脱离实验硬件也可以独立运行。同时,可以通过软件来对实验的硬件平臺进行控制,实现数据的下载,程序的装入等等。还有就是要有一个强大的帮助系统。这是必不可少的,所以设计时也要考虑到软件功能的独立性和其的强大功能[1]。
2 采用独立功能模块的全硬件的设计方案
2.1 独立功能模块的设计思想及模块化分
模块化是按照功能将一个软件或硬件切分成许多部分单独开发,然后再组装起来,每一个部分即为模块。其中每个部分都有自己的功能,不依赖于其它部分,也就是说没一部分在功能上是独立的。同时,每个部分的结构是彼此独立的,每个部分都有其自己的结构。其优点是利于控制质量、利于多人合作、利于扩充功能,利于项目的管理、利于降低设计度、有利于加快设计速度因为多个模块可以同时进行、有利于模块的复用等等[2]。
2.2 微处理器
控制器有微程序控制器和硬布线控制器两种。硬布线控制的特点是:组合逻辑电路由门电路组成,处理速度快,当指令数量多时,设计难度大。但它的灵活性小不适合本次设计的要求。微程序控制器用规整的存储结构,代替了不规整的、复杂的硬联逻辑,结构简单。更重要的是利于扩展,灵活、通用性强。在数据结构通路不变的前提下,可以通过修改微程序来改变指令的执行方式,同时增加新的微程序来增加新指令,甚至可以用更换一套微程序的方法来更换指令系统。这正是实验系统所需要的。下面阐述微程序的原理、设计步骤、和作者的设计方案[3]。
微程序控制的基本思想,就是仿照通常的解题程序的方法,把所有的控制命令信号汇集在一起编码成所谓的微指令,再由微指令组成微程序,存放在一个EPROM里。系统运行时,一条又一条地读出这些微指令,产生执行部件所需要的各种控制信号,从而驱动执行部件进行所规定的操作。这里将存储逻辑和程序技术引入到CPU中。这里微指令是构成控制信号序列的最小单位,也称微信号,通常指那些直接作用于部件或控制门电路的命令。而执行部件接受微命令所执行的操作叫做微操作[4]。
2.3 算术逻辑运算单元(ALU)
ALU根据其功能可以划分为多个档次。普通的只能实现基本的算数逻辑运算工能,符点及乘除等运算通过软件来完成。这样的ALU设计简单但运行速度慢。高档的可以支持算数逻辑运算外还可以支持符点向量及标量等运算。这些运算通过硬件来实现。设计复杂但有很高的效率。输入输出都是8位。其中操作码、输入A、输入B合进位C加在一起共23位一起作为ALU ROM的输入地址线。当给定一组操作码、输入AB及进为C后,就唯一确定了一个存储单元,而这个存储单元存放的正是相应的运算结果。也就是说把ROM做成了一张查找表。例如加法的操作码是000001 操作数AB分别为000001和000010 那ALU就要查找000001000001000010单元的内容(000011)输出完成运算[5]。
2.4 通信模块
通信模块主要是实现实验台和PC机的通信,负责从PC机端读取信息,如从PC机读取程序和数据分别下载到实验台端的程序存储器和数据存储器。如从PC机读取控制命令等等。同时,通信模块还负责把实验台端的状态信息上传给PC机。
在通信模块作者的设计方案试采用单片机与PC机进行通信。通信的方式主要有串口通信(即打印口)、并口通信和USB口通信。设计时首选的是串口进行通信,串口简单易于实现[6]。
3 采用EDA技术功能集成的硬件设计方案
功能集成的设计就是作者运用EDA技术,使用高性能的EDA综合开发工具,按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。采用自顶向下的思想,首相对整个实验系统进行功能分析划分,并将CPU的动能集成到一片FPGA(现场可编程门阵列)中,用硬件描述语言HDL完成CPU功能行为的设计。
参考文献
[1]梁文翰.基于单片机的电力机车数据采集系统的设计[J].现代工业经济和信息化,2016,(24):73-74.
[2]尹相涛.数据采集系统的开发与应用[J].南钢科技,2001,(4):31-32.
[3]莫章洁.基于ZigBee与GPRS的农业数据采集系统设计[J].贵州师范学院学报,2016,(9):40-43.
[4]程佩,房海华,黄蓝.基于FPGA+DSP的数据采集系统设计与实现[J].计算机测量与控制,2016,(11):148-150.
[5]张玉,姚凯学.基于ZigBee的人体健康数据采集系统的设计[J].物联网技术,2016,(12):16-18.
[6]张袁志.多任务航空数据采集系统[J].科技传播,2017,(12):70-72.