第一部分:处理器内核
嵌入式系统的心脏是处理器内核。处理器内核从一个简单便宜的8位微控制器,到更复杂的32位或64位微处理器,甚至多个处理器。嵌入式设计人员必须为能够满足所有功能和非功能时限、要求的应用选择成本最低的设备。第二部分:模拟I/O
D/A和A/D转换器是用来从环境中搜集数据并反馈的。嵌人式设计人员必须了解需要从环境中搜集数据的类型、数据的精度要求和输入/输出数据的速率,以便为应用程序选择合适的转换器。嵌入式系统的反应特性受外部环境决定。嵌入式系统必须有足够快的速度跟上环境变化,以此来模拟信息,例如光、声压或加速度被感知并输入到嵌入式系统中。第三部分:传感器和执行机构
传感器一般从环境中感知模拟信息。执行机构通过某些方式控制环境。第四部分:用户界面
这些界面可以像LED屏一样简单,也可以像工艺精良的手机和数码相机的屏幕那样复杂。
第五部分:应用程序的特定入口
类似于ASIC或者FPGA的硬件加速,是用来加速在应用程序中有高性能要求的特定功能模块。嵌入式设计师必须利用加速器获得最大的应用程序性能,来对程序进行适当的筹划或分区。第六部分:软件
在嵌入式系统开发中软件是一个重要的部分。在过去几年,嵌入式软件的数量已经增长得比摩尔定律还快,几乎是每十个月就成倍增长。嵌入式软件在某些方面性能、存储器和功耗、经常被优化。越来越多的嵌入式软件通过高级语言来编写,如C/C++。而更多的性能关键的代码段仍然使用汇编语言来编写。第七部分:存储器
存储器是嵌入式系统中重要的部分,嵌入式程序可以在没有RAM或ROM的情况下运行。有许多易失的和非易失的存储器用于嵌入式系统中,关于此内容在书的后面会有更多的说明。第八部分:仿真和诊断
嵌入式系统很难看见或接触到。调试的时候需要接口与嵌入式系统相连。诊断端口,如JTAG联合测试行动组、就常常用于调试嵌入式系统。片上仿真能用来提供应用程序的可见性行为。这些仿真模块能可视化地提供运行时的行为和性能,实际上由板上的自诊断能力取代了外部逻辑分析仪的功能。嵌入式计算机系统与我们的日常生活息息相关,它们可能就隐匿在我们的移动电话、PDA、汽车、电视、电冰箱、空调以及其他许多设备中。事实上,嵌入式系统是当今计算机工业成长最快速的部分之一。随着适用嵌入式计算机系统的设备的增多,程序员、业余爱好者以及各类工程师对如何设计和构建自己的设备越来越有兴趣。