[发明专利]二级堆栈装置及其数据压栈和出栈方法有效
| 申请号: | 200710151258.1 | 申请日: | 2007-09-18 |
| 公开(公告)号: | CN101114236A | 公开(公告)日: | 2008-01-30 |
| 发明(设计)人: | 江猛;贾力 | 申请(专利权)人: | 苏州市华芯微电子有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/38;G06F9/315;G06F13/38 |
| 代理公司: | 北京华夏博通专利事务所 | 代理人: | 王建国 |
| 地址: | 215011江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 二级 堆栈 装置 及其 数据 方法 | ||
技术领域
本发明涉及集成电路领域的一种二级堆栈装置及其数据压栈和出栈方法。
背景技术
在多点控制单元(MCU)电路中,堆栈(STACK)是不可或缺的模块。堆栈的特性是先入后出,这是子程序调用的关键。二级堆栈意味着能够实现两级子程序嵌套,即主程序可以调用子程序1,子程序1可以调用子程序2,而子程序2不能够再调用其它子程序。
在对堆栈的设计中,往往把堆栈(STACK)和地址总线(PC)分离开来,堆栈(STACK)用随机存储器(RAM)结构来实现。如果地址总线(PC)为10位,可寻址1K的存储器空间,则二级堆栈需用两个10位的随机存储器(RAM)单元来实现,用以存储两次子程序调用时的跳转地址。但用随机存储器(RAM)结构实现堆栈(STACK)电路复杂,控制不易,且电路面积大,成本高。
发明内容
有鉴于此,本发明的目的就在于提供一种二级堆栈装置,不采用RAM结构,将地址总线(PC)和堆栈(STACK)结合,利用4相时钟的特点来实现堆栈(STACK)的数据压栈和出栈操作。
为实现上述发明目的,本发明采用的技术方案如下:
一种二级堆栈装置,其特征在于所述二级堆栈装置包括一控制器、一二级堆栈寄存器和一地址总线模块,其中,
控制器产生控制信号,用于控制数据的压栈和出栈操作;
二级堆栈寄存器由复数个基本单元组成,用于存储压栈的数据;
地址总线模块通过地址总线与所述二级堆栈寄存器连接。
所述基本单元包括第一、第二级锁存器,一逻辑控制单元和一使能传送器,其中,
第一级锁存器用于存储第二级子程序的返回地址数据;
第二级锁存器用于存储第一级子程序的返回地址数据;
逻辑控制单元在选择信号的控制下将返回地址数据送入第一级锁存器;
使能传送器在出栈使能信号的控制下执行地址数据的出栈操作。
所述第一级锁存器的反向输出端连接第二级锁存器的数据输入端,第一、二级锁存器分别受第一、二钟控信号控制。
所述第一、二钟控信号由所述控制器产生。
所述逻辑控制单元为二选一数据选择器,该二选一数据选择器的一个数据输入端接收入栈的地址数据,另一个数据输入端接收第二锁存器的输出数据,其输出端与第一锁存器的数据输入端连接,其控制端接收选择信号。
所述使能传送器的输入端连接第一锁存器的反向输出端,其使能端接收出栈使能信号。
所述控制器包括用于接收系统控制信号的复数个输入端。
所述系统控制信号包括四相时钟、子程序调用指令使能信号、子程序返回指令使能信号、总线复位/置位信号和跳转指令使能信号。
本发明还提供了上述二级堆栈装置的一种数据压栈和出栈方法,其特征在于该数据压栈和出栈方法包括:
系统执行第一次子程序调用指令时,控制器接收有效的子程序调用指令使能信号,在指令周期的第二个时钟周期产生有效的第二钟控信号,将第一级锁存器的数据读入第二级锁存器,在指令周期的第三个时钟周期产生有效的第一钟控信号,通过逻辑控制单元将第一级子程序的返回地址数据读入第一级锁存器;
系统执行第二次子程序调用指令时,控制器接收有效的子程序调用指令使能信号,在指令周期的第二个时钟周期产生有效的第二钟控信号,将第一级锁存器中的第一级子程序的返回地址数据读入第二级锁存器,在指令周期的第三个时钟周期产生有效的第一钟控信号,通过逻辑控制单元将第二级子程序的返回地址数据读入第一级锁存器;
系统执行子程序返回指令时,控制器接收第一个有效的子程序返回指令使能信号,在第一个指令周期的第四个时钟周期产生有效的出栈使能信号,将第一级锁存器中的第二级子程序的返回地址数据通过使能传送器送出,在第二个指令周期的第二个时钟周期,控制器产生有效的第一钟控信号,通过逻辑控制单元将第二级锁存器中的第一级子程序的返回地址数据送入第一级锁存器,控制器接收第二个有效的子程序返回指令使能信号时,在第一个指令周期的第四个时钟周期产生有效的出栈使能信号将第一级锁存器中的数据通过使能传送器送出。
本发明将地址总线(PC)和堆栈(STACK)相结合,通过设置控制器,利用4相时钟的特点来实现堆栈(STACK)的数据压栈和出栈操作。本发明的有益效果在于电路结构简单,控制方便,电路面积小,有效降低了成本。
附图说明
下面结合附图和具体实施方式对本发明作进一步的阐述。
附图1为本发明所述二级堆栈装置的结构框图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州市华芯微电子有限公司,未经苏州市华芯微电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710151258.1/2.html,转载请声明来源钻瓜专利网。





