这一周的学习任务为《专业嵌入式软件开发》中的第一章。
大家在阅读的时候请思考下面的问题:
- 1) 微处理器和微控制器有什么不同?
答:在编程的角度来看,微处理和微控制器没有什么不同,两者之间的区别是在内存与外设的分布上:
如果存在片内内存与片内外设,就是微控制器,反之则是微处理器,我们常用的PC的CPU就是微处理器; 嵌入式设备都使用微控制器,一为了节约成本,二为了功耗更低,三为了硬件设计简化.
- 2) 寄存器的作用是什么?
答:寄存器是CPU的组成部分,处理单元是通过寄存器来运行程序和加工数据的. 寄存器可分为两个大类: 一为通用寄存器,二为浮点寄存器;
细分分别是: 1 累加寄存器 2 标志寄存器 3 程序计数寄存器 4 基址寄存器 5 变址寄存器 6 通用寄存器 7 指令寄存器 8 栈寄存器
-
- 累加寄存器 : 它主要用来存储我们进行计算之后的数据,它根我们的运算器之间的沟通是最快的,cpu只做累加。
- 标志寄存器,是我们寄存器中比较重要的一种寄存器,它记录了cpu状态,和内存完全没有关系,但跟内存完全是一模一样的。操作也是读取,复制,删除等等。标志寄存器,它记录了cpu的状态,包括了:运算了之后,它的值是否溢出?它是否为零?等等......它帮助我们进行逻辑判断,cpu如何逻辑判断?它比较两个数,得出结果,来改变标志寄存器的值。
- 程序计数寄存器:就是存储了我们的程序运行下一条指令的内存所在地址!下一条指令在内存当中的地址.
- 基址寄存器,它存储了当前内存开始的位置。用来存储我们整个数据内存的开始地址。
- 通用寄存器 我们用得最多的寄存器,意思就是什么都能用.
- 指令寄存器 这个是我们接触不到的寄存器,要查询指令手册.
- 栈寄存器 堆栈指针寄存器在堆栈操作中使用,PUSH和POP指令是从SP寄存器得到现行堆栈段的段内偏移量,所以称SP寄存器为堆栈指针,SP始终指向栈顶。堆栈是计算机中广泛应用的技术,基于堆栈具有的数据进出LIFO特性,常应用于保存中断断点、保存子程序调用返回点、保存CPU现场数据等,也用于程序间传递参数。
- 3) 处理器是如何启动的?
答:首先出厂固化寄存器的默认值,这些值决定了上电时刻CPU的行为; 通过硬件来实现CPU的第一条执行指令的地址,完成地址与外设间的映射.第一条指令的获取,标志着引导加载程序开始运行.
- 4) 处理器的输入输出方式有几种?每一种方式的工作机制是什么?
答:输入输出(I/O)的方式有两种:一是通过不同的I/O端口来实现对接通信,二是通过中断机制来实现对应通信.
每一个在处理器的地址空间中占用不同的I/O端口,I/O空间如果是独立于内存所在的空间,从编程角度,是需要调用相应的函数来读写I/O端口的;
另一种:I/O空间与内存在同一个地址空间,它被称为内存映射I/O空间,可以用C语言的指针访问.与内存访问一样的.
- 5) 什么是中断?中断的机制是什么?
答:中断是指CPU暂停正在处理的指令流,切换到另外一种工作模式,称为"中断模式".中断的机制:进入中断模式首先,保存中断时刻所有寄存器的值,处理器完成了所需工作后,外设发清中断请求,最后是消除处理器的中断信号标识.
- 6) 边界对齐的意义是什么?
答:边界对齐的意义在于:减少对内存的访问次数,对数据结构进行高效的操作.
- 7) 程序的断点是什么?有哪些类型的断点?不同类型的断点的工作机制是什么?
答:通过断点,方便程序调试,在嵌入式开发中,两种断点:一是程序断点,二是数据断点; 程序断点又一分为二: 1 软件程序断点 2 硬件程序断点.
程序断点工作机制:CPU遇到无效或非法指令,会出现一个异常中断,当设置一个软件程序断点时,调试工具就在相应的内在位置放置无效或非法指令一条,并保存原来指令;此时运行到断点处,处理器产生异常中断,并在中断服务程序中恢复被替换的指令,另一方面将操控权交给调试工具.上面是软件程序断点的机制.
硬件程序断点的机制:通过配置处理器的断点寄存器来实现:当CPU运行到断点寄存器所指示位置的指令时,产生中断,调试工具通过该中断来进行干预.硬件程序断点数量最多4个.
数据断点的机制:在处理器寄存器中设置监视,当被监视的内存单元被修改时,处理器产生中断,调试工具利用这一中断,便于我们检查.和硬件程序断点一样,数量有限.
- 8) 内存管理单元的作用是什么?
答:主要用于实现内存保护.
- 9) 什么是缓存?缓存的意义是什么?
答:缓存CPU内部集成的内存,有着非常高的工作频率,我们经常听到的一级缓存,二级缓存正是缓存的划分,缓存一般容量小,曾经是CPU性能指标之一.缓存的意义在于:提高CPU对外部的访问效率.
为了更好的解答上面的几个问题,请大家在阅读教材的同时参考其他书籍的相关主题!
这一周的读书笔记中务必包含这几个问题的答案!
PS:这周的直播视频已经上传至狄泰官方网盘,请没有到场的同学记得观看直播视频!
B.R.
D.T.唐老师