微控制单元管理系统及方法及其转换电路与计算机程序产品的制作方法

文档序号:6505290阅读:179来源:国知局
微控制单元管理系统及方法及其转换电路与计算机程序产品的制作方法
【专利摘要】本发明公开了一种适用于一8位微控制单元的微控制单元管理系统及方法及其转换电路与计算机程序产品。微控制单元管理系统包括一程序内存与一转换电路。程序内存具有至少一特定尺寸的内存空间。转换电路包括一程序计数器与一控制单元。控制单元依据一指令集的长度决定程序计数器的一数值,且依据程序计数器的数值读取程序内存中相应指令集的指令集数据,并将指令集数据提供给8位微控制单元。
【专利说明】微控制单元管理系统及方法及其转换电路与计算机程序产口叩

【技术领域】
[0001]本发明有关于一种微控制单兀管理系统及方法,且特别有关于一种适用于一 8位微控制单元的微控制单元管理系统及方法,其中通过8位微控制单元与程序内存间转换电路的设计可以提升8位微控制单元的执行效率。

【背景技术】
[0002]近年来,随着科技的发展,各式各样具有各类型功能的电子装置已经成为现代人生活中重要的必备品之一。在每一电子装置中,必然存在用以执行不同功能与应用的微控制单元。为了应付各式各样的应用与需求,厂商也积极开发具有不同处理能力及效率的微控制单元。
[0003]一般来说,有些8位微控制单元,如MCS-51系列的微控制单元(含8051,8031,8052,8032,8751等)的指令集长度是可变的。以8051微控制单元为例,8051微控制单元是在工业中经常被使用的8位微控制单元。传统标准型8051微控制单元的一个机器周期(machine cycle)是12个时钟脉冲(clock)。由于效能不好,为改善传统标准型8051微控制单元的效能,Turbo 8051微控制单元被开发出来,其中此Turbo 8051微控制单元的一个机器周期是4个时钟脉冲。由于其效能仍然不够好,为改善其效能,Twin Turbo 8051微控制单元被开发出来,Twin Turbo 8051微控制单元的一个机器周期是I个时钟脉冲。
[0004]由于8051微控制单元是一个指令集长度有I个字节,2个字节和3个字节的微控制单元。而一般8051的微控制单元的程序内存的数据总线只有I个字节(8位)。因此,SP使I个时钟脉冲就可以完成的指令,受限于指令集长度并非是I个字节,此指令无法在I个时钟脉冲内完成。举例来说,“INC A”的指令尺寸为I字节,因此于I个时钟脉冲完成。"M0VA, #20”的指令尺寸为2字节。虽然此指令的动作简单,仍然需要2个时钟脉冲完成。”MOV75,#30”的指令尺寸为3字节。虽然此指令的动作简单,仍然需要3个时钟脉冲完成。
[0005]即使不能于一个时钟脉冲就可以完成的指令,受限于指令集长度并非I个字节,也有可能需要更多的时钟脉冲才能完成。举例来说,“LJMP Loop”的指令尺寸为3字节。此指令本来只要2个时钟脉冲就可完成,却因为指令集长度为3字节,因此需要至少3个时钟脉冲才能完成。


【发明内容】

[0006]有鉴于此,本发明提供适用于一 8位微控制单元的微控制单元管理系统及方法,其中通过8位微控制单元与程序内存间转换电路的设计可以提升8位微控制单元的执行效率。
[0007]本发明实施例的一种适用于一 8位微控制单元的微控制单元管理系统。该系统包括一程序内存与一转换电路。程序内存具有至少一特定尺寸的内存空间;转换电路包括一程序计数器与一控制单元。控制单元依据一指令集的长度决定程序计数器的一数值,且依据程序计数器的数值读取程序内存中相应指令集的指令集数据,并将指令集数据提供给8位微控制单元。
[0008]本发明实施例的一种适用于一 8位微控制单元的微控制单元管理方法,首先,依据一指令集的长度决定一程序计数器的一数值。依据程序计数器的数值读取一程序内存中相应指令集的指令集数据,其中程序内存具有至少一特定尺寸的内存空间;之后,将指令集数据提供给8位微控制单元。
[0009]本发明实施例的一种微控制单元转换电路包括一程序计数器及一控制单元,控制单元依据一指令集的长度决定程序计数器的一数值,且依据程序计数器的数值由一程序内存中读取相应指令集的指令集数据,其中程序内存具有至少一特定尺寸的内存空间;之后,控制单元将指令集数据提供给一 8位微控制单元。
[0010]在一些实施例中,系统还包括一程序内存数据总线,用以连接程序内存与转换电路;其中程序内存数据总线具有特定尺寸的位宽度。
[0011]在一些实施例中,8位微控制单元支持I字节、2字节及3字节的可变指令集长度,且转换电路一次将相应指令集的指令集数据提供给8位微控制单元。
[0012]在一些实施例中,特定尺寸大于I字节。
[0013]在一些实施例中,特定尺寸为3字节。
[0014]在一些实施例中,特定尺寸为2η字节,其中η兰2。
[0015]本发明的微控制单元管理系统及方法其效果能藉由8位微控制单元与程序内存间的转换电路完成有效率的指令集数据存取,以提升8位微控制单元的执行效率。
[0016]本发明上述方法可以通过程序代码方式存在。当程序代码被机器加载且执行时,机器变成用以实行本发明的装置。
[0017]为使本发明的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合所附图示,详细说明如下。

【专利附图】

【附图说明】
[0018]图1为一示意图以显示依据本发明实施例的微控制单元管理系统。
[0019]图2为一示意图以显示依据本发明实施例的程序内存与转换电路间的程序内存数据总线。
[0020]图3为一示意图以显示依据本发明实施例的转换电路。
[0021]图4为一流程图以显示依据本发明实施例的微控制单元管理方法。
[0022]图5为一示意图以显示公知8051微控制单元使用I字节程序内存的指令执行情况。
[0023]图6为一示意图以显示本发明中8051微控制单元使用4字节程序内存的指令执行情况。
[0024]主要附图标记
[0025]100?微控制单元管理系统;
[0026]110?程序内存;
[0027]120?转换电路;
[0028]122?程序计数器;
[0029]124?控制单元;
[0030]130?8位微控制单元;
[0031]200?程序内存数据总线;
[0032]S410、S420、S430 ?步骤。

【具体实施方式】
[0033]图1显示依据本发明实施例的微控制单元管理系统。如图1所示,依据本发明实施例的微控制单兀管理系统100包括一程序内存110、一转换电路120及一 8位微控制单兀130。
[0034]注意的是,程序内存110具有至少一特定尺寸的内存空间。在一些实施例中,此特定尺寸至少大于I字节。在一些实施例中,特定尺寸可以等于8位微控制单元130所支持的最大指令集长度,如3字节。在一些实施例中,为了实际操作上的考虑,特定尺寸可以是2η字节,其中η 3 2。程序内存110与转换电路120间可以具有一程序内存数据总线200,用以连接程序内存110与转换电路120,如图2所示。值得注意的是,在一些实施例中,程序内存数据总线200可以具有前述特定尺寸的位宽度。
[0035]图3显示依据本发明实施例的转换电路。转换电路120可以包括一程序计数器122与一控制单元124。程序计数器122可以记录一数值,其用以表示将由程序内存110中读取相关数据的位置。在一些实施例中,程序计数器122可以通过硬件、韧体、和/或软件来实际操作。控制单元124可以依据一指令集的长度决定程序计数器122的一数值,且依据程序计数器122的数值读取程序内存110中相应指令集的指令集数据,并将指令集数据提供给8位微控制单元130。
[0036]在一些实施例中,8位微控制单元130可以支持I字节、2字节、及3字节的可变指令集长度。在一些实施例中,8位微控制单元130可以是MCS-51系列的微控制单元,如8051、8031、8052、8032、8751等微控制单元。必须说明的是,前述8位微控制单元仅为本发明的例子,本发明并不限定于此。任何支持可变指令集长度的8位微控制单元皆可应用至本发明。必须说明的是,由于程序内存数据总线200可以具有前述特定尺寸的位宽度,转换电路120可以一次将相应一个指令集的指令集数据提供给8位微控制单元130。
[0037]图4显示依据本发明实施例的微控制单元管理方法。依据本发明实施例的微控制单元管理方法适用于一 8位微控制单元。
[0038]首先,如步骤S410,依据一指令集的长度决定一程序计数器的一数值。值得注意的是,在一些实施例中,指令集长度可以是I字节、2字节或3字节。程序计数器的数值用以表示将由一程序内存中读取相关数据的位置。在一些实施例中,程序计数器可以通过硬件、韧体和/或软件来实际操作。如步骤S420,依据程序计数器的数值读取程序内存中相应指令集的指令集数据。注意的是,程序内存具有至少一特定尺寸的内存空间。在一些实施例中,此特定尺寸至少大于I字节。在一些实施例中,特定尺寸可以等于8位微控制器所支持的最大指令集长度,如3字节。在一些实施例中,为了实际操作上的考虑,特定尺寸可以是2η字节,其中η 3 2。此外,程序内存可以具有一程序内存数据总线。在一些实施例中,程序内存数据总线可以具有前述特定尺寸的位宽度。当由程序内存取得指令集数据之后,如步骤S430,将指令集数据提供给8位微控制单元。注意的是,8位微控制单元可以支持I字节、2字节及3字节的可变指令集长度。在一些实施例中,8位微控制单元130可以是MCS-51系列的微控制单元,如8051、8031、8052、8032、8751等微控制单元。类似地,前述8位微控制单元仅为本发明的例子,本发明并不限定于此。任何支持可变指令集长度的8位微控制单元皆可应用至本发明。必须说明的是,由于程序内存数据总线可以具有前述特定尺寸的位宽度,相应一个指令集的指令集数据可以一次地被提供给8位微控制单元。
[0039]举例来说,8051微控制单元的汇编语言如下:
[0040]ADD A, #52 *2 字节指令
[0041]MOV 50, #60 *3 字节指令
[0042]LJMP LABELO *3 字节指令
[0043]LABELO INC A *1 字节指令
[0044]图5显示公知8051微控制单元使用I字节程序内存的指令执行情况。此外,图6显示本发明中8051微控制单元使用4字节程序内存的指令执行情况。由图5和图6的差异,可以看出本发明对于8051微控制单元执行效能的提升,其中,相应一个指令集的指令集数据可以一次地被提供给8位微控制单元,以在一个机器周期内执行。
[0045]因此,通过本发明的微控制单元管理系统及方法及其转换电路可以通过8位微控制单元与程序内存间转换电路的设计完成有效率的指令集数据存取,以提升8位微控制单元的执行效率。
[0046]本发明的方法,或特定型态或其部份,可以以程序代码的型态存在。程序代码可以包含于实体媒体,如软盘、光盘片、硬盘或是任何其它机器可读取(如计算机可读取)储存媒体,亦或不限于外在形式的计算机程序产品,其中,当程序代码被机器(如计算机)加载且执行时,此机器变成用以参与本发明的装置。程序代码也可以通过一些传送媒体,如电线或电缆、光纤或是任何传输型态进行传送,其中,当程序代码被机器(如计算机)接收、加载且执行时,此机器变成用以参与本发明的装置。当在一般用途处理单元实际操作时,程序代码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
[0047]虽然本发明已以较佳实施例公开如上,然其并非用以限定本发明,任何熟悉此项技术的人员,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当以附属的权利要求所界定的范围为准。
【权利要求】
1.一种微控制单元管理系统,适用于一 8位微控制单元,包括: 一程序内存,具有至少一特定尺寸的内存空间;以及 一转换电路,包括一程序计数器与一控制单元,用以依据一指令集的长度决定该程序计数器的一数值,且依据该程序计数器的该数值读取该程序内存中相应该指令集的指令集数据,并将该指令集数据提供给该8位微控制单元。
2.根据权利要求1所述的微控制单元管理系统,还包括一程序内存数据总线,用以连接该程序内存与该转换电路,其中该程序内存数据总线具有该特定尺寸的位宽度。
3.根据权利要求1所述的微控制单元管理系统,其中该8位微控制单元支持I字节、2字节、及3字节的可变指令集长度,且该转换电路一次将相应该指令集的该指令集数据提供给该8位微控制单元。
4.根据权利要求1所述的微控制单元管理系统,其中该特定尺寸大于I字节。
5.根据权利要求1所述的微控制单元管理系统,其中该特定尺寸为3字节。
6.根据权利要求1所述的微控制单元管理系统,其中该特定尺寸为2η字节,其中η芎2。
7.一种微控制单元转换电路,包括: 一程序计数器; 一控制单元,用以依据一指令集的长度决定该程序计数器的一数值,且依据该程序计数器的该数值由一程序内存中读取相应该指令集的指令集数据,并将该指令集数据提供给一 8位微控制单元,其中该程序内存具有至少一特定尺寸的内存空间。
8.一种微控制单元管理方法,适用于一 8位微控制单元,包括下列步骤: 依据一指令集的长度决定一程序计数器的一数值; 依据该程序计数器的该数值读取一程序内存中相应该指令集的指令集数据,其中该程序内存具有至少一特定尺寸的内存空间;以及将该指令集数据提供给该8位微控制单元。
9.根据权利要求8所述的微控制单元管理方法,其中该程序内存通过一程序内存数据总线与权利要求7所述的微控制单元转换电路连接,其中该程序内存数据总线具有该特定尺寸的位宽度。
10.根据权利要求8所述的微控制单元管理方法,其中该8位微控制单元支持I字节、2字节及3字节的可变指令集长度,且该转换电路一次将相应该指令集的该指令集数据提供给该8位微控制单元。
11.根据权利要求8所述的微控制单元管理方法,其中该特定尺寸大于I字节。
12.根据权利要求8所述的微控制单元管理方法,其中该特定尺寸为3字节。
13.根据权利要求8所述的微控制单元管理方法,其中该特定尺寸为2η字节,其中η芎2。
14.一种计算机程序产品,用以被一机器载入且执行一微控制单元管理方法,该计算机程序产品包括: 一第一程序码,用以依据一指令集的长度决定一程序计数器的一数值; 一第二程序码,用以依据该程序计数器的该数值读取一程序内存中相应该指令集的指令集数据,其中该程序内存具有至少一特定尺寸的内存空间;以及一第三程序码,用以将该指令集数据提供给一 8位微控制单元。
【文档编号】G06F9/22GK104281436SQ201310275083
【公开日】2015年1月14日 申请日期:2013年7月2日 优先权日:2013年7月2日
【发明者】庄世任 申请人:庄世任
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1