软考嵌入式系统工程师知识点整理(计算机系统构成)

计算机执行指令的基本方法

  • 控制器首先按程序计数器所指出的指令地址从内存中取出一条指令
  • 将指令的操作码部分送指令译码器进行分析,然后根据指令的功能向有关部件发出控制命令
  • 根据控制命令及程序状态字寄存器的状态,控制微操作形成部件产生一系列CPU内部的控制信号和输出到CPU外部控制信号。这些控制信号实现具体功能
  • 形成下一条指令地址。若非转移类指令,则修改程序计数器的内容;若是直接转移类指令,则该指令中的转移地址被送入程序计数器;若是非直接转移类指令,则根据转移条件修改程序计数器的内容

精简指令集RISC基础知识

  • 统一指令编码
  • 泛用的暂存器
  • 单纯的寻址模式

指令流与数据流的组织关系

  • 单指令流单数据流SISD
  • 单指令流多数据流SIMD
  • 多指令流单数据流MISD
  • 多指令流多数据流MIMD

特权指令

  • 系统运行时可分为系统态和用户态
  • 当计算机处于系统态时,可以执行特权指令
  • 特权指令集是计算机指令集的子集,通常与系统资源的操纵和控制有关

哈佛结构的基本特点是

  • 程序和数据具有独立的存储空间
  • 有着各自独立的程序总线和数据总线
  • 可以同时对数据和程序寻址

冯诺依曼结构基础知识

  • 指令和数据不加区别混合存储在同一个存储器中

8086微处理器的内部执行单元包括

  • 控制器、ALU运算器、通用寄存器、状态寄存器

8086处理器的内部结构

  • 数据寄存器:AX、BX、CX、DX
  • 指针寄存器:堆栈指针SP、基数指针BP、源变针SI、目的变址DI
  • 控制寄存器:指令指针IP、状态标志PSW

8086处理器的段空间

  • 代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS、附加段寄存器ES
  • 每个段有64KB,段内地址由16位段寄存器和16位地址偏移量确定
  • 物理地址=段寄存器内容左移4位+偏移地址

通道和DMA的相关知识

  • DMA直接内存访问是一种完全由硬件执行I/O交换的工作方式
  • DMA控制器控制地址总线、数据总线和控制总线
  • 通道总线可以接若干个设备控制器,一个设备控制器可以接一个或者多个设备
  • 通道的基本功能是执行通道指令
  • 通道分为选择通道、数组多路通道、字节多路通道三种类型
  • 选择通道用于连接外部高速设备,但这些设备不能同时工作
  • 数组多路通道是对选择通道的改进,会在非数据传输时服务其他设备
  • 字节多路通道主要用于连接大量低速设备

通道的基础知识

  • 字节多路通道是一种简单的共享通道,主要用于连接大量的低速设备,多采用分时工作方式
  • 数据选择通道用于连接高速的外围设备。在物理上可以连接多台设备,但多台设备不能同时工作。一旦选中某一设备,通道进入忙状态,直到该设备数据传输工作结束
  • 数组多路通道是字节多路通道和选择通道的结合,当某设备进行数据传输时,通道只为该设备服务,当设备进行寻址等控制操作时,通道暂时断开与设备的连接,挂起该设备的通道程序,去为其他设备服务。其在实际计算机系统中应用最多,适合高速设备的数据传输

DMA数据传输流程

  • DMA请求
  • DMA响应
  • 发送内存地址
  • 传送一个字数据
  • 修改内存地址
  • 字计数器计数
  • 传送结束

中断处理流程

  • CPU检查响应中断的条件是否满足
  • 如果CPU响应中断,则先关中断
  • 保存中断现场,把发生中断时的任务上下文现场保存起来
  • 分析中断原因,根据中断向量得到中断处理程序入口地址
  • 执行中断处理程序
  • 退出中断,恢复现场
  • 开中断,CPU继续执行

