本发明涉及计算机领域,具体涉及一种基于MCU物理载体的微型计算机系统。

技术背景

随着工业物联网产业的兴起,应用于工业设备和环境传感器的数据采集和通讯物联的需求不断增加,对数据采集和通讯控制的功能提出越来越高的要求。具体体现在一方面,面对传感器接口和数量的不断增加,各种传感器和控制器的总线协议多种多样,通过单一的参数配置方式已经难以满足日益增长变化的需求;另一方面,用户对具体的应用提出越来越多的个性化需求,比如对生产工艺控制策略的个性化需求,加之用户对开发部署周期越来越短的要求,基于工控机或MCU从头研发的实现方式难以达到为用户快速部署的目标。为了更好满足对数据采集控制产品的高度定制化和短周期的市场需求这一目标,本发明提出一种基于MCU物理载体的微型计算机系统,通过这种新的设计理念和制作工艺,满足用户的高度定制化需求和缩短开发周期的目标。

本发明提出的微型计算机系统是建立在MCU(微控制器)硬件载体之上的微型计算机系统,具有独立的指令系统,独立的数据表示,独立的寄存器定义和独立的内存空间和IO空间,可执行通过C语言编译的,不同于MCU本身的二进制目标程序。这个目标程序定义了应用功能需求,可以移殖和复用,和具体的物理载体MCU没有直接的相关性,能够完好保存应用层软件功能和技术的继承。应用软件经固化在MCU的非易失存储器之中,完成产品的功能定制。通过这种方式,原本MCU繁杂的初始化和输入输出访问可以通过微型计算机系统的单条IO指令实现,原本门槛较高的MCU编程环境可以通过简单的与硬件细节无关的微型计算机系统概念完成。结合微控制器低功耗,高可靠,低成本的优势,微型计算机系统可以制作成模组形式,应用于物联网数据采集和通讯控制,便于商业化应用。

技术实现要素:

基于MCU物理载体的微型计算机系统有一个非常小的指令集,只有50条指令。指令有3种不同类型的大小,16位,32位和48比特位。它为用户编程提供了很大的自由度。指令覆盖32位整数和32位浮点数运算。一些指令,如长整数除、求模计算都被集成到指令集之中,方便C语言翻译成汇编语言语句。这个指令集包括11条ALU算术逻辑运算指令、5条FPU浮点运算指令、4条数据移动指令、8条内存访问指示、2条输入输出指令、8条BRANCH转移指令、7条JUMP跳转指令、3条调用返回指令和2条数据类型转换指令。这种微小的指令集涵盖了所有必要的功能,包括管理、控制和计算。该微型计算机系统具有4种数据表示,分别为8位字节整数,16位字整数,32位长字整数,和32位单精度浮点数。系统还具有16个32位寄存器RO..Rf,通过指令寻址访问,32位内存空间和32位IO空间,以及32位的程序状态字PSW和32位的程序计数器PC。IO空间的访问通过IN、OUT指令实现,部分IO空间的定义如下:

IO地址空间的编址均以32位长字对界,IO空间寄存器的访问以32位长字为基本单元。

32位内存空间用于程序运行的变量空间和堆栈空间,这些存储区对于C语言程序是透明的,但对于汇编语言,通过指令可以访问指定的内存空间,包括程序中出现的各种常数(在编译阶段可以确定数值及其存储空间)。其中堆栈空间通过Rf堆栈指针访问,其内存堆栈区域会通过子程序调用和返回完成动态的占用和释放,属于程序运行机制的系统用途,因此通过C语言编写的程序,无须关注内存的使用状态,这也为应用软件的开发带来便利。

50条指令系统的定义如下:

第一类,算术逻辑运算指令(11条)

其中,#16是16位立即整数,#32是32位立即整数。

第二类,浮点运算指令(5条)

其中,#32是32位立即浮点数。

第三类,数据移动指令(4条)

其中,#16是16位立即数,#32是32位立即数。

第四类,内存访问指令(8条)

其中,[#32]为32位立即数作为地址所指定单元的内容,#16(Ry)是以Ry为基地址的结合16位偏移量所指定单元的内容。

第五类,输入输出指令(2条)

其中,[#32]为32位立即数作为地址所指定单元的内容,#16(Ry)是以Ry为基地址的结合16位偏移量所指定单元的内容。

第六类,相对转移指令(8条)

其中,i8是8位地址偏移量,转移的目标地址是当前指令地址PC的相对地址。

第七类,绝对跳转指令(7条)

其中,#32是32位目标地址。

第八类,调用转移指令(2条)

其中,#32是32位目标地址。

第九类,数据转换指令(2条)

以上的内容从计算机体系结构上定义了这种基于MCU的微型计算机系统。

附图说明

图1本微型计算机系统和MCU物理载体的系统层次结构关系图;

图2微型计算机系统的CPU和IO的结构关系图;

具体实施方式

微型计算机系统的实施包括嵌入式软件和硬件两个方面。在软件方面通过二级层次结构完成目标计算件的体系结构定义;在硬件上通过输入输出的外围硬件电路,将微型计算机系统的IO空间延伸到PCB电路板上的IO接线端子上。应用程序的IO访问直接关联到PCB板子上的IO接线端子。其系统层次结构如图1所示。

目前我们通过ARM7低功耗高性能MCU作为物理载体,通过一系列软件子程序的支撑构建我们目标定义的微型计算机系统。这个系统具有50条全集指令,16个32位通用寄存器,和算术逻辑运算部件,浮点运算部件和1个32位的程序状态字PSW和1个32位的程序计数器PC。同时通过两个分离的地址译码器实现32位内存地址空间和32位IO地址空间的地址译码。微型计算机系统的CPU对存储器和IO单元的访问是透明的,但数据交换的物理通道建立在MCU物理载体的硬件和PCB的外围电路基础之上。图2为微型计算机系统的CPU和IO的结构关系。

硬件实现部分由微型计算机系统的CPU和输入输出硬件接口电路两个部分组成,其中微型目标机CPU的硬件是MCU载体本身,其组件包括目标微型计算机的存储器,算术逻辑部件,浮点运算部件,寄存器和接口电路;IO输入输出电路是在PCB上部署的硬件外围电路,包括若干IO功能块。其中模拟信号的输入调理电路用于ADC模数转换的前置电路,支持0-5V的模拟电压输入和0-20mA的模拟电流输入;数字光耦输入用于接入开关量信号,通过光耦隔离外界电压,保护CPU电路;数字光耦输出用于控制开关量输出,通过光耦隔离外界电压,保护CPU电路;系统时钟/计数可记录外界计数器信号,使得目标微型计算机系统具有计数器采集功能;RS485驱动电路和保护电路建立若干RS485总线链路,通过应用程序的定制可接入多种多样的RS485工业设备和传感器。由I/O电路功能模块组成的I/O阵列和CPU之间通过双向的外部总线完成数据交换,最终通过I/O光耦隔离和I/O驱动电路将I/O信号连接到PCB的接线端子,实现本发明提出的微型计算机系统。

微型计算机作为载体的部件是,一种基于MCU物理载体的微型计算机系统的制作方法...相关推荐

  1. ft232h引脚_一种基于芯片ft232h的usb接口电路的制作方法

    一种基于芯片ft232h的usb接口电路的制作方法 [技术领域] [0001 ] 本实用新型涉及一种USB接口电路,具体涉及一种基于芯片FT232H的USB接口电路. [背景技术] [0002]USB ...

  2. melis系统c800_一种基于Melis平台的卡拉OK系统的制作方法

    本实用新型涉及一种卡拉OK系统,具体是一种基于Melis平台的卡拉OK系统. 背景技术: 随着经济的快速发展,人们在追求物质生活上的富足外也更加注重精神的富足,由此就催生了一系列的娱乐方式,音乐就是其 ...

  3. 工厂用计算机自动控制技术,一种基于计算机技术的工厂车间灯光控制系统的制作方法...

    本发明涉及灯光控制领域,具体为一种基于计算机技术的工厂车间灯光控制系统. 背景技术: 计算机技术的内容非常广泛,可粗分为计算机系统技术.计算机器件技术.计算机部件技术和计算机组装技术等几个方面.计算机 ...

  4. c语言检测正弦波波峰波谷,一种基于波峰波谷检测的计步算法的制作方法

    本发明涉及计步器算法领域,具体是一种基于波峰波谷检测的计步算法. 背景技术: 当今社会,健康越来越受到人们的重视,步行作为人类活动中最基础.最常见.最重要的运动形式,使得深入研究计步算法有着重要的意义 ...

  5. c语言模拟32u4单片机,一种基于Atmega32u4的教学型Arduino开发板的制作方法

    本实用新型涉及一种教学型Arduino开发板,具体是基于Atmega32u4芯片的教学型Arduino开发板. 背景技术: 近些年来,互联网和物联网高速发展,在推动社会生产力快速发展的同时,也对我们的 ...

  6. adc0832对光电二极管进行数据采集_一种基于光电二极管的麦克风跟踪检测电路的制作方法...

    本实用新型涉及一种基于光电二极管的麦克风跟踪检测电路,属于应用电子技术领域. 背景技术: 随着互联网的发展,语音交互应用正在日益变多,近几年视频直播.网络直播.K歌软件都发展得很快,也推高了麦克风的销 ...

  7. 树莓派环境处理_一种基于树莓派的便携式的环境监测系统的制作方法

    本发明涉及通讯技术领域,尤其涉及一种基于树莓派的便携式的环境监测系统. 背景技术: 树莓派是尺寸仅有信用卡大小的一个小型电脑,可以将树莓派连接电视.显示器.键盘鼠标等设备使用.树莓派能替代日常桌面计算 ...

  8. 一种基于语音识别的机器人语义识别系统的制作方法

    本发明涉及机器人语义识别,尤其涉及一种基于语音识别的机器人语义识别系统. 背景技术: 目前,很多家庭都拥有机器人,但是很多时候机器人并不能准确识别用户对其发出的指示,使用户操作机器人不方便,这样的机器 ...

  9. 基于html的网上点餐系统,一种基于客户端的网上点餐系统的制作方法

    本发明涉及互联网技术领域,具体为一种基于客户端的网上点餐系统. 背景技术: 互联网是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一且巨大的全球化网络,在这个网络中有交 ...

最新文章

  1. 动态加载用户控件的怪问题
  2. bd5.2 Django
  3. UVa LA 4253 UVa 1421 Archery 枚举,状态削减,oj错误题目 难度: 1
  4. 在HTML中,如何设置新窗口打开和在原窗口打开
  5. 二叉查找树的先序遍历,中序遍历,后序遍历
  6. 新的公司:Dendrite
  7. 语言模拟蒲丰问题_R语言小数定律的保险业应用:泊松分布模拟索赔次数
  8. fadeToggle()
  9. UE4: 学习虚幻引擎4的16条准则
  10. 华三 h3c 基于IP子网的vlan
  11. 互联网中B端客户和C端客户的区别
  12. 计算机bios设置系统安装教程,z590主板装win7系统及bios设置教程(支持11代cpu驱动)...
  13. 安卓车机系统adb shell cmd 源码原理分析
  14. Oracle-PL/SQL-Developer-数据从服务器迁移至本地
  15. 神经网络正向与反向传播
  16. 快租车app——需求分析心得
  17. solo 电路 耳放_自己焊的一个耳放(参考solo)
  18. PTA 7-75 正方体表面积计算
  19. Matlab中ind2rgb函数用法
  20. SAP BW: 小生长谈Delta - 1 (CDC)

热门文章

  1. Ubuntu 16.04升级Linux内核为4.7.0最快的方法
  2. UAC绕过思路(未完)
  3. java http get和post请求
  4. ap_invoice_distributions_all到xla_ae_lines
  5. 山东建筑大学校内购物网(SdaiBuy.com )V1.2 Beta
  6. Linux shell中2>1的含义
  7. 利用zabbix自动发现监控mongo数据库
  8. Ubuntu赋予普通用户特定目录权限
  9. Dell R720服务器安装Ubuntu 16.04 Server 版步骤
  10. 38个MySQL数据库的小技巧