嵌入式复习重点解读文档格式.docx
- 文档编号:13520657
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:12
- 大小:64.67KB
嵌入式复习重点解读文档格式.docx
《嵌入式复习重点解读文档格式.docx》由会员分享,可在线阅读,更多相关《嵌入式复习重点解读文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
8.任务切换;
9.内核;
10.调度;
11.非占先式内核;
12.占先式内核;
13.任务优先级;
14.中断;
15.时钟节拍。
(教材P9~10)
(以下为PPT上的,教材中的可以自己查看,然后总结得精辟一些)
1.简答前后台系统:
对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。
循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级。
这种系统在处理的及时性上比实际可以做到的要差。
中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级。
时间相关性很强的关键操作一定是靠中断服务程序来保证的。
2.简答操作系统:
操作系统是计算机中最基本的程序。
操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;
操作系统提供用户接口,使用户获得良好的工作环境;
操作系统为用户扩展新的系统功能提供软件平台。
3.简答实时操作系统:
实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。
在RTOS支持的系统中,每个任务均有一个优先级,RTOS根据各个任务的优先级,动态地切换各个任务,保证对实时性的要求。
4.简答代码临界区:
代码的临界区也称为临界区,指处理时不可分割的代码,运行这些代码不允许被打断。
一旦这部分代码开始执行,则不允许任何中断打入(这不是绝对的,如果中断不调用任何包含临界区的代码,也不访问任何临界区使用的共享资源,这个中断可能可以执行)。
为确保临界区代码的执行,在进入临界区之前要关中断,而临界区代码执行完成以后要立即开中断。
5.简答资源:
程序运行时可使用的软、硬件环境统称为资源。
资源可以是输入输出设备,例如打印机、键盘、显示器。
资源也可以是一个变量、一个结构或一个数组等。
6.简答共享资源:
可以被一个以上任务使用的资源叫做共享资源。
为了防止数据被破坏,每个任务在与共享资源打交道时,必须独占该资源,这叫做互斥。
7.简答任务:
一个任务,也称作一个线程,是一个简单的程序,该程序可以认为CPU完全属于该程序自己。
实时应用程序的设计过程,包括如何把问题分割成多个任务,每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。
8.简答任务切换:
当多任务内核决定运行另外的任务时,它保存正在运行任务的当前状态,即CPU寄存器中的全部内容。
这些内容保存在任务的当前状态保存区,也就是任务自已的栈区之中。
入栈工作完成以后,就把下一个将要运行的任务的当前状态从任务的栈中重新装入CPU的寄予存器,并开始下一个任务的运行。
这个过程就称为任务切换。
这个过程增加了应用程序的额外负荷。
CPU的内部寄存器越多,额外负荷就越重。
做任务切换所需要的时间取决于CPU有多少寄存器要入栈。
9.简答内核:
多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通信。
内核提供的基本服务是任务切换。
使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务,由实时内核来管理它们。
内核需要消耗一定的系统资源,比如2%~5%的CPU运行时间、RAM和ROM等。
内核提供必不可少的系统服务,如信号量、消息队列、延时等。
10.简答调度:
调度是内核的主要职责之一。
调度就是决定该轮到哪个任务运行了。
多数实时内核是基于优先级调度法的。
每个任务根据其重要程序的不同被赋予一定的优先级。
基于优先级的调度法指CPU总是让处在就绪态的优先级最高的任务先运行。
然而究竟何时让高优先级任务掌握CPU的使用权,有两种不同的情况,这要看用的是什么类型的内核,是非占先式的还是占先式的内核。
13.简答任务优先级:
任务的优先级是表示任务被调度的优先程度。
每个任务都具有优先级。
任务越重要,赋予的优先级应越高,越容易被调度而进入运行态。
14.简答中断:
中断是一种硬件机制,用于通知CPU有个异步事件发生了。
中断一旦被识别,CPU保存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子程序(ISR)。
中断服务子程序做事件处理,处理完成后,程序回到:
1.在前后台系统中,程序回到后台程序;
2.对非占先式内核而言,程序回到被中断了的任务;
3.对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。
15简答时钟节拍:
时钟节拍是特定的周期性中断。
这个中断可以看作是系统心脏的脉动。
中断之间的时间间隔取决于不同应用,一般在10ms到200ms之间。
时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。
时钟节拍率越快,系统的额外开销就越大。
2简答.非占先式内核与占先式内核的基本概念。
非占先式内核要求每个任务自我放弃CPU的所有权。
非占先式调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。
异步事件还是由中断服务来处理。
中断服务可以使一个高优先级的任务由挂起状态变为就绪状态。
但中断服务以后控制权还是回到原来被中断了的那个任务,直到该任务主动放弃CPU的使用权时,那个高优先级的任务才能获得CPU的使用权。
当系统响应时间很重要时,要使用占先式内核。
因此绝大多数商业上销售的实时内核都是占先式内核。
最高优先级的任务一旦就绪,总能得到CPU的控制权。
当一个运行着的任务使一个比它优先级高的任务进入了就绪状态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。
如果是中断服务子程序使一个高优先级的任务进入就绪态,中断完成时,中断了的任务被挂起,优先级高的那个任务开始运行。
3.ARM的状态与模式。
ARM7TDMI处理器内核使用V4T版本的ARM结构,该结构包含32位ARM指令集和16位Thumb指令集。
因此ARM7TDMI处理器有两种操作状态:
▪ARM状态:
32位,这种状态下执行的是字方式的ARM指令;
▪Thumb状态:
16位,这种状态下执行半字方式的Thumb指令。
填空ARM体系结构支持7种处理器模式,分别为:
用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式,如下表所示。
这样的好处是可以更好的支持操作系统并提高工作效率。
ARM7TDMI完全支持这七种模式。
此外需了解:
1)除用户模式外,其它模式均为特权模式。
ARM内部寄存器和一些片内外设在硬件设计上只允许(或者可选为只允许)特权模式下访问。
此外,特权模式可以自由的切换处理器模式,而用户模式不能直接切换到别的模式。
2)特权模式又分为系统模式和异常模式(包括快中断模式、中断模式、管理模式、中止模式、未定义模式)五部分,异常模式除了可以通过程序切换进入外,也可以由特定的异常进入。
当特定的异常出现时,处理器进入相应的模式。
每种异常模式都有一些独立的寄存器,以避免异常退出时用户模式的状态不可靠。
3)系统模式和用户模式都不能由异常进入,而且它们使用完全相同的寄存器组。
系统模式是特权模式,不受用户模式的限制。
操作系统在该模式下访问用户模式的寄存器就比较方便,而且操作系统的一些特权任务可以使用这个模式访问一些受控的资源。
4.简答冯诺依曼和哈佛结构。
计算机结构说明:
“冯·
诺依曼”结构:
把代码作为一种特殊的数据来操作,指令总线和数据总线及其存储区域是统一的;
“哈佛”结构:
指令总线和数据总线及其存储区是分开、独立的。
简答5.LPC2000系列处理器的存储器映射方式。
为了让运行在不同存储器空间中的程序对异常进行控制。
可以通过存储器映射控制,将位于不同存储空间的异常向量表重新映射至固定地址0x00~0x3F处,以实现异常向量表的来源控制。
当发生异常时,程序总是跳转到0x00~0x3F。
该区域存放着异常向量表。
而异常向量表可以来自内部Flash,内部SRAM,BootBlock,片外存储器。
其中MAP[1:
0]用于存储器映射控制,实现部分地址的重新映射:
MAP[1:
0]取00,表示Boot装载程序模式。
异常向量表从BootBlock重新映射。
转换后存储器地址总线值0x7FFFE000~0x7FFFE03F。
0]取01,片内Flash模式。
异常向量表不重新映射,它位于Flash中。
转换后存储器地址总线值0x00000000~0x0000003F。
0]取10,片内RAM模式。
异常向量表从静态RAM重新映射。
转换后
存储器地址总线值0x40000000~0x4000003F。
0]取11,外部存储器模式。
异常向量表从外部存储器重新映射。
该模式仅适用于LPC2200系列。
转换后存储器地址总线值0x80000000~0x8000003F。
6.MOV指令和LDR指令,STR指令,MUL指令,CMP指令等,LDR中的地址偏移量方式。
简答和编程
1.、MOV指令将8位图立即数或寄存器传送到目标寄存器rd,可用于移位运算等操作指令;
指令格式如下:
MOV{cond}{S}Rd,operand2
2.CMP--比较指令:
CMP指令将寄存器Rn的值减去operand2的值,根据操作的结果更新CPSR中的相应条件标志位,以便后面的指令根据相应的条件标志来判断是否执行。
CMP{cond}Rn,operand2
3.32位乘法指令——MUL指令将Rm和Rs中的值相乘,结果的低32位保存到Rd中。
MUL{cond}{S}Rd,Rm,Rs
4.LDR/STR——字和无符号字加载指令,指令用于对内存变量的访问、内存缓冲去数据的访问、查表、外围部件的控制操作等。
如用LDR指令加载到数据到PC寄存器,则实现程序跳转功能,这样就实现了程序散转。
地址偏移量有以下3种格式:
1)立即数。
立即数可以是一个无符号的数值。
这个数据可以加到基址寄存器,也可以从基址寄存器中减去这个数值。
如:
LDRR1,[R0,#0x12]
2)寄存器。
寄存器中的数值可以加到基址寄存器,也可以从基址寄存器中减去这个数值。
LDRR1,[R0,R2]
3)寄存器及移位常数。
寄存器移位后的值可以加到基址寄存器,也可以从基址寄存器中减去这个数值。
LDRR1,[R0,R2,LSL#2]
计算7.PLL的作用。
寄存器名称与功能,频率计算方法与寄存器设置。
作用:
由晶体振荡器输出的时钟信号,通过PLL升频,可以获得更高的系统时钟(CCLK)。
PLL接受的输入时钟频率范围为10~25MHz,通过一个电流控制振荡器(CCO)倍增到10~60MHz。
寄存器:
1.PLL配置寄存器(PLLCFG):
①、MSEL[4:
0]:
PLL倍频器值,在PLL频率计算中其值为(M-1);
②、PSEL[1:
PLL分频器值,在PLL频率计算中其值为P。
2.PLL状态寄存器(PLLSETA):
1)、MSEL[4:
0]、PSEL[1:
0]、PLLE、PLLC:
读出反映这几个参数的设置值,写入无效
2)、PLOCK:
反映PLL的锁定状态。
为0时,PLL未锁定;
为1时,PLL锁定到指定频率。
频率计算:
回路锁定后:
FOSC=FCCO/(2P×
M)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 复习 重点 解读