基于ARM的芯片多数为复杂的片上系统.
ARM判断模考试题与参考答案
![ARM判断模考试题与参考答案](https://img.taocdn.com/s3/m/0864a3f1f021dd36a32d7375a417866fb84ac0de.png)
ARM判断模考试题与参考答案一、判断题(共100题,每题1分,共100分)1、STM32F103ZET6芯片具有全球唯一A、正确B、错误正确答案:A2、并行通信时,各个位同时在不同的数据线上传送,数据可以字或字节为单位并行进行传输。
A、正确B、错误正确答案:A3、ARM指令是32位的,而Thumb指令是16位的。
A、正确B、错误正确答案:A4、STM32F103ZET6芯片具有单周期乘法指令和硬件除法器A、正确B、错误正确答案:A5、GPIO_Mode_IN_FLOATING是呈现高阻态的一种状态,存在不确定性的电压,常用于读取内部电路状态A、正确B、错误正确答案:B6、温度传感器DS18B20和红外接收头均为单总线传感器,其与CPU接线较为简单。
A、正确B、错误正确答案:A7、项目文件夹inc是include的缩写。
该子目录下存放STM32F10x每个外设库函数的头文件A、正确B、错误正确答案:A8、STM32每个中断通道对应唯一的硬件中断信号输入。
A、正确B、错误正确答案:B9、若定义任务task1的优先级为12,则不能再定义其他任务的优先级为12A、正确B、错误正确答案:A10、每一个晶振的两端分别接上两个22PF的对地微调电容A、正确B、错误正确答案:A11、嵌入式系统和通用计算机系统工作原理是相同的的A、正确B、错误正确答案:A12、STM32单片机低电平复位,电路其可以实现上电复位和按键复位A、正确B、错误正确答案:A13、CPU在执行中断处理程序之前要保存主程序中断处的地址。
A、正确B、错误正确答案:A14、嵌入式存储器的层次结构,由内而外,可以分片内存储器、片外存储器和内部存储器三个层次。
A、正确B、错误正确答案:B15、核心板电路就是单片机最大系统电路加上ISP下载电路A、正确B、错误正确答案:A16、Thumb指令集没有包含进行异常处理时需要的一些指令。
A、正确B、错误正确答案:A17、数码管采用的是共阳接法A、正确B、错误正确答案:A18、对于STM32开发板而言,它需要两个晶振,一个是系统主晶振,频率为8MHz,一个是实时时钟晶振,频率为32.768KHz。
全国计算机等级考试三级嵌入式系统开发技术题库第十一套
![全国计算机等级考试三级嵌入式系统开发技术题库第十一套](https://img.taocdn.com/s3/m/a1efdc4cf78a6529647d5359.png)
一、选择题1. 嵌入式系统的应用极其广泛,下列设备:①洗衣机、②电饭煲、③服务器、④平板扫描仪、⑤路由器、⑥机顶盒、⑦巨型机、⑧POS机中,属于嵌入式系统应用的是:A) 除④和⑤之外B)除③和⑦之外 C) 除⑤和⑦之外 D) ①~⑧全部都是2. 嵌入式系统的软件大多存储在非易失性存储器中,即使断电也不会消失。
目前嵌入式系统使用最多的非易失性存储器是:A) Mask ROM B) Flash memory C) SRAM D) SSD3. 下图是数字信号处理器(DSP)的典型应用方式,其中的①、②和③分别是:A) 模拟信号、DSP、数字信号B) 模拟信号、DSP、模拟信号C) 数字信号、DSP、数字信号 D) 数字信号、DSP、模拟信号4. 片上系统(或系统级芯片)是目前广泛使用的一种嵌入式处理芯片,下面有关叙述中错误的是:A) 其英文缩写是SOC或SoC,它是电子设计自动化水平提高和大规模集成电路制造技术发展的成果B) 它已成为集成电路设计的发展趋势,现在许多嵌入式处理芯片都是片上系统C) 芯片中既包含处理器又包含存储器及外围电路,单个芯片就能实现数据的采集、转换、存储、处理和I/O等多种功能D) 智能手机已经广泛采用片上系统,平板电脑大多还使用传统的Intel处理器5. 在嵌入式系统(如数码相机)中,获取数字图像的过程大体分为四步,如下图所示,正确的处理步骤是:A) 取样、扫描、分色、量化 B) 分色、量化、扫描、取样C) 扫描、分色、取样、量化 D) 扫描、量化、取样、分色6. 数字音频的比特率(码率)指的是每秒钟的数据量,它与取样频率、量化位数、声道数目、使用的压缩编码方法等密切相关。
假设数字音频的比特率为32kb/s,其量化位数为8位,单声道,采用压缩编码,压缩比为2,那么取样频率是:A) 8 kHz B) 12 kHz C) 16 kHz D) 20 kHz7. 微波通信是利用频率为300MHz~300GHz电磁波进行的通信,它具有频带宽、容量大的特性,应用广泛。
CortexM3微控制器概述
![CortexM3微控制器概述](https://img.taocdn.com/s3/m/3bbb18143069a45177232f60ddccda38366be172.png)
基于ARM低成本和高效的处理器设计方案,得到 授权的厂商生产了多种多样的的处理器、单片机以及 片上系统(SoC)。这种商业模式就是所谓的“知识产权授 权”。
ARMv7架构的闪亮登场。在这个版本中,内核架构首次 从单一款式变成3种款式。
款式A:设计用于高性能的“开放应用平台”——越来越 接近电脑了
内建的嵌套向量中断控制器
Cortex-M3在内核水平上搭载了一颗中断控制器——嵌套向量中断控制器 NVIC(Nested Vectored Interrupt Controller)。
NVIC提供如下的功能: • 可嵌套中断支持 • 向量中断支持 • 动态优先级调整支持 • 中断延迟大大缩短 • 中断可屏蔽
存储器映射
从图中可见,不像其它的ARM架构,它们的存储器映 射由半导体厂家说了算, Cortex-M3预先定义好了“粗线条 的”存储器映射。通过把片上外设的寄存器映射到外设区, 就可以简单地以访问内存的方式来访问这些外设的寄存器, 从而控制外设的工作。
中断和异常
虽然CM3是支持240个外中断的,但具体使用了多少 个是由芯片生产商决定。 CM3还有一个NБайду номын сангаасI (不可屏蔽 中断)输入脚。当它被置为有效(assert)时, NMI服务 例程会无条件地执行。
开发工具
在开始使用Cortex-M3之前,需要准备好一些开发工具,典型的如: • 编译器/汇编器:把C和汇编源程序转换成目标文件。几乎所有的C编译器套件 都包含了对应的汇编器。 • 指令系统模拟器:模拟指令的执行,用于在软件开发早期的调试。 • 在 线 仿 真 器 ( ICE) 或 者 调 试 探 测 器 ( probe) : 连 接 到 电 脑 和 目 标 板 上 的 调 试 硬 件 , 与 目 标 板 的 接 口 通 常 是 JTAG或 SW。 • 一块开发板。 • 跟踪捕捉仪:可选的硬件设备和周边软件,可以用它来捕捉来自DWT以及ITM 的输出,并且以可读的形式显示出来。 • 嵌入式操作系统:在单片机上运行的操作系统。这也是一个可选件,许多简单 的应用程序不需要操作系统。但是在开发复杂度较高或者有高性能指标的系统时, 常常需要使用。
bootloader流程
![bootloader流程](https://img.taocdn.com/s3/m/5eb6e06faf1ffc4ffe47ac96.png)
Bootloader 设计分析3.1 Bootloader 的操作模式 (Operation Mode)大多数 Bootloader 都包含两种不同的操作模式[2]:(1). 启动加载(Boot loading)模式:也称为“自主”模式。
即Bootloader 从目标机上的某个固态存储设备上将操作系统加载到 RAM 中运行,整个过程并没有用户的介入。
(2).下载(Downloading)模式:在这种模式下,目标机上的Bootloader将通过串口或网络连接等通信手段从主机(Host)下载内核映像和根文件系统映像等,然后保存到目标机上的FLASH 类固态存储设备中。
Bootloader的这种模式通常在系统初次安装和更新时被使用,工作于这种模式下的Bootloader通常都会向它的终端用户提供一个简单的命令行接口。
在我们的Bootloader设计中我们同时支持这两种工作模式,采用的方法是:一开始启动时处于正常的启动加载模式,但并不立即启动进入uClinux内核,而是提示延时5秒,等待终端用户如果按下某一特定按键,则切换到下载模式,否则继续启动uCLinux 内核。
3.2 Bootloader 的启动及初始化基于ARM的芯片多数为复杂的片上系统(SoC),这类复杂系统里的多数硬件模块都是可配置的[3]。
因此大多数 Bootloader 都分为 stage1 和 stage2 两大部分。
依赖于 CPU 体系结构的代码,通常都放在 stage1 中,而且在这一部分,我们直接对处理器内核和硬件控制器进行编程,因此常常都用汇编语言来实现。
而stage2则通常用C语言来实现,这样可以实现更复杂的功能,而且代码会具有更好的可读性和可移植性。
3.2.1 Bootloader的stage1这部分代码必须首先完成一些基本的硬件初始化,为stage2的执行以及随后的kernel 的执行准备好一些基本的硬件环境[2]。
Bootloader的stage1一般通用的内容包括:* 定义程序入口点* 设置异常向量表* 初始化存储系统(包括地址重映射)* 初始化有特殊要求的端口,设备* 初始化用户程序的执行环境* 初始化堆栈指针寄存器,必要时改变处理器的模式* 设置FIQ/IRQ中断处理程序入口* 进入C程序在整个Bootloader的初始化过程中我们都不必响应中断,因此首先禁止系统的中断,然后程序设置CPU的速度和时钟频率,设置CPU内部指令/数据cache,DRAM初始化,DRAM初始化完成后即可拷贝ROM中的代码到DRAM中,然后内存重映射,程序开始进入DRAM中执行,然后再初始化一些用户有特殊要求的端口、设备,比如LED或串口等,可以通过点亮LED,或者向串口打印一些调试信息,以此表明系统的状态是OK还是Error。
第2章 ARM微处理器概述
![第2章 ARM微处理器概述](https://img.taocdn.com/s3/m/d8c6ac2b2f60ddccda38a0a5.png)
工业控制领域:
作为32位 的RISC 架构,基于ARM 核的微控制器芯片不
但占据了高端微控制器市场的大部分市场份额,同时也 逐渐向低端微控制器应用领域扩展,ARM 微控制器的低 功耗、高性价比,向传统的8 位/16 位微控制器提出了挑 战。
无线通讯领域:
目前已有超过85%的无线通讯设备采用了ARM 技术,
ARM体系结构的变种
(4)J变种(Java加速器Jazelle)
ARM的Jazelle技术将Java的优势和先进的32位RISC芯
片完美地结合在一起。Jazelle技术提供了Java加速功能, 可以得到比普通Java虚拟机高得多的性能。与普通的 Java虚拟机相比,Jazelle使Java代码运行速度提高了8 倍,而功耗降低了80%。 Jazelle技术使得程序员可以在一个独立的处理器上同时 运行Java应用程序、已经建立好的操作系统、中间件以 及其他的应用程序。与使用协处理器和双处理器相比, 使用单独的处理器可以在提供高性能的同时保证低功耗 和低成本。 J变种首先在ARM体系版本4TEJ中使用,用字母J表示。
使用电池供电的高性能的便携式设备。这些 设备一方面需要处理器提供高性能,另一方 面又需要功耗很低。SIMD功能扩展为包括音 频/视频处理在内的应用相同提供了优化功能。 它可以使音频/视频处理性能提高4倍。 Version 6首先在2002年春季发布的ARM11 处理器中使用。
2.2.3 ARM体系结构的变种及版本 命名格式
Version 4(v4)
该版本增加了下列指令:
半字加载和存储指令; 加载带符号的字节和半字数据的指令; 增加mb状态; 增加了处理器的特权模式。 该版本不再强制要求与以前的26位地址空间 兼容。
全国计算机等级考试_三级嵌入式_题库(含答案)
![全国计算机等级考试_三级嵌入式_题库(含答案)](https://img.taocdn.com/s3/m/8cb2aa9164ce0508763231126edb6f1aff0071a0.png)
全国计算机等级考试三嵌入式系统开发技术题库第1套一、选择题1:嵌入式系统是一类特殊的计算机系统。
下列产品中不属于嵌入式系统的是()。
A:电饭煲 B:路由器 C:巨型机 D:POS机2:嵌入式系统硬件的核心是CPU。
下面关于嵌入式系统CPU特点的叙述中,错误的是()。
A:支持实时处理 B:低功耗C:字长在16位以下 D:集成了测试电路3:下面关于微控制器的叙述中,错误的是()。
A:微控制器将整个计算机硬件的大部甚至全部电路集成在一块芯片中B:微控制器品种和数量最多,在过程控制、机电一体化产品、智能仪器仪表、家用电器、计算机网络及通信等方面得到了广泛应用C:微控制器的英文缩写是MCUD:8位的微控制器现在已基本淘汰4:片上系统(SoC)也称为系统级芯片,下面关于SoC叙述中错误的是()。
A:SoC芯片中只有一个CPU或DSPB:SoC芯片可以分为通用SoC芯片和专用SoC芯片两大类C:专用SoC芯片可分为定制的嵌入式处理芯片和现场可编程嵌入式处理芯片两类D:FPGA芯片可以反复地编程、擦除、使用,在较短时间内就可完成电路的输入、编译、优化、仿真,直至芯片的制作5:数码相机是嵌入式系统的典型应用之一。
下面关于数码相机的叙述中,错误的是()。
A:它由前端和后端两部分组成,前端负责数字图像获取,后端负责数字图像的处理 B:后端通常是以嵌入式DSP作为核心的SoC芯片,DSP用于完成数字图像处理 C:负责进行数码相机操作控制(如镜头变焦、快门控制等)是一个32位的MCUD:高端数码相机配置有实时操作系统和图像处理软件6:电子书阅读器中存储的一本中文长篇小说,大小为128KB,文件格式为.txt,试问该小说包含的汉字大约有多少万字?()A:6万字 B:12万字 C:25万字 D:40万字7:数字视频信息的数据量相当大,通常需要进行压缩处理之后才进行传输和存储。
目前数字有线电视所传输的数字视频采用的压缩编码标准是()。
《ARM 白皮书—Cortex-M3 处理器简介》
![《ARM 白皮书—Cortex-M3 处理器简介》](https://img.taocdn.com/s3/m/652bb31e650e52ea5518986e.png)
I
ARM 白皮书
第一章 简介
第1章 简介
基于ARM嵌入式处理器的片上系统解决方案可应用于企业应用、汽车系统,家庭网络 和无线技术等市场领域。ARM CortexTM系列提供了一个标准的体系结构来满足以上各种技 术的不同性能要求,其包含的处理器基于ARMv7 架构的三个分工明确的部分。A部分面向 复杂的尖端应用程序,用于运行开放式的复杂操作系统;R部分针对实时系统;M部分为成 本控制和微控制器应用提供优化。Cortex-M3 是首款基于ARMv7-M架构的处理器,是专门 为了在微控制器,汽车车身系统,工业控制系统和无线网络等对功耗和成本敏感的嵌入式应 用领域实现高系统性能而设计的,它大大简化了可编程的复杂性,使ARM架构成为各种应 用方案(即使是最简单的方案)的上佳选择。
1.3 针对敏感市场降低成本和功耗
成本是采用高性能微控制器永恒的屏障。由于先进的制造工艺相当昂贵,只有降低芯片 的尺寸才有可能从本质上降低成本。为了减小系统区域,Cortex-M3 处理器采用了至今为止 最小的 ARM 内核,该内核的核心部分(0.18um G)的门数仅为 33000 个,它把紧密相连的
ARM模拟试题(含答案)
![ARM模拟试题(含答案)](https://img.taocdn.com/s3/m/1a4d595f86c24028915f804d2b160b4e777f817f.png)
ARM模拟试题(含答案)一、判断题(共100题,每题1分,共100分)1.STM32F103ZET6芯片只具有睡眠、停止两种低功耗工作模式A、正确B、错误正确答案:A2.OLED显示屏是利用有机电致发光二极管制成的显示屏A、正确B、错误正确答案:A3.并行通信:是指使用多条数据线传输数据。
并行通信时,各个位同时在不同的数据线上传送,数据可以字或字节为单位并行进行传输A、正确B、错误正确答案:A4.STM32开发板只需要接一个晶振A、正确B、错误正确答案:B5.NVIC集成在ARMCortex-M3内核中,与中央处理器核心CM3Core 紧密耦合,从而实现低延迟的中断处理和高效地处理晚到的较高优先级的中断。
A、正确B、错误正确答案:A6.晶震的作用是为STM32系统提供基准时钟信号A、正确B、错误正确答案:A7.蓝桥杯ARM嵌入式开发板主CPU设计了复位按钮A、正确正确答案:A8.STM32单片机低电平复位,电路其可以实现上电复位和按键复位A、正确B、错误正确答案:A9.借助GPIO,微控制器可以实现对外围设备(如LED和按键等)最简单、最直观的监控。
A、正确B、错误正确答案:A10.编译工程,如没有错误,则会在output文件夹中生成“工程模板.hex”文件,如有错误则修改源程序直至没有错误为止A、正确B、错误正确答案:A11.串行通信按照数据传送方向分为单工制式,半双工制式,全双工制式.A、正确B、错误正确答案:A12.SoC将嵌入式系统的几乎全部功能都集成在一块芯片中,单个芯片就能实现数据的采集、转换、存储、处理和I/O等多种功能A、正确B、错误正确答案:A13.电源故障、内存出错、总线出错等是可屏蔽中断。
A、正确B、错误正确答案:B14.端口号通常以大写字母命名,每个端口有16个I/O引脚B、错误正确答案:A15.嵌入式系统由硬件和软件两部分组成,硬件是基础,软件是关键,两者联系十分关键。
ARM体系结构——ARM简介
![ARM体系结构——ARM简介](https://img.taocdn.com/s3/m/a4640589d0d233d4b14e69f7.png)
LPC2000系列CPU的核心是ARM7,由于其C语言编译器已经考虑到了许多复杂的因素,所以作为初学者无需成为一个专家就可以使用LPC2000。但是为了能够设计出可靠的应用系统和培养学习新技术的能力,作为初学者确实需要对CPU的运作机制及其独特的性能有更加深入的理解。
在连载的文章中,我们将着眼于ARM7内核,处理器状态与模式,内部寄存器,程序状态寄存器,异常、中断及其向量表和存储系统的学习,这是成为一个应用工程师必备的基础。
ARM1136JF-S就是为了进行快速浮点运算,而在ARM1136J-S增加了向量浮点单元。
9.Xscale
Xscale处理器将Intel处理器技术和ARM体系结构融为一体,致力于为手提式通信和消费电子类设备提供理想的解决方案。并提供全性能、高性价比、低功耗的解决方案,支持16位Thumb指令和集成数字信号处理(DSP)指令。
ARM926EJ-S发布于2000年,ARM9E系列为综合处理器,包括ARM926EJ-S和带有高速缓存处理器宏单元的ARM966E-S、ARM946E-S。该系列强化了数字信号处理(DSP)功能,可应用于需要DSP与微控制器结合使用的情况,将Thumb技术和DSP都扩展到ARM指令集中,并具有EmbeddedICE-RT逻辑(ARM的基于EmbeddedICE JTAG软件调试的增强版本),更好地适应了实时系统的开发需要。同时其内核在ARM9处理器内核的基础上使用了Jazelle增强技术,该技术支持一种新的Java操作状态,允许在硬件中执行Java字节码。
5.ARM7系列
ARM7TDMI是ARM公司1995年推出的第一个处理器内核,是目前用量最多的一个内核。ARM7系列包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T和扩充了Jazelle的ARM7EJ-S。该系列处理器提供Thumb 16位压缩指令集和EmbeddedICE JTAG软件调试方式,适合应用于更大规模的SoC设计中。其中ARM720T高速缓存处理宏单元还提供8KB缓存、读缓冲和具有内存管理功能的高性能处理器,支持Linux和Windows CE 等操作系统。
ARM判断模拟考试题与参考答案
![ARM判断模拟考试题与参考答案](https://img.taocdn.com/s3/m/9b3b03bbc9d376eeaeaad1f34693daef5ef71304.png)
ARM判断模拟考试题与参考答案一、判断题(共100题,每题1分,共100分)1、STM32每个中断通道对应唯一的硬件中断信号输入。
A、正确B、错误正确答案:B2、LSE是低速外部时钟,接频率为32.768kHz的石英晶体。
这个主要是RTC的时钟源。
A、正确B、错误正确答案:A3、挂起任务和解挂任务的函数必须是成对出现的,否则会造成死锁A、正确B、错误正确答案:A4、ARM芯片本质上是一个32位复杂指令集(CISC)处理器架构A、正确B、错误正确答案:B5、ARM公司的ARM920T核采用了AMBA总线结构A、正确B、错误正确答案:A6、嵌入式系统是以应用为核心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能,可靠性,等多方面有严格要求的专用计算机系统。
A、正确B、错误正确答案:A7、CPU模块模块中STM32F103ET6集成了32位的ARMCortex-M3内核,最高工作频率可达72MHZ。
A、正确B、错误正确答案:A8、蜂鸣器的声音也可以通过PWM控制。
A、正确B、错误正确答案:A9、在每个STM32的芯片上都有两个管脚BOOT0和BOOT1,BOOT1=0 BOOT0=1从用户闪存启动,这是正常的工作模式。
A、正确B、错误正确答案:B10、在嵌入式系统设计中可以通过ADC来测量电池电压A、正确B、错误正确答案:A11、串行通信:是指使用一条数据线,将数据一位一位地在这条数据线上依次传输。
A、正确B、错误正确答案:A12、STM32电源模块采用双电源供电方式A、正确B、错误正确答案:A13、24C02提供2048位的串行电可擦写可编程只读存储器(EEPROM),组织形式为256字×8位字长。
A、正确B、错误正确答案:A14、STM32F103ZET6芯片2.0V∽3.6V单一供电电源,具有上电复位功能(POR)A、正确B、错误正确答案:A15、STM32F103ZET6芯片内部集成了11个定时器A、正确B、错误正确答案:A16、从软件上看,嵌入式系统软件和通用计算机软件都可以划分为系统软件和应用软件两类A、正确B、错误正确答案:A17、S3C2410X有24个外部中断源A、正确B、错误正确答案:A18、使能时钟工作步骤是: 1、配置CPU主时钟的来源,以及主时钟的具体频率。
西电网院《嵌入式系统原理与开发》模拟试题1
![西电网院《嵌入式系统原理与开发》模拟试题1](https://img.taocdn.com/s3/m/925b27c7f61fb7360b4c65cb.png)
(1) 发展行业性的嵌入式硬件平台,制定行业标准。 (2) 随着相关技术的发展,SOC将成为应用主流。 (3) 发展功能更加强大的开发工具和嵌入式操作系统,支持复杂度越来越高的 嵌入式应用软件的开发。 (4) 面向网络互联的嵌入式系统成为必然趋势。 (5) 嵌入式系统向新的嵌入式计算模型方向发展。
)
A. NOR的读速度比NAND稍慢一些 B. NAND的写入速度比NOR慢很多
C. NAND的擦除速度远比NOR的慢 D.大多数写入操作需要先进行擦除操作
5. 下面哪个特点不属于USB设备的特点。(
)
(A) 串行通信方式 (C) 分HOST、DEVICE和HUB
(B)不可热拨插 (D)通信速率比RS232快
、________________。
8.为了提高的开发的效率,降低开发难度,提高重用性,经验告诉大家;
________________________是开发嵌入式系统软件的必由之路。 9.ARM7TDMI中,T表示支持16位Thumb指令集,D表示_____________,M表示内嵌乘法器 Multiplier,I表示________________,支持在线断点和调试。 10.A/D变换器工作原理可分_______________和_____________两种工作方式。
三. 名词解释(5X2分=10分) 1. RTOS_________
2. SOC------
3. DSP________
2
4. RSIC________
5. UML______
四. 简述题 (5X4分 共计20分) 1. 简述嵌入式系统的特点。
ARM体系结构与系统开发
![ARM体系结构与系统开发](https://img.taocdn.com/s3/m/b81a140f76c66137ee0619ec.png)
超级模式
(Supervisor)
பைடு நூலகம்多种特权模 变化
用户程序 运行模式
复位后 的缺省模式
主要完成各模式堆栈 的设置,注意不要进 入用户模式
一般为用户模式 User
调用主应用程序
当完成所有的系统初始化工作之后,就需要把程序流程转入 主应用程序。最常见的操作是:
IMPORT … B C_Entry C_Entry
因此,选择ARM还是Thumb指令,需要从存储器特性和系统性能要 求两个方面考虑。
二、基于ARM的嵌入式系统的设计要点--系统初始化过程(1)
基于ARM微处理器的系统一般为复杂的片上系统(SoC),这种复 杂系统的多数硬件模块都是可配置的,需要软件设置为特定的工作状 态,因此在用户的应用程序之前,需要有一些专门的代码完成对系统 的初始化。 由于这类代码直接面对ARM微处理器内核和硬件控制器,一般都 使用汇编语言完成。 初始化代码所完成的操作与具体的硬件平台相关,但一般包括如 下内容:
一、ARM体系结构简介(9)
9、指令系统(ARM or Thumb) 从ARM 体系架构V4T 以 后 , 新 增 了一套16位的指令集:Thumb。 Thumb指令集是ARM的一个子集。 两种指令集的性能分析如下: - 当系统数据总线宽度为32位时,ARM比Thumb有更好的性能表现。 - 当系统数据总线宽度为16/8位时,Thumb比ARM性能更好。 - 同样一段C代码,用Thumb指令编译的结果约为ARM的65%,同时具 有更低的运行功耗。
初始化堆栈(1)
由于ARM微处理器有 7 种运行状态,每一种状态的堆栈指针(SP) 都是独立的(其中System和User模式使用相同的SP)。因此,需要对 每一种模式的SP进行初始化。 采用的方法是:改变当前程序状态寄存器(CPSR)内的状态位, 使处理器切换到不同的状态,然后初始化SP。 但对User模式下SP的初始化应该放在最后,因为ARM微处理器进 入User模式后就无法在切换到其他模式了。
嵌入式3级填空题1
![嵌入式3级填空题1](https://img.taocdn.com/s3/m/4d384c898762caaedd33d4c5.png)
1.为提高SoC的设计效率,减少重复开发,通常大多以IP核为基础,在单个芯片上集成处理器、存储器和各种接口等组件,组成一个相当完整的计算机系统。
按照IC设计文件的类型,IP核通常分为三种:____【1】____核、固核和___【2】____核。
【解题思路】本题考查IP核的分类。
按照IC设计文件的类型,IP核通常分为三种:软核、固核和_硬核。
【参考答案及解析】【1】软;【2】硬。
2.目前数码相机中用于存储所拍摄相片的大多是____【3】____存储器,假设一台数码相机一次可连续拍摄65536色的1024 x 1024的彩色相片80张,数据压缩比平均是4,则它使用的存储器容量大约是___【4】____MB。
【解题思路】本题考查对嵌入式应用系统的典型例子--数码相机的了解,包括数字图像数据量的计算。
【参考答案及解析】Flash;当前数码相机中用于存储相片的大多是闪存卡,即Flash存储器;40;65536色的图像是16位的,所以数据量=1024 x1024 x16/8=2MB,压缩比为4,所以80张所占存储容量为80 x2/4=40MB。
3. 无线局域网(WLAN)是以太网与无线通信技术相结合的产物。
它借助无线电波进行数据传输,所采用的通信协议主要是____【5】____,数据传输速率可以达到11Mbps、54Mbps、___【6】_____Mbps甚至更高。
【解题思路】本题主要考查WLAN的通信协议以及数据传输速率。
【参考答案及解析】802.11;WLAN所采用的主要通信协议是802.11;108;数据传输速率可达到11 Mbps、54Mbps、108Mbps甚至更高4.经典ARM处理器有7种异常:主要包括复位RESET、未定义指令UND、软件中断SWI、指令预取中止PABT、数据访问中止DABT、外部中断请求IRQ以及___【7】_____,其中优先级最高的异常是____【8】____。
本题主要考查ARM处理器的7种异常及相应优先级。
计算机三级嵌入式系统开发技术机试模拟题2019年(2)_真题-无答案
![计算机三级嵌入式系统开发技术机试模拟题2019年(2)_真题-无答案](https://img.taocdn.com/s3/m/1b7b58b369eae009591bec69.png)
计算机三级(嵌入式系统开发技术)机试模拟题2019年(2)(总分100,考试时间120分钟)选择题1. 下面是关于嵌入式系统的叙述,其中错误的是( )。
A. 嵌入式系统是嵌入式计算机系统的简称B. 从应用角度来说,嵌入式系统可以理解为是一种控制、监视或协助设备、机器、工厂运行的装置C. 随着技术的进步和应用的拓展,嵌入式系统的内涵也还在发展和变化D. 人们日常使用的通用计算机(如个人计算机)是一种典型的嵌入式系统2. 下面关于嵌入式系统的叙述中,错误的是( )。
A. 嵌入式系统与具体应用紧密结合,具有很强的专用性B. GPS导航仪、数码相机等设备是嵌入式系统的典型应用C. 汽车、数控机床中的嵌入式系统要求具有很高的可靠性D. 嵌入式系统中的软件一般存放在硬盘中,用户可以方便地变更系统中的软件3. 下面关于嵌入式系统组成的叙述中,错误的是( )。
A. 嵌入式系统由硬件和软件两部分组成B. 嵌入式系统一般只能包含一个处理器,不采用多处理器组成系统C. 嵌入式系统中的存储器用于存储程序和数据D. 数据总线是嵌入式系统中各组件之间进行数据传输的一个传输通路4. 下面关于嵌入式处理芯片特点的叙述中,错误的是( )。
A. 嵌入式处理芯片一般支持实时处理B. 嵌入式处理芯片一般具有低功耗的特性C. 嵌入式处理芯片有多种产品类型,但不包括微处理器D. 嵌入式处理芯片一般集成了测试电路5. 下列各项中,不属于静态图像格式的是( )。
A. BMPB. APEC. JPEGD. GIF6. 下列术语中,并非用于描述数字图像参数的是( )。
A. 位平面数目B. 图像分辨率C. 像素深度D. 量化位数7. 下列关于数字媒体的描述中,不正确的是( )。
A. W A V是未经压缩的数字音频,其音质与CD相当B. 字符的形状用点阵法描述时,应在字型库中记录每一直线和曲线的端点及控制点的坐标C. UTF一8采用的是单字节可变长编码D. 数字视频的数据量可压缩几十倍甚至几百倍8. 下面关于通信的说法中,错误的是( )。
计算机三级(嵌入式系统开发技术)机试模拟试卷65(题后含答案及解析)
![计算机三级(嵌入式系统开发技术)机试模拟试卷65(题后含答案及解析)](https://img.taocdn.com/s3/m/0c2b5d2bf61fb7360a4c65cf.png)
计算机三级(嵌入式系统开发技术)机试模拟试卷65(题后含答案及解析)题型有:1. 选择题 2. 填空题 3. 综合题选择题1.片上系统(SoC)也称为系统级芯片。
下面关于SoC叙述中,错误的是( )。
A.SoC芯片中只有一个CPU或DSPB.SoC芯片可以分为通用SoC芯片和专用SoC芯片两大类C.专用SoC芯片可分为定制的嵌入式处理芯片和现场可编程嵌入式处理芯片两类D.FPGA芯片可以反复地编程、擦除、使用,在较短时间内就可完成电路的输入、编译、优化、仿真,直至芯片的制作正确答案:A解析:SoC芯片可以分为通用SoC芯片和专用SoC芯片两大类。
通用的SoC 芯片中可以只有一个CPU(或DSP),称为单核SoC,也可以包含多个CPU(或DSP),称为多核SoC,故本题选择A。
2.将ARM处理器R0中的一个字节的数据,存入由R1+4指示的内存区域,且地址自动更新,则使用的ARM指令是( )。
A.STR R0,[R1,#4]B.STRH R0,[R1,#4]!C.STRH R0,[R1,辫]D.STRB R0,[R1,#4]!正确答案:D解析:按题目要求需采用基址加变址寻址方式,字节数据存储指令用STRB。
故本题选择D。
3.基于ARM内核的嵌入式芯片中包含定时/计数组件,下面列出的( )不属于定时/计数组件。
A.ADCB.TimerC.RTCD.WDT正确答案:A解析:ARM芯片内部有多个定时计数组件,主要包括看门狗定时器(wDT)、Timer通用定时器、RTC、脉冲宽度调制器(PWM)。
而ADC是模数转换控制器。
故本题选择A。
4.下面关于USB接口的叙述中,错误的是( )。
A.USB支持热插拔B.USB 2.0是目前传输速率最高的USB版本C.USB接口提供了内置电源D.USB 2.0采用半双工差分方式传送信息正确答案:B解析:USB接口提供了内置电源,主机的USB接口向从设备提供电源;USB 总线接口支持设备的即插即用和热插拔功能,USB 2.0采用半双工差分方式传送信息,目前USB2.0的速度为480Mb/s,USB3.0达到5Gb/s即640MB /s,B项错误;故本题选择B。
全国计算机等级考试三嵌入式系统开发技术题库第12套
![全国计算机等级考试三嵌入式系统开发技术题库第12套](https://img.taocdn.com/s3/m/b93e3e40ccbff121dd3683f8.png)
全国计算机等级考试三嵌入式系统开发技术题库第12套work Information Technology Company.2020YEAR1. 嵌入式系统的应用极其广泛,下列设备:①洗衣机、②电饭煲、③服务器、④平板扫描仪、⑤路由器、⑥机顶盒、⑦巨型机、⑧POS机中,属于嵌入式系统应用的是:A) 除④和⑤之外B)除③和⑦之外C) 除⑤和⑦之外D) ①~⑧全部都是2. 嵌入式系统的软件大多存储在非易失性存储器中,即使断电也不会消失。
目前嵌入式系统使用最多的非易失性存储器是:A) Mask ROMB) Flash memoryC) SRAMD) SSD3. 下图是数字信号处理器(DSP)的典型应用方式,其中的①、②和③分别是:A) 模拟信号、DSP、数字信号B) 模拟信号、DSP、模拟信号C) 数字信号、DSP、数字信号D) 数字信号、DSP、模拟信号4. 片上系统(或系统级芯片)是目前广泛使用的一种嵌入式处理芯片,下面有关叙述中错误的是:A) 其英文缩写是SOC或SoC,它是电子设计自动化水平提高和大规模集成电路制造技术发展的成果B) 它已成为集成电路设计的发展趋势,现在许多嵌入式处理芯片都是片上系统C) 芯片中既包含处理器又包含存储器及外围电路,单个芯片就能实现数据的采集、转换、存储、处理和I/O等多种功能D) 智能手机已经广泛采用片上系统,平板电脑大多还使用传统的Intel处理器5. 在嵌入式系统(如数码相机)中,获取数字图像的过程大体分为四步,如下图所示,正确的处理步骤是:A) 取样、扫描、分色、量化B) 分色、量化、扫描、取样C) 扫描、分色、取样、量化D) 扫描、量化、取样、分色6. 数字音频的比特率(码率)指的是每秒钟的数据量,它与取样频率、量化位数、声道数目、使用的压缩编码方法等密切相关。
假设数字音频的比特率为32kb/s,其量化位数为8位,单声道,采用压缩编码,压缩比为2,那么取样频率是:A) 8 kHzB) 12 kHzC) 16 kHzD) 20 kHz7. 微波通信是利用频率为300MHz~300GHz电磁波进行的通信,它具有频带宽、容量大的特性,应用广泛。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于ARM的芯片多数为复杂的片上系统,这种复杂系统里的多数硬件模块都是可配置的,需要由软件来设置其需要的工作状态。
因此在用户的应用程序之前,需要由专门的一段代码来完成对系统的初始化。
由于这类代码直接面对处理器内核和硬件控制器进行编程,一般都是用汇编语言。
一般通用的内容包括:
中断向量表
初始化存储器系统
初始化堆栈
初始化有特殊要求的断口,设备
初始化用户程序执行环境
改变处理器模式
呼叫主应用程序
1. 中断向量表
ARM要求中断向量表必须放置在从0地址开始,连续8X4字节的空间内。
每当一个中断发生以后,ARM处理器便强制把PC指针置为向量表中对应中断类型的地址值。
因为每个中断只占据向量表中1个字的存储空间,只能放置一条ARM指令,使程序跳转到存储器的其他地方,再执行中断处理。
中断向量表的程序实现通常如下表示:
AREA Boot ,CODE, READONLY
ENTRY
B ResetHandler
B UndefHandler
B SWIHandler
B PreAbortHandler
B DataAbortHandler
B
B IRQHandler
B FIQHandler
其中关键字ENTRY是指定编译器保留这段代码,因为编译器可能会认为这是一段亢余代码而加以优化。
链接的时候要确保这段代码被链接在0地址处,并且作为整个程序的入口。
2. 初始化存储器系统
(1)存储器类型和时序配置
通常Flash和SRAM同属于静态存储器类型,可以合用同一个存储器端口;而DRAM因为有动态刷新和地址线复用等特性,通常配有专用的存储器端口。
存储器端口的接口时序优化是非常重要的,这会影响到整个系统的性能。
因为一般系统运行的速度瓶颈都存在于存储器访问,所以存储器访问时序应尽可能的快;而同时又要考虑到由此带来的稳定性问题。
(2)存储器地址分布
一种典型的情况是启动ROM的地址重映射。
3. 初始化堆栈
因为ARM有7种执行状态,每一种状态的堆栈指针寄存器(SP)都是独立的。
因此,对程序中需要用到的每一种模式都要给SP定义一个堆栈地址。
方法是改变状态寄存器内的状态位,使处理器切换到不同的状态,让后给SP赋值。
注意:不要切换到User模式进行User 模式的堆栈设置,因为进入User模式后就不能再操作CPSR回到别的模式了,可能会对接下去的程序执行造成影响。
这是一段堆栈初始化的代码示例,其中只定义了三种模式的SP指针:
MRS R0,CPSR
BIC R0,R0,#MODEMASK 安全起见,屏蔽模式位以外的其他位
ORR R1,R0,#IRQMODE
MSR CPSR_cxfs,R1
LDR SP,=UndefStack
ORR R1,R0,#FIQMODE
MSR CPSR_cxsf,R1
LDR SP,=FIQStack
ORR R1,R0,#SVCMODE
MSR CPSR_cxsf,R1
LDR SP,=SVCStack
4. 初始化有特殊要求的端口,设备
5. 初始化应用程序执行环境
映像一开始总是存储在ROM/Flash里面的,其RO部分即可以在ROM/Flash里面执行,也可以转移到速度更快的RAM中执行;而RW和ZI这两部分是必须转移到可写的RAM里去。
所谓应用程序执行环境的初始化,就是完成必要的从ROM到RAM的数据传输和内容清零。
下面是在ADS下,一种常用存储器模型的直接实现:
LDR r0,=|Image$$RO$$Limit| ;得到RW数据源的起始地址
LDR r1,=|Image$$RW$$Base| ;RW区在RAM里的执行区起始地址
LDR r2,=|Image$$ZI$$Base| ;ZI区在RAM里面的起始地址
CMP r0,r1 ;比较它们是否相等
BEQ %F1
0 CMP r1,r3
LDRCC r2,[r0],#4
STRCC r2,[r1],#4
BCC %B0
1 LDR r1,=|Image$$ZI$$Limit|
MOV r2,#0
2 CMP r3,r1
STRCC r2,[r3],#4
BCC %B2
程序实现了RW数据的拷贝和ZI区域的清零功能。
其中引用到的4个符号是由链接器第一输出的。
|Image$$RO$$Limit|:表示RO区末地址后面的地址,即RW数据源的起始地址
|Image$$RW$$Base|:RW区在RAM里的执行区起始地址,也就是编译器选项RW_Base 指定的地址
|Image$$ZI$$Base|:ZI区在RAM里面的起始地址
|Image$$ZI$$Limit|:ZI区在RAM里面的结束地址后面的一个地址
程序先把ROM里|Image$$RO$$Limt|开始的RW初始数据拷贝到RAM里面|Image$$RW$$Base|开始的地址,当RAM这边的目标地址到达|Image$$ZI$$Base|后就表
示RW区的结束和ZI区的开始,接下去就对这片ZI区进行清零操作,直到遇到结束地址|Image $$ZI$$Limit|
6. 改变处理器模式
因为在初始化过程中,许多操作需要在特权模式下才能进行(比如对CPSR的修改),所以要特别注意不能过早的进入用户模式。
内核级的中断使能也可以考虑在这一步进行。
如果系统中另外存在一个专门的中断控制器,这么做总是安全的。
7. 呼叫主应用程序
当所有的系统初始化工作完成之后,就需要把程序流程转入主应用程序。
最简单的一种情况是:
IMPORT main
B main
直接从启动代码跳转到应用程序的主函数入口,当然主函数名字可以由用户随便定义。
在ARM ADS环境中,还另外提供了一套系统级的呼叫机制。
IMPORT __main
B __main
__main()是编译系统提供的一个函数,负责完成库函数的初始化和初始化应用程序执行环境,最后自动跳转到main()函数。