CN103034538B - 一种嵌入式操作系统中驱动程序的多级缓存处理方法 - Google Patents

一种嵌入式操作系统中驱动程序的多级缓存处理方法 Download PDF

Info

Publication number
CN103034538B
CN103034538B CN201210565276.5A CN201210565276A CN103034538B CN 103034538 B CN103034538 B CN 103034538B CN 201210565276 A CN201210565276 A CN 201210565276A CN 103034538 B CN103034538 B CN 103034538B
Authority
CN
China
Prior art keywords
level
cache
cpu
data
buffer memory
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
CN201210565276.5A
Other languages
English (en)
Other versions
CN103034538A (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.)
ZHUHAI TOP INTELLIGENCE ELECTRIC CO Ltd
Original Assignee
ZHUHAI TOP INTELLIGENCE ELECTRIC 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 ZHUHAI TOP INTELLIGENCE ELECTRIC CO Ltd filed Critical ZHUHAI TOP INTELLIGENCE ELECTRIC CO Ltd
Priority to CN201210565276.5A priority Critical patent/CN103034538B/zh
Publication of CN103034538A publication Critical patent/CN103034538A/zh
Application granted granted Critical
Publication of CN103034538B publication Critical patent/CN103034538B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Image Input (AREA)

Abstract

一种嵌入式操作系统中驱动程序的多级缓存处理方法,利用CPU的外设寄存器作为第一级硬件缓存;利用CPU的DMA存储空间来做第二级硬件缓存;当第一级硬件缓存被写满之后,产生DMA中断以将第一级硬件缓存中的数据读入第二级硬件缓存中;利用部分RAM空间作为第一级软件缓存,当第二级硬件缓存被写满之后产生一个CPU中断将第二级硬件缓存中的数据读入第一级软件缓存中等待处理;利用部分RAM空间作为第二级软件缓存,启动相应的数据处理任务进程将第一级软件缓存中的无效数据剥除并将有效数据存入第二级软件缓存中;本发明的嵌入式操作系统中驱动程序的多级缓存处理方法可有效提高嵌入式系统运行效率。

Description

一种嵌入式操作系统中驱动程序的多级缓存处理方法
技术领域
本发明涉及嵌入式操作系统,尤指一种嵌入式操作系统中驱动程序的多级缓存处理方法。
背景技术
在现有实时数据采集设备中,限于有限的CPU等硬件资源条件,嵌入式操作系统如果在驱动程序中没有经过多级缓存处理的情况下,嵌入式操作系统的多并发任务处理及实时完整的数据采集可能会导致CPU频繁的进入高优先级的数据中断采集程序,导致优先级较低的采集程序中断产生数据贻漏,且会造成已采集数据在还没有来得及处理时就被新的数据所覆盖等弊端,大大影响了运行效率。
发明内容
本发明的目的在于提供一种嵌入式操作系统中驱动程序的多级缓存处理方法,该处理方法可利用有限的硬件资源来设置多级缓存,提高运行效率。
为此,本发明提供了一种嵌入式操作系统中驱动程序的多级缓存处理方法,利用CPU的外设寄存器作为第一级硬件缓存;利用CPU的DMA存储空间来做第二级硬件缓存;当第一级硬件缓存被写满之后,产生DMA中断以将第一级硬件缓存中的数据读入第二级硬件缓存中;利用部分RAM空间作为第一级软件缓存,当第二级硬件缓存被写满之后产生一个CPU中断将第二级硬件缓存中的数据读入第一级软件缓存中等待处理;利用部分RAM空间作为第二级软件缓存,启动相应的数据处理任务进程将第一级软件缓存中的无效数据剥除并将有效数据存入第二级软件缓存中。
所述第一级硬件缓存为A/D采样CPU的外设16个字的缓存空间。
所述第二级硬件缓存的DMA存储空间为K级。
所述数据处理任务进程是在CPU不忙时启动的。
所述第二级软件缓存可以避免CPU不能及时处理第一级软件缓存中的数据而导致第一级软件缓存中的有效数据被覆盖的问题。
相对于现有技术,本发明嵌入式操作系统中驱动程序的多级缓存处理方法能在有限的CPU及硬件资源的条件下,减少CPU响应中断的次数,防止在响应等级非最高优先级的CPU中断,在采集数据时出现数据采集不完整的现象发生;以及因为任务优先级不够高,采集的数据还没有来得及处理就会被新采集数据覆盖的情况,可提高嵌入式系统的运行效率和稳定性,节约硬件资源的投入。
附图说明
图1为本发明嵌入式操作系统中驱动程序的多级缓存处理方法的示意图。
具体实施方式
请参阅图1所示,本发明嵌入式操作系统中驱动程序的多级缓存处理方法能够通过软件设置充分利用现有硬件外设资源的存储单元来提高嵌入式系统的运行效率。本发明的嵌入式操作系统中驱动程序的多级缓存处理办法如下:首先,利用CPU的外设寄存器作为第一级硬件缓存,比如:A/D采样CPU会有16个字的缓存空间;其次,利用CPU的DMA存储空间来做第二级硬件缓存,它的存储空间一般为K级;当第一级硬件缓存被写满之后,产生DMA中断以将第一级硬件缓存中的数据读入第二级硬件缓存中;随后,利用部分RAM空间作为第一级软件缓存,因为DMA的存储空间较小,且需要分给多种外设来使用有限的空间,所以用部分RAM空间作为第一级软件缓存可以增加缓存数据的数量,当第二级硬件缓存被写满之后产生一个CPU中断将第二级硬件缓存中的数据读入第一级软件缓存中等待处理,同时我们还需要建立相应的数据处理任务进程来处理第一级软件缓存中的数据,以保证第一级软件缓存有足够多的有效空间;所以,最后利用部分RAM空间作为第二级软件缓存,在CPU不忙时,启动相应的数据处理任务进程将第一级软件缓存中的无效数据剥除并将有效数据存入第二级软件缓存中,以保证第一级软件缓存中的有效数据不被覆盖。所述第二级软件缓存的主要作用是避免CPU不能及时处理第一级软件缓存中的数据而导致第一级软件缓存中的有效数据被覆盖的问题。
相较于现有技术,本发明嵌入式操作系统中驱动程序的多级缓存处理方法能在有限的CPU及硬件资源的条件下,减少CPU响应中断的次数,防止在响应等级非最高优先级的CPU中断,在采集数据时出现数据采集不完整的现象发生;以及因为任务优先级不够高,采集的数据还没有来得及处理就会被新采集数据覆盖的情况,可提高嵌入式系统的运行效率和稳定性,节约硬件资源的投入。

Claims (4)

1.一种嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于:利用CPU的外设寄存器作为第一级硬件缓存;利用CPU的DMA存储空间来做第二级硬件缓存;当第一级硬件缓存被写满之后,产生DMA中断以将第一级硬件缓存中的数据读入第二级硬件缓存中;利用部分RAM空间作为第一级软件缓存,当第二级硬件缓存被写满之后产生一个CPU中断将第二级硬件缓存中的数据读入第一级软件缓存中等待处理;利用部分RAM空间作为第二级软件缓存,启动相应的数据处理任务进程将第一级软件缓存中的无效数据剥除并将有效数据存入第二级软件缓存中。
2.如权利要求1所述的嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于:所述第一级硬件缓存为A/D采样CPU的外设16个字的缓存空间。
3.如权利要求1所述的嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于;所述数据处理任务进程是在CPU不忙时启动的。
4.如权利要求1所述的嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于;所述第二级软件缓存可以避免CPU不能及时处理第一级软件缓存中的数据而导致第一级软件缓存中的有效数据被覆盖的问题。
CN201210565276.5A 2012-12-24 2012-12-24 一种嵌入式操作系统中驱动程序的多级缓存处理方法 Active CN103034538B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210565276.5A CN103034538B (zh) 2012-12-24 2012-12-24 一种嵌入式操作系统中驱动程序的多级缓存处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210565276.5A CN103034538B (zh) 2012-12-24 2012-12-24 一种嵌入式操作系统中驱动程序的多级缓存处理方法

Publications (2)

Publication Number Publication Date
CN103034538A CN103034538A (zh) 2013-04-10
CN103034538B true CN103034538B (zh) 2015-06-17

Family

ID=48021461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210565276.5A Active CN103034538B (zh) 2012-12-24 2012-12-24 一种嵌入式操作系统中驱动程序的多级缓存处理方法

Country Status (1)

Country Link
CN (1) CN103034538B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763188B (zh) * 2014-01-22 2016-08-31 四川九洲空管科技有限责任公司 一种多类型报文实时处理方法及装置
CN104484228B (zh) * 2014-12-30 2017-12-29 成都因纳伟盛科技股份有限公司 基于Intelli‑DSC的分布式并行任务处理系统
CN105677592A (zh) * 2015-12-31 2016-06-15 北京经纬恒润科技有限公司 一种总线通信方法及系统
US20180018999A1 (en) * 2016-07-12 2018-01-18 Mediatek Inc. Video processing system using ring buffer and racing-mode ring buffer access control scheme
CN106095696B (zh) * 2016-07-26 2018-11-09 上海航天测控通信研究所 一种基于自适应路由及调度策略的高速缓存装置
CN108090529B (zh) * 2016-11-22 2021-08-06 上海宝信软件股份有限公司 基于射频识别技术的现场终端作业过程数据的存储方法
CN107255962B (zh) * 2017-06-15 2019-11-26 青岛大学 一种内嵌微处理器核和完整硬件操作系统的微控制器架构
CN108551490B (zh) * 2018-05-14 2021-06-18 西京学院 一种工业流数据编码解码系统及方法
CN109783209B (zh) * 2018-11-28 2023-08-22 四川商通实业有限公司 一种多级缓存提高服务器处理效率的方法及系统
CN113282040B (zh) * 2021-05-26 2022-08-05 苏州智加科技有限公司 减少整车网关转发丢帧的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020194431A1 (en) * 2001-06-16 2002-12-19 Samsung Electronics Co., Ltd. Multi-level cache system
CN101034375A (zh) * 2007-02-12 2007-09-12 忆正存储技术(深圳)有限公司 计算机存储系统
US20110231593A1 (en) * 2010-03-19 2011-09-22 Kabushiki Kaisha Toshiba Virtual address cache memory, processor and multiprocessor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020194431A1 (en) * 2001-06-16 2002-12-19 Samsung Electronics Co., Ltd. Multi-level cache system
CN101034375A (zh) * 2007-02-12 2007-09-12 忆正存储技术(深圳)有限公司 计算机存储系统
US20110231593A1 (en) * 2010-03-19 2011-09-22 Kabushiki Kaisha Toshiba Virtual address cache memory, processor and multiprocessor

Also Published As

Publication number Publication date
CN103034538A (zh) 2013-04-10

Similar Documents

Publication Publication Date Title
CN103034538B (zh) 一种嵌入式操作系统中驱动程序的多级缓存处理方法
CN103399856A (zh) 面向scada系统的爆发式数据缓存处理系统及其方法
CN102652313A (zh) 闪速存储器控制器
EP4042305A1 (en) Resource management unit for capturing operating system configuration states and managing malware
CN113704301A (zh) 异构计算平台的数据处理方法、装置、系统、设备及介质
CN102521175A (zh) 一种sdram控制器及其工作方法
CN104679681A (zh) Ahb总线访问片上sram的高速桥装置及其工作方法
CN106598508A (zh) 一种固态硬盘及其写入仲裁方法、系统
TW201324337A (zh) 內嵌式系統及其執行緒與緩衝區管理方法
CN104239231B (zh) 一种加速二级缓存预热的方法及装置
CN203455832U (zh) 一种电子设备
CN105094840A (zh) 一种基于缓存一致性原理的原子操作实现方法及装置
EP3884386A1 (en) Programming and controlling compute units in an integrated circuit
US20210191775A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Offloading Tasks
CN105487989A (zh) 一种降低响应延时提高系统效率的中断控制器及控制方法
EP3140744A1 (en) Controlled cache injection of incoming data
US10782918B2 (en) Near-memory data-dependent gather and packing
CN109814940A (zh) 配置硬件加速器的方法、装置及处理器
CN107807888B (zh) 一种用于soc架构的数据预取系统及其方法
CN102063291B (zh) 一种前瞻线程的多级并行执行方法
CN104103119A (zh) 一种高速纸币冠字号码识别系统及其实现方法
CN102103490A (zh) 一种利用流水处理提高内存效率的方法
CN110851578A (zh) 关键词提取方法、装置和电子设备
CN110362396A (zh) 基于powerpc架构并支持中断嵌套的外部中断管理方法及系统
JP6074086B1 (ja) グループ分けによる快速な起動、シャットダウン方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant