单片机指令扩展方法与系统的制作方法

文档序号:8298871阅读:128来源:国知局
单片机指令扩展方法与系统的制作方法
【技术领域】
[0001] 本发明涉及单片机技术领域,特别是涉及单片机指令扩展方法与系统。
【背景技术】
[0002] 单片机,全称单片微型计算机,又称微控制器,是把中央处理器、存储器、定时/计 数器、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电 脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优 点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。
[0003] 为了满足人们不断的需求,科研人员研制出一些运算能力较强的单片机,例如现 有的8051单片机,现在的单片机应用解决方案,实现的功能越来越多,流程控制越来越复 杂,数据的位数也相应地变得越来越大,为此,解决多位数数据操作的问题变得越来越迫 切,在现有解决方案中,无一不以增加指令数量的方法来分解多位数据操作,这将导致代码 空间的利用率降低和时间开销的增加,严重制约单片机运行效率进一步提高。

【发明内容】

[0004] 基于此,有必要针对一般单片机指令扩展方法制约单片机运行效率进一步提高的 问题,提供一种能够促进单片机运行效率进一步提高的单片机指令扩展方法与系统。
[0005] -种单片机指令扩展方法,包括步骤:
[0006] 遍历单片机中汇编指令集,识别单片机汇编指令集中已被使用的指令集和未被使 用的指令集;
[0007] 确定所述单片机汇编指令集中未被使用的指令集占用空间;
[0008] 在所述单片机汇编指令集中未被使用的指令占用集空间中,设计处理16位数据 的指令,获得16位扩展指令;
[0009] 通过宏定义的方式,将所述已被使用的指令集和所述16位扩展指令整合,获得整 合的汇编指令集,其中,所述整合的汇编指令集为机器码形式的指令集。
[0010] 一种单片机指令扩展系统,包括:
[0011] 识别模块,用于遍历单片机中汇编指令集,识别单片机汇编指令集中已被使用的 指令集和未被使用的指令集;
[0012] 空间确定模块,用于确定所述单片机汇编指令集中未被使用的指令集占用空间;
[0013] 处理模块,用于在所述单片机汇编指令集中未被使用的指令占用集空间中,设计 处理16位数据的指令,获得16位扩展指令;
[0014] 整合模块,用于通过宏定义的方式,将所述已被使用的指令集和所述16位扩展指 令整合,获得整合的汇编指令集,其中,所述整合的汇编指令集为机器码形式的指令集。
[0015] 本发明单片机指令扩展方法与系统,识别单片机汇编指令集中已被使用的指令集 和未被使用的指令集,明确单片机汇编指令集中未被使用的指令集占用空间,在未被使用 的指令占用集空间中,设计处理16位数据的指令,获得16位扩展指令,通过宏定义的方式, 将已被使用的指令集和16位扩展指令整合,获得整合的汇编指令集。本发明单片机指令扩 展方法提出的16位指令扩展方法,提供了一种针对多位数据的指令优化方法,不需要增加 更多的指令去分解操作,指令执行周期也缩短到1个周期,同时提高了代码空间的使用效 率和执行效率,能在不更换16位CPU的情况下满足需求,节省了成本,同时提高了8位CPU 的多位数据处理能力,能够有效促进单片机运行效率进一步提高。
【附图说明】
[0016]图1为本发明单片机指令扩展方法第一个实施例的流程示意图;
[0017] 图2为本发明单片机指令扩展方法第二个实施例的流程示意图;
[0018]图3为本发明单片机指令扩展系统第一个实施例的结构示意图;
[0019]图4为本发明单片机指令扩展系统第二个实施例的结构示意图。
【具体实施方式】
[0020] 为了使本发明的目的、技术方案及优点更加清楚明白,以下根据附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施仅仅用以解释本发明,并不 限定本发明。
[0021] 现在的单片机应用解决方案,实现的功能越来越多,流程控制越来越复杂,数据的 位数也相应地变得越来越大,为此,解决多位数数据操作的问题变得越来越迫切,在现有解 决方案中,无一不以增加指令数量的方法来分解多位数据操作,这将导致代码空间的利用 率降低和时间开销的增加。为了让多位数据的操作变得简单,而且在不增加指令数量和时 间开销的情况下,设计专门处理多位数据的快速指令成为新的需求,本发明单片机指令扩 展方法与系统以此需求为目的,实现指令集的扩展。
[0022] 如图1所示,一种单片机指令扩展方法,包括步骤:
[0023] S100:遍历单片机中汇编指令集,识别单片机汇编指令集中已被使用的指令集和 未被使用的指令集。
[0024] 在现有51内核的汇编指令集当中,对于整个指令空间(最多256条指令),仅使用 了 111条指令的位置,其中,已经包括了 :数据传送指令、逻辑运算指令、算术运算指令和转 移指令等基本指令,其余的空间为保留的指令而未被使用,日后留给扩展使用。为了充分利 用这些可以扩展的空间,在这里,需要对单片机中所有的汇编指令集进行识别,区分其中已 被使用的指令集和未被使用的指令集。非必要的,步骤S100在公开的51指令集内便可查 找完成,确定扩展空间为设计前的第一步,根据经典51内核指令集地址空间存在保留扩展 的空间。
[0025] S200 :确定所述单片机汇编指令集中未被使用的指令集占用空间。
[0026] 在区分出单片机中所有的汇编指令集中已被使用的指令集和未被使用的指令集 后,需要明确未被使用指令集所占据的空间,以便在这些未被使用的空间中进行指令扩展。
[0027] S300 :在所述单片机汇编指令集中未被使用的指令占用集空间中,设计处理16位 数据的指令,获得16位扩展指令。
[0028] 设计处理16位数据的指令的过程可以理解为:同时修改单片机中译码单元以使 让译码单元根据新指令翻译出新操作,修改单片机中执行单元,以使执行单元识别新造作 并完成实际的执行。译码模块用于,完成新增指令机器码的翻译,在指令集地址空间里翻译 出对应的操作,执行模块用于,执行新增操作,完成16位的各种操作,加减乘除法的执行。
[0029] 相同于8位数据的处理,同样地,专门设计处理16位数据的指令,非必要的,其中 包含里基本操作:数据传送指令、逻辑运算指令和算术运算指令,以下列举了部分指令。
[0030] 具体设计类型请见下述表1
[0031]表1
【主权项】
1. 一种单片机指令扩展方法,其特征在于,包括步骤: 遍历单片机中汇编指令集,识别单片机汇编指令集中已被使用的指令集和未被使用的 指令集; 确定所述单片机汇编指令集中未被使用的指令集占用空间; 在所述单片机汇编指令集中未被使用的指令占用集空间中,设计处理16位数据的指 令,获得16位扩展指令; 通过宏定义的方式,将所述已被使用的指令集和所述16位扩展指令整合,获得整合的 汇编指令集,其中,所述整合的汇编指令集为机器码形式的指令集。
2. 根据权利要求1所述的单片机指令扩展方法,其特征在于,所述通过宏定义的方式, 将所述已被使用的指令集和所述16位扩展指令整合,获得整合的汇编指令集之后还有步 骤: 编译所述整合的汇编指令集,以生成与所述整合的汇编指令集相对应的新增指令,当 编译正常通过时,将所述整合的汇编指令集和所述与整合的汇编指令集相对应的新增指令 发布。
3. 根据权利要求1所述的单片机指令扩展方法,其特征在于,所述通过宏定义的方式, 将所述已被使用的指令集和所述16位扩展指令整合,获得整合的汇编指令集之后还有步 骤: 存储所述整合的汇编指令集。
4. 根据权利要求1或2或3所述的单片机指令扩展方法,其特征在于,所述16位数据 的指令包括数据传送指令、逻辑运算指令和算术运算指令。
5. 根据权利要求4所述的单片机指令扩展方法,其特征在于, 所述数据传送指令包括16位转送指令; 所述逻辑运算指令包括16位加法指令、16位减法指令、第一 16位乘法指令和第二16 位乘法指令; 所述算术运算指令包括16位与操作指令、16位或操作指令、16位异或操作指令、16位 逻辑右移指令和16位逻辑左移指令。
6. -种单片机指令扩展系统,其特征在于,包括: 识别模块,用于遍历单片机中汇编指令集,识别单片机汇编指令集中已被使用的指令 集和未被使用的指令集; 空间确定模块,用于确定所述单片机汇编指令集中未被使用的指令集占用空间; 处理模块,用于在所述单片机汇编指令集中未被使用的指令占用集空间中,设计处理 16位数据的指令,获得16位扩展指令; 整合模块,用于通过宏定义的方式,将所述已被使用的指令集和所述16位扩展指令整 合,获得整合的汇编指令集,其中,所述整合的汇编指令集为机器码形式的指令集。
7. 根据权利要求6所述的单片机指令扩展系统,其特征在于,还包括: 编译模块,用于编译所述整合的汇编指令集,以生成与所述整合的汇编指令集相对应 的新增指令,当编译正常通过时,将所述整合的汇编指令集和所述与整合的汇编指令集相 对应的新增指令发布。
8. 根据权利要求7所述的单片机指令扩展系统,其特征在于,还包括: 存储模块,用于存储所述整合的汇编指令集。
9. 根据权利要求6或7或8所述的单片机指令扩展系统,其特征在于,所述16位数据 的指令包括数据传送指令、逻辑运算指令和算术运算指令。
10. 根据权利要求9所述的单片机指令扩展系统,其特征在于, 所述数据传送指令包括16位转送指令; 所述逻辑运算指令包括16位加法指令、16位减法指令、第一 16位乘法指令和第二16 位乘法指令; 所述算术运算指令包括16位与操作指令、16位或操作指令、16位异或操作指令、16位 逻辑右移指令和16位逻辑左移指令。
【专利摘要】本发明提供一种单片机指令扩展方法与系统,识别单片机汇编指令集中已被使用的指令集和未被使用的指令集,明确单片机汇编指令集中未被使用的指令集占用空间,在未被使用的指令占用集空间中,设计处理16位数据的指令,获得16位扩展指令,通过宏定义的方式,将已被使用的指令集和16位扩展指令整合,获得整合的汇编指令集。整个过程,提供了一种针对多位数据的指令优化方法,不需要增加更多的指令去分解操作,指令执行周期也缩短到1个周期,同时提高了代码空间的使用效率和执行效率,能在不更换16位CPU的情况下满足需求,节省了成本,同时提高了8位CPU的多位数据处理能力,能够有效促进单片机运行效率进一步提高。
【IPC分类】G06F9-44
【公开号】CN104615443
【申请号】CN201510090287
【发明人】蔡秉铨
【申请人】珠海市杰理科技有限公司
【公开日】2015年5月13日
【申请日】2015年2月27日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1