专利名称:可提升资料存取效率的微控制器结构的制作方法
技术领域:
本发明是有关微控制器的技术领域,尤指一种藉由减少程序中须修改资料区段暂存器的次数以提升资料存取效率的微控制器结构。
习知的存储器储存资料的方式是将一个资料的真正存储器地址分为存储器区段地址(Segment)和存储器偏移地址(Offet)两部分,以减少在指定资料地址时所需要的地址位数目,降低程序码的大小以及微处理机设计时的复杂度,而将存储器分成适当的区段也可以加快存储器的解码速度,减少存取所需的时间。
而对微控制器的存取资料的方式而言,参照图3所示,由于资料的地址包含两部分资料区段地址及资料偏移地址,因此,当微控制器执行其指令暂存器31中的指令而要存取一笔资料的时候,必需要参考资料区段地址暂存器32的内容并加上资料偏移地址才能计算出资料的真正存储器地址,以透过地址总线34来对存储器定址,而如以直接定址(Direct Addressing)的存取模式为例,该资料偏移地址是存放于一资料偏移暂存器33,因此,微控制器需要参考两次暂存器的值,一次参考指定的资料区段地址,一次参考资料的偏移地址,才能计算出资料真正的存储器地址并加以存取,而在程序码上需要根据资料所在不同区段事先设定资料区段地址,此将导致微控制器执行速度的变慢。
又一般微控制器所使用的存储器可分为随机存取存储器(RAM)及唯读存储器(ROM)两部分,并分别置于不同的存储器区段,习惯上通常会将RAM置于第零区段而将ROM置于非零区段,且当微控制器在执行时会将常用的变数及资料存放在RAM中,语音资料及其他表格资料则会存放在ROM中,因此程序执行时会常在不同的区段中切换,由于资料区段的切换需在程序码中加入设定资料区段指令,因此需要多余的指令周期及程序码才能完成,而使得程序执行的效率降低,故而前述的微控制器结构实有予以改进的必要。
创作人爰因于此,本于积极创新的精神,亟思一种可以解决上述问题的“可提升资料存取效率的微控制器结构”,几经研究实验终至完成此项新颖进步的创作。
本发明的一目的是在提供一种可提升资料存取效率的微控制器结构,是藉由减少程序中须修改资料区段暂存器的次数以提升资料存取的效率。
本发明的另一目的是在提供一种可提升资料存取效率的微控制器结构,其可减少设定资料区段所需的指令码及执行周期,而达到减少程序码的大小并提升整体运算速度功效。
为达前述的目的,本发明的微控制器结构主要是由指令暂存器、资料区段暂存器、地址产生单元及偏移地址来产生存取存储器的实际地址,该指令暂存器是用以保持微控制器所要执行的指令,且该指令暂存器其有一资料区段参考位,该资料区段暂存器是用以存放资料区段位地址,该地址产生单元是依据该资料区段参考位而由该资料区段地址与该偏移地址来产生实际的地址,其中,当该资料区段参考位为第一逻辑状态时,该实际的地址是为该偏移地址,而当该资料区段参考位为第二逻辑状态时,该实际的地址是为该资料区段地址与该偏移地址的结合。
其中该地址产生单元包括一串加器,其是将该资料区段地址与该偏移地址予以结合以获得一结合地址;以及一第一多工器,其是由该资料区段参考位所控制,以由该偏移地址及该结合地址选择其中之一,据以提供为实际的地址。
其中该第一逻辑状态为逻辑0,该第二逻辑状态为逻辑1。
其中该偏移地址是来自一资料偏移暂存器。
其中还包含多数个工作暂存器,是供微处理器执行指令时使用;以及一第二多工器,其是由该指令暂存器所控制,以由该多数个工作暂存器选择其中之一,据以提供该偏移地址。
其中该指令暂存器提供复数个位来控制该第二多工器以选择一工作暂存器。
由于本发明设计新颖,能提供产业上利用,且确有增进功效,故依法申请专利。
为使贵审查委员能进一步了解本发明的结构、特征及其目的,兹附以图式及较佳具体实施例的详细说明如后,其中
图1是本发明的可提升资料存取效率的微控制器结构的功能方块图。
图2是显示本发明的可提升资料存取效率的微控制器结构的一具体实施范例。
图3是为习知的微控制器结构的功能方块图。
有关本发明的可提升资料存取效率的微控制器结构的一较佳实施例,请先参照图1所示,其主要是藉由指令暂存器11、资料区段暂存器12、地址产生单元13及一偏移地址来产生存取存储器的实际地址,以经由地址总线14来对存储器定址,其中,该指令暂存器11是用以保持微控制器所要执行的指令,该资料区段暂存器12是用以存放资料区段地址。
该指令暂存器11具有一资料区段参考位111,以经由微控制器的指令格式中对此资料区段参考位111的设定,可标明需不需要参考资料区段暂存器12的值以计算资料的真正地址。
该地址产生单元13则是依据该资料区段参考位11的设定,以由该资料区段暂存器12与该偏移地址来产生实际的地址,而可藉由减少程序中须修改资料区段暂存器12的次数来提升资料存取的效率,亦即,当执行指令所要存取的资料位于存储器的第零个区段时,可将资料区段参考位111设为0,故当微控制器执行该指令时,不需要参考资料区段暂存器12的内容及作地址的加法运算,即可直接根据资料的偏移地址来存取资料,而在程序码中便不需事先设定资料区段暂存器12的值,并可视需要在之后的程序码中再修改回原来的值,如此即可节省程序码的空间并减少设定资料区段时所须的指令周期浪费,而能加快程序执行速度。
而当执行指令所要存取的资料位于存储器的其他区段时,该资料区段参考位111将被设为1,以当微控制器执行该指令时,会依照一般的地址产生方式,参考资料区段暂存器12的内容并加上资料偏移地址,而计算出资料真正的存储器地址来存取资料,另在程序码中仍需先设定资料区段地址,以便正确存取资料。
前述本发明的可提升资料存取效率的微控制器结构的一具体实施范例是如图2所示,其是为一16位的微控制器结构,内含有八个16位的工作暂存器25、一个16位的指令暂存器21及一6位的资料区段暂存器22,其指令的格式可设计为RD=RDalu_op{DS}[RS];其中,alu_op是代表指令的种类,例如可为sub、sbc、adc、add、cmp、and、or、xor、load、neg、store等一般常见的运算,RD、RS及DS分别为指令执行时所使用的目标暂存器、来源暂存器及资料区段。而前述的指令格式所对应的机械码是为
其中,第0-2位是用以指定来源暂存器,第9-B位是用以指定目标暂存器,第5位则是用以设定该资料区段参考位111,而其他位是可用以指定指令运算的种类。
由于本发明的微控制器结构范例内含有八个工作暂存器25,因此,指令格式需要3个位(例如RS)来记录参考的暂存器,并以三条位线控制一输入端由该八个工作暂存器25所汇入的多工器26,以由该八个工作暂存器25选择其中之一作为资料偏移暂存器,以便以自该多工器26的输出取得所需的偏移地址。
而该多工器26所输出的偏移地址及该资料区段暂存器22的资料区段地址并汇至一地址产生器23以产生实际的地址,该地址产生器23是由一串加器231及一多工器232所构成,该串加器231是将该6位的资料区段地址与该16位的偏移地址予以结合以获得一22位的结合地址,该结合地址及该偏移地址并汇至该多工器232的输入,而该多工器232是由该指令暂存器21的资料区段参考位211所控制,以由该偏移地址及该结合地址选择其中之一,据以提供为实际的地址而汇至一地址总线24。
而依据前述本发明的微控制器结构范例,对于存取存储器料的指令的程序码可参考以下的范例所示R1=0×100;//存取位于第零个资料区段中的资料R2=[R11];DS=0×01;//存取位于第一个资料区段中的资料R1=0×200;R=R2+DS:[R1];R1=0×101;//存取位于第一个资料区段中的资料R2=[R1];其中,DS代表资料区段,R1及R2为工作暂存器,程序码R2=[R1]是用以存取资料区段0中的R1偏移地址的资料,而资料区段参考位为0,另程序码R2=R2+DS:[R1]是用以存取资料区段DS中的R1偏移地址的资料,而资料区段参考位为1。
由以上的实际范例可知,微控制器在每一次非零区段的资料存取都少了二次资料区段暂存器22的设定,故可有效地提高程序的效率,且根据上述的特性,可将常用到的资料放在第零个存储器区段,而将不常用到的资料放在非零的存储器区段,如此在程序码中存取这些资料并作运算的时候,能够大量的减少设定资料区段所需的指令码及执行周期,而达到减少程序码的大小并提升整体运算速度的卓越功效。
综上所陈,本发明无论就目的、手段及功效,在在均显示其迥异于习知技术的特征,为微控制器制作上的一大突破,恳请贵审查委员明察,早日赐准专利,以便嘉惠社会,实感德便。惟应注意的是,上述实施例仅是为了便于说明而举例而已,例如所述先将资料偏移地址储存于暂存器中,再透过暂存器内容存取资料,为一直接定址存取模式,但本发明不限于此,只要是任何存取存储器中资料的指令均可应用,因此,本发明所主张的权利范围自应以申请专利范围所述为准,而非仅限于上述实施例。
权利要求
1.一种可提升资料存取效率的微控制器结构,其特征在于,主要包括一指令暂存器,是用以保持微控制器所要执行的指令,其中该指令暂存器具有一资料区段参考位;一资料区段暂存器,是用以存放资料区段地址以及一地址产生单元,其是依据该资料区段参考位而由该资料区段地址与一偏移地址来产生实际的地址,其中,当该资料区段参考位为第一逻辑状态时,该实际的地址是为该偏移地址,而当该资料区段参考位为第二逻辑状态时,该实际的地址是为该资料区段地址与该偏移地址的结合。
2.根据权利要求1所述的可提升资料存取效率的微控制器结构,其特征在于,其中该地址产生单元包括一串加器,其是将该资料区段地址与该偏移地址予以结合以获得一结合地址;以及一第一多工器,其是由该资料区段参考位所控制,以由该偏移地址及该结合地址选择其中之一,据以提供为实际的地址。
3.根据权利要求2所述的可提升资料存取效率的微控制器结构,其特征在于,其中该第一逻辑状态为逻辑0,该第二逻辑状态为逻辑1。
4.根据权利要求2所述的可提升资料存取效率的微控制器结构,其特征在于,其中该偏移地址是来自一资料偏移暂存器。
5.根据权利要求2所述的可提升资料存取效率的微控制器结构,其特征在于,还包含多数个工作暂存器,是供微处理器执行指令时使用;以及一第二多工器,其是由该指令暂存器所控制,以由该多数个工作暂存器选择其中之一,据以提供该偏移地址。
6.根据权利要求5所述的可提升资料存取效率的微控制器结构,其特征在于,其中该指令暂存器提供复数个位来控制该第二多工器以选择一工作暂存器。
全文摘要
本发明是为一种可提升资料存取效率的微控制器结构,其主要是由指令暂存器、资料区段暂存器、地址产生单元及偏移地址来产生存取存储器的实际地址,该指令暂存器具有一资料区段参考位,该地址产生单元是依据该资料区段参考位而决定是否参考该资料区段暂存器的内容来产生实际的地址,藉以减少程序中须修改资料区段暂存器的次数,而有效改善资料存取的效率。
文档编号G06F9/22GK1304086SQ99126040
公开日2001年7月18日 申请日期1999年12月13日 优先权日1999年12月13日
发明者刘德忠, 李育柱, 李桓瑞 申请人:凌阳科技股份有限公司