VHDL语言基础知识

  • 函数和过程统称为子程序,内部包含的都是顺序描述代码,进程可以直接在主代码中调用,子程序一般在建库的时候使用,同时子程序中不能使用wait语句
  • 一个函数就是一段顺序描述的代码。对于具有共性的设计问题都可以用函数来实现。每次调用函数时,都要首先进行初始化,因此在函数中禁止进行信号声明和元件实例化,函数是可以被综合的。函数用return来返回,一次只能返回一个值,返回值的类型由return后的数据类型决定
  • 过程可以具有多个输入、输出、双向模式的参数,可以是信号、变量和常量。对于输入模式的参数,默认为常量,对于输出和双向模式的参数,默认为变量。过程中的变量需要在每次调用时候进行处理后,同时其可以对外部的信号进行赋值

在VHDL设计中,一个完整的设计单元应当包括

  • 实体:用于描述所设计的电路系统的外部接口信号
  • 结构体:用于描述电路系统内部的结构和行为
  • 库:存放已编译的其他设计单元
  • 包集合:存放各模块都能共享的数据类型、常数和子程序
  • 配置:用于从库中选取所需要的单元来组成不同电路系统

移位型计数器

  • 环形计数器:其进位模数与移位寄存器触发器的数目相等,反馈函数F=Qn
  • 扭环形计数器:进位模数为移位寄存器触发器级数n的2倍,F=Qn的非

存储器的划分方式

  • 随机存储器指可对任何存储单元存入或读取数据,访问任何一个存储单元所需的时间相同
  • 顺序存储器指访问数据所需要的时间与数据所处额位置相关,磁带是顺序存储器
  • 直接存储器是介于随机存取和顺序存取之间的寻址方式。磁盘是直接存储器
  • 相连存储器是一种按内容访问的存储器。其工作原理是把数据或数据的一部分作为关键字,将该关键字与存储器中的每一单元进行比较,找出存储器中所有与关键字相同的数据字

页式虚拟存储器管理的主要特点是:

  • 不要求将作业同时全部装入内存的连续区域
  • 如果访问的页面不存在,将产生缺页中断处理
  • 若无空闲存储快时,需要根据某种算法进行页面置换

Flash基础知识

  • NORFlash
    • 带有通用的SRAM接口,可轻松挂接在CPU的地址、数据总线上,对CPU接口要求较低
    • 可芯片内执行XIP,这样应用程序可在闪存内执行,不必再把代码读到系统RAM中,如uboot中的只读段可以直接在NORFlash上运行
  • NANDFlash器件
    • 使用复杂的I/O口来串行地存取数据
    • 时序复杂,需要CPU有集成NAND控制器
    • 不能挂接在地址总线上,如果NAND作为启动盘,需要CPU具备特殊的功能,或用NORFlash来运行启动代码
    • 任何FLASH器件的写入操作都只能在空或已擦出的单元内进行,NAND器件执行擦出操作十分简单,而NOR则要求在擦出前将目标块内所有位都写1
  • SDRAM器件
    • 有一个同步接口的动态随机存取内存DRAM
    • 通常DRAM有一个异步接口,可以随时响应控制输入的变化,而SDRAM有一个同步接口,在响应控制输入前会等待一个时钟信号,这样就能和计算机的系统总线同步。
    • 相对于NOR和NAND Flash,SDRAM的访问读写速度要快得多

内存保护的知识

  • 内存保护的主要目的是防止某个进程去存取不是操作系统配置给它的寻址空间
  • 这个机制可以防止某个进程因为某些错误而影响到其他进程或是操作系统本身的运行
  • 分区分配内存管理方式,通过向进程划分专属的存储空间,实现边界保护

Cache和memory的存储机制

  • 写通:每当缓存接收到写数据指令,都直接将数据写回到内存。通常需要写缓冲器配合
  • 回写:仅当一个缓存块需要被替换回内存时,才将其内容写入内存
  • Post write:CPU更新cache数据时,把更新的数据写入到更新缓冲器,在合适的时候才对memory进行更新。但是在数据联系被更新两次以上时,缓冲区将不够使用,被迫同时更新memory

I/O设备管理软件的分层

  • 用户进程或应用程序
  • 设备无关的系统软件或设备管理程序
  • 设备驱动程序
  • 中断处理程序

板级支持包BSP

  • 实现特定的支持代码,通常与bootloader一起设置,bootloader包含最小的设备驱动来加载操作系统与所有在板上的设备的驱动程序
  • BSP是介于主板硬件和操作系统之间的一层,主要目的是为了支持操作系统,使之能够更好地运行于硬件主板
  • 不同的操作系统对应不同形式的BSP

对TTL与非门闲置输入端的处理

  • 接电源
  • 通过电阻3KΩ接电源
  • 与有用输入端并联

PCB的设计流程

  • 设计原理图
  • 生成网表和加载网表
  • 设计元件布局
  • 布线规则设置、布线、检查、复查
  • 生成报表文件
  • 文件打印输出

杂项:

  • 当前目录的相对路径为目录名后面加\
  • 二级目录结构可以解决不同用户之间的文件同名冲突问题
  • 操作系统中的spooling技术,实质是将独占设备转化为共享设备的技术
  • 构成运算器的部件中最核心的是算数逻辑运算单元
  • 流水线深度等级=可同时运行的指令数若
  • 计算机存储数据采用的是双符号位(00表示正号,11表示负号),两个符号相同的数相加时,如果运算结果的两个符号位经异或运算得1,则可断定这两个数相加的结果产生了溢出
  • TLB:旁路转换缓冲,负责将虚拟内存地址翻译成实际的物理内存地址

流水线实际吞吐率的计算

  • 最长指令的执行时间*(连续输入指令数-1)+指令执行的总时间

存储1000个16*16点阵的汉字所需的存储空间?

  • 1000*16*16/8/1024=31.25KB

若某计算机字长为32位,内存容量为2GB,按字编址,则可寻址范围为?

  • 2GB/32=512MB

已知SRAM芯片的容量为512*8位,求该芯片引出线的最小数目

  • 地址总线9根——512=29
  • 数据总线8根
  • CS/WE/VCC/GND

CRT的分辨率为1024*1024像素,像素的颜色数为256色,则刷新存储器的容量是?

  • 1024*1024*8/8=1MB

问题1:
在一个单级中断系统中,当设备A、B、C同时发出中断请求时,请计算出处理器处理设备A、B、C的时间TA、TB、TC。如果处理三个设备所需要的总时间为T,那么本系统所设计的中断极限频率是多少

  • TDC为查询链中每个设备的延迟时间
  • Ta、Tb、Tc是中断服务程序执行时间
  • A、B、C的中断优先级为C>B>A
  • TA=3TDC+TS+Ta+TR
  • TB=2TDC+TS+Tb+TR
  • TC=TDC+TS+Tc+TR
  • 极限频率=1/(TA+TB+TC)

问题2:
某32位计算机的cache容量为16KB,cache块的大小为16B,若主存与cache地址映像采用直接映射方式,则主存地址1234E8F8装入cache的地址是多少

  • Cache可分块数=16KB/16B=1024,块地址需要10位
  • 块内地址=cache块取2的幂=4位
  • 主存地址=32-4-10=18位
    装入cache的地址取1234E8F8的低18位=10100011111000

问题3:
由2K*4位的存储器芯片组成容量为16K*8位的存储器(地址单元为0000H~3FFFH,每个芯片的地址空间连续),则地址单元0B1FH所在芯片的最小地址编号为?

  • 共需8片,2片为1组。(16K*8)/(2K*4)
  • 第一组地址空间(0000H~07FFH)
  • 0B1FH在第二组地址空间(0800H~0FFFH)
  • 最小地址编号为0800H

问题4:
某磁盘磁头从一个磁道移至另一个磁道需要10ms。文件在磁盘上非连续存放,逻辑上相邻数据块的平均移动距离为10个磁道,每块的旋转延迟时间及传输时间分别为100ms和2ms,则读取一个100块的文件需要多少时间?

  • 访问一个数据块的时间=100ms+2ms+10*10ms=202ms
  • 读取100个块需要20200ms

问题5:
在分段存储管理方式中,地址长度32位,段号8位,则最大段长是

  • 2(32-8)=224

问题6:
在设计数据处理模块时,假设某桥芯片内部集成一路递增定时器,定时器位宽为32位,最高位为控制使能位,输入时钟为25MHz。请回答下面三个问题

  • 定时器最长定时时间是多少? 2(32-1)*(1/25MHz)
  • 设置10ms定时时间,则定时器初值是多少?231-10*106/40
  • 若改为递减定时器,设置10ms定时时间,则定时器的初值是多少? 10*106/40

你可能感兴趣的:(软考,嵌入式系统)