CN117762236A - 存储器、存储控制装置、片上系统及终端设备 - Google Patents
存储器、存储控制装置、片上系统及终端设备 Download PDFInfo
- Publication number
- CN117762236A CN117762236A CN202211173178.7A CN202211173178A CN117762236A CN 117762236 A CN117762236 A CN 117762236A CN 202211173178 A CN202211173178 A CN 202211173178A CN 117762236 A CN117762236 A CN 117762236A
- Authority
- CN
- China
- Prior art keywords
- memory
- storage area
- data
- memory channel
- channel
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 427
- 238000012545 processing Methods 0.000 claims description 32
- 238000000034 method Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 14
- 230000009977 dual effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000008187 granular material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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
- Power Sources (AREA)
Abstract
本申请实施例公开了一种存储器、存储控制装置、片上系统及终端设备,属于存储技术领域。所述存储器包括第一存储区域和第二存储区域;在第一场景下,所述第一存储区域处于非工作状态,所述第二存储区域处于工作状态;在第二场景下,所述第一存储区域和所述第二存储区域处于所述工作状态;其中,所述第一场景下所需的存储容量小于所述第二场景下所需的存储容量。该存储器兼顾了对节省功耗与存储容量的双重需求,性能更高,适用场景更为全面。
Description
技术领域
本申请实施例涉及存储技术领域,特别涉及一种存储器、存储控制装置、片上系统及终端设备。
背景技术
存储器是终端设备中必不可少的电子元件,存储器包含多个存储区域。在终端设备的运行过程中,需要访问存储器,因此会将存储器中的全部存储区域开启。但是这样会导致功耗过大,无法满足节省功耗的需求。
发明内容
本申请实施例提供了一种存储器、存储控制装置、片上系统及终端设备。所述技术方案如下:
根据本申请的一个方面,提供了一种存储器,所述存储器包括第一存储区域和第二存储区域;
在第一场景下,所述第一存储区域处于非工作状态,所述第二存储区域处于工作状态;
在第二场景下,所述第一存储区域和所述第二存储区域处于所述工作状态;
其中,所述第一场景下所需的存储容量小于所述第二场景下所需的存储容量。
根据本申请的另一个方面,提供了一种存储控制装置,所述存储控制装置设置有第一内存通道和第二内存通道;
所述第一内存通道与存储器中的第一存储区域连接,所述第一内存通道用于控制所述第一存储区域;
所述第二内存通道与所述存储器中的第二存储区域连接,用于控制所述第二存储区域;
在第一场景下,所述第一内存通道处于关闭状态,所述第二内存通道处于开启状态;
在第二场景下,所述第一内存通道和所述第二内存通道处于所述开启状态;
其中,所述第一场景下所需的存储容量小于所述第二场景下所需的存储容量。
根据本申请的另一个方面,提供了一种片上系统,所述片上系统包括:
主设备;
如上述方面所述的存储控制装置;
其中,所述存储控制装置与所述存储器连接。
根据本申请的另一个方面,提供了一种芯片,所述芯片包括:
如上述方面所述的存储器;
如上述方面所述的片上系统。
根据本申请的另一个方面,提供了一种终端设备,所述终端设备包括:
如上述方面所述的存储器;
如上述方面所述的片上系统。
根据本申请的另一个方面,提供了一种数据输出方法,所述方法包括:
将主设备发送的数据写入至存储器;
在数据处理单元从所述存储器中读取所述数据之后,控制所述存储器处于非工作状态,所述数据处理单元用于输出从所述存储器中读取的所述数据。
本申请实施例提供的技术方案至少包括如下有益效果:
本申请实施例提供的存储器中,能够基于当前的场景动态地控制存储区域的状态,在所需存储容量较小的第一场景下,第二存储区域处于工作状态,而第一存储区域处于非工作状态,节省了功耗,在所需存储容量较大的第二场景下,第一存储区域和第二存储区域处于工作状态,满足了对存储容量的需求,因此该存储器兼顾了对节省功耗与存储容量的双重需求,性能更高,适用场景更为全面。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例示出的存储器的结构示意图;
图2是本申请一个示例性实施例示出的存储控制装置的结构示意图;
图3是本申请另一个示例性实施例示出的存储控制装置的结构示意图;
图4是本申请另一个示例性实施例示出的存储控制装置的结构示意图;
图5是本申请另一个示例性实施例示出的存储控制装置的结构示意图;
图6是本申请一个示例性实施例示出的电压域的示意图;
图7是本申请一个示例性实施例示出的片上系统的结构示意图;
图8是本申请一个示例性实施例示出的终端设备的结构示意图;
图9是本申请一个示例性实施例示出的数据输出方法的流程图;
图10是本申请另一个示例性实施例示出的终端设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一存储区域也可以被称为第二存储区域,类似地,第二存储区域也可以被称为第一存储区域。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
相关技术中,存储器包括多个存储区域,当需要对存储器进行数据读写操作时,将全部的存储区域均设置为工作状态,导致功耗较大,而当不需要对存储器进行数据读写操作时,将全部的存储区域均设置为非工作状态,但是无法应用在对少量数据进行数据读写操作的场景下。因此上述存储器无法满足对节省功耗与存储容量的双重需求。
本申请实施例提供了一种存储器,能够基于当前的场景,动态地控制存储器中的存储区域的状态,从而兼顾了对节省功耗与存储容量的双重需求,提升了存储器的性能。下面通过示例性的实施例对存储器的结构及工作原理进行说明。
请参考图1,其示出了本申请一个示例性实施例示出的存储器的结构示意图。存储器包括第一存储区域101和第二存储区域102。其中,第一存储区域101和第二存储区域102的数量分别为一个或多个,本申请实施例对此不做限定。
其中,对于任一存储区域来说,工作状态是指:提供数据读写服务的状态,非工作状态是指:不提供数据读写服务的状态。存储区域在工作状态下的功耗大于非工作状态的功耗,因此当存储区域处于非工作状态时,能够节省功耗。
在一些实施例中,工作状态为上电状态(Power-on/Power-up State),即存储区域的电源的电压上升至正常工作电压,并达到稳定的状态。
在一些实施例中,非工作状态为以下任一种:
空闲状态(Idle State):存储区域不提供数据读写服务的状态,虽然此种状态下,存储区域内仍有少量电压,但功耗十分低。
空闲下电状态(Idle Power Down State):也称为空闲下电-自刷新(Self-refresh)状态或自刷新状态,在该状态下,存储区域不需外部的刷新指令即可在内部自行产生刷新脉冲以保持数据的保存。该状态的功耗比空闲状态更低。
复位状态(Reset State):指存储区域恢复至默认值或出厂数据的状态。
当然,非工作状态还可以为其他形式的状态,本申请实施例对此不做限定。
在本申请实施例中,在第一场景下,第一存储区域101处于非工作状态,第二存储区域102处于工作状态;在第二场景下,第一存储区域101和第二存储区域102处于工作状态。
第一场景下所需的存储容量小于第二场景下所需的存储容量,也即是在第一场景下需要对较少的数据进行读写操作,即需要较少的存储容量,因此在第一场景下无需启用全部的存储区域,只需启用预留的一部分存储区域,即第二存储区域102,此种状态下第一存储区域101处于非工作状态,节省了功耗。
而在第二场景下需要对较多的数据进行读写操作,即需要较多的存储容量,因此在第二场景下启用了较多的存储区域,即第一存储区域101和第二存储区域102,此种状态下虽然功耗较大,但是存储器的性能较强,能够满足进行数据读写操作的需求。
在一些实施例中,第一存储区域101的数量与第二存储区域102的数量相等,这样在第一场景下就可以停用一半数量的存储区域,使用剩余的一半数量的存储区域。或者,第一存储区域101的数量小于第二存储区域102的数量,这样在第一场景下就可以停用少于一半数量的存储区域,避免剩余存储区域的数量太少而对存储器的正常使用造成影响。或者,第一存储区域101的数量大于第二存储区域102的数量,这样在第一场景下就可以停用更多数量的存储区域,从而更为有效地节省功耗。
在另一些实施例中,第一存储区域101的存储容量小于第二存储区域102的存储容量,或者,第一存储区域101的存储容量等于第二存储区域102的存储容量。例如,针对16GB的存储器,第一存储区域101的存储容量为6GB,第二存储区域102的存储容量为10GB,或者第一存储区域101和第二存储区域102的存储容量均为8GB。
在一些实施例中,该存储器包括至少一个存储元件,第一存储区域101和第二存储区域102位于该至少一个存储元件中,且该第一存储区域101和该第二存储区域102可以位于相同的存储元件中,或者位于不同的存储元件中。
在一些实施例中,该存储器为采用TOP(Thin Outline Package,薄型封装)或TSOP(Thin SmallOutline Package,薄型小尺寸封装)方式封装的动态随机存取存储器(Dynamic Random Access Memory,DRAM)组件,该存储器所包含的存储元件为存储晶片(die)。或者该存储器为DDR SDRAM(Double Data Rate Synchronous Dynamic RandomAccess Memory,双倍速率同步动态随机存储器)。本申请实施例并不对存储器和存储器所包含的存储元件的具体类型进行限定。
在一些实施例中,存储元件的内部颗粒可以采用2D方式排列或者3D方式排列。其中,3D方式排列可以采用简单堆叠(simplestack)、垂直沟道(Vertical Channel,VC)或者垂直栅极(Vertical Gate,VG)等方式。在一些实施例中,存储器包括n个存储元件,n为大于1的整数,n个存储元件被封装成存储颗粒。在一些可能的设计中,n个存储元件采用2D封装或者3D封装,本申请实施例并不对具体封装方式进行限定。
在一些实施例中,该存储器中的各个存储元件的元件参数(比如存储容量)相同,比如,各个存储元件均为16GB×16的规格。在另一些实施例中,该第一存储区域101位于第一存储元件中,该第二存储区域102位于第二存储元件中,各个第一存储元件的元件参数相同,各个第二存储元件的元件参数相同,而第一存储元件与第二存储元件的元件参数不同,本申请实施例并不对各个存储元件的具体元件参数进行限定。
本申请实施例提供的存储器中,能够基于当前的场景动态地控制存储区域的状态,在所需存储容量较小的第一场景下,第二存储区域处于工作状态,而第一存储区域处于非工作状态,节省了功耗,在所需存储容量较大的第二场景下,第一存储区域和第二存储区域处于工作状态,满足了对存储容量的需求,因此该存储器兼顾了对节省功耗与存储容量的双重需求,性能更高,适用场景更为全面。
针对第一存储区域和第二存储区域的地址分配方式,在一些实施例中,第一存储区域采用动态分配的方式,而第二存储区域采用静态分配的方式。
第一存储区域中存储由主设备管理的内存数据,主设备动态地分配内存数据的物理地址,因此,主设备接收数据读写指令,该数据读写指令携带待访问的虚拟地址,基于该虚拟地址,动态地将该虚拟地址映射为物理地址,从而基于该物理地址访问该第一存储区域。
在一些实施例中,主设备包括存储器管理单元(Memory Management Unit,MMU)用于将虚拟地址映射为物理地址。
第二存储区域中存储不需要由主设备管理的内存数据,且主设备静态分配内存数据的物理地址,无需将虚拟地址映射为物理地址。因此,主设备接收数据读写指令,该数据读写指令携带待访问的内存地址,此时不需要进行地址映射,直接基于该内存地址访问该第一存储区域。
针对第一场景和第二场景,在一些实施例中,第一场景包括如下任一种场景(1)-(5):
(1)在灭屏状态下播放音频数据;
其中,在灭屏状态下播放音频数据,表示当前的终端设备未在前台运行任一应用程序,仅是在后台播放音频数据,需要缓存所需播放的音频数据,而不需要缓存较多的数据,因此所需的存储容量较小。
(2)在目标网络状态下进行数据传输;
其中,该目标网络状态为第五代移动通信技术(5th Generation MobileCommunication Technology,5G)网络状态或者行动热点(Wireless-Fidelity,Wi-Fi)网络状态等,该目标网络状态具体为哪种网络状态,可以在出厂时设置或者在使用过程中由用户设置。
上述的目标网络状态为网络带宽较大的网络状态,在该目标网络状态下进行数据传输时,数据传输速度较快,所需缓存的数据较少,因此所需的存储容量较小。
(3)运行预设应用;
其中,该预设应用为处理的数据量较小的应用,表示在运行预设应用的情况下不需要缓存较多的数据,所需的存储容量较小。该预设应用可以在出厂时设置或者由用户进行设置,例如,该预设应用为用户认为不需要缓存太多数据的应用,或者技术人员通过对各个应用所需缓存的平均数据量进行对比,将数据量较小的目标数量个应用确定为预设应用等。
(4)关闭预设功能;
其中,该预设功能可以为所需数据量较高的功能,如该预设功能为网络连接功能等。该预设功能可以在出厂时设置或者由用户进行设置。关闭该预设功能,表示不需要执行与该预设功能有关的操作,不需要缓存较多数据,所需的存储容量较小。
(5)开启节能模式。
节能模式是指节省功耗的模式,开启节能模式,表示当前需要减少数据读写操作,不能消耗较多的功耗。该节能模式可以为省电模式、灭屏模式等多种模式,该节能模式采用哪种模式,可以在出厂时设置或者由用户进行设置。
需要说明的是,在上述几种第一场景的示例的基础上,第二场景是除第一场景以外的场景,例如在第一场景包括上述第(1)种场景的情况下,第二场景是除上述第(1)种场景以外的其他场景。而在第一场景包括上述第(1)种和第(2)种场景的情况下,第二场景是除上述第(1)种和第(2)种场景以外的其他场景。或者,第二场景也可以为其他场景,本申请实施例对此不做限定。
在一些实施例中,存储器还包括第三存储区域,在第一场景和第二场景下,第三存储区域处于非工作状态,也即是在第一场景下,第一存储区域和第三存储区域处于非工作状态,第二存储区域处于工作状态。在第二场景下,第三存储区域处于非工作状态,第一存储区域和第二存储区域处于工作状态。
并且,在第三场景下,第一存储区域、第二存储区域和第三存储区域处于工作状态。其中,第二场景下所需的存储容量小于第三场景下所需的存储容量,也即是在第三场景下需要对更多的数据进行读写操作,需要更多的存储容量,因此需要启用第一存储区域、第二存储区域和第三存储区域,以满足进行数据读写操作的需求。
需要说明的是,针对多种场景,可以按照每种场景所需的存储容量的多少,划分第一场景、第二场景和第三场景,以使第一场景下所需的存储容量小于第二场景下所需的存储容量,第二场景下所需的存储容量小于第三场景下所需的存储容量。例如,针对上述第(1)种至第(5)种场景,第一场景为上述第(1)种场景,第二场景为上述第(2)种场景,第三场景为上述第(3)种至第(5)种场景。
在一些实施例中,第三存储区域与第一存储区域的数量相等,或者,第三存储区域的数量小于第一存储区域的数量,或者,第三存储区域的数量大于第一存储区域的数量。另外,第三存储区域与第二存储区域的数量相等,或者,第三存储区域的数量小于第二存储区域的数量,或者,第三存储区域的数量大于第二存储区域的数量。
在另一些实施例中,第三存储区域的存储容量小于第一存储区域的存储容量,或者,第三存储区域的存储容量等于第一存储区域的存储容量。另外,第三存储区域的存储容量小于第二存储区域的存储容量,或者,第三存储区域的存储容量等于第二存储区域的存储容量。
在另一些实施例中,该存储器包括至少一个存储元件,该第三存储区域和该第一存储区域可以位于相同的存储元件中,或者位于不同的存储元件中。另外,该第三存储区域和该第二存储区域可以位于相同的存储元件中,或者位于不同的存储元件中。
本申请实施例中的存储器支持多个内存通道,通过每个内存通道控制一个或多个存储区域。例如,存储器包括n个存储区域,n为大于1的整数,该存储器支持4条以上的内存通道,因此存储器中存储区域的数量n大于4。
正是由于该存储器的存储容量充足,且支持较多的内存通道,从而提升了内存读写带宽,即使在第一场景下,第一存储区域101处于非工作状态时,第二存储区域102也能提供足够的存储容量。
且不同存储区域分别对应各自的内存通道,即n个存储区域对应n个内存通道。比如,对于支持8个内存通道的存储器,该存储器中设置有8个存储区域;对于支持6个内存通道的存储器,该存储器中设置有6个存储区域。本申请实施例并不对存储区域的具体数量(大于4即可,可以为偶数,也可以为奇数)进行限定。
在一些实施例中,第一存储区域101通过第一内存通道控制,第二存储区域102通过第二内存通道控制;第一存储区域101处于非工作状态是指:第一内存通道处于关闭状态;第二存储区域102处于工作状态是指:第二内存通道处于开启状态。
也即是,在第一场景下,若需要控制第一存储区域101处于非工作状态,则关闭第一内存通道,这样就无法通过第一内存通道对第一存储区域101进行数据读写操作,而只能通过第二内存通道对第二存储区域102进行数据读写操作,节省了功耗。
在第二场景下,开启第一内存通道和第二内存通道,既可以通过第一内存通道对第一存储区域101进行数据读写操作,也可以通过第二内存通道对第二存储区域102进行数据读写操作,可使用的存储容量更大。
在另一些实施例中,设置有第三场景以及第三存储区域的情况下,第三存储区域通过第三内存通道控制;第三存储区域处于非工作状态是指:第三内存通道处于关闭状态。
也即是在第一场景下,关闭第一内存通道和第三内存通道,开启第二内存通道,这样就无法通过第一内存通道对第一存储区域进行数据读写操作,也无法通过第三内存通道对第三存储区域进行数据读写操作,而只能通过第二内存通道对第二存储区域102进行数据读写操作,节省了功耗。
在第二场景下,开启第一内存通道和第二内存通道,关闭第三内存通道,既可以通过第一内存通道对第一存储区域101进行数据读写操作,也可以通过第二内存通道对第二存储区域102进行数据读写操作,无法通过第三内存通道对第三存储区域进行数据读写操作,第二场景下可使用的存储容量比第一场景下可使用的存储容量更大。
在第三场景下,开启第一内存通道、第二内存通道和第三内存通道,可以通过第一内存通道、第二内存通道和第三内存通道,分别对第一存储区域、第二存储区域和第三存储区域进行数据读写操作,因此第三场景下可使用的存储容量比第一场景和第二场景下可使用的存储容量更大。
在上述图1所示实施例的基础上,本申请实施例还提供了一种存储控制装置,请参考图2,其示出了本申请一个示例性实施例示出的存储控制装置的结构示意图。
存储控制装置200设置有第一内存通道201和第二内存通道202,第一内存通道201与存储器中的第一存储区域203连接,第一内存通道201用于控制第一存储区域203,因此将第一内存通道201开启后,即可基于该第一内存通道201对第一存储区域101进行数据读写操作。而第二内存通道202与存储器中的第二存储区域204连接,用于控制第二存储区域204,因此将第二内存通道202开启后,即可基于该第二内存通道202对第二存储区域204进行数据读写操作。
在本申请实施例中,在第一场景下,第一内存通道201处于关闭状态,从而使第一存储区域101处于非工作状态,第二内存通道202处于开启状态,从而使第二存储区域102处于工作状态。在第二场景下,第一内存通道201和第二内存通道202处于开启状态,从而使第一存储区域101和第二存储区域102处于工作状态。
其中,第一场景下所需的存储容量小于第二场景下所需的存储容量。该第一场景和该第二场景的举例,与上述图1所示的实施例类似,在此不再赘述。
在另一些实施例中,存储控制装置还设置有第三内存通道,第三内存通道与存储器中的第三存储区域连接,第三内存通道用于控制第三存储区域,在第一场景和第二场景下,第三内存通道处于关闭状态,从而使第三存储区域处于非工作状态,在第三场景下,第一内存通道、第二内存通道和第三内存通道处于开启状态,从而使第一存储区域、第二存储区域和第三存储区域处于工作状态。其中,第二场景下所需的存储容量小于第三场景下所需的存储容量。
在一些实施例中,请参考图3,其示出了本申请另一个示例性实施例示出的存储控制装置的结构示意图。该存储控制装置包括从总线301、第一控制器302和第二控制器303;
从总线301与第一控制器302之间通过第一内存通道304连接,第一控制器302用于控制存储器中的第一存储区域306;
从总线301与第二控制器303之间通过第二内存通道305连接,第二控制器303用于控制存储器中的第二存储区域307。
在进行数据读写时,从总线301将数据读写指令发送至第一控制器302或第二控制器303,由第一控制器302对第一存储区域306进行数据读写操作,或者由第二控制器303对第二存储区域307进行数据读写操作。
在一些实施例中,存储器中还包括第三存储区域的情况下,该存储控制装置还包括第三控制器,该第三控制器用于控制该第三存储区域。则从总线301也可以将数据读写指令发送至第三控制器,由第三控制器对第三存储区域进行数据读写操作。
在一些实施例中,该存储控制装置包括m个控制器,m为大于1的整数,从总线302与m个控制器之间建立有m个内存通道,通过每个内存通道向对应的控制器下发数据读写指令。m个内存通道中的至少一个内存通道为第一内存通道304,相应地,m个控制器中第一内存通道304连接的是第一控制器302。并且,m个内存通道中的至少一个内存通道为第二内存通道305,相应地,m个控制器中第二内存通道305连接的是第二控制器303。
其中,第一内存通道304的数量等于第二内存通道305的数量,或者第一内存通道304的数量小于第二内存通道305的数量。
以8通道存储器为例,m等于8,即该存储控制装置中设置有8个内存通道,其中4个内存通道为第一内存通道304,另外4个内存通道为第二内存通道305。或者,其中2个内存通道为第一内存通道304,另外6个内存通道为第二内存通道305。
在本申请实施例中,在第一场景下,第一内存通道304为关闭状态,第二内存通道305为开启状态,则从总线301在接收到数据读写指令时,通过当前处于开启状态的第二内存通道305,将数据读写指令发送至第二控制器303,从而由第二控制器303对第二存储区域307进行数据读写操作。
在第二场景下,第一内存通道304和第二内存通道305为开启状态,则从总线301在接收到数据读写指令时,通过当前处于开启状态的第一内存通道304,将数据读写指令发送至第一控制器302,从而由第一控制器302对第一存储区域306进行数据读写操作。或者,通过当前处于开启状态的第二内存通道305,将数据读写指令发送至第二控制器303,从而由第二控制器303对第二存储区域307进行数据读写操作。
在另一些实施例中,m个内存通道中的至少一个内存通道为第三内存通道,相应地,m个控制器中第三内存通道连接的是第三控制器。
以8通道存储器为例,m等于8,即该存储控制装置中设置有8个内存通道,其中4个内存通道为第一内存通道304,另外2个内存通道为第二内存通道305,2个内存通道为第三内存通道。或者,其中2个内存通道为第一内存通道304,另外4个内存通道为第二内存通道305,2个内存通道为第三内存通道。
在本申请实施例中,在第一场景下,第一内存通道304为关闭状态,第二内存通道305为开启状态,第三内存通道为关闭状态,则从总线301在接收到数据读写指令时,通过当前处于开启状态的第二内存通道305,将数据读写指令发送至第二控制器303,从而由第二控制器303对第二存储区域307进行数据读写操作。
在第二场景下,第一内存通道304和第二内存通道305为开启状态,第三内存通道为关闭状态,则从总线301在接收到数据读写指令时,通过当前处于开启状态的第一内存通道304,将数据读写指令发送至第一控制器302,从而由第一控制器302对第一存储区域306进行数据读写操作。或者,通过当前处于开启状态的第二内存通道305,将数据读写指令发送至第二控制器303,从而由第二控制器303对第二存储区域307进行数据读写操作。
在第三场景下,第一内存通道、第二内存通道和第三内存通道为开启状态,则从总线301在接收到数据读写指令时,通过当前处于开启状态的第一内存通道304,将数据读写指令发送至第一控制器302,从而由第一控制器302对第一存储区域306进行数据读写操作。或者,通过当前处于开启状态的第二内存通道305,将数据读写指令发送至第二控制器303,从而由第二控制器303对第二存储区域307进行数据读写操作。或者,通过当前处于开启状态的第三内存通道,将数据读写指令发送至第三控制器,从而由第三控制器对第三存储区域进行数据读写操作。
在一些实施例中,从总线301为双倍速率(DoubleDataRate,DDR)总线,控制器为动态存储控制器(DynamicMemoryController,DMC)。
在一些实施例中,请参考图4,从总线301与存储控制装置以外的主总线308(primarybus)连接,主总线308用于连接存储控制装置20与主设备309。例如,各个主设备309与主总线308之间通过n条链路相连,主总线308通过对不同主设备309对应的链路进行交织,从而与从总线301建立n条链路。在一种可能的实现方式中,主设备309与主总线308之间的链路,以及主总线308与从总线之间的链路采用相同的总线协议。比如,该链路均采用先进可扩展接口(AdvancedeXtensibleInterface,AXI)总线协议。本申请实施例并不对链路所采用的具体总线协议进行限定。
在一些实施例中,主总线308可以为系统缓存(SystemCache,SC)总线。本实施例中,主总线308与从总线301之间的n条链路在从总线301处分路,以此增加内存通道的数量。例如,从总线301与m个控制器之间建立有m个内存通道,m大于n。其中,内存通道的数量与从总线301中的分路结构相关,m可以为n的整数倍或者非整数倍,本实施例对此不作限定。
在一个示意性的例子中,主总线308与从总线301之间建立有4条链路,经过从总线301分路后,从总线301与8个控制器相连,建立8个内存通道。
在一些实施例中,主设备309包括中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、神经网络处理器(Neural-networkProcessing Unit,NPU)、数字信号处理器(Digital Signal Processor,DSP)等处理器,以及图像传感器(Image Sensor)、图像信号处理单元(Image Signal Processing Unit,ISP)、视频处理单元(Video Processing Unit,VPU)等非处理器。上述主设备309在运行过程中均具有内存数据读和/或写的需求。
需要说明的是,上述实施例仅以存储控制装置包括从总线以及控制器为例进行说明,在其他实施例中,该存储控制装置20中还可以包括其他必要组件,比如与控制器对应设置的物理层接口(PHY),控制器通过物理层接口控制对应的存储区域。请参考图5,其示出了本申请另一个示例性实施例示出的存储控制装置的结构示意图。该存储控制装置包括从总线、m个控制器和m个物理层接口,从总线与位于存储控制装置之外的主总线连接,主总线用于连接存储控制装置与主设备,另外,从总线与m个控制器之间通过m个内存通道连接,m个物理层接口与m个存储区域连接。
在一些实施例中,第一内存通道与第二内存通道位于不同的电压域中。也即是,第一内存通道与第二内存通道运行于独立的电压域中,不同的电压域之间互不影响。因此第一内存通道和第二内存通道可以处于不同的状态。
对于任一电压域来说,可以控制该电压域中的器件处于低功耗电压,以使该器件处于低功耗状态,或者控制该电压域中的器件处于高功耗电压,以使该器件处于高功耗状态。其中,低功耗电压是小于或等于正常工作电压的工作电压。
在一种可能的实现方式中,第一内存通道位于第一电压域中,第二内存通道位于第二电压域中,在第一场景下,控制第一电压域中的该第一内存通道处于低功耗电压,则该第一内存通道处于关闭状态,并且,控制第二电压域中的该第二内存通道处于高功耗电压,则该第二内存通道处于开启状态。
在第二场景下,控制第一电压域中的该第一内存通道和第二电压域中的该第二内存通道处于高功耗电压,则该第一内存通道和该第二内存通道处于开启状态。
在一些实施例中,该第一内存通道位于第一电压域,是指该第一内存通道控制的器件位于第一电压域中,该第一内存通道连接从总线和第一控制器,且该第一控制器连接第一存储区域,该第一内存通道和该第一控制器位于第一电压域中。该第二内存通道位于第二电压域,是指该第二内存通道控制的器件位于第二电压域中,该第二内存通道连接从总线和第二控制器,且该第二控制器连接第二存储区域,该第二内存通道和该第二控制器位于第二电压域中。而该从总线既可以位于第一电压域中,也可以位于第二电压域中,或者还可以位于与第一电压域和第二电压域均不同的电压域中。
在一些实施例中,主设备和主总线位于第一电压域中,或者位于第二电压域中,或者还可以位于与第一电压域和第二电压域均不同的电压域中,比如,顶层(TOP)电压域。
图6示出了本申请一个示例性实施例示出的电压域的示意图,请参考图4和图6,第一内存通道304和第一控制器302位于第一电压域中,第二内存通道305和第二控制器303位于第二电压域中,从总线301位于第三电压域中,主总线308位于第四电压域。
本申请实施例通过划分出独立的第一电压域和第二电压域,实现了更细粒度、更灵活的电压控制,从而能够根据当前所处的场景灵活地控制第一存储区域和第二存储区域处于不同的状态,在满足不同电压需求的前提下有效降低了功耗。
在另一些实施例中,在存储控制装置还设置有第三内存通道的情况下,第三内存通道与第一内存通道和第二内存通道分别位于不同的电压域中,不同的电压域之间互不影响。因此第一内存通道、第二内存通道和第三内存通道可以处于不同的状态。
在一种可能的实现方式中,第一内存通道位于第一电压域中,第二内存通道位于第二电压域中,第三内存通道位于第三电压域中,在第一场景下,控制第一电压域中的该第一内存通道处于低功耗电压,则该第一内存通道处于关闭状态,并且,控制第二电压域中的该第二内存通道处于高功耗电压,则该第二内存通道处于开启状态,并且控制第三电压域中的该第三内存通道处于低功耗电压,则该第三内存通道处于关闭状态。
在第二场景下,控制第一电压域中的该第一内存通道和第二电压域中的该第二内存通道处于高功耗电压,则该第一内存通道和该第二内存通道处于开启状态。并且控制第三电压域中的该第三内存通道处于低功耗电压,则该第三内存通道处于关闭状态。
在第三场景下,控制第一电压域中的该第一内存通道、第二电压域中的该第二内存通道和第三电压域中的该第三内存通道处于高功耗电压,则该第一内存通道、该第二内存通道和该第三内存通道处于开启状态。
在一些实施例中,该第一内存通道位于第一电压域,是指该第一内存通道控制的器件位于第一电压域中,该第一内存通道连接从总线和第一控制器,且该第一控制器连接第一存储区域,该第一内存通道和该第一控制器位于第一电压域中。该第二内存通道位于第二电压域,是指该第二内存通道控制的器件位于第二电压域中,该第二内存通道连接从总线和第二控制器,且该第二控制器连接第二存储区域,该第二内存通道和该第二控制器位于第二电压域中。该第三内存通道位于第三电压域,是指该第三内存通道控制的器件位于第三电压域中,该第三内存通道连接从总线和第三控制器,且该第三控制器连接第三存储区域。
而该从总线既可以位于第一电压域中,也可以位于第二电压域中,也可以位于第三电压域中,或者还可以位于与第一电压域、第二电压域和第三电压域均不同的电压域中。
在上述实施例的基础上,本申请实施例还提供了一种片上系统,该片上系统包括上述实施例所示的主设备和存储控制装置。图7示出了本申请一个示例性实施例提供的片上系统的结构示意图。该片上系统包括:主设备701、主总线702、从总线703、第一控制器704和第二控制器705。
主设备701是具有数据处理能力的器件,即具有数据访问需求的设备,该设备可以包括处理器或者非处理器。其中,处理器可以包括CPU、GPU、NPU、DSP等等,而非处理器可以包括图像传感器、ISP、VPU等等。主设备701可以是有数据读和写的需求的主设备,如处理器,也可能只有读或者写的需求,如图像传感器。主设备701是否同时具有读和写的需求不构成对本申请的限定。
其中,处理器利用各种接口和线路连接整个终端设备内的各个部分,通过运行或执行存储在存储器内的指令、程序、代码集或指令集,以及调用存储在存储器内的数据,执行终端设备的各种功能和处理数据。
在一些实施例中,处理器可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。
处理器可集成CPU、GPU、NPU和基带芯片等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;NPU用于实现人工智能(Artificial Intelligence,AI)功能;基带芯片用于处理无线通信。
而从总线703、第一控制器704和第二控制器705的具体结构与上述实施例类似,在此不再赘述。
在上述实施例的基础上,本申请实施例还提供了一种终端设备,图8示出了本申请一个示例性实施例提供的终端设备的结构示意图。该终端设备包括片上系统801和存储器802,该片上系统801和该存储器802的结构与上述实施例类似,在此不再赘述。
该终端设备可以为智能手机、智能手表、电子书阅读器、平板电脑、膝上便携计算机、台式计算机、电视机、游戏机、增强现实(Augmented Reality,AR)终端、虚拟现实(Virtual Reality,VR)终端和混合现实(Mixed Reality,MR)终端、可穿戴式设备、车载设备、电子标签等。
需要说明的是,除了片上系统和存储器外,终端设备还可以包括其它必要组件,比如显示组件、输入单元、音频电路、扬声器、麦克风、电源等部件,本申请实施例在此不再赘述。
图9示出了本申请一个示例性实施例提供的一种数据输出方法的流程图,该方法应用于如上的终端设备中,该方法包括如下步骤中的至少部分步骤:
步骤901:将主设备发送的数据写入至存储器。
结合上述实施例,该步骤901可以包括:主设备通过主总线,向从总线发送数据处理指令,该数据处理指令携带数据,从总线通过控制器和物理层接口,将该数据写入至存储器。
步骤902:在数据处理单元从存储器中读取数据之后,控制存储器处于非工作状态,数据处理单元用于输出从存储器中读取的数据。
在将数据写入至存储器之后,数据处理单元会从存储器中读取数据,并输出该数据。而在本申请实施例中,为了节省功耗,在从存储器中读取该数据之后,即可控制存储器处于非工作状态,如自刷新状态或复位状态等。后续需要再次使用该存储器时,可以再控制该存储器处于工作状态。
本申请实施例提供的方法,不需要存储器一直处于工作状态,而是基于当前的场景动态地控制,在已经从存储器中读取数据之后,即可将存储器设置为非工作状态,从而节省了功耗,且不影响数据的正常处理。
在一种可能的实现方式中,该存储器包括第一存储区域和第二存储区域,该第一存储区域和该第二存储区域具体如上述实施例所示,在此不再赘述。该步骤901包括:将主设备发送的数据写入至存储器的第一存储区域。相应地,在数据处理单元从存储器中读取该数据之后,控制该第一存储区域处于非工作状态,此时第二存储区域不会受到第一存储区域的影响,仍然可以处于工作状态。或者,该存储器还可以包括第三存储区域,该第三存储区域具体如上述实施例所示,在此不再赘述。同理,将主设备发送的数据写入至存储器的第三存储区域,在数据处理单元从存储器中读取该数据之后,也可以控制该第三存储区域处于非工作状态。
另外,还可以根据主设备当前所处的场景,确定该存储器中各个存储区域的工作状态,例如在第一场景下控制第一存储区域和第三存储区域处于非工作状态,控制第二存储区域处于工作状态等。
在一种可能的实现方式中,数据处理单元用于将数据存储至缓存区后,从所述缓存区中读取该数据并输出该数据,因此缓存区的剩余数据量较少时,则需要获取新的数据,因此在缓存区的剩余数据量小于预设阈值时,控制存储器处于工作状态。之后即可重复执行将主设备发送的数据写入至存储器、数据处理单元从存储器中读取数据、控制存储器处于非工作状态、数据处理单元将数据存储至缓存区、从缓存区中读取该数据并输出该数据的步骤。
在一种可能的实现方式中,在将主设备发送的数据写入至存储器中后,控制主设备处于休眠状态,这样可以节省功耗。之后在产生了新的数据之后,唤醒主设备,主设备即可继续下发数据。
本申请实施例提供的方法,不需要存储器一直处于工作状态,而是基于当前的场景动态地控制,在已经从存储器中读取数据之后,即可将存储器设置为非工作状态,从而节省了功耗,且不影响数据的正常处理。而且,在数据处理单元的缓存区的剩余数据量较少时,即可控制存储器恢复为工作状态,及时地缓存新的数据,保证了数据处理的正常进行。
请参考图10,其示出了本申请另一个示例性实施例示出的终端设备的结构示意图,该终端设备包括应用程序、框架(Framework)、硬件抽象层(Hardware Abstract Layer,HAL)、内核空间、音频子系统、硬件设备。其中音频子系统包括存储器直接访问(DirectMemoryAccess,DMA),硬件设备包括用于播放音频数据的编译码器(COder-DECoder,CODEC)芯片等。
以应用程序播放音频数据的场景为例,在应用程序产生音频数据之后,通过Framework和HAL下发,之后CPU使能音频子系统和CODEC芯片的路径,等待硬件数字模拟转换器(Digital to Analog Converter,DAC)加速。CPU将音频子系统的必要库从DDR加载到内部SRAM,或者音频TCM(一种音频接口)或者系统缓存。
之后,CPU将压缩后的音频数据(如60秒的音频数据)发送到DDR进行解码,然后CPU进入深度睡眠状态。音频DMA将压缩后的音频数据从DDR提取到音频SRAM(如1秒的音频数据)的缓冲区,然后DDR进入深度睡眠状态(如自刷新状态)。每当音频SRAM中的缓冲区几乎为空时,高保真5数字信号处理(High-Fidelity 5Digital Signal Processing,HIFI5DSP)将发送DDR唤醒请求,将DDR唤醒。
另外,HIFI5 DSP会从音频SRAM中取出压缩的音频数据进行解码,解码后的音频数据将写入到音频SRAM,写入方法可以使用乒乓缓冲法。而音频DMA通过Soundwire总线将音频数据从音频SRAM移动到CODEC芯片,从而基于CODEC芯片播放音频数据。当一个块的数据传输完成时,Soundwire总线可以被时钟门控。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种存储器,其特征在于,所述存储器包括第一存储区域和第二存储区域;
在第一场景下,所述第一存储区域处于非工作状态,所述第二存储区域处于工作状态;
在第二场景下,所述第一存储区域和所述第二存储区域处于所述工作状态;
其中,所述第一场景下所需的存储容量小于所述第二场景下所需的存储容量。
2.根据权利要求1所述的存储器,其特征在于,所述第一场景包括如下任一种场景:
在灭屏状态下播放音频数据;
在目标网络状态下进行数据传输;
运行预设应用;
关闭预设功能;
开启节能模式。
3.根据权利要求1所述的存储器,其特征在于,
所述第一存储区域通过第一内存通道控制,所述第二存储区域通过第二内存通道控制;
所述第一存储区域处于非工作状态是指:所述第一内存通道处于关闭状态;
所述第二存储区域处于工作状态是指:所述第二内存通道处于开启状态。
4.根据权利要求1所述的存储器,其特征在于,所述存储器还包括第三存储区域;
在所述第一场景和所述第二场景下,所述第三存储区域处于所述非工作状态;
在第三场景下,所述第一存储区域、所述第二存储区域和所述第三存储区域处于所述工作状态;
其中,所述第二场景下所需的存储容量小于所述第三场景下所需的存储容量。
5.根据权利要求4所述的存储器,其特征在于,所述第三存储区域通过第三内存通道控制;
所述第三存储区域处于所述非工作状态是指:所述第三内存通道处于关闭状态。
6.一种存储控制装置,其特征在于,所述存储控制装置设置有第一内存通道和第二内存通道;
所述第一内存通道与存储器中的第一存储区域连接,所述第一内存通道用于控制所述第一存储区域;
所述第二内存通道与所述存储器中的第二存储区域连接,用于控制所述第二存储区域;
在第一场景下,所述第一内存通道处于关闭状态,所述第二内存通道处于开启状态;
在第二场景下,所述第一内存通道和所述第二内存通道处于所述开启状态;
其中,所述第一场景下所需的存储容量小于所述第二场景下所需的存储容量。
7.根据权利要求6所述的存储控制装置,其特征在于,所述第一场景包括如下任一种场景:
在灭屏状态下播放音频数据;
在目标网络状态下进行数据传输;
运行预设应用;
关闭预设功能;
开启节能模式。
8.根据权利要求6所述的存储控制装置,其特征在于,所述存储控制装置包括从总线、第一控制器和第二控制器;
所述从总线与所述第一控制器之间通过所述第一内存通道连接,所述第一控制器用于控制所述第一存储区域;
所述从总线与所述第二控制器之间通过所述第二内存通道连接,所述第二控制器用于控制所述第二存储区域。
9.根据权利要求6-8任一项所述的存储控制装置,其特征在于,所述第一内存通道与所述第二内存通道位于不同的电压域中。
10.一种片上系统,其特征在于,所述片上系统包括:
主设备;
如权利要求6-9任一项所述的存储控制装置;
其中,所述存储控制装置与所述存储器连接。
11.一种芯片,其特征在于,所述芯片包括:
如权利要求1-5任一项所述的存储器;
如权利要求10所述的片上系统。
12.一种终端设备,其特征在于,所述终端设备包括:
如权利要求1-5任一项所述的存储器;
如权利要求10所述的片上系统。
13.一种数据输出方法,其特征在于,所述方法包括:
将主设备发送的数据写入至存储器;
在数据处理单元从所述存储器中读取所述数据之后,控制所述存储器处于非工作状态,所述数据处理单元用于输出从所述存储器中读取的所述数据。
14.根据权利要求13所述的方法,其特征在于,所述数据处理单元用于将所述数据存储至缓存区后,从所述缓存区中读取所述数据并输出所述数据;
所述方法还包括:
在所述缓存区的剩余数据量小于预设阈值时,控制所述存储器处于工作状态。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
在将所述主设备发送的所述数据写入至所述存储器后,控制所述主设备处于休眠状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211173178.7A CN117762236A (zh) | 2022-09-26 | 2022-09-26 | 存储器、存储控制装置、片上系统及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211173178.7A CN117762236A (zh) | 2022-09-26 | 2022-09-26 | 存储器、存储控制装置、片上系统及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117762236A true CN117762236A (zh) | 2024-03-26 |
Family
ID=90320603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211173178.7A Pending CN117762236A (zh) | 2022-09-26 | 2022-09-26 | 存储器、存储控制装置、片上系统及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117762236A (zh) |
-
2022
- 2022-09-26 CN CN202211173178.7A patent/CN117762236A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10296217B2 (en) | Techniques to configure a solid state drive to operate in a storage mode or a memory mode | |
KR101665611B1 (ko) | 컴퓨터 시스템 및 메모리 관리의 방법 | |
US7800621B2 (en) | Apparatus and methods for control of a memory controller | |
KR100589564B1 (ko) | 프로세서/메모리 모듈을 갖는 컴퓨터 시스템 | |
US7340621B2 (en) | Power conservation techniques for a digital computer | |
JP3127853B2 (ja) | メモリ集積回路並びにこれを用いた主記憶システム及びグラフィクスメモリシステム | |
US7821864B2 (en) | Power management of memory via wake/sleep cycles | |
KR100847968B1 (ko) | 컴퓨팅 시스템, 전자 통신 디바이스, 컴퓨팅 시스템 운영 방법 및 정보 처리 방법 | |
JP6276470B2 (ja) | ポータブルコンピューティングデバイスの揮発性メモリのスタンバイ電力を低減するためのシステムおよび方法 | |
US7020040B2 (en) | Utilizing an ACPI to maintain data stored in a DRAM | |
CN117762236A (zh) | 存储器、存储控制装置、片上系统及终端设备 | |
US7483032B1 (en) | Zero frame buffer | |
US20230280932A1 (en) | Data read/write method and hybrid memory | |
CN206312022U (zh) | 支持高清多显及海量数据存储的服务器主板 | |
JP2003177958A (ja) | 特殊メモリデバイス | |
CN106776360A (zh) | 一种芯片及电子设备 | |
CN117193506A (zh) | 存储器、片上系统、终端设备及供电控制方法 | |
CN117762835A (zh) | 存储器、存储控制装置、片上系统、芯片及终端 | |
CN117130976A (zh) | 存储器、片上系统、终端及数据读写方法 | |
CN115687196B (zh) | 用于对多通道存储器进行控制的方法和装置 | |
US9564186B1 (en) | Method and apparatus for memory access | |
US20240211160A1 (en) | System Memory Training with Chipset Attached Memory | |
CN117435522A (zh) | 地址重映射单元、片上系统、终端及数据读写方法 | |
CN117193510A (zh) | 存储器的控制方法、存储器、片上系统及终端 | |
CN115509443A (zh) | 访问ddr存储器的方法、装置、系统及电子设备 |
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 |