小学范文网

导航栏

×
首页 > 实用范文

提供嵌入式系统设计师工作计划(推荐十篇)

2026-08-30 嵌入式系统设计师工作计划

[1] 嵌入式系统设计师工作计划

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一般是专用的芯片,它具有系统简洁、体积小、功耗小、可靠性高、生产效率高的特点。

[2] 嵌入式系统设计师工作计划

在软件设计上采用linux操作系统作为软件开发平台,linux操作系统中最关键的'部分是实时多任务内核,它主要实现任务管理、定时器管理、存储器管理、任务间通信与同步、中断管理等功能。电梯嵌入式智能控制器中使用linux操作系统可以将应用程序分解成多任务,简化了应用系统软件的设计,使得电梯嵌入式智能控制器的实时性得到保证,而且良好的多任务设计,有助于提高系统的稳定性与可靠性。以下主要介绍本控制器的主要模块和核心部分。

3.1 模拟电梯模块

模拟电梯模块主要是根据拟定的电梯数据结构,用小键盘模拟电梯的内部操作,采用同方向优先的电梯算法使电梯正常运行,运行的过程就是电梯数据的变化,然后将实时变化的电梯数据存入电梯数据缓冲区,等待监控中心的连接请求,该缓冲区是一个拟定的电梯数据结构体。

3.1.1 电梯数据结构体

typedef struct elevator

{

int m_flag; //电梯运行的标志:1―运行 2―停止

int up_down; //电梯运行方向:上―1 下―0

int cur_floor; //电梯当前所在的楼层

int des_floor[MAX]; // 电梯目标层数组

/*des_floor[0]记录目标层的个数,des_floor[1-9]:值为代表有人要去该层即相应楼层为目标层,为0则表示没有人去该层*/

}elevator;

该结构体实时记录电梯当前的状态和相关信息,它是电梯运行控制的数据核心。监控中心就是通过获取该结构体信息来达到远程监控电梯的。

3.2 键盘模拟电梯操作的处理过程

利用ARM6410开发板上的小键盘来模拟电梯及操作过程流程说明:首先打开键盘设备/dev/mcu/kbd,如果返回键盘设备句柄就可以进行初始化电梯数据,然后进入循环检测状态,检测是否有数字键按下。有键按下则判断该键是否符合已定输入标准,判断标准为:必须输入1-9的数字键,而且输入的数字不可以是当前所在的楼层,同时还是非目标层,然后将输入的数据更新到电梯数据结构体中,即增加了一个目标楼层,若当前电梯没有运行而此时需要运行,则创建一个线程来运行电梯。

3.3 电梯的运行控制

电梯的运行过程是线程实现的,这是本模块的核心。

流程说明:电梯在运行过程中始终处于运行状态,运行结束后处于停止状态,上述线程也就结束,所以在线程一开始判断电梯是否已经处于运行状态,若是,说明某个线程正在进行电梯的运行过程,则不能再有另一个运行线程,于是结束。否则,根据目标楼层数不断循环来到达每一个目标层,当目标楼层数为0时,电梯停止,线程结束。

运行过程中,根据同方向优先算法,先达到运行方向上的目标楼层,当运行方向上没有目标层或已经达到顶端或低端时,才改变电梯运行方向。若运行方向上有目标层时,则一直运行直到达到某个目标楼层,这是通过判断达到的每一层是否是目标层来确定的。只有当达到某个目标层或电梯改变运行方向时,才重新根据目标楼层数来判断是否还有目标层。

流程中的“到达标志”用于标识是否到达一个目标层,当确定某个方向上还有目标层时,在到达一个目标层前(即使有键按下,目标层只可能增多,不会减少),它一直为0,此时不用执行多余的判断是否有目标层的操作,直到到达一个目标层时,将该标志置为1,表示到达了一个楼层,这时才重新判断是否还有目标层。

在ARM微处理器上设计电梯嵌入式智能控制器,采用模块化和嵌入式编程的思想设计,主要包括系统的总体设计、嵌入式硬件搭建、虚拟机工作环境的搭建,嵌入式操作系统移植、根文件系统的构建、应用软件的编写和移植。采用成熟的ARM技术,具有高性能、高集成度、低功耗、低成本、低开发难度等优点,以及采用linux操作系统是开发源码的操作系统,软件资源丰富,同时具有内核功能强大,高校,稳定,支持ARM等优点。因此大大地提高了系统的可靠性和稳定性,将其应用在电梯的控制领域具有很好的发展前景。

[3] 嵌入式系统设计师工作计划

2017嵌入式系统开发工程师考试复习要点


嵌入式系统的评价方法:测量法和模型法

(1)测量法是最直接最基本的方法,需要解决两个问题:

A、根据研究的目的,确定要测量的系统参数。

B、选择测量的工具和方式。

(2)测量的方式有两种:采样方式和事件跟踪方式。

(3)模型法分为分析模型法和模拟模型法。分析模型法是用一些数学方程去刻画系统的模型,而模拟模型法是用模拟程序的运行去动态表达嵌入式系统的状态,而进行系统统计分析,得出性能指标。

(4)分析模型法中使用最多的是排队模型,它包括三个部分:输入流、排队规则和服务机构。

(5)使用模型对系统进行评价需要解决3个问题:设计模型、解模型、校准和证实模型。

差错控制编码

(1)根据码组的功能,可以分为检错码和纠错码两类。检错码是指能自动发现差错的.码,例如奇偶检验码;纠错码是指不仅能发现差错而且能自动纠正差错的码,例如循环冗余校验码。

(2)奇偶检验码、海明码、循环冗余校验码(CRC)。

嵌入式系统的度量项目

(1)性能指标:分为部件性能指标和综合性能指标,主要包括:吞吐率、实时性和各种利用率。

(2)可靠性与安全性

可靠性是嵌入式系统最重要、最突出的基本要求,是一个嵌入式系统能正常工作的保证,一般用平均故障间隔时间MTBF来度量。

(3)可维护性:一般用平均修复时间MTTR表示。

(4)可用性

(5)功耗

(6)环境适应性

(7)通用性

(8)安全性

(9)保密性

(10)可扩展性

性价比中的价格,除了直接购买嵌入式系统的价格外,还应包含安装费用、若干年的运行维修费用和软件租用费。

[4] 嵌入式系统设计师工作计划

当下,微型化和专业化成为发展的新趋势,嵌入式产品成为信息产业的主流。下面yjbys小编为大家准备了关于嵌入式Linux系统的文章,欢迎阅读。

1 嵌入式Linux的特点

嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁剪,适用于系统对功能、可靠性、成本、功耗严格要求的专用计算机系统。实时性是嵌入式系统的基本要求,其次,还要求代码小,速度快,可靠性高。嵌入式Linux(Embedded Linux)是指对Linux经过裁剪小型化后,可固化在存储器或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究已经成为目前操作系统领域的一个热点。与其它嵌入式操作系统相比,Linux的特点如下:

第一,Linux系统是层次结构且内核完全开放。Linux是由很多体积小且性能高的微内核系统组成。在内核代码完全开放的前提下,不同领域和不同层次的用户可以根据自己的应用需要方便地对内核进行改造,低成本地设计和开发出满足自己需要的嵌入式系统。

第二,强大的网络支持功能。Linux诞生于因特网时代并具有Unix的特性,保证了它支持所有标准因特网协议,并且可以利用Linux的网络协议栈将其开发成为嵌入式的TCP/IP网络协议栈。

第三,Linux具备一整套工具链,容易自行建立嵌入式系统的开发环境和交叉运行环境,可以跨越嵌入式系统开发中仿真工具的障碍。Linux也符合IEEE POSIX.1标准,使应用程序具有较好的可移植性。

传统的嵌入式开发的程序调试和调试工具是用在线仿真器(ICE)实现的。它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,完成监视和调试程序;但一般价格比较昂贵,只适合做非常底层的调试。

第四,Linux具有广泛的`硬件支持特性。无论是RISC还是CISC、32位还是64位等各种处理器,Linux都能运行。这意味着嵌入式Linux将具有更广泛的应用前景。

2 Linux嵌入式系统开发平台

2.1 系统软件操作平台

操作系统是一种在计算机上运行的软件。它的主要任务是管理计算机上的系统资源,为用户提供使用计算机及其外部设备的接口。它存在的目的是为了管理所有硬件资源,并且提供应用软件一个合适的操作环境。

Linux作为嵌入式操作系统是完全可行的。因为Linux提供了完成嵌入功能的基本内核和所需要的所有用户界面,能处理嵌入式任务和用户界面。将Linux看作是连续的统一体,从一个具有内存管理、任务切换和时间服务及其它分拆的微内核到完整的服务器,支持所有的文件系统和网络服务。

嵌入式Linux系统需要下面三个基本元素:系统引导工具(用于机器加电后的系统定位引导)、Linux微内核(内存管理、 程序管理)、初始化进程。但如果要它成为完整的操作系统并且继续保持小型化,还必须加上硬件驱动程序、硬件接口程序和应用程序组。

Linux是基于GNU的C编译器,作为GNU工具链的一部分,与gdb源调试器一起工作的。它提供了开发嵌入式Linux系统的所有软件工具。

2.2 系统硬件平台

在选择硬件时,常由于缺乏完整或精确的信息而使硬件选择成为复杂且困难的工作。现在比较流行的硬件平台有Intel公司的StrongARM 系列,Motorola公司的DragonBall系列,NEC公司的VR系列,Hitachi公司的SH3、SH4系列等等。选定硬件平台前,首先要确定系统的应用功能和所需要的速度,并制定好外接设备和接口标准。这样才能准确地定位所需要的硬件方案,得到性价比最高的系统。

3 嵌入式Linux系统开发模式

嵌入式系统通常为一个资源受限的系统。直接在嵌入式系统的硬件平台上编写软件比较困难,有时甚至是不可能的。目前,一般采用的办法是,先在通用计算机上编写程序,然后,通过交叉编译,生成目标平台上可运行的二进制代码格式,最后下载到目标平台上的特定位置上运行,具体步骤如下。

第一步,建立嵌入式Linux交叉开发环境。目前,常用的交叉开发环境主要有开放和商业两种类型。开放的交叉开发环境的典型代表是GNU工具链,目前已经能够支持x86、ARM、MIPS、PowerPC等多种处理器。商业的交叉开发环境主要有Metrowerks CodeWarrior、ARM Software Development Toolkit、SDS Cross compiler、WindRiver Tornado、Microsoft Embedded Visual C++等。交叉开发环境是指编译、链接和调试嵌入式应用软件的环境。它与运行嵌入式应用软件的环境有所不同,通常采用宿主机/目标机模式。

第二步,交叉编译和链接。在完成嵌入式软件的编码之后,就是进行编译和链接,以生成可执行代码。由于开发过程大多是在Intel公司x86系列CPU的通用计算机上进行的,而目标环境的处理器芯片却大多为ARM、MIPS、PowerPC、DragonBall等系列的微处理器,这就要求在建立好的交叉开发环境中进行交叉编译和链接。

第三步,交叉调试。

① 硬件调试。如果不采用在线仿真器,可以让CPU直接在其内部实现调试功能,并通过在开发板上引出的调试端口,发送调试命令和接收调试信息,完成调试过程。目前,ARM公司提供的开发板上使用的则是JTAG调试端口。

② 软件调试。在嵌入式Linux系统中,Linux系统内核调试,可以先在Linux内核中设置一个调试桩(debug stub),用作调试过程中和宿主机之间的通信服务器。然后,可以在宿主机中通过调试器的串口与调试桩进行通信,并通过调试器控制目标机上Linux内核的运行。

第四步,系统测试。整个软件系统编译过程,嵌入式系统的硬件一般采用专门的测试仪器进行测试,而软件则需要有相关的测试技术和测试工具的支持,并要采用特定的测试策略。测试技术指的是软件测试的专门途径,以及能够更加有效地运用这些途径的特定方法。

[5] 嵌入式系统设计师工作计划

摘要:介绍了一种以Samsung公司的ARM7TDMI CPU S3C4510B为核心、μCUnux 为操作系统的嵌入式系统应用于MPEC-2或MPEG-4等实时多媒体数据的网络传输所面临的问题,并提出了相应的解决方案。

    关键词:嵌入式系统 μClinux 实时多媒体 接口扩展

嵌入式系统目前已广泛应用于信息家电、网络通信和工业控制等各个领域。典型的嵌入式系统主要由嵌入式硬件和软件构成,其中硬件部分的核心为嵌入式处理器。与通用处理器相比,其在功耗、体积、成本等方面都受到应用要求的制约。嵌入式系统的软件部分可以像计算机一样使用操作系统,目前已有许多成熟嵌入式操作系统,如VxWorks、pSOS、Nucleus、Windows CE 以及嵌入式Linux 等。当然,在一些简单应用中许多嵌入式系统的软件并没有使用操作系统,只有一些循环控制。这样,软件复杂度大大降低,从而减少存储器的容量要求,但是这样的软件在重复使用、网络支持等方面的能力相对较弱。

ARM系列内核是目前嵌入式处理器中广泛使用的内核。采用ARM内核的处理器具有体积小、功耗低、成本低和性能高的特点。在全球有众多生产ARM内核处理器的厂商。

Linux是一种很受欢迎的开放源码操作系统,原先被设计应用于桌面系统,后被广泛应用于服务器。由于其开放源码和内核可裁减等特性,Linux逐渐被修改用于嵌入式领域。目前已有多个嵌入式应用的版本,μClinux 是其中的一个分支,最早被设计应用于微控制领域。其最大特征就是没有MMU(内存管理单元),很适合于许多低端的、没有MMU的嵌入式处理器。

本文设计了一种嵌入式系统用于多媒体实时数据的网络传输。ARM内核处理器与嵌入式 Linux 是目前嵌入式应用中的一种典型组合,选用了 Samsung 公司的16/32位ARM7TDMI 内核的网络处理器 S3C4510B 为嵌入式硬件核心,μClinux 为操作系统。该系统支持完整的TCP/IP协议以及许多其它的网络协议,同时它具有很低的成本。
(范文先生网收集整理)
1 嵌入式系统的构成

1.1 硬件系统

嵌入式硬件系统主要由 CPU、Flash ROM、SDRAM、以太网物理层、FIFO以及CPLD等芯片构成,如图1所示。

(1) CPU

本系统采用了 ARM7TDMI 内核的 RISC 处理器S3C4510B。该芯片具有如下一些主要特点:

8/16/32位的外部总线支持 ROM、RAM、Flash 存储器、DRAM 和外部I/O;

·8K 字节的 Cache;

·一个I2C 接口;

·一个带 MII 接口的100Mbps/10Mbps 以太网控制器;

·两个 UART 通道;

·两个通用 DMA 通道;

·两个 HDLC 通道;

·18个通用I/0通道;

·两个32位定时器;

·共有21个中断源,其中4个用于外部中断;

·一个内部 PLL 用于提供高频率的系统时钟,最高系统时钟可达50MHz。

由此可见,S3C4510B 很适用于低端的网络设备,如集线器、交换机、家庭网关等。

(2)Flash ROM 和 SDRAM

Flash ROM 和 SDRAM 构成了系统的存储空间。其中Flash ROM 作为程序存储器,用于存放操作系统、应用程序等;SDRAM为系统内存。

(3)以太网物理层和串行接口芯片

[6] 嵌入式系统设计师工作计划

1 实时系统

实时系统是指数据产生时,能以足够快的速度来进行处理,处理的结果能在规定的时间内来控制生产过程与处理系统,让它做出极快的响应。在实时系统中,如果指定的时间没有完成确定的任务,整个系统会全面失败,这被称为硬实时系统,反之,如果在指定的时间内没有完成确定的任务,不会出现致命的错误就被称为软实时系统。

2 分时系统

分时系统是把时间划为长短基本相同的时间片,操作系统轮流分配给各个作业使用,如果某个作业在时间片结束完成,这个作业被挂起,等下一轮循环再继续使用,分时操作系统具有以下几个特点:多路性,用户通过各自的'终端可以同时使用一个系统;及时性,对于提出的要求,系统能在较短的时间内得到响应与处理;独立性,虽然同一时间内可以多个用户使用同一个CPU,但是用户之间操作独立,彼此不干涉。

3 嵌入式系统选型

选择自己需要的嵌入式系统,可以从以下几方面进行对比选择。

3.1 进入市场时间

产品的进入时间与选择的操作系统有很大的关系,实际的产品与演示的产品不同。一些高效推出的操作系统由于研发时间不够、技术累积不够,导致成本高、核心竞争能力差。比如WinCE操作系统,它就是在windows系统上作一定程度的改变,去掉一些不需要的功能,很快推出产品,结果实用时出现很多问题。

3.2 可移植性

通常来说,嵌入式系统的移植性越好,可在在不同平台、不同系统上都能移植,那是处于最理想的状态,然而实际运用中并不能达到这种理想状态,如果过于强调移植性,那么会付出性能优化的代价。

3.3 可利用资源

嵌入式系统是以快速、低成本、高效率的推平适合用户需要的一个系统平台,而在这个平台上能使用多少功能,需要使用第三方的产品,因此这个平台上能使用多少第三方的产品是选型的一个重要条件,有些嵌入式系统为了满足高性能、高可靠性的要求,使用比较封闭的操作系统,多数只能使用自己独立

3.4 系统定制能力

用户在使用嵌入式操作系统的时候,要求能定制不同的硬件平台,比如会要求能否对系统提出底层的更动要求?能否定制出现能满足自己需要、更有自己特色的系统、能否开放原代码等等。

3.5 成本

选择嵌入式操作系统,需要考虑成本的问题,比如一个系统是完全免费的,还是需要支付许可使用费等等,在这个选择中,并不是免费的就是最好的,这要考虑到硬件设计人员的投入、公司的管理、第三方软件的开发及使用,等等方面的问题,最后对成本作一个综合考量。

3.6 语言内核支持

语言内核支持指操作系统能使用几种语言操作,比如西文的、中文的,如果是可以使用中文操作,那么它是否支持双字节编码,是只支持简体中文系统还是同时支持繁体系统,同时还要考虑中文输入法与处理系统,语言内核的支持与第三方软件资源的利用有非常重要的联系。

[7] 嵌入式系统设计师工作计划

摘要:论述设计通信规约管理平台的必要性与可行性;借鉴操作系统的PCB思想,结合面向对象的方法学提出通信规约管理平台设计的核心思想——用户填写静态规约说明书。规约管理平台根据规约书生成通信规约控制块,由规约控制块控制、管理并适应千差万别规约程序的运行。

    关键词:平台 规约说明书 CPCB 动态描述静态描述 逻辑描述

引言

众所周知,通信的双方必须遵守相同的协议,报文才能互相识别。目前,不同行业间的通信协议千差万别。为解决不同通信协议间的计算机系统通信问题,人们普遍采用的措施是一个具体规约对应一段程序。如果出现新规约,只能由通信双方共同配合,由一方按另一方的标准修改或增加通信规约来解决问题。这种解决措施使得通信系统的适应能力不强、可维护性差,难以兼容不同规约的设备。

笔者借鉴操作系统进程控制块PCB的思想,通过对各种通信规约的认真分析研究,提出了自己的通信规约管理平台的核心设计思想——用户填写指定格式的静态规约说明书。规约管理平台根据规约书生成通信规约控制块,由规约控制块统一控制、管理,并适应千差万别规约程序的运行。

该平台的设计使得系统能够适应千差万别的通信规约,不用修改程序就能够保证通信系统在线运行情况下,接入各种新设备,以不变的程序应对万变的规约,维护真正做到傻瓜化、智能化。

1 设计通信规约管理平台的可行性

1.1 统一的通信模型(范文先生网收集整理)

任何两台计算机上的两个应用程序通信,都遵从如图1所示的通信模型。数据流动可以用收到发两个动作来描述。把提出数据请求服务的应用程序称为控制方向、即命令的下行;把提供数据服务的应用程序称为监测方向,即数据的上行。这样,一个完整的规约有控制方和监测方两个方面。控制方向下发送命令,并解析监测方发来的应答或主动上报的数据或状态指示报文;监测方解析命令,根据请求命令组织应答报文并上传。

1.2 通信规约的共性

任何通信规约都具有如下共同特征;帧结构的相似性、数据对象种类和报文长度的有限性、报文流的粒子性、逻辑过程的有穷性、传送原因的可分类性。

(1)帧结构的相似性

每帧报文都有图2所示的传输控制部分。

传输控制部分的目的之一是保证要传输的数据最终能够正确到达目的地。传输控制部分包括同步字对象、长度对象、传输方向对象、源地址对象、目的地址对象、帧号对象、功能符对象、结束符对象、其它对象及校验码十种对象构成。任何具体的规约都是上述对象的全部或基子集的一个具体排列。

数据部分就是用传输控制元素封装起来的传输数据。

(2)数据对象种类和报文长度的有限性

数据对象是通信规约真正要传输的对象。任何一个具体应用,要传输数据对象的种类是有限的,因而人们能够通过具体的通信规约将其进行描述。通信规允管理平台同样也能被描述出来。

任何规约一帧报文的最大长度都是有限的,这样不但可以遏制通信线路上长期被个别设备独占,也减少了错误传的次数与重传时间。一旦要传输的数据超过规定帧长,要分帧发送,接收方根据帧号来组装源数据。

(3)报文流的粒子性

更重要的是任何报文流的最小单位都是一个二进制位,相应报文的最小定义单元也是一个二进制位,这是所有通信规约的共性,不同的是各位间含义不同。任何规约的不同定义都在报文流有不同的确定位置(对位而言),数据发送是以字节为单位的。所以,引入顺序号的概念来描述并指示定义在不同报文中的起始位置(相对于合法报文的第一个同步字)和位数,顺序号属性就成了所有对象的共同属性。描述如下:

*字节序号——定义在一个以字节为单位,合法帧中数据成员占有的逻辑序号,第一个起始符为逻辑序号0(C、C++下标从0开始),根据在数据流中出现的先后顺序递增;

*字节内的起始位号——字节内的开始位号,取值范围0~7;

[8] 嵌入式系统设计师工作计划

嵌入式系统开发工程师考试复习要点2017

嵌入式系统的核心是由一个或几个预先编程好以用来执行少数几项任务的 微处理器或者 单片机组成。以下是关于嵌入式系统开发工程师考试复习要点,希望大家认真阅读!

1、嵌入式系统的定义

(1)定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

(2)嵌入式系统发展的4个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。

(3)知识产权核(IP核):具有知识产权的、功能具体、接口规范、可在多个集成电路设计中重复使用的功能模块,是实现系统芯片(SOC)的基本构件。

(4)IP核模块有行为、结构和物理3级不同程度的设计,对应描述功能行为的不同可以分为三类:软核、固核、硬核。

2、嵌入式系统的组成:硬件层、中间层、系统软件层和应用软件层

(1)硬件层:嵌入式微处理器、存储器、通用设备接口和I/O接口。

嵌入式核心模块=微处理器+电源电路+时钟电路+存储器Cache:位于主存和嵌入式微处理器内核之间,存放的.是最近一段时间

微处理器使用最多的程序代码和数据。它的主要目标是减小存储器给微处理器内核造成的存储器访问瓶颈,使处理速度更快。

(2)中间层(也称为硬件抽象层HAL或者板级支持包BSP):它将系统上层软件和底层硬件分离开来,使系统上层软件开发人员无需关系底层硬件的具体情况,根据BSP层提供的接口开发即可。

BSP有两个特点:硬件相关性和操作系统相关性。设计一个完整的BSP需要完成两部分工作:

A、嵌入式系统的硬件初始化和BSP功能。

片级初始化:纯硬件的初始化过程,把嵌入式微处理器从上电的默认状态逐步设置成系统所要求的工作状态。

板级初始化:包含软硬件两部分在内的初始化过程,为随后的系统初始化和应用程序建立硬件和软件的运行环境。

系统级初始化:以软件为主的初始化过程,进行操作系统的初始化。

B、设计硬件相关的设备驱动。

(3)系统软件层:由RTOS、文件系统、GUI、网络系统及通用组件模块组成。

RTOS是嵌入式应用软件的基础和开发平台。

(4)应用软件:由基于实时系统开发的应用程序组成。

3、实时系统

(1)定义:能在指定或确定的时间内完成系统功能和对外部或内部、同步或异步时间做出响应的系统。

(2)区别:通用系统一般追求的是系统的平均响应时间和用户的使用方便;而实时系统主要考虑的是在最坏情况下的系统行为。

(3)特点:时间约束性、可预测性、可靠性、与外部环境的交互性。

(4)硬实时(强实时):指应用的时间需求应能够得到完全满足,否则就造成重大安全事故,甚至造成重大的生命财产损失和生态破坏,如:航天、军事。

(5)软实时(弱实时):指某些应用虽然提出了时间的要求,但实时任务偶尔违反这种需求对系统运行及环境不会造成严重影响,如:监控系统、实时信息采集系统。

(6)任务的约束包括:时间约束、资源约束、执行顺序约束和性能约束。

[9] 嵌入式系统设计师工作计划

关于嵌入式Linux系统基础知识

由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。下面是小编收集的嵌入式Linux系统基础知识,希望大家认真阅读!

一、嵌入式Linux系统的构成

1、硬件

2、内核

3、应用程序(形成根文件系统)

二、构建嵌入式Linux系统的主要任务

1、内核部分

2、应用程序部分

嵌入式Linux的开发大致可分为三个层次:引导装载内核、构造文件系统和图形用户界面。作为操作系统重要组成部分的文件系统,决定了操作系统本身的信息和用户的数据在存储设备上的组织形式。对嵌入式文件系统的研究、设计和开发也逐渐成为嵌入式系 统研究领域的一个方向。

三、内核精简

在精简内核在编译内核之前,首先要明确需要那些驱动和模块,然后只选择需要的驱动和模块,

例如,如果系统不需要网络支持,则可以去掉网络模块 。

内核一般是以压缩方式存放的,在系统启动时会自行解压。

内核都是常驻内存的,当需要调用应用程序时,再把需要的程序从磁盘调入内存运行。

构建嵌入式Linux系统-构建内核常用的命令包括:

◆ make config:内核配置,调用 ./scripts/Configure 按照 arch/i386/config.in 来进行配置。

◆ make dep:寻找依赖关系。

◆ make clean:清除以前构建内核所产生的所有目标文件、模块文件、以及一些临时文件等。

◆ make rmproper:删除所有因构建内核过程中产生的所有文件,把内核恢复到最原始的状态。

◆ make:构核,通过各目录的Makefile 文件将会在各个目录下产生许多目标文件。如果内核没有错误,将产生文件vmlinux,这就是构建的内核。

◆ make zImage:在make 的基础上产生压缩的内核映象文件./arch/$(ARCH)/boot/zImage 以及在 ./arch/$(ARCH)/boot/compresed/目录下产生临时文件。

◆ make bzImage:在make 的基础上产生压缩比例更大的内核映象文件./arch/$(ARCH)/boot/bzImage 以及在 ./arch/$(ARCH)/boot/compresed/目录下产生临时文件。

◆ make modules:编译模块文件,在make config 时所配置的所有模块将在这时编译,形成模块目标文件,并把这些目标文件存放在modules 目录中。

◆ make modules_install:把上面编译好的模块目标文件放置在目录 ./lib/modules/$KERNEL_VERSION/ 中。上面的编译内核是在没有改变源代码的情况下实现的,如果觉得源代码提供的功能在某些方面不能满足要求,就要修改源代码了。源代码中主要有以下几个关键部分:有关进程管理的task_struct 结构,这个结构几乎包括了与进程有关的所有文件内容,还有任务队列、时钟管理和中断管理,各种进程间的通信机制,内存管理中各种内存分配函数的实现,虚拟文件系统。

四、嵌入式系统的组成

1、嵌入式硬件(嵌入式处理器和嵌入式外围设备)

2、嵌入式操作系统

3、嵌入式应用软件

嵌入式处理器

嵌入式系统的核心是各种类型的嵌入式处理器,嵌入式处理器与通用处理器最大的不同点在于,嵌入式CPU大多工作在为特定用户群所专门设计的系统中,它将通用CPU中许多由板卡完成的任务集成到芯片内部,从而有利于嵌入式系统在设计时趋于小型化,同时还具有很高的效率和可靠性。

嵌入式处理器的体系结构经历了从CISC(复杂指令集)至RISC(精简指令集)和Compact RISC的转变,位数则由4位、8位、16位、32位逐步发展到64位。目前常用的嵌入式处理器可分为低端的嵌入式微控制器(Micro Controller Unit,MCU)、中高端的嵌入式微处理器(Embedded Micro Processor Unit,EMPU)、用于计算机通信领域的嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP)和高度集成的嵌入式片上系统(System On Chip,SOC)。

目前几乎每个半导体制造商都生产嵌入式处理器,并且越来越多的公司开始拥有自主的处理器设计部门,据不完全统计,全世界嵌入式处理器已经超过1000多种,流行的体系结构有30多个系列,其中以ARM、PowerPC、MC 68000、MIPS等使用得最为广泛。

嵌入式外围设备

在嵌入系统硬件系统中,除了中心控制部件(MCU、DSP、EMPU、SOC)以外,用于完成存储、通信、调试、显示等辅助功能的其他部件,事实上都可以算作嵌入式外围设备。目前常用的嵌入式外围设备按功能可以分为存储设备、通信设备和显示设备三类。

存储设备主要用于各类数据的存储,常用的有静态易失型存储器(RAM、SRAM)、动态存储器(DRAM)和非易失型存储器(ROM、EPROM、EEPROM、FLASH)三种,其中FLASH凭借其可擦写次数多、存储速度快、存储容量大、价格便宜等优点,在嵌入式领域内得到了广泛应用。

目前存在的绝大多数通信设备都可以直接在嵌入式系统中应用,包括RS-232接口(串行通信接口)、SPI(串行外围设备接口)、IrDA(红外线接口)、I2C(现场总线)、USB(通用串行总线接口)、Ethernet(以太网接口)等。

由于嵌入式应用场合的特殊性,通常使用的是阴极射线管(CRT)、液晶显示器(LCD)和触摸板(Touch Panel)等外围显示设备。

嵌入式操作系统

为了使嵌入式系统的开发更加方便和快捷,需要有专门负责管理存储器分配、中断处理、任务调度等功能的软件模块,这就是嵌入式操作系统。嵌入式操作系统是用来支持嵌入式应用的系统软件,是嵌入式系统极为重要的组成部分,通常包括与硬件相关的底层驱动程序、系统内核、设备驱动接口、通信协议、图形用户界面(GUI)等。嵌入式操作系统具有通用操作系统的基本特点,如能够有效管理复杂的系统资源,能够对硬件进行抽象,能够提供库函数、驱动程序、开发工具集等。但与通用操作系统相比较,嵌入式操作系统在系统实时性、硬件依赖性、软件固化性以及应用专用性等方面,具有更加鲜明的特点。

嵌入式操作系统根据应用场合可以分为两大类:一类是面向消费电子产品的非实时系统,这类设备包括个人数字助理(PDA)、移动电话、机顶盒(STB)等;另一类则是面向控制、通信、医疗等领域的实时操作系统,如WindRiver公司的VxWorks、QNX系统软件公司的QNX等。实时系统(Real Time System)是一种能够在指定或者确定时间内完成系统功能,并且对外部和内部事件在同步或者异步时间内能做出及时响应的系统。在实时系统中,操作的正确性不仅依赖于逻辑设计的正确程度,而且与这些操作进行的时间有关,也就是说,实时系统对逻辑和时序的要求非常严格,如果逻辑和时序控制出现偏差将会产生严重后果。

实时系统主要通过三个性能指标来衡量系统的实时性,即响应时间(Response Time)、生存时间(Survival Time)和吞吐量(Throughput):

响应时间是实时系统从识别出一个外部事件到做出响应的时间;

生存时间 是数据的有效等待时间,数据只有在这段时间内才是有效的;

吞吐量 是在给定的时间内系统能够处理的事件总数,吞吐量通常比平均响应时间的倒数要小一点。

实时系统根据响应时间可以分为弱实时系统、一般实时系统和强实时系统三种。弱实时系统在设计时的宗旨是使各个任务运行得越快越好,但没有严格限定某一任务必须在多长时间内完成,弱实时系统更多关注的是程序运行结果的正确与否,以及系统安全性能等其他方面,对任务执行时间的要求相对来讲较为宽松,一般响应时间可以是数十秒或者更长。一般实时系统是弱实时系统和强实时系统的一种折衷,它的响应时间可以在秒的数量级上,广泛应用于消费电子设备中。强实时系统则要求各个任务不仅要保证执行过程和结果的正确性,同时还要保证在限定的时间内完成任务,响应时间通常要求在毫秒甚至微秒的数量级上,这对涉及到医疗、安全、军事的软硬件系统来说是至关重要的。

时限(deadline)是实时系统中的一个重要概念,指的是对任务截止时间的.要求,根据时限对系统性能的影响程度,实时系统又可以分为软实时系统(soft real-time-system)和硬实时系统(hard real-time-system)。软实时指的是虽然对系统响应时间有所限定,但如果系统响应时间不能满足要求,并不会导致系统产生致命的错误或者崩溃;硬实时则指的是对系统响应时间有严格的限定,如果系统响应时间不能满足要求,就会引起系统产生致命的错误或者崩溃。如果一个任务在时限到达之时尚未完成,对软实时系统来说还是可以容忍的,最多只会降低系统性能,但对硬实时系统来说则是无法接受的,因为这样带来的后果根本无法预测,甚至可能是灾难性的。在目前实际运用的实时系统中,通常允许软硬两种实时性同时存在,其中一些事件没有时限要求,另外一些事件的时限要求是软实时的,而对系统产生关键影响的那些事件的时限要求则是硬实时的。

嵌入式应用软件

嵌入式应用软件是针对特定应用领域,基于某一固定的硬件平台,用来达到用户预期目标的计算机软件,由于用户任务可能有时间和精度上的要求,因此有些嵌入式应用软件需要特定嵌入式操作系统的支持。嵌入式应用软件和普通应用软件有一定的区别,它不仅要求其准确性、安全性和稳定性等方面能够满足实际应用的需要,而且还要尽可能地进行优化,以减少对系统资源的消耗,降低硬件成本

四、如何构建嵌入式Linux系统的设计步骤

嵌入式系统目前主要有:Windows CE、VxWorks、QNX等,它们都具较好的实时性,系统可靠性,任务处理随机性等优点。但是它们的价格普遍偏高,很多开发商承受不起。因而,Linux操作系统成为嵌入式操作系统的首选。以下小编来整理了一些关于如何构建嵌入式Linux系统的资料,方便大家对构建嵌入式Linux系统有一定的认识,希望能给大家有所帮助。

[10] 嵌入式系统设计师工作计划

一、填空题(每空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、占先式实时操作系统

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_(1’) 2,设置CPSR相应位(1’)

以进行模式切换,根据需要,设置IRQ和FIQ中断屏蔽位 3,保存异常返回地址到R14_(1’) 4,PC跳转到异常向量表相应地址处(1’)

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的显示)。


文章来源://m.386h.com//195785.html

猜你喜欢

更多