第1版前言

现今“嵌入式”的概念似乎越来越热了,越来越多的大专院校学生感受到就业市场的需求风向,越来越多的公司、企业、研究所从业人员听说了它的广泛用途,都想要了解、掌握它,本书正是为这些读者而写的。关于“嵌入式”的书籍,市面上陆续推出了一些,一部分是写硬件的,一部分是写软件的,还有一部分则两者皆备,但大多数书籍的定位和着眼点是某一种嵌入式处理器的原理与应用,讲得比较细致、专业,适合于有一定嵌入式开发经验的工程师阅读。从教师的角度看,这类书虽然较多,但适合用做教材的不多。学生们作为初学者,普遍感到无所适从,云里雾里地去读,常有无从把握的感觉,书读完了还是不知道什么是“嵌入式”,与DSP、EDA有什么关系,等等。针对此需求,我们编写了这本《32位嵌入式系统与SoC设计导论》。我们的教学实践表明,通过这门课的教学,使学生可以具备嵌入式系统与SoC设计的初步水平,也就是从“门外”进到“门里”。在此良好基础上,学生可以再进一步学习和熟练这方面的技能,从而可以在毕业之后立即参与到实际的开发项目之中。

嵌入式系统是门实践性很强的课程,限于条件,很多初学者很难参与实践环节。能够参与学校里的电子设计竞赛等的同学只是少部分,大多数学生的实践还是在正常教学所安排的实验课上和实验室里。我们在这门课程的教学、实验中力求体现这门实践性极强的新学科的成才规律,即理论结合实践,“在游泳中学会游泳”。最后详细地讲述一个嵌入式系统的开发实例,引导读者一步步进入嵌入式系统开发的殿堂。

全书共10章,各章节的内容安排如下:

第1章介绍嵌入式系统的基本概念,嵌入式系统的分类、特点和组成架构,以及嵌入式系统的发展现状和趋势。

第2章介绍嵌入式系统的开发流程,包括需求分析阶段、设计阶段、实现阶段以及测试阶段。

第3章介绍嵌入式实时操作系统的概念及相关知识,包括嵌入式实时操作系统的分类、特点,并对几种典型操作系统的性能进行比较,从而了解如何选择嵌入式操作系统的相关知识。

第4章介绍嵌入式处理器的分类、特点以及目前市场上几种典型的嵌入式处理器。

第5章介绍嵌入式系统的各种调试方法,包括硬件工具、软件工具以及各种典型的调试协议。

第6章主要介绍嵌入式系统软件开发的特点,以及设计开发中的一些经验总结。

第7章详细介绍嵌入式系统开发中的难点——嵌入式操作系统的移植,书中选择了两种典型源码开放的嵌入式操作系统Linux和μC/OS Ⅱ。

第8章介绍作为计算机与用户之间接口的嵌入式GUI的一些基本概念,以及典型嵌入式GUI的开发方法。

第9章介绍作为嵌入式系统最高发展形式——SoC产生的背景、发展和挑战,IP核复用的概念,SoC的验证与测试以及SoC几种常用总线的架构。

第10章详细介绍一个典型的嵌入式系统开发工程实例——MP4工程实践流程。通过对本章的学习,读者对嵌入式系统的开发能有个感性的认识。

最后总结一下本书的几个特色:

(1)高的起点

32位处理器的应用正在兴起。与8位处理器相比,使用32位处理器从技术上占有优势,而成本上相差不大,尤其有利于智能产品的设计;从人才培养的角度来看,国内掌握低端8位单片机应用技术的人才较多,而真正了解高端32位嵌入式系统开发技术的人才奇缺。

(2)精心设计的实验

通过本书最后的嵌入式系统开发实例,我们把嵌入式系统设计的基本概念与嵌入式开发的流程、32位嵌入式RISC处理器常用模块的使用等有机结合起来,让读者对前面学习的理论进行一次升华,体会知识进步与能力成长的感觉,保持学习的兴趣。

(3)经过国家级教学基地的多次教学验证

作为两个国家级基地(国家电工电子教学基地、国家集成电路设计人才培养基地)的一门课程,同名课程已经面向全校本科生、研究生开设多期,教学效果良好。此外,由全国大学生电子设计竞赛组委会主办、Intel公司协办的“全国大学生电子设计竞赛——嵌入式系统专题竞赛”进一步丰富了大学生电子设计竞赛的形式和内容,本教材的编写也是对全国大学生嵌入式系统竞赛、“星火杯”等活动的支持。

(4)简明的“脑图”结构

本书每一章的前面都有树状结构的“脑图”,提示本章的主要内容;同样地,在每章的各小节中,可以看到更详细的有关该小节内容的“脑图”,通过这种层层分解的结构以及“脑图”的形式,可以使读者迅速了解所读章节在全书中的位置、与其他章节的关系,从而把握学习进度和重点。

(5)“嵌牛”伴你轻松阅读

读者还会发现本书还有个表情丰富的可爱“蜗牛”,嵌入在本书的各个角落,把蜗牛的壳比做嵌入式系统的硬件(Hardware),蜗牛的躯体比做软件(Software),寓意在于嵌入式系统的软硬件结合,嵌入到我们生活中的每个角落。

本书在编写过程中得到了很多人的帮助,没有他们也就没有这本书的出版,谨此表示感谢!

参与编写的研究生有:肖宇彪、陈江、吕峰洁、叶关山、黄思宁,他们曾经与大家一样都是嵌入式系统设计的“门外汉”,他们在学习中记录了自己由不懂到初窥门径的历程,书中部分内容是他们在多次亲身体会后的总结,相信会对读者有所帮助。还有多位研究生和本科生参加了本书的资料收集与整理工作,付出了辛勤的劳动,在此一并表示感谢!

参与本书编写的三位嵌入式高级工程师是:蒋斌、夏钢、徐征,他们都是国内32位嵌入式系统与SoC设计的资深专家,不仅具有博士、硕士学历,更有多年从事嵌入式设计与开发的宝贵实践经验,正是他们的参与,保证了本书的技术先进性和正确性。在此,对于苏州国芯公司给予的支持表示衷心的感谢!

另外,本书的一部分内容来源于互联网,由于不能一一列举,在此对其作者表示感谢!

由于嵌入式系统涉及的知识面比较宽,作者在嵌入式系统开发方面所做的工作并不能包括所有方面,对嵌入式系统开发的理解也不免出现一定的偏差,有些深入的问题还有待进一步探讨,所以恳请读者能够针对书中的不足给予指正,联系地址是:gyangxidian@gmail.com,希望大家多提宝贵意见,愿我们一起努力,共同参与、分享、收获!

杨刚

2005年11月于西安电子科技大学