一种基于Cortex-M3的任务核心机制的设计与实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:gaolch008
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:嵌入式实时操作系统是整个嵌入式实时系统的核心,采用嵌入式实时操作系统( RTOS)可以更合理、更有效地利用CPU资源,简化应用软件设计,缩短系统开发时间。该文基于Cortex-M3芯片内核,设计并实现了一种针对RTOS的任务核心机制,包括任务切换、任务时间片切换、任务延时接口实现、临界区保护、多优先级任务等功能,从而高效率实现了基于RTOS任务管理,提高了系统的实时性和可靠性。
  关键词:Cortex-M3:RTOS;任务机制;切换;多优先级
  中图分类号:TP316 文献标识码:A
  文章编号:1009-3044(2020)33-0074-02
  开放科学(资源服务)标识码(OSID):
  1 背景
  在后PC时代,嵌入式的发展逐渐取代PC成为时代主流,嵌入式实系统的应用日益广泛[1]。嵌入式实时操作系统( RTOS)是以应用为中心,以计算机技术[2]为基础,软硬可裁剪[3],适应应用系统对功能、可靠性[4]、成本、體积、功耗等严格要求,当外界事件或数据产生时,能够接受并以足够快的速度予以处理[5]。其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应[6],调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。
  RTOS系统如果要有更好的事件实时处理机制,需要对任务机制进行设计,让其对任务进行较好的管理,设计任务的切换,任务时间片设计、任务延时接口处理、临界区及调度锁的保护、多优先级任务等。
  2 Cortex-M3芯片内核
  Cortex-M3是ARM公司开发的CPU内核。Cortex-M3是一个32位处理器内核,内部的数据路径是32位,寄存器是32位,存储器接口是32位。Cortex-M3采用哈佛架构,拥有独立的指令总线和数据总线,取指与数据访问可以同时进行。
  Cortex-M3支持小端模式、大端模式。Cortex-M3内核通过接口总线的形式挂载了储存器、外设、中断等组成一个MCU,如图1所示:
  Cortex-M3预先定义了“粗线条的”存储器映射。通过把片上外设的寄存器映射到外设区,就可以简单地以访问内存的方式来访问这些外设的寄存器,从而控制外设的工作。各个分区存储器映射如图2所示:
  3 任务核心机制的设计与实现
  3.1任务切换
  任务切换又叫上下文切换,当操作系统需要运行其他任务时,操作系统首先会保存和当前任务相关的寄存器的内容到当前任务的栈中,然后从将要加载的任务的栈中取出之前保存的全部寄存器的内容并加载到相关的寄存器中,从而继续运行被加载的任务[7]。
  构建一个最小的两个任务切换运行的小系统,目的是理解RTOS任务切换的核心原理[8]。有两个任务,分别执行taskIEn-try和task2Entry。功能是分别对相应的变量进行周期性置0置1,每次完成从1-
其他文献
中国古典戏剧和印度古典梵剧在世界古老戏剧史上占有重要的地位。他们共同具有一个古老而悠久的传统,具有浓郁的"大团圆"情结。本文试图从《西厢记》和《沙恭达罗》来分析中
以文献研究为基础,从脏腑相关理论出发探讨"肾病发黄"的病证特点、治疗原则、处方用药规律,并提炼出肾病发黄病机、治法特点。
故障现象一辆客户刚提车仅半个月的上海大众新波罗(POLO)轿车,出现后备箱门锁无法闭锁的故障。故障诊断接车后关闭所有车门,按遥控器闭锁键,车门落锁,4个角灯闪烁一次,四车门
新一轮医疗体制改革对医院的服务理念、服务水平、医疗质量都提出了更高的要求。医院文化建设是现代医院实行科学化、规范化、人性化管理的高度统一。加强医院文化建设,对推动
科学素养是指人具有的科学文化知识和利用科学文化知识解决问题的能力,科学素养的高低关系着国家和民族的发展前途。我校初等教育专业为小学输送科学教师,其自身的科学素养直接
采用干燥法和玻璃化法2种方法,对新疆莎车县扁桃品种晚丰18号花粉进行了超低温保存研究。结果表明:晚丰18号花粉最佳干燥方式为4℃硅胶干燥,适宜干燥时间为6~8 h,干燥6h和8 h
选取2015年1月至2017年12月我院胸外科胸腺瘤患者60例,随机分为人工气胸组( n = 30,人工气胸下胸腔镜手术)、对照组( n = 30,常规胸腔镜手术)。比较2组的手术时间、术中出血