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

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

Info

Publication number
CN103034538A
CN103034538A CN2012105652765A CN201210565276A CN103034538A CN 103034538 A CN103034538 A CN 103034538A CN 2012105652765 A CN2012105652765 A CN 2012105652765A CN 201210565276 A CN201210565276 A CN 201210565276A CN 103034538 A CN103034538 A CN 103034538A
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.)
Granted
Application number
CN2012105652765A
Other languages
English (en)
Other versions
CN103034538B (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

Images

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 (5)

1.一种嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于:利用CPU的外设寄存器作为第一级硬件缓存;利用CPU的DMA存储空间来做第二级硬件缓存;当第一级硬件缓存被写满之后,产生DMA中断以将第一级硬件缓存中的数据读入第二级硬件缓存中;利用部分RAM空间作为第一级软件缓存,当第二级硬件缓存被写满之后产生一个CPU中断将第二级硬件缓存中的数据读入第一级软件缓存中等待处理;利用部分RAM空间作为第二级软件缓存,启动相应的数据处理任务进程将第一级软件缓存中的无效数据剥除并将有效数据存入第二级软件缓存中。
2.如权利要求1所述的嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于:所述第一级硬件缓存为A/D采样CPU的外设16个字的缓存空间。
3.如权利要求1所述的嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于:所述第二级硬件缓存的DMA存储空间为K级。
4.如权利要求1所述的嵌入式操作系统中驱动程序的多级缓存处理方法,其特征在于:所述数据处理任务进程是在CPU不忙时启动的。
5.如权利要求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 true CN103034538A (zh) 2013-04-10
CN103034538B 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)

Cited By (10)

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

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

Cited By (18)

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

Also Published As

Publication number Publication date
CN103034538B (zh) 2015-06-17

Similar Documents

Publication Publication Date Title
CN103034538B (zh) 一种嵌入式操作系统中驱动程序的多级缓存处理方法
EP2988221B1 (en) Controller, flash memory device and method for writing data into flash memory device
CN205608814U (zh) 一种基于Zynq软硬件协同处理的增强现实系统
US20210192046A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Managing Malware
CN102323899B (zh) Numa体系结构下面向容错的操作系统内存管理方法
CN102521175B (zh) 一种sdram控制器及其工作方法
US20240012683A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Offloading Tasks
CN106598508A (zh) 一种固态硬盘及其写入仲裁方法、系统
US10782918B2 (en) Near-memory data-dependent gather and packing
US20150324293A1 (en) Controlled cache injection of incoming data
CN105302485B (zh) 一种安全擦除方法及装置
WO2022188778A1 (zh) 内存回收中页颠簸的处理方法、装置及电子设备
CN103019865A (zh) 虚拟机监控方法和系统
CN102542525A (zh) 一种信息处理设备以及信息处理方法
CN109408405A (zh) 内存页交换方法、装置、终端及存储介质
US20210191776A1 (en) Resource Management Unit for Capturing Operating System Configuration States and Memory Management
CN104103119A (zh) 一种高速纸币冠字号码识别系统及其实现方法
CN102103490A (zh) 一种利用流水处理提高内存效率的方法
KR101841547B1 (ko) 모바일 gpu를 위한 스케일 공간 생성 최적화 방법
CN103186474A (zh) 对处理器的高速缓存进行清除的方法以及该处理器
CN1821944A (zh) 存储器写入方法与控制装置
CN1945542A (zh) 一种嵌入式软件开发的方法及系统
CN110059028A (zh) 数据储存芯片及数据存取方法
CN110688325B (zh) 一种固态硬盘的垃圾回收方法、装置、设备及存储介质
CN102426347B (zh) 避免因电能表动态自检而发生错误的方法

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