账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
下一代无线嵌入式应用的程式设计要点
从个人电脑转进行动设备

【作者: Justin Helmig】2002年09月05日 星期四

浏览人次:【3260】

今天的先进世代和明日的第三代(2.5G和3G)无线系统不仅增加多媒体功能,还包括目前在PDA常见的许多应用,然而这些无线系统的软体发展工程师却多半来自个人电脑领域,对于嵌入式平台并不熟悉,他们必须先了解这两种软硬体环境之间的差异,较重要的部份包括媒介传输速率、记忆体资源、使用者界面、电源需求、处理核心架构和发展环境;因此,设计人员在发展新世代无线系统多媒体和PDA之类的应用时,即可更有效规划和执行他们的软体。


无线应用的成长

无线通信技术的进步,加速了无线服务的需求;前两代无线手机只能提供语音服务,新标准则扩大了第三代无线网路应用范围,可以同时传输音讯、视讯、资料和语音。目前的无线网路已开始支援语音和资料服务,做为迈向未来全方位多媒体服务的中间步骤(2.5G)。除了新型态通信服务之外,无线手机也开始提供更多个人应用,例如在PDA上执行各种应用,为市场带来一系列全新的行动通信设备,从智慧型手机到无线PDA、笔记型电脑和网路家电。


为了掌握快速成长的无线商机,许多软体公司开始为新型行动设备发展各种新应用。今天,对于无线系统,甚至PDA之类的非无线掌上型装置,有丰富经验的应用发展厂商并不多,绝大部份程式设计人员都只接受过个人电脑软体训练,他们非常熟悉个人电脑硬体、作业系统和发展环境。但是,若程式设计人员想为无线系统发展应用软体,却只熟悉较为成熟的个人电脑技术和有线网路,他们应先了解这两个世界的差异,例如无线传输的速率比有线网路慢,而且相较于个人电脑,可携式系统的功率消耗、记忆体容量和使用者界面也受到更多限制。


无线系统是以DSP和RISC处理器为基础,工程师开发应用软体时,必须了解这两种处理器的特性和优点。许多新出现的无线系统还在发展初期,应用发展环境并不成熟,很多方面都像早期的个人电脑环境,工程师若了解其间差异,在发展新世代无线应用时,即能更有效规划和执行他们的软体。


新世纪无线应用设计要领

频宽差异的考量

今天的无线媒介只能提供较窄传输频宽,这是与有线网路的一个重大差异。个人电脑发展人员已习惯有线乙太网路和它所提供的10Mbps资料速率,有线电信网路的速度则较慢,因为资料速率会受到类比数据机限制,也就是56Kbps上行速率和33Kbps下行速率。但这个情形正在改变,因为虚拟专用网路(VPN)已为办公室带来乙太网路传输速率,数位用户回路和缆线数据机则把Mbps等级的宽频传输提供给终端使用者。


相形之下,现有的数位无线网路是以语音服务为主,每个通道约可提供15至20 kbps传输速率,不同传输标准的速率略有差异。较新的2.5G标准则将速率提升数倍,使它的频宽足以和类比数据机相抗衡,甚至还要略胜一筹;等到3G无线网路建置完成,最佳条件下的传输速率甚至可达到宽频水准,例如根据3G的ITU/UMTS定义,行动通讯的资料速率为384Kbps,移动速率较慢或固定式无线装置更高达2Mbps。但这些都是最佳条件下的数字,实际速率会随着线路不同而改变,影响因素包括信号杂讯和强度、环境干扰以及特定区域的通话密度。为满足较低速应用需求,3G网路也支援2G和2.5G速率。


无线传输速率对于应用发展也很重要,因为工程师必须考虑要支援那一种网路;长期而言,3G网路可以提供最大的视讯、影像和其它高频宽传输潜力,但是2G基础设施目前已就定位,未来一段时间内,将有最大一群用户可以享受2G传输速度,2.5G的传输速率和开始服务时间则介于两者之间。


此外,发展厂商也必须考虑他们的应用能否根据实际频宽大小,动态提供不同功能和影像品质,使作业能够持续进行。频宽不仅随着可用的传输型态(2G、2.5G或3G)而改变,也会受到特定时间的网路状况影响,若应用能在各种传输条件下持续工作,它的用途自然比需要一条高频宽连线的应用更加广泛。


主从系统资源分工

发展主从应用时,任何决定都必须同时将无线频宽和系统资源纳入考虑,不管最后采用的网路为何,工程师必须决定在何处执行处理运算- 本地系统或网路伺服器;此时必须考虑的因素不仅包括传输速率,本地系统的可用运算效能也同样重要。对于电池操作的行动系统,软体执行时的功率消耗是个问题,可用记忆体容量也必须注意。


把所有因素加在一起,就可决定那些作业应在手机上执行,那些应交给网路伺服器负责。一般说来,若应用会产生大量资料,特别是即时资料,就应透过压缩和解压缩程序,把资料传输量减至最少;另一方面,若应用的计算量庞大,所须处理的资料却很少,就应尽量把运算工作交给网路执行。


不同型态的作业适合不同的处理方式,例如在大型资料库中搜寻某些资讯,所须的运算量将极为庞大,产生的资料却相对较少,这类应用主要受到运算能力限制,而非网路频宽,因此最好交给伺服器执行;另一方面,MP3档案解码比较适合交给手机处理,因为频宽是这类应用的主要限制,因此设计目标是将资料传输量减至最少。


记忆体限制

就系统本身而言,记忆体容量是程式设计师必须面对的另一项重要限制,虽然今天的个人电脑已能提供数个GB的程式储存区和虚拟交换记忆体,无线手机通常却只包含16至32MB记忆体,而且须同时用于程式的储存和执行;此外,无线手机记忆体的升级扩充并不容易,更无法透过虚拟记忆体加以扩大,因为绝大多数的掌上型无线系统都不包含硬碟。


受到记忆体容量限制,应用程式设计师必须将软体最佳化,并移除不必要的功能特色,以便将程式和资料空间需求减至最少。程式甚至可能必须采用模组化设计,让更多程式直接在伺服器端执行,不必交给个人电脑执行;此外,许多功能也只须在连线阶段必要时,透过网路下载至手机即可。


个人电脑和工作站的记忆体运用方式对应用软体完全透明,熟悉这种做法的程式设计师必须了解,嵌入式作业系统并不采用如此复杂的记忆体管理机制,因为没有硬碟提供虚拟交换空间,动态记忆体配置必须非常小心,避免发生记忆体不足的现象;此外,某些嵌入式作业系统在处理程序结束时,不会自动收回已配置的记忆体,因此应用软体不但要避免不必要的记忆体配置,还应于处理程序结束时,主动释出所有占用的记忆体,防止记忆体漏失(memory Leak)情形出现。


萤幕显示

