CN110633166B - 复位装置及复位方法 - Google Patents
复位装置及复位方法 Download PDFInfo
- Publication number
- CN110633166B CN110633166B CN201810651177.6A CN201810651177A CN110633166B CN 110633166 B CN110633166 B CN 110633166B CN 201810651177 A CN201810651177 A CN 201810651177A CN 110633166 B CN110633166 B CN 110633166B
- Authority
- CN
- China
- Prior art keywords
- reset
- signal
- software
- unit
- hardware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Electronic Switches (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种复位装置及复位方法。所述复位装置包括电性连接的CPU及DRAM,其中,所述CPU包括一DRAM控制器。所述DRAM控制器用于基于在第一时刻接收的软件复位信号向所述DRAM发送自刷新命令,以使所述DRAM通过执行所述自刷新命令进入自刷新模式。所述CPU用于基于在第二时刻接收的硬件复位信号进行硬件复位,其中,所述第一时刻在所述第二时刻之前。由此可以让DRAM进入自刷新模式,从而保证在CPU复位期间DRAM中保存的数据不会丢失,并且,还可以解决因复位不彻底导致的CPU工作不稳定的问题。
Description
技术领域
本申请涉及数字电路技术领域,具体而言,涉及一种复位装置及复位方法。
背景技术
数字电路系统一般包括CPU(Central Processing Unit,中央处理单元)、DRAM(Dynamic Random Access Memory,动态随机访问存储器)、FLASH(闪烁存储器)等部件。若数字电路系统正常工作,CPU在运行时直接在DRAM中存取数据和指令。由于DRAM中的数据容易丢失,因此需要不断的刷新、充电。但是系统在复位时,CPU不能刷新DRAM,进而将导致DRAM中的数据丢失。
发明内容
有鉴于此,本申请实施例的目的在于提供一种复位装置及复位方法。
第一方面,本申请实施例提供一种复位装置,包括电性连接的CPU及DRAM,其中,所述CPU包括一DRAM控制器;所述DRAM控制器用于基于在第一时刻接收的软件复位信号向所述DRAM发送自刷新命令,以使所述DRAM通过执行所述自刷新命令进入自刷新模式;所述CPU用于基于在第二时刻接收的硬件复位信号进行硬件复位,其中,所述第一时刻在所述第二时刻之前。在第一时刻接收到软件复位信号后,DRAM控制器控制DRAM进入自刷新模式。CPU根据在第一时刻后的第二时刻接收的硬件复位信号进行硬件复位。由此使得在CPU在软件复位和硬件复位期间,DRAM处于自刷新模式,可保证DRAM的数据不会丢失。并且,由于CPU进行了硬件复位,可实现彻底复位,保证CPU的稳定运行。
进一步地,结合上述第一方面提供的实施例,所述装置还包括软件复位单元及硬件复位单元,所述CPU还包括软件复位引脚及硬件复位引脚;所述软件复位单元经所述软件复位引脚与所述DRAM控制器电性连接,所述软件复位单元用于产生所述软件复位信号,并通过所述软件复位引脚在所述第一时刻传输所述软件复位信号至所述DRAM控制器;所述硬件复位单元经所述硬件复位引脚与所述CPU电性连接,所述硬件复位单元用于产生所述硬件复位信号,并通过所述硬件复位引脚在所述第二时刻传输所述硬件复位信号至所述CPU。
进一步地,结合上述第一方面提供的实施例,所述装置还包括复位控制单元及第一延时单元;所述复位控制单元与所述软件复位单元及所述第一延时单元电性连接,所述复位控制单元用于产生第一复位信号,并将所述第一复位信号发送给所述软件复位单元及所述第一延时单元;所述软件复位单元用于基于接收的所述第一复位信号产生所述软件复位信号;所述第一延时单元用于对所述第一复位信号进行延时,并将延时后的所述第一复位信号发送给所述硬件复位单元,以使所述硬件复位单元基于所述延时后的所述第一复位信号产生所述硬件复位信号。通过延时单元可保证软件复位信号先发送至CPU,硬件复位信号后发送至CPU,CPU中的DRAM控制器在接收软件复位信号会控制DRAM进入自刷新模式,从而使得DRAM在CPU进行复位时处于自刷新模式。
进一步地,结合上述第一方面提供的实施例,所述装置还包括波形转换单元;所述波形转换单元与所述DRAM控制器及所述DRAM电性连接,所述波形转换单元用于将所述DRAM控制器发送的第二复位信号的低电平调整为高电平,并发送给所述DRAM。控制DRAM接收的第二复位信号为高电平,可保证DRAM处于自刷新模式。
进一步地,结合上述第一方面提供的实施例,所述装置还包括CKE控制单元;所述CKE控制单元电性连接于所述DRAM控制器与所述DRAM之间,所述CKE控制单元用于将所述DRAM控制器发送的CKE信号设置为低电平,以使所述DRAM接收到低电平的所述CKE信号。通过CKE控制单元将DRAM控制器与DRAM之间的CKE信号强制设置为低电平,可保证DRAM处于自刷新模式。
进一步地,结合上述第一方面提供的实施例,所述复位控制单元还用于产生解复位信号,并将所述解复位信号发送给所述软件复位单元及所述第一延时单元;所述硬件复位单元还与所述软件复位单元电性连接,所述硬件复位单元还用于基于接收的所述解复位信号产生硬件解复位信号,并将所述硬件解复位信号发送给所述CPU及所述软件复位单元,以使所述CPU在第三时刻进行硬件解复位;所述软件复位单元还用于基于所述硬件解复位信号产生软件解复位信号,并将所述软件解复位信号发送给所述CPU,以使所述CPU在所述第三时刻进行软件解复位。通过将硬件解复位信号和软件解复位信号同时发送给CPU,可保证CPU同时进行硬件解复位和软件解复位。
进一步地,结合上述第一方面提供的实施例,所述装置还包括第二延时单元;所述第二延时单元与所述硬件复位单元及所述软件复位单元电性连接,所述第二延时单元用于对所述硬件解复位信号进行延时,并将延时后的所述硬件解复位信号发送给所述软件复位单元;所述软件复位单元用于基于接收的所述延时后的所述硬件解复位信号产生所述软件解复位信号,并在所述第三时刻之后的第四时刻将所述软件解复位信号发送给所述CPU,以使所述CPU在所述第四时刻进行软件解复位。通过第二延时单元的延时,可使硬件解复位信号先于软件解复位信号发送至CPU,从而保证CPU先进行硬件解复位,后进行软件解复位。
进一步地,结合上述第一方面提供的实施例,所述DRAM控制器还用于基于接收的所述软件解复位信号控制所述DRAM退出自刷新模式,并通过所述波形转换单元将所述第二复位信号调整为低脉冲信号,以使所述DRAM进行复位。通过使DRAM接收为低脉冲信号的第二复位信号,可使DRAM进行复位和解复位。
进一步地,结合上述第一方面提供的实施例,所述CPU还用于在解复位后对所述DRAM控制器进行初始化配置,以使所述DRAM控制器在接收所述软件复位信号后自动向所述DRAM发送所述自刷新命令。通过对DRAM控制器的初始化配置,即使CPU挂死,DRAM控制器依然会在接收软件复位信号后自动向DRAM发送自刷新命令,从而保证在CPU复位期间,DRAM处于自刷新模式。
第二方面,本申请实施例还提供一种复位方法,应用于所述的复位装置,所述方法包括:所述DRAM控制器基于在第一时刻接收的软件复位信号向所述DRAM发送自刷新命令,以使所述DRAM通过执行所述自刷新命令进入自刷新模式;所述CPU基于在第二时刻接收的硬件复位信号进行硬件复位,其中,所述第一时刻在所述第二时刻之前。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例提供的复位装置的示意图之一。
图2是本申请实施例提供的复位装置的示意图之二。
图3是本申请实施例提供的复位装置的示意图之三。
图4是本申请实施例提供的复位装置的示意图之四。
图5是本申请实施例提供的复位装置的举例示意图之一。
图6是本申请实施例提供的复位装置的举例示意图之二。
图7是本申请实施例提供的复位装置的举例示意图之三。
图8是图2中复位控制单元的示意图。
图9是图3中CKE控制单元的示意图之一。
图10是图3中CKE控制单元的示意图之二。
图11是本申请实施例提供的RC延时示意图。
图12是本申请实施例提供的复位方法的流程示意图。
图标:100-复位装置;110-CPU;112-DRAM控制器;120-DRAM;130-软件复位单元;140-硬件复位单元;150-复位控制单元;160-第一延时单元;170-CKE控制单元;180-波形转换单元;190-第二延时单元。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请发明人提出本申请实施例中的技术方案之前,为避免DRAM中数据丢失,系统采用SRAM(Static Random Access Memory,静态随机存储器)来存储一些特殊数据,通过复位控制电路控制CPU的复位引脚使CPU复位。由于SRAM自身的特性决定了SRAM不像DRAM要依赖于CPU的定时刷新,即使CPU复位也不会引起SRAM中数据丢失。但是SRAM的内存容量较小,若需要大容量的存储空间,则需要多SRAM串并联实现,受PCB尺寸的限制可能会给PCB设计带来困难。并且SRAM的价格也比较高,会增加成本。
此外,还会通过组合电路判断系统执行软复位或硬件复位,当执行软件复位时候,将DRAM中的数据和寄存器保存;当执行硬件复位时候,将DRAM中的数据清除。然而该方法描述的软件复位仅适用于系统未彻底挂死,CPU发送命令执行软件复位的情况,且该方法在系统硬件复位之后,不能保留DRAM中的数据。
由此可看出,现有技术存在以下问题:除非是人为控制系统复位,其他情况的系统自动复位常常是系统挂死后,外部看门狗复位系统。此时CPU无法执行任何操作,无法让DRAM进入自刷新模式。若系统没有彻底挂死,通过软件复位CPU的方式无法彻底复位CPU以使CPU恢复到冷启动的初始状态。当再次运行时,CPU存在工作不稳定的风险。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得到的结果,因此,上述问题的发现过程以及下文中本申请实施例针对上述问题所提出的解决方案,都应是发明人在本申请过程中对本申请做出的贡献。
请参照图1,图1是本申请实施例提供的复位装置100的示意图之一。所述复位装置100可以包括电性连接的CPU110及DRAM120,其中,所述CPU110包括一DRAM控制器112。当所述CPU110在第一时刻接收到一软件复位信号#S-RST后,所述DRAM控制器112基于所述软件复位信号#S-RST向所述DRAM120发送自刷新命令。所述DRAM120通过执行所述自刷新命令进入自刷新模式。在所述第一时刻之后的第二时刻,所述CPU110接收到一硬件复位信号#H-RST,并基于所述硬件复位信号#H-RST进行硬件复位。由此,所述CPU110先接收到软件复位信号#S-RST,后接收到硬件复位信号#H-RST,在CPU110进行复位时,所述DRAM120处于自刷新模式,即使CPU110由于进行复位而不能对所述DRAM120进行刷新,所述DRAM120中的数据依然不会丢失。所述CPU110在复位完成后,可以通过读取所述DRAM120中的数据复原之前的运行状态,或分析数字电路系统异常原因等。其中,所述第一时刻与所述第二时刻之间的时间间隔T1可以根据实际情况确定,用于保证所述CPU110先接收到所述软件复位信号#S-RST,后接收到所述硬件复位信号#H-RST。
并且,复位包括软件复位和硬件复位,软件复位只能复位CPU110中部分寄存器,而硬件复位则能复位CPU110中所有的寄存器。在本实施例中,CPU110通过进行硬件复位实现了彻底复位,避免了因复位不彻底导致CPU110工作不稳定的情况。
DRAM控制器112只要接收到所述软件复位信号#S-RST,则自动向所述DRAM120发送自刷新命令,因此无论系统是否挂死,都不影响DRAM120接收到由所述DRAM控制器112发送的自刷新命令。由此,即使系统挂死,DRAM120依然会进入自刷新模式。
另外需要说明的是,DRAM120在读写数据时需要用到CKE(Clock Enable,时钟使能)信号,CKE信号为输入信号,高电平有效。CKE信号的用途有两个:一、关闭时钟以进入省电模式;二、进入自刷新状态。
请结合参照图2,图2是本申请实施例提供的复位装置100的示意图之二。在本实施例中,所述复位装置100还可以包括软件复位单元130及硬件复位单元140,所述CPU110还可以包括软件复位引脚及硬件复位引脚。所述CPU110通过所述软件复位引脚接收所述软件复位信号#S-RST,通过所述硬件复位引脚接收所述硬件复位信号#H-RST。所述软件复位单元130经所述软件复位引脚与所述DRAM控制器112电性连接。其中,此处的电性连接可以是直接连接,也可以是通过中间媒介间接连接。所述软件复位单元130用于产生软件复位信号#S-RST,并通过所述软件复位引脚在所述第一时刻传输所述软件复位信号#S-RST至所述DRAM控制器112。所述硬件复位单元140经所述硬件复位引脚与所述CPU110电性连接,所述硬件复位单元140用于产生硬件复位信号#H-RST,并通过所述硬件复位引脚在所述第二时刻传输所述硬件复位信号#H-RST至所述CPU110。由此,所述CPU110在不同时刻接收到由所述软件复位单元130的软件复位信号#S-RST、所述硬件复位单元140产生的硬件复位信号#H-RST。软件复位单元130输出软件复位信号#S-RST复位CPU110的软件复位引脚,该软件复位引脚驱动DRAM控制器112,DRAM控制器112驱动DRAM120。硬件复位单元140输出硬件复位信号#H-RST复位CPU110的硬件复位引脚,使CPU110进行硬件复位。
在本实施例中,所述复位装置100还可以包括复位控制单元150及第一延时单元160。所述复位控制单元150与所述软件复位单元130及所述第一延时单元160电性连接,所述复位控制单元150用于产生第一复位信号#RST,并将所述第一复位信号#RST发送给所述软件复位单元130及所述第一延时单元160。所述软件复位单元130用于基于接收到的所述第一复位信号#RST产生所述软件复位信号#S-RST。所述第一延时单元160用于基于所述第一复位信号#RST进行延时,并将延时后的所述第一复位信号#D-RST发送给所述硬件复位单元140,以使所述硬件复位单元140基于所述延时后的所述第一复位信号#D-RST产生所述硬件复位信号#H-RST。
可选地,所述复位控制单元150可以与复位源电性连接。所述复位控制单元150在检测到复位源的触发时,则通过发送所述复位信号驱动所述软件复位单元130及所述第一延时单元160。其中,复位源可以包括系统的各种可能的复位源,比如,看门狗超时复位(WDT_#RST)、上电复位(PWR_#RST)、命令复位(CMD_#RST)、超温复位(TEMP_#RST)等。
所述第一复位信号#RST中的脉冲宽度(即复位时间长度)根据被复位的CPU110的芯片资料要求确定。该脉冲宽度可以是由复位源通过设置复位脉冲宽度设置,也可以是由复位控制单元150通过内部延时产生。
DRAM电路规范(JESD79-3E.pdf)规定DRAM120在自刷新期间,需要确保DRAM120接收到的CKE信号DDR_CKE为低电平,接收到的第二复位信号DDR_#RST2为高电平和供电稳定。其中,有些CPU110在软件复位或硬件复位期间依然可以控制CKE信号DDR_CKE的电平为低电平,在这种情况下,所述DRAM控制器112直接发送电平为低电平的CKE信号DDR_CKE至所述DRAM120,仅需保证所述DRAM120接收到的第二复位信号DDR_#RST2为高电平即可。
在本实施例中,在DRAM120没有DRAM复位引脚时,比如在所述DRAM120为DDR1或者DDR2时,则不可以不考虑确保通过DRAM复位引脚接收的第二复位信号DDR_#RST2为高电平。
请结合参照图3,图3是本申请实施例提供的复位装置100的示意图之三。在本实施例中,在所述DRAM120包括DRAM复位引脚时,比如在所述DRAM120为DDR3或者DDR4时,由于从DDR3开始,增加了用于复位DRAM120内部控制寄存器的DRAM复位信号,此时在DRAM120处于自刷新模式时,则需要保证所述DRAM复位信号为高电平。此时,所述复位装置100还可以包括波形转换单元180。所述波形转换单元180与所述DRAM控制器112及所述DRAM120电性连接,所述波形转换单元180用于将所述DRAM控制器112发送的作为DRAM复位信号的第二复位信号DDR_#RST1的低电平调整为高电平,并将调整后的所述第二复位信号DDR_#RST2发送给所述DRAM120。其中,所述波形转换单元180接收到的第一复位信号DDR_#RST1可以是高电平,也可以是低电平,经所述波形转换单元180转换后,所述DRAM120接收到的第二复位信号DDR_#RST2均为高电平。
在本实施例中,有些CPU110在软件复位和硬件复位期间无法控制CKE信号DDR_CKE的电平为低电平,此时,所述复位装置100还可以包括CKE控制单元170。所述CKE控制单元170与所述DRAM控制器112及所述DRAM120电性连接,在DRAM120自刷新期间,所述CKE控制单元170用于将所述DRAM控制器112发送给DRAM120的CKE信号DDR_CKE调整为低电平,以保证在CPU110处于复位期间时,所述DRAM120接收到的CKE信号DDR_CKE为低电平,从而保持自刷新模式。
可选地,所述DRAM控制器112通过DDR控制总线将CKE信号DDR_CKE发送给所述DRAM120。与所述CPU110电性连接的所述CKE控制单元170与DDR控制总线电性连接,在CPU110进行软件复位或硬件复位时,所述CKE控制单元170根据CPU110发送的默认信号将CKE信号DDR_CKE强制设置为低电平。
在本实施例中,在复位结束时,所述复位控制单元150还用于产生解复位信号,以控制所述CPU110进行解复位。
在所述CPU110为要求同时进行硬件解复位和软件解复位的CPU时,所述硬件复位单元140还与所述软件复位单元130电性连接。所述复位控制单元150将所述解复位信号发送给所述软件复位单元130及所述第一延时单元160。所述硬件复位单元140还用于基于经所述第一延时单元160接收的所述解复位信号产生硬件解复位信号,并将所述硬件解复位信号发送给所述CPU110及所述软件复位单元130,以使所述CPU110在接收所述硬件解复位信号后进行硬件解复位。所述软件复位单元130还用于基于所述硬件解复位信号产生软件解复位信号,并将所述软件解复位信号发送给所述CPU110,以使所述CPU110进行软件解复位。由于所述硬件解复位信号被直接发送给所述软件复位单元130,因此所述CPU110可以在第三时刻同时接收到所述软件解复位信号及硬件解复位信号,同时进行硬件解复位和软件解复位。
请结合参照图4,图4是本申请实施例提供的复位装置100的示意图之四。在所述CPU110为要求先进行硬件解复位、后进行软件解复位的CPU时,在上述基础上,所述复位装置100还可以包括第二延时单元190。所述第二延时单元190与所述硬件复位单元140及所述软件复位单元130电性连接,所述第二延时单元190用于对所述硬件解复位信号进行延时,并将延时后的所述硬件解复位信号发送给所述软件复位单元130,以使所述软件复位单元130基于接收的所述延时后的所述硬件解复位信号产生所述软件解复位信号,并在所述第三时刻之后的第四时刻将所述软件解复位信号发送给所述CPU110。所述CPU110在接收所述软件解复位信号后,在所述第四时刻进行软件解复位。由此,所述CPU110先接收到硬件解复位信号,后接收到软件解复位信号,从而保证先进行硬件解复位,后进行软件解复位。其中,所述第二延时单元190实现的延时至少为CPU110所要求的硬件解复位信号和软件解复位信号之间的间隔。
在本实施例中,所述DRAM控制器112还用于基于接收的所述软件解复位信号控制所述DRAM120退出自刷新模式,并通过所述波形转换单元180将所述第二复位信号DDR_#RST1调整为低脉冲信号,以使所述DRAM120进行复位和解复位。其中,所述波形转换单元180转换后的所述第二复位信号DDR_#RST2的脉冲宽度T2大于所述DRAM120完成复位的时长,小于刷新间隔。DRAM规范描述所述DRAM120完成复位的时长最小为max(5nCK,tRFC(min)+10ns)(即5个DDR时钟周期和刷新时间加10ns秒的最大值),刷新间隔与温度及DRAM容量有关,为微秒级。因此,通过所述波形转换单元180可以保证所述DRAM120完成刷新,并且保存的数据不会丢失。
由此,CPU110在软件复位及硬件复位期间不会对DRAM120进行复位。在CPU110复位结束启动期间,DRAM控制器112控制DRAM120进行复位。
可选地,所述DRAM控制器112可以发送带有上升沿的第二复位信号DDR_#RST1,所述波形转换单元180在检测到上升沿后,经转换得到一包括低脉冲信号的信号,即得到转换后的所述第二复位信号DDR_#RST2。所述DRAM120在接收转换后的所述第二复位信号DDR_#RST2后,进行复位及解复位。
由于所述硬件复位单元140与所述软件复位单元130电性连接,所述硬件复位单元140在将所述硬件复位信号#H-RST发送给所述CPU110时,也会将所述硬件复位信号#H-RST发送给所述软件复位单元130。而所述软件复位单元130在接收所述硬件复位信号前,已经产生软件复位信号#S-RST,在所述硬件复位信号#H-RST的作用下,则继续输出软件复位信号#S-RST。
可选地,在所述CPU110复位结束后,所述CPU110控制所述CKE控制单元170不设置所述CKE信号DDR_CKE为低电平。此时,所述DRAM控制器112可以控制CKE信号DDR_CKE的电平,所述DRAM控制器112输出高电平的CKE信号DDR_CKE,并发送给所述DRAM120,以确保所述DRAM120退出自刷新模式。
在本实施例中,所述CPU110还用于在解复位后对所述DRAM控制器112进行初始化配置,以使所述DRAM控制器112在接收低脉冲的软件复位信号#S-RST时自动向所述DRAM120发送自刷新命令。
下面以举例的方式对所述复位装置100的具体构成进行说明。
请结合参照图5,图5是本申请实施例提供的复位装置100的举例示意图之一。所述软件复位单元130、硬件复位单元140、复位控制单元150、第一延时单元160及波形转换单元180可以采用CPLD/FPGA等逻辑芯片实现。其中,寄存器用于输出一CKE控制信号CKE_#Ctrl,以控制所述CKE控制单元170是否将所述CKE信号DDR_CKE的电平设置为低电平。
请结合参照图6,图6是本申请实施例提供的复位装置100的举例示意图之二。所述软件复位单元130、硬件复位单元140、复位控制单元150及第一延时单元160也可以采用分离器件和逻辑芯片搭建实现。如图6所示,复位控制单元150及软件复位单元130均可以采用与门实现,比如,采用74HC08。硬件复位单元140可以采用驱动芯片实现,比如,74LVC245。所述第一延时单元160可以采用RC延时实现。
请结合参照图7,图7是本申请实施例提供的复位装置100的举例示意图之三。图6所示复位装置100应用于CPU110为要求同时进行硬件解复位和软件解复位的CPU,图7所示复位装置100则应用于CPU110为要求先进行硬件解复位、后进行软件解复位的CPU。在图6所示基础上,还包括通过RC延时实现的第二延时单元190。可选地,该驱动芯片可以实现RC延时及硬件复位单元140。
请结合参照图8,图8是图2中复位控制单元150的示意图。若所述第一复位信号#RST的脉冲宽度由复位源设置,则所述复位控制单元150可以直接采用与门(比如,74HC08)实现。若所述第一复位信号#RST的脉冲宽度由所述复位控制单元150的内部延时产生,所述复位控制单元150则还可以包括低脉冲的单稳电路。逻辑芯片与门输出一复位信号触发单稳电路,单稳电路输出时间宽度为T3的低脉冲复位信号。其中,T3大于CPU110的复位时长。单稳电路可以是,但不限于,由逻辑器件搭建实现,由上电复位芯片实现等。
请结合参照图9,图9是图3中CKE控制单元170的示意图之一。所述CKE控制单元170可以包括一模拟开关及电阻,所述CPU110还包括GPIO引脚,所述GPIO引脚与所述模拟开关电性连接,模拟开关的一端连接于所述CPU110与所述DRAM120之间的DDR控制总线上,模拟开关的另一端连接地。所述电阻一端接地,一端电性连接于所述GPIO引脚与所述模拟开关之间。所述CPU110通过所述GPIO引脚向所述模拟开关发送CKE控制信号CKE_#Ctrl,以控制所述模拟开关开启或闭合,由此控制所述CKE控制单元170是否将所述CKE信号DDR_CKE调整为低电平。
比如,在CKE控制信号CKE_#Ctrl为0时,所述模拟开关闭合,所述DRAM120接收的所述CKE信号DDR_CKE则为低电平。其中,在CPU110进行复位时,通过GPIO引脚发送的CKE控制信号CKE_#Ctrl默认为0。在CKE控制信号CKE_#Ctrl为1时,所述模拟开关打开,所述CKE控制单元170则不调整CKE信号DDR_CKE为低电平,此时,所述DRAM120接收的所述CKE信号DDR_CKE则由DRAM控制器112设置为高电平或低电平。
请结合参照图10,图10是图3中CKE控制单元170的示意图之二。与图9不同的是,图10中通过CPLD/FPGA实现的寄存器来控制模拟开关的打开及闭合,从而控制所述CKE信号DDR_CKE为低电平或高电平。
请结合参照图11,图11是本申请实施例提供的RC延时示意图。所述第一延时单元160及第二延时单元190均可以由RC(电阻电容)器件充电、放电实现,或者采用其他方式实现。
所述DRAM控制器112还用于在所述DRAM120处于自刷新模式时,输出电平为0或为1的第二复位信号DDR_#RST1,所述波形转换单元180在第二复位信号DDR_#RST1为高电平或低电平时,输出为高电平的第二复位信号DDR_#RST2,并将其发送至所述DRAM120。在复位完成后,所述DRAM控制器112输出带有上升沿的第二复位信号DDR_#RST1,所述波形转换单元180由CPLD或FPGA通过系统时钟采样该信号上升沿,输出调整后的电平为低电平的第二复位信号DDR_#RST2,并将其发送给所述DRAM120,以使所述DRAM120进行复位。
请参照图12,图12是本申请实施例提供的复位方法的流程示意图。本申请实施例还提供一种复位方法,所述复位方法应用于所述复位装置100。下面对所述复位方法进行阐述。
步骤S110,所述DRAM控制器112基于在第一时刻接收的软件复位信号向所述DRAM120发送自刷新命令,以使所述DRAM120通过执行所述自刷新命令进入自刷新模式。
步骤S120,所述CPU110基于在第二时刻接收的硬件复位信号进行硬件复位。
其中,所述第一时刻在所述第二时刻之前。
在本实施例中,所述DRAM控制器112先接收到所述软件复位信号#S-RST,后接收到硬件复位信号#H-RST。在接收到所述软件复位信号#S-RST后,所述DRAM控制器112通过向所述DRAM120发送自刷新命令,使得在所述CPU110进行软件复位及硬件复位时,所述DRAM120处于自刷新模式,以保证DRAM120中的数据不会丢失。
下面对该方法进行具体阐述。系统启动后,所述复位控制单元150产生为低脉冲的第一复位信号#RST。所述软件复位单元130在接收所述第一复位信号#RST后,在第一时刻产生低脉冲的软件复位信号#S-RST,并发送给所述DRAM控制器112。DRAM控制器112在接收到所述低脉冲的软件复位信号#S-RST后,向DRAM120发送自刷新命令,以使所述DRAM120进行自刷新模式。并且,所述CPU110的GPIO或者CPLD/FPGA通过输出等于0的CKE控制信号CKE_#Ctrl,使得CKE信号DDR_CKE为低电平;DRAM控制器112还输出#DDR_RST1为1或0的第二复位信号,通过所述波形转换单元180将第二复位信号#DDR_RST1调整为高电平,并将调整后的第二复位信号#DDR_RST2发送给所述DRAM120,以保证所述DRAM120处于自刷新模式。所述硬件复位单元140在接收到经所述第一延时单元160延时后的所述第一复位信号#D-RST后,在第二时刻产生所述硬件复位信号#H-RST,并发送给所述CPU110,以使所述CPU110进行硬件复位。此时有:CKE_#CTRL=0,DDR_CKE=0,#DDR_RST1=0,#DDR_RST2=1。
在复位结束后,所述复位控制单元150置#RST=1,硬件复位单元140置#H-RST=1,软件复位单元130同时置#S-RST=1,或者软件复位单元130在所述第二延时单元190的延时后置#S-RST=1,由此实现解复位,所述CPU110启动。所述CPU110初始化所述DRAM控制器112,配置当#S-RST=0时,自动发送自刷新命令。
DRAM控制器112置CKE_#CTRL=1,DDR_CKE=1,#DDR_RST1从0变1,#DDR_RST2输出低脉冲信号,DRAM120退出自刷新模式,并进行复位。所述CPU110则可以通过读取DRAM120中的数据,恢复复位前的状态,或分析系统异常原因等。由此,在CPU110软件复位及硬件复位器件不对DRAM120进行复位,在CPU110解复位后启动器件对所述DRAM120进行复位。
综上所述,本申请实施例提供一种复位装置及复位方法。所述复位装置可以包括电性连接的CPU及DRAM,其中,所述CPU包括一DRAM控制器。所述DRAM控制器用于基于在第一时刻接收的软件复位信号向所述DRAM发送自刷新命令,以使所述DRAM通过执行所述自刷新命令进入自刷新模式。所述CPU用于基于在第二时刻接收的硬件复位信号进行硬件复位,其中,所述第一时刻在所述第二时刻之前。由此,在所述CPU复位时,所述DRAM处于自刷新模式,可保证保存的数据不会丢失。并且,由于所述CPU进行了硬件复位,可避免因CPU复位不彻底而导致的CPU工作不稳定的情况发生。同时,无论CPU是否挂死,DRAM控制器在接收到软件复位信号后,都会向DRAM发生自刷新命令,以保证所述DRAM进入自刷新模式不受到CPU是否挂死的影响。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种复位装置,其特征在于,包括CKE控制单元、电性连接的CPU及DRAM、软件复位单元、硬件复位单元、复位控制单元及第一延时单元,其中,所述CPU包括一DRAM控制器;
所述DRAM控制器用于基于在第一时刻接收的软件复位信号向所述DRAM发送自刷新命令,以使所述DRAM通过执行所述自刷新命令进入自刷新模式;
所述CPU用于基于在第二时刻接收的硬件复位信号进行硬件复位,其中,所述第一时刻在所述第二时刻之前;
所述CKE控制单元电性连接于所述DRAM控制器与所述DRAM之间,所述CKE控制单元用于在所述DRAM处于自刷新模式时,将所述DRAM控制器发送的CKE信号设置为低电平,以使所述DRAM接收到低电平的所述CKE信号;
所述复位控制单元与所述软件复位单元及所述第一延时单元电性连接;所述复位控制单元用于产生解复位信号,并将所述解复位信号发送给所述软件复位单元及所述第一延时单元;
所述硬件复位单元与所述软件复位单元电性连接,所述硬件复位单元用于基于接收的所述解复位信号产生硬件解复位信号,并将所述硬件解复位信号发送给所述CPU及所述软件复位单元,以使所述CPU在第三时刻进行硬件解复位;
所述软件复位单元用于基于所述硬件解复位信号产生软件解复位信号,并将所述软件解复位信号发送给所述CPU,以使所述CPU在所述第三时刻进行软件解复位。
2.根据权利要求1所述的复位装置,其特征在于,所述装置还包括软件复位单元及硬件复位单元,所述CPU还包括软件复位引脚及硬件复位引脚;
所述软件复位单元经所述软件复位引脚与所述DRAM控制器电性连接,所述软件复位单元用于产生所述软件复位信号,并通过所述软件复位引脚在所述第一时刻传输所述软件复位信号至所述DRAM控制器;
所述硬件复位单元经所述硬件复位引脚与所述CPU电性连接,所述硬件复位单元用于产生所述硬件复位信号,并通过所述硬件复位引脚在所述第二时刻传输所述硬件复位信号至所述CPU。
3.根据权利要求2所述的复位装置,其特征在于,所述复位控制单元用于产生第一复位信号,并将所述第一复位信号发送给所述软件复位单元及所述第一延时单元;
所述软件复位单元用于基于接收的所述第一复位信号产生所述软件复位信号;
所述第一延时单元用于对所述第一复位信号进行延时,并将延时后的所述第一复位信号发送给所述硬件复位单元,以使所述硬件复位单元基于所述延时后的所述第一复位信号产生所述硬件复位信号。
4.根据权利要求3所述的复位装置,其特征在于,所述装置还包括波形转换单元;
所述波形转换单元与所述DRAM控制器及所述DRAM电性连接,所述波形转换单元用于将所述DRAM控制器发送的第二复位信号的低电平调整为高电平,并发送给所述DRAM。
5.根据权利要求4所述的复位装置,其特征在于,所述装置还包括第二延时单元;
所述第二延时单元与所述硬件复位单元及所述软件复位单元电性连接,所述第二延时单元用于对所述硬件解复位信号进行延时,并将延时后的所述硬件解复位信号发送给所述软件复位单元;
所述软件复位单元用于基于接收的所述延时后的所述硬件解复位信号产生所述软件解复位信号,并在所述第三时刻之后的第四时刻将所述软件解复位信号发送给所述CPU,以使所述CPU在所述第四时刻进行软件解复位。
6.根据权利要求5所述的装置,其特征在于,
所述DRAM控制器还用于基于接收的所述软件解复位信号控制所述DRAM退出自刷新模式,并通过所述波形转换单元将所述第二复位信号调整为低脉冲信号,以使所述DRAM进行复位。
7.根据权利要求6所述的装置,其特征在于,
所述CPU还用于在解复位后对所述DRAM控制器进行初始化配置,以使所述DRAM控制器在接收所述软件复位信号后自动向所述DRAM发送所述自刷新命令。
8.一种复位方法,其特征在于,应用于权利要求1-7中任意一项所述复位装置,所述方法包括:
所述DRAM控制器基于在第一时刻接收的软件复位信号向所述DRAM发送自刷新命令,以使所述DRAM通过执行所述自刷新命令进入自刷新模式;
所述CPU基于在第二时刻接收的硬件复位信号进行硬件复位,其中,所述第一时刻在所述第二时刻之前;
在所述DRAM为自刷新模式时,CKE控制单元用于将所述DRAM控制器发送的CKE信号设置为低电平,以使所述DRAM接收到低电平的所述CKE信号;
所述复位控制单元用于产生解复位信号,并将所述解复位信号发送给所述软件复位单元及所述第一延时单元;
所述硬件复位单元用于基于接收的所述解复位信号产生硬件解复位信号,并将所述硬件解复位信号发送给所述CPU及所述软件复位单元,以使所述CPU在第三时刻进行硬件解复位;
所述软件复位单元用于基于所述硬件解复位信号产生软件解复位信号,并将所述软件解复位信号发送给所述CPU,以使所述CPU在所述第三时刻进行软件解复位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810651177.6A CN110633166B (zh) | 2018-06-22 | 2018-06-22 | 复位装置及复位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810651177.6A CN110633166B (zh) | 2018-06-22 | 2018-06-22 | 复位装置及复位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110633166A CN110633166A (zh) | 2019-12-31 |
CN110633166B true CN110633166B (zh) | 2023-03-21 |
Family
ID=68967210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810651177.6A Active CN110633166B (zh) | 2018-06-22 | 2018-06-22 | 复位装置及复位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110633166B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111208893B (zh) * | 2020-01-13 | 2021-07-06 | 深圳震有科技股份有限公司 | 一种cpu复位的控制方法、系统及存储介质 |
CN113535441B (zh) * | 2020-04-13 | 2023-01-31 | 烽火通信科技股份有限公司 | 一种嵌入式系统故障诊断装置及方法 |
CN114443442B (zh) * | 2022-04-08 | 2022-07-22 | 希诺麦田技术(深圳)有限公司 | 日志存储方法及电子设备 |
CN116382977B (zh) * | 2023-03-31 | 2023-12-01 | 上海玫克生储能科技有限公司 | 一种应用于数据通信的复位检测方法、系统及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1835119A (zh) * | 2005-03-15 | 2006-09-20 | 尔必达存储器股份有限公司 | 半导体存储器及分析半导体存储器故障的方法 |
US9396788B1 (en) * | 2015-01-22 | 2016-07-19 | Fuji Xerox Co., Ltd. | Information processing apparatus and information processing method |
CN106486154A (zh) * | 2015-08-26 | 2017-03-08 | 佳能株式会社 | 用于控制存储器设备的存储器控制电路及其控制方法 |
CN111045505A (zh) * | 2019-10-23 | 2020-04-21 | 盛科网络(苏州)有限公司 | 一种片上系统的延时复位装置及方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4298610B2 (ja) * | 2004-08-31 | 2009-07-22 | キヤノン株式会社 | データ記憶装置 |
CN100416458C (zh) * | 2005-12-09 | 2008-09-03 | 中兴通讯股份有限公司 | 一种软硬件协同防止系统死机中断业务的复位方法 |
CN100530144C (zh) * | 2006-11-01 | 2009-08-19 | 华为技术有限公司 | 防止内存数据丢失的方法和装置 |
CN102508533B (zh) * | 2011-09-21 | 2014-07-09 | 迈普通信技术股份有限公司 | 一种复位控制装置和方法 |
CN104572198B (zh) * | 2014-12-31 | 2018-04-10 | 华为技术有限公司 | 一种业务恢复方法及装置 |
CN106528244B (zh) * | 2016-11-25 | 2019-05-03 | 迈普通信技术股份有限公司 | Fpga配置文件自动加载系统及方法 |
-
2018
- 2018-06-22 CN CN201810651177.6A patent/CN110633166B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1835119A (zh) * | 2005-03-15 | 2006-09-20 | 尔必达存储器股份有限公司 | 半导体存储器及分析半导体存储器故障的方法 |
US9396788B1 (en) * | 2015-01-22 | 2016-07-19 | Fuji Xerox Co., Ltd. | Information processing apparatus and information processing method |
CN106486154A (zh) * | 2015-08-26 | 2017-03-08 | 佳能株式会社 | 用于控制存储器设备的存储器控制电路及其控制方法 |
CN111045505A (zh) * | 2019-10-23 | 2020-04-21 | 盛科网络(苏州)有限公司 | 一种片上系统的延时复位装置及方法 |
Non-Patent Citations (2)
Title |
---|
Ishwar Bhati等.Coordinated refresh: Energy efficient techniques for DRAM refresh scheduling.2013,第205-210页. * |
高胜.高速采样数据存储控制器的设计与实现.2017,(第02期),I137-92. * |
Also Published As
Publication number | Publication date |
---|---|
CN110633166A (zh) | 2019-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110633166B (zh) | 复位装置及复位方法 | |
US10579462B2 (en) | Method and apparatus for using an error signal to indicate a write request error and write request acceptance | |
US7733731B2 (en) | Control of inputs to a memory device | |
JPH0743931B2 (ja) | リフレツシユ制御手段付メモリ−・システム | |
CN109767797B (zh) | 伪静态随机存取存储器及其刷新的方法 | |
TWI590244B (zh) | 自我再新控制電路及包括其之記憶體 | |
US11320999B2 (en) | System and method for retaining DRAM data when reprogramming reconfigureable devices with DRAM memory controllers incorporating a data maintenance block | |
US20140153350A1 (en) | Methods and apparatuses for refreshing memory | |
TWI527030B (zh) | 用於自我刷新模式之記憶體裝置控制 | |
US20130182524A1 (en) | Semiconductor memory devices having internal clock signals and memory systems including such memory devices | |
US20180088862A1 (en) | Multi-purpose register pages for read training | |
JP2019506663A (ja) | メモリ装置の低電力状態の終了のための装置及び方法 | |
JP4518563B2 (ja) | 半導体記憶装置 | |
EP2950218A1 (en) | System and method for retaining dram data when reprogramming reconfigurable devices with dram memory controllers | |
US20060171214A1 (en) | Internal voltage generation control circuit and internal voltage generation circuit using the same | |
KR100914294B1 (ko) | 오토 리프래쉬 제어 장치 | |
JP2000163962A (ja) | クロック同期システム | |
US11042492B2 (en) | Memory module with programmable command buffer | |
US20180293189A1 (en) | Memory manager for autonomous memory device | |
EP3341847B1 (en) | System and method for retaining dram data when reprogramming reconfigurable devices with dram memory controllers incorporating a data maintenance block colocated with a memory module or subsystem | |
JPH04331506A (ja) | パルス発生器 | |
US9460765B2 (en) | Semiconductor apparatus having control block generating column select signal and overdrive signal | |
KR101735082B1 (ko) | 메모리 장치의 내부 라이트 신호 지연회로 및 지연 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |