CN116257481A - 控制方法及电子设备 - Google Patents

控制方法及电子设备 Download PDF

Info

Publication number
CN116257481A
CN116257481A CN202310180259.8A CN202310180259A CN116257481A CN 116257481 A CN116257481 A CN 116257481A CN 202310180259 A CN202310180259 A CN 202310180259A CN 116257481 A CN116257481 A CN 116257481A
Authority
CN
China
Prior art keywords
processing module
module
task
access
storage module
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
Application number
CN202310180259.8A
Other languages
English (en)
Inventor
黄远广
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dingdao Zhixin Shanghai Semiconductor Co ltd
Original Assignee
Dingdao Zhixin Shanghai Semiconductor Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dingdao Zhixin Shanghai Semiconductor Co ltd filed Critical Dingdao Zhixin Shanghai Semiconductor Co ltd
Priority to CN202310180259.8A priority Critical patent/CN116257481A/zh
Publication of CN116257481A publication Critical patent/CN116257481A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了一种控制方法及电子设备,其中,所述方法包括:确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。

Description

控制方法及电子设备
技术领域
本申请实施例涉及电子技术,涉及但不限于一种控制方法及电子设备。
背景技术
目前,电子设备的应用越来越广泛,电子设备中各类具有访问发起功能的模块在电子设备的正常运行中起着重要的作用。并且,电子设备中存在各种类型的存储模块,各类具有访问发起功能的模块与各种类型的存储单元之间能够进行通信。
发明内容
有鉴于此,本申请实施例提供一种控制方法及电子设备。
本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供一种控制方法,所述方法包括:
确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
在一些实施例中,所述如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块之后,所述方法还包括:如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务;如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
在一些实施例中,所述如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务,包括:如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;对应地,所述如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块,包括:如果所述第二处理模块对应的任务计数器的数值为所述目标值,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
在一些实施例中,所述如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务,包括:如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;对应地,所述如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块,包括:当所述第一处理模块对应的任务计数器的数值为所述目标值时,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
在一些实施例中,通过以下步骤确定任务计数器的数值是否为目标值:向所述第一处理模块发出第一切换请求,使得所述第一处理模块在接收到所述第一切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;或,向所述第二处理模块发出第二切换请求,使得所述第二处理模块在接收到所述第二切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;对应地,通过以下步骤实现访问路径的切换:如果所述第一处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第一总线开关,使得所述第一总线开关能够将所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块;或,如果所述第二处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第二总线开关,使得所述第二总线开关能够将所述第二处理模块的访问路径切换至与所述目标存储模块。
在一些实施例中,所述如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块之后,所述方法还包括:如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;如果所述第一处理模块和所述第二处理模块需要共享数据空间,配置所述第二处理模块,使得所述第二处理模块能够通过自身访问的存储模块直接访问所述第一处理模块当前访问的存储模块。
在一些实施例中,所述方法还包括:如果所述当前处理的任务场景为第一场景、且所述第一处理模块当前访问的存储模块为第一存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;或,如果所述当前处理的任务场景为第二场景、且所述第一处理模块当前访问的存储模块为第二存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;其中,所述第一场景的带宽要求高于所述第二场景的带宽要求,所述第一存储模块的带宽小于所述第二存储模块的带宽。
第二方面,本申请实施例提供一种电子设备,所述电子设备包括:
第一处理模块;
多个存储模块;
系统控制模块,用于确定所述电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
在一些实施例中,所述电子设备还包括:第二处理模块;对应地,所述系统控制模块,还用于如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务;如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
在一些实施例中,所述电子设备还包括:总线,所述电子设备的第一处理模块、所述电子设备的第二处理模块和所述电子设备的多个存储模块均连接至所述总线;对应地,所述系统控制模块包括控制单元,以及位于所述总线上的第一总线开关和第二总线开关;所述控制单元,用于发送第一控制指令和第二控制指令;所述第一总线开关,用于响应所述控制单元发送的第一控制指令,控制所述第一处理模块与各个所述存储模块之间的访问路径的通断状态;所述第二总线开关,用于响应所述控制单元发送的第二控制指令,控制所述第二处理模块与各个所述存储模块之间的访问路径的通断状态。
附图说明
图1为本申请实施例控制方法的实现流程示意图一;
图2为本申请实施例控制方法的实现流程示意图二;
图3为本申请实施例控制方法的实现流程示意图三;
图4A为本申请实施例电子设备的组成结构示意图一;
图4B为本申请实施例电子设备的组成结构示意图二;
图5A为本申请实施例电子设备的组成结构示意图三;
图5B为本申请实施例电子设备的组成结构示意图四;
图6为本申请实施例控制装置的组成结构示意图;
图7为本申请实施例电子设备的一种硬件实体示意图。
具体实施方式
下面结合附图和实施例对本申请的技术方案进一步详细阐述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
需要指出,本申请实施例所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
基于此,本申请实施例提供一种控制方法,该方法所实现的功能可以通过电子设备中的处理器调用程序代码来实现,当然程序代码可以保存在所述电子设备的存储介质中。图1为本申请实施例控制方法的实现流程示意图一,如图1所示,所述方法包括:
步骤S101、确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
这里,所述电子设备可以为各种类型的具有信息处理能力的设备,例如导航仪、智能手机、平板电脑、可穿戴设备、膝上型便携计算机、扫地机器人、智能厨卫、智能家居、汽车、服务器或者服务器集群等。所述电子设备中的处理器可以包括SCP(System ControlProcessor,系统控制处理器)等硬件单元。
本申请实施例中,所述第一处理模块指的是电子设备中能够主动发起访问的单元,例如CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)、DSP(Digital Signal Processing,数字信号处理器)和MPU(MicroprocessorUnit,微处理器)等。也就是说,本申请实施例对第一处理模块的类型并不做限制,任一类型的处理模块均在本申请的保护范围内。
本申请实施例中可以包括多个任务场景,例如,高带宽场景和低延迟场景,第一处理模块当前处理的任务场景可以为上述场景中的一种。其中,第一处理模块在高带宽场景需要和其他处理模块一起访问SC(Share Cache,共享缓存),以便提高访问带宽;而在低延迟场景第一处理模块直接访问DDR(Double Data Rate,双倍速率同步动态随机存储器)则能减少访问SC的延迟。本申请实施例中,可以通过第一处理模块当前处理的应用程序的类型对于设备性能的需求来确定第一处理模块当前处理的任务场景,也可以通过其他的方式确定第一处理模块当前处理的任务场景。例如,第一处理模块当前正在运行多核跑分类、游戏类、短视频类、拍照类的应用程序,这类应用程序通常对于带宽有较高的要求,则确定第一处理模块当前处理的任务场景为高带宽场景。又如,第一处理模块当前正在运行单核跑分类的应用程序,或者电子设备正处于启动状态,此时要求较低的延迟,则确定第一处理模块当前处理的任务场景为低延迟场景。
在其他实施例中,也可以根据其他角度进行任务场景的划分。
这里,电子设备可以包括多个存储模块,该多个存储模块可以划分为不同的类型,如缓存、内存和外存,第一处理模块当前访问的存储模块可以属于上述之一。当然,本申请实施例对电子设备中多个存储模块的类型的划分方式并不做限制。
步骤S102、如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
本申请实施例中,可以预先划分多个任务场景:第一任务场景、第二任务场景等,并确定不同任务场景对应的存储模块的类型:第一任务场景对应第一类型的存储模块、第二任务场景对应第二类型的存储模块。例如,第一任务场景为高带宽场景,第一类型的存储模块为缓存;第二任务场景为低延迟场景,第二类型的存储模块为内存。进而,如果第一处理模块当前访问的存储模块的类型与当前处理的任务场景不匹配,则确定第一处理模块中是否存在访问任务。
举例来说,CPU当前访问的存储模块为内存、且CPU当前正在运行拍照类应用,则判断CPU当前访问的存储模块的类型与当前处理的任务场景不匹配,需要进一步确定CPU中是否存在访问任务。又如,CPU当前访问的存储模块为缓存、且CPU当前正在运行单核跑分类的任务,则判断CPU当前访问的存储模块的类型与当前处理的任务场景不匹配,需要进一步确定CPU中是否存在访问任务。
步骤S103、如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
这里,电子设备中不同的存储模块具有不同的特性,进而可以应用于不同的任务场景。例如,SC模块具有较高的带宽,当多个MASTER(即读/写传输的发起方)一次访问SC时能够提高访问带宽。又如,DDR具有较低的延迟,MASTER直接访问DDR能够减少延迟,因此DDR适用于对时间要求较高的任务场景。进而,可以根据电子设备的不同任务场景的需求,切换不同的存储模块。
例如,CPU当前访问的存储模块为内存、且CPU当前正在运行拍照类应用,则确定CPU当前访问的存储模块的类型与当前处理的任务场景不匹配,如果此时CPU中不存在访问任务,控制CPU的访问路径切换至高速缓存模块。
这里,通过上述步骤S101至步骤S103中的控制方法,能够兼容处理模块的不同应用场景,在处理模块中不存在访问任务的情况下对处理模块的访问路径进行动态切换。
在一些实施例中,所述方法还包括以下一种:
第一种、如果所述当前处理的任务场景为第一场景、且所述第一处理模块当前访问的存储模块为第一存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;第二存储模块相比于第一存储模块的性能更能满足第一场景的需求。
第二种、如果所述当前处理的任务场景为第二场景、且所述第一处理模块当前访问的存储模块为第二存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;第一存储模块相比于第二存储模块的性能,更能满足第二场景的需求。
在一些实施例中,第一场景包括高带宽需求,第二场景包括低延迟,所述第一场景的带宽要求高于所述第二场景的带宽要求,所述第一存储模块的带宽小于所述第二存储模块的带宽。
在一些实施例中,所述第一存储模块包括内存模块,第二存储模块包括共享缓存模块。内存模块包括DDR、SDRAM(synchronous dynamic random-access memory,同步动态随机存储器)等;所述缓存模块包括系统缓存(SC)等。
当然,本申请实施例还包括三种及以上类型的存储模块,则相应的任务场景也会更多,MSTER也包括更多的切换路径。也就是说,不同的计算机架构包括不同的存储分配方式,但是针对本申请实施例的基本原则是一致的,不同类型的存储模块有不同的性能区分(例如带宽、延迟、功耗等),针对不同的任务场景需求进行存储模块访问路径的切换。
例如,如果当前处理的任务场景对访问带宽要求较高、且CPU当前访问的是DDR,则确定CPU当前访问的存储模块与所述当前处理的任务场景不匹配;如果此时CPU中不存在访问任务,则控制CPU的访问路径切换至共享缓存。又如,如果当前处理的任务场景对时间要求较高、且CPU当前访问的是共享缓存,则确定CPU当前访问的存储模块与所述当前处理的任务场景不匹配;如果此时CPU中不存在访问任务,则控制CPU的访问路径切换至DDR,从而不访问缓存数据直接写入DDR,缩短处理时间。其中,共享缓存的带宽大于DDR的带宽。
现有技术中,通常都是各个MASTER要么全部连接到SC,要么全部连接到DDR,便于控制以及有利于保持数据的一致性,满足数据共享的需求。本申请实施例中的控制方法,在保持数据一致性的同时,还能够根据存储模块的不同性能兼容不同的任务场景,从而提升电子设备的整体使用性能。
基于前述的实施例,本申请实施例再提供一种控制方法,所述方法应用于电子设备,所述方法包括:
步骤S111、确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
例如,可以预先为不同的应用程序或者进程等划分对应的任务场景,得到不同的应用程序或者进程等与不同的任务场景对应的映射关系,并将该映射关系写入白名单进行调用。
步骤S112、如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;
举例来说,第一处理模块为CPU,CPU连接至电子设备的总线,如果CPU当前访问的存储模块的类型与当前处理的任务场景不匹配,SCP向CPU的总线矩阵发出切换请求,当总线矩阵的读和写对应的计数器(Outstanding计数器)都已经递减到0(即目标值),证明CPU此刻在总线矩阵中已经没有留存的访问,即CPU中不存在访问任务。
步骤S113、当所述第一处理模块对应的任务计数器的数值为所述目标值时,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
这里,通过上述步骤S111至步骤S113中的控制方法,能够兼容处理模块的不同应用场景,通过硬件数据判断处理模块中不存在访问任务的情况下对处理模块的访问路径进行动态切换。通过硬件数据判断,能够更准确可靠的判断是否存在访问任务,并且在没有访问任务是及时发起切换,切换的时间节点判断更为准确。
在一些实施例中,可以通过以下步骤确定第一处理模块对应的任务计数器的数值是否为目标值:
步骤S11、向所述第一处理模块发出第一切换请求,使得所述第一处理模块在接收到所述第一切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;
对应地,可以通过以下步骤实现第一处理模块访问路径的切换:
步骤S12、如果所述第一处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第一总线开关,使得所述第一总线开关能够将所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
举例来说,SCP向CPU的总线矩阵发出切换请求,该总线矩阵接收到切换请求后确定自身读和写对应的计数器是否已经递减到0。如果已经递减到0,SCP再发送切换响应信号给硬件总线开关,总线开关收到响应信号后根据目前CPU访问路径状态寄存器(由软件在切换发起时发起写,记录CPU需要切换到SC或DDR),将访问路径从SC切换到DDR,或者从DDR切换到SC。
当然,也可以是SCP向CPU的总线矩阵发出切换请求,当总线矩阵的读和写对应的计数器都已经递减到0时(证明CPU此刻在总线矩阵中已经没有留存的访问),总线矩阵返回切换响应信号给对应的总线开关,总线开关收到响应信号后根据目前CPU访问路径状态寄存器中的内容,将访问路径从SC切换到DDR,或者从DDR切换到SC。
基于前述的实施例,本申请实施例再提供一种控制方法,所述方法应用于电子设备,图2为本申请实施例控制方法的实现流程示意图二,如图2所示,所述方法包括:
步骤S201、确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
步骤S202、如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
步骤S203、如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块;
步骤S204、如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
本申请实施例中,所述第二处理模块指的是电子设备中能够主动发起访问的单元,例如CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)、DSP(Digital Signal Processing,数字信号处理器)和MPU(MicroprocessorUnit,微处理器)等。也就是说,本申请实施例对第二处理模块的类型并不做限制,任一类型的处理模块均在本申请的保护范围内。并且,本申请实施例中第一处理模块核第二处理模块为不同的处理模块。
这里,确定第一处理模块和第二处理模块是否需要共享数据空间,指的是确定第一处理模块和第二处理模块是否需要同时访问同一存储模块。其本质上是两个处理模块之间需要有数据的交互,比如第二处理模块要用到第一处理模块的数据,这种情况数据通过同一个存储模块进行交互,才能保证数据的一致性。例如,用户正在使用电子设备的拍照修图应用,此时CPU和GPU都处于工作状态,且CPU此时需要使用到GPU处理后的数据,则CPU和GPU此时需要共享数据空间。
需要说明是,本申请实施例中需要确定第一处理模块和第二处理模块是否需要共享数据空间,但是本申请实施例中对确定是否需要共享数据空间的方式并不做限制。
步骤S205、如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务;
步骤S206、如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
这里,相比于现有技术中第一处理模块和第二处理模块都是直接共享某一类型的存储模块(例如,CPU和GPU都是直接共享SC或者直接共享DDR),本申请实施例中的控制方案能够兼容处理模块的不同应用场景,通过硬件数据判断处理模块中不存在访问任务的情况下对处理模块的访问路径进行动态切换。并且,如果第一处理模块和第二处理模块需要共享数据空间,本申请实施例中的控制方案会通过硬件数据判断处理模块中不存在访问任务进而控制第二处理模块的访问路径切换至与第一处理模块的访问路径相同。举例来说,电子设备的CPU和GPU当前访问的存储模块均为DDR(即CPU和GPU直接共享DDR),此时用户开启了拍照修图应用,电子设备的SCP检测到CPU当前访问的存储模块的类型与拍照修图应用所对应的任务场景不匹配,则确定CPU中是否存在访问任务,如果不存在则切换CPU的访问路径至共享缓存模块;但是拍照修图应用需要CPU和GPU共享数据,则SCP继续确定GPU中是否存在访问任务如果不存在则继续控制GPU也切换访问路径至所述共享缓存模块。
在一些实施例中,如果第一处理模块的访问路径切换至内存模块,则可以通过缓存穿透技术、DMA(Direct Memory Access,直接内存访问)等方式,无需切换第二处理模块的总线连接路径,而能够实现将原本连接至共享缓存模块的第二处理模块能够直接访问内存模块。
在一些实施例中,也可以通过总线开关的控制,来实现对第二处理模块的访问路径的切换。
这里,通过上述步骤S201至步骤S206中的控制方法,能够在兼容处理模块的不同应用场景,通过硬件数据判断处理模块中不存在访问任务并对处理模块的访问路径进行动态切换的同时,避免不同处理模块之间数据不一致的问题,达到不同处理模块共享数据存储空间的效果。
基于前述的实施例,本申请实施例再提供一种控制方法,所述方法应用于电子设备,所述方法包括:
步骤S211、确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
步骤S212、如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
步骤S213、如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块;
步骤S214、如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
步骤S215、如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;
举例来说,第一处理模块为CPU,第二处理模块为GPU,如果CPU和GPU需要共享数据空间,SCP向GPU的总线矩阵发出切换请求,当总线矩阵的读和写对应的计数器都已经递减到0(即目标值),证明GPU此刻在总线矩阵中已经没有留存的访问,即GPU中不存在访问任务。
步骤S216、如果所述第二处理模块对应的任务计数器的数值为所述目标值,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
在一些实施例中,通过以下步骤确定第二处理模块对应的任务计数器的数值是否为目标值:
步骤S21、向所述第二处理模块发出第二切换请求,使得所述第二处理模块在接收到所述第二切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;
对应地,通过以下步骤实现第二处理模块访问路径的切换:
步骤S22、如果所述第二处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第二总线开关,使得所述第二总线开关能够将所述第二处理模块的访问路径切换至与所述目标存储模块。
举例来说,SCP向GPU的总线矩阵发出切换请求,该总线矩阵接收到切换请求后确定自身读和写对应的计数器是否已经递减到0。如果已经递减到0,SCP再发送切换响应信号给硬件总线开关,总线开关收到响应信号后根据目前GPU访问路径状态寄存器(由软件在切换发起时发起写,记录CPU需要切换到SC或DDR),将访问路径从SC切换到DDR,或者从DDR切换到SC。
当然,也可以是SCP向GPU的总线矩阵发出切换请求,当总线矩阵的读和写对应的计数器都已经递减到0时(证明GPU此刻在总线矩阵中已经没有留存的访问),总线矩阵返回切换响应信号给对应的总线开关,总线开关收到响应信号后根据目前CPU访问路径状态寄存器中的内容,将访问路径从SC切换到DDR,或者从DDR切换到SC。
基于前述的实施例,本申请实施例再提供一种控制方法,所述方法应用于电子设备,图3为本申请实施例控制方法的实现流程示意图三,如图3所示,所述方法包括:
步骤S301、确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
步骤S302、如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
步骤S303、如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块;
步骤S304、如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
步骤S305、如果所述第一处理模块和所述第二处理模块需要共享数据空间,配置所述第二处理模块,使得所述第二处理模块能够通过自身访问的存储模块直接访问所述第一处理模块当前访问的存储模块。
例如,除了通过总线开关进行访问路径的切换,还可以利用处理模块本身的特性,配置处理模块经过SC直接穿透到DDR。
这里,通过上述步骤S301至步骤S305中的控制方法,能够兼容处理模块的不同应用场景,在处理模块中不存在访问任务的情况下对处理模块的访问路径进行动态切换;同时,能够利用第二处理模块本身的特性配置第二处理模块经过自身访问的存储模块直接穿透到第一处理模块当前访问的存储模块,从而达到不同处理模块共享数据空间的效果。
基于前述的实施例,本申请实施例提供一种电子设备,图4A为本申请实施例电子设备的组成结构示意图一,如图4A所示,所述电子设备40包括:
第一处理模块41;
多个存储模块42;
系统控制模块43,用于确定所述电子设备40的第一处理模块41当前处理的任务场景,以及所述第一处理模块41当前访问的存储模块421;如果所述第一处理模块41当前访问的存储模块421的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块41中是否存在访问任务;如果所述第一处理模块41中不存在访问任务,控制所述第一处理模块41的访问路径切换至与所述当前处理的任务场景相匹配的存储模块422。
举例来说,电子设备的CPU(第一处理模块41)当前访问的存储模块为DDR(存储模块421),此时用户开启了拍照修图应用,电子设备的SCP(系统控制模块43)检测到CPU当前访问的存储模块的类型与拍照修图应用所对应的任务场景不匹配,则切换CPU的访问路径至共享缓存模块(存储模块422)。
这里,多个存储模块42包括存储模块421和存储模块422。
基于前述的实施例,本申请实施例再提供一种电子设备,图4B为本申请实施例电子设备的组成结构示意图二,如图4B所示,所述电子设备400包括:
第一处理模块401和第二处理模块402;
多个存储模块403;
系统控制模块404,用于确定所述电子设备400的第一处理模块401当前处理的任务场景,以及所述第一处理模块401当前访问的存储模块4031;如果所述第一处理模块401当前访问的存储模块4031的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块401中是否存在访问任务;如果所述第一处理模块401中不存在访问任务,控制所述第一处理模块401的访问路径切换至与所述当前处理的任务场景相匹配的存储模块4032;
所述系统控制模块404,还用于如果所述电子设备400的第二处理模块402当前访问的存储模块4033与所述第一处理模块401当前访问的存储模块4031不同,确定所述第一处理模块401和所述第二处理模块402是否需要共享数据空间;如果所述第一处理模块401和所述第二处理模块402需要共享数据空间,确定所述第二处理模块402中是否存在访问任务;如果所述第二处理模块402中不存在访问任务,控制所述第二处理模块402的访问路径切换至所述第一处理模块401当前访问的存储模块4031。
需要说明的是,本申请实施例中第一处理模块401当前访问的存储模块4031并不是指某一特定的存储模块,例如,第一处理模块在第一时间(当前)访问的存储模块可以为SC,在第二时间(当前)访问的存储模块可以为DDR。当然,本申请实施例中当前处理的任务场景相匹配的存储模块4032和第二处理模块402当前访问的存储模块4033也并不是指某一特定的存储模块。
基于前述的实施例,本申请实施例再提供一种电子设备,图5A为本申请实施例电子设备的组成结构示意图三,如图5A所示,所述电子设备50包括:
第一处理模块51和第二处理模块52;
多个存储模块53;
系统控制模块54,用于确定所述电子设备50的第一处理模块51当前处理的任务场景,以及所述第一处理模块51当前访问的存储模块531;如果所述第一处理模块51当前访问的存储模块531的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块51中是否存在访问任务;如果所述第一处理模块51中不存在访问任务,控制所述第一处理模块51的访问路径切换至与所述当前处理的任务场景相匹配的存储模块532;
所述系统控制模块54,还用于如果所述电子设备50的第二处理模块52当前访问的存储模块533与所述第一处理模块51当前访问的存储模块531不同,确定所述第一处理模块51和所述第二处理模块52是否需要共享数据空间;如果所述第一处理模块51和所述第二处理模块52需要共享数据空间,确定所述第二处理模块52中是否存在访问任务;如果所述第二处理模块52中不存在访问任务,控制所述第二处理模块52的访问路径切换至所述第一处理模块51当前访问的存储模块531;
总线55,所述电子设备50的第一处理模块51、所述电子设备50的第二处理模块52和所述电子设备50的多个存储模块53均连接至所述总线55;
对应地,所述系统控制模块54包括控制单元541,以及位于所述总线55上的第一总线开关542和第二总线开关543;
所述控制单元541,用于发送第一控制指令和第二控制指令;
所述第一总线开关542,用于响应所述控制单元541发送的第一控制指令,控制所述第一处理模块51与各个所述存储模块53之间的访问路径的通断状态;
所述第二总线开关543,用于响应所述控制单元541发送的第二控制指令,控制所述第二处理模块52与各个所述存储模块53之间的访问路径的通断状态。
这里,电子设备具有总线,用于连接第一处理模块、第二处理模块,以及电子设备的多个存储模块。并且,系统控制模块包括控制单元、位于所述总线上的第一总线开关和第二总线开关,控制单元在确定所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配后,发送第一切换指令至第一总线开关,第一总线开关根据所述第一切换指令控制第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。控制单元在确定第一处理模块需要和第二处理模块共享数据空间,但此时第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同后,发送第二切换指令至第二总线开关,第二总线开关根据所述第二切换指令控制第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
本申请实施例中第一处理模块51当前访问的存储模块531并不是指某一特定的存储模块,例如,第一处理模块在第一时间(当前)访问的存储模块可以为SC,在第二时间(当前)访问的存储模块可以为DDR。当然,本申请实施例中当前处理的任务场景相匹配的存储模块532和第二处理模块52当前访问的存储模块533也并不是指某一特定的存储模块。
需要说明的是,以上设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
现有技术中CPU(Central Processing Unit,中央处理器)和多个MASTER(即读/写传输的发起方)都是直接共享SC(Share Cache,共享缓存)或者直接共享DDR(Double DataRate,双倍速率同步动态随机存储器),但是,该方案的缺点是不能动态切换访问路径,且CPU和多个MASTER切换访问路径后不能共享存储空间。
基于此,本申请实施例再提供一种控制方法及电子设备,该控制方法能够实现两类应用场景的动态切换,即能够使CPU的访问路径支持动态切换。其中,这两类应用场景分别为高带宽场景和低延迟场景,CPU在高带宽场景需要和其他MASTER一起访问SC,以便提高访问带宽;而在低延迟场景CPU直接访问DDR则会减少访问SC的延迟。并且,该控制方法还能够在其他MASTER需要和CPU共享数据空间的情况下,控制其他MASTER动态跟随CPU切换访问路径。
图5B为本申请实施例电子设备的组成结构示意图四,如图5B所示,电子设备包括CPU的多个核心(即CPU1至CPUn)、主模块1至主模块n(即MASTER1至MASTERn)、SCP(SystemControl Processor,系统控制处理器)、总线矩阵1(BUS_MATRIX 1)、总线矩阵2(BUS_MATRIX 2)、总线开关1(BUS SWITCH 1)、总线开关2(BUS SWITCH 2)、SC和DDR。
其中,软件可以通过白名单记录需要系统运行低延迟场景或高带宽场景时,SCP向CPU的BUS MATRIX 1发出切换请求,当BUS_MATRIX 1的读和写OUTSTANDING计数器都已经递减到0,证明CPU的多个核心此刻在BUS MATRIX 1中已经没有留存的访问,此时返回切换响应信号给硬件BUS SWITCH 1,BUS SWTICH 1收到响应信号后根据目前CPU访问路径状态寄存器(由软件在切换发起时发起写,记录CPU需要切换到SC或DDR),将BUS SWITCH 1的访问路径从SC切换到DDR,或者从DDR切换到SC。
并且,软件可以通过白名单记录需要系统运行低延迟场景或高带宽场景时,SCP向MASTER1至MASTERn的BUS MATRIX 2发出切换请求,当BUS_MATRIX 2的读和写OUTSTANDING计数器都已经递减到0,证明多MASTER的此刻在BUS MATRIX 2中已经没有留存的访问,此时返回切换响应信号给硬件BUS SWITCH 2,BUS SWTICH 2收到响应信号后根据目前CPU访问路径状态寄存器(由软件在切换发起时发起写,记录CPU需要切换到SC或DDR),将BUSSWITCH 2的访问路径从SC切换到DDR,或者从DDR切换到SC。
如此,能够达到MASTER1-MASTERn在CPU切换访问路径时即跟随CPU切换到相同的访问路径,和CPU能共享同一个存储空间的数据的目的。
这里,BUS MATRIX 1和BUS MATRIX 2为总线矩阵/网络,BUS SWITCH1和BUSSWITCH 2为总线路径切换网络。MASTER1至MASTERn为电子设备中除CPU以外能够主动发起访问的单元;即CPU、MASTER1至MASTERn均为读/写传输的发起方。所述白名单可以是出厂时定制,并且在用户的使用过程中不断维护。
本申请实施例中的方案具有以下优势:
(1)、CPU在高带宽场景需要和其他MASTER一起访问SC,以便提高访问带宽;而在低延迟场景直接访问外存DDR则会减少了访问SC的延迟,同时达到CPU和其他MASTER也能共享DDR存储空间;
(2)、支持上面这两类应用切换的动态切换,且达到CPU和其他MASTER也能共享SC/DDR存储空间的目的。
基于前述的实施例,本申请实施例提供一种控制装置,该装置包括所包括的各单元、以及各单元所包括的各模块、以及各模块所包括的各部件,可以通过电子设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为SCP(SystemControl Processor,系统控制处理器)、CPU(Central Processing Unit,中央处理器)、MPU(Microprocessor Unit,微处理器)、DSP(Digital Signal Processing,数字信号处理器)或FPGA(Field Programmable Gate Array,现场可编程门阵列)等。
图6为本申请实施例控制装置的组成结构示意图,如图6所示,所述装置600包括:
第一确定单元601,用于确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
第二确定单元602,用于如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
第一控制单元603,用于如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
在一些实施例中,所述装置还包括:
第三确定单元,用于如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
第四确定单元,用于如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务;
第二控制单元,用于如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
在一些实施例中,所述第四确定单元,包括:
第四确定子单元,用于如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;
对应地,所述第二控制单元,包括:
第二控制子单元,用于如果所述第二处理模块对应的任务计数器的数值为所述目标值,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
在一些实施例中,所述第二确定单元602,包括:
第二确定子单元,用于如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;
对应地,所述第一控制单元603,包括:
第一控制子单元,用于当所述第一处理模块对应的任务计数器的数值为所述目标值时,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
在一些实施例中,所述装置还包括:
第一发送单元,用于向所述第一处理模块发出第一切换请求,使得所述第一处理模块在接收到所述第一切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;或,
第二发送单元,用于向所述第二处理模块发出第二切换请求,使得所述第二处理模块在接收到所述第二切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;
对应地,所述装置还包括:
第三发送单元,用于如果所述第一处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第一总线开关,使得所述第一总线开关能够将所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块;或,
第四发送单元,用于如果所述第二处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第二总线开关,使得所述第二总线开关能够将所述第二处理模块的访问路径切换至与所述目标存储模块。
在一些实施例中,所述装置还包括:
第五确定单元,用于如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
配置单元,用于如果所述第一处理模块和所述第二处理模块需要共享数据空间,配置所述第二处理模块,使得所述第二处理模块能够通过自身访问的存储模块直接访问所述第一处理模块当前访问的存储模块。
在一些实施例中,所述装置还包括:
第六确定单元,用于如果所述当前处理的任务场景为第一场景、且所述第一处理模块当前访问的存储模块为第一存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;或,
第七确定单元,用于如果所述当前处理的任务场景为第二场景、且所述第一处理模块当前访问的存储模块为第二存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;
其中,所述第一场景的带宽要求高于所述第二场景的带宽要求,所述第一存储模块的带宽小于所述第二存储模块的带宽。
以上装置实施例和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的控制方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、ROM(Read Only Memory,只读存储器)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
对应地,本申请实施例再提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例中提供的控制方法中的步骤。
对应地,本申请实施例提供一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述控制方法中的步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,图7为本申请实施例电子设备的一种硬件实体示意图,如图7所示,该电子设备700的硬件实体包括:处理器701、通信接口702和存储器703,其中
处理器701通常控制电子设备700的总体操作。
通信接口702可以使电子设备700通过网络与其他电子设备或服务器或平台通信。
存储器703配置为存储由处理器701可执行的指令和应用,还可以缓存待处理器701以及电子设备700中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过FLASH(闪存)或RAM(Random Access Memory,随机访问存储器)实现。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种控制方法,所述方法包括:
确定电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;
如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;
如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
2.根据权利要求1所述的方法,所述如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块之后,所述方法还包括:
如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务;
如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
3.根据权利要求2所述的方法,所述如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务,包括:
如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;
对应地,所述如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块,包括:
如果所述第二处理模块对应的任务计数器的数值为所述目标值,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
4.根据权利要求1所述的方法,所述如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务,包括:
如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块对应的任务计数器的数值是否为目标值;其中,所述目标值用于表征无剩余访问任务;
对应地,所述如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块,包括:
当所述第一处理模块对应的任务计数器的数值为所述目标值时,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
5.根据权利要求3或4所述的方法,通过以下步骤确定任务计数器的数值是否为目标值:
向所述第一处理模块发出第一切换请求,使得所述第一处理模块在接收到所述第一切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;或,
向所述第二处理模块发出第二切换请求,使得所述第二处理模块在接收到所述第二切换请求后确定总线上自身对应的任务计数器的数值是否为目标值;
对应地,通过以下步骤实现访问路径的切换:
如果所述第一处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第一总线开关,使得所述第一总线开关能够将所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块;或,
如果所述第二处理模块对应的任务计数器的数值为所述目标值,发送切换响应信号至第二总线开关,使得所述第二总线开关能够将所述第二处理模块的访问路径切换至与所述目标存储模块。
6.根据权利要求1所述的方法,所述如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块之后,所述方法还包括:
如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;
如果所述第一处理模块和所述第二处理模块需要共享数据空间,配置所述第二处理模块,使得所述第二处理模块能够通过自身访问的存储模块直接访问所述第一处理模块当前访问的存储模块。
7.根据权利要求1所述的方法,所述方法还包括:
如果所述当前处理的任务场景为第一场景、且所述第一处理模块当前访问的存储模块为第一存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;或,
如果所述当前处理的任务场景为第二场景、且所述第一处理模块当前访问的存储模块为第二存储模块,确定所述第一处理模块当前访问的存储模块与所述当前处理的任务场景不匹配;
其中,所述第一场景的带宽要求高于所述第二场景的带宽要求,所述第一存储模块的带宽小于所述第二存储模块的带宽。
8.一种电子设备,所述电子设备包括:
第一处理模块;
多个存储模块;
系统控制模块,用于确定所述电子设备的第一处理模块当前处理的任务场景,以及所述第一处理模块当前访问的存储模块;如果所述第一处理模块当前访问的存储模块的类型与所述当前处理的任务场景不匹配,确定所述第一处理模块中是否存在访问任务;如果所述第一处理模块中不存在访问任务,控制所述第一处理模块的访问路径切换至与所述当前处理的任务场景相匹配的存储模块。
9.根据权利要求8所述的电子设备,所述电子设备还包括:
第二处理模块;
对应地,所述系统控制模块,还用于如果所述电子设备的第二处理模块当前访问的存储模块与所述第一处理模块当前访问的存储模块不同,确定所述第一处理模块和所述第二处理模块是否需要共享数据空间;如果所述第一处理模块和所述第二处理模块需要共享数据空间,确定所述第二处理模块中是否存在访问任务;如果所述第二处理模块中不存在访问任务,控制所述第二处理模块的访问路径切换至所述第一处理模块当前访问的存储模块。
10.根据权利要求9所述的电子设备,所述电子设备还包括:
总线,所述电子设备的第一处理模块、所述电子设备的第二处理模块和所述电子设备的多个存储模块均连接至所述总线;
对应地,所述系统控制模块包括控制单元,以及位于所述总线上的第一总线开关和第二总线开关;
所述控制单元,用于发送第一控制指令和第二控制指令;
所述第一总线开关,用于响应所述控制单元发送的第一控制指令,控制所述第一处理模块与各个所述存储模块之间的访问路径的通断状态;
所述第二总线开关,用于响应所述控制单元发送的第二控制指令,控制所述第二处理模块与各个所述存储模块之间的访问路径的通断状态。
CN202310180259.8A 2023-02-27 2023-02-27 控制方法及电子设备 Pending CN116257481A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310180259.8A CN116257481A (zh) 2023-02-27 2023-02-27 控制方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310180259.8A CN116257481A (zh) 2023-02-27 2023-02-27 控制方法及电子设备

