CN114281724B - 数据传输方法、装置及电子设备 - Google Patents

数据传输方法、装置及电子设备 Download PDF

Info

Publication number
CN114281724B
CN114281724B CN202111505935.1A CN202111505935A CN114281724B CN 114281724 B CN114281724 B CN 114281724B CN 202111505935 A CN202111505935 A CN 202111505935A CN 114281724 B CN114281724 B CN 114281724B
Authority
CN
China
Prior art keywords
data
stored
storage
storage area
transmission
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.)
Active
Application number
CN202111505935.1A
Other languages
English (en)
Other versions
CN114281724A (zh
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.)
Shenzhen Oribo Technology Co Ltd
Original Assignee
Shenzhen Oribo Technology 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 Shenzhen Oribo Technology Co Ltd filed Critical Shenzhen Oribo Technology Co Ltd
Priority to CN202111505935.1A priority Critical patent/CN114281724B/zh
Publication of CN114281724A publication Critical patent/CN114281724A/zh
Application granted granted Critical
Publication of CN114281724B publication Critical patent/CN114281724B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本申请公开了一种数据传输方法、装置及电子设备,涉及数据处理技术领域。该方法应用于控制器,控制器与外部存储器连接,控制器包括内部存储器,控制器与外部存储器通过数据总线进行数据传输,包括:当获取到待存储数据时,获取数据总线的当前传输状态;若当前传输状态为传输占用状态,获取数据总线当前传输的数据的数据信息;若数据信息满足预设数据条件,将待存储数据写入至内部存储器中,预设数据条件用于表征当前传输的数据所占的存储容量大于预设容量;在检测到数据总线的当前传输状态为传输空闲状态时,通过数据总线将待存储数据传输至外部存储器中进行存储。如此,避免了数据总线使用冲突的问题,及时完成对待存储数据的存储。

Description

数据传输方法、装置及电子设备
技术领域
本申请涉及数据处理技术领域,更具体地,涉及一种数据传输方法、装置及电子设备。
背景技术
在物联网(Internet of Things,IoT)产品开发过程中,为了尽可能的降低硬件成本,一般选用的主控芯片的资源常常有限,如主控芯片内部的只读存储器(Read-OnlyMemory,ROM)以及随机存取存储器(Random Access Memory,RAM)的存储空间都有限。由于产品功能需求上往往需要存储大量的不同类型、不同容量的数据,基于此,在相关技术中,一般会采用外部挂载一片存储芯片(例如:NOR Flash存储芯片)的硬件设计结构,主控芯片与存储芯片之间通过通讯总线进行数据操作。其中,通过通讯总线进行数据操作的过程不能被打断,否则无法完成应用功能。
但是,在实际应用中,可能同时存在需要通过通讯总线进行数据操作的多个应用功能,由于通讯总线在同一时刻仅能对单一的应用功能的数据进行操作,导致存在数据操作冲突的问题发生,进而导致一些应用功能无法完成。
发明内容
有鉴于此,本申请提出了一种数据传输方法、装置及电子设备。
第一方面,本申请实施例提供了一种数据传输方法,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述方法包括:当获取到待存储数据时,获取所述数据总线的当前传输状态;若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据;若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量;在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据。
第二方面,本申请实施例提供了一种数据传输装置,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述装置包括:状态获取模块、信息获取模块、数据存储模块以及数据传输模块。状态获取模块,用于当获取到待存储数据时,获取所述数据总线的当前传输状态;信息获取模块,用于若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据;数据存储模块,用于若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量;数据传输模块,用于在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行第一方面提供的数据传输方法。
本申请提供的方案中,当获取到待存储数据时,获取数据总线的当前传输状态;若当前传输状态为传输占用状态,则获取数据总线当前传输的数据的数据信息;若数据信息满足预设数据条件,将待存储数据写入至内部存储器中,预设数据条件用于表征当前传输的数据所占的存储容量大于预设容量;在检测到数据总线的当前传输状态为传输空闲状态时,通过数据总线将待存储数据传输至外部存储器中进行存储。如此,可以在数据总线正在传输大容量数据时,先将待存储数据写入至内部存储器中,避免了数据总线使用冲突的问题,实现了及时对待存储数据进行存储,即及时完成应用功能对数据的存储需求,保证了应用功能的正常运行以及待存储数据的安全性;并且,当数据总线将大容量数据传输完成后,再将待存储数据通过数据总线传输至外部存储器进行存储,节省了内部存储器的使用资源,进而可以保证控制器的内部存储空间以及运行速度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一实施例应用环境的示意图。
图2示出了本申请一实施例提供的数据传输方法的流程示意图。
图3示出了本申请另一实施例提供的数据传输方法的流程示意图。
图4示出了本申请再一实施例提供的数据传输方法的流程示意图。
图5示出了本申请再一实施例提供的数据传输方法的流程示意图。
图6示出了图5中步骤S570的子步骤的流程示意图。
图7示出了本申请再一实施例提供的数据传输方法的流程示意图。
图8是根据本申请一实施例提供的一种数据传输装置的框图。
图9是本申请实施例的用于执行根据本申请实施例的数据传输方法的电子设备的框图。
图10是本申请实施例的用于保存或者携带实现根据本申请实施例的数据传输方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在物联网(Internet of Things,IoT)产品开发过程中,为了尽可能降低硬件成本,一般选用的主控芯片的资源常常有限,如主控芯片内部的只读存储器(Read-OnlyMemory,ROM)以及随机存取存储器(Random Access Memory,RAM)的存储空间都有限。由于产品功能需求,往往需要存储大量的不同类型、不同容量的数据,基于此,在相关技术中,一般会采用外部挂载一片存储芯片(例如:NOR Flash存储芯片)的硬件设计结构,主控芯片与存储芯片之间通过通讯总线进行数据操作。其中,通过通讯总线进行数据操作的过程不能被打断,否则无法完成应用功能。
但是,在实际应用中,可能同时存在需要通过通讯总线进行数据操作的多个应用功能,由于通讯总线在同一时刻仅能对单一的应用功能的数据进行操作,导致存在数据操作冲突的问题发生,进而导致一些应用功能无法完成。
针对上述问题,发明人提出一种数据传输方法、装置及电子设备,当获取到待存储数据时,获取所述数据总线的当前传输状态,若当前传输状态为传输占用状态且正在传输的数据为大容量数据,则先将待存储数据写入内部存储器;在数据总线空闲时,再将待存储数据传输至外部存储器中进行存储。下面对该内容进行详细描述。
请参照图1,图1示出了为本申请实施例提供的应用环境的示意图,本申请实施例提供的数据传输方法可以应用于如图1所示的数据传输***10。数据传输***10可以包括控制器110、外部存储器120以及数据总线130。控制器110通过数据总线130与外部存储器120建立连接,控制器110与外部存储器120可以基于数据总线130进行数据传输,其中,传输的数据包括但不限于文本数据、语音数据、图像数据或指令数据等。
其中,控制器110可以理解为主控芯片,控制器110中可以包括内部存储器,内部存储器可以包括第一存储区域以及第二存储区域,第二存储区域可以理解为RAM(随机存取存储器,Random Access Memory)111,第一存储区域可以理解为ROM(只读存储器,Read-OnlyMemory)112,RAM111是与CPU直接交换数据的内部存储器,可以随时读写,且读写速度很快,一般用于暂时存储程序、临时数据和中间结果;ROM112也被称为固定存储器,一般常用于存储各种较稳定的固定程序和数据,即使断电,存入至ROM112中的数据也不会改变。
在一些实施方式中,RAM111可以分为应用RAM区域和专用RAM区域,ROM112可以分为应用ROM区域和专用ROM区域。其中,专用RAM区域用于缓存关键数据,关键数据可以理解为在应用中可能需要实时读取查询的数据;专用ROM区域用于在数据总线130处于传输占用状态,且当前正在传输的数据为大容量数据时,暂存产生的待存储数据。
可选地,外部存储器130也可以分为大容量数据区域以及小容量数据区域,大容量数据区域用于存储容量大的功能数据包,如语音、视频等多媒体信息,小容量数据区域用于存储容量小的功能数据包,如指纹、密码等配置信息;当待存储数据为大容量类型数据时,则将待存储数据存储至外部存储器130的大容量数据区域,当待存储数据为小容量类型数据时,则将待存储数据存储值外部存储器130的小容量数据区域。
在该方式中,当控制器110检测到数据总线130处于传输空闲状态时,可以将暂存在专用ROM区域的待存储数据通过数据总线130传输至外部存储器120中进行存储。
其中,数据传输***10可以部署于电子设备内,电子设备包括但不限制于如智能家居设备、智能控制面板、智能手机、平板电脑、便携计算机、台式计算机和可穿戴式电子设备等;智能家居设备可以是如智能灯具、智能门锁、智能电视、智能窗帘、智能空调等,本实施例对此不作限制。
请参照图2,图2为本申请一实施例提供的一种数据传输方法的流程示意图,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输。下面将结合图2对本申请实施例提供的数据传输方法进行详细阐述。该数据传输方法可以包括以下步骤:
步骤S210:当获取到待存储数据时,获取所述数据总线的当前传输状态。
在本实施例中,以智能门锁为例,待存储数据可以是应用于智能门锁的控制器中运行的某个应用功能所产生的需要存储的数据,该数据包括但不限于指纹信息、密码信息、语音信息、图像信息以及视频信息等,当然,该待存储数据也可以理解为操作指令信息,例如删除指纹、修改密码等数据写操作指令信息。为节省内部存储器的存储空间,可以将待存储数据通过数据总线传输至外部存储器进行存储,但是,在实际应用中,由于控制器可能同时运行了其他的应用功能,其他的应用功能需要从外部存储器中读取和/或写入数据,则会占用数据总线,导致待存储数据无法进行存储,进而导致无法正常完成应用功能,影响用户使用体验感。
基于此,在获取到待存储数据时,可以进一步获取数据总线的当前传输状态,再基于数据总线的当前传输状态确定如何处理待存储数据。其中,传输状态包括传输占用状态以及传输空闲状态,传输占用状态表示数据总线正在传输数据,传输空闲状态表示数据总线当前未传输数据。
步骤S220:若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据。
步骤S230:若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量。
在本实施例中,若获取到的当前传输状态为传输占用状态,代表此时数据总线正在传输数据,因此,需进一步判断本次数据传输耗时长短情况,可以获取数据总线当前传输的数据的数据信息,并判断该数据信息是否满足预设数据条件,以确定该数据信息的数据类型,并基于数据类型确定是否将待存储数据先写入至内部存储器中进行存储。其中,数据类型包括大容量类型数据和小容量类型数据。
在一些实施方式中,判断数据信息所占的存储容量是否大于预设容量,若大于,则判定该数据信息为大容量类型数据,即满足前述预设数据条件。由于传输大容量类型数据耗时相对较长,若等待数据总线将大容量类型数据传输完成后,再将待存储数据传输至外部存储器中,等待传输的时间较长,无法在及时完成数据的存储,即无法及时完成当前的应用功能。其中,及时完成数据的存储,可以理解为,在用户不会察觉到延时的时间范围内及时完成数据的存储,例如,当用户提交保存密码信息时,及时完成密码信息的保存,并输出提示信息,提示用户已保存成功,即在用户提交保存密码信息至输出提示信息之间的间隔时长需要小于用户察觉到延时的时间范围,保证用户流畅的使用体验。因此,若所述数据信息为大容量类型数据,可以先将待存储数据写入内部存储器暂存,以实现在数据总线被大容量类型数据占用时,同时也能及时对待存储数据进行存储,保证当前应用功能的及时完成。可选地,若数据信息所占的存储容量小于或等于预设容量,则判定数据信息为小容量类型数据,即不满足前述预设数据条件,由于小容量类型数据的传输时间非常短,因此,可以等待数据总线将小容量类型数据传输完成后,再将待存储数据通过数据总线写入外部存储器,如此,也可以实现在用户不会察觉到延时的时间范围内,完成数据的存储,保证当前应用功能的及时完成。
在另一些实施方式中,获取数据信息的数据类型,作为目标数据类型;将所述目标数据类型与大容量类型数据对应的预设类型进行匹配,若匹配成功,则判定该数据信息为大容量类型数据,即满足前述预设数据条件,可以先将待存储数据写入至内部存储器中进行暂存;若匹配失败,则判定该数据信息为小容量类型数据,等待数据总线将小容量类型数据传输完成后,直接将待存储数据通过数据总线传输至外部存储器进行存储。
其中,可以将待存储数据存储至内部存储器中的专用ROM区域中,由于ROM具有非易失性,即使切断电源,暂存至专用ROM区域中的数据也不会丢失。如此,在数据总线被大容量类型数据占用时,不仅可以及时将待存储数据写入至内部存储器中进行存储,同时还保证了存储的安全性,即使掉电,前述待存储信息仍存储于内部存储器中,且待存储信息的数据结构也不会发生改变,进而保证了应用功能所产生的数据的安全性,保证了应用功能的正常运行。
步骤S240:在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据。
基于此,在将待存储数据写入至所述内部存储器中进行暂存后,不断监测数据总线的当前传输状态,在检测到数据总线的当前传输状态为传输空闲状态时,则及时通过数据总线将暂存于内部存储器中的待存储数据同步传输至外部存储器中进行存储。如此,可以及时腾出内部存储器的使用空间,有效地保证了控制器运行速度,不会因内部存储器因内存不足,导致运行卡顿等问题的发生。
在一些实施方式中,在检测到数据总线的当前传输状态为传输空闲状态时,同时获取控制器的负载任务标识,其中,负载任务标识包括空闲任务标识以及繁忙任务标识,繁忙任务标识表征当前控制器的***载荷重,同时运行的应用功能较多,空闲任务标识表征当前控制器的***载荷轻,同时运行的应用功能较少。若获取到的负载任务标识为空闲任务标识,则及时通过数据总线将暂存于内部存储器中的待存储数据同步传输至外部存储器中进行存储;若获取到的负载任务标识为繁忙任务标识,代表此时控制器的***载荷重,若此时控制器将内部存储器中的待存储数据通过数据总线同步传输至外部存储器中,会增加***载荷,进而可能导致其他应用功能无法及时完成,因此,可以持续检测数据总线的当前传输状态和负载任务标识,在数据总线处于传输空闲状态且负载任务标识为空闲任务标识时,再将内部存储器中的待存储数据通过数据总线同步传输至外部存储器中进行存储。如此,在同步待存储数据至外部存储器的同时,也保证了控制器的运行速度。
在本实施例中,在数据总线正在传输大容量数据时,先将待存储数据写入至内部存储器中,避免了数据总线使用冲突的问题,实现了及时对待存储数据进行存储,即及时完成应用功能对数据的存储需求,保证了应用功能的正常运行以及待存储数据的安全性;并且,当数据总线将大容量数据传输完成后,再将待存储数据通过数据总线传输至外部存储器进行存储,节省了内部存储器的使用资源,进而可以保证控制器的内部存储空间以及运行速度。
请参照图3,图3为本申请另一实施例提供的一种数据传输方法的流程示意图,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述内部存储器包括第一存储区域。下面将结合图4对本申请实施例提供的数据传输方法进行详细阐述。该数据传输方法可以包括步骤S310至步骤S350。
在本申请实施例中,步骤S310至步骤S340可以参阅前述实施例中步骤S210至步骤S240的内容,在此不再赘述。
步骤S350:将所述待存储数据从所述第一存储区域中删除。
在本实施例中,第一存储区域为只读存储器(ROM),当数据总线当前处于传输占用状态、且当前传输的数据的数据信息满足预设数据条件时,将带存储数据写入内部存储器的只读存储器中。当数据总线处于传输空闲状态,并将待存储数据从内部存储器的只读存储器中传输至外部存储器之后,可以将待存储数据从只读存储器中删除,及时腾出内部存储器中的存储空间,节省了内部存储器中的使用资源,防止因内部存储器中的使用资源过小,导致控制器运行卡顿等问题的发生,保证了控制器的运行速度;并且,也避免了重读对已传输至外部存储器的数据进行重复操作的问题,减少控制器的运行载荷,提高控制器的运行速度。
上述实施例中,将该待存储数据从只读存储器删除,节省了只读存储器中的使用资源,保证了控制器的运行速度。
请参照图4,图4为本申请再一实施例提供的一种数据传输方法的流程示意图,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述内部存储器包括第一存储区域及第二存储区域。下面将结合图4对本申请实施例提供的数据传输方法进行详细阐述。该数据传输方法可以包括步骤S410至步骤S480。
在本申请实施例中,步骤S410至步骤S440及步骤S480可以参阅前述实施例中步骤S310至步骤S350的内容,在此不再赘述。
步骤S450:获取所述待存储数据的调用标识。
步骤S460:判断所述调用标识是否为高频调用标识,所述高频调用标识用于表征数据被调用的次数超过预设次数。
步骤S470:若所述调用标识为所述高频调用标识,则将所述待存储数据写入至所述第二存储区域中。
在本实施例中,第一存储区域为内部存储器中只读存储器(ROM),第二存储区域为内部存储器中随机存取存储器(RAM),调用标识可以包括高频调用标识以及低频调用标识,其中,高频调用标识表征数据被调用的次数超过预设次数,即数据在控制器运行应用功能时,被调用的可能性大;低频调用标识表征数据被调用的次数未超过预设次数,即数据在控制器运行应用功能时,被调用的可能性小。
基于此,在通过数据总线将待存储数据传输至所述外部存储器中进行存储之后,可以进一步获取待存储数据的调用标识,并判断其调用标识是否为高频调用标识,若判定调用标识为高频调用标识,则将ROM中的待存储数据写入至RAM中,以便后续在调用该待存储数据时,可以不用通过数据总线从外部存储器中读取调用,直接从RAM中进行调用即可。由于通过数据总线从外部存储器读取数据的速度远远小于从内部存储器直接读取数据的速度,因此,将高频调用标识的待存储数据写入至RAM中,减少了数据调用的时长,提高了数据调用效率,进而提高了控制器的响应速度以及数据处理效率。
进一步地,在将待存储数据写入至第二存储区域后,将所述待存储数据从所述第一存储区域中删除。如此,在将调用标识为高频调用标识的待存储数据从只读存储器中写入至随机存取存储器中后,可以将待存储数据从只读存储器中删除,及时腾出只读存储器中的存储空间,节省了只读存储器中的使用资源,防止因只读存储器中的使用资源过小,导致控制器运行卡顿等问题的发生,保证了控制器的运行速度;并且,也避免了重读对已传输至外部存储器的数据进行重复操作的问题,减少控制器的运行载荷,提高控制器的运行速度。
在一些实施方式中,当控制器检测到上电时,获取外部存储器中的所有存储数据,其中,存储数据携带有调用标识;获取所有存储数据中调用标识为高频调用标识的存储数据,作为待同步数据;将待同步数据写入至第二存储区域中。如此,可以在控制器上电初始化的过程汇总,将外部存储器中的高频调用的存储数据,作为待同步数据写入至内部存储器中随机存取存储器中,以便在后续数据读取时可以直接从内部存储器中随机存取存储器中读取,提高了数据读取的速度,进而提高了控制器的响应处理效率。
在本实施例中,将ROM中的高频调用标识的待存储数据同步至RAM,减少了数据调用的时长,提高了数据调用效率,进而提高了控制器的响应速度以及数据处理效率。
请参照图5,图5为本申请再一实施例提供的一种数据传输方法的流程示意图,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述内部存储器包括第一存储区域及第二存储区域。下面将结合图5对本申请实施例提供的数据传输方法进行详细阐述。该数据传输方法可以包括步骤S510-步骤S580。
在本申请实施例中,步骤S510至步骤S540及步骤S580可以参阅前述实施例中步骤S410至步骤S440及步骤S480的内容,在此不再赘述。
步骤S550:获取所述第二存储区域中的可用存储容量。
步骤S560:判断所述可用存储容量是否大于预设容量阈值。
步骤S570:若所述可用存储容量大于所述预设容量阈值,则将所述待存储数据写入至所述第二存储区域。
在本实施例中,在将待存储数据通过数据总线传输至外部存储器中进行存储后,判断是否可以把该待存储数据写入至内部存储器中随机存取存储器中,可以基于随机存取存储器的可用存储容量进行判断,在随机存取存储器有足够多的可用存储容量时,尽可能地将待存储数据写入至随机存取存储器中,以提高后续对该待存储数据的读取速度,进而提高控制器的运行处理速度。
具体地,获取随机存取存储器指定区域(专用RAM区域)的可用存储容量,并判断可用存储容量是否大于预设容量阈值,若可用存储容量大于预设容量阈值,代表此时专用RAM区域的可使用空间较大,因此,可以将待存储数据写入至随机存取存储器的专用RAM区域中进行存储;若可用存储容量不大于预设容量阈值,代表此时专用RAM区域的可使用空间较小,因此,可以不将待存储数据写入至随机存取存储器的专用RAM区域中进行存储。或者,在确定可用存储容量大于预设容量阈值后,进一步获取该待存储数据的调用标识是否为高频调用标识,若是,则将待存储数据写入至随机存取存储器的专用RAM区域中进行存储。其中,预设容量阈值为预先设置的,也可以根据不同的应用场景进行调整,本实施例对此不作限制。
如此,结合可用存储容量以及待存储数据的调用标识,决策是否将待存储数据写入至随机存取存储器中,实现了在存储容量较大时,尽可能将待存储数据写入至随机存取存储器中,提高后续的数据读取速度的同时,还可避免因随机存取存储器存储容量不够导致影响控制器的运行速度等问题。
在一些实施方式中,所述第二存储区域包括专用存储区域和应用存储区域,请参阅图6,步骤S570可以包括以下步骤:
步骤S571:检测所述专用存储区域的占用率及所述应用存储区域的占用率。
步骤S572:当所述专用存储区域的占用率超过第一预设比例,且所述应用存储区域的占用率小于第二预设比例时,对所述专用存储区域的存储容量进行扩容。
在本实施例中,第二存储区域为随机存取存储器,专用存储区域为专用RAM区域,应用存储区域为应用RAM区域。在将待存储数据写入至随机存取存储器时,可以先检测专用RAM区域的占用率及即应用RAM区域的占用率;当专用RAM区域的占用率超过第一预设比例(例如,95%),且应用RAM区域的占用率小于第二预设比例(例如,60%)时,表征此时专用RAM区域中所存储的数据量较多,且应用RAM区域中所存储的数据量较小,随机存取存储器中还可以有多余的空间,因此,可以对专用RAM区域进行扩容,以存储更多的数据,提高后续数据读取的速度,进而提高控制器的运行速度。
步骤S573:将所述待存储数据写入至扩容后的所述专用存储区域中。
基于此,在对专用RAM区域的存储容量进行扩容后,再将待存储数据写入至扩容后的专用RAM区域,以顺利实现对待存储数据的写入,同时也防止因专用RAM区域的可用存储空间过小,导致写入失败等情况的发生,进而保证了控制器中应用功能的顺利完成。
在本实施例中,通过对存取区域的存储空间进行动态调整,尽可能多地将待存储数据写入至随机存取存储器中,以提高后续对该待存储数据的读取速度,进而提高控制器的运行处理速度。
请参照图7,图7为本申请再一实施例提供的一种数据传输方法的流程示意图,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输。下面将结合图7对本申请实施例提供的数据传输方法进行详细阐述。该数据传输方法可以包括步骤S610至步骤S650。
步骤S610:当获取到待存储数据时,获取所述数据总线的当前传输状态。
步骤S620:若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据。
在本申请实施例中,步骤S610至步骤S620可以参阅前述实施例中的内容,在此不再赘述。
步骤S630:若所述数据信息满足预设数据条件,将状态标识添加至所述待存储数据上,所述状态标识用于表征所述待存储数据是否已成功同步传输至所述外部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量。
步骤S640:将已添加所述状态标识的待存储数据暂存于所述内部存储器。
在本实施例中,在将待存储数据暂存于内部存储器之前,可以将状态标识添加至待存储数据上,再将已添加状态标识的待存储数据暂存于内部存储器中。其中,状态标识包括完成状态标识和未完成状态标识,完成状态标识表征待存储数据已通过数据总线完成同步传输至外部存储器,未完成标识表征待存储数据还未通过数据总线完成同步传输至外部存储器中(如未开始传输待存储数据,或者正在传输待存储数据)。如此,即使在控制器被切断电源后再重新上电,也可以根据内部存储器中的存储的数据所携带的状态标识,继续完成后续的同步传输至外部存储器的过程。
在一些实施方式中,当检测到上电时,读取内部存储器中存储的所有数据,作为第一存储数据;获取状态标识为未完成标识的第一存储数据,作为第二存储数据;将第二存储数据传输至所述外部存储器中进行存储。进一步地,可以将状态标识为完成状态标识的第一存储数据删除,以及将已传输至外部存储器的第二存储数据从内部存储器中删除,节省了内部存储器中的使用资源,防止因内部存储器中占用率过高,导致控制器运行卡顿等问题的发生,保证了控制器的运行速度。
步骤S650:在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据。
在本申请实施例中,步骤S650可以参阅前述实施例中的内容,在此不再赘述。
在本实施例中,在将待存储数据暂存于内部存储器之前,将状态标识添加至待存储数据上,再将已添加状态标识的待存储数据暂存于内部存储器中。如此,即使在控制器被切断电源再重新上电,也可以根据内部存储器中的存储的数据所携带的状态标识,继续实现后续的待存储数据的同步传输至外部存储器的过程。
请参照图8,其中示出了本申请一实施例提供的一种数据传输装置700的结构框图。该装置700应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,可以包括:状态获取模块710、信息获取模块720、数据存储模块730和数据传输模块740。
状态获取模块710用于当获取到待存储数据时,获取所述数据总线的当前传输状态。
信息获取模块720用于若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据。
数据存储模块730用于若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量。
数据传输模块740用于在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据。
在一些实施方式中,所述内部存储器包括第一存储区域,数据传输装置700还可以包括:删除模块。其中,删除模块可以用于在所述通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储之后,将所述待存储数据从所述第一存储区域中删除。数据存储模块730可以具体用于若所述数据信息满足所述预设数据条件,将所述待存储数据写入至所述内部存储器中的所述第一存储区域。
在该方式下,所述内部存储器还包括第二存储区域,数据传输装置700还可以包括:标识获取模块、第一判断模块以及数据写入模块。其中,标识获取模块可以用于在所述将所述待存储数据从所述第一存储区域中删除之前,获取所述待存储数据的调用标识。第一判断模块可以用于判断所述调用标识是否为高频调用标识,所述高频调用标识用于表征数据被调用的次数超过预设次数。数据写入模块可以用于若所述调用标识为所述高频调用标识,则将所述待存储数据写入至所述第二存储区域中。
在该方式下,所述内部存储器还包括第二存储区域,数据传输装置700还可以包括:容量获取模块、第二判断模块以及数据写入模块。其中,容量获取模块可以用于在所述将所述待存储数据从所述第一存储区域中删除之前,获取所述第二存储区域中的可用存储容量。第二判断模块可以用于判断所述可用存储容量是否大于预设容量阈值。数据写入模块可以用于若所述可用存储容量大于所述预设容量阈值,则将所述待存储数据写入至所述第二存储区域。
在一些实施方式中,所述内部存储器包括第二存储区域,数据传输装置700还可以包括:数据获取模块、待同步数据获取模块以及数据写入模块。其中,数据获取模块可以用于在所述当获取到待存储数据时,获取所述数据总线的当前传输状态之前,当检测到上电时,获取所述外部存储器中的所有存储数据,所述存储数据携带有调用标识。待同步数据获取模块可以用于获取所述所有存储数据中所述调用标识为高频调用标识的存储数据,作为待同步数据,所述高频调用标识用于表征数据被调用的次数达到预设次数。数据写入模块可以用于将所述待同步数据写入至所述第二存储区域中。
在一些实施方式中,所述第二存储区域包括专用存储区域和应用存储区域,数据写入模块可以包括:占用率检测单元、扩容单元以及数据写入单元。其中,占用率检测单元可以用于检测所述专用存储区域的占用率及所述应用存储区域的占用率。扩容单元可以用于当所述专用存储区域的占用率超过第一预设比例,且所述应用存储区域的占用率小于第二预设比例时,对所述专用存储区域的存储容量进行扩容。数据写入单元可以用于将所述待存储数据写入至扩容后的所述专用存储区域中。
在一些实施方式中,数据存储模块730可以包括:标识添加单元以及数据存储单元。其中,标识添加单元可以用于将状态标识添加至所述待存储数据上,所述状态标识用于表征所述待存储数据是否已成功同步传输至所述外部存储器中。数据存储单元可以用于将已添加所述状态标识的待存储数据暂存于所述内部存储器。
在该方式下,所述状态标识包括未完成标识,数据传输装置700还可以包括:数据读取模块、第二存储数据获取模块以及第二存储数据传输模块。其中,数据读取模块可以用于当检测到上电时,读取所述内部存储器中存储的所有数据,作为第一存储数据。第二存储数据获取模块可以用于获取所述状态标识为未完成标识的第一存储数据,作为第二存储数据。第二存储数据传输模块可以用于将所述第二存储数据传输至所述外部存储器中进行存储。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
下面将结合图对本申请提供的一种电子设备进行说明。
参照图9,图9示出了本申请实施例提供的一种电子设备800的结构框图,本申请实施例提供的数据传输方法可以由该电子设备800执行。
本申请实施例中的电子设备800可以包括一个或多个如下部件:处理器801、存储器802以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器802中并被配置为由一个或多个处理器801执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器801可以包括一个或者多个处理核。处理器801利用各种接口和线路连接整个电子设备800内的各个部分,通过运行或执行存储在存储器802内的指令、程序、代码集或指令集,以及调用存储在存储器802内的数据,执行电子设备800的各种功能和处理数据。可选地,处理器801可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器801可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作***、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以集成到处理器801中,单独通过一块通信芯片进行实现。
存储器802可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器802可用于存储指令、程序、代码、代码集或指令集。存储器802可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作***的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备800在使用中所创建的数据(比如上述的待存储数据)等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,所显示或讨论的模块相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图10,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质900中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质900可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质900包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质900具有执行上述方法中的任何方法步骤的程序代码910的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码910可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种数据传输方法,其特征在于,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述方法包括:
当获取到待存储数据时,获取所述数据总线的当前传输状态;
若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据;
若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量;
在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据;
若所述数据信息不满足所述预设数据条件,在所述数据总线将所述当前传输的数据传输至所述外部存储器之后,将所述待存储数据通过所述数据总线写入至所述外部存储器中。
2.根据权利要求1所述的方法,其特征在于,所述内部存储器包括第一存储区域,所述若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,包括:
若所述数据信息满足所述预设数据条件,将所述待存储数据写入至所述内部存储器中的所述第一存储区域;
在所述通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储之后,所述方法还包括:
将所述待存储数据从所述第一存储区域中删除。
3.根据权利要求2所述的方法,其特征在于,所述内部存储器还包括第二存储区域,在所述将所述待存储数据从所述第一存储区域中删除之前,所述方法还包括:
获取所述待存储数据的调用标识;
判断所述调用标识是否为高频调用标识,所述高频调用标识用于表征数据被调用的次数超过预设次数;
若所述调用标识为所述高频调用标识,则将所述待存储数据写入至所述第二存储区域中。
4.根据权利要求2所述的方法,其特征在于,所述内部存储器还包括第二存储区域,在所述将所述待存储数据从所述第一存储区域中删除之前,所述方法还包括:
获取所述第二存储区域中的可用存储容量;
判断所述可用存储容量是否大于预设容量阈值;
若所述可用存储容量大于所述预设容量阈值,则将所述待存储数据写入至所述第二存储区域。
5.根据权利要求1所述的方法,其特征在于,所述内部存储器包括第二存储区域,在所述当获取到待存储数据时,获取所述数据总线的当前传输状态之前,所述方法还包括:
当检测到上电时,获取所述外部存储器中的所有存储数据,所述存储数据携带有调用标识;
获取所述所有存储数据中所述调用标识为高频调用标识的存储数据,作为待同步数据,所述高频调用标识用于表征数据被调用的次数达到预设次数;
将所述待同步数据写入至所述第二存储区域中。
6.根据权利要求3-5任一项所述的方法,其特征在于,所述第二存储区域包括专用存储区域和应用存储区域,所述将所述待存储数据写入至所述第二存储区域中,包括:
检测所述专用存储区域的占用率及所述应用存储区域的占用率;
当所述专用存储区域的占用率超过第一预设比例,且所述应用存储区域的占用率小于第二预设比例时,对所述专用存储区域的存储容量进行扩容;
将所述待存储数据写入至扩容后的所述专用存储区域中。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述将所述待存储数据写入至所述内部存储器中,包括:
将状态标识添加至所述待存储数据上,所述状态标识用于表征所述待存储数据是否已成功同步传输至所述外部存储器中;
将已添加所述状态标识的待存储数据暂存于所述内部存储器。
8.根据权利要求7所述的方法,其特征在于,所述状态标识包括未完成标识,所述方法还包括:
当检测到上电时,读取所述内部存储器中存储的所有数据,作为第一存储数据;
获取所述状态标识为未完成标识的第一存储数据,作为第二存储数据;
将所述第二存储数据传输至所述外部存储器中进行存储。
9.一种数据传输装置,其特征在于,应用于控制器,所述控制器与外部存储器连接,所述控制器包括内部存储器,所述控制器与所述外部存储器通过数据总线进行数据传输,所述装置包括:
状态获取模块,用于当获取到待存储数据时,获取所述数据总线的当前传输状态;
信息获取模块,用于若所述当前传输状态为传输占用状态,则获取所述数据总线当前传输的数据的数据信息,所述传输占用状态用于表征所述数据总线正在传输数据;
数据存储模块,用于若所述数据信息满足预设数据条件,将所述待存储数据写入至所述内部存储器中,所述预设数据条件用于表征所述当前传输的数据所占的存储容量大于预设容量;
数据传输模块,用于在检测到所述数据总线的当前传输状态为传输空闲状态时,通过所述数据总线将所述待存储数据传输至所述外部存储器中进行存储,所述传输空闲状态用于表征所述数据总线当前未传输数据;若所述数据信息不满足所述预设数据条件,在所述数据总线将所述当前传输的数据传输至所述外部存储器之后,将所述待存储数据通过所述数据总线写入至所述外部存储器中。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-8中任意一项所述的方法。
CN202111505935.1A 2021-12-10 2021-12-10 数据传输方法、装置及电子设备 Active CN114281724B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111505935.1A CN114281724B (zh) 2021-12-10 2021-12-10 数据传输方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111505935.1A CN114281724B (zh) 2021-12-10 2021-12-10 数据传输方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN114281724A CN114281724A (zh) 2022-04-05
CN114281724B true CN114281724B (zh) 2024-01-02

Family

ID=80871625

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111505935.1A Active CN114281724B (zh) 2021-12-10 2021-12-10 数据传输方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN114281724B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117234977B (zh) * 2023-11-10 2024-02-27 浪潮电子信息产业股份有限公司 数据处理方法、***、设备及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669897A (zh) * 2017-10-13 2019-04-23 华为技术有限公司 数据传输方法和装置
CN110377235A (zh) * 2019-07-26 2019-10-25 Oppo(重庆)智能科技有限公司 数据处理方法、装置、移动终端及计算机可读存储介质
CN110753001A (zh) * 2019-10-25 2020-02-04 珠海格力电器股份有限公司 数据的高效传输方法及装置、存储介质
CN111107123A (zh) * 2018-10-29 2020-05-05 杭州海康威视数字技术股份有限公司 一种断网续传方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9116856B2 (en) * 2012-11-08 2015-08-25 Qualcomm Incorporated Intelligent dual data rate (DDR) memory controller

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669897A (zh) * 2017-10-13 2019-04-23 华为技术有限公司 数据传输方法和装置
CN111107123A (zh) * 2018-10-29 2020-05-05 杭州海康威视数字技术股份有限公司 一种断网续传方法及装置
CN110377235A (zh) * 2019-07-26 2019-10-25 Oppo(重庆)智能科技有限公司 数据处理方法、装置、移动终端及计算机可读存储介质
CN110753001A (zh) * 2019-10-25 2020-02-04 珠海格力电器股份有限公司 数据的高效传输方法及装置、存储介质

Also Published As

Publication number Publication date
CN114281724A (zh) 2022-04-05

Similar Documents

Publication Publication Date Title
US10275586B2 (en) Method for power management using fingerprint identification in mobile terminal and mobile terminal
CN110784858B (zh) 蓝牙设备控制方法、装置、电子设备及存储介质
WO2018103401A1 (zh) 无线保真Wi-Fi扫描方法及相关产品
WO2021057619A1 (zh) 内存回收方法、装置、电子设备及存储介质
CN107426113B (zh) 报文接收方法及网络设备
WO2021082969A1 (zh) 核间数据处理方法、***、片上***以及电子设备
WO2021057623A1 (zh) 内存回收方法、装置、电子设备及存储介质
CN114281724B (zh) 数据传输方法、装置及电子设备
US20190369919A1 (en) Task management method and host for electronic storage device
CN111970749A (zh) 网络连接方法、装置、智能家居设备及智能家居***
CN113810890A (zh) 设备回连方法、装置、电子设备以及存储介质
CN115421907A (zh) 内存回收方法、装置、电子设备及存储介质
CN110602772A (zh) WiFi模块控制方法、控制装置、电子装置及存储介质
CN104598192A (zh) 信息处理方法及电子设备
CN106603526B (zh) WiFi/热点的开启方法及装置
US20230325262A1 (en) Message notification method and apparatus
CN109511139B (zh) Wifi控制方法、装置、移动设备、计算机可读存储介质
CN115002941B (zh) 蓝牙电能表的通讯方法
WO2023011186A1 (zh) 设备控制方法、装置、电子设备及存储介质
CN111078587A (zh) 内存分配方法、装置、存储介质及电子设备
CN110990313B (zh) 一种i3c总线处理时钟拉伸的方法、设备以及存储介质
CN116610648A (zh) 日志保存方法、装置、电子设备及存储介质
CN114024878A (zh) 数据传输方法、装置、介质和设备
US10832132B2 (en) Data transmission method and calculation apparatus for neural network, electronic apparatus, computer-readable storage medium and computer program product
WO2021072760A1 (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
GR01 Patent grant
GR01 Patent grant