绪论:写作既是个人情感的抒发,也是对学术真理的探索,欢迎阅读由发表云整理的11篇嵌入式设计系统范文,希望它们能为您的写作提供参考和启发。
中图分类号:TP368.1 文献标识码:A 文章编号:1007-9416(2012)12-0104-01
1、序言
本系统是设计一款基于ARM的嵌入式开发平台,该嵌入式开发平台是基于AT91SAM9263(基于ARM926EJ-S芯核)的嵌入式系统,可以在此系统上运行嵌入式操作系统,并在上运行嵌入式数据库、人机窗口等应用程序,此系统包括硬件和软件两部分,本文主要介绍硬件部分。
2、系统硬件设计
本系统硬件由核心板和母板组成,核心板将系统扩展可能用到的总线都引出来,与母板之间通过针形接插件连接,为以后产品开发提供了稳定、经济而又方便的平台,此种设计的好处,其一把高速和低速分开,降低了硬件之间的干扰,提高了稳定性。其二是当系统需要扩展某些特殊接口时,则只需要对母板进行修改,缩短了开发周期。
其中核心板设计这部分是任何一个ARM系统要正常运行所必备的电路,因此称为核心板,这些基础电路,包括存贮程序用的Flash存贮器,运行程序和缓冲数据所必须的SDRAM、复位模块、时钟模块、JTAG接口等。这部分电路集中在较小空间里,因此相对比较密集,而且这部分的信号是超高速信号,且电路的设计要求比较高,所以核心板采用购买成熟的核心板。
系统母板设计了大部分的电路,因为模板上的信号都是低速信号,所以从成本角度考虑,母板采用二层电路板设计,其主要电路包括了电源部分、USB接口部分、串口及10/100M以太网接口、LCD接口、CAN总线以及底板与核心板之间通过针形接插件相连的接口等,其结构如图1所示。
下面将分模块介绍电路原理。
2.1 串行接口电路设计
系统设计了一个RS-232、RS-485接口,方便与其他设备通信。具体的电路采用MAX3232作为电平转换芯片,它本身提供两组驱动器和接收器,并接有数字隔离器ADuM1201,此芯片提供了两个信道的通道,具体电路如图2。
系统的RS-485串行接口,是由ADM2483来实现,ADM2483本身是带有隔离的高速RS-485转换器,不需要其它额外的电路。
2.2 以太网接口设计
系统选用DM9161作为以太网的接口芯片,因为系统工作在100BASE-TX模式下,所以选择RMII作为DM9161与AT91SAM9263的接口模式,具体电路如图3所示。
2.3 CAN接口电路设计
本系统的CAN总线接口的实现,是通过外接CAN收发器来实现的,系统选用的是MCP2551作为系统的收发器,其特点是有差分发射和接收能力,自动检测TXD输入端接地错误及较强的抗噪声特性。
3、结语
本系统设计了基于ARM系统的嵌入式硬件平台,在此之上可以提供各种实时操作系统,从而构成一个完整的平台,其硬件部分电路已经进行了信号完整性分析具有一定的可靠性。
参考文献
中图分类号:TP274;TP3680
引 言
经过近几年的快速发展,嵌入式系统(Embedded System)已经成为电子信息产业中最具增长力的一个分支。随着手机、PDA,GPS、机顶盒等新兴产品的大量应用,嵌入式系统的市场正在以每年30%的速度递增(IDC预测),嵌入式系统的设计也成为软硬件工程师越来越关心的话题。
在嵌入式系统设计中,低功耗设计(Low Power Design)是许多设计人员必须面对的问题。其原因在于嵌入式系统被广泛应用于便携式和移动性较强的产品中,而这些产品不是一直都有充足的电源供应,往往是靠电池来供电的;而且大多数嵌入式设备都有体积和质量的约束。另外,系统部件产生的热量和功耗成比例,为解决散热问题而采取的冷却措施进一步增加了系统的功耗。为了得到最好的结果,降低系统的功耗具有下面的优点:
(1) 电池驱动的需要。在强调绿色环保时期,许多电子产品都采用电池供电。对于电池供电系统,延长电池寿命,降低用户更换电池的周期,提高系统性能与降低系统开销,甚至能起到保护环境的作用。
(2) 安全的需要。在现场总线领域,本安问题是┮桓霆重要话题。例如FF的本安设备,理论上每个网段可以容纳32个设备,而实际应用中考虑到目前的功耗水平,每个网段安装10个比较合适。因此降低系统功耗是实现本安要求的一个重要途径。
[JP2](3) 解决电磁干扰。系统功耗越低,电磁辐射能量越小,对其他设备造成的干扰也越小。如果所有的电子产品都能设计成低功耗,那么电磁兼容性设计会变得容易。[JP]
(4) 节能的需要。特别是对电池供电系统,功耗与电压的平方成正比即:P=V2fC+P┆static,б虼私谀芨为重要。
1 功耗产生的原因
[BT3]1.1 集成电路的功耗
目前的集成电路工艺主要有TTL和CMOS两大类,无论哪种工艺,只要电路中有电流通过,就会产生功耗。通常,集成电路的功耗主要有4个:
(1) 开关功耗。对电路中的电容充放电而形成,其表达式为:
(2) 静态功耗和动态功耗。当电路的状态没有进行翻转(保持高电平或低电平)时,电路的功耗属于静态功耗,其大小等于电路电压与流过电流的乘积;动态功耗是电路翻转时产生的功耗,由于电路翻转时存在跳变沿,在电路翻转瞬间,电流比较大,存在较大的动态功耗。目前大多数电路都采用CMOS工艺,静态功耗很小,可以忽略。起主要作用的是动态功耗,因此从降低动态功耗入手来降低功耗。
(3) 短路功耗。因开关时由电源到地形成的通路造成的,其表达式为:
(4) 漏电功耗。由亚阈值电流和反向偏压电流造成。目前大多数电路都采用CMOS工艺,故漏电功耗很小,可以忽略。
1.2 电阻的功耗和有源器件的功耗
通常为负载器件和寄生元件产生的功耗。有源开关器件在状态转换时,电流和电压比较大,将引起功率消耗。另外, CMOS电路中最大的功耗来自于内部和外部的电容充放电产生的功耗。
2 硬件低功耗设计
[BT3]2.1 选择低功耗的器件
选择低功耗的电子器件可以从根本上降低整个硬件系统的功耗。目前的半导体工艺主要有TTL工艺和CMOS工艺,CMOS工艺具有很低的功耗,在电路设计上尽量选用,使用CMOS系列电路时,其不用的输入端不要悬空,因为悬空的输入端可能存在感应信号,它将造成高低电平的转换。转换器件的功耗很大,尽量采用输出为高的原则。
嵌入式处理器是嵌入式系统的硬件核心,消耗大量的功率,因此设计时选用低功耗的处理器;另外,选择低功耗的通信收发器(对于通信应用系统)、低功耗的访存部件、低功耗的电路,目前许多通信收发器都设计成节省功耗方式,这样的器件优先采用。
2.2 选用低功耗的电路形式
完成同样的功能,电路的实现形式有多种。例如,可以利用分立元件、小规模集成电路,大规模集成电路甚至单片实现。通常,使用的元器件数量越少,系统的功耗越低。因此,尽量使用集成度高的器件,以减少电路中使用元件的个数,减少整机的功耗。
2.3 单电源、低电压供电
一些模拟电路如运算放大器等,供电方式有正负电源和单电源两种。双电源供电可以提供对地输出的信号。高电源电压的优点是可以提供大的动态范围,缺点是功耗大。例如,低功耗集成运算放大器LM324,单电源电压工作范围为5~30 V。当电源电压为15 V时,功耗约为220 mW;当电源电压为10 V时,功耗约为90 mW;当电源电压为5 V时,功耗约为15 mW。可见,低电压供电对降低器件功耗的作用十分明显。因此,处理小信号的电路可以降低供电电压。
2.4 分区/分时供电技术
一个嵌入式系统的所有组成部分并非时刻在工作,基于此,可采用分时/分区的供电技术。原理是利用“开关”控制电源供电单元,在某一部分电路处于休眠状态时,关闭其供电电源,仅保留工作部分的电源。
2.5 I/O引脚供电
嵌入式处理器的输出引脚在输出高电平时,可以提供约20 mA的电流,该引脚可以直接作为某些电路的供电电源使用,如图2所示。处理器的引脚输出高电平时,外部器件工作;输出低电平时,外部器件停止工作。需要注意,该电路需满足下列要求:外部器件的功耗较低,低于处理器I/O引脚的高电平输出电流;外部器件的供电电压范围较宽。
2.6 电源管理单元设计
处理器全速工作时,功耗最大;待机状态时,功耗比较小。常见的待机方式有两种:空闲方式(Idle)和掉电方式(Shut Down)。其中,Idle方式可以通过中断的发生退出,中断可以由外部事件供给。掉电方式指的是处理器停止,连中断也不响应,因此需要进入复位才能退出掉电方式。
为了降低系统的功耗,一旦CPU处于“空转”,可以使之进入Idle状态,降低功耗;期间如果发生了外部事件,可以通过事件产生中断信号,使CPU进入运行状态。对于Shut Down状态,只能用复位信号唤醒CPU。
2.7 智能电源设计
既要保证系统具有良好的性能,又能兼顾功耗问题,一个最好的办法是采用智能电源。在系统中增加适当的智能预测、检测,根据需要对系统采取不同的供电方式,以求系统的功耗最低。许多膝上型电脑的电源管理采用智能电源,以笔记本电脑为例,在电源管理方面,Intel公司采取Speed Step技术;AMD公司采取Power Now技术;Transmeta公司采取Long Run技术。虽然这三种技术涉及到的具体内容不同,但基本原理是一致的。以采用Speed Step技术的笔记本电脑为例,系统可以根据不同的使用环境对CPU的运行速度进行合理调整。如果系统使用外接电源,CPU将按照正常的主频率及电压运行;当检测到系统为电池供电时,软件将自动切换CPU的主频率及电压至较低状态运行。
2.8 降低处理器的时钟频率
处理器的功耗与时钟频率密切相关。以SAMSUNG S3C2410X (32 b ARM 920T内核)为例[8],它提供了四种工作模式:正常模式、空闲模式、休眠模式、关机模式,各种模式的功耗如表1所示。[HJ1][HJ]
由表1可见,CPU在全速运行的时候比在空闲或者休眠的时候消耗的功率大得多。省电的原则就是让正常运行模式远比空闲、休眠模式少占用时间。在类似PDA的设备中,系统在全速运行的时候远比空闲的时候少,所以可以通过设置,使CPU尽可能工作在空闲状态,然后通过相应的中断唤醒 CPU,恢复到正常工作模式,处理响应的事件,然后再进入空闲模式。因此设计系统时,如果处理能力许可,可尽量降低处理器的时钟频率。
另外,可以动态改变处理器的时钟,以降低系统的总功耗。CPU空闲时,降低时钟频率;处于工作状态时,提高时钟频率以全速运行处理事务,实现这一技术的方法。通过将I/O引脚设定为输出高电平,加入电阻R1,将增加时钟频率;将I/O引脚输出低电平,去掉电阻R1,可降低时钟频率,以降低功耗。
2.9 降低持续工作电流
在一些系统中,尽量使系统在状态转换时消耗电流,在维持工作时期不消耗电流。例如,IC卡水表、煤气表、静态电能表等,在打开和关闭开关时给相应的机构上电,开关开和关状态通过机械机构或磁场机制保持开关的状态,而不通过电流保持,可以进一步降低电能的消耗。[JP]
3 软件低功耗设计
3.1 编译低功耗优化技术
编译技术降低系统功耗是基于这样的事实:对于实现同样的功能,不同的软件算法,消耗的时间不同,使用的指令不同,因而消耗的功率也不同。对于使用高级语言,由于是面向问题设计的,很难控制低功耗。但是,如果利用汇编语言开发系统(如对于小型的嵌入式系统开发),可以有意识地选择消耗时间短的指令和设计消耗功率小的算法来降低系统的功耗。
3.2 硬件软件化与软件硬件化
通常的硬件电路一定消耗功率,基于此,可以减少系统的硬件电路,把数据处理功能用软件实现,如许多仪表中用到的对数放大电路、抗干扰电路,测量系统中用软件滤波代替硬件滤波器等。
需要考虑,软件处理需要时间,处理器也需要消耗功率,特别是在处理大量数据的时候,需要高性能的处理器,这可能会消耗大量的功率。因此,系统中某一功能用软件实现,还是用硬件实现,需要综合计算后进行设计。3.3 采用快速算法
数字信号处理中的运算,采用如FFT和快速卷积等,可以大量节省运算时间,从而减少功耗;在精度允许的情况下,使用简单函数代替复杂函数作近似,也是减少功耗的一种方法。
3.4 软件设计采用中断驱动技术
Bashir M. Al-Hashimi, University of
Southampton, UK
Petru Eles, Linkping University, Sweden
System-Level Design
Techniques for
Energy-Efficient
Embedded Systems
2004, 194pp.
Hardcover GBP 72.00
ISBN 1-4020-7750-5
Kluwer Academic Publishers
M.T.施密兹,B.M.奥-哈希姆,P.埃莱斯著
现在对于低功耗的嵌入式计算系统的需求持续上升。信息技术的发展使得集成电路单位面积上集成的晶体管越来越多,这就必然导致单位面积上的功耗越来越大,局部过热会让晶体管处于不稳定状态,因此,低功耗技术的研究意义十分重大。本书主要讨论节能型嵌入式系统的有效自动设计技术的开发和验证,重点介绍了嵌入式系统的系统级同步综合技术,包括动态电压调度处理器技术。这种技术在性能和功耗之间权衡,使得系统低功耗高性能。
全书分为五部分。第一部分讨论分布式嵌入式系统的能量降低技术:动态电压调度,这是一种基于电压梯度的电压选择技术,这种技术利用了系统的空闲和剩余时间来降低功耗,考虑了每一个单独任务的功耗,很多测试程序证实了这种技术的有效性。第二部分重点在于基于遗传算法的同步综合技术,包括任务调度和分配;调度优化系统任务的次序,不仅仅是为了提高性能,也采用电压调度来达到节省功耗的目的;分配优化的目的在于将系统任务分配给分布式系统的各个设备来达到低功耗。第三部分主要讨论了多模式系统的功耗最小化技术,提出了一种基于操作模式状态自动机的同步综合技术,这种技术通过考虑特定操作模式的执行概率大大降低了功耗。第四部分主要讨论了特定应用背景下的动态电压调度技术,主要通过实例来验证这个技术,说明这种算法的有效性。第五部分介绍了一种自动化设计工具LOPOCOS.。
本书适合计算机体系结构专业的研究生和工程技术人员阅读,同时也适合相关专业对低功耗有兴趣的人员参考。
丁丹,硕士生
近年来,视频监控系统已经遍布人们生活的各个角落,广泛应用于交通、电力、银行、商场等场所,在维护社会秩序方面起到了一定作用。然而,随着科学技术的发展,一种基于嵌入式技术的视频监控系统逐渐取代传统的视频监控系统。嵌入式系统开发的目的是强化其应用性,适用范围更广,通过对视频流进行编码、压缩,可经过互联网在获得授权的数字终端上观看视频。
1 嵌入式视频监控系统的框架
为达到实时监控的目的,设计人员将用于录像的摄像头放置于被监控点附近,通过视频线缆将图象传送至监控室。因此,嵌入式视频监控系统包括服务器端与客户端两大部分,服务器端的组成有硬件开发平台、嵌入式计算机操作系统(以Linux为主)、应用层软件、视频采集卡、无线传输模块,客户端则由计算机、操作系统、应用软件组成,嵌入式系统的框架如图1所示。
服务器端是嵌入式视频监控系统的核心,其硬件核心是嵌入式微处理器,结合多种外设(摄像头、无线网卡等),为客户端提供图像资源。客户端则是将服务器端编码、压缩处理后的视频进行解码,并通过显示器播放视频图像。基于无线传输与互联网技术的嵌入式视频监控系统实现了视频的远距离传输、控制,这解决了嵌入式视频监控系统在大面积假设过程中的布线问题。
2 嵌入式视频监控系统应用软件的设计
根据嵌入式视频监控系统的组成,在设计相关应用软件时,需要分别考虑服务端软件与客户端软件的不同,通过软件设计流程图对比,不同组成部分的软件设计思想存在明显差异。
由此可以看出,服务器端应用软件与客户端应用软件之间是相互关联的,服务器端所采集到的视频数据需要在客户端应用软件发出请求后进行传输。基于视频处理方式的不同,服务器端应用软件主要实现的视频信号的压缩、编码,而客户端应用软件则是对受到的视频信号进行解压、解码,并在显示器上进行播放。
2.1 服务器端应用软件的设计思想
根据视频监控系统的实际需要,服务器端需具备多线程任务处理能力,其中有3个线程需要占用一定的系统资源,分别为主线程、视频信号采集线程、视频信号发送线程。其中,主线程的任务是对系统外设进行初始化,保证参数设置的正确性。视频信号采集线程则负责将摄像头录制的视频信号采集至视频信号缓存区,同时经过视频采集卡完成视频的压缩、编码过程。视频信号发送线程则将位于缓存区的视频信号通过制定接口对外发送,这一过程的结束则意味着服务器端的主要任务完成。
2.2 客户端应用软件的设计
与服务器端相类似,嵌入式视频监控系统的客户端软件依然需要同时运行多个线程,其中主要包括主线程、视频信号接收线程和视频信号解码显示线程。在客户端通电之后,客户端程序开始运行,完成相关配置的初始化过程,主线程保证客户端软件的正常工作,避免大数据流下导致的软件崩溃,当主线程向服务器端发送视频信号请求线程后,视频信号接受线程开始工作,将接收到的视频信号交由视频信号解码显示线程,最终将视频信号投放在显示器上。在此过程中,客户端应用软件需要调用recvform()不断接受服务器端发送来的UDP数据包,此类数据包被存放于客户端计算机的缓存区,并按照一定的顺序进行排列,以便于下一步的MJPEG解码过程,解码后的视频通过调用SDL进行播放。
3 嵌入式视频监控系统测试
为保证系统测试的准确性,关于嵌入式视频监控系统的测试一般选择有线传输和无线传输两种模式,从使用的角度看,基于无线传输技术的嵌入式视频监控系统将成为未来发展的主流,所以,这里以无线传输模式下的嵌入式视频监控系统为例。
首先,在对嵌入式视频监控系统进行测试之前,需要记录服务器端与客户端的IP地址;其次,检测检查客户端应用软件对摄像头的控制命令;再次,在视频监控系统客户端的控制矩阵上对显示画面进行选择性切换,检查切换画面是否正确;最后,将已经保存的录像进行拷贝,检查该录像能否通过解码在其它客户端上播放。
检查视频录像保存结果的主要原因在于无线网络传输环境的不稳定性所带来的数据包丢失问题,视频传输过程中的数据包丢失较为普遍,然而,如果出现连续性的数据包丢失,则会导致视频播放错误。以在无线传输环境下的视频监控系统数据传输测试为例,具体如表1所示。
由此可见,无线传输环境下的嵌入式视频监控系统的信号传输依然保持了较高的稳定性,丢包率维持在较低水平,四次测试的丢包率分别为0.0932%、0%、0.15%和0.181%,平均丢包率为0.1065%。
在画质方面,由于无线传输模式通过互联网进行数据的传输,相比较有线传输模式,无线传输模式下的嵌入式视频监控系统画质较好。导致这种情况的主要原因是有线传输模式存在能量的衰减,在无信号放大器的情况下,随着服务器端与客户端的距离增加,图像质量将不断下降。
总的来说,嵌入式视频监控系统的稳定性较以往有所提高,无线传输技术的使用,在降低嵌入式视频监控系统设计成本的同时,也实现了对嵌入式技术的有效利用,推动了嵌入式视频监控系统在社会各领域的广泛应用。
4 总结
嵌入式技术的广泛使用,现了视频监控系统的小型化、节能化和低成本化,这对于视频监控系统的推广应用有着积极意义。通过不断完善嵌入式视频系统的硬件设计,开发具有多种功能的应用软件,使嵌入式视频监控系统同时具有便携性与灵活性的特点,结合无线传输技术,使视频监控系统真正摆脱远距离传输信号质量差、成本高等一系列问题。
参考文献
[1]何苏勤,杨美荟.嵌入式视频监控系统实时性研究[J].计算机工程,2009(04).
[2]郭向勇,吕利昌,何晓青.基于嵌入式视频多媒体集中控制系统实现的关键技术研究[J].现代电子技术,2008(04).
[3]张莉,周兵,柳松.嵌入式视频监控组件的设计与实现[J].微计算机信息,2007(35).
[4]李豫东,金龙旭,任建岳.高分辨率嵌入式视频监控设备的设计[J].微计算机信息,2009(08).
作者简介
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)32-7230-02
随着电子信息技术的发展,计算机在不同领域中得到了广泛的应用,人们根据不同领域的实际需求,针对性的开发了具有相应功能的软件,从而提高实际的工作效率,但是在计算机出现的早期,受到其体积和性能上的限制,其应用的范围很小,随着晶体管和集成电路的出现,计算机的体积和性能得到了极大的提升,从计算机的发展可以看出,每次技术的更新,都是为了减小其体积,同时提高其性能。计算机的出现是革命性的,由于其能够自行的处理任务,如果应用在实际的工业生产中,就能够实现生产的自动化,这也是近些年计算机应用发展的方向,但是通过实际的调查发现,计算机在应用的过程中,虽然经过了多年的发展,出现了笔记本电脑,在体积上得到了极大的控制,但是在工业控制领域中,这样的体积依然很庞大,在这种背景下,人们发明了单片机这种微型计算机,并在工业控制中得到了广泛的应用。
1 嵌入式架构简述
1.1 嵌入式架构的概念
嵌入式架构是随着计算机的发展,逐渐形成的一门学科,现在很多高校中,都开设了这门课程,为社会培养大量的相关人才,学生在毕业后,能够掌握到充足的嵌入式架构知识,从而能进行计算机系统的设计,我国受到特殊的历史因素影响,经济和科技发展的起步较晚,与西方发达国家相比,存在较大的差距,尤其是在电子信息领域。虽然近年来随着国家的重视,出台了很多优惠的政策法规,鼓励和扶持我国相关产业的发展,经过了多年的发展,现在我国嵌入式架构的研究,已经得到了很大的提高,但是通过实际的调查发现,嵌入式架构使用的单片机等设备,目前还都是国外的公司生产的,我国技术人员在完成系统的开发后,都需要采用国外的设备,由于我国一直受到西方国家的技术封锁,很多先进的设备都无法进口,在很大程度上影响了我国嵌入式架构的发展。对于嵌入式架构的概念,国际电气和电子工程师协会给出了具体的解释,是控制、监视等辅助设备工作的系统,目前对于嵌入式架构的理解,主要基于计算机技术,一般情况下,可以把带有控制程序的处理器,看成是一个嵌入式架构,在不同的时期,人们对于嵌入式架构概念的理解,也存在一定的差异,但是从根本上来说,都是为了更好的使用嵌入式系统。
1.2 嵌入式架构的特点
与传统的计算机技术相比,嵌入式架构具有鲜明的特点,首先就是体积更小,在嵌入式架构出现的早期,主要是在计算机的基础上,进行系统的开发,但是随着相关技术的发展,嵌入式架构自身有了很大的进步,尤其是单片机等微型计算机的出现,使得其应用的范围更加广泛,从某种意义上来说,单片机的出现,就是由于嵌入式架构应用的需要。其次嵌入式架构具有控制的特点,随着电子信息化的发展,很多机械设备都采用了智能芯片,通过这些芯片的使用,可以写入特定的控制程序,从而达到相应的控制目的,近几年软件技术有了很大的发展,尤其是在人工专家模块出现后,计算机软件可以实现一定的智能化,在遇到一些问题时,可以通过检索以前的经验,对问题自行进行处理,如果将这个技术应用到嵌入式架构中,就可以实现工业生产的自动化控制。从根本上来说,工业的自动化控制技术,就是在单片机等微型计算机的基础上发展起来的,而单片机的使用,大多都是在嵌入式架构,通过硬件和软件的针对性设计,可以最大程度的提高单片机应用的效率。
2 单片机系统设计的现状
2.1 单片机系统设计的发展
单片机的出现,主要是由于实际应用的需要,传统的计算机受到体积上的限制,虽然在很多领域中得到了应用,但是在实际的工业生产中,要想对生产过程中的每个环节进行控制,必须将所有的环节通过特定的方式连接起来,然后设置一个中央服务器,通过硬件和软件等方式,对生产进行实时的控制,只有这样才能够最大程度提高生产的效率。由此可以看出,单片机系统的发展,可以分成硬件和软件两个部分,而这两个部分都受到计算机技术的影响,尤其是软件方面,在初期使用机器语言进行编程时,还没有单片机的出现,而汇编等低级语言使用,单片机程序的编写,也采用这些低级语言,随着计算机软件技术的发展,逐渐的出现了C语言等高级语言,相应的单片机系统设计,也开始使用这些高级语言,极大的提高了软件编写的效率。单片机系统硬件的发展,由于其出现和发展都在西方发达国家,而且由于社会和经济的体制不同,这些国家对我国一直存在技术上的封锁,因此我国很难接触到先进的单片机系统知识,在很大程度上影响了我国单片机技术的发展,目前使用的单片机设备,都是国外公司生产的,而且一些最新的单片机,对我国还存在进口的限制。
2.2 单片机系统设计中存在的问题
单片机从出现开始,到现在已经使用了多年,在应用的过程中,其自身的理论在不断的完善,通过单片机系统的使用,可以轻松的实现工业生产的自动化,进而提高生产的效率,正是由于单片机系统的这个特点,使得每个企业都希望能够通过这样的方式,来提高自身的生产效率,但是在实际应用的过程中,不同公司加工的产品不同,生产设备也存在一定的差异,如果使用同样的单片机系统,显然无法最大程度的提高生产效率。因此现在单片机系统的使用,都会根据实际的需求,对单片机系统的功能,进行针对性的设计,但是通过实际的调查发现,目前单片机系统设计中,还存在着一些问题,使得设计的系统不是很完善,在实际使用的过程中,经常会出现一些漏洞,影响产品的加工效率,由于单片机系统设计可以分成软件和硬件两个部分,因此对系统设计存在的问题,也可以从这两个方面进行分析。首先就是硬件性能不合格,在设计完实际的电路后,对各个元器件的性能,都有具体的要求,如果这些器件的性能达不到相应的指标,那么电路显然就无法正常的运行,其次就是软件设计的不完善,由于软件自身的特殊性,无法编写出完美的程序,程序自身越复杂,存在的漏洞也就越多,如果在程序编写完成之后,没有经过科学的测试,那么在应用时,就可能会出现问题。
3 基于嵌入式架构的单片机系统设计分析
3.1 基于嵌入式架构的单片机系统硬件设计
在单片机出现的早期,由于还没有形成嵌入式架构的概念,因此在实际的系统设计中,而且单片机系统的使用,都是对现有的生产线进行改进,通过在生产设备上增加一些线路,然后用单片机对其进行控制,在这种模式下,硬件设备的选择,主要是根据环境来进行,对硬件设备的体积要求比较严格。随着硬件设备的发展,现在生产单片机的公司有很多,可以实现同样功能的元器件有很多,而自动化技术的出现,使得生产线在设计的过程中,会根据控制的需求,进行相应的变化,这种单片机系统使用方式上的转变,极大的促进了其应用的发展,为了达到更高的控制效率,人们将单片机放到生产线的每个环节中,然后将这些单片机连接到一个服务器上,就能够实现对生产的全面控制。现在单片机系统设计中,首先进行的就是硬件上的设计,通常情况下,会根据生产的实际情况,对控制的功能进行需求分析,单片机系统硬件的设计,会和生产线的硬件设计同步进行,如果控制系统的硬件出现问题,可以根据需要,对生产线进行一定的修改。
3.2 基于嵌入式架构的单片机系统软件设计
嵌入式系统与传统的应用方式相比,最明显的特点就是多了辅助设备,如以往应用计算机的过程中,都是计算机的单独使用,人们直接利用计算机来处理一些问题,或者利用计算机来控制某些设备的工作,没有任何的辅助设备,而嵌入式架构下,需要借助单片机等设备,如一条生产线通常包括多个加工工艺,如果采用计算机的统一控制,就无法实现对每个环节的单独控制,而利用单片机系统,在每个加工环节中,都嵌入一个单片机,然后将这些单片机连接到一个计算机服务器中,就可以实现局部的控制。而要想完成这个过程,就要通过相应的软件功能,对于同样的单片机系统,如果根据实际应用的需要,设计不同的程序,能够实现不同的控制功能,由此可以看出,软件设计是单片机系统工作的核心。
4 结束语
作为以计算机为基础的技术,嵌入式架构的发展,很大程度上受到计算机技术的影响,如在计算机刚出现时,由于其性能比较,甚至还不如现在的电子计算器,因此实际的应用很少,只是在实验室中进行科研使用,但是人们从计算机的特点能够看出,随着技术的进步,将来计算机一定会得到普及应用。在这种背景下,很多专家和学者对计算机进行了研究,通过大量的实践,极大的推动了计算机的发展,于是计算机越来越多的用来处理实际问题,为了提高控制的效率,人们对程序进行了完善,经过全文的分析可以知道,嵌入式架构和单片机的出现,都是由于实际应用的需要,而单片机在实际应用的过程中,还存在很多问题,如果能够采用嵌入式架构,那么就能够极大的提高单片机系统的使用效果。
参考文献:
[1] 金玉涛,马军勇.基于80C52的三相可控整流电路触发脉冲的实现[J].河南教育学院学报:自然科学版,2007(3):37-39.
[2] 何兵.基于MCS-51单片机的步进电机正反转控制实现[J].泸州职业技术学院学报,2008(1):56-59.
在嵌入式系统的设计工作中,设计者更多的将精力放在嵌入式系统体系结构上,使系统变得更灵活。本文主要通过利用抽象的ADL体系结构描述语言对嵌入式系统进行实验和系统的设计,并经过反复过程达到设计要求。总的来说,对抽象级嵌入式系统设计方法的探讨是为了提高嵌入式系统的设计效率,并从一定程度上加快嵌入式系统的发展和嵌入式系统在不同硬件中的应用。
1 嵌入式系统设计介绍
嵌入式系统问世已经有一段时间了,其协议也逐渐变得更加稳定和通用。就目前来看,市场上基于嵌入式系统的产品在逐渐增多,再加上随着几个大型企业的推进和改革让很多芯片和模块的发展逐渐走向稳定的道路。所以嵌入式系统的开发环境主要是依托于执行特定任务的系统芯片之中。由于嵌入式系统在开发中具有相当的难度,所以ADL体系结构和设计语言多应用于抽象级嵌入式系统的开发,所以笔者就嵌入式系统的开发做出具体介绍。
(1)基于ADL体系结构设计的语言和设计方法。ADL体系结构应用在很多软件系统的开发之中,从目前的情况来看,我国对硬件体系结构的研究主要停留在非形式化的基础之上。很大程度上依赖于硬件设计的传统经验。在目前的硬件开发中,很难描述不同组成部件之间的组合关系,导致开发人员对硬件的实际结构难以理解或难以形式化分析。而从经济角度出发,基于结构的硬件研发手段又是目前主要的应用手段,所以在实现实际结构之前应该进行虚拟化的模拟。这也就是抽象级嵌入式系统开发的核心理念。JET技术就是为了支持这一抽象级开发而被使用的技术,拥有更强大和灵活的工具,能快速的转变JAVA和VHDL和其他语言的代码。JET技术实现的主要思路表示如下:
Sample.xml + xxx.jet = 生成文件(.java .vhd)
其中,sample.xml为参数文件,主要提供输入数据。xxx.jet为具体的模板文件。主要利用不同的代码生成功能不同的jet文件。
(2)基于上述实验的具体证明。笔者为了说明此方法的具体特点,就设计了模型CPU,控制器采用微程序的方法,只能完成基本的算术和逻辑。模型CPU的指令系统分类比较详细,在实际应用中可以根据不同的需要对指令系统进行扩充。再加上控制器采用微程序的方式,指令系统的更改将变得更加容易。具体的指令系统如表1所示。
根据表1所述指令系统,可以通过开关输入检验指令的执行和具体结构系统的正确性。最终确定,模型CPU的运转共分为取指令周期、指令执行周期等。
2 抽象级嵌入式系统设计模型描述
抽象级嵌入式系统由于其技术特点决定,是最适合工业以及工程远程操控。这是因为工业生产设备的远程操控比较简单,传输数据较少,而且对系统的通信技术性价比的要求较高。所以嵌入式系统正是工业设备远程操控的最佳选择。比如水利工程远程操控,可以基于嵌入式系统技术结合PLC技术实现水利工程的远程操控。而对于嵌入式系统的市场化应用则是应该对嵌入式系统的产品加大开发力度。从硬件和软件两部分出发,双管齐下,提升嵌入式系统的市场占有率以及市场产品的使用率。对于硬件来说,应该加强对芯片以及电路板的研究,将其低功耗与高性能的特点发挥出更大的作用。而软件部分则主要是对传输协议的进一步改善,让嵌入式系统更加普及。
在抽象级嵌入式系统具体设计时,由于其CPU的结构与传统设计有相同和相似的地方,而且CPU还具有不少固定的结构。所以利用抽象级嵌入式系统设计方法设计的CPU可以明显的提升设计效率。在设计时,首先要基于XML的ADL语言本身对模型CPU进行属性和参数的设计。然后利用不同的技术实现代码的映射,从而调整上层系统的具体设计方案。
在设计完成后,如果需要对地层设计进行修改,则只需要修改顶层的有关参数即可。利用XML代码的灵活,保证了模板文件对应的设计比较正确,也能保证整个设计的正确性和可靠性。总的来说,对抽象级嵌入式系统的设计方法主要是为了避免传统嵌入式系统的设计方法中存在大规模系统设计适应度不足的问题。可以说抽象级嵌入式系统的设计改变了原有的底层代码编写方式,将嵌入式设计提升到一个高级抽象级别。这种方法主要应用基于XML的ADL语言进行操作,并利用严格设计的目标文件和JET技术自动生成所需要的底层代码,不仅提高了设计的效率,还提高了设计的整体可靠性。所以,对抽象级嵌入式系统的研究是具有很高的理论价值与经济价值的。
3 结语
在嵌入式系统的设计工作中,设计者更多的将精力放在嵌入式系统体系结构上,使系统变得更灵活。本文主要通过利用抽象的ADL体系结构描述语言对嵌入式系统进行实验和系统的设计,笔者认为,抽象级嵌入式系统的设计改变了原有的底层代码编写方式,将嵌入式设计提升到一个高级抽象级别,总的来说,抽象级嵌入式系统的研究价值是很高的,而且通过不同的模式表现出来。
一、嵌入式系统设计
嵌入式系统由软件模块以及硬件模块组成,其中软件模块需要在硬件模块中运行才可以实现其功能。嵌入式系统中的硬件部分是嵌入式系统的基础部分,主要提供嵌入式系统的I/O端口、外设接口等,而软件是嵌入式系统的控制核心,通过运行,给硬件提供指令,指示硬件进行相应的动作,也就是说软件必须在硬件部分上运行,才可以起到很好的作用。
二、嵌入式系统趋向低功耗的必要性
1.节能的需求
嵌入式系统是一个相对复杂的系统,各个模块工作时工作量是很大的,这就需要电源供应正常,保证系统的正确运行。而随着系统的不断扩大,各个模块会造成更大的功耗,因此,为了更有效的利用嵌入式系统,延长嵌入式系统的工作时间,需要采取节能措施。
2.增强抵抗能力
在嵌入式系统工作的过程中,难免会受到外界的干扰,特别是嵌入式系统中敏感电子元器件,更应该做好防磁的措施,如果处理不当,不能很好的增强抵抗力,将严重影响系统的正常工作。嵌入式系统的功耗越高的话,电磁辐射能量就会越大,这样嵌入式系统自身以及外设都会受到影响,造成精度的降低。
三、利用嵌入式系统硬件设计方法降低功耗
对于嵌入式系统而言,硬件功耗问题是主要原因,对于嵌入式系统低功耗设计的影响因素最大,处理好硬件低功耗设计,会对嵌入式系统低功耗做出重大贡献。
1.优先选择低功耗芯片、元器件
在嵌入式系统工作的过程中,芯片元器件对电源的消耗非常的大,因此,在嵌入式系统设计前,对于元器件的选择,除了满足设计性能指标的需求,还需要满足功耗问题,尽量选择低功耗芯片。现在比较成熟的工艺主要有两种,一个是TTL工艺,另一种是CMOS工艺,其中CMOS工艺耗能很少,可以优先选择。对于芯片的设计或者焊接时,需要注意的是芯片引脚不要出现悬空端,悬空端容易引进外界噪声信号,对嵌入式系统的电源会产生很大的影响,造成高低电平的转换。在默认的情况下,如果高低电平转换,功耗会很大,这个时候,最好选择高电平输出,确保耗能降到最低。
2.采用不同步供电技术
一个完整的嵌入式系统包含很多部分,比如说包含AD采样、DA转换、UART异步串行通信等等,这些模块在系统工作时不会同时工作,有可能在进行完一个模块后才进行下个模块,为了降低功耗,可以选择不同步,即采取分时方法,当某一模块工作完后如果需要隔很长时间才会再执行操作,那就可以选择执行完后将此模块设置为休眠状态,从而降低功耗。
3.合理利用I/O端口资源
嵌入式系统工作时,需要频繁的使用I/O口,I/O口在输出的情况下可以输出约为20mA的电流,对于次,可以采取有效的措施,很好的利用这一电流,对其他外设采取供电的办法,当然,外设对电流的需求需要小于20mA。采取这种办法,可以很好的利用这一资源,得到充分的利用,更好的降低功耗。
4.加强智能电源设计工作
解决好嵌入式系统低功耗的问题,需要注意的就是减少耗能问题,而解决好耗能问题,还可以从另一个角度解决,优化电源设计,趋向于智能化方向发展。在智能电源中安装自动检测芯片,这样可以确保系统处于不同的情况下时,采取不同的策略,及时的做出处理,这样就可以对CPU以及外设模块采取不同的处理措施。比如说,当系统在外部正常供电时,这个时候电源供应可以采取正常供电的方法,提供正常的工作频率,保证电压的正常使用;而如果电源模块检测到系统工作在外部电池状态下,那这个时候,根据检测的结果,可以降低系统主频率,将电压降低到最小运行值,确保嵌入式系统工作在低功耗的状态下。
四、利用嵌入式系统软件设计方法降低功耗
1.减少编译运行时间
嵌入式系统的工作离不开软件的执行,一个小模块的正常运行往往需要很多条代码执行编译。嵌入式系统在运行中需要几个模块先后都运行,也就是说,需要大量的代码执行编译过程,这样的话,就会直接造成功率极大消耗。针对于此,可以对程序进行优化,因为代码有单周期、双周期、四个周期之分,对代码优化,尽量选择与底层密切、周期短的指令,这样,程序代码在编译的过程中,会提高处理速度,降低功耗。一般来讲,低级语言,比如说汇编语言,相对高级语言,比如说C语言、C++语言功耗要低很多。
2.鼓励使用软件代替硬件,硬件代替软件的方法
嵌入式系统在执行某个指令或者为了实现某个功能某块时,可以既选择硬件模块实现,也可以用软件方法实现,比如说软件程序FIR滤波与硬件设计模拟低通滤波,这两种方法都可以实现滤掉高频信号,确保低频信号全部通过。这个时候,可以比较这两种方法,哪一种最优,最节省功耗。软件中处理器需要时间,编译消耗功率,而硬件中电路工作也会消耗功率,因此,通过比较,可以做出最佳选择。
3.采用快速运算处理的计算方法
嵌入式系统在处理接收到的数据时,往往需要大量的运算,才会得到期望的结果。为了有效的降低功耗,提高处理速度,对一些算法可以进行优化。比如说在进行DFT傅立叶变换时,传统的思想是利用DFT设计,求出结果,但是这种设计相对FFT快速傅立叶变换而言,运算量大,时间也很长,这个时候就可以采用FFT的方法。在进行设计时,对各种算法都进行充分比较,在需求的精度都满足的情况下,优先选择算法处理快的。
4.软件设计建议多采用中断程序
嵌入式系统在工作时,当系统上电初始化时,主程序只会实现系统的初始化,这其中包括各个模块寄存器的初始化,外部设备的初始化。对于系统软件降低功耗,还可以采取的办法就是当程序没有动作需要执行的时候,可以将系统设置在低功耗状态,而当系统有动作要发生时,这个时候,可以利用中断程序,让系统跳到要执行动作的程序中,也就是说此时仅仅中断程序会消耗功率,其他模块不会。待中断程序执行完之后,系统继续回到低功耗的状态,节省电量的消耗。
五、结束语
随着社会的发展,科技不断进步,嵌入式系统日益趋向于智能化、自动化方向发展。在各行各业中,嵌入式系统都得到了很好的应用。不过随着功能的增强,应用增多,电源供应成了问题,很多嵌入式系统的耗能都很严重。考虑到嵌入式系统由软件以及硬件两大部分组成,因此,为了降低嵌入式系统的功耗,可以通过硬件措施以及软件措施,实现目的。对硬件方法主要考虑到硬件的电源、芯片选择以及I/O的有效利用;而对于软件而言,主要就是对程序进行很好的优化,充分将软件与硬件结合,只有这样,才能更好的解决嵌入式系统的功耗问题,促进嵌入式系统更好的发展。
参考文献
[1]郑杰.嵌入式系统中的低功耗设计[J].设计技术,2005(2).
[2]王怀瑞.嵌入式系统中的低功耗设计研究[J].河北省科学院学报,2008(4).
[3]王志超.基于硬件构件的嵌入式系统低功耗研究[J].信息化研究,2010(5).
[4]杨天池.嵌入式系统的低功耗设计[J].仪器仪表学报,2006(6).
[5]张健.嵌入式系统低功耗电路设计[J].光电技术应用,2005(6).
1.背景
如今嵌入式系统在日常生活中扮演着越来越重要的角色。从消费电子产品到航天工业,从热门的电子应用(如智能手机和平板电脑等)到相对不起眼的应用(如人造卫星等),嵌入式系统直接或间接地影响人们生活的方方面面。嵌入式系统的巨大潜力使得教育工作者对它的讨论从来没有停止过。世界无数的教育工作者提出了大量新颖和具有创造性的方法和理论,以促进嵌入式系统教育水平的提高,他们大都赞同嵌入式系统具有与实际应用紧密联系的显著特点。
嵌入式系统应用在一个广阔的领域,如简单的微控制应用、控制系统、分布式嵌入式控制、片上系统、网络、嵌入式PC、关键系统、机器人、计算机设备、无线数据系统和信号处理。同时,一些交叉领域知识对于嵌入式系统设计者也同样重要,如安全、可靠性、节能、软件/系统工程、实时计算和人机交互等。
对于想成为合格嵌入式系统设计者的学生来说,他们希望能够亲手接触这些嵌入式应用,因此设计一个高效的实验系统非常重要。实验平台应该能联系抽象的理论知识和实际应用,以帮助学生领会嵌入式系统的知识奥秘。
2.嵌入式系统实验教学的特点
嵌入式系统实验教学与其他课程实验教学有两个方面的不同:软硬件高度结合、知识和技术更新速度快。嵌入式系统实验教学的特点如图1所示。
嵌入式系统实验教学的第一个特点是软硬件高度结合。一个完整的嵌入式系统需要在软硬件基础之上工作。在嵌入式实验教学中,任何一个环节的缺失或弱化都是错误的。我们过去就犯过这方面的错误。嵌入式系统是清华大学计算机科学与技术系大四本科生的一门专业必修课。学生希望在课程结束后对嵌入式系统有一个完整的认识,但是发现在学习完这个仅有2个学分的课程后,依然无法设计出一个软硬件兼备的完整嵌入式系统。因此,我们让学生使用开源软件工具设计诸如鼠标或键盘等设备的驱动程序,但是效果并不理想,冈为学生仅仅熟悉了他们所实验的部分内容,而这些内容只是他们应该掌握内容的一小部分,这不仅是由于实验任务的限制,还因为学牛无法接触硬件层面的操作,无法全面领会嵌入式系统。
嵌入式系统实验教学的另一个特点是嵌入式系统知识和技术更新速度快。在第1节我们曾提到过,紧跟实际应用是嵌入式实验教学的一个关键元素。由于嵌入式系统技术日新月异,嵌入式实验课程讲述的知识和技能以及嵌入式实验设备和组件都必须不断发展。我们在对清华大学计算机科学与技术系学生的调查问卷中发现,对传统嵌入式实验平台的主要批评是实验设备和组件过于陈旧,实验平台与当前技术联系不够紧密,实验内容缺乏吸引力。
综上所述,设计一个高效的嵌入式实验平台必须考虑软硬件结合和嵌入式技术飞速发展这两个因素。
3.当代学生的特点
除了嵌入式实验课程本身,学生是不可忽略的另一个关键因素。学生是实验的参与者,他们对实验的感受影响着实验课程教学的成败,但是我们发现传统的实验方法令当代学生逐渐失去学习兴趣,这主要是因为学生一代一代地不断发展与进步,而传统的实验方法却多年不变。
文献[2]指出当代学生与过去的学生有所不同:缺乏钻研精神、缺乏耐心和依赖于软件。当代学生的特点如图2所示。
当代学生的第1个特点是缺乏钻研精神绝大多数学生成长于用户至上主义日益流行的社会环境。相对于基础原理,他们更关注功能;相对于架构,他们更关注表象。简而言之,当代学生中很少有人理解嵌入式系统的基本原理,另一方面,传统的实验平台专门为演示和验证书本中讲述的原理而设计,因此学生渐渐地无法将实际应用与特别设计的实验相联系,产生的问题是如果学生无法预见所学知识的未来应用前景,就会将关注点转移到其他方面。由此可见,将实验平台与时兴技术相结合非常重要。
当代学生的第2个特点是缺乏耐心。生活节奏的日益加快和互联网络的日益普及,使得当代学生渐渐缺乏耐心。他们习惯在实验开始后急于见到结果,就好像点击鼠标后立刻能在屏幕上看见反应,但是在传统的教学方法中,教学总是从对课程的全面描述分析开始。实践证明这种描述很必要,它可以帮助学生全面了解课程的知识结构,但是这些内容有时会让学生退却,因为学生感觉课程非常抽象与枯燥。鉴于这些问题,新实验平台应该在嵌入式系统的第一堂课就引起学生的兴趣,同时提供一个吸引人的“结果”。
当代学生的第3个特点是依赖于软件。嵌入式系统的发展通常被认为是民众赋予的。在某种程度上,这种发展是电子工程向更智能化发展的结果。然而,电子工程这种不可见的层面,通常被复杂的用户界面和其他图标所伪装,使得大家将其归功于计算机科学,而不是电子工程。许多大学并没有意识到这个问题,而将大部分注意力放在嵌入式软件设计,忽略硬件层次的介绍。这种在嵌入式系统教学中的错误关注导致出现“软件比硬件更加重要”的错误认识。为了纠正这个偏见,我们应该重视硬件并将其引入嵌入式系统课程。
总之,为了设计一个高效的实验平台,当代学生的特点不容忽视。
4.设计嵌入式实验平台的原则
基于上述讨论,我们提出嵌入式系统教学实验平台的几项设计原则。
完整性:实验平台应该相对完整。学生不但能接触软件,而且能操作硬件。这个原则主要解决两个问题:首先纠正学生偏重于软件的错误;其次在第一节课就能吸引学生,告诉他们课程最后能够建立一个基本的却相对完整的系统。
开发性:实验平台应该能帮助学生自由地实现创新思想。实验平台在软件和硬件上都应为学生预留足够数量和种类的接口,使学生能够以此为基础构建自己的嵌入式系统。在实践过程中,越来越多的基于实际应用的嵌入式系统由学生实现,同时学生的创造热情也被激发出来。
从教学的角度看,实验平台应包含以下特点。
可升级性:平台的软硬件应该能分别扩展和升级,而无需对整个平台进行修改。如第2节所述,嵌入式系统技术升级速度快,尤其是硬件设备。为了满足经常升级的需要,可升级性原则应该被放在关键位置。
灵活性:实验内容应该能根据课程的要求而裁剪,以便于实验平台的广泛推广。大多数定制的实验平台在灵活性上有所欠缺,其实验内容无法增加或减少,而为了适应课程学时的变化不得不重新设计实验。
为了达到上述目标,我们提出一个完整的概念模型。目标系统的概念模型如图3所示。
这个概念模型由3个中间层和2个层组成。中间层包括主系统层、中间通道层和从系统层。层包括应用层和组件层。我们将解释这个模型如何能实现前面提出的目标。
完整性:把中间3层看作一个整体,这个基本模型由一个典型嵌入式系统中的主要元素组成,从最顶层的应用层到最底层的功能组件层。学生可以接触完整系统的每一个组件。
开放性:模型的最顶层和最底层向学生开放。实验平台的设计者将足够多的软硬件接口提供给学生,这些接口必须是完整的和用户友好的。使用硬件接口,学生能够通过连接所需的硬件模块构建一个创新的嵌入式设备;使用软件接口,学生可以方便地加载硬件模块所需的软件资源。
可升级性:实验平台设计应该模块化和层次化,每一层为上一层提供上层接口,为下一层提供下层接口。每一层可独立地进行扩展和升级,与相邻层次的接口保持兼容。模型的中间层被设计为3层结构,这个灵感来自于Phidgets的设计,它能为实际设备的实现提供更多可能性。
灵活性:每个层次都能根据课程的重点而被加强或削弱,因此实验内容可根据课程要求而变化。实验课可被安排在两层或更多层之上。基础实验要求学生建立一个基本的嵌入式系统,而在高级实验中,学生能深入研究模型中的各个层,以实现创意设计。
嵌入式系统被定义为:以应用计算机为中心,以计算机技术为基础,软硬件可裁减适应对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统工业的基础是以应用为中心的“芯片”设计和应用的软件产品开发。嵌入式系统包括两部分内容:嵌入式微处理器和嵌入式实时操作系统。
由于嵌入式应用软件的特殊性,往往要求应用程序设计者具有一定的实时操作系统的专门知识,能合理地划分任务,合理地配置系统以及目标联机的调试。
二、嵌入式系统设计的传统方法
通常在单片机系统的开发应用中,是按照瀑布式开发流程进行的。其工作模式简单,任务的划分协调及人员安排、物质材料的分配管理都比较容易。开发过程为从硬件到软件的流水线式进行,如图1 所示。
传统的嵌入式系统设计方法又不同于瀑布式开发过程,它是将开发任务分为硬件软件两个独立的部分,由硬件工程师和软件工程师按照拟定的设计流程分别完成。其开发过程为一种并行的工作方式,我们称之为V模式开发过程。
传统的嵌入式系统设计方法如图2所示。
传统的嵌入式系统开发采用的是软件开发与硬件开发分离的方式。虽然也可改进硬件软件性能,但由于这种改进是各自独立进行的,不一定使系统综合性能达到最佳。虽然在系统设计的初始阶段考虑了软硬件的接口问题,但由于软、硬件分别开发,各自部分的修改和缺陷很容易导致系统集成出现错误。由于设计方法的限制,这些错误不但难于定位,而且更重要的是,对它们的修改往往会涉及整个软件结构或硬件配置的改动。显然,这是灾难性的。
这种设计方法只能改善硬件、软件各自的性能,而有限的设计空间不可能对系统做出较好的性能综合优化。20 世纪90 年代初,国外有些学者提出“这种传统的设计方法,只是早期计算机技术落后的产物,它不能求出适合于某个专用系统的最佳计算机应用系统的解”。因为,从理论上来说:每一个应用系统,都存在一个适合于该系统的硬件、软件功能的最佳组合,如何从应用系统需求出发,依据一定的指导原则和分配算法对硬件、软件功能进行分析及合理的划分,从而使系统的整体性能、运行时间。能量损耗、存储能量达到最佳状态,己成为硬件、软件协同设计的一个重要研究内容之一。
三、嵌入式系统协同设计技术
为了避免上述问题,一种新的开发方式应运而生―软件、硬件协同设计方法。一个典型的硬件、软件协同设计过程如图3 所示。
首先,应用独立于任何硬件和软件的功能性规格方法对系统进行描述,然后,在此基础上对硬件、软件进行划分。
这种方法的特点在协同设计、协同测试和协同验证上,充分考虑了软件、硬件的关系,并在设计的每个层次上给以测试验证,使得尽早发现和解决问题,避免灾难性错误的出现。
系统协同设计与传统设计相比有两个显著的区别:
1.描述硬件和软件使用统一的表示形式。
【文章摘要】
本文在针对当前嵌入式视频监控系统发展的基础上,介绍了一种基于ARM 的嵌入式视频监控系统,并对系统的实现和嵌入式Linux 内核的编译与移植等问题进行了详细的分析和阐述。
【关键词】
视频监控;嵌入式;ARM
当前在我国的视频监控市场当中主要包括两种不同类型的监控系统,一类为数字控制的模拟视频监控;另一类则为数字视频监控。这两类监控系统在技术方面都已经非常的成熟,性能也变得非常的稳定,并在实际的工程当中被广泛的应用。而其中的数字监控系统是以计算机技术和图像技术作为基础,兴起的一种新的视频监控系统。该技术因为可有效的解决模拟系统的部分弊端而被广泛的推广和发展。目前,我国的视频监控系统则正处在数值模拟和数字系统混合应用的转变。
1 ARM 处理器
ARM 公司作为专门从事RISC 技术芯片设计的公司,主要为知识产品的提供商,并不直接从事对芯片的生产,而是将技术转让给许可的合作公司。各种不同的芯片被世界各大生产商购买,并从ARM 购买其设计的微处理器核,然后根据自己行业的特点,对外围的电路进行设计,从而形成独具特色的ARM 处理器芯片。ARM9 作为公司设计的一种类型的处理器,被广泛的应用,其主要的原因在于该芯片其具有以下的特点:1) 具有5 级整数流水线, 指令执行效率高;2) 提供l.lMIPS/MHz 的哈弗结构;3) 支持32 位ARM 指令集和16 位Thumb 指令集;4) 支持32 位的高速AMBA 总线接口;5) 全性能的MMU, 支持Windows CE、Linux 等多种主流嵌入式操作系统;6) 支持数据cache 和指令cache, 具有更高的指令和数据处理能力。
2 系统整体设计
结合视频监控系统的实际需求,本文设计的系统的整体结构如图1 所示。包括S3C2440 处理器、Flash 闪存、USB 接口、LCD 显示器等组成。
3 系统主控芯片简介
3.1 S3C2440 处理器
在该系统中选用三星公司生产的ARM9 内核的S3C2440 处理器。该处理器其典型的优点在于其最高的主频可达到400MHz, 为同类ARM 处理器当中最快的设备。该处理器其是基于ARM920T 内核的16/32 位RISC 嵌入式微处理器, 主要面向远程监控终端、面向手持设备的高性价比和低功耗的应用。同时ARM920T 中, 其MMU 单元可以管理虚拟的内存,并拥有高速缓存独立的16KB 地址和16KB 的数据高速Cache。
3.2 寄存器
在该主控芯片中,其包含37 个寄存器,其指令的数量不多,字长较大,并且其寄存器的数量也比较多。其中包括31 个32 为的通用的寄存器,6 个程序状态的寄存器。
3.3 地址空间
在S3C2440 芯片的外部可以找到的存储空间为1GB,其被分为8 个不同的存储模块,每个模块的空间大小都为128MB,S3C2440 芯片其外部存储空间主要存在着以下的特点:第一,其支持小端/ 大端的模式;第二,在系统的8 个外部存储空间当中,其中的6 个主要用于ROM 和SRAM 存储,其余的2 个可用于ROM、SRAM 和SDRAM 的存储;第三,在8 个存储空间中,其中的7 个为包含着固定的起始地址,而最后的一个起始地可以进行适当的调整,并且最后的2 个模块空间的大小可编程;第四,所以存储器块的访问可编程;第五,在其中的SDRAM 当中,其可以进行自主的刷新。
3.4 存储器
存储器作为系统整个开发的重点,其大多的应用程序等都放置在该存储空间当中。本文主控芯片所采用的NAND Flash 具有容量大、价格低的特点。其在启动的时候,存储器上的前4KB 会被装载到缓冲器当中,并执行对代码的启动。在启动代码后则将其复制到到SDRAM 中,组后主程序都全部在SDRAM 执行。
4 系统设计
4.1 存储器设计
对存储器的设计采用三星公司的K4S561632C,这是一款比较常用的SDRAM 存储器,其时钟的频率则可以达到133MHz。其具体的电路图设计如图2 所示。
4.2 LCD 电路接口
S3C2440 芯片支持型号为TFT 型的LCD 的触摸屏,其只需要在LCD 驱动板上根据其固定的标准从CPU 引出LCD 控制信号即刻进行使用。本文则主要采用的是LCD24 位,显示时其RGB 则各位8 位。
4.3 网卡控制器
在本文中选择DM9000 作为网卡,其主要原因在于该模块为集成和符合成本效益的单芯片的快速以太网模块。分别支持8 位,16 位和32 位接口访问内部存储器, 依次可以支持不同的处理器。同时, 在DM9000 网卡的物理协议层接口可支持10MBps 的3 类、4 类、5 类非屏蔽双绞线和为100MBps 下的5 类非屏蔽双绞线。
4.4 JTAG 接口
JTAG 技术作为嵌入式的一种调试技术,主要是在芯片的内部封装一个专门的测试电路,通过其专用的JTAG 的测试工具,从而对系统内部的节点进行不同的测试。通过该JTAG 接口其可对芯片内部的所有的部件进行访问,因此使得该技术成为一种对系统调试的高效的手段。本系统对NOR FLASH 的烧写选用JTAG 进行, 对于NAND FLASH 的烧写采用USB 进行。
5 结语
本文通过对ARM 和S3C2440 微处理器相关性能的了解,最后对存储器、LCD 接口、网关控制等电路进行了设计,从而实现了视频监控系统。
【参考文献】
[1] 涂继辉, 余厚全, 佘新平. 基于ARM 的视频监控系统的设计与实现[J]. 长江大学学报( 自科科学版) 理工卷,2010,07(2).
[2] 纪波, 王辉, 张亚军. 基于嵌入式Linux 的视频监控系统的实现[J]. 电脑知识与技术,2011,07(8)
[3] 李浩. 基于嵌入式Limix 的视频图像采集系统设计[A]. 第二十届全国测控、计量、仪器仪表学术年会论文集[C].2010.
[4] 叶琳, 邱龙辉. 基于ARM 的嵌入式手姿态跟踪设备控制系统研究[J]. 新技术新工艺,2009,08:21- 23.
【作者简介】
中图分类号:TP319文献标识码:A文章编号:1672-7800(2013)001-0074-03
1嵌入式系统
嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机应用系统。一般嵌入式系统是非PC系统,主要由嵌入式微处理器、硬件设备、嵌入式操作系统以及用户的应用程序等4个部分组成,用于实现对其它设备的控制、监视或管理等功能。
2相关理论知识
2.1移动计算
移动计算是一种新型技术,使得计算机或其它信息设备,在没有与固定的物理连接设备相连的情况下,能够传输数据,并且能够及时准确地与中央信息系统相交互,分担中央信息系统的计算压力,在用户需要的任何时刻都可以得到相应的信息,比传统的计算环境更为复杂和灵活。它既可以通过无线网络、智能计算设备可以随时进入主网络;也可以在不同地点,将调制解调器和附近的电话相连接,通过电话网进入主网络;移动用户还在不同场地使用静态计算机获得相应的服务等。因此,根据移动计算所具有的特性,在嵌入式系统设计中移动计算是必不可少的。
2.2嵌入式移动数据库
由于嵌入式系统本身具有的特点,利用传统的数据库技术已不能满足当前系统的需求,因而,嵌入式数据库技术这一名词便应运而生。该技术的核心是移动计算,主要强调其移动性,传统的PC机要在苛刻的环境下做到良好的移动是很困难的。为了很好地满足对移动客户端计算的要求,便将嵌入式数据库技术应用到数据库的研究与开参考文献: