一种低功耗内存控制方法和内存控制模块的制作方法

文档序号:6608727阅读:174来源:国知局
专利名称:一种低功耗内存控制方法和内存控制模块的制作方法
技术领域
本发明涉及内存控制技术领域,特别涉及一种低功耗内存控制方法和内存控制模块。
背景技术
在片上系统(System On Chip,SOC)芯片的设计中,往往需要在SOC芯片上集成较大容量的内存供SOC芯片上各个硬件模块存取数据。为节省芯片上宝贵的空间,常采用单管单元的静态随机存储器(Static RandomAccess Memory,SRAM)作为SOC芯片上的内存。由于单管单元的SRAM(以下简称为1T SRAM)不能长时间保持数据,需要每个一定周期刷新一下数据内容,空闲时间每刷新128千比特的数据也需要1毫安(mA)的电流。空闲时的功率消耗会增加SOC芯片的耗电量,特别对于手持消费类电子产品来说,尽量减小SOC芯片的功率消耗是非常重要的问题。
为了降低1T SRAM的功耗,目前常采用的做法是在1T SRAM处于空闲状态时,使1T SRAM进入低功耗的等待模式,等待模式下的电流是普通空闲模式的10%;当处于等待模式的1T SRAM收到读/写控制信号时,再从等待模式恢复到正常的工作模式。
图1为1T SRAM进入等待模式以及从等待模式恢复到工作模式的控制信号示意图,其中,等待模式选择信号和读/写信号都是低电平有效。1TSRAM进入等待模式的步骤为第T1个时钟周期1T SRAM已经有足够多的时钟周期未收到读/写请求,或者在第T1个时钟周期收到的是最后一个读/写请求,1T SRAM进入空闲状态;
第T1+1个时钟周期将等待模式选择信号置为有效,时钟信号仍保持;第T1+2个时钟周期关闭1T SRAM时钟信号,使1T SRAM进入等待模式。
1T SRAM进入等待模式之后,设在第T2个时钟周期收到了总线的读/写请求并由此产生唤醒信号,从等待模式恢复到工作模式则要经历如下步骤第T2+1个时钟周期恢复时钟信号,将等待模式选择信号置为无效;第T2+2个时钟周期1T SRAM恢复到工作模式,可以进行读/写操作。
现有方法对于1T SRAM从等待模式恢复到工作模式需要两个时钟周期的开销。如果1T SRAM需要频繁进行工作模式和等待模式的切换,就会对1T SRAM的带宽利用率造成相当大的损失。

发明内容
有鉴于此,本发明的目的在于,提出一种低功耗内存控制方法,能够实现对低功耗内存控制的同时,节省内存从等待模式恢复到工作模式的带宽开销。该方法对内存的控制分为4个控制状态正常状态、初步等待状态、等待状态和恢复状态,并包括如下步骤A、在正常状态下,判断是否满足转换为等待状态的条件,若是,则从正常状态转换为初步等待状态,使内存从工作模式进入等待模式;在初步等待状态下经历一个空闲的时钟周期后则转换到等待状态;B、在等待状态下,如果第n个时钟周期接收到来自总线的第一写请求,则转换为恢复状态;在第n+1周期,使内存从等待模式进入工作模式,并向总线返回与第一写请求对应的写有效信号,在第n+2时钟周期对内存执行第一写请求对应的写操作。
步骤A所述从正常状态转换为初步等待状态之后,转至如下步骤B1、在初步等待状态下的第一个时钟周期,如果接收到来自总线的第一写请求,则转换为恢复状态;在下一个时钟周期,使内存进入工作模式,并向外部返回与第一写请求对应的写有效信号,然后在第三个时钟周期对内存进行与第一写请求对应的写操作。
所述步骤B还可以进一步包括在等待状态或初步等待状态下,如果在当前时钟周期接收到来自总线的读请求,则转换为恢复状态;并在下一个时钟周期使内存进入工作模式,等待经过一个空闲的时钟周期从恢复模式转换到正常状态后,再使内存执行所述读请求对应的读操作。
所述初步等待状态转换到等待状态进一步包括关闭内存的时钟信号;所述等待状态转换到恢复状态进一步包括恢复内存的时钟信号。
所述使内存从工作模式进入等待模式包括将输入到内存的等待模式选择信号置为有效;所述使内存从等待进入工作模式包括将输入到内存的等待模式选择信号置为无效。
步骤A所述从正常状态转换为等待状态的条件为在预先设置的时长内没有收到读/写请求,或者收到空闲指示信号。
所述转换为恢复状态之后,进一步包括判断当前时钟周期是否收到来自总线的读/写请求,若是,则保持恢复状态,否则转换为正常状态。
若在恢复状态下的第k个时钟周期收到来自总线的写请求,则进一步包括保持为恢复状态,在当前时钟周期向总线返回写有效信号,在第k+1个时钟周期对内存执行所述写请求对应的写操作。
本发明还提供一种内存控制模块,包括空闲判断模块,用于接收来自总线接口的写请求,根据所收到写请求的情况以及状态机模块的当前状态,向状态机模块发送写指示信号,唤醒信号或空闲指示信号;在状态机模块处于等待状态时,接受到总线接口的写请求后,首先给状态机模块发出一个唤醒信号,下一个时钟周期再发出对应所述写请求的写指示信号;状态机模块,用于根据来自空闲判断模块的唤醒信号、读/写指示信号或空闲指示信号进行工作状态、初步等待状态、等待状态和恢复状态之间的状态切换;数据选择模块,用于接收状态机模块的状态以及来自总线接口的读/写请求,在状态机模块为正常状态时,根据总线接口的读/写请求执行正常的读/写操作;在状态机模块处于等待状态时,若在第n个时钟周期收到来自总线接口的写请求,则在第n+1个时钟周期状态机模块转换到恢复状态时向所述总线接口返回写有效信号,并在第n+2个时钟周期内对内存的执行相应的写操作。
所述内存控制模块进一步包括信号控制模块,用于当状态机模块从初步等待状态转换为等待状态时,关闭内存的时钟信号;当状态机模块从等待状态转换为恢复状态时,开启内存的时钟信号;当状态机模块从正常状态转换为初步等待状态时,将等待模式选择信号置为有效;当状态机模块从恢复状态转换为正常状态时,将等待模式选择信号置为无效。
所述状态机模块进行状态切换包括当状态机模块处于正常状态时,收到空闲指示信号则转换为初步等待状态;当状态机模块转换为初步等待状态的下一个时钟周期内,若收到读/写指示信号则转换为恢复状态,若没有收到读/写指示信号则转换为等待状态;当状态机模块处于等待状态时,若收到唤醒信号则转换为恢复状态,否则保持为等待状态;当状态机模块处于恢复状态时,若经过一个时钟周期的空闲则转换为正常状态,若收到读/写指示信号则保持恢复状态。
所述数据选择模块进一步用于在状态机模块处于初步等待状态或恢复状态的时钟周期内收到来自总线接口的写请求,所述数据选择模块在当前时钟周期内向所述总线接口返回写有效信号,并在下一个时钟周期内对内存执行相应的写操作。
所述数据选择模块进一步用于,在状态机模块处于等待状态时,在当前时钟周期内接收来自总线接口的读请求,等待一个空闲时钟周期当状态机模块转换为正常状态时,对内存执行所述读请求对应的读操作。
所述空闲判断模块进一步包括预先设定时长的空闲定时器;则所述空闲判断模块根据所收到读/写请求的情况,向状态机模块发送读/写指示信号或唤醒信号或空闲指示信号为当收到读/写请求则启动所述空闲定时器,判断所述空闲定时器超时前是否收到新的读/写请求以及状态机当前状态,若收到读/写请求则停止所述空闲定时器,若状态机模块处于等待状态则向状态机模块发送唤醒信号,若状态机模块处于除等待状态之外的其它状态则向状态机模块发射读/写指示信号;若没有收到读/写请求并且状态机模块处于除等待状态之外的其它状态,则向状态机模块发送空闲指示信号。
所述内存控制模块控制的内存为单管单元的静态随机存储器。
从本发明技术方案可以看出,当内存收到写请求后,最长只需要1个时钟周期就可以返回写有效信号,特别是当内存控制模块处于恢复状态S1时,每收到1个写请求都可以立即返回写有效信号,这样,对于外部的通过总线接口访问内存的设备而言,其可以最长只等待1个时钟周期就可收到写有效信号,就此认为前一个写操作已完成而马上开始下一个操作,由此可见,本发明可以在实现低功耗内存控制的前提下提高内存带宽的利用率,特别是内存需要频繁进行上述切换时,效果则更加明显。


