▷ 嵌入式系统设计师工作总结 ◁
(1)系统内核小。
嵌入式系统大多数是应用于小型的电子装置,系统资源是相对有限的,内核要相对小于传统的操作系统。
(2)强实时性。
系统和硬件的结合非常紧密,就必须使用多任务的操作系统。嵌入式系统可以没有操作系统直接在芯片上运行;一般要针对硬件进行系统的移植,即使在同一品牌产品中也需要根据系统硬件的变化和增减不断进行修改。
(3)专用性强。
嵌入式系统的个性化很强,一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,软件系统和硬件的结合非常紧密,即使在同一系列产品中也需要根据系统硬件的变化不断的进行修改。
(4)统一的接口。
嵌入式应用软件的设计者提供统一的服务接口,就必须约定嵌入式系统提供的接口,软件要求固态存储,以提高速度;要求高质量和高可靠性。
(5)操作简便、易学。
嵌入式操作系统所提供的GuI图形界面,在这些系统中,计算机用于总体控制和监视,而不是对单个设备直接控制。
(6)网络功能强大。
嵌入式操作系统对TCP/IP等协议都支持,网络功能很强大为各种移动的计算设备预留接口。
(7)强稳定性。
嵌入式操作系统运行时就不再要求人进行过多的干预,在这种情况下,对系统管理员提出了很高的要求。嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中。
(8)固化代码。
在嵌入式系统和具体应用有机地结合在一起,所以EOS的文件管理功能也较容易被拆卸。
▷ 嵌入式系统设计师工作总结 ◁
嵌入式系统通常由嵌入式微处理器、外围硬件设备、嵌入式系统以及用户应用软件等组成。
从体系结构上看,嵌入式系统的构架一般包括了嵌入式处理器、支撑硬件、嵌入式软件这三部分。
嵌入式处理器和一些外围设备构成硬件平台。嵌入式处理器通常是单片机或微控制器。嵌入式应用程序支撑软件平台。嵌入式软件包括支撑硬件的驱动程序、操作系统、支撑软件等。
一般不同的系统需要设计不同的嵌入式应用程序,该程序利用操作系统完成特定功能的嵌入式应用,都运行于操作系统之上。
▷ 嵌入式系统设计师工作总结 ◁
简单定义:嵌入到对象体系中的专用计算机系统。
三要素:嵌入式系统的三个基本要素是嵌入性、专用性与计算机系统。
(1)嵌入性是把软件嵌入到Flash存储器中,
(2)专用性是指针对某个具体应用领域和场合,量体裁衣式的定制适用该场合的专用系统,
(3)计算机系统是指必须具有计算机系统的组成,核心是计算机系统。
三个要素决定了嵌入式系统是嵌入到对象体系中的一种专用的计算机系统。
嵌入式系统設計与开发原则与步驟
1.设计与开发原则
既然嵌入式系统是嵌入到对象体系中的专用的计算机系统,因此嵌入式系统设计的基本原则:物尽其用。这一原则表明,嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,以最小成本实现更高的.性能,同时尽可能采用高效率的设计算法,以提高系统的整体性能,换句话说同,“物尽其用”就是“够用就好”,以最高性价比来设计嵌入式应用系统。
2、设计与开发步骤
嵌入式系统的设计步骤包括需求分析、体系结构设计、硬件设计,软件设计,执行机构设计、系统集成和系统测试。各个阶段之间往往要求不断的修改,直至完成最终设计目标。
▷ 嵌入式系统设计师工作总结 ◁
1.1 嵌入式微控制器(Microcontroller Unit,也称MCU)
单片机就属于嵌入式微控制器,单片机机心由ROM(或EPROM)、总线、总线逻辑、定时器(或计数器)、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等组成,它属于单片式设计,体积小、功耗低、成本小、可靠性高的特点,该类型的品种、数量都是最多的,目前嵌入式系统中,MCU在70年代就已经研制出来,但由于以上的特点,直到现在,它依然占有70%的市场份额。
1.2 嵌入式微处理器(Micro Processor Unit,又称MPU)
嵌入式微处理器是根据计算机的CPU演变来的,然而与计算机处理器不同的是,它要求性能高、功耗低、体积小、成本小、重量轻、可靠性高的特点,以满足嵌入式环境下的特殊需求,如ARM系列广泛应用于手机终端,PowerPC系列广泛应用于航空系统。
1.3 嵌入式DSP处理器(Embedded Digital Signal Processor,,又称EDSP)
DSP的算法理论在70年代就已经出现,那时还没有专门的DSP处理器,只能用MPU的分立元件实现,然而处理的速度无法满足DSP算法要求,1982年,首枚DSP处理器诞生,它是专门用于处理信号的处理器,以信号处理的特殊要求在系统结构处理、算法上进行专门设计的处理器,它具有很高的编译效果与执行速度的功能。80年代中期,诞生出基于CMOS工艺的DSP处理器,它的储容量和运算速度与前代相比都有飞跃性的提高、现在随着DSP处理器的不断发展,它的集成度更高、应用范围更广。
1.4 嵌入片上系统(System On Chip,又称SOC)
嵌入片上系统追求包容性最强的集成器件,它使现了软硬件无缝结合,在处理器片上直接嵌入操作系统的代码模块,因此具有很高的综合性。使用SOC,SOC一般是专用的芯片,它具有系统简洁、体积小、功耗小、可靠性高、生产效率高的特点。
▷ 嵌入式系统设计师工作总结 ◁
摘要:描述BACnet协议的体系结构,分析BACnet控制器的功能,论证基于嵌入式Linux开发BACnet控制器的可行性;给出BACnet控制器软件的体系结构及其软件设计。关键词:BACnet控制器楼宇控制设备嵌入式Linux体系结构
BACnet协议是一种为楼宇自动控制网络所制定的数据通信协议。该协议已成为美国国家标准(ANSI/ASHRAE135-1995)和欧盟标准草案,并在2000年成为草案级国际标准。其中定义了23个对象和42个服务,以及5个数据链路的局域网底层网络结构。1999年1月正式发布了附录135a,成为标准的附件J,确定BACnet/IP技术的第6个局域网互联的底层技术。
1BACnet网络体系结构和控制器功能分析
1.1BACnet网络体系结构
BACnet建立在包含四个层次的简化分层体系结构上。这四层相当于OSI模型中的物理层、数据链路层、网络层和应用层。BACnet标准定义自已的应用层和简单的网络层,对于其数据链路层和物理层,提供了五种选择方案,在附件J-BACnet/IP中加入了对IP的支持。
图1是BACnet/IP网络体系结构层次图。BACnet没有对应于OSI的第四、五、六层,也就是说,BACnet没有传输层、会话层和表示层。BACnet网络层屏蔽了底层采用的网络技术的差异。
1.2BACnet控制器的功能分析
在一个BACnet控制网络中,一个BACnet控制器通常和多个控制设备直接相连,负责监控这些设备的运行。概括起来说,BACnet控制器应该具有三个方面的功能。①通信功能。BACnet控制器是一个网络控制器,所以它必须能够发送和接收BACnet报文,和其它BACnet设备进行通信。②监视功能。BACnet控制器要监视与它直接相连的控制设备的状态。这样,它就要提供数据结构来描述这种状态。在BACnet协议中,描述这些状态是用BACnet对象。BACnet协议提供了42个标准对象。③控制功能。BACnet控制器要控制与它相边听设备的运行,不仅要使这些设备之间具有互动能力,而且要使这些设备和系统的远程设备能够互动,所以在BACnet控制器中应该有逻辑控制模块来实现这一功能。值得注意的是,不同时间、不同地点,BACnet控制器中的控制逻辑可能是不同的,因而在BACnet控制器中要提供改变控制流程的工具。这种工具最好是图形界面的,以方便用户使用。
图1BACnet体系结构层次图
2基于嵌入式Linux开发软件的可行性
①Linux是一个和Unix相似、以核心为基础的、完全内存保护、多任务多进程的操作系统。在开发过程中,可以根据实际需要,通过内核构筑工具对Linux内核功能进行裁减,做成体积很小的嵌入式操作系统,可使其达到500KB或更小的规模。
②在实时性应用方面,通用的Linux在强实时性应用方面存在欠缺。Linux调度程序原来主要是针对台式计算机操作系统。重点考虑的是在应用程序的吞吐量上,即采用了一种“公平共享”的策略保证所有进程得到平均的CPU时间。在楼宇控制设备这种弱实时性应用中,如果采用先进的内核机制、进程调度算法和较小粒度的系统时间(10ms),是可以满足弱实时应用要求的,因此,Linux可用于楼宇自动化系统。
③Linux是源代码开放的操作系统,可以很容易得到内核的接口和源码,我们可以把BACnet的协议实现集成到内核中去。
④Linux是自由软件。在GNUGPL许可证协议下,可以自由使用、修改和发布,所以采用嵌入式Linux可以降低BACnet控制器的成本。
3BACnet控制器软件的实现
3.1BACnet控制器软件的体系结构
基于BACnet协议的体系结构和上面对BACnet控制器功能的分析,可以得出BACnet控制器软件包括以下几个模块:BACnet协议栈、BACnet对象和服务、底层驱动模块、应用控制逻辑模块和控制配置模块。
对Linux内核中不必要的模块加以裁减,并把BACnet控制器的一些模块嵌入到Linux内核,最终的开发体系结构如图2所示。
3.2BACnet协议栈的实现
BACnet协议栈报文的封装流程如图3所示。
▷ 嵌入式系统设计师工作总结 ◁
2016年嵌入式系统复习试题及答案
一、填空题:
1、试列举三种主流的嵌入式处理器:( ARM )、( MIPS )、(PowerPC)。
2、ARM处理器共有(37)个寄存器,其中包括(31个通用寄存器)和(6个状态寄存器)。
3、寄存器R13在ARM指令中(堆栈指针SP )。R14也称(程序连接寄存器LR)在程序里的作用是(程序计数器PC的备份)。当发生中断或异常时,对应分组寄存器分别是(R14_svc、R14_irq、R14_fiq、R14_abt和R14_und用来保存R15的返回值)。
4、ARM微处理器支持两种指令集:(ARM)和(Thumb)。
5、寄存器R15用作(程序计数器PC)。该寄存器在ARM状态下,(位[1:0]为00),位[31:2]用于保存PC;在Thumb状态下,(位[0]为0),位[31:1]用于保存PC。
6、CPSR用作( 状态寄存器 ),CPSR可在任何运行模式下被访问。每一种运行模式下又都有一个专用的物理状态寄存器,称为(程序状态保存寄存器SPSR)。
7、Thumb状态下的寄存器集是ARM状态下寄存器集的一个子集,程序可以直接访问的通用寄存器是(R0—R7,PC,SP,LR,CPSR)。
8、ARM指令中条件执行功能是通过( 指令中添加条件码)来实现的,包含的条件码位于指令的最高(四)位。
9、试列举五种以上常见的嵌入式操作系统:(μC/OS-II)、(Vxworks)、(WinCE)、(Linux/μCLinux)、(PalmOS)。
10、计算机结构中,哈佛结构和冯?诺依曼结构的主要区别是(指令与数据分开),ARM7采用(冯?诺依曼结构),ARM9采用(哈佛结构)。
11、ARM处理器采用(Thumb指令)操作来访问SFR。
12、在ARM汇编语言程序设计中,语句一般是由(指令操作码)、(指令的条件码)、(目标寄存器编码)和(包含第一个操作数的寄存器编码)组成。
二、名词解释:
ARM处理器:Advanced RISC Machine。先进的RISC指令集处理器。
交叉编译:在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,这个编译过程就叫交叉编译。
异常:是指CPU在执行指令时出现的错误,即不正常的情况。异常是与当前所执行的程序有关的。如存取数据或指令错误、计算结果溢出等。
大端格式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。
小端格式:低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。
寻址方式:处理器根据指令中给出的(地址)信息,寻找操作数(物理地址)的方式。
嵌入式系统:广义上:凡是不用于通用目的的可编程计算机设备,就可以算是嵌入式计算机系统。狭义上而言,嵌入式系统是指以应用为核心,以计算机技术为基础,软硬件可裁剪,对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
GNU:GNU(GNU’s Not Unix),它的目标是建立可自由发布和可移植的类Unix操作系统。
伪指令:是汇编语言程序里的特殊指令助记符,在汇编时被合适的机器指令替代。
伪操作:为汇编程序所用,在源程序进行汇编时由汇编程序处理,只在汇编过程起作用,不参与程序运行。
RTOS :实时系统,能够对外部事件做出及时响应的系统。
三、简答题:
1、 简述采用RISC架构的ARM微处理器的特点。
a.采用固定长度的指令格式,指令规整,简单,基本寻址2~3种
b.使用单周期指令,便于流水线操作
c.大量使用寄存器,提高指令的执行效率
d.所有的指令都可以根据前面的执行后,决定是否执行从而提高指令的执行效率
e.可以加载/存储指令,批量传输数据,以提高数据的传输效率
2、 选择嵌入式微处理器时,应考虑那些因素?
调查市场上已有的CPU供应商。
CPU的处理速度
技术指标。
处理器的低功耗。
处理器的软件支持工具。
处理器是否内置调试工具。
处理器供应商是否提供评估板
片内存储容量
3、 若允许FIQ、IRQ中断,CPSR如何设置?
FIQ: CPSR[4:0]=0B10001 IRQ: CPSR[4:0]=0B10010
CPSR[5]=0
CPSR[6]=0
CPSR[7]=0
4、 举例说明ARM的各种寻址方式。
寄存器寻址:LDR R1,R2
寄存器间接寻址:LDR R1,[R2]
寄存器偏移寻址:LDR R1,[R2,-R4,LSL#3]
立即寻址:LDR,R3,#34
多寄存寻址:LDMIA R0,{R1,R3,R4,R5}
5、 对比说明ADR、ADRL与LDR的区别与联系。
ADR:小范围的地址读取伪指令。
ADRL:中等范围的地址读取伪指令。
LDR:大范围的地址读取伪指令。
ADR伪指令功能:将基于PC相对偏移的地址值或基于寄存器相对偏移的地址值读取到寄存器中。
ADRL伪指令功能:将基于PC相对偏移的地址值或基于寄存器相对偏移的地址值读取到寄存器中,比ADR伪指令可以读取更大范围的地址。
LDR伪指令功能:用于加载32位立即数或一个地址值到指定的寄存器。
6、 比较ARM920T和ARM720T的主要异同。
ARM9 5级流水线 独立的指令总线哈佛结构
ARM7 3级流水线 数据与指令一起 冯·诺依曼结构
8、 简述S3C2410 Nand flash存储器的启动过程。
(1)完成复位
(2)如果自动启动模式使能,NAND Flash存储器的前4KB自动复制到Steppingstone内部缓冲器中
(3)Steppingstone映射到nGCS0
(4)CPU在Steppingstone的4KB内部缓冲器中开始执行启动代码
9、 请从广义和狭义两个方面简述嵌入式系统的含义。
答案:嵌入式系统:Embedded System
广义上:凡是不用于通用目的的可编程计算机设备,就可以算是嵌入式计算机系统。
狭义上而言,嵌入式系统是指以应用为核心,以计算机技术为基础,软硬件可裁剪,对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
10、简述Bootloader启动过程。
1、第一阶段
(1)、基本的硬件设备初始化
(2)、为阶段2代码准备RAM空间
(3)、拷贝阶段2代码到RAM空间
(4)、设置好堆栈
(5)、跳转到阶段2的C程序入口点
2、第二阶段
(1)、初始化本阶段要使用到的硬件
(2)、检测系统内存映射(memory map)
(3)、将kernel和根文件系统映像从flash读到RAM空间
(4)、为kernel设置启动参数
(5)、调用内核
12、ARM7指令是几级流水线,各阶级执行什么操作?
ARM7的三级流水线
1取指:从程序存储器中取指令,放入指令流水线。(占用存储器访问操作)
2译码:指令译码。(占用译码逻辑)
3执行:执行指令/读写REG。(占用ALU及数据路径)
13、请简述嵌入式软件Bootloader的两种工作模式。
启动加载模式:启动加载模式称为“自举”(Autonomous)模式。即Bootloader从目标机上的某个固态存储设备上将操作系统加载到 RAM 中运行,整个过程并没有用户的介入。启动加载模式是 Bootloader的正常工作模式,在嵌入式产品发布的时侯,Bootloader必须工作在这种模式下。
下载模式:在这种模式下,目标机上的Bootloader将通过串口连接或网络连接等通信手段从主机下载文件。下载内容及存储:主要是下载内核映像和根文件系统映像等。从主机下载的文件通常首先被Bootloader保存到目标机的RAM中,然后再被 Bootloader写到目标机上的FLASH 类固态存储设备中。
14、写出不少于12类嵌入式产品中的常用接口。
UART接口、SPI接口、I2C接口、ADC和触摸屏接口、USB接口、以太网接口、外存接口、LCD接口、时钟接口、PWM接口、中断接口、JTAG接口、VGA接口、音频接口
15、简述ARM9处理器的7种运行模式。
1、用户模式(usr):非特权模式,大部分任务执行在这种模式。——正常程序执行的模式
2、快速中断模式(fiq):当一个高优先级(fast)中断产生时将会进入这种模式。——高速数据传输或通道处理
3、外部中断模式(irq):当一个低优先级(normal)中断产生时将会进入这种模式。——通常的中断处理
4、管理模式(svc):当复位或软中断指令执行时将会进入这种模式。——供操作系统使用的一种保护模式
5、中止模式(abt):当存取异常时将会进入这种模式。——虚拟存储及存储保护
6、未定义模式(und):当执行未定义指令时会进入这种模式——软件仿真硬件协处理器
7、系统模式(sys):供需要访问系统资源的操作系统任务使用——特权级的操作系统任务
16、ARM9处理器的寻址方式有那些?
立即寻址、寄存器寻址、寄存器间接寻址、基址寻址、堆栈寻址 、块拷贝寻址、相对寻址
17、ARM9有哪些处理器模式?哪些是特权模式?哪些是异常模式?
异常模式:除用户模式、系统模式之外的五种模式称为异常模式。特点:以各自的中断或异常方式进入,并且处理各自的中断或异常。
特权模式:除用户模式之外的工作模式又称为特权模式 特点:应用程序可以访问所有的系统资源,可以任意地进行处理器模式的切换
18、ARM7在ARM状态下有多少个寄存器?通常堆栈指针使用哪个寄存器?连接寄存器LR有什么功能?
有37个32位的寄存器其中31个为通用寄存器;6个为状态寄存器。
R13:寄存器R13在ARM指令中常用作堆栈指针SP。而在Thumb指令集中,某些指令强制性的要求使用R13作为堆栈指针。
R14:寄存器R14也称作子程序链接寄存器(Subroutine Link Register)或链接寄存器LR。当执行BL子程序调用指令时,R14中得到R15(程序计数器PC)的.备份。其他情况下,R14用作通用寄存器。
19、见28
20、Linux的主要特点有那些?
开放性、多用户、多任务、良好的用户界面、设备独立性、丰富的网络功能、可靠的安全系统、良好的可移植性。
21、常用的Bootloader有那些?
1、vivi
2、RedBoot
3、U-Boot
22、Makefile和Make各实现什么功能?
Makefile文件内容 按照规则,对系统中本目录下的文件(.c、.s、.o、.h、.lib等)根据相互关系和要求进行组织,设定各自的编译方法,指定所生成的目标。 Makefile是一种文本格式文件。
Make是Makefile文件的解释器
Make对Makefile文件解释后,生成Linux的shell命令和gcc编译命令,接着对命令执行,最终生成目标文件。
Makefile是工程系统编译批处理文件。
23、Linux文件系统目录树结构是怎样的?
Linux文件系统是一个目录树结构,最上层是根目录,其他的所有目录都是从根目录出发而生成的。Linux下,任何一个目录都可以是一个分区。因此,在分区时,必须将一个分区安装在树根下面。Linux不仅将分区安装为一个目录,而且还将所有的硬件设备都安装成一个个设备文件。对设备的操作是通过文件的操作完成的。
24、CPSR各位的含义及作用。
31 30 29 28 27 … 8 7 6 5 4 3 2 1 0
N Z C V (保留) I F T M4 M3 M2 M1 M0
1、条件码标志位(保存ALU中的当前操作信息)
N:正负号/大小 标志位
Z:零标志位
C:进位/借位/移出位
V:溢出标志位
2、控制位
I、F中断控制位——控制允许和禁止中断
T控制(标志)位——反映处理器的运行状态
▷ 嵌入式系统设计师工作总结 ◁
2.1 系统软件操作平台
操作系统是一种在计算机上运行的软件。它的主要任务是管理计算机上的系统资源,为用户提供使用计算机及其外部设备的接口。它存在的目的是为了管理所有硬件资源,并且提供应用软件一个合适的操作环境。
Linux作为嵌入式操作系统是完全可行的。因为Linux提供了完成嵌入功能的基本内核和所需要的所有用户界面,能处理嵌入式任务和用户界面。将Linux看作是连续的统一体,从一个具有内存管理、任务切换和时间服务及其它分拆的微内核到完整的服务器,支持所有的文件系统和网络服务。
嵌入式Linux系统需要下面三个基本元素:系统引导工具(用于机器加电后的系统定位引导)、Linux微内核(内存管理、 程序管理)、初始化进程。但如果要它成为完整的操作系统并且继续保持小型化,还必须加上硬件驱动程序、硬件接口程序和应用程序组。
Linux是基于GNU的C编译器,作为GNU工具链的一部分,与gdb源调试器一起工作的。它提供了开发嵌入式Linux系统的所有软件工具。
2.2 系统硬件平台
在选择硬件时,常由于缺乏完整或精确的信息而使硬件选择成为复杂且困难的工作。现在比较流行的硬件平台有Intel公司的StrongARM 系列,Motorola公司的DragonBall系列,NEC公司的VR系列,Hitachi公司的SH3、SH4系列等等。选定硬件平台前,首先要确定系统的应用功能和所需要的速度,并制定好外接设备和接口标准。这样才能准确地定位所需要的硬件方案,得到性价比最高的系统。
▷ 嵌入式系统设计师工作总结 ◁
一、填空题(每空2分,共18分)
1、PC机开机的初始化工作一般由BIOS完成,而嵌入式系统的.初始化工作一般由完成。
2、ARM内核三级流水线机制是指指令运行过程中经过的、译码、执行三个阶段。
3、ARM寄存器SPSR被称为寄存器。
4、uClinux与标准Linux的最大区别在于。 5、嵌入式系统是以应用为中心、以为基础、软硬件可、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
6、ARM的数据存取指令Load/Store是唯一用于寄存器和存储器之间进行的指令。
7、µC/OS中,为保护任务之间的共享数据和提供任务之间的通信,提供了操作系统任务间通信方法有:、邮箱、消息队列,事件标志。
二、单项选择题(每题2分,共24分)
1、下列哪一项不属于嵌入式系统软件结构一般包含的四个层面。( )
A、 嵌入式处理器 B、 实时操作系统(RTOS) D、 实际应用程序层 C、 应用程序接口(API)层
2、一条ARM数据处理指令,例如“ADD R0,R1,#immed”中使用的立即数 #immed 是有一定限制的,下列立即
数表示中合法的是( )。 A、0x00001234 C、0x0000F008 D、 0x F080000
3、μCOS-II操作系统不属于( )。
A、RTOS B、占先式实时操作系统
-
好拿网(Hn373.cOm)精选干货:
- 信息流设计师工作总结 | 服装设计师工作总结 | 园林设计师助理工作总结 | 设计师助理转正报告 | 嵌入式系统设计师工作总结 | 嵌入式系统设计师工作总结
D、嵌入式实时操作系统 C、非占先式实时操作系统
4、 ARM汇编语句“ADD R0, R2, R3, LSL#1”的作用是( A )。
B、 R0 =( R2<< 1) + R3
C、 R3= R0+ (R2 << 1)
D、 (R3 << 1)= R0+ R2
5、ARM寄存器组有( D )个寄存器。
A、7
C、6 B、32 D、37
6、 每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是( D )。
A、 嵌入式Linux提供了完善的网络技术支持;
B、 CLinux是专门为没有MMU的ARM芯片开发的;
C、 C/OS-Ⅱ操作系统是一种实时操作系统(RTOS);
7、存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为( D )。
A、0x21 C、0x65
B、0x68 D、0x02
8、下列不是嵌入式系统的特点的是( C )
A、嵌入式系统需要专用开发工具和方法进行设计。
B、嵌入式系统是技术密集、资金密集、高度分散、不断创新的知识集成系统。
D、嵌入式系统通常是面向特定任务的,而不同于一般通用PC计算平台,是“专用”的计算机系统 9、寄存器R15除了可以做通用寄存器外,还可以做( A )
A、 程序计数器
B、 链接寄存器 D、 基址寄存器
C、 堆栈指针寄存器
10、若R1=2000H,(2000H)=0x28,(2008H)=0x87,则执行指令LDR R0,[R1,#8]!后R0的值为( D )。
A、 0x2000 C、 0x2008
B、 0x28
D、 0x87
11、FIQ中断的入口地址是( A )。
A、0x0000001C C、0x00000018
B、0x00000008 D、0x00000014
12、ARM指令集是( B )位的。
A、 16 C、 8
B、 32 D、 24
三、判断题(每题2分,共14分)
1、若定义任务task1的优先级为12,则不能再定义其他任务的优先级也为12。
( T ) ( ) ( F ) ( T ) ( T ) ( T ) ( T )
2、ARM处理器在未定义模式下可以处理存储器故障,实现虚拟存储器和存储器保护。 3、μCOS-II操作系统中移植成功后即可使用文件系统。
4、在ARM的数据处理指令中,大多数均可在指令助记符后加S来设置状态寄存器的条件码。 5、ARM和Thumb之间状态的切换不影响处理器的模式或寄存器的内容。
6、当操作数寄存器Rm的状态位bit[0]为1时,执行BX Rm指令就可从ARM状态进入Thumb状态。 7、ARM处理器结构体系中具有T变种的处理器核可以工作在ARM状态和Thumb状态。
四、简答题(共16分)
1、ARM异常发生时,ARM内核对异常的响应过程是怎样的、 (4分) 1、(4分)
答:1,保存CPSR到SPSR_
以进行模式切换,根据需要,设置IRQ和FIQ中断屏蔽位 3,保存异常返回地址到R14_
2、什么是BootLoader、主要有几种工作模式及主要功能是什么、 (6分) 答:简单说来,Bootloader就是操作系统内核运行的一段小程序,完成进行初始化系统硬件设置的任务,包括CPU、SDRRAM、Flash、串口等初始化,时钟的设置、存储器的映射。
分为启动加载模式和下载模式。
(1)启动加载(Boot laoding)模式又称为“自主”(Autonomous)模式,是指 Bootloader 从目标机上的某个固态存储设备上将操作系统加载到 RAM 中运行,整个过程并没有用户的介入。
(2)在下载模式下,目标机上的 Bootloader 将先通过串口连接或网络连接等通信手段从宿主机下载文件。 3、S3C44B0的存储系统中,0xc000000和0xc080000的含义是什么、它们之间的512kbyte空间做什么用、 (6分) 答:0xC000000是 SDRAM的起始地址,系统的程序存储空间从0xC080000开始。512Kbyte的空间划分出来,作为系统的LCD显示缓冲区使用(更新其中的数据,就可以更新LCD的显示)。
▷ 嵌入式系统设计师工作总结 ◁
嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,根据英国电气工程师协会( U.K. Institution of Electrical Engineer)的定义,嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的设备。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。嵌入式系统通常进行大量生产,所以单个的成本节约,能够随着产量进行成百上千的放大。
嵌入式系统是用来控制或者监视机器、装置、工厂等大规模设备的系统。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。
嵌入式系统的核心是由一个或几个预先编程好以用来执行少数几项任务的微处理器或者单片机组成。与通用计算机能够运行用户选择的软件不同,嵌入式系统上的软件通常是暂时不变的;所以经常称为“固件”。
联网:
随着医疗电子、智能家居、物流管理和电力控制等方面的不断风靡,嵌入式系统利用自身积累的底蕴经验,重视和把握这个机会,想办法在已经成熟的平台和产品基础上与应用传感单元的结合,扩展物联和感知的`支持能力,发掘某种领域物联网应用。作为物联网重要技术组成的嵌入式系统,嵌入式系统的视角有助于深刻地、全面地理解物联网的本质。
这有两层意思:第一,物联网的核心仍然是互联网,是在互联网基础上的延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信,必须具备嵌入式系统构建的智能终端。因此,物联网系统是通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物品与互联网相连接,进行信息交换和通信的系统架构。
物联网不仅仅提供了传感器的连接,其本身也具有智能处理的能力,能够对物体实施智能控制,这就是我们嵌入式系统所能做到的。诚然,物联网将传感器和智能处理相结合,利用云计算、模式识别等各种智能技术,扩充其应用领域。从传感器获得的海量信息中分析、加工和处理出有意义的数据,以适应不同用户的不同需求,发现新的应用领域和应用模式。
▷ 嵌入式系统设计师工作总结 ◁
摘 要:近年来,信息技术和计算机技术的发展越来越快,已经广泛应用在社会生产的各个领域,嵌入式系统是信息处理技术和计算机技术相结合的产物,基于ARM嵌入式软硬件系统有系统精炼简洁、针对性强、功能强大、程序质量高、系统可靠性强等特点,下面就基于ARM的嵌入式软硬件系统设计进行分析。
关键词:ARM;嵌入式软硬件系统;设计
随着计算机技术和信息处理技术的飞速发展,嵌入式软硬件系统在社会各个领域的应用越来越广泛。基于ARM的嵌入式软硬件系统是一种比较特殊的计算机系统,具有系统精炼简洁、针对性强、功能强大、程序质量高、系统可靠性强等特点,能极大的提高系统处理效率。
1 .基于ARM嵌入式软硬件系统的理论概述
1.1 ARM架构
ARM是一种精简的指令集机器,基于ARM架构的产品具有功耗小、质量优越、价格低廉的特点,如RISC处理器,在教育多媒体、嵌入式控制、DSP等领域中有十分广泛的应用。基于ARM体系结构的32位嵌入式RISC微处理器结构具有良好的节能效果,特别适合移动通讯领域设计。
1.2 嵌入式系统
嵌入式系统主要由输入软件、处理器、存储器、输出软件等构成,其中处理器是嵌入式系统的关键部位,目前,全球共有上千种嵌入式处理器,并且每种处理器都有自身的优势及不足。对嵌入式系统而言,处理器的关键特性是性能高、能耗小、成本低;存储器是嵌入式系统的另一大重要部分,其稳定性及容量大小对嵌入式系统的正常运行有很大的影响,因此,在进行嵌入式系统设计时,要选择与嵌入式系统处理器相匹配的存储器,从而确保嵌入式系统的正常运行。
2 .基于ARM的嵌入式软硬件系统设计
在嵌入式系统中,系统硬件是系统软件和程序运行、操作的基础,只有确保硬件设计的合理性,才能为嵌入式系统的正常运行提供保障,下面就嵌入式系统硬件设计及软件设计进行分析。
2.1 硬件设计
2.1.1 处理器设计
ARM嵌入式处理器具有体积小、消耗资源少、质量好等特点,因此,在各种网络产品以及数字产品中有十分广泛的应用。处理器是嵌入式系统正常运行的关键部分,在进行嵌入式系统出处理器设计时,必须确保其综合性能以及质量符合相关规定,并且要将处理器冗余部分去除,从而有效地提高系统的运行性能。
2.1.2 外围接口设计
在进行嵌入式处理系统硬件设计时,要选择合理的器件,确保各个器件之间的良好连接,为各器件之间的良好配合提供保障,提高系统硬件的有效性。在进行嵌入式系统外围接口设计时,要保证外围接口的灵活多变,并且外围接口要符合嵌入式系统小型化的特点,只有这样才能为系统的灵活性、稳定性、可靠性提供保障。对于嵌入式系统,要实现外围接口和处理器之间的无缝连接,并简化外围电路,这样不仅能减小整个系统的体积,还能有效地降低系统的设计成本。
2.1.3 针对性设计
在进行嵌入式系统设计时,需要根据项目的实际情况以及用户的实际需求进行,因此,整个设计过程要针对其设计目标开展,只有这样才能为嵌入式系统的设计提供指导。由于系统设计是一个长期性工作,因此,在设计过程中,设计人员要对软件更新、系统升级等因素进行充分考虑,并在针对性设计前,对相应的程序进行仿真运行,在不断调试中,确保嵌入式系统能满足用户的需求。
2.2 嵌入指纹识别模块及软件设计
在嵌入式系统设计过程中,要在硬件设计的基础上,通过串口嵌入指纹识别模块,从而为系统的正常通信提供保障。选用的指纹识别模块需要具有良好的光学传感功能,如Flash芯片、DSP处理器等,指纹识别模块的主要功能有指纹图像处理、模板匹配、模板提取、模板保持、指纹搜索等。嵌入式系统程序主要由管理和通讯两大部分组成,以指纹识别模块的相关协议为主,对其进行编写,不仅能接收、校验相关数据,还能在数据库中添加用户信息。通过LCD液晶显示和键盘,能对现场情况进行直接控制,从而确保系统的持续运行。
2.3 嵌入式系统的软、硬件协同设计
在进行嵌入式系统设计时,需要对系统的硬件、软件进行详细的分析和设计,一般情况下,在设计过程中,需要将系统的硬件和软件看成一个整体,但在初期设计过程中,需要对系统的硬件功能和软件功能进行详细的划分,并将其相应功能区域固定好,这样才能确保嵌入式系统硬件和软件的良好组合,才能充分发挥整个系统的功效。在这个过程中,还需要进行嵌入式系统的硬件和软件的协同设计,从而确保系统硬件和软件获得最佳效益。
3. 结 语
嵌入式系统设计一项复杂的工程,基于ARM嵌入式系统的软硬件设计和整个系统的设计有很大的关联,随着信息技术的持续发展,嵌入式系统结构的应用将会越来越广泛,因此,做好嵌入式系统的设计工作是十分重要的。
参考文献
[1]李登科.基于ARM的嵌入式系统硬件设计探究[J].中国电子商务,2011(3):259.
[2]刘芳宇.基于ARM嵌入式
▷ 嵌入式系统设计师工作总结 ◁
嵌入式系统是现代科技发展的重要组成部分,广泛应用于电子设备、汽车电子、通信、机械控制等领域。为了提高嵌入式系统的开发能力和提供高质量的技术人才,我参加了为期一个月的嵌入式培训课程。通过这次培训,我深刻意识到了嵌入式系统的重要性,并且掌握了一些关键的技术和实践经验。
培训课程从基础知识入手,对嵌入式系统的概念和应用进行了详细的介绍。通过理论学习和案例分析,我们了解了嵌入式系统的基本构成和主要特点。同时,我们还学习了一些常用的嵌入式开发工具和技术,如C语言编程、汇编语言、硬件接口驱动等。通过这些基础课程,我们对嵌入式系统的整体框架和实际开发过程有了较为清晰的认识。
培训课程注重实际操作和实验项目的实践,以提高学员的实际动手能力。在课程中,我们进行了一系列的实验和项目,如LED灯控制、数码管显示、电机驱动等。通过这些实验项目,我们可以亲自动手搭建嵌入式系统,并进行相应的编程和调试工作。这种实践环节的设计很实用,让我们更好地理解了嵌入式系统的工作原理和实际应用。同时,我们也学会了如何利用调试工具和技巧来解决实际开发中遇到的问题。
培训课程还邀请了一些嵌入式系统领域的专家和从业者,为我们进行专题讲座和经验分享。专家们介绍了一些新技术和发展趋势,如物联网、人工智能在嵌入式系统中的应用等。他们通过实例和案例,向我们展示了一些实际项目的挑战和解决方案。这些讲座不仅丰富了我们的知识面,还提供了与实际开发人员交流的机会,这对我们的专业发展非常有帮助。
培训课程还组织了一次小组项目实践,旨在培养我们的团队合作和解决问题的能力。我们被分成若干个小组,每个小组负责一个实际项目的设计和开发。在项目中,我们需要充分发挥自己的技术能力,与队友密切合作,解决实际问题,并按时完成任务。通过这次小组项目的实践,我们锻炼了自己的团队协作和沟通能力,也加深了对嵌入式系统开发流程的理解。
通过一个月的嵌入式培训课程,我对嵌入式系统有了更加深入的认识和了解。我掌握了一些关键的技术和实践经验,如嵌入式系统的设计和开发、常用编程语言和工具的应用、硬件接口和驱动的开发等。同时,我还提高了自己的实际动手能力和团队合作能力。这些知识和技能将对我日后的工作和职业发展产生积极的影响。
小编认为,嵌入式培训课程让我受益匪浅。通过课程的学习和实践,我深入了解了嵌入式系统的重要性和应用领域。我掌握了一些关键的技术和实践经验,并提高了自己的实际动手能力和团队合作能力。我相信,这次培训将为我未来的工作和职业发展打下坚实的基础。
▷ 嵌入式系统设计师工作总结 ◁
4.1简单内存管理模型
在设计之初,最简单直接的一种技术其实就是"不管理",即所有静态分配在栈中、动态分配在堆中的变量和数据结构,这二者的分配、释放,全交给编译器、链接器和运行时库去完成,设计者只需合理设置系统栈、堆和任务栈。
4.2静态内存分配方式
在大多数情况下,静态分配普遍适应于嵌入式系统,因为在操作的过程中,有些程序段的应用和状态基本上都是固定不变的,所以适应性比较强。
在执行程序之前,静态内存实质上就已经进行了,有着比较高的运行效率;对于内存在需求上的状况,在对其进行编译的时候就能够进行准确的计算;对于在内存的分配上,所应用的时间是比较短的,并且这些动作基本上都是固定不变的;对于已经分配完成的内存,一般情况下,是不进行归还的,而且很少有碎片;对于程序进行的测试也是比较容易的,并且有着很高的可靠性。以上这些优点使得静态内存的分配在很多标准要求比较高的系统中都能够使用,如果一些系统的要求特变高,对于在使用中,一定不能够出现延时或者是失败的分配现象产生的话,那么静态内存分配模式就可以很好的满足这些条件,在开始对其进行编译的时候,就可以将这些需要的内存进行分配。
4.3动态内存分配方式
对于静态内存分配来讲,主要注重的方面是效率和安全方面,而对于动态内存分配来说则比较注重于灵活性的掌握。在进行动态的内存分配模式下,对于内存空间的要求,程序是在目标的模块在进行链接之前就已经分配完成的,在程序进行工作的过程当中,是允许继续附加一定的内存或者是在内存的空间上进行移动工作的,也就是说对内存进行分配的工作不一定是要在程序运行之前就要完成的,在程序运行期间也是可以逐步的进行分配的。这种做法在一定程度上减少了浪费的情况,使得很多不被使用的内存不进行分配,对于内存的总体需求降低了要求;对于设计的质量来讲有了很大的提高,使系统在进行编写的时候将更加的简单容易;在程序运行的过程中对内存进行分配,这样就在系统进行启动的时候减少了运行的时间。
在对动态内存进行分配的时候,程序员在对程序进行编写的过程中,可以全身心的将精力放在对于程序的设计上,而不需要对内存的分配问题倾注过多的精力。在程序和硬件系统之间关联性不是特别高的时候,那么对于程序在进行移植方面就有了很大的便利,比如有一些系统不是单纯的为了嵌入式系统而设计的,那么也可以将其很容易的移植到嵌入式系统当中。如入说,在嵌入式系统应用的条件下,对于网络协议栈在一定的平台使用下,为了达到一定的条件,能够在使用系统的时候更加的灵活,在使用系统的时候,使得其中的每一个功能之间都能够进行平衡的选择,那么这个系统就必须可以适应对于动态内存的分配。
4.3.1内存碎片
内存碎片是动态分配,尤其是直接在系统堆中分配的不分区方式的主要问题。在嵌入式实时操作系统中,多次的分配和释放内存,会把原来很大的一块连续内存区域逐渐分割成许多小而且互不相邻的内存区域,也就是内存碎片。内存碎片主要有两种:一种是数据结构未用完它所分配到的内存块所产生的"内部碎片";另一种是两个已分配数据块之间的内存由于太小而无法用于存储任何东西造成的“外部碎片”。
4.3.2内存丢失
内存丢失是一块已经分配但永远不会被释放的内存区,是应用程序所造成的缺陷。嵌入式系统要长时间运行,就要确保绝对没有内存丢失。内存块使用完后,特定的块必须重新放回它以前所属的分区,否则可能造成内存丢失。
-
推荐阅读:
嵌入式系统设计师工作计划(范文二十篇)
建筑电气设计师工作总结(实用十四篇)
设计师助理的工作计划(实用12篇)
模型设计师工作总结(范本十三篇)
设计师本周工作总结(经典十五篇)
CAD设计师工作总结(热门11篇)
-
好拿网小编为您推荐嵌入式系统设计师工作总结专题,欢迎访问:嵌入式系统设计师工作总结