掌上型系统的萤幕比较小,且解析度也低于个人电脑萤幕,例如1024 ( 768像素是个人电脑常见的解析度,行动装置通常却只有240 x 320像素或更低;由于萤幕面积很小,无线作业系统大都不支援多重视窗,但可能透过对话方块提供资料输入、讯息显示或其它功能。


虽然掌上型装置的萤幕限制较为明显,但它对于应用的「外观」设计却有深远影响。通常在萤幕较大的系统中,应用的吸引力主要在于充份发挥萤幕显示能力和系统绘图功能,但对于掌上型系统,由于它的萤幕较小,解析度较低,绘图功能也较简单,应用的视讯输出也会受到更多限制;此时软体发展商所面对的挑战是如何在较小萤幕上,尽可能对它最有效利用,为使用者创造最满意的视觉显示效果。


节省功耗

节省功率消耗是行动系统最关心的课题,发展厂商应深入了解和利用他们所能掌握的低功率系统特色。无线作业系统通常会提供电源管理功能,使系统​​处于闲置状态时,能自动切断部份电源,因此若应用软体必须等待某项系统资源,就应将系统控制权交回给作业系统,这是非常重要的一点。举例来说,若应用软体必须取得键盘按键输入,它应产生一个事件,然后等待作业系统于事件发生时告知它,这种做法可以避免所谓的「忙碌等待」(busy waiting)- 也就是应用软体虽处于闲置状态,却不将系统控制权交回给作业系统;透过这种事件驱动机制,系统功率消耗可以降低,电池的供电时间也能延长。


另外,其它节省功率消耗的做法,包括更有效率的使用记忆体,避免不必要的运算处理和资料传输动作;就算手机仍有充份效能可资利用,若能将某些工作转交给网路完成,而非自己执行,也可进一步协助节省电源。


单处理器平台与双处理器平台的比较

无线系统可能以单处理器平台或双处理器平台为基础,至于何者是较佳解决方案,多半是由最主要的系统应用所决定。针对PDA常见的各种应用,单颗微控制器虽可满足其效能需求,却不足以支援分流视讯或其它多媒体应用,此时若增加一颗DSP,由它执行数学运算量庞大的多媒体演算法,不但可以增加系统的即时效能和反应速度,还可降低功率消耗,并让微控制器更有效率执行系统层级工作。


选择处理器平台时,系统发展厂商必须考虑许多因素,例如原设计可能是一部非常单纯的PDA装置,但为了将来提供其它多媒体功能,设计的单核心平台和软体架构就必须具备延展扩充能力,使它也能支援双核心架构发展;软体架构设计应该使得底层硬体对应用软体工程师尽量透明,也让工程师更容易切割他们的程式码,然后交给最适当的处理核心执行,使系统提供更高运算效能和电源使用效率。透过设计良好的软体架构、适当的工具和种类广泛的现成多媒体模组,无线发展人员既可拥有双处理器平台的强大效能和低功率优点,又能享受单处理器平台的简单发展程序。


对应用程式设计师来说,最重要的考虑是如何将软体最佳化,以便充份利用这套架构的优点;若采用双核心平台,发展人员必须决定那些应用软体应由DSP执行,那些比较适合交给微处理器,平衡良好的软体架构既能对系统做最有效利用,又能为使用者带来最满意的操作经验。


挑战性的发展环境

无线系统的发展环境与个人电脑有所不同,例如嵌入式作业系统只提供较少的应用程式界面,对于只有个人电脑软体发展经验的许多工程师,某些作业系统的程式界面也显得非常陌生。提供部份个人电脑应用程式界面的嵌入式作业系统虽能减少学习曲线,让软体移植更容易,但工程师也必须了解并非所有个人电脑功能都获得行动系统的​​支援。


虽然行动系统的​​发展工具不断进步,但相较于专为个人电脑主机设计的工具仍有所不足,因此应用发展人员有时只能依靠自己,并注意程式对整个系统的可能冲击。他们还须面对许多个人电脑程式设计师都不熟悉的选择:在一部个人电脑模拟器上执行应用除错,或直接在目标嵌入式系统上执行远端除错。随着无线嵌入式系统和应用持续发展,支援环境也正迅速改变,但当个人电脑发展人员必须设计无线应用时,他们仍要面对一个极具挑战性的环境。


(作者任职于德州仪器无线应用部门)


相关文章
出囗管制风险下的石墨替代技术新视野
用Arduino 打造机器人:循迹、弹钢琴、下棋都行!
树莓派推出AI摄影机、新款显示器
智慧充电桩百花齐放
充电站布局多元商业模式
comments powered by Disqus
相关讨论
  相关新闻
» 工研院携手联发科开创「边缘AI智慧工厂」 创新整合平台降低功耗50%
» 制造业Q1产值4.56%终结负成长 面板及汽车零组件制造创新高
» 晶创台湾办公室揭牌 打造台湾次世代科技国力
» 工研院突破3D先进封装量测成果 获德律、研创资本、新纤注资共创欧美科技
» A+计划补助电动车产业 驱动系统、晶片和SiC衍生投资3亿元


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK85MCSUE2ESTACUKA
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw