数据堆栈存储电路及微控制器的制作方法

文档序号:6599141阅读:170来源:国知局
专利名称:数据堆栈存储电路及微控制器的制作方法
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据堆栈存储电路及微控制器。
背景技术
堆栈的进栈与出栈操作作为一种数据处理方式,在微控制器中被广泛采用。堆栈主要包括程序堆栈和数据堆栈,其中,程序堆栈几乎应所有的微控制器中,主要程序跳转或中断处理时,对当前程序地址的保存及恢复。由于早期较为低端的微控制器需要处理的数据处理量相对较少,而应用程序结构又相对简单,因此很少涉及到数据堆栈。但随着微控制器的广泛应用,以及应用系统复杂度的提升,使得数据处理量和应用程序结构的复杂度增力口,特别是高级语言开发环境的使用,要经常保存和恢复大量的函数变量;在这种情况下, 由于数据堆栈能够方便地实现大量数据的保护和恢复,因此,越来越多的微控制器开始应用数据堆栈,同时对数据堆栈操作方式也在不断改进,以提升保存和恢复大量的函数变量进行效率。图4为现有技术的中低端微控制器的堆栈结构示意图。如图4所示,在现有技术中,对于中低端微控制器,很少采用硬件结构的数据堆栈,而多以片内通用数据存储器作为硬件基础,并通过软件的方式模拟数据堆栈的操作。具体地,将通用数据存储器的一段地址空间的存储器作为数据堆栈;用某个通用数据存储器或寄存器作为堆栈指针,存储当前栈顶的地址,并且所有的进栈与出栈操作都是通过普通的存储器转移或运算指令来完成。在这些中低端微控制器中,由于数据堆栈需占用通用数据存储器的部分数据空间,很难保证该数据堆栈中被保护的数据与该通用数据存储器其他数据的相对独立性。具体地,在执行相关程序而调用该通用数据存储器的其他数据时,很有可能会误操作数据堆栈中的内容, 从而造成数据堆栈中所保护的数据被改写,因此具有上述数据堆栈的低端微控制器构架形式存在数据安全性差的缺点。图5为现有技术的中高端微控制器中的堆栈结构示意图。如图5所示,对于中高端微控制器,则多采用硬件结构的数据堆栈,为独立的数据堆栈存储器。具体地,通过设置读或写控制寄存器所包括的数据堆栈读或写控制位,对读或写缓冲寄存器暂存准备进栈的数据或出栈读出的数据进行操作;由特定的硬件寄存器作为堆栈指针,存储当前栈顶的地址, 以进行进栈或出栈操作。在这些中高端微控制器的数据堆栈相关构架中,由于需通过读或写控制寄存器和读或写缓冲寄存器间接地对数据堆栈进行操作,而使得进栈与出栈操作执行效率不高。

发明内容
本发明提供一种数据堆栈存储电路及微控制器,用以解决现有微控制器中由于需通过读或写控制寄存器和读或写缓冲寄存器间接地对数据堆栈进行操作,而使得进栈与出栈操作执行效率不高的缺陷。本发明提供一种数据堆栈存储电路,其中,包括数据堆栈存储器和数据堆栈控制电路;所述数据堆栈存储器和数据堆栈控制电路相连接;所述数据堆栈存储器连接于数据总线;所述数据堆栈控制电路连接于控制总线;
且数据堆栈控制电路用于根据所述控制总线中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶,或者用于根据所述控制总线中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。本发明提供一种微控制器,包括控制器,其中,还包括数据堆栈存储电路;所述控制器连接于控制总线,且所述控制器用于通过分析进栈指令的操作码,以生成第一控制信号集合并发送至所述控制总线;或者,用于通过分析出栈指令的操作码,以生成第二控制信号集合并发送至所述控制总线;所述数据堆栈存储电路包括数据堆栈存储器和数据堆栈控制电路;所述数据堆栈存储器和数据堆栈控制电路相连接;所述数据堆栈存储器连接于数据总线;所述数据堆栈控制电路连接于所述控制总线;且数据堆栈控制电路用于根据所述第一控制信号集合中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶,或者用于根据所述第二控制信号集合中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。本发明的数据堆栈存储电路及微控制器,通过数据堆栈存储电路所包括的数据堆栈控制电路根据控制总线中的进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器的栈顶,或者根据所控制总线中的出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器的栈顶弹出至数据总线中的技术方案,解决了现有微控制器中由于需通过读或写控制寄存器和读或写缓冲寄存器间接地对数据堆栈进行操作,而使得进栈与出栈操作执行效率不高的缺陷,实现了进栈和出栈操作通过各自所对应的相关指令即可完成的目的,省去了读或写控制寄存器及读或写缓冲寄存器复杂的芯片构架形式,且提高了对数据堆栈进行进栈与出栈操作的执行效率。


图1为本发明数据堆栈存储电路的结构示意图;图2为本发明微控制器实施例一的结构示意图;图3为本发明微控制器实施例二的结构示意图;图4为现有技术的中低端微控制器的堆栈结构示意图;图5为现有技术的中高端微控制器的堆栈结构示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明的技术方案进行描述。图1为本发明数据堆栈存储电路的结构示意图。如图1所示,本实施例的数据堆栈存储电路包括数据堆栈存储器101和数据堆栈控制电路102,该数据堆栈存储器101和数据堆栈控制电路102相连接,其中,数据堆栈存储器101连接于数据总线,数据堆栈控制电路102连接于控制总线,且数据堆栈控制电路102包括进栈控制电路模块1021和出栈控制电路模块1022。其中,数据堆栈存储器101是专用来存放数据,而不是存放程序地址的; 且数据堆栈存储器与程序保护栈、通用数据寄存器堆是相互独立的,对数据堆栈存储器101 的操作需通过进栈指令(在程序语言中可标识为PUSH指令)和出栈指令(在程序语言中可标识为POP指令)来进行,而不能用控制器的普通读写操作来对数据堆栈存储器101进行操作。在进栈操作的过程中,数据堆栈控制电路102中的进栈控制电路模块1021根据控制总线中的进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器101的栈顶,其中已准备好压栈的数据可以为寻址IO 口而获得的数据、中断操作中所需保护的数据或者寻址数据存储器而获得的数据;在出栈操作的过程中,数据堆栈控制电路102中的出栈控制电路模块1022根据控制总线中的出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器101的栈顶弹出至数据总线中。在实际应用中,数据堆栈存储器101可为一个独立的存储器,或者为一个独立的存储器的部分存储空间,或者为至少两个独立的存储器的组合,或者为至少一个独立的存储器和至少一个独立的存储器的部分存储空间的组合,或者为至少两个独立的存储器中部分存储空间的组合。进一步地,本实施例的数据堆栈存储电路还包括硬件堆栈指针103,该硬件堆栈指针103连接于控制总线和数据堆栈存储器101,且硬件堆栈指针103在进栈控制电路模块 1021根据控制总线中的进栈操作信号将数据总线中已准备好压栈的数据压入数据堆栈存储器101的栈顶后,可根据所述控制总线中的硬件堆栈指针加1信号而自行加1 ;或者在出栈控制电路模块1022根据控制总线中的出栈操作信号将已准备好弹栈的数据从数据堆栈存储器101的栈顶弹出至数据总线后,可根据所述控制总线中的硬件堆栈指针减1信号而自行减1。再进一步地,本实施例的数据堆栈存储电路还包括溢出标志寄存器104,该溢出标志寄存器104连接于硬件堆栈指针103,且该溢出标志寄存器104包括上溢标志位1041和下溢标志位1042 ;在进栈操作过程中,通过比较电路将当前的硬件堆栈指针103与上限值进行比较以监测硬件堆栈指针103的状态,当该硬件堆栈指针103从最高地址加1而跳回最低地址时,上溢标志位1041自动置1,且该上限值为数据堆栈存储器101的最高地址;在出栈操作过程中,通过比较电路将当前的硬件堆栈指针103与下限值进行比较以监测硬件堆栈指针103的状态,当该硬件堆栈指针103从最低地址减1而跳回最高地址时,下溢标志位1042自动置1,且该下限值为数据堆栈存储器101的最低地址。本实施例的数据堆栈存储电路,通过数据堆栈控制电路根据控制总线中的进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器的栈顶,或者根据所控制总线中的出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器的栈顶弹出至数据总线中的技术方案,解决了现有微控制器中由于需通过读或写控制寄存器和读或写缓冲寄存器间接地对数据堆栈进行操作,而使得进栈与出栈操作执行效率不高的缺陷,实现了进栈和出栈操作通过各自所对应的相关指令即可完成的目的,省去了读或写控制寄存器及读或写缓冲寄存器复杂的芯片构架形式,且提高了对数据堆栈进行进栈与出栈操作的执行效率图2为本发明微控制器实施例一的结构示意图。如图2所示,本实施例的微控制器包括控制器201和数据堆栈存储电路202,其中,该控制器201连接于控制总线,且控制器 201包括程序存储器、指令寄存器、指令译码器和控制逻辑电路;数据堆栈存储电路202包括数据堆栈存储器101和数据堆栈控制电路102,该数据堆栈存储器101和数据堆栈控制电路102相连接,且数据堆栈存储器101连接于数据总线,数据堆栈控制电路102连接于控制总线,且数据堆栈控制电路102包括进栈控制电路模块1021和出栈控制电路模块1022。 其中,数据堆栈存储器101是专用来存放数据,而不是存放程序地址的;且数据堆栈存储器与程序保护栈、通用数据寄存器堆是相互独立的,对数据堆栈存储器101的操作需通过进栈指令(在程序语言中可标识为PUSH指令)和出栈指令(在程序语言中可标识为POP指令)来进行,而不能用控制器201的普通读写操作来对数据堆栈存储器101进行操作。进一步地,数据堆栈存储电路202还包括硬件堆栈指针103和该溢出标志寄存器104,其中硬件堆栈指针103连接于控制总线和数据堆栈存储器101,该溢出标志寄存器 104连接于硬件堆栈指针103,且溢出标志寄存器104包括上溢标志位1041和下溢标志位 1042 ;在进栈操作过程中,控制器201的指令寄存器从程序存储器读取的进栈指令(在程序语言中可标识为PUSH指令),然后通过指令译码器对指令寄存器中进栈指令所包括的操作码进行译码以生成第一控制信号集合,并由控制逻辑电路通过控制总线发送到相关的模块电路以达到控制的目的,该第一控制信号集合至少包括进栈操作信号和硬件堆栈指针加1信号;数据堆栈控制电路102中的进栈控制电路模块1021根据该进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器101的栈顶,其中已准备好压栈的数据可以为寻址IO 口而获得的数据、中断操作中所需保护的数据或者寻址数据存储器而获得的数据;并且,硬件堆栈指针103在进栈控制电路模块1021根据进栈操作信号将数据总线中已准备好压栈的数据压入数据堆栈存储器101的栈顶后,可根据所述控制总线中的硬件堆栈指针加1信号自行加1,而指向新的栈顶;对于硬件堆栈指针103的每次加1的动作, 都通过比较电路将当前的硬件堆栈指针103与上限值进行比较以监测硬件堆栈指针103的状态,当该硬件堆栈指针103从最高地址加1而跳回最低地址时,上溢标志位1041自动置 1,且该上限值为数据堆栈存储器101的最高地址。在出栈操作过程中,控制器201的指令寄存器从程序存储器读取的出栈指令(在程序语言中可标识为POP指令),然后通过指令译码器对指令寄存器中出栈指令所包括的操作码进行译码以生成第二控制信号集合,并由控制逻辑电路通过控制总线发送到相关的模块电路以达到控制的目的,该第二控制信号集合至少包括出栈操作信号和硬件堆栈指针减ι信号;数据堆栈控制电路102中的出栈控制电路模块1022根据该出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器101的栈顶弹出至数据总线中,并可由第二控制信号集合中的控制信号控制相关电路模块接收该弹出至数据总线的数据;并且,硬件堆栈指针 103在出栈控制电路模块1022根据出栈操作信号将已准备好弹栈的数据从数据堆栈存储器101的栈顶弹出至数据总线后,可根据控制总线中的硬件堆栈指针减1信号自行减1,而指向新的栈顶;对于硬件堆栈指针103的每次减1的动作,都通过比较电路将当前的硬件堆栈指针103与下限值进行比较以监测硬件堆栈指针103的状态,当该硬件堆栈指针103从最低地址减1而跳回最高地址时,下溢标志位1042自动置1,且该下限值为数据堆栈存储器 101的最低地址。在实际应用中,数据堆栈存储器101可为一个独立的存储器,或者为一个独立的存储器的部分存储空间,或者为至少两个独立的存储器的组合,或者为至少一个独立的存储器和至少一个独立的存储器的部分存储空间的组合,或者为至少两个独立的存储器中部分存储空间的组合。本实施例的微控制器,通过数据堆栈存储电路所包括的数据堆栈控制电路根据控制总线中的进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器的栈顶,或者根据所控制总线中的出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器的栈顶弹出至数据总线中的技术方案,解决了现有微控制器中由于需通过读或写控制寄存器和读或写缓冲寄存器间接地对数据堆栈进行操作,而使得进栈与出栈操作执行效率不高的缺陷,实现了进栈和出栈操作通过各自所对应的相关指令即可完成的目的,省去了读或写控制寄存器及读或写缓冲寄存器复杂的芯 片构架形式,且提高了对数据堆栈进行进栈与出栈操作的执行效率。图3为本发明微控制器实施例二的结构示意图。结合图2和图3所示,本实施例的微控制器在上述实施例的基础上还包括地址选择器203和数据存储器204,其中,地址选择器203连接于控制器201、地址总线和控制总线;数据存储器204连接于控制总线、数据总线和地址总线;在本实施例中主要描述寻址数据存储器204的数据,并将该数据压入数据堆栈存储器101的进栈操作过程;以及描述将数据堆栈存储器101中弹出的数据,保存至数据存储器204中的出栈操作过程;具体地,在进栈操作过程中,控制器201的指令寄存器从程序存储器读取的进栈指令(在程序语言中可标识为PUSH指令),然后通过指令译码器对指令寄存器中进栈指令所包括的操作码进行译码以生成第一控制信号集合,并由控制逻辑电路通过控制总线发送到相关的模块电路以达到控制的目的,该第一控制信号集合包括进栈操作信号、硬件堆栈指针加1 信号、第一地址译码操作信号和读数据存储器信号,并且控制器201的指令译码器将进栈指令所包括的第一操作数发送给地址选择器203 ;地址选择器203根据第一地址译码操作信号,对控制器201所发送的第一操作数进行译码,以生成第一数据存储器地址并发送至地址总线上;数据存储器204根据读数据存储器信号和第一数据存储器地址,将准备压栈的数据写入数据总线上;且数据堆栈控制电路102中的进栈控制电路模块1021根据进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器101的栈顶,其中已准备好压栈的数据为寻址IO 口而获得的数据;硬件堆栈指针103则在进栈控制电路模块1021 根据进栈操作信号将数据总线中已准备好压栈的数据压入数据堆栈存储器101的栈顶后, 可根据所述控制总线中的硬件堆栈指针加1信号自行加1,而指向新的栈顶;对于硬件堆栈指针103的每次加1的动作,都通过比较电路将当前的硬件堆栈指针103与上限值进行比较以监测硬件堆栈指针103的状态,当该硬件堆栈指针103从最高地址加1而跳回最低地址时,上溢标志位1041自动置1,且该上限值为数据堆栈存储器101的最高地址。在出栈操作过程中,控制器201的指令寄存器从程序存储器读取的出栈指令(在程序语言中可标识为POP指令),然后通过指令译码器对指令寄存器中出栈指令所包括的操作码进行译码以生成第二控制信号集合,并由控制逻辑电路通过控制总线发送到相关的模块电路以达到控制的目的,该第二控制信号集合包括出栈操作信号、硬件堆栈指针减1 信号、第二地址译码操作信号和写数据存储器信号,并且控制器201的指令译码器将进栈指令所包括的第二操作数发送给地址选择器203 ;数据堆栈控制电路102中的出栈控制电路模块1022根据该出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器101的栈顶弹出至数据总线中;地址选择器203根据第二地址译码操作信号,对控制器201所发送的第二操作数进行译码,以生成第二数据存储器地址并发送至地址总线上;数据存储器204根据写数据存储器信号和第二数据存储器地址,从数据总线上读入已弹出栈的数据;硬件堆栈指针103则在出栈控制电路模块1022根据出栈操作信号将已准备好弹栈的数据从数据堆栈存储器101的栈顶弹出至数据总线后,可根据硬件堆栈指针减1信号自行减1,而指向新的栈顶;对于硬件堆栈指针103 的每次减1的动作,都通过比较电路将当前的硬件堆栈指针 103与下限值进行比较以监测硬件堆栈指针103的状态,当该硬件堆栈指针103从最低地址减1而跳回最高地址时,下溢标志位1042自动置1,且该下限值为数据堆栈存储器101的最低地址。本实施例的微控制器,通过数据堆栈存储电路所包括的数据堆栈控制电路根据控制总线中的进栈操作信号,将数据总线中已准备好压栈的数据压入数据堆栈存储器的栈顶,或者根据所控制总线中的出栈操作信号,将已准备好弹栈的数据从数据堆栈存储器的栈顶弹出至数据总线中的技术方案,解决了现有微控制器中由于需通过读或写控制寄存器和读或写缓冲寄存器间接地对数据堆栈进行操作,而使得进栈与出栈操作执行效率不高的缺陷,实现了进栈和出栈操作通过各自所对应的相关指令即可完成的目的,省去了读或写控制寄存器及读或写缓冲寄存器复杂的芯片构架形式,且提高了对数据堆栈进行进栈与出栈操作的执行效率。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
权利要求
1.一种数据堆栈存储电路,其特征在于,包括数据堆栈存储器和数据堆栈控制电路; 所述数据堆栈存储器和数据堆栈控制电路相连接;所述数据堆栈存储器连接于数据总线;所述数据堆栈控制电路连接于控制总线;且数据堆栈控制电路用于根据所述控制总线中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶,或者用于根据所述控制总线中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。
2.根据权利要求1所述的数据堆栈存储电路,其特征在于,所述数据堆栈存储器为一个独立的存储器,或者为一个独立的存储器的部分存储空间,或者为至少两个独立的存储器的组合,或者为至少一个独立的存储器和至少一个独立的存储器的部分存储空间的组合,或者为至少两个独立的存储器中部分存储空间的组合。
3.根据权利要求1所述的数据堆栈存储电路,其特征在于,所述数据堆栈控制电路包括进栈控制电路模块和出栈控制电路模块;所述进栈控制电路模块用于根据所述控制总线中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶;所述出栈控制电路模块用于根据所述控制总线中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。
4.根据权利要求1所述的数据堆栈存储电路,其特征在于,还包括硬件堆栈指针,所述硬件堆栈指针连接于所述控制总线和所述数据堆栈存储器;所述硬件堆栈指针用于在所述数据总线中已准备好压栈的数据被压入所述数据堆栈存储器的栈顶后,根据所述控制总线中的硬件堆栈指针加1信号而自行加1 ;或者在已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线后,根据所述控制总线中的硬件堆栈指针减1信号而自行减1。
5.根据权利要求4所述的数据堆栈存储电路,其特征在于,还包括溢出标志寄存器,所述溢出标志寄存器连接于所述硬件堆栈指针,且所述溢出标志寄存器包括上溢标志位和下溢标志位。
6.一种微控制器,包括控制器,其特征在于,还包括数据堆栈存储电路;所述控制器连接于控制总线,且所述控制器用于通过分析进栈指令的操作码,以生成第一控制信号集合并发送至所述控制总线;或者,用于通过分析出栈指令的操作码,以生成第二控制信号集合并发送至所述控制总线;所述数据堆栈存储电路包括数据堆栈存储器和数据堆栈控制电路;所述数据堆栈存储器和数据堆栈控制电路相连接;所述数据堆栈存储器连接于数据总线;所述数据堆栈控制电路连接于所述控制总线;且数据堆栈控制电路用于根据所述第一控制信号集合中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶,或者用于根据所述第二控制信号集合中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。
7.根据权利要求6所述的微控制器,其特征在于,还包括地址选择器,所述地址选择器连接于所述控制器、所述地址总线和所述控制总线;所述地址选择器用于根据所述第一控制信号集合中的第一地址译码操作信号,对所述控制器所发送的进栈指令中的第一操作数进行译码,以生成第一数据存储器地址并发送至所述地址总线上;或者用于根据所述第二控制信号集合中的第二地址译码操作信号,对所述控制器所发送的出栈指令中的第二操作数进行译码,以生成第二数据存储器地址并发送至所述地址总线上。
8.根据权利要求7所述的微控制器,其特征在于,还包括数据存储器,所述数据存储器连接于所述控制总线、所述数据总线和所述地址总线;所述数据存储器用于根据所述第一控制信号集合中的读数据存储器信号和第一数据存储器地址,将准备压栈的数据写入所述数据总线上;或者用于根据所述第二控制信号集合中的写数据存储器信号和第二数据存储器地址, 从所述数据总线上读入已弹出栈的数据。
9.根据权利要求6所述的微控制器,其特征在于,所述数据堆栈控制电路包括进栈控制电路模块和出栈控制电路模块;所述进栈控制电路模块用于根据所述第一控制信号集合中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶;所述出栈控制电路模块用于根据所述第二控制信号集合中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。
10.根据权利要求6所述的微控制器,其特征在于,还包括硬件堆栈指针,所述硬件堆栈指针连接于所述控制总线和所述数据堆栈存储器;所述硬件堆栈指针用于在所述数据总线中已准备好压栈的数据被压入所述数据堆栈存储器的栈顶后,根据所述控制总线中的硬件堆栈指针加1信号而自行加1 ;或者在已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线后,根据所述控制总线中的硬件堆栈指针减1信号而自行减1。
11.根据权利要求10所述的微控制器,其特征在于,还包括溢出标志寄存器,所述溢出标志寄存器连接于所述硬件堆栈指针,且所述溢出标志寄存器包括上溢标志位和下溢标志位。
12.根据权利要求6所述的微控制器,其特征在于,所述数据堆栈存储器为一个独立的存储器,或者为一个独立的存储器的部分存储空间,或者为至少两个独立的存储器的组合, 或者为至少一个独立的存储器和至少一个独立的存储器的部分存储空间的组合,或者为至少两个独立的存储器中部分存储空间的组合。
全文摘要
本发明提供一种数据堆栈存储电路及微控制器,该数据堆栈存储电路包括数据堆栈存储器和数据堆栈控制电路;所述数据堆栈存储器和数据堆栈控制电路相连接;所述数据堆栈存储器连接于数据总线;所述数据堆栈控制电路连接于控制总线;且数据堆栈控制电路用于根据所述控制总线中的进栈操作信号,将所述数据总线中已准备好压栈的数据压入所述数据堆栈存储器的栈顶,或者用于根据所述控制总线中的出栈操作信号,将已准备好弹栈的数据从所述数据堆栈存储器的栈顶弹出至所述数据总线中。本发明实现了进栈和出栈操作通过指令可完成的目的,提高了对数据堆栈进行进栈与出栈操作的执行效率。
文档编号G06F12/06GK102193868SQ20101012319
公开日2011年9月21日 申请日期2010年3月10日 优先权日2010年3月10日
发明者史卫东, 岳卫杰, 潘松, 许云峰 申请人:上海海尔集成电路有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1