Publications (1)

Publication Number Publication Date
CN116257481A true CN116257481A (zh) 2023-06-13

Family

ID=86687731

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310180259.8A Pending CN116257481A (zh) 2023-02-27 2023-02-27 控制方法及电子设备

Country Status (1)

Country Link
CN (1) CN116257481A (zh)

Similar Documents

Publication Publication Date Title
KR100740635B1 (ko) 휴대형 단말기 및 휴대형 단말기에서의 공유 메모리 제어방법
US20200081848A1 (en) Storage device and system
KR100592105B1 (ko) 공유 메모리의 분할 영역의 다중 억세스 제어 방법 및 공유메모리를 가지는 휴대형 단말기
US20200174669A1 (en) Management method and apparatus for multi-system shared memory
US9747038B2 (en) Systems and methods for a hybrid parallel-serial memory access
CN113037795B (zh) 瘦终端系统及其处理方法
KR20210038313A (ko) 레이턴시에 중점을 둔 판독 동작과 대역폭에 중점을 둔 판독 동작 사이의 동적 변경
KR100634566B1 (ko) 공유 메모리 제어 방법 및 공유 메모리 동작 제어를수행하는 사용자 단말기
WO2020233435A1 (zh) 数据处理方法、装置和系统
KR100782592B1 (ko) 공유 메모리를 구비한 장치 및 공유 메모리 제어 방법
CN117591450B (zh) 一种数据处理系统、方法、设备及介质
US8145852B2 (en) Device having shared memory and method for providing access status information by shared memory
KR101103619B1 (ko) 멀티 포트 메모리 및 그 억세스 제어 방법
CN118012797A (zh) 总线仲裁方法、总线、电子系统和计算机存储介质
KR20200001208A (ko) 융합형 반도체 장치 및 동작 방법, 이를 포함하는 적층형 메모리 장치
CN115883022B (zh) Dma传输控制方法、装置、电子设备及可读存储介质
CN116257481A (zh) 控制方法及电子设备
CN215576588U (zh) 数据缓存处理器
KR100736902B1 (ko) 복수의 프로세서에 의한 메모리 공유 방법 및 장치
CN104765704A (zh) 一种移动通讯装置及电子设备
CN116418848A (zh) 网络节点的配置和访问请求的处理方法、装置
KR100592109B1 (ko) 공유 메모리의 분할 영역의 다중 억세스 제어 방법 및 공유메모리를 가지는 휴대형 단말기
CN115145842A (zh) 数据缓存处理器及方法
CN110928682B (zh) 外部设备访问计算机内存的方法
CN116244247A (zh) 控制方法及装置、设备

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