掌桥专利:专业的专利平台
掌桥专利
首页

一种用于电力专用芯片的低功耗存储控制器及控制方法

文献发布时间:2023-06-19 09:30:39


一种用于电力专用芯片的低功耗存储控制器及控制方法

技术领域

本发明属于低功耗存储器控制领域,具体是一种用于电力专用芯片的软硬件结合的低功耗存储控制器及控制方法。

背景技术

NOR-Flash是一种非易失性存储器,既可重复擦写,又可在掉电情况下保存数据,具有较好的灵活性。由于NOR-Flash的地址线和数据线分开,处理器可以随机读取存储器上的任何区域,符合CPU的指令执行要求。而且NOR-Flash具有低成本,高安全的特性。因此NOR-Flash在电力专用芯片中广泛应用于程序存储。

电力专用芯片广泛用于电力工业领域,很多电力专用芯片都内置于电池供电的电子设备中,对续航能力有很高的要求。例如在用电信息采集的应用中,对系统的功耗有严格的要求,在电池供电的情况下要求系统正常工作长达十年以上。可见低功耗是电力专用芯片的重要指标。

NOR-Flash越来越广泛地作为电力专用芯片内部的程序存储空间,而Flash读取操作会产生较大功耗,因此降低电力专用芯片中CPU访问NOR-Flash带来的功耗显得十分必要。

发明内容

为了解决现有技术中存在的上述技术问题,本发明提出了一种用于电力专用芯片的软硬件结合的低功耗存储控制器及控制方法。具体技术方案如下:

一种用于电力专用芯片的软硬件结合的低功耗存储控制器,包括总线接口子模块,寄存器子模块,Nor-Flash SCR配置子模块,读数据缓冲子模块,Nor-Flash接口协议转换子模块,多路复用器子模块,

所述总线接口子模块,用于采样CPU通过AMBA总线发起的读写请求相关的控制信号、地址信号和数据信号,并返回读数据和响应信号;

所述寄存器子模块,通过配置寄存器子模块中的寄存器实现对Nor-Flash存储器的不同访问模式;

所述Nor-Flash SCR配置子模块,用于芯片上电时自动完成Nor-Flash设备配置寄存器配置操作;

所述读数据缓冲子模块,用于暂存从Nor-Flash存储器返回的高位宽数据信息;

所述Nor-Flash接口协议转换子模块,配合寄存器子模块,实现将总线接口子模块采样到的读写操作时序转换为Nor-Flash端口协议时序;

所述多路复用器子模块,实现选择由Nor-Flash SCR配置子模块或Nor-Flash接口协议转换子模块产生的Nor-Flash端口控制信号输出到Nor-Flash存储器。

进一步的,所述总线接口子模块对于CPU通过AMBA总线发起的Nor-Flash存储器写访问请求,将地址和数据信息输出给Nor-Flash接口协议转换子模块,对于CPU通过AMBA总线发起的Nor-Flash存储器读访问请求,将Nor-Flash存储器或读数据缓冲子模块返回的数据信息输出给CPU。

进一步的,所述不同访问模式包括整片擦除操作,页擦除操作,写操作,普通读操作,VREAD读操作,RECALL读操作或LVCTL读操作。

进一步的,所述寄存器子模块还用于Nor-Flash存储器不同读操作模式下时序参数配置。

进一步的,所述Nor-Flash SCR配置子模块在配置操作结束后关断Nor-Flash SCR配置子模块的时钟。

进一步的,所述高位宽数据信息由总线接口子模块从读数据缓冲子模块取走对应位宽的数据返回给CPU。

进一步的,对于CPU通过AMBA总线发起的Nor-Flash存储器读访问请求,所述读数据缓冲子模块首先判断读地址是否位于当前数据缓冲器地址中,若是,则直接从读数据缓冲子模块返回对应位宽的数据给总线接口子模块,不访问Nor-Flash存储器;否则向Nor-Flash接口协议转换子模块发起Nor-Flash存储器读访问请求。

一种用于电力专用芯片的软硬件结合的低功耗存储控制方法,包括控制整片擦除操作,页擦除操作,写操作,普通读操作,VREAD读操作,RECALL读操作,LVCTL读操作,

(1)对Nor-Flash存储器进行整片擦除操作时,用户首先查询寄存器子模块的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块的控制寄存器的整片擦除控制寄存器位,并配置擦除启动位发起整片擦除操作请求,Nor-Flash接口协议转换子模块向Nor-Flash存储器输出整片擦除操作时序信号,并返回整片擦除操作完成状态;对Nor-Flash存储器进行页擦除操作时,用户首先查询寄存器子模块的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块的控制寄存器的页擦除控制寄存位,及页地址寄存器,并配置擦除启动位发起页擦除操作请求,Nor-Flash接口协议转换子模块向Nor-Flash存储器输出页擦除操作时序信号,并返回页擦除操作完成状态;

(2)对Nor-Flash存储器进行写操作时,用户首先查询寄存器子模块的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块的控制寄存器的写操作控制寄存器位,然后CPU通过AMBA总线发起Nor-Flash存储器写访问请求,Nor-Flash接口协议转换子模块向Nor-Flash存储器输出写操作时序信号;

(3)对Nor-Flash存储器进行读操作时,用户首先查询寄存器子模块的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块的控制寄存器的读模式控制寄存器位,包括普通读模式,VREAD读模式,RECALL读模式,LVCTL读模式,并配置相应的读周期数寄存器位,然后CPU通过AMBA总线发起Nor-Flash存储器读访问请求,Nor-Flash接口协议转换子模块给Nor-Flash存储器输出读操作时序信号。

进一步的,对Nor-Flash存储器进行读操作时,将访问地址按照数据缓冲器的地址位宽对齐,降低对Nor-Flash存储器的访问次数;通过对用户程序中插入空操作伪指令,使指令地址按照数据缓冲器的地址位宽对齐,则CPU取指过程中对Nor-Flash存储器进行读访问时,减少对Nor-Flash存储器的直接访问次数,降低功耗。

本发明用于电力专用芯片,通过软硬件结合的方式,有效降低了Nor-Flash读取访问功耗,提高了电子设备的续航能力。

附图说明

图1是本发明实施例一中Nor-Flash控制器整体框架示意图。

图2是本发明实施例二中Nor-Flash控制流程图。

具体实施方式

以下结合附图和具体实施例对本发明作具体的介绍。

本发明实施例一提供Nor-Flash控制器整体框架图。如图1所示,该低功耗Nor-Flash控制器主要包括总线接口子模块10,寄存器子模块20,Nor-Flash SCR配置子模块30,读数据缓冲子模块40,Nor-Flash接口协议转换子模块50,多路复用器子模块60。其中:

总线接口子模块10,对于CPU通过AMBA总线发起的Nor-Flash存储器写访问请求,将地址和数据信息输出给Nor-Flash接口协议转换子模块50,对于CPU通过AMBA总线发起的Nor-Flash存储器读访问请求,将Nor-Flash存储器或读数据缓冲子模块40返回的数据信息输出给CPU,并返回响应信号。

寄存器子模块20,用于配置对Nor-Flash存储器的不同访问模式,包括整片擦除操作,页擦除操作,写操作,普通读操作,VREAD读操作,RECALL读操作,LVCTL读操作。并可用于Nor-Flash存储器不同读操作模式下时序参数配置。

Nor-Flash SCR配置子模块30,用于每次芯片上电时自动完成Nor-Flash设备配置寄存器配置操作,并在配置操作结束后关断SCR配置子模块30的时钟,减少功耗消耗。

读数据缓冲子模块40,用于暂存从Nor-Flash返回的高位宽数据信息,总线接口子模块10从读数据缓冲子模块40取走对应位宽的数据返回给CPU。

Nor-Flash接口协议转换子模块50,实现将总线接口子模块10采样到的读写操作时序转换为Nor-Flash端口协议时序。

多路复用器子模块60,实现选择Nor-Flash SCR配置子模块30或Nor-Flash接口协议转换子模块50产生的Nor-Flash端口控制信号输出到Nor-Flash。

如图2所示,本发明实施例二提供Nor-Flash控制器访问Nor-Flash的流程图。

Nor-Flash存储器在进行写操作之前必须先进行擦除操作。本发明提供的Nor-Flash控制器既可以对Nor-Flash存储器进行整片擦除,也可以对Nor-Flash存储器进行页擦除。

对Nor-Flash存储器进行整片擦除操作时,用户首先查询寄存器子模块20的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块20的控制寄存器的整片擦除控制寄存器位,并配置擦除启动位发起整片擦除操作请求,Nor-Flash接口协议转换子模块50通过多路复用器子模块60向Nor-Flash存储器输出整片擦除操作时序信号,并返回整片擦除操作完成状态;对Nor-Flash存储器进行页擦除操作时,用户首先查询寄存器子模块20的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块20的控制寄存器的页擦除控制寄存器位,及页地址寄存器,并配置擦除启动位发起页擦除操作请求,Nor-Flash接口协议转换子模块50通过多路复用器子模块60向Nor-Flash存储器输出页擦除操作时序信号,并返回页擦除操作完成状态。

对Nor-Flash存储器进行写操作时,用户首先查询寄存器子模块20的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块20的控制寄存器的写操作控制寄存器位,然后CPU通过AMBA总线发起Nor-Flash存储器写访问请求,总线接口子模块10将采样到的地址和数据信号输出给Nor-Flash接口协议转换子模块50,Nor-Flash接口协议转换子模块50通过多路复用器子模块60向Nor-Flash存储器输出写操作时序信号,并返回操作完成状态。

对Nor-Flash存储器进行读操作时,用户首先查询寄存器子模块20的状态寄存器,若Nor-Flash控制器空闲,则可配置寄存器子模块20的控制寄存器的读模式控制寄存器位,包括普通读模式,VREAD读模式,RECALL读模式,LVCTL读模式,并配置相应的读周期数寄存器位。其中,普通读模式读取速度最快,VREAD读模式和RECALL读模式通过降低读取速度来降低功耗,而LVCTL读模式通过降低Nor-Flash存储器的供电电压来降低功耗,LVCTL读模式的读取速度比普通读模式慢,但比VREAD读模式和RECALL读模式快。然后CPU通过AMBA总线发起Nor-Flash存储器读访问请求,采样AMBA总线发起的读访问请求和地址信号,读数据缓冲子模块40首先判断读地址是否位于当前数据缓冲器地址中,若是,则直接从读数据缓冲子模块40读取对应位宽的数据给总线接口子模块,并返回读操作完成状态,否则向Nor-Flash接口协议转换子模块发起Nor-Flash存储器读访问请求。Nor-Flash接口协议转换子模块50通过多路复用器子模块60给Nor-Flash存储器输出读操作时序信号,等待相应的读周期数后Nor-Flash接口协议转换子模块50将Nor-Flash存储器读取地址的数据返回给总线接口子模块10,总线接口子模块10将数据和响应返回给CPU,并返回读操作完成状态。

对Nor-Flash存储器进行读操作时,若访问地址按照读数据缓冲子模块40中的数据缓冲器的地址位宽对齐时,则可大大降低对Nor-Flash存储器的访问次数,通过访问数据缓冲器返回读数据,进而减少功耗消耗。通过对用户程序中插入空操作伪指令,使指令地址按照数据缓冲器的地址位宽对齐,则CPU取指过程中对Nor-Flash存储器进行读访问时,将减少对Nor-Flash存储器的直接访问次数,降低功耗。用户可在对Nor-Flash存储器进行写入程序时,首先将用户程序中频繁访问的程序段插入空操作伪指令,使该段用户程序按照数据缓冲器的地址位宽对齐,然后将用户程序写入Nor-Flash存储器。则CPU通过对Nor-Flash存储器读访问来取指时,读数据缓冲子模块40首先判断读地址是否位于当前数据缓冲器地址中,若是,则直接从读数据缓冲子模块40返回对应位宽的数据给总线接口子模块,不访问Nor-Flash存储器,节省功耗消耗;否则向Nor-Flash接口协议转换子模块发起Nor-Flash存储器读访问请求。

相关技术
  • 一种用于电力专用芯片的低功耗存储控制器及控制方法
  • 一种控制存储器进入低功耗模式的控制器及控制方法
技术分类

06120112195451