嵌入式系统设计作业及答案.docx
《嵌入式系统设计作业及答案.docx》由会员分享,可在线阅读,更多相关《嵌入式系统设计作业及答案.docx(22页珍藏版)》请在冰豆网上搜索。
![嵌入式系统设计作业及答案.docx](https://file1.bdocx.com/fileroot1/2023-5/26/541899b5-07ed-4f50-9e84-5e87f3c01131/541899b5-07ed-4f50-9e84-5e87f3c011311.gif)
嵌入式系统设计作业及答案
第0章绪论
1、什么是数字系统设计技术?
在解决了对不同目标信息的数字化编码、数字化传输、数字化解码的基本理论、算法定义和协议规范之后,对其如何进行系统的构成,如何以最优化的性能(如速度)、最低廉的成本(如芯片面积、集成密度等)来实现该系统的技术。
2、什么是集成电路IC?
集成电路(IC)是指通过一系列特定的加工工艺,将多个晶体管、电阻、电容等器件,按照一定的电路连接集成在一块半导体单晶片(如Si或GaAs)或陶瓷等基片上,作为一个不可分割的整体完成某一特定功能的电路组件
3、什么是集成电路IP?
集成电路IP是经过预先设计、预先验证,符合产业界普片认同的设计规范和设计标准,具有相对独立功能的电路模块或子系统。
其具有知识含量高、占用芯片面积小、运行速度快、功耗低、工艺容差性大等特点,可以复用(Reuse)于SOC、SOPC或复杂ASIC设计中。
4、什么是SOC?
SOC,即嵌入式系统发展的最高形式——片上系统。
从狭义角度讲,它是信息系统核心的芯片集成,是将系统关键部件集成在一块芯片上;从广义角度讲,SOC是一个微小型系统,
第1章嵌入式系统基础知识
1、计算机系统的三大应用领域是什么?
服务器市场,桌面市场,嵌入式市场
2、通用计算机与嵌入式系统的对比是什么?
特征
通用计算机
嵌入式系统
形式和类型
•看得见的计算机。
按其体系结构、运算速度和结构规模等因素分为大、中、小型机和微机。
•看不见的计算机。
形式多样,应用领域广泛,按应用来分。
组成
•通用处理器、标准总线和外设。
•软件和硬件相对独立。
•面向应用的嵌入式微处理器,总线和外部接口多集成在处理器内部。
软件与硬件是紧密集成在一起的。
开发方式
•开发平台和运行平台都是通用计算机
•采用交叉开发方式,开发平台一般是通用计算机,运行平台是嵌入式系统。
二次开发性
•应用程序可重新编制
•一般不能再编程
3、分别从技术角度和系统角度给出嵌入式系统的定义
技术角度:
以应用为中心、以计算机技术为基础,软硬件可裁剪,应用系统对功能、可靠性、成本、体积、功耗和应用环境有特殊要求的专用计算机系统。
是将应用程序、操作系统和计算机硬件集成在一起的系统
系统角度:
嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统
4、嵌入式系统的特点是什么?
从三要素说:
嵌入式:
嵌入到对象体系中,有对象环境要求
专用性:
软、硬件按对象要求裁减
计算机系统:
实现对象的智能化功能
功耗限制、低成本、多速率、环境相关性、系统内核小、专用性强、不可垄断性、产品相对稳定性
具有实时性
5、请从嵌入式系统软件复杂程度来对嵌入式系统进行分类?
循环轮询系统,有限状态机系统,前后台系统,单处理器多任务系统,多处理器多任务系统
6、常用电平标准有哪些?
理解电平匹配的含义。
TTL:
Transistor-TransistorLogic三极管结构。
Vcc:
5V:
VOH>=2.4V;VOL<=0.5VVIH>=2V;VIL<=0.8V
LVTTL(LowVoltageTTL)
LVTTL又分3.3V、2.5V以及更低电压的
Vcc:
3.3V:
VOH>=2.4V;VOL<=0.4V;VIH>=2V;VIL<=0.8V
Vcc:
2.5V:
VOH>=2.0V;VOL<=0.2V;VIH>=1.7V;VIL<=0.7V
CMOS:
ComplementaryMetalOxideSemiconductor
Vcc:
5V:
VOH>=4.45V;VOL<=0.5V;VIH>=3.5V;VIL<=1.5VLVCMOS(LowVoltageCMOS)
LVCMOS又分3.3V、2.5V以及更低电压的
Vcc:
3.3V:
VOH>=3.2V;VOL<=0.1V;VIH>=2.0V;VIL<=0.7V
Vcc:
2.5V:
VOH>=2.0V;VOL<=0.1V;VIH>=1.7V;VIL<=0.7V
ECL:
EmitterCoupledLogic发射极耦合逻辑电路
Vcc=0V,Vee:
-5.2V:
VOH=-0.88V;VOL=-1.72V;VIH=-1.24V;VIL=-1.36V
PECL(PositiveECL)
Vcc=5V:
VOH=4.12V;VOL=3.28V;VIH=3.78V;VIL=3.64V
LVPECL(lowvoltagePECL)
Vcc=3.3V;VOH=2.42V;VOL=1.58V;VIH=2.06V;VIL=1.94V
LVDS:
LowVoltageDifferentialSignaling
低压差分信号传输
LVDS使用注意:
可以达到600M以上,PCB要求较高,差分线要求严格等长。
差分幅度输出为350mV~400mV,输入阈值为100mV
7、什么是集成电路的封装?
封装考虑的主要因素有哪些?
常用的封装有哪些?
封装指把硅片上的电路管脚,用导线接引到外部接头处,以便与其它器件连接。
需考虑的因素:
安装半导体集成电路芯片用的外壳
安放、固定、密封、保持芯片和增强电热性能
内部芯片与外部电路的连接
常用封装:
DIP(DualIn-linePackage)双列直插封装
PLCC(PlasticLeadedChipCarrier)带引线的塑料芯片载体
PQFP(PlasticQuadFlatPackage)塑料方形扁平封装
SOP(SmallOutlinePackage)小外型封装
PGA(PinGridArrayPackage),插针网格阵列封装
BGA(BallGridArrayPackage),球珊阵列封装
CSP(ChipSizePackage),芯片级封装
8、名词解释:
ASIC、CPLD、FPGA、VerilogHDL,并谈谈CPLD和FPGA的区别是什么?
ASIC(ApplicationSpecificIntegratedCircuits)专用集成电路
CPLD(ComplexProgrammableLogicDevice)复杂可编程逻辑器件
FPGA(FieldProgrammableGateArray)现场可编程门阵列
VerilogHDL(VerilogHardwareDescriptionLanguage)VerilogHDL是一种硬件描述语言(HDL:
HardwareDiscriptionLanguage),是一种以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能
区别:
CPLD
FPGA
内部结构
Product-term
Look-upTable
程序存储
内部EEPROM
SRAM,外挂EEPROM
资源类型
组合电路资源丰富
触发器资源丰富
使用场合
完成控制逻辑
能完成比较复杂的算法
其他资源
-
EAB,锁相环
集成度
低
高
速度
慢
快
时延
固定
不固定
保密性
可加密
一般不能保密
FPGA采用SRAM进行功能配置,可重复编程,但系统掉电后,SRAM中的数据丢失。
因此,需在FPGA外加EPROM,将配置数据写入其中,系统每次上电自动将数据引入SRAM中。
CPLD器件一般采用EEPROM存储技术,可重复编程,并且系统掉电后,EEPROM中的数据不会丢失,适于数据的保密。
FPGA器件含有丰富的触发器资源,易于实现时序逻辑,适合于数据密集型。
CPLD的与或阵列结构,使其适于实现大规模的组合功能,但触发器资源相对较少,适合于控制密集型。
FPGA为细粒度结构,CPLD为粗粒度结构。
FPGA内部有丰富连线资源,CLB分块较小,芯片的利用率较高。
CPLD的宏单元的与或阵列较大,通常不能完全被应用,且宏单元之间主要通过高速数据通道连接,其容量有限,限制了器件的灵活布线,因此CPLD利用率较FPGA器件低。
FPGA为非连续式布线,CPLD为连续式布线。
FPGA器件在每次编程时实现的逻辑功能一样,但走的路线不同,因此延时不易控制,要求开发软件允许工程师对关键的路线给予限制。
CPLD每次布线路径一样,CPLD的连续式互连结构利用具有同样长度的一些金属线实现逻辑单元之间的互连。
连续式互连结构消除了分段式互连结构在定时上的差异,并在逻辑单元之间提供快速且具有固定延时的通路。
CPLD的延时较小。
9、查找表是什么?
查找表是用简单的查询操作替换运行时计算的数组或者associativearray这样的数据结构。
查找表(Look-Up-Table)简称为LUT,LUT本质上就是一个RAM。
(目前FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的16x1的RAM。
当用户通过原理图或HDL语言描述了一个逻辑电路以后,PLD/FPGA开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。
)
~10、锁相环的主要用途是什么?
画出其简要原理框图。
锁相环技术目前的应用集中在以下三个方面:
第一信号的调制和解调;第二信号的调频和解调;第三信号频率合成电路。
11、名词解释:
抖动(Jitter)、容忍度(Tolerance)、预加重(Pre-emphasis)和均衡(Equalization)
抖动(Jitter):
衡量系统发送一致性和稳定性的指标。
数据发送端的抖动越小越好,抖动越小,说明发端的稳定性和一致性越好,越利于收端无误的接受信息。
容忍度(Tolerance):
指收端对发端的抖动不敏感或任耐程度,表示收端恢复数据的能力。
接收端的容忍度越大越好,容忍度大,说明即使到达收端的数据有一定的抖动,收端也能正确地恢复数据信息。
预加重(Pre-emphasis):
高速信号在距离传输过程中,其高频分量的衰减远大于低频分量,所以需要对高频分量预先补偿,其目的是使信号在收端频谱能量均衡,信号失真小。
均衡(Equalization):
也是改善频谱,校正信号失真的有效手段,其在收端通过数字处理校正传输过程中的失真。
12、什么是SOPC?
其基本特征是什么?
可编程片上系统(SOPC)是一种特殊的嵌入式微处理器系统
特征:
嵌入式处理器IPCore为核心(多处理器)具有小容量片内高速RAM资源
丰富的IPCore资源可供灵活选择足够的片上可编程逻辑资源
处理器调试接口和FPGA编程接口共用或并存可能包含部分可编程模拟电路
单芯片、低功耗、微封装
13、详细介绍嵌入式系统设计的流程。
理解嵌入式系统的交叉开发环境。
需求分析------>规格说明------>体系结构设计------>构件设计------>系统调试与集成
交叉开发环境:
宿主机(Host),是用于开发嵌入式系统的计算机。
一般为PC机(或者工作站),具备丰富的软硬件资源,为嵌入式软件的开发提供全过程支持。
目标机(Target),即所开发的嵌入式系统,是嵌入式软件的运行环境,其硬件软件是为特定应用定制的。
在开发过程中,目标机端需接收和执行宿主机发出的各种命令如设置断点、读内存、写内存等,将结果返回给宿主机,配合宿主机各方面的工作。
14、嵌入式软件的调试环境和固化环境的区别。
阶段
调试环境
固化环境
编译
目标文件需要调试信息
目标文件不需要调试信息
链接
应用系统目标代码不需要Boot模块,此模块已由
目标板上的监视器程序实现。
应用系统目标代码必须以Boot模块作为入口模块。
定位
程序的所有代码段、数据段都依次被定位到调试
空间的RAM中。
程序的各逻辑段按照其不同的属性分别定位到非易
失性存储空间(ROM)或RAM中
下载
宿主机上的调试器读入被调试文件,并将其下载
到目标机上的调试空间中,目标机掉电后所有信
息全部丢失。
在宿主机上利用固化工具将可固化的应用程序写入
目标机的非易失性存储器中,目标机掉电后信息不丢失。
运行
被调试程序在目标监控器的控制下运行,并与后
者共享某些资源,如CPU资源、RAM资源以及通
信设备(如串口、网口等)资源。
程序在真实的目标硬件环境上运行
第2章
1、CISC、RISC的特点是什么?
CISC:
复杂指令集(ComplexInstructionSetComputer),具有大量的指令和寻址方式,指令长度可变。
8/2原则:
80%的程序只使用20%的指令,大多数程序只使用少量的指令就能够运行
RISC:
精简指令集(ReducedInstructionSetComputer),只包含最有用的指令,指令长度固定,确保数据通道快速执行每一条指令,使CPU硬件结构设计变得更为简单
2、哈佛结构、冯诺依曼结构的区别?
哈佛结构:
程序存储器与数据储存器分开;提供了较大的带宽;适合数字信号处理;大多数DSP都是哈佛结构
冯诺依曼结构:
单一处理部件完成计算、存储及通信功能;线性组织的定长存储单元(地址);存储空间的单元(地址)是直接寻址的;使用低级机器语言,其指令完成基本操作码的简单操作;对计算进行集中的顺序控制(程序存储);首次提出“地址”和“程序存储”的概念
3、ARM处理器的特点?
1.低功耗、低成本、高性能2.采用RISC体系结构
3.大量使用寄存器4.高效的指令系统
4、ARMv7定义了哪3种不同的处理器配置,其各自的应用特点是什么?
ProfileA是面向复杂、基于虚拟内存的OS和应用的
ProfileR是针对实时系统的
ProfileM是针对低成本应用的优化的微控制器的。
5、流水线技术及其特点。
流水线(Pipeline)技术:
几个指令可以并行执行
特点:
提高了CPU的运行效率
内部信息流要求通畅流动
6、什么是CACHE?
为什么要引入CACHE?
高速缓存(一种小容量高速存储器)。
微处理器的时钟频率比内存速度提高快得多,高速缓存可以提高内存的平均性能。
7、典型计算机的存储层次是什么?
存储系统面临的两个主要问题是什么?
离CPU越近,存取速度越快,价格也越高,因此容量也越小;存储系统面临的两个主要问题是:
1、高速度和低成本之间的矛盾;2、大容量和低成本之间的矛盾
8、简述下ARM处理器存储的大端模式和小端模式?
大端模式:
字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中
小端模式:
低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节
9、ARM处理器的七种工作模式是什么?
ARM的两种工作状态呢?
处理器模式
说明
备注
用户(usr)
正常程序执行模式
不能直接切换到其它模式
系统(sys)
运行操作系统的特权任务
与用户模式类似,但具有可以直接切换到其它模式等特权
快中断(fiq)
支持高速数据传输及通道处理
FIQ异常响应时进入此模式
中断(irq)
用于通用中断处理
IRQ异常响应时进入此模式
管理(svc)
操作系统保护模式
系统复位和软件中断响应时进入此模式
中止(abt)
用于支持虚拟内存和/或存储器保护
在ARM7TDMI没有大用处
未定义(und)
支持硬件协处理器的软件仿真
未定义指令异常响应时进入此模式
ARM状态:
此时处理器执行32位的字对齐的ARM指令
Thumb状态:
此时处理器执行16位的、半字对齐的Thumb指令
10、ARM处理器的基本寻址方式有哪些?
1.寄存器寻址;2.立即寻址;3.寄存器移位寻址;4.寄存器间接寻址;
5.基址寻址;6.多寄存器寻址;7.堆栈寻址;8.块拷贝寻址;
9.相对寻址。
11、总线的主要参数:
总线宽度、总线频率、总线带宽。
它们之间的关系是什么?
总线宽度,又称总线位宽,指的是总线能同时传送数据的位数。
总线频率,总线工作速度的一个重要参数,工作频率越高,速度越快。
通常用MHz表示。
总线带宽,又称总线的数据传送率,是指在一定时间内总线上可传送的数据总量,用每秒最大传送数据量来衡量。
总线带宽越宽,传输率越高。
关系:
总线带宽(单位:
MB/s)=(总线宽度/8)×总线频
12、简述AMBA总线。
AMBA(AdvancedMicrocontrollerBusArchitecture)是ARM公司研发的一种总线规范,目前主要版本为2.0版本。
2.0版AMBA标准定义了三组总线:
AHB(AMBA高性能总线)、ASB(AMBA系统总线)、和APB(AMBA外设总线)。
其中:
AHB(AdvancedHigh-performanceBus):
用于高性能系统模块的连接,支持突发模式数据传输和事务分割;可以有效地连接处理器、片上和片外存储器,支持流水线操作。
APB(AdvancedPeripheralBus):
用于较低性能外设的简单连接,一般是接在AHB系统总线上的第二级总线。
13、建立时间、保持时间。
tSU(时钟建立时间):
在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器
tH(时钟保持时间):
在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被打入触发器
14、ARM9TDMI中的T、D、M、I的含义是什么?
T:
16位宽度的压缩指令集(Thumb)
D:
支持在片调试(Debug),允许处理器响应调试请求暂停
M:
具有增强型乘法器,可生成64位的结果
I:
嵌入式ICE部件,可提供片上断点和调试点的支持
第3章
1、NandFlash和NorFlash的区别?
NorFlash
NandFlash
写入/清除一个块的操作时间
1~5s
2~4ms
读性能
1200-1500KB
600-800KB
写性能
<80KB
200-400KB
接口/总线
SRAM接口/独立地址数据总线
8位地址/数据/控制总线,I/O接口复合
读取模式
随机读取
串行地存取数据
成本
较高
较低,单元尺寸约为NOR的一半,生产过程简单,同样大小的芯片可以做更大的容量
容量及应用场合
1~64MB,主要用于存储代码
8MB~4GB,主要用于存储数据
编写次数(耐用性)
约10万次
约100万次
位交换(bit位反转)
少
较多,关键性数据需要错误探测/错误更正(EDC/ECC)算法
坏处处理
无,因为坏块故障率少
随机分布,无法修正
2、ROM、SRAM和SDRAM这三者的区别是什么?
ROM是只读存储器
SRAM是静态随机存取存储器;DRAM是动态随机存取存储器。
SRAM读写速度比DRAM读写速度快;
SRAM比DRAM功耗大;
DRAM的集成度可以做得更大,则其存储容量更大;
DRAM需要周期性地刷新,而SRAM不需要。
3、SDRAM的寻址方式是什么(以HY57V56120FTP为例)?
NandFlash的寻址方式是什么(以K9F2G08U0A为例)?
SDRAM内部是一个存储阵列,可以把它想象成一个表格,和表格的检索原理一样,先指定行,再指定列,就可以准确找到所需要的存储单元,这是内存芯片寻址的基本原理,这个表格称为逻辑Bank。
以HY57V56120FTP为例,通过BA1,BAO实现对表格的选择,通过
和
实现行与列的定位,从而寻到地址。
而对NAND Flash以周期进行选择。
以K9F2G08U0A为例,其规定了用5个周期来实现。
第一个周期访问的地址为A0~A7;第二个周期访问的地址为A8~A11,它作用在IO0~IO3上,而此时IO4~IO7必须为低电平;第三个周期访问的地址为A12~A19;第四个周期访问的地址为A20~A27;第五个周期访问的地址为A28,它作用在IO0上,而此时IO1~IO7必须为低电平。
前两个周期传输的是列地址,后三个周期传输的是行地址。
通过分析可知,列地址是用于寻址页内空间,行地址用于寻址页,如果要直接访问块,则需要从地址A18开始。
4、什么是虚拟内存技术?
为什么要引入虚拟内存技术?
所谓虚拟存储机制,指的是把多个存储介质模块通过一定的手段集中管理。
即利用一个存储池(StoragePool)将所有存储介质模块统一管理,因而从系统角度看到的就不是多个存储介质模块,而是一个被分区或者分卷的超大容量的存储系统。
这种将多个存储介质模块统一管理起来,为使用者提供大容量、高数据传输性能的存储系统的技术,就称为虚拟存储技术。
虚拟内存技术就是典型的虚拟存储技术
引入虚拟内存技术可以实现虚拟地址空间到物理存储空间的映射;存储器访问权限的控制;设置虚拟存储空间的缓冲特性。
5、存储管理单元MMU的作用是什么?
为什么引入快表?
(提示:
理解课件例1,例2)
实现虚拟地址空间到物理存储空间的映射;
存储器访问权限的控制;
设置虚拟存储空间的缓冲特性。
为了实现不同层次的管理,有两种地址映射方式:
分段方式和分页方式。
分段方式支持较大的、任意大小的主存储区域;
分页方式支持较小的、特定大小的主存储区域。
6、设计接口电路的必要性是什么?
I/O接口设计的重点又是什么?
设计接口电路的必要性:
a)解决CPU和外围设备之间的时序配合和通信联络问题。
b)解决CPU和外围设备之间的数据格式转换和匹配问题。
c)解决CPU的负载能力和外围设备端口选择问题。
I/O接口设计的重点:
设计I/O接口逻辑以及开发其驱动程序。
7、一个典型的I/O接口逻辑内部通常具有哪几种类型的寄存器?
其各自的作用是什么?
(会对I/O接口进行简单编程操作)
一个典型的I/O接口逻辑内部通常具有三种类型的寄存器:
数据寄存器、控制寄存器和状态寄存器。
数据寄存器用来保存CPU核传送给I/O设备的数据,或者I/O设备传送给CPU核的数据;
控制寄存器用来保存由CPU核发来的控制操作命令;
状态寄存器保存着I/O接口逻辑在数据传送过程中正在发生的或者最近发生的事件特征信息,CPU核可以通过读取状态寄存器的内容来监控I/O的操作。
8、什么是GPIO接口?
其主要作用?
GPIO接口就是通用并行I/O接口
主要作用是传送需并行交互的信息,或者是开关量信号。
9、OSI结构模型具体由哪几层组成,其各层的作用分别是什么?
(1)物理层。
规定了网络设备间最底层的接口特性,包括物理连接的机械特性(即接插件的大小、形状等)、电气特性(即代表逻辑“1”和逻辑“0”的电参数)、电子部件和物理部件的基本功能以及位交换的基本过程。
(2)数据链路层。
主要作用是控制信息在单一链路中传输的差错,通常包括传输信息的校验、总线错误检测等。
(3)网络层。
定义了基本的端到端数据传输服务,网络层在多数据链路存储转发网络中特别重要。
(4)传输层。
定义了面向连接的服务,它可以保证数据按一定的顺序、无差错地在多条链路上传送。
(5)会话层。
提供了一种控制网络上终端用户交互的机制,例如数据分组和检测点。
(6)表示层。
规定了数据交换的格式,并且为应用程序提供有效的转换工具。
(7)应用层。
提供了终端用户程序和网络之间的一个应用程序接