片上系统芯片的片内复位系统和复位方法
【专利说明】片上系统芯片的片内复位系统和复位方法
[0001]
发明领域
[0002]本发明涉及到片上系统芯片的片内复位技术,特别涉及到一种片上系统芯片的片内复位系统和复位方法。
【背景技术】
[0003]随着集成电路技术的高速发展,芯片中的电路功能越来越复杂,单芯片中集成的功能越来越多,为了适应芯片系统复杂化的需要,芯片设计已经由较单一的大规模集成电路向多功能IP集成的系统化方向发展。其中,片上系统SOCXSystem on Chip,以下简称为SOC)芯片成为代替传统集成电路的主要解决方案,并已经成为当前微电子芯片技术发展的必然趋势。
[0004]S0C芯片通常集成有处理器(包括CPU,DSP)、存储器以及各种接口控制模块,各种功能模块按照一定的连接关系组合在一起,形成一个复杂的片上系统。通常,在一个socs片中包含了大量的模拟电路和数字电路,或者数模混合电路。特别是对于功能复杂的S0C芯片而言,数字电路通常占据了较大的比例。因此,在S0C芯片中数字电路系统赖以工作的时钟和复位信号就显得尤其重要,稳定的主频时钟和可靠的系统复位,将是决定S0C芯片系统能否可靠工作的关键。
[0005]目前,对于大多数S0C芯片而言,石英晶体振荡器是产生稳定时钟的主要时钟源。尽管目前已经有了片内集成的石英晶体振荡器,但由于石英晶体振荡器属于石英晶体,与制作S0C芯片的硅材料兼容性不好,并且通常片内晶振频率固定无法更改,应用不灵活,同时会导致芯片面积增大,因此,采用片外晶振提供时钟源仍然是各S0C芯片对时钟源的主流选择。但是,由于片外晶振在芯片上电时,需要在一定起振时间之后才能输出稳定的时钟信号,不稳定的时钟可能导致芯片工作状态的不稳定,尤其是在芯片复位期间,这将可能造成芯片工作状态是否正确的风险。除了时钟源不稳定的因素之外,芯片复位方式也是影响复位可靠性的重要因数。目前大多数芯片的复位信号都只是采用异步复位的方式,使得芯片系统在复位信号来临立即重置芯片中的电路状态,然而,如果复位信号结束变化沿发生在时钟有效沿附近,由于芯片中时钟树的物理延迟,同一时刻芯片中不同部分电路可能处于不同的工作状态,比如,一部分电路处于复位结束前状态,而一部分则处于复位结束后的状态,进而导致芯片复位亚稳态的产生,导致芯片工作状态的异常。显然,现有技术S0C芯片的芯片复位系统及方法存在着可能导致芯片工作状态不稳定,或者造成芯片工作状态不正确等问题。
【发明内容】
[0006]为解决现有技术S0C芯片的芯片复位系统及方法存在的可能导致芯片工作状态不稳定,或者造成芯片工作状态不正确等问题,本发明提出一种片上系统芯片的片内复位系统和复位方法。本发明片上系统芯片的片内复位系统包括片外按键复位电路、片外晶振电路、芯片上电电路、晶振时钟控制电路、复位信号选择电路、复位电平脉冲产生电路、异步复位同步释放电路、控制寄存器、RC时钟电路、数字分频电路、时钟选择逻辑电路、延时电路和时钟切换电路;除了片外按键复位电路和片外晶振电路外,其余电路模块均被集成到片上系统SOC芯片内部;其中,片外按键复位电路所产生的按键复位信号与片内上电电路所产生的上电复位信号经复位信号选择电路输入到复位电平脉冲产生电路中,进而被复位电平脉冲产生电路转换为低电平槽脉冲信号;片外晶振电路和晶振时钟控制电路共同控制片外晶振电路产生晶振时钟信号并作为芯片主频时钟的时钟源输入;振荡时钟和复位信号初始化配置控制寄存器,控制寄存器向片内晶振控制电路提供所需的控制信号以保证片内晶振控制电路的正常工作;RC时钟电路产生低频稳定的振荡时钟作为晶振时钟稳定前的工作时钟,主要用于控制数字分频电路、延时电路和时钟切换电路;复位电平脉冲产生电路所产生的低电平槽脉冲信号在延时电路的控制下被延时以等待晶振时钟的稳定;时钟切换电路在晶振时钟稳定后将之前的RC时钟电路产生振荡时钟切换为稳定后的晶振时钟作为复位结束后的SOC芯片主频时钟;异步复位同步释放电路将延时后的复位信号与芯片主频时钟进行同步,并将最后同步的复位信号作为芯片的复位信号。
[0007]进一步的,所述复位信号选择电路包括RC上电复位脉冲电路、两级反相器缓冲单元和模数电平转换电路,片外按键复位电路在按键按下时产生低电平,释放时产生高电平,进而产生一低电平槽脉冲复位信号,片外按键复位电路所产生的复位信号和片内上电复位信号通过线与的方式实现信号选择,选择信号经过两级反相器缓冲并通过模数电平转换电路,将模拟电平转换为数字电平作为复位电平脉冲产生电路的信号输入;当片外按键复位电路断开时,S0C芯片采用的是上电复位;当片外按键复位电路闭合时,S0C芯片采用的是按键复位。
[0008]进一步的,所述复位电平脉冲产生电路可以将任意具有上升变化沿的脉冲信号转换为低电平槽脉冲信号,采用三级无复位端的上升沿D触发器对芯片上电所产生的上升沿信号或者由片外按键复位电路所产生的低电平槽脉冲信号进行延时,将延时后的信号与上电所产生的上升沿信号或者由片外按键复位电路所产生的低电平槽脉冲信号的反相信号作或运算,经过或逻辑之后输出带槽的低电平脉冲信号,该信号即为低电平复位槽脉冲信号。
[0009]进一步的,所述数字分频电路和延时电路包括四级延时D触发器,由复位电平脉冲产生电路所产生的低电平复位槽脉冲信号作为分频计数器的RST复位端输入、四级延时D触发器的RST复位端输入和数据端D端输入,在经过四级延时D触发器的三个延时节点后作为最终被延时后的复位脉冲信号输出;其中,第三、四级延时D触发器之间的延时节点的信号被作为时钟切换电路的选择控制信号,当该延时节点的信号为低电平时,S0C芯片主频时钟采用RC时钟作为主时钟的输出;当该延时节点的信号为高电平时,S0C芯片主频时钟从之前的RC时钟切换到已经稳定的晶振时钟,使得芯片在结束复位之后基于正确频率的晶振时钟工作。
[0010]进一步的,所述异步复位同步释放电路包括两级锁存D触发器,将经过延时的复位电平脉冲信号分别作为两级锁存D触发器的RST复位端和数据输入D端的输入信号并经过两级D触发器延时锁存后从第二级D触发器输出;其中,经过延时的复位电平脉冲信号为异步复位信号,与时钟信号不具有任何同步关系;经过异步复位同步释放电路中时钟信号的上升沿锁存之后,输出信号的变化沿与时钟沿实现了同步;因此,只有当时钟信号的有效沿到来之后输出信号才开始变化,并在时钟信号有效沿通过之后结束芯片复位。
[0011]本发明片上系统芯片的片内复位方法,将片外按键复位与片内上电复位相结合,利用片内RC振荡时钟进行分频,将复位电平信号进行延时以等待片外晶振稳定,利用时钟切换电路先选取RC时钟,再选取晶振振荡时钟,保证芯片中主频时钟的稳定性,最后,利用异步复位同步释放电路对延时后的复位信号作主频时钟同步处理以实现复位信号与时钟的同步。
[0012]进一步,本发明片上系统芯片的片内复位方法,包括以下步骤:
51、S0C芯片通电,RC时钟电路在电源充电作用下很快输出稳定的振荡时钟信号,片外晶振电路开始起振;
52、复位电平脉冲产生电路将上电所产生的上升沿信号转换为低电平复位槽脉冲信号;
53、判断晶振时钟是否稳定?否则顺序执行步骤S4,是则执行步骤S5;
54、数字分频器电路输出相应的分频时钟,在该分频时钟驱动下复位电平脉冲产生电路输出的低电平复位槽脉冲信号结束沿被延时,以等待晶振时间稳定;同时,振荡时钟和复位信号初始化配置控制寄存器,控制寄存器向片内晶振控制电路提供所需的控制信号以保证片内晶振控制电路的正常工作;返回执行步骤S3 ;
55、将S0C芯片的主频时钟由振荡时钟切换为晶振时钟,将被延时的复位信号经过异步复位同步释放电路的处理后输出到芯片数字系统;
56、复位完成,芯片在被延时后的复位信号和已经稳定的晶振时钟控制下开始正常工作;
57、判断是否需要手动复位?是则顺序执行步骤S8,否则执行步骤S10;
58、手动开启片外复位按键,片外按键复位电路输出带槽的复位脉冲;
59、经复位电平脉冲产生电路延时之后输出复位电平信号,配合晶振所产生的稳定