图1为现有技术实现低功耗内存控制的信号时序图;图2为本发明实施例的内存控制模块结构示意图;图3为本发明实施例内存控制模块中的状态机模块状态转换示意图;图4为本发明实施例实现低功耗内存控制的信号时序图;图5为本发明实施例实现低功耗内存控制的流程图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细阐述。
本发明方案可以使1T SRAM从等待模式恢复到正常的工作模式的过程中,比现有技术方安节省1个周期的写唤醒时间。在高速内存总线控制中,为了实现低功耗1T SRAM需要频繁进入等待模式,这里1个周期的节省能够很大的提高总线的数据响应。
本发明实施例的内存控制模块如图2所示,其中,总线接口210为硬件模块与内存控制模块220之间的接口,将硬件模块对内存的访问转换为基本的读/写请求、地址或读/写控制信号。内存控制模块220包括空闲判断模块221,用于接收来自总线接口的读写请求,根据所述读写请求以及状态机模块222的当前状态,向状态机模块222发送相应的指示信号。具体地说,在状态机模块222处于等待状态S3时,每收到读/写请求会向状态机模块222发出一个唤醒信号,并在下一个时钟周期发出一个读/写指示信号;在状态机模块222处于其他状态时,每收到读/写请求则向状态机模块222发送一个读/写指示信号。该模块包括一个空闲定时器,每次收到读/写请求则启动该定时器,判断定时器超时前是否收到新的读/写请求,若是则停止空闲定时器并向状态机模块222发送读/写指示信号或唤醒信号,否则向状态机模块222发送空闲指示信号。
或者,总线模块210在发送读/写请求时携带空闲指示标识表明当前是最后一个读/写请求,空闲判断模块221收到空闲指示标识,则在下一个时钟周期向状态机模块222发送空闲指示信号。
状态机模块222,用于根据空闲判断模块221的读/写指示信号或唤醒信号进行状态的切换。状态机模块222共有四种状态,分别是正常状态S0、恢复状态S1、初步等待状态S2和等待状态S3。
当状态机模块222处于S0状态时,则通知信号控制模块223输出正常的时钟信号,等待模式选择信号置为高电平无效;数据选择模块224收到的读/写控制信号有效,1T SRAM 230可以正常地读/写数据;在S0状态时,若收到来自空闲判断模块的空闲指示信号,则转换到S2状态。
当状态机模块222处于S2状态时,则通知信号控制模块223将等待模式选择信号置为低电平有效,时钟信号仍保持正常状态;数据选择模块224收到的读/写控制信号无效;在S2状态时,经过一个时钟周期的空闲,即进入S2状态的下一个时钟周期没有收到读/写指示信号则转换到S3状态;若在下一个时钟周期收到读/写指示信号则转换到S1状态。
当状态机模块222处于S3状态时,通知信号控制模块223将等待模式选择信号置为低电平有效,时钟信号关闭;数据选择模块224收到的读/写控制信号无效;在S3状态时,若收到唤醒信号则转换到S1状态。
当状态机模块222处于恢复状态S1时,通知信号控制模块223输出正常的时钟信号,等待模式选择信号置为高电平无效。在S1状态时,若经过一个空闲的时钟周期则转换到S0状态;若收到读/写指示信号则保持为S1状态,直到出现一个空闲的时钟周期为止。
如图3所示,假设该模块初始处于正常状态S0,在该状态下,如果收到读/写指示状态,则仍保持为S0状态,若收到空闲指示信号,则转换到初步等待状态S2。在进入S2状态后,再经过一个周期的空闲则转换到等待状态S3,若收到读/写指示信号则转换到恢复状态S1。在S3状态下,若收到空闲指示信号则仍然保持为S3状态,若收到唤醒信号则转换到恢复状态S1。在S1状态下,若收到读/写指示信号则仍保持为S1状态,若有一个周期的空闲时间,则转换为正常状态S0。
信号控制模块223,用于根据状态机模块222的通知,开启或关闭1TSRAM 230的时钟信号,或者置等待模式选择信号有效或无效。
数据选择模块224,用于根据状态机模块222状态,对所述读/写请求响应,对1T SRAM230进行读/写控制操作,或者不对所述读/写信号响应。
具体地说,若状态机模块222处于S0状态,且若数据选择模块224在第T1个时钟周期收到来自总线接口210的读控制信号和读地址,则在该时钟周期内将读控制信号和读地址传递给内存,并且在第T1+1个时钟周期读取1T SRAM230所述读地址中的数据,将所读取的数据发送到总线接口210;若数据选择模块224在第T1个时钟周期收到来自总线接口210的写控制信号、写地址和写数据,则在同一时刻将这些信号传递给内存,内存将在第T1+1个时钟周期将所述写数据写入1T SRAM 230的所述写地址中并向总线接口返回写有效信号。
若状态机模块222处于S2或S3状态,则数据选择模块224无论收到总线接口210的任何信号都不进行任何操作,即此时所收到的读/写控制信号均为无效状态。
若状态机模块222在S3状态第n个时钟周期接收到1个唤醒信号,并在进入S1状态后的下一个时钟周期,即在第n+1个时钟周期收到的写指示信号,即表示数据选择模块224在第n个时钟周期接收到了写控制信号、写地址和写数据,则数据选择模块224在第n+1个时钟周期返回写有效信号,在第n+2个时钟周期执行相应的写控制操作。
若状态机模块222处于S1状态中时,若数据选择模块224在第n个时钟周期接收到写控制信号、写地址和写数据,则立刻返回写有效信号,并在第n+1个时钟周期执行相应的写控制操作。若数据选择模块224在第n个时钟周期接收到读控制信号和读地址,则等待状态机模块222进入S0状态后,执行读操作。
也就是说,状态机模块222在由S3状态进入S1状态的过程中,以及处于S1状态中时,如果数据选择模块224收到的是读控制信号和读地址,则等待状态机模块222进入S0状态之后,才执行读操作。
状态机模块222从S3或S2状态返回到S1状态后,如果总线接口210发出的是写请求,那么内存控制模块220立刻向总线接口210返回一个写有效信号,而真正的写数据和控制信号需要等1个时钟周期后才会将数据写入1T SRAM 230中;同时,如果这一个时钟周期为空闲周期,则状态机模块222进入S0状态,否则继续保持S1状态;也就是说如果进入S1状态后遇到一个空闲周期,则状态机模块222进入S0状态,如果此时收到来自总线接口210的写请求,则内存控制模块220同样会立刻返回一个写有效信号,由于当前还在处理1个时钟周期前的读/写控制信号,则在1个周期后执行所述当前时刻写请求对应的写控制操作。这样,1T SRAM 230从等待状态S3收到唤醒信号,恢复到S1状态所需的开销为一个时钟周期;而处于S1状态时,则可以立即对来自总线的写请求进行响应。
由于本发明节省的1个时钟周期是发生在写操作过程中,因此图4针对写操作过程,给出本发明实施例中1T SRAM进入等待模式以及从等待模式恢复到工作模式的控制信号示意图,进入等待模式的各个周期信号变化过程如下第T1个时钟周期1T SRAM已经有足够多的时钟周期未收到读/写请求,或者在第T1个时钟周期收到的是最后一个读/写请求,1T SRAM进入空闲状态;第T1+1个时钟周期1T SRAM230接收到的写信号(即前述写控制信号)为无效,即数据选择模块224不输出写控制信号至1T SRAM230;总线接口输出的写有效信号为无效,即数据选择模块224不输出写有效信号;写指示信号为无效,即空闲判断模块221输出空闲指示信号;等待模式选择信号置为有效,1T SRAM从S0状态转换为S2状态;第T1+2个时钟周期上述各个信号保持不变,关闭时钟信号,1T SRAM转换为S3状态。
在S3状态下,经过若干个时钟周期,直到第T2个时钟周期,总线接口发出第一个写请求,则1T SRAM经历从等待模式到工作模式的转换过程,具体如下第T2个时钟周期唤醒信号置为有效;第T2+1个时钟周期唤醒信号无效,写指示信号和写有效信号置为有效;等待模式选择信号置为无效;时钟信号恢复;1T SRAM转换为S1状态;
第T2+2个时钟周期数据选择模块224将第一个写请求的写信号发送到IT SRAM,从而将第一个写请求的写数据写入1T SRAM230。由于此时总线接口又接收到第二个写信号,则写指示信号和总结接口输出的写有效信号仍保持有效,即数据选择模块在内存控制模块220收到写请求时立即返回写有效信号至总线接口,1T SRAM保持为S1状态。
T2+3个时钟周期将T2+2个周期内的第二个写请求的写数据写入1TSRAM。由于此时总线接口没有接收到新的读/写请求,则写指示信号和写有效信号置为无效。由于该周期为一个空闲的时钟周期,则1T SRAM进入S0状态。
以下,列出在第T2个时钟周期总线接口发出一个读请求后的控制信号时序,该过程没有在图4中示出。
第T2个时钟周期总线接口接收到读请求,唤醒信号置为有效;第T2+1个时钟周期唤醒信号置为无效,读指示信号置为有效;等待模式选择信号置为无效;时钟信号恢复;1T SRAM转换为S1状态;此时,总线接口没有收到任何读/写请求,即T2+1为一个空闲时钟周期。
第T2+2个时钟周期由于T2+1为空闲时钟周期,1T SRAM转换为S0状态,执行总线接口在T2时钟周期接收到的读请求。
如果第T2+1个时钟周期不为空闲时钟周期,则T2+2个时钟周期不进入S0状态,即一直等待空闲时钟周期的出现。
本发明实施例实现1T SRAM的状态转换的处理流程如图5所示,包括如下步骤步骤501在正常状态下,内存控制模块收到读/写请求后,启动等待定时器;所述等待定时器的时长可以预先设置,例如设为2至10个时钟周期;步骤502判断等待定时器超时前是否收到新的读/写请求,若是则停止所述等待定时器并转至步骤501,否则执行步骤503;步骤503在所述等待定时器超时所对应的时钟周期将等待模式选择信号置为有效,进入初步等待状态S2,1T SRAM转换为等待模式;设所述时钟周期为第T1个时钟周期;步骤504判断在第T1+1个时钟周期是否收到来自总线接口的读/写请求,若是则令k=T1并转至步骤506;否则转至步骤505;步骤505停止时钟信号,进入等待状态S3;步骤506判断第T2时钟周期内是否收到唤醒信号,若是则执行步骤507(为方便说明设k=T2),否则保持为等待状态;步骤507在第k+1个时钟周期启动1T SRAM的时钟信号,进入恢复状态S1,1T SRAM转换为工作模式。如果是从步骤504直接转到本步骤,则这里k=T1。
步骤508判断在第k+1个时钟周期是否收到读/写指示信号,若是则转至步骤509,否则执行步骤510;若所述读/写指示信号为写指示,则同时向总线接口返回写有效信号并执行步骤509。
若所述读/写指示信号为读指示,则退出本发明流程执行现有技术的低功耗内存控制的后续操作等待1个空闲的时钟周期后,进入正常工作状态,执行读操作。以下步骤中,若再收到读请求则同样退出本发明流程执行现有技术的低功耗内存控制的后续操作;故下面只讨论收到写指示或没有收到读/写指示信号这两种情况。
步骤509在第k+1个时钟周期进行如下操作将等待模式选择信号置为无效,执行第k个时钟周期收到的写指示对应的写操作;令k=k+1,返回步骤507。
步骤510在第k+1个时钟周期进行如下操作将等待模式选择信号置为无效,执行第k个时钟周期所收到的写指示对应的写操作,进入正常工作状态S0并结束本流程。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种低功耗内存控制方法,其特征在于,对内存的控制分为4个控制状态正常状态、初步等待状态、等待状态和恢复状态,并包括如下步骤A、在正常状态下,判断是否满足转换为等待状态的条件,若是,则从正常状态转换为初步等待状态,使内存从工作模式进入等待模式;在初步等待状态下经历一个空闲的时钟周期后则转换到等待状态;B、在等待状态下,如果第n个时钟周期接收到来自总线的第一写请求,则转换为恢复状态;在第n+1周期,使内存从等待模式进入工作模式,并向总线返回与第一写请求对应的写有效信号,在第n+2时钟周期对内存执行第一写请求对应的写操作。
2.根据权利要求1所述的低功耗内存控制方法,其特征在于步骤A所述从正常状态转换为初步等待状态之后,转至如下步骤B1、在初步等待状态下的第一个时钟周期,如果接收到来自总线的第一写请求,则转换为恢复状态;在下一个时钟周期,使内存进入工作模式,并向外部返回与第一写请求对应的写有效信号,然后在第三个时钟周期对内存进行与第一写请求对应的写操作。
3.根据权利要求1所述的低功耗内存控制方法,其特征在于,所述步骤B进一步包括在等待状态或初步等待状态下,如果在当前时钟周期接收到来自总线的读请求,则转换为恢复状态;并在下一个时钟周期使内存进入工作模式,等待经过一个空闲的时钟周期从恢复模式转换到正常状态后,再使内存执行所述读请求对应的读操作。
4.根据权利要求1所述的低功耗内存控制方法,其特征在于所述初步等待状态转换到等待状态进一步包括关闭内存的时钟信号;所述等待状态转换到恢复状态进一步包括恢复内存的时钟信号。
5.根据权利要求1所述的低功耗内存控制方法,其特征在于,所述使内存从工作模式进入等待模式包括将输入到内存的等待模式选择信号置为有效;所述使内存从等待进入工作模式包括将输入到内存的等待模式选择信号置为无效。
6.根据权利要求1所述的低功耗内存控制方法,其特征在于,步骤A所述从正常状态转换为等待状态的条件为在预先设置的时长内没有收到读/写请求,或者收到空闲指示信号。
7.根据权利要求1至6任一项所述的低功耗内存控制方法,其特征在于,所述转换为恢复状态之后,进一步包括判断当前时钟周期是否收到来自总线的读/写请求,若是,则保持恢复状态,否则转换为正常状态。
8.根据权利要求7所述的低功耗内存控制方法,其特征在于,若在恢复状态下的第k个时钟周期收到来自总线的写请求,则进一步包括保持为恢复状态,在当前时钟周期向总线返回写有效信号,在第k+1个时钟周期对内存执行所述写请求对应的写操作。
9.一种内存控制模块,其特征在于,包括空闲判断模块,用于接收来自总线接口的写请求,根据所收到写请求的情况以及状态机模块的当前状态,向状态机模块发送写指示信号,唤醒信号或空闲指示信号;在状态机模块处于等待状态时,接受到总线接口的写请求后,首先给状态机模块发出一个唤醒信号,下一个时钟周期再发出对应所述写请求的写指示信号;状态机模块,用于根据来自空闲判断模块的唤醒信号、读/写指示信号或空闲指示信号进行工作状态、初步等待状态、等待状态和恢复状态之间的状态切换;数据选择模块,用于接收状态机模块的状态以及来自总线接口的读/写请求,在状态机模块为正常状态时,根据总线接口的读/写请求执行正常的读/写操作;在状态机模块处于等待状态时,若在第n个时钟周期收到来自总线接口的写请求,则在第n+1个时钟周期状态机模块转换到恢复状态时向所述总线接口返回写有效信号,并在第n+2个时钟周期内对内存的执行相应的写操作。
10.根据权利要求9所述的内存控制模块,其特征在于,所述内存控制模块进一步包括信号控制模块,用于当状态机模块从初步等待状态转换为等待状态时,关闭内存的时钟信号;当状态机模块从等待状态转换为恢复状态时,开启内存的时钟信号;当状态机模块从正常状态转换为初步等待状态时,将等待模式选择信号置为有效;当状态机模块从恢复状态转换为正常状态时,将等待模式选择信号置为无效。
11.根据权利要求9所述的内存控制模块,其特征在于,所述状态机模块进行状态切换包括当状态机模块处于正常状态时,收到空闲指示信号则转换为初步等待状态;当状态机模块转换为初步等待状态的下一个时钟周期内,若收到读/写指示信号则转换为恢复状态,若没有收到读/写指示信号则转换为等待状态;当状态机模块处于等待状态时,若收到唤醒信号则转换为恢复状态,否则保持为等待状态;当状态机模块处于恢复状态时,若经过一个时钟周期的空闲则转换为正常状态,若收到读/写指示信号则保持恢复状态。
12.根据权利要求11所述的内存控制模块,其特征在于,所述数据选择模块进一步用于在状态机模块处于初步等待状态或恢复状态的时钟周期内收到来自总线接口的写请求,所述数据选择模块在当前时钟周期内向所述总线接口返回写有效信号,并在下一个时钟周期内对内存执行相应的写操作。
13.根据权利要求8所述的内存控制模块,其特征在于所述数据选择模块进一步用于,在状态机模块处于等待状态时,在当前时钟周期内接收来自总线接口的读请求,等待一个空闲时钟周期当状态机模块转换为正常状态时,对内存执行所述读请求对应的读操作。
14.根据权利要求9所述的内存控制模块,其特征在于,所述空闲判断模块进一步包括预先设定时长的空闲定时器;则所述空闲判断模块根据所收到读/写请求的情况,向状态机模块发送读/写指示信号或唤醒信号或空闲指示信号为当收到读/写请求则启动所述空闲定时器,判断所述空闲定时器超时前是否收到新的读/写请求以及状态机当前状态,若收到读/写请求则停止所述空闲定时器,若状态机模块处于等待状态则向状态机模块发送唤醒信号,若状态机模块处于除等待状态之外的其它状态则向状态机模块发射读/写指示信号;若没有收到读/写请求并且状态机模块处于除等待状态之外的其它状态,则向状态机模块发送空闲指示信号。
15.根据权利要求9至14任一项所述的内存控制模块,其特征在于,所述内存控制模块控制的内存为单管单元的静态随机存储器。
全文摘要
本发明公开了一种低功耗内存控制方法,包括如下步骤A、在正常状态下,判断是否满足转换为等待状态的条件,若是,则从正常状态转换为初步等待状态,使内存从工作模式进入等待模式;在初步等待状态下经历一个空闲的时钟周期后则转换到等待状态;B、在等待状态下,如果第n个时钟周期接收到来自总线的第一写请求,则转换为恢复状态;在第n+1周期,使内存从等待模式进入工作模式,并向总线返回与第一写请求对应的写有效信号,在第n+2时钟周期对内存执行第一写请求对应的写操作。本发明还公开了一种用于实现上述方法的内存控制模块。本发明方案可以在实现低功耗内存控制的前提下,提高内存带宽的利用率。
文档编号G06F1/32GK101034306SQ200710098659
公开日2007年9月12日 申请日期2007年4月24日 优先权日2007年4月24日
发明者李晓强 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1