ARC EM处理器嵌入式系统开发与编程
上QQ阅读APP看书,第一时间看更新

第1章 ARC嵌入式系统概述

本章主要介绍嵌入式系统的定义、嵌入式系统的主要特点和嵌入式系统的各个组成部分,使读者对嵌入式系统有较为系统的认识。同时还简要地介绍ARC EM处理器系列特点,以及基于ARC EM处理器的嵌入式系统开发环境。

1.1 嵌入式系统简介

近年来,随着以计算机技术、通信技术为主的信息技术的快速发展和Internet的普及,嵌入式系统得到了越来越广泛的应用及发展。嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪(这是指嵌入式系统的大小和规格可随着具体应用需求而改变),适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。

根据英国电气工程师协会(U.K.Institution of Electrical Engineer)的定义,嵌入式系统(Embedded System)为控制、监视或辅助设备、机器,或用于工厂运作的设备。

根据中文维基百科的定义:嵌入式系统是一种完全嵌入受控器件内部,为特定应用设计的专用计算机系统。与个人计算机等通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对其进行功能最佳化、系统最小化设计,从而达到降低成本的目的。

总之,嵌入式系统是面向用户、面向产品、面向应用的,必须与具体应用相结合才会具有生命力和优势。因此可以这样理解上述三个面向的含义,即嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的设计。

嵌入式系统主要由硬件层、中间层、系统软件层和应用软件层组成。

硬件层包含嵌入式处理器、存储器、通用设备接口和I/O(Input/Output,输入/输出)接口。在单片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块。

硬件层与软件层之间为中间层,也称为硬件抽象层或板级支持包(Board Support Package,BSP)。它将系统上层软件与底层硬件分离,使系统的底层驱动程序与硬件无关,上层软件开发人员无需关心底层硬件的具体细节,只要根据BSP层提供的接口即可进行开发。该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置功能。

系统软件层由实时多任务操作系统、文件系统、图形用户接口、网络系统及通用组件模块组成。RTOS(Real Time Operating System,实时操作系统)是嵌入式应用软件的基础和开发平台。

应用软件层指用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合。

其中,嵌入式处理器是嵌入式系统的核心组成部分,它由通用计算机中的CPU(Central Processing Unit,中央处理器)演变而来,与通用CPU最大的不同在于嵌入式处理器主要工作在为特定用户群所专门设计的系统中,它将通用CPU中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统在设计时趋于小型化,同时还具有很高的效率和可靠性。

嵌入式处理器的体系结构一般采用冯·诺依曼结构或哈佛结构,指令系统采用复杂指令集(Complex Instruction Set Computer,CISC)结构或精简指令集(Reduced Instruction Set Computer, RISC)结构。据不完全统计,全球嵌入式处理器已经超过1000种,其中主流的体系有ARM、MIPS、PowerPC、ARC、X86等。