CN116601620A - 消息通知方法及装置 - Google Patents
消息通知方法及装置 Download PDFInfo
- Publication number
- CN116601620A CN116601620A CN202080107858.1A CN202080107858A CN116601620A CN 116601620 A CN116601620 A CN 116601620A CN 202080107858 A CN202080107858 A CN 202080107858A CN 116601620 A CN116601620 A CN 116601620A
- Authority
- CN
- China
- Prior art keywords
- flash memory
- notification
- chip
- state
- command
- 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
- 238000000034 method Methods 0.000 title claims abstract description 83
- 230000007958 sleep Effects 0.000 claims abstract description 90
- 238000012545 processing Methods 0.000 claims description 43
- 230000005059 dormancy Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 22
- 238000001514 detection method Methods 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 description 21
- 238000013461 design Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000011664 signaling Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 235000019800 disodium phosphate Nutrition 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000019371 dormancy process Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/177—Initialisation or configuration control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Sources (AREA)
Abstract
本申请提供一种消息通知方法及装置,能够解决需要主芯片的软件发出多个查询命令,才能得知闪存的命令执行状态的问题,减少了额外的软件开销,且适用于主芯片的逻辑电路主动向闪存发起休眠请求的情况。该消息通知方法包括闪存接收来自主芯片的第一休眠请求。闪存检测本端发起的工作命令的执行状态。其中,工作命令用于发起和主芯片之间的读/写操作。闪存向主芯片发送第一通知,其中,第一通知用于指示工作命令的执行状态。
Description
本申请涉及芯片领域,尤其涉及一种消息通知方法及装置。
随着科技的发展,电子设备的功能也越来越多,导致电子设备的功耗也随之增大。因此,当电子设备没有业务需要处理时,电子设备的主芯片和闪存均可以进入休眠状态,以降低电子设备的功耗。具体地,主芯片可以向闪存发送休眠请求,并接收来自闪存的可休眠指示信息,并关闭主芯片向闪存发送数据的第一传输通道,以进入休眠状态;相应地,闪存在向主芯片发出可休眠指示信息之后,也可以在执行必要的内部操作后关闭闪存向主芯片发送数据的第二传输通道,并进入休眠状态。然而,上述休眠流程并没有考虑闪存侧存在需要向主芯片发送工作命令的场景。因此,倘若闪存侧存在需要向主芯片发送工作命令,上述休眠流程可能导致工作命令无法继续执行,从而导致因闪存读写错误造成数据丢失的问题,可靠性低下。
为解决闪存侧的工作命令无法继续执行的问题,可以在执行上述休眠流程之前,引入了主芯片的软件在主动发起休眠请求之前,主芯片的软件查询闪存侧的工作命令的执行状态这一方案。具体地,主芯片的软件可以周期性地主动向闪存发出查询命令,查询闪存侧是否存在正在执行和/或待执行的工作命令,直到主芯片的软件获知闪存侧已不存在需要执行的工作命令时,主芯片和闪存才会执行上述休眠流程。
然而,上述查询步骤可能需要执行很多次,会带来额外的信令开销,且使得休眠流程耗时较长,效率低下。此外,主芯片向闪存发出的多个查询命令都是由主芯片的软件主动发起的,而主芯片的逻辑电路只能执行命令调度和传输,不能主动发起查询命令,即主芯片的逻辑电路并不支持主动发起查询命令。也就是说,对于主芯片的逻辑电路向闪存发起休眠请求的场景,可能会导致在闪存的工作命令执行完毕之前就进入休眠状态,进而导致闪存读写错误和数据丢失问题,可靠性差。
发明内容
本申请提供一种消息通知方法及装置,能够解决主芯片可能需要多次查询才能得知闪存的工作命令的执行状态,进而导致休眠流程耗时较长的问题,可以有效减少主芯片与闪存之间的信令开销,从而提高休眠效率和降低功耗,且适用于主芯片的逻辑电路主动向闪存发起休眠请求的场景,以提高休眠的可靠性。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种消息通知方法,应用于终端设备的闪存,终端设备还包括主芯片。该方法包括:闪存接收来自主芯片的第一休眠请求。闪存检测本端发起的工作命令的执行状态。其中,工作命令用于发起和主芯片之间的读/写操作。闪存向主芯片发送第一通知。其中,第一通知用于指示工作命令的执行状态,以及第一休眠请求与执行工作命令是否发生冲突。
基于第一方面提供的消息通知方法,闪存在接收到来自主芯片的第一休眠请求后,即可自行检测本端发起的工作命令的执行状态,并主动向主芯片发送检测结果。由此, 主芯片无需向闪存发出多个查询命令,即可获取到闪存的工作命令的执行状态,可以有效减少主芯片与闪存之间的信令开销,从而提高休眠效率和降低功耗。并且,由于工作命令的执行状态是闪存主动向主芯片发送的,而不是主芯片通过发送查询命令查询的。因此,无论是主芯片的软件主动发起的休眠请求,还是主芯片的逻辑电路主动发起的休眠请求,主芯片均可获取到闪存的工作命令的执行状态,可以以确保闪存的工作命令不会丢失和数据读写操作的完整性,或者闪存进入休眠状态的可靠性。
一种可能的设计方案中,第一通知可以用于指示存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令发生冲突。当主芯片接收到指示存在处于执行状态或待执行状态的工作命令的第一通知后,可以得知主芯片发起的第一休眠请求与闪存发起的工作命令发生冲突,本次主芯片和闪存进入休眠状态失败,以便闪存继续执行工作命令,从而保证闪存的工作命令的不会丢失。
进一步地,在闪存向主芯片发送第一通知后,第一方面提供的方法还可以包括:闪存继续执行工作命令。由此,可以保证工作命令不受主芯片发出的第一休眠请求的影响,能够保持原有的进程继续执行。
或者,进一步地,在闪存向主芯片发送第一通知之后,第一方面提供的方法还可以包括:闪存接收来自主芯片的第二休眠请求。闪存向主芯片发送第一通知之后,继续执行工作命令,在接收到第二休眠请求时,若闪存的工作命令执行完毕,则可以进入休眠状态,可以减少功耗。
另一种可能的设计方案中,第一通知可以用于指示不存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令未发生冲突。在主芯片接收到指示不存在处于执行状态或待执行状态的工作命令的第一通知后,闪存和主芯片各自按照约定的流程分别进入休眠状态,以减少功耗。
进一步地,在闪存向主芯片发送第一通知后,第一方面提供的方法还可以包括:闪存关闭命令发送功能,并进入休眠状态。闪存在关闭命令发送功能后,即使又产生了工作命令,也不再向主芯片发送工作命令,因而,不会造成工作命令的丢失。
一种可能的设计方案中,闪存的协议栈可以包括物理层和固件。闪存检测工作命令的执行状态,可以包括:物理层在接收到第一休眠请求后,向固件发送中断处理请求。相应地,固件响应于中断处理请求,检测工作命令的执行状态,并向物理层发送检测结果。
第二方面,提供一种消息通知装置,应用于终端设备的闪存。终端设备还包括主芯片。该装置包括收发单元、处理单元。其中,收发单元,用于接收来自主芯片的第一休眠请求。处理单元,用于检测本端发起的工作命令的执行状态。其中,工作命令用于发起和主芯片之间的读/写操作。收发单元,还用于向主芯片发送第一通知。其中,第一通知用于指示工作命令的执行状态,以及第一休眠请求与执行工作命令是否发生冲突。
一种可能的设计方案中,第一通知可以用于指示存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令发生冲突。
进一步地,处理单元,还可以用于向主芯片发送第一通知后,继续执行工作命令。
或者,进一步地,收发单元,还可以用于在闪存向主芯片发送第一通知之后,接收来自主芯片的第二休眠请求。
另一种可能的设计方案中,第一通知还可以用于指示不存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令未发生冲突。
进一步地,处理单元,还可以用于在闪存向主芯片发送第一通知后,关闭命令发送功能,进入休眠状态。
一种可能的设计方案中,闪存的协议栈可以包括物理层和固件,处理单元具体用于物理层在接收到第一休眠请求后,向固件发送中断处理请求;固件响应于中断处理请求,检测工作命令的执行状态;固件向物理层发送检测结果。
可选地,第二方面提供的收发单元可以包括接收单元和发送单元。其中,发送单元用于执行实现第二方面的消息通知装置的发送功能,接收单元用于执行实现第二方面的消息通知装置的接收功能。
可选地,第二方面提供的装置还可以包括存储单元。该存储单元存储有程序或指令。当处理模块执行该程序或指令时,使得该装置可以执行第一方面的消息通知方法。
需要说明的是,第二方面所述的消息通知装置可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(系统)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
第三方面,提供一种消息通知方法,应用于终端设备的主芯片,终端设备还包括闪存。该方法包括:主芯片向闪存发送第一休眠请求。主芯片接收来自闪存的第一通知。其中,第一通知用于指示工作命令的执行状态,以及第一休眠请求与执行工作命令是否发生冲突。工作命令用于闪存发起与主芯片之间的读/写操作。
一种可能的设计方案中,第一通知可以用于指示存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令发生冲突。在主芯片接收来自闪存的第一通知之后,第三方面所述的方法还可以包括:主芯片启动定时器。在定时器计时满后,主芯片向闪存发送第二休眠请求。
一种可能的设计方案中,第一通知可以用于指示不存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令未发生冲突。在主芯片接收来自闪存的第一通知之后,第三方面所述的方法还可以包括:主芯片进入休眠状态。
第四方面,提供一种消息通知装置,应用于终端设备的主芯片,终端设备还包括闪存。该装置包括:发送单元和接收单元。其中,发送单元,用于向闪存发送第一休眠请求。接收单元,用于接收来自闪存的第一通知。其中,第一通知用于指示工作命令的执行状态,以及第一休眠请求与执行工作命令是否发生冲突。工作命令用于闪存发起与主芯片之间的读/写操作。
一种可能的设计方案中,第一通知可以用于指示存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令发生冲突。第四方面所述的装置还可以包括:处理单元。其中,处理单元,用于启动定时器。发送单元,还可以用于在定时器计时满后,向闪存发送第二休眠请求。
一种可能的设计方案中,第一通知可以用于指示不存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令未发生冲突。第四方面所述的装置还可以包括:处理单元。其中,处理单元,用于使能主芯片进入休眠状态。
可选地,第四方面提供的接收单元和发送单元可以集成于一个收发单元,收发单元用于执行实现第四方面的消息通知装置的发送功能和接收功能。
可选地,第四方面提供的装置还可以包括存储单元。该存储单元存储有程序或指令。当处理模块执行该程序或指令时,使得该装置可以执行第三方面的消息通知方法。
需要说明的是,第四方面所述的消息通知装置可以是终端设备或网络设备,也可以 是可设置于终端设备或网络设备中的芯片(系统)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
第五方面,本申请还提供一种电子设备。该电子设备包括:闪存;只读存储器;以及一个或多个计算机程序。其中,一个或多个计算机程序存储在只读存储器上,当计算机程序被闪存执行时,使得电子设备执行第一方面或第三方面中的消息通知方法。
第六方面,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质包括计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行第一方面或第三方面中的消息通知方法。
第七方面,本申请还提供一种计算机程序产品,计算机程序产品包括:计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行第一方面或第三方面中的消息通知方法。
可以理解地,上述第二方面提供的装置、第三方面提供的方法、第四方面提供的装置、第五方面提供的电子设备、第六方面提供的计算机可读存储介质,以及第七方面提供的计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
图1为本申请实施例提供的手机的硬件结构示意图;
图2为本申请实施例提供的消息通知方法的流程示意图一;
图3为本申请实施例提供的闪存检测本端发起的工作命令的执行状态的原理图;
图4为本申请实施例提供的消息通知方法的流程示意图二;
图5为本申请实施例提供的消息通知装置的结构示意图一;
图6为本申请实施例提供的消息通知装置的结构示意图二;
图7为本申请实施例提供的电子设备的结构组成示意图。
下面介绍本申请实施例所涉及的技术术语。
通用闪存存储:通用闪存存储(universal flash storage,UFS)是基于串行数据传输技术打造的允许在操作中被多次擦或写的存储器,其内部存储单元与主芯片之间虽然只有两个数据通道,但由于采用串行数据传输,其实际数据传输时速非常高。UFS支持的是全双工模式,所有数据通道均可以同时执行读写操作,在数据读写的响应速度也非常高。
通用闪存存储主机控制器接口:通用闪存存储主机控制器接口(universal flash storage host controller interface,UFSHCI),主芯片与闪存之间的对外接口是UFS接口。主芯片通过APB总线和AXI总线来实现对UFS的控制和数据交互。主芯片在通过APB总线访问UFSHCI时,UFS的地址空间通过ioremap在内核申请虚拟地址空间即可被主芯片直接访问,主芯片还可以通过由dma_alloc接口进行申请,通过AXI总线访问UFS。
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例提供的一种消息通知方法可应用于电子设备,该电子设备可以为手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、个人数字助理(personal digital assistant,PDA)、可 穿戴电子设备、虚拟现实设备等,本申请实施例对此不做任何限制。
示例性的,如图1所示,本申请实施例中的电子设备可以为手机100。下面以手机100为例对实施例进行具体说明。应该理解的是,图示手机100仅是上述电子设备的一个范例,并且手机100可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。
如图1所示,手机100包括主芯片101、内部存储器121、外部存储器接口122、天线A、移动通信模块131、天线B、无线通信模块132、音频模块140、扬声器140A、受话器140B、麦克风140C、耳机接口140D、显示屏151、用户标识模块(subscriber identification module,SIM)卡接口152、摄像头153、按键154、传感器模块160、通用串行总线(universal serial bus,USB)接口170、充电管理模块180、电源管理模块181和电池182。在另一些实施例中,手机100还可以包括马达、指示器等。
其中,主芯片101可以包括一个或多个处理单元。例如,主芯片101可以包括应用处理器(application processor,AP)、调制解调器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、和/或神经网络处理器(neural-network processing unit,NPU)等。需要说明的是,不同的处理单元可以是独立的器件,也可以集成在一个或多个独立的处理器,可以与手机100中的其它模块集成在同一个器件中。
内部存储器121可以用于存储数据和/或至少一个计算机程序,该至少一个计算机程序包括指令。具体的,内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可以存储至少一个计算机程序。计算机程序可以包括应用程序(比如图库、联系人等)、操作系统(比如Android操作系统、或者IOS操作系统等)、或者其它程序等。存储数据区可存储手机100使用过程中所创建的数据、接收到的来自其它设备(例如其它手机100、网络设备、服务器等)数据、或在出厂之前预先存储的数据等中的至少一个。例如,内部存储器121中存储的数据可以为图像、文件、或标识等信息中的至少一个。
在一些实施例中,内部存储器121可以包括高速随机存取存储器和/或非易失性存储器。例如,内部存储器121包括一个或多个磁盘存储器件、闪存(flash)、或者通用闪存存储器(universal flash storage,UFS)等。
其中,主芯片101可以通过调用存储在内部存储器121中存储的一个或多个计算机程序和/或数据,从而使得手机100实现一个或多个功能,满足用户的需求。例如,主芯片101可以通过调用存储在内部存储器121存储的指令和数据,使得电子设备执行本申请实施例中所提供的消息通知方法。
外部存储器接口122可以用于连接外部存储卡(例如,Micro SD卡),实现扩展手机100的存储能力。外部存储卡通过外部存储器接口122与主芯片101通信,实现数据存储功能。例如将图像、音乐、视频等文件保存在外部存储卡中。
在一些实施例中,主芯片101中还可以设置缓存区,用于保存主芯片101需要循环使用的指令和/或数据,如果主芯片101需要再次使用该指令或数据,可从该缓存区中直接调用。从而有助于避免重复存取,降低主芯片101的等待时间,从而有助于提高系统的效率。例如,缓存区可以通过高速缓冲存储器实现。
应理解,图1所示的手机100的结构仅是一个示例。本申请实施例的手机100可以 具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
示例性地,图2为本申请实施例提供的消息通知方法的流程示意图一,以上述的手机100为上述电子设备举例,该消息通知方法可以应用于手机100的闪存和主芯片。该方法可以包括如下步骤:
S201,主芯片101向闪存102发送第一休眠请求,闪存102接收来自主芯片101的第一休眠请求。
主芯片101与闪存102之间可以通过数据传输链路交互,数据传输链路可以包括第一传输通道和第二传输通道。其中,第一传输通道和第二传输通道可以基于连接主芯片101与闪存102同一组总线实现;或者,第一传输通道为连接主芯片101与闪存102一组总线实现,第二传输通道基于连接主芯片101与闪存102另一组总线实现。其中,第一传输通道供主芯片101向闪存102传输数据/信号,第二传输通道供闪存102向主芯片101传输数据/信号。为节省功耗,主芯片101在不需要访问闪存的情况下,可以通过第一传输通道向闪存102发送第一休眠请求,以便主芯片101、闪存102双方进入休眠状态,以节省功耗。
主芯片101的协议栈包括固件以及物理层。具体地,主芯片101检测是否需要访问闪存的过程可以为:主芯片101的固件需要向闪存102读取数据时,固件通过物理层向闪存102读取数据。或者,主芯片101的固件需要写入数据时,主芯片101的固件将数据写入双倍数据率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,DDR),并通知主芯片101的物理层向闪存102发送数据写入请求,闪存102接收到数据写入请求后,向主芯片101发送数据获取指示包。主芯片101接收到数据获取指示包后将数据写入闪存102。无论是主芯片101的固件需要读取数据,还是写入数据或者具有其他命令传输,主芯片101均确定需要访问闪存。反之,主芯片101的固件既不需要读取数据,也不需要写入数据以及不具有其他命令需要传输的情况下,主芯片101确定没有业务需要处理。
另外,闪存102也可以包括固件以及物理层,且闪存102的物理层接收来自主芯片101的第一休眠请求,并向闪存102的固件发送。
S202,闪存102检测本端发起的工作命令的执行状态。
其中,工作命令用于发起与主芯片101之间的数据读/写操作。工作命令的执行状态至少包括执行中的工作命令、待执行的工作命令以及没有待执行的工作命令。
示例地,如图3所示,闪存102的物理层在接收到第一休眠请求后,先不进入休眠准备状态,也不向主芯片101发送进入休眠状态的确认指示,而是向闪存102的固件发送中断处理请求,闪存102的固件响应于中断处理请求,检测工作命令的执行状态。最后,闪存102的固件向物理层发送检测结果。例如,闪存102的固件在闪存102的物理层配置寄存器,寄存器用于指示闪存102向主芯片101发送第一通知。其中,第一通知用于指示工作命令的执行状态,以及第一休眠请求与执行工作命令未发生冲突。
闪存102会根据工作的命令不同的执行状态做出不同的操作。请继续参考图2,该消息通知方法还可以包括:
若在S202中,闪存102检测到存在处于执行状态或待执行状态的工作命令,则执行S203。
S203,闪存102向主芯片101发送第一通知,主芯片101接收来自闪存102的第一通知。
第一通知指示存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令发生冲突。例如,第一通知包括的字段PACP_PWR_cnf的取值可以为冲突(confilict)。其中,“冲突”还可以用二进制数字表示,如用二进制数字1表示冲突,本申请实施例对此不作具体限定。具体地,闪存102通过第二传输通道向主芯片101发送第一通知。当主芯片101接收到指示存在处于执行状态或待执行状态的工作命令的第一通知后,表明主芯片101发起的第一休眠请求与闪存102的工作命令发生冲突,本次主芯片101和闪存102进入休眠状态失败。
S204,闪存102继续执行工作命令。
主芯片101的物理层接收到第一通知后,向主芯片101的固件发送第一通知。主芯片101的固件解析第一通知,若获知第一通知中PACP_PWR_cnf字段的取值为“冲突”,则执行S205。
S205,主芯片101启动定时器,开始计时。
主芯片101获取到的第一通知的取值为冲突(confilict),为了保证闪存102能够继续执行工作命令,可以暂时不进入休眠状态,也不控制闪存102进入休眠状态,而是启动定时器计时,如可以由主芯片101的固件或者UFSHCI,启动定时器开始计时。在定时器计时过程中,闪存102继续执行工作命令。
其中,定时器超时值设置为50ms、100ms以及200ms等等,在此不做限定。
S206,主芯片101计时超时。
例如,定时器计时达到定时器超时值,可以视为主芯片101计时超时。
S207,主芯片101向闪存102发送第二休眠请求,闪存102接收来自主芯片101的第二休眠请求,返回执行S203。
其中,与第一休眠请求类似,主芯片101也是通过第一传输通道发送第二休眠请求。
同样地,闪存102接收到第二休眠请求时,闪存102返回执行S203。若闪存102检测到存在处于执行状态或待执行状态的工作命令,则继续执行S204-S207。
若闪存102检测到不存在处于执行状态或待执行状态的工作命令,则向主芯片101发送第二通知,主芯片101接收来自闪存102的第二通知。第二通知用于指示不存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令未发生冲突。例如,第二通知包括的字段PACP_PWR_cnf的取值可以为准备好(ok)或二进制数字“0”。主芯片101的固件解析第二通知,获取第二通知的内容准备好(ok)或“0”。然后,主芯片101进入休眠状态,闪存102进入休眠状态。这样,在闪存102的工作命令未执行完毕的情况下,会优先满足闪存102执行工作命令;在闪存102的工作命令执行完毕的情况下,主芯片101、闪存102各自按照约定流程分别进入休眠状态,既能够节省功耗,也不会造成闪存102的工作命令丢失。
基于图2中所示出的消息通知方法,闪存102在接收到来自主芯片的第一休眠请求后,即可自行检测本端发起的工作命令的执行状态,并主动向主芯片101发送检测结果。由此,主芯片101无需向闪存102发出多个查询命令,即可获取到闪存102的工作命令的执行状态,可以有效减少主芯片101与闪存102之间的信令开销,从而提高休眠效率和降低功耗。并且,由于工作命令的执行状态是闪存102主动向主芯片101发送 的,而不是主芯片101通过发送查询命令查询的。因此,无论是主芯片101的软件主动发起的休眠请求,还是主芯片101的逻辑电路主动发起的休眠请求,主芯片101均可获取到闪存的工作命令的执行状态,可以以确保闪存102的工作命令不会丢失和数据读写操作的完整性,或者闪存102进入休眠状态的可靠性。
示例性地,图4为本申请实施例提供的消息通知方法的流程示意图二,以上述的手机100为上述电子设备举例,该消息通知方法可以应用于手机100的闪存102和主芯片101。该方法可以包括如下步骤:
S401,主芯片101向闪存102发送第一休眠请求,闪存102接收来自主芯片101的第一休眠请求。
S402,闪存102检测本端发起的工作命令的执行状态。
其中,S401-S402的具体实现可以参考上述S201-S202,此处不再赘述。
需要说明的是,若在S402中,闪存102检测到不存在处于执行状态或待执行状态的工作命令,则可以执行S403。
S403,闪存102向主芯片101发送第二通知,主芯片101接收来自闪存102的第二通知。
其中,第二通知用于指示不存在处于执行状态或待执行状态的工作命令,以及第一休眠请求与执行工作命令未发生冲突。例如,第二通知中的字段PACP_PWR_cnf的取值可以为准备好(ok)。其中,“准备好”还可以用二进制数字表示,如用二进制数字0表示准备好,本申请实施例对此不作具体限定。具体地,闪存102可以通过第二传输通道向主芯片101发送第二通知。相应地,主芯片101可以通过第二传输通道接收来自闪存102的第二通知。
需要说明的是,若闪存102在向主芯片101发送第二通知后,又有新的工作命令需要执行,可以继续通知主芯片101执行读/写操作。然而,主芯片101接收到来自闪存102的第二通知后,可能已经进入休眠状态,导致无法接收到执行读/写操作的通知,仍然会导致工作命令的丢失。为解决此问题,该消息通知方法还可以包括:
S404,闪存102关闭命令发送功能。
具体地,闪存102的固件和/或物理层可以关闭命令发送功能。闪存102在关闭命令发送功能后,即使又产生了工作命令,也不再向主芯片发送工作命令,因而,不会造成工作命令的丢失。
S405,主芯片101进入休眠状态,闪存102进入休眠状态。
示例性地,S403的具体实现过程可以包括:主芯片101在接收第二通知后,向闪存102发送第一特定序列,闪存102接收第一特定序列。主芯片101和闪存102基于第一序列关闭第一传输通道。同理,闪存102也可以向主芯片101发送第二特定序列,主芯片101接收第二特定序列。主芯片101和闪存102基于第二特定序列关闭第二传输通道。最后,主芯片101进入休眠状态,闪存102进入休眠状态。其中,第一特定序列和第二特定序列可以为多个电平信号组成的跳变信号。
需要说明的是,若主芯片101被唤醒,如主芯片又接收到需要处理的业务时,主芯片101可以唤醒闪存102。闪存102在被唤醒后,开启命令发送功能,以便向主芯片101发送之前未发出的工作命令。
基于图4中所示出的消息通知方法,闪存102在接收到来自主芯片的第一休眠请求后,即可自行检测本端发起的工作命令的执行状态,并主动向主芯片101发送检测结 果。由此,主芯片101无需向闪存102发出多个查询命令,即可获取到闪存102的工作命令的执行状态,可以有效减少主芯片101与闪存102之间的信令开销,从而提高休眠效率和降低功耗。并且,由于工作命令的执行状态是闪存102主动向主芯片101发送的,而不是主芯片101通过发送查询命令查询的。因此,无论是主芯片101的软件主动发起的休眠请求,还是主芯片101的逻辑电路主动发起的休眠请求,主芯片101均可获取到闪存的工作命令的执行状态,可以以确保闪存102的工作命令不会丢失和数据读写操作的完整性,或者闪存102进入休眠状态的可靠性。
示例性地,图5为本申请实施例提供的消息通知装置500的结构示意图之一。该消息通知装置500,应用于闪存102,可以用于执行图2或图4中的闪存102执行的消息通知方法。需要说明的是,本申请实施例所提供的消息通知装置500,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。如图5所示,消息通知装置500包括:收发单元501、处理单元502。收发单元501,用于执行S201、S203、S207、S401以及S403,处理单元502用于执行S202、S204、S402、S404以及S405。
示例性地,图6为本申请实施例提供的消息通知装置600的结构示意图之二。该消息通知装置600,应用于主芯片101,可以用于执行图2或图4中的主芯片101执行的消息通知方法。需要说明的是,本申请实施例提供的消息通知装置600,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
如图6所示,消息通知装置600包括:发送单元601、接收单元602以及处理单元603。发送单元601,用于执行上述的S201、S203、S207。接收单元602,用于执行上述的S401、S403。处理单元603用于执行上述的S205、S206、S405。
示例性地,图7为本申请实施例提供的电子设备700的结构示意图。下面结合图7对电子设备700的各个构成部件进行具体的介绍:
其中,主芯片701是电子设备700的控制中心,可以包括一个处理器,也可以包括多个处理器。例如,主芯片701包括一个或多个中央处理器(central processing unit,CPU),也可以包括特定集成电路(application specific integrated circuit,ASIC),或者包括被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。
可选地,主芯片701可以通过运行或执行存储在只读存储器702内的软件程序,以及调用存储在只读存储器702内的数据,执行电子设备700的各种功能。例如,主芯片701可以执行本申请上述实施例中的S201、S203、S205、S207、S207、S401、S403、S405,在此不做限定。
在具体的实现中,作为一种实施例,主芯片701可以包括一个或多个CPU,例如图7中所示出的CPU0和CPU1。
其中,只读存储器702用于存储执行本申请方案的软件程序,并由主芯片701来控制执行,具体实现方式可以参考上述方法实施例,此处不再赘述。
可选地,只读存储器702可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数 字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。只读存储器702可以和主芯片701集成在一起,也可以独立存在,并通过电子设备700的接口电路(图7中未示出)与主芯片701耦合,本申请实施例对此不作具体限定。
收发器703,用于与其他电子设备之间的通信。例如,电子设备700为电子设备,收发器703可以用于与网络设备通信,或者与另一个电子设备通信。又例如,电子设备700为网络设备,收发器703可以用于与电子设备通信,或者与另一个网络设备通信。
可选地,收发器703可以包括接收器和发送器(图7中未单独示出)。其中,接收器用于实现接收功能,发送器用于实现发送功能。
可选地,收发器703可以和主芯片701集成在一起,也可以独立存在,并通过电子设备700的接口电路(图7中未示出)与主芯片701耦合,本申请实施例对此不作具体限定。
闪存704,基于串行数据传输技术打造的允许在操作中被多次擦或写的存储器,其内部存储单元与主芯片之间虽然只有两个数据通道,但由于采用串行数据传输,其实际数据传输时速非常高。UFS支持的是全双工模式,所有数据通道均可以同时执行读写操作,在数据读写的响应速度也非常高。闪存704可以执行本申请上述实施例中的S201、S202、S203、S204、S207、S401、S402、S403、S404、S405。
需要说明的是,图7中示出的电子设备700的结构并不构成对该消息通知装置的限定,实际的消息通知装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
此外,电子设备700的技术效果可以参考上述方法实施例所述的消息通知方法的技术效果,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序代码,当处理器执行该计算机程序代码时,电子设备执行上述实施例中的方法。
本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行上述实施例中的方法。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gate array, FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
本申请实施例提供一种消息通知系统。该消息通知系统包括上述一个或多个终端设备,和/或,一个或多个网络设备。
应理解,在本申请实施例中的处理器可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进 行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (23)
- 一种消息通知方法,其特征在于,应用于终端设备的闪存,所述终端设备还包括主芯片,所述方法包括:所述闪存接收来自所述主芯片的第一休眠请求;所述闪存检测本端发起的工作命令的执行状态,其中,所述工作命令用于发起与所述主芯片之间的读/写操作;所述闪存向所述主芯片发送第一通知,其中,所述第一通知用于指示工作命令的执行状态,以及所述第一休眠请求与执行所述工作命令是否发生冲突。
- 根据权利要求1所述的方法,其特征在于,所述第一通知用于指示存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令发生冲突。
- 根据权利要求2所述的方法,其特征在于,在所述闪存向所述主芯片发送第一通知后,所述方法还包括:所述闪存继续执行所述工作命令。
- 根据权利要求2所述的方法,其特征在于,在所述闪存向所述主芯片发送第一通知之后,所述方法还包括:所述闪存接收来自所述主芯片的第二休眠请求。
- 根据权利要求1所述的方法,其特征在于,所述第一通知用于指示不存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令未发生冲突。
- 根据权利要求4所述的方法,其特征在于,在所述闪存向所述主芯片发送第一通知后,所述方法还包括:所述闪存关闭命令发送功能;所述闪存进入休眠状态。
- 根据权利要求1-6任一项所述的方法,其特征在于,所述闪存的协议栈包括物理层和固件,所述闪存检测所述工作命令的执行状态,包括:所述物理层在接收到所述第一休眠请求后,向所述固件发送中断处理请求;所述固件响应于所述中断处理请求,检测所述工作命令的执行状态;所述固件向所述物理层发送检测结果。
- 一种消息通知装置,其特征在于,应用于终端设备的闪存,所述终端设备还包括主芯片,所述装置包括收发单元、处理单元,其中,所述收发单元,用于接收来自所述主芯片的第一休眠请求;所述处理单元,用于检测本端发起的工作命令的执行状态,其中,所述工作命令用于发起与所述主芯片之间的读/写操作;所述收发单元,还用于向所述主芯片发送第一通知,其中,所述第一通知用于指示工作命令的执行状态,以及所述第一休眠请求与执行所述工作命令是否发生冲突。
- 根据权利要求8所述的装置,其特征在于,所述第一通知用于指示存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令发生 冲突。
- 根据权利要求9所述的装置,其特征在于,所述装置还包括:所述处理单元,还用于向所述主芯片发送第一通知后,继续执行所述工作命令。
- 根据权利要求9所述的装置,其特征在于,所述收发单元,还用于在所述闪存向所述主芯片发送第一通知之后,接收来自所述主芯片的第二休眠请求。
- 根据权利要求8所述的装置,其特征在于,所述第一通知用于指示不存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令未发生冲突。
- 根据权利要求12所述的装置,其特征在于,所述处理单元,还用于在所述闪存向所述主芯片发送第一通知后,关闭命令发送功能,进入休眠状态。
- 根据权利要求8-13任一项所述的装置,其特征在于,所述闪存的协议栈包括物理层和固件,所述处理单元具体用于所述物理层在接收到所述第一休眠请求后,向所述固件发送中断处理请求;所述固件响应于所述中断处理请求,检测所述工作命令的执行状态;所述固件向所述物理层发送检测结果。
- 一种消息通知方法,其特征在于,应用于终端设备的主芯片,所述终端设备还包括闪存,所述方法包括:所述主芯片向所述闪存发送第一休眠请求;所述主芯片接收来自所述闪存的第一通知,其中,所述第一通知用于指示工作命令的执行状态,以及所述第一休眠请求与执行所述工作命令是否发生冲突,所述工作命令用于所述闪存发起与所述主芯片之间的读/写操作。
- 根据权利要求15所述的方法,其特征在于,所述第一通知用于指示存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令发生冲突,在所述主芯片接收来自所述闪存的第一通知之后,所述方法还包括:所述主芯片启动定时器;在所述定时器计时满后,所述主芯片向所述闪存发送第二休眠请求。
- 根据权利要求15所述的方法,其特征在于,所述第一通知用于指示不存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令未发生冲突,在所述主芯片接收来自所述闪存的第一通知之后,所述方法还包括:所述主芯片进入休眠状态。
- 一种消息通知装置,其特征在于,应用于终端设备的主芯片,所述终端设备还包括闪存,所述装置包括发送单元和接收单元,所述发送单元,用于向所述闪存发送第一休眠请求;所述接收单元,用于接收来自所述闪存的第一通知,其中,所述第一通知用于指示工作命令的执行状态,以及所述第一休眠请求与执行所述工作命令是否发生冲突,所述工作命令用于所述闪存发起与所述主芯片之间的读/写操作。
- 根据权利要求18所述的装置,其特征在于,所述第一通知用于指示存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令发 生冲突,所述装置还包括:处理单元,用于启动定时器;所述发送单元,还用于在所述定时器计时满后,向所述闪存发送第二休眠请求。
- 根据权利要求18所述的装置,其特征在于,所述第一通知用于指示不存在处于执行状态或待执行状态的工作命令,以及所述第一休眠请求与执行所述工作命令未发生冲突,所述装置还包括:处理单元,用于使能所述主芯片进入休眠状态。
- 一种电子设备,其特征在于,包括:闪存;只读存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序存储在所述只读存储器上,当所述计算机程序被所述闪存执行时,使得所述电子设备执行如权利要求1-7或15-17中任一项所述的消息通知方法。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得所述计算机执行如权利要求1-7或15-17中任一项所述的消息通知方法。
- 一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得所述计算机执行如权利要求1-7中或15-17任一项所述的消息通知方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/136625 WO2022126398A1 (zh) | 2020-12-15 | 2020-12-15 | 消息通知方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116601620A true CN116601620A (zh) | 2023-08-15 |
Family
ID=82059888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080107858.1A Pending CN116601620A (zh) | 2020-12-15 | 2020-12-15 | 消息通知方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230325262A1 (zh) |
EP (1) | EP4250128A4 (zh) |
CN (1) | CN116601620A (zh) |
WO (1) | WO2022126398A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116027876B (zh) * | 2022-06-30 | 2023-11-24 | 荣耀终端有限公司 | 绝对静止状态信息获取方法及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100486195C (zh) * | 2006-03-30 | 2009-05-06 | 上海大学 | 无线自组网的节能方法 |
KR100818802B1 (ko) * | 2007-01-03 | 2008-04-02 | 삼성전자주식회사 | 파워다운 응답신호를 발생하는 반도체 메모리 장치 및 상기반도체 장치의 파워다운 방법 |
JP4940033B2 (ja) * | 2007-06-29 | 2012-05-30 | パナソニック株式会社 | 計算機システム、計算機システムの制御方法および携帯電話機 |
CN103389963B (zh) * | 2012-05-09 | 2016-08-31 | 北京兆易创新科技股份有限公司 | 一种嵌入式系统控制器 |
US9881680B2 (en) * | 2014-06-03 | 2018-01-30 | Qualcomm Incorporated | Multi-host power controller (MHPC) of a flash-memory-based storage device |
CN107688344B (zh) * | 2017-08-22 | 2021-04-23 | 广东美的智能机器人有限公司 | 机器人的休眠控制方法及其装置 |
-
2020
- 2020-12-15 EP EP20965416.9A patent/EP4250128A4/en active Pending
- 2020-12-15 CN CN202080107858.1A patent/CN116601620A/zh active Pending
- 2020-12-15 WO PCT/CN2020/136625 patent/WO2022126398A1/zh active Application Filing
-
2023
- 2023-06-14 US US18/334,797 patent/US20230325262A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4250128A4 (en) | 2024-01-10 |
WO2022126398A1 (zh) | 2022-06-23 |
US20230325262A1 (en) | 2023-10-12 |
EP4250128A1 (en) | 2023-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11809258B2 (en) | Methods and apparatus for providing peripheral sub-system stability | |
EP3321815B1 (en) | Methods and apparatus for providing individualized power control for peripheral sub-systems | |
US10845868B2 (en) | Methods and apparatus for running and booting an inter-processor communication link between independently operable processors | |
US8156376B2 (en) | Method, device and system for storing data in cache in case of power failure | |
US9461927B2 (en) | Method, device, and system for delaying packets during a network-triggered wake of a computing device | |
US20190370217A1 (en) | Methods and apparatus for reducing power consumption within embedded systems | |
US9128811B2 (en) | Assigning addresses to devices on an interconnect | |
WO2022166875A1 (zh) | 一种日志保存方法、通信装置、芯片及模组设备 | |
US10085214B2 (en) | Apparatus and methods for wake-limiting with an inter-device communication link | |
US20230325262A1 (en) | Message notification method and apparatus | |
JPWO2012081085A1 (ja) | 割込み要因管理装置及び割込み処理システム | |
US10832132B2 (en) | Data transmission method and calculation apparatus for neural network, electronic apparatus, computer-readable storage medium and computer program product | |
WO2012009996A1 (zh) | 一种存储器装置及智能手机系统 | |
CN116601616A (zh) | 一种数据处理装置、方法及相关设备 | |
US20050198427A1 (en) | Portable electronic system and accessing method thereof | |
US20220188251A1 (en) | Operating method of transaction accelerator, operating method of computing device including transaction accelerator, and computing device including transaction accelerator | |
CN114238160A (zh) | 地址访问方法、装置及电子设备 | |
EP1603050B1 (en) | Portable electronic system and accessing method thereof |
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 |