信息与通信工程专业英语课文翻译.docx

上传人:牧羊曲112 文档编号:3279407 上传时间:2023-03-12 格式:DOCX 页数:112 大小:122.58KB
返回 下载 相关 举报
信息与通信工程专业英语课文翻译.docx_第1页
第1页 / 共112页
信息与通信工程专业英语课文翻译.docx_第2页
第2页 / 共112页
信息与通信工程专业英语课文翻译.docx_第3页
第3页 / 共112页
信息与通信工程专业英语课文翻译.docx_第4页
第4页 / 共112页
信息与通信工程专业英语课文翻译.docx_第5页
第5页 / 共112页
亲,该文档总共112页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《信息与通信工程专业英语课文翻译.docx》由会员分享,可在线阅读,更多相关《信息与通信工程专业英语课文翻译.docx(112页珍藏版)》请在三一办公上搜索。

1、信息与通信工程专业英语课文翻译第一课 现代数字设计及数字信号处理 课文 A: 数字信号处理简介 1. 什么是数字信号处理? 数字信号处理,或DSP,如其名称所示,是采用数字方式对信号进行处理。在这种情况下一个信号可以代表各种不同的东西。从历史的角度来讲,信号处理起源于电子工程,信号在这里意味着在电缆或电话线或者也有可能是在无线电波中传输的电子信号。然而,更通用地说,一个信号是一个可代表任何东西-从股票价格到来自于远程传感卫星的数据的信息流。术语“digital”来源于“digit”,意思是数字,因此“digital”的字面意思是“数字的,用数字表示的”,其法语是“numerique”。 一个数

2、字信号由一串数字流组成,通常是二进制形式。对数字信号的处理通过数字运算来完成。 数字信号处理是一个非常有用的技术,将会形成21世纪的新的科学技术。数字信号处理已在通信、医学图像、雷达和声纳、高保真音乐产生、石油开采等很广泛的领域内引起了革命性的变革。这些领域中的每一个都使得DSP技术得到深入发展,有该领域自己的算法、数学基础,以及特殊的技术。DSP发展的广度和深度的结合使得任何个人都不可能掌握已发展出的所有的DSP技术。DSP教育包括两个任务:学习应用数字信号处理的通用原则及学习你所感兴趣的特定领域的数字信号处理技术。 2. 模拟和数字信号 在很多情况下,所感兴趣的信号的初始形式是模拟电压或电

3、流,例如由麦克风或其它转换器产生的信号。在有些情况下,例如从一个CD播放机的可读系统中输出的信号,信号本身就是数字的。在应用DSP技术之前,一个模拟信号必须转换成数字信号。例如,一个模拟电压信号,可被一个称为模数转换器或ADC的电路变换成数字信号。该转换器产生一系列二进制数字作为数字输出,其值代表每个采样时刻的输入模数转换设备的电压值。 3. 信号处理 通常信号需要以各种方式处理。例如,来自于传感器的信号可能被一些没用的电子“噪声”污染。测心电图时放在病人胸部的电极能测量到当心脏及其它肌肉活动时微小的电压变化。信号也常会被来自于电源的电磁干扰所影响。采用滤波电路处理信号至少可以去掉不需要的信号

4、部分。如今,对信号滤波以增加信号的质量或抽取重要信息的任务越来越多地由DSP技术完成而不是采用模拟电路完成。 4. DSP的发展和应用 数字信号处理的发展起源于XX年代大型数字计算机进行数字处理的应用,如使用快速傅立叶变换可以快速计算信号的频谱。这些技术在当时并没有被广泛应用,因为通常只有在大学或者其它的科研机构才有合适的计算机。 由于当时计算机很贵,DSP仅仅局限于少量的非常重要的应用。先驱们的探索工作主要集中在4个关键领域:雷达和声纳,用于保卫国家安全;石油开采,可以赚大量的钱;空间探索,其中的数据是不能重复产生的;及医学图像,可以救治生命。 20世纪XX年代到XX年代个人电脑的普及使得D

5、SP产生了很多新的应用。与以往由军方或*的需求驱动不同,DSP突然间由商业市场的需求驱动了。任何认为自己能在这个飞速发展的领域赚钱的人都会立即成为DSP供应商。DSP通过在移动电话、CD播放器及语音邮件等产品中应用进入了公共应用领域。 这些技术革命是自上而下发生的。在20世纪XX年代早期,DSP是电子工程专业的研究生课程,XX年后,DSP成为了本科生课表中的一部分。今天,DSP是很多领域的科学家及工程师需要掌握的标准技能。DSP可以与以前的电子技术的发展相类比。在电子工程领域,几乎每个科学家和工程师都具有基本的电路设计背景。否则,他们将在技术界落伍。DSP的将来也会如此。DSP已在科学及工程的

6、许多领域掀起了变革。其中的一些扩展应用如图1所示。 5. 数字信号处理器(DSPs) 20世纪XX年代后期及XX年代前期微处理器的出现使得DSP技术在更广泛的范围内应用成为可能。然而,通用的微处理芯片,如Intel的X86系列用于对数字敏感的DSP应用并不理想,在20世纪XX年代,DSP变得越来越重要,这导致了很多主要的电子元件制造商开始重视开发数字信号处理器芯片一种专用的微处理器,具有专为数字信号处理需求操作而设计的系统结构。与通用的微处理芯片一样,一个DSP是一个可编程设备,具有私有的指令码。DSP芯片每秒可以执行上百万次的浮点数运算,像其它更广为人知的通用微处理器一样,更快更强大的DSP

7、在不断地出现。DSPs可以被嵌入到其它通常包括模拟和数字电路的复杂片上系统设备中。 空间:空间图像增强;数据压缩;通过空间探索进行智能传感分析 医学:诊断图像;心电图分析;医学图像存储/恢复 商业:多媒体展示的图像和声音压缩;电影特效;视频会议 DSP 电话:语音及数据压缩;去回声;信号复用滤波 军事:雷达;声纳;军火指挥;安全通信 工业:石油和采矿预测;过程监视/控制;非破坏性测试;CAD设计工具 科学:地震记录及分析;数据采集;频谱分析;仿真和建模 图1 DSP的应用领域 虽然DSP技术所依赖的一些数学理论,如傅立叶变换及希尔伯特变换、数字滤波器设计及信号压缩等,可能相当复杂,而实际中实现

8、这些数字运算的技术却非常简单,其包括的主要运算可由一个廉价的具有加减乘除功能的四则运算器实现。DSP芯片的结构设计使得这些运算的速度快得不可思议,每秒钟可处理上亿次的采样值,从而具有实时性:也就是说,当其处理一个信号时,使之像刚刚采样并输出一样具有实时性。如一个扬声器或一个视频显示。以前所提到的所有的DSP的应用实例,如硬盘驱动器和移动电话,都需要实时操作。 主要的电子元件制造商都在DSP技术领域大量投资。因为他们发现在具有大规模市场的应用产品中,DSP芯片在全世界电子设备中占了很大的比例。现在每年的销售额在10亿美元左右,并且看来会持续快速增长。 6. DSP的深度 如同你从每个应用中所注意

9、到的一样,DSP是非常交叉的学科,依赖于许多相邻领域的技术工作。如图2所示。DSP与其它技术学科之间的边界不是非常精确或明确定义的,而是非常模糊或相互重叠的。如果你想精通DSP,就需要同时学习相关的科学、工程及数学领域的知识。 图2.数字信号处理与其它领域具有模糊及重叠的边界 7. DSP影响的领域 1)电信 DSP在很多领域对电信工业具有革命性的影响:信号音调的产生和检测、频带搬移、滤波以去除电源噪声等。这里将要讨论来自电话网的三个特例:复用、压缩及回声控制。 (1) 复用 世界上大约有10亿部电话。只要按下很少的一些按钮,交换网允许其中的一部与任何别的电话在几秒之内连接。这项工作的复杂性是

10、人脑所不能想象的。直到20世纪XX年代,两个电话之间的连接还需要将模拟话音信号通过机械开关及放大器进行传送。一个连接需要一对线。相比较而言,DSP将音频信号转换成一串数字信号流。由于比特流可以很容易地被混放在一起并且事后可以分开,因此,许多路话音可以在一条信道上传输。该技术称为复用。 (2) 压缩 当以8000个采样值/秒的速度对一个话音信号进行数字化时,大多数的数字信息是冗余的。也就是说,由一个采样携带的信息与其相邻采样在很大程度上是重复的。很多DSP算法用于将数字化的语音转换成需要较少的bits/sec的数据流,这称为数据压缩算法。对应的解压缩算法用于将信息恢复成其原始形式。这些算法根据压

11、缩比及最后的话音质量来区分优劣。通常来说,这些算法可以使数据率从64kb/sec减少到32kb/s而不会导致话音质量的损失。 (3) 回声控制 回声是长距离电话连接中的一个严重的问题。当你对一个电话讲话时,一个代表你声音的信号会被传输到所连接的接收端,而其中的一部分会以回声的形式返回。如果连接只有几百米,收到回音的时间间隔仅有几毫秒。人的耳朵习惯于收到这么短时间延迟的回声,连接听起来相当正常。当距离增大时,回声会变得非常惹人注意并且让人无法忍受。洲际通信的回声间隔可达几百毫秒,这是相当让人讨厌的。数字信号处理技术通过测量返回信号,并产生一个相应的相反信号以抵消这些令人讨厌的回声来处理这类问题。

12、同样的技术还用于令使用话筒的人能边听边说而不会觉得有回音。这也可用于通过产生数字相反噪音来减少环境噪音。 2) 语音处理 人类的两个最基本的感观是视觉和听觉。相应地,许多DSP是与图像及声音处理有关的。人们可以听到音乐和话音。DSP在这两个领域都曾带来革命性的变化。 音乐 从音乐家的麦克风到高保真音响之间的距离是相当长的。用数字信号代表数据是很重要的,目的是防止模拟话音存储及处理中常有的话音衰退现象。这与任何一个人将磁带的声音质量与CD的声音质量进行对比的结果是一样的。一个典型的场景是,一段音乐在录音棚中是通过不同的声道进行录制的。有些情况下,这甚至包括分别录制各个乐器及歌唱者的声音。这样做的

13、目的是给声音工程师以极大的灵活性去制作最后的产品。将单独声道的音乐合成为最终音乐的过程被称为合成。DSP在音乐合成中可以提供多种重要功能,包括:滤波、信号附加及截断、信号编辑等。 在音乐合成中DSP最有趣的一个应用是人工回放。如果各个信道仅仅是简单地叠加在一起,最后听到的音乐是脆弱无力的,就如同音乐家在门外演奏一样。这就是为什么听众被音乐的回声或回音深深影响着,而这些常在演播室中被最小化了。DSP使得人工回声在混合过程中被加到音乐中以仿真不同的听觉环境。具有几百毫秒的延迟的回声会让人觉得像是大教堂一样的环境,而加上10-20毫秒延迟的回声可以产生更加现代的听觉感受。 话音产生 话音产生和识别用

14、于人和机器之间的通信。不是用手和眼睛,而是用嘴和耳朵。当你的手和眼睛需要做别的如开车,进行外科手术或对敌人开枪等事情时,这项技术将给你带来极大的方便。有两种计算机产生话音的方式:数字录音或声道仿真。 语音识别 对人类声音的自动识别要比话音产生难得多。数字信号处理通常通过两步解决话音识别的问题:特征抽取及特征匹配。来自于音频信号的每个单词都被隔离开并与先前所输的单词相比较以确认与那个最接近。通常,这种系统仅限于很少的几百个单词;仅能接受在单词间具有明显停顿的话音;对每个说话的人都需要重新学习。 8. 图像处理 图像是具有特殊特点的信号。首先,是在空间对参数的测量,而大多数信号是在时间上对参数的测

15、量。其次,图像包含了大量的信息。例如,存储一秒钟的电视图像需要10M的空间。这要比同样长度的话音信号大1000倍。第三,最后对于图像质量的判断常通过人类的主观评估而非客观标准来判断。这些特殊的特点使得图像处理成为DSP中非常独特的一个子集。 课文 B: 现代数字设计 1. 综述 光速已经太慢了。通常情况下,大量生产的现代数字设计需要将时隙控制到皮秒级。光从你的鼻子走到你的眼睛需要的时间是100皮秒。这种时隙不仅要维持在硅芯片级别,而且要维持在物理形态上要大得多的系统板上,如计算机母板上。这些系统运行在很高的频率,在这些频率上,导体表现得不再像一根简单的导线,而是具有了高频效应,它像一根传输线一

16、样能够从相邻的器件上接收或传输信号。如果这些导线处理不当,它们将会无意地毁坏系统时序。数字设计要比模拟设计更加复杂。而且不止于此。数字技术是一项非常巨大的技术革命。它有一个持续的范例转变,工业革命,及快速变化的不平行发展的过程。事实上,它在技术公司的市场部门一直遵循以下信条:“当一个市场调查告诉你公众需要什么的时候,它往往已经过时了”。 这种快速发展阻碍了技术进步,本书将要解决这个问题。问题是,现代数字设计需要以前不曾用到过的知识。然而,许多当前的数字系统设计师不具有现代高速设计所需要的知识。这个事实导致了技术循环中大量的误导信息。通常,人们认为高速设计的概念很神秘。然而,因为所需知识达不到,

17、这个问题并没有解决。事实上,许多相同的概念在电子工程的其它学科如无线频率设计及微波设计中已经使用了好几十年了。问题是所需科目的参考书要么太抽象不能被数字设计师立即应用,要么太实际以至于没有包含能够完整理解该学科所需的足够理论。该书将着眼于数字设计领域,解释所需的概念以便于工程师或学生去理解、解决当前乃至将来可能遇到的问题。值得注意的是本书中的所有内容都曾成功应用在现代设计中。 2. 基础 如同读者所知,数字设计的基本概念是用1或0代表信号传输信息。典型情况下,数字设计包含发送及接收一系列如图1所示的梯形电压信号,其中高电压代表1低电压代表0。携带数字信号的传输路径是相互连通的。连接包括从发送信

18、号的芯片到接收信号的芯片中的所有电通路。这包括芯片包、连接件、插座及无数个附加结构。一组连接件被称为一条总线。一个由数字接收机区分高电压和低电压的电压范围被称为门限区域。在该区域中,接收机可以判为高电平也可以被判为低电平。在芯片上,实际的开关电压随着温度、电压、芯片处理过程及其它参数变化而变化。从一个系统设计师的角度来看,有高电压门限和低电压门限,被称为Vih和Vil,高于接收芯片的高电压门限或低于接收芯片的低电压门限的信号可以保证在任何情况下都能被收到。因此为了保证数据的完整性,系统设计者必须保证在任何条件下,所发送的高电压不能甚至是一小会儿的时间,低于Vih,低电压必须一直低于Vil。 为

19、了使一个数字系统的运行速度最大化,在门限电压区域的不确定时间应被最小化。这意味着数字信号的上升或下降时间必须越短越好。理想情况下,信号上升或下降速率应该无限大,实际上由于许多实际因素的影响而不会这么理想。实际中,几百皮秒的边沿速率是可以达到的。读者通过傅立叶变换可验证到,边沿速率越大,信号的频谱越高,也意味着难度更大。每个导体都有电容,电感及与频率有关的电阻。当频率足够高时,这三个无一可以被忽略。因此一根导线将不再是一个导线,而是一个具有延迟和传输阻抗的分布式寄生元件,表现在从一个芯片到接收芯片的过程中就是传输的波形中具有信号扭曲及短时脉冲干扰噪声。导线变成了一个元件,与其周围的任何元件包括电

20、源及地线配成对。一个信号不完全存在于导体本身中,而是当前所有的磁场和电场的合成。一个连接中的信号可能影响另一个连接中的信号或被另一个连接中的信号所影响。更进一步说,在高频时同一个连接的不同部分之间如包、连接件及弯曲之间都会存在复杂的相互影响。所有这些高频效应趋向于产生奇怪的、歪曲的波形。这确实给了设计者一个全新的高速逻辑设计视图。连接附近的每个结构部件的物理及电气特性对于保证合适的信号以合适的时序在Vih和Vil之间传输这样看起来简单的任务起着至关重要的作用。这些特性也决定着系统会将多少能量辐射至空气中,并可以此判断该系统是否符合官方的辐射要求。在以后几章中我们将看到如何计算这些。当一个导体必

21、须被看作为一个分布式的电感和电容时,它就被称为是一个传输线。通常情况下,要根据如何满足感兴趣信号的最高频率所要求的波长来决定电路的物理尺寸大小。在数字设计领域,由于边沿速率决定着所含信号的最大频率,你可以比较信号上升沿及下降沿时间与电路板大小的关系,如同图2所示。在一个典型的电路板上,信号以光速的一半的速度传输。因此一个500皮秒的边沿速率占据的电路板的边缘长度大约3英寸。通常情况下,任何长为边沿速率1/10的电路必须当作一条传输线来考虑。 高速设计中一个最困难的方面事实上是有很多相互影响的变量影响着数字设计的输出。有一些变量是可控制的而有一些是具有随机性的。高速设计的难点之一是如何处理许多变

22、数,无论它们是可控的还是不可控的。通常情况下,可以通过忽略或假定变量的值使问题得到简化,但这些忽略或假定有可能会在以后导致找不到根本原因的失败。由于时序变得更加严格,对于现代设计者来说过去能做的简化会变得越来越少。本书将会描述如何使大量的会导致不可追踪的问题的变量协同工作。如果没有处理大量变数的方法,无论设计者实际有多懂系统,一个设计最终都会成为凭臆测而进行的工作。处理所有变数的最后一步常是最难而且最易被设计者忽视的一部分。因不具备处理大量变数的能力,设计者最终将采取校对一些解决点并且希望这些能代替所有已知的条件。虽然有时这些方法是不可避免的,但这将成为危险的猜测游戏。当然,在设计中一定的猜测

23、是存在的,但系统设计师的目标是使不确定因素最小化。 3. 过去和将来 Gordon Moore, Intel公司的奠基人,曾预测计算机的性能将会每18个月翻一番。历史证实了这一有洞察力的预测。显著地,计算机的性能大约每1年半会翻一番,并且其价钱在大幅度下降。与处理器性能相关的度量是其内部时钟速率。图3通过几个处理器的内部时钟速率展示了处理器的历史。到本书出版时为止,本章中即使是最快的处理器都会变得使人不以为然。这是因为计算机速度是按指速规律增长的。随着核心频率的增加,会需要更快的总线数据速率,因为总线要为处理器提供数据。如图4所示,这导致了连接件的变化时间应按指数规律减小。时间减少意味着适当地

24、考虑任何会导致到达接收机的数字波形的不确定性变得更重要。这是导致数字设计越来越困难的两个障碍的根本原因。第一个障碍很简单,即在一个数字设计中需要考虑的变数的绝对数量会增加。当频率增加时,新的,在较低的速率时可以被忽视的效应,会开始变得明显。通常来讲,系统设计的复杂性随着变量数量的增加按指数规律增长。第二个障碍是在过去设计中可以被忽视的效应,必须以非常高的精度来建模。通常这些模型在本质是三维的,或者需要非常专业的模拟技术,这已超出了数字设计师的学科范围。障碍可能对于处理器的外围器件更加意义深远,因为它们发展得很慢,但仍需要支持不断发展的处理器的越来越多需求。 上述的问题导致了目前的现状:需要解决

25、新的问题。能够解决这些问题的工程师才能够定义未来DSP技术的发展。本书将致力于使读者掌握实际中进行现代高速数字设计必须掌握的技能及足够的理论,这些知识会帮助读者解决作者可能还没有遇到过的问题。 第二课 嵌入式系统及应用 课文A:嵌入式系统的特点 什么是嵌入式系统? 嵌入式系统是计算机工程的一个全新分支。它是对传统不可用户编程的专用计算机设备的一种发展,仅应用于某一专用领域,将计算机技术与机械工程设计结合了起来。 嵌入式系统是一个有专用用途的计算机,嵌入在设备的内部。例如,微波炉中就含有一个嵌入式系统,它接收来自面板的输入,进而控制液晶显示器进行显示,控制加热元件的开关以煮熟食物。嵌入式系统通常

26、采用微控制器,这种微控制器是一个单一器件,但具有电脑的许多功能。摩托罗拉公司和英特尔公司生产的微控制器最受专业人士欢迎。 嵌入式系统的市场正在逐步扩大,因为工程师们认识到许多其他工程项目也可受益于嵌入式系统技术。现在,到处都有嵌入式系统的身影,从食品加工到汽车生产以及更多的领域。生活在计算机时代意味着,在这十年内,在任何情况下,我们都将很难再找到一个机械设备没有或多或少以某种形式涉及到嵌入式系统。 嵌入式系统分不同的级别。电脑玩具和厨房用具只是嵌入式系统的非常简单的表现形式。许多更复杂的医疗设备具有更强大的功能,实际上其受益于使用了不止一个嵌入式系统。虽然这意味着我们在日常生活中随手拿来用的一

27、些设备通常会变得更便捷、更好用,但这也意味着这些嵌入式设备的维修将会是更困难、更昂贵的。但同时这还意味着我们的许多时间被嵌入式设备解放出来,我们有更多的时间做我们所喜欢做的。例如,我们都使用带有嵌入式系统的洗衣机。我们买的汽车也越来越多的拥有嵌入式系统。 甚至是我们使用的制造工具也和嵌入式系统息息相关。显而易见,非常多的公司致力于嵌入式系统的开发,或独立进行,或按需要联合机械制造厂家共同开发。越来越多的工程公司申请使用嵌入式技术,从能设想到的所有方向来升级自己的产品。 如果没有嵌入式系统 你走进你的车并用钥匙发动。你需要用到贮物箱的一个3.5英寸软盘,把它插到仪表盘上的插槽里,拍打方向盘,直到

28、操作系统很快在液晶仪表板显示出来。用中心控制台的光标键选择电子点火程序,然后转动钥匙启动发动机。在上班路上你想听一些音乐,那你就往播放机里输入CD程序,等待表明播放器的数字信号处理器已经准备就绪的绿灯闪烁,然后放入你的音乐CD。 拥有嵌入式系统. 你不需要传统的用户界面来决定运行哪些程序,汽车电子点火装置会随着车钥匙做出响应。 你不需要加载程序进你的设备,那些需要帮助运转工作的应该已经被加载完成了 你不必浪费时间等待O / S的加载 - 如果需要加载,那么它也不会因为绑定而使加载缓慢。 你不需要从一个缓慢的磁盘驱动器来加载程序或数据 绝大部分需要的信息都在Fast ROM里。 嵌入式系统大致可

29、定义为“一种不一定是计算机,但包含一个处理器的系统”。但是不要只集中一个定义上,去思考绝大部分嵌入式系统的这些共同特点,至少从某种程度上看,那是十分有益的。 1) 嵌入式系统,往往在价格和尺寸上差异较大。 许多嵌入式系统,如PDA或手机,都是高容量,低成本和低利润的。这需要用到尽可能便宜的部件,而这通常意味着简单的处理器和小内存的使用。这将导致嵌入式系统软件牺牲可维护性来换取性能的最优化。日益增加的前期软件开发成本和定期保养费用摊销在大批量销售上,并被日新月异的较便宜组件构成的硬件优化,节省了成本。 许多其它的嵌入式系统价格方面虽然不是主要考虑的因素,但要考虑到外形的限制或重量等因素,需要用最

30、小的器件来满足要求。需要再提的是,这些性能的优化是以牺牲系统的可维护性为代价的。 除了在可移植性、透明度、模块化方面权衡外,嵌入式系统还需要使用一种低层次的语言的优化,这种语言不是C语言,也不是从一个UML模型自动生成的C语言代码。但是,这种手工调整通常只适用于在“90/10”准则确定下的小部分软件,这是主要的性能瓶颈。 2)嵌入式系统通常有电源的限制。 许多嵌入式系统的运行依靠电池,无论是持续供电还是在紧急情况下。因此,功耗性能在复杂性和可维护性的成本方面是被许多嵌入式系统青睐的。 3) 嵌入式系统往往是实时的。 从本质上看,大多数嵌入式系统在往数据流的反应方向建设。实时限制又偏向可维护性方

31、面的性能方向(使得系统偏向于性能表现而不是可维护性方面)。嵌入式系统一般包括硬件实时约束和软件实时约束。硬件实时约束要求事件在给定的时间内得到处理;软件实时约束用于限制事件平均响应时间。 实时操作系统使用先发制人的优先调度,以确保达到实时要求,但需要仔细考虑到执行上下文来划分的处理,设置执行上下文的相对优先次序,并在上下文中管理控制/数据流之间。 4) 嵌入式系统经常使用自定义硬件。 嵌入式系统,往往由现成处理器和现成的外围设备相结合而成。即使组件可能是标准的,但是自定义混合和匹配需要硬件和软件的高度凝聚 大多数嵌入式系统的软件都是设备驱动程序的操作系统软件。虽然这种低层次的软件经常是可购买,

32、受许可,或者可免费使用的,但是嵌入式系统中的很大一部分操作系统是内部自定义开发的,要么是精确匹配使用中的硬件系统,要么是在自定义配置中粘合现成的软件。 通常,嵌入式系统的功能是分布在多个同类处理器和/或一个分层次的主/从处理器。这就需要在处理器的处理任务分配以及处理器之间的程度、方式和沟通时间上多加考虑。 此外,许多嵌入式系统利用专门的可编程器件或特定用途集成电路技术,因此需要低层次的软件与自定义硬件进行交互。 5) 嵌入式系统主要会从视图中隐藏 从本质上看,嵌入式系统通常与他们的“用户”有一个有限的界面。因此,大多数这种系统的开发是为了满足在建筑规格和高层次的设计开发的各种软件功能规格发展的

33、需要,而不是适应用户的需求。 6) 嵌入式系统通常具有单片功能。 大多数嵌入式系统是为了一个初始目的而建的。它们可以被分解成几个部分,并且这些组成部分很可能可以有低跨凝聚力和交叉耦合。也就是说,每个部分都可以成为一个单独的目的,而且组件之间的相互作用可能只限于少数明确界定的问题。然而,除非大部分或整体都正常工作,否则整个系统将无法运作。一个系统需要所有组件运作正常来使得整个系统实现有用的功能性,这就是“单片系统”。这作为部件功能作用的一个功能在系统功能的非线性方面与其他种类的软件相反,那些系统可能当软件完成50%的时候系统能够实现50%或更多的功能。 例如,建立一个太空探测器进行空间旅行或去其

34、他行星将它们的信息发送回来。尽管有许多低级别的空间探测器组件用于定位,登陆,自展传感和太阳能电池板以及通信。每个低层次的响应都是涵盖范围广泛而功能不可缺少的组成部分。如果有任何一个重要组件缺失,即使所有其他的组件都完全正常工作,空间探测器还是会出故障。 手机是另外一个例子,手机的所有子功能,如用户界面,蜂窝基站的选择,声码器,通信协议等都是实现用户和特定的远程节点间的双向音频信息传递这一整体目标实现的十分重要的方面。 这与其他软件制度不同,如Web服务或桌面工具里,这种低层次的响应,可能更独立的服务总系统的功能,而不是作为一个单片整体不可缺少的部分。 虽然一个嵌入式系统的软件组件组合成一个单片

35、功能体,那些组件本身往往差别很大。嵌入式系统经常联合起软件组件进行信号处理、运行低级别的设备驱动程序、实现I / O通信协议、引导和控制,以及建立用户接口等活动。这些专门的组件都需要一个不同的开发技能器。 7) 嵌入式系统往往是有限的开发工具。 虽然有一些软件制度有一大堆工具来协助软件开发,但是嵌入式系统软件的发展更有限,而且经常只使用基本的编译工具。这一部分是由于嵌入式系统通常使用自定义硬件,这可能没有工具支持,且嵌入式系统往往是实时的而且性能受限制,难以在调试器的控制下冻结整个执行链,也难以在嵌入目标和一个基于主机工作的工具之间进行控制和数据的转换,以及捕捉广泛的执行跟踪数据的记录。 由于

36、适用于嵌入式系统软件开发的商业工具选择很有限,许多嵌入式系统项目建设自己的工具,用于调试和测试,至少是增加与内部工具的商业工具。 8) 嵌入式系统通常有严格的强度要求。 嵌入式系统通常用在恶劣的环境中和关键任务里使用,或用于医疗用途。因此,嵌入式系统在可靠性上的要求,正确处理异常的能力,平均无故障工作时间上严格程度远甚于许多其他类型的软件。这些又转化到严格的开发流程和测试要求。反过来说,这也大大增加了发行一个软件版本所需的开销。 有些类型的嵌入式系统受到一些监管要求的影响,而这些要求旨在通过强制软件开发过程来降低故障率,或者至少指明哪些文件必须附有嵌入式系统产品。 此外,个别嵌入式系统很难甚至

37、不可能升级固件,因此这种系统初始上市的时候必须要有正确的设计。 9) 嵌入式系统往往寿命很长。 嵌入式系统通常可使用多年。通常情况下,嵌入式系统的支持时间远远超过了原来的软件开发人员流失率。这使得它具有完善的理由来阐述嵌入式系统软件,。这样以来,许多语言都在朝着最适合的一个特定的问题域演化。例如,一个用于信号处理语言往往更适用于一种特定的问题,比如组装方面,但可能在主控行为上十分薄弱。 本文介绍了流行的硬件,软件,数据流,以及混合语言,每一个都擅长某一问题。数据流语言精于信号处理,混合语言则与其他三类结合了语言。 由于篇幅限制,本文只介绍了以上语言的主要特点。 1硬件语言 Verilog和视觉

38、硬件描述语言是用于硬件描述和建模的最通用的语言。这两种离散事件语义的模型系统都忽视高效仿真设计的闲置部分。这两个层次的描述系统配有结构制度:一个系统由原语类型群,或者其他群,或并发进程组成。下面做出明确连接。 Verilog提供专门针对具体硬件仿真的原语。视觉硬件描述语言的原语是例如a=b + c的赋值或程序代码。 Verilog添加晶体管和逻辑门原语,并允许用真值表来定义新的功能。这两种语言都允许按程序用并发进程描述。这种处理睡眠状态一直持续,直到有一个事件使得他们运行,读写变量,然后暂停。处理可能会等待一段时间,一个值的变化。 视觉硬件描述语言通信更规范,更灵活。 Verilog的通信通过

39、电线或地区:共享内存位置可能会引出竞争状况。视觉硬件描述语言的信号像电线般运作,但像该决议的功能可能是用户自定义的。除非被声明为共享,一般视觉硬件描述语言的变量都是本地的一个单一的过程。 Verilog语言的系统软件类型有四值向量和用于建立存储器模型的阵列。视觉硬件描述语言不包括四值向量,但其类型系统可以允许植入。此外,诸如C结构可以定义为复合类型。 总的来说,是精简的Verilog语言是一种相对于模拟向数字集成电路来说更直接的学习语言。视觉硬件描述语言是一个更大,更复杂的语言,能够掌握更广泛层次的仿真和建模任务。 2软件语言 软件语言描述一个处理器的指令执行序列。因此,大多数包含通过内存来沟

40、通的必要指令序列,一个序列会一直维持它的数值直到改变数组。 每个机器指令通常并不多一点,比如说,两个数相加,如此高层次的语言,旨在使得许多指示显得简洁和直观。算术表达式是十分典型的:编码表达式如ax2+bx+c这种机器代码简单,乏味,并最好由一个编译器完成。C语言提供了这样的表达,控制流结构,如循环和条件,并递归函数。在C + +语言中,加入了一些分类作为一种来建立新的数据类型,为多态代码建模,处理错误异常,和一个通用数据结构的标准库。 Java是一种更高层次的语言,它提供无用信息自动收集,运用线程和监视器同步它们。 汇编语言 汇编语言程序是在一种以象征性的,人类可读的形式书面的一系列处理器指

41、令。每个指令包括一项操作如加上一些标旗操作数。例如,添加R5的和R2,R4可能添加寄存器R2和R4的内容,并把结果写入R5的。这种算术指令按照指令顺序执行,但分支指令可以通过改变处理器的程序计数器的指令地址来有条件的和循环执行。 一个处理器的汇编语言是由它的运算寻址方式,寄存器代码和存储器定义的。在操作码区分,也就是说,除了从条件分支和寻址模式定义如何以及在何处收集和存储数据。寄存器可以被看作是小型快速易于访问的内存块。 C语言 C程序包含有循环和条件指令结构在C程序中的算术表达式的顺序运行内置功能,但如条件式循环控制流量结构可以影响顺序执行指令。当控制到达表达调控中的一个函数调用传递给被调用

42、的函数,它运行着直到它产生一个结果,并控制返回继续评估调用的函数表达式。 C程序的类型来自这些直接操纵的处理器:有符号的和无符号从字节到词和浮点数字和指位器整合在一起。这些可以进一步分为数组和结构,命名字段组汇总。 C程序中使用三种类型的存储器。在程序编译时分配全局数据的空间,堆栈存储分配和释放时,自动变量的函数被调用和返回,堆用品的任意大小的内存区域,可按任何顺序处理。 C + + C + +在C程序的基础上为大程序扩展的机制:用户定义的数据类型,一种用不同形式重复使用代码命名组对象的名空间,以避免在方案件汇编的时候出现意外的名字发生矛盾,处理错误例外。C + +标准库提供了重要和强大的共同

43、类和接口,包括容器,迭代器和算法的集合。 一个类通过指定其可访问和修改的表现和操作来定义一个新的数据类型。类可以通过继承来定义,它扩展和修改现有的类。例如,一个矩形类可以补充到长度和宽度领域,面矩法改变一个类。 模板是一种可以用多种方式使用的特殊函数或类。编译器为生成每个模板的不同使用生成自定义代码。例如,同样分模板既可以用于整数和浮点数。 Java Java语言与C + +相似,但不兼容。和C + +一样,Java是可面向对象,提供类和继承。这是一个比C + +高级的语言,因为它使用的是对象引用,数组和指针,而不是字符串。 Java的自动无用信息收集使程序员从内存管理中解放出来。 Java提

44、供了并发线程。创建一个线程涉及扩展线程类,创建这些对象的实例,并调用其启动方法来开创一种新的控制去执行目标运作路线。 当两个或多个线程试图同时访问同一个对象时,同步方法或块需要使用一个对象锁来解决争议。一个线程试图获取另一个线程拥有的锁会被阻断,直到释放,这可允许一个线程独占访问某个特定对象。 实时操作系统 许多嵌入式系统使用实时操作系统以模拟一个单处理器的并发性。一个实时操作系统管理多个正在运行的进程,每个都编写在一个连贯的语言中,如C语言。处理器进行系统的计算,实时操作系统安排他们,试图应付决定哪个进程运行时的最后期限。 大多数的实时操作系统使用固定优先级抢占调度,当系统设定之后,每个进程

45、都有一个特定的优先级时。在任何时间,实时操作系统都运行最高优先级运行的进程,这是为了在暂停来等待更多的数据前的运行一段时间。通常使用速率单调分析来分配优先次序,这赋予频繁常遭遇静止行的处理器更高的优先次序。 3、数据流语言 数据流语言描述同时运行的通过队列流程沟通的程序处理器系统。虽然在一般的应用程序里很笨拙,但是数据流语言领域完美配合了信号处理算法,它使用了大量从线性系统理论推导出的算法解码,压缩,或筛选数据流来表现如声音或者影像这种不断变化的价值观定期样本。数据流语义自然的表现了方框图,而这些方框图通常用来描述信号处理算法,而它们的规律使数据流的实现显得非常有效,因为其他昂贵的运行调度决策

46、可在编译中作出,甚至包含多种采样率的系统。 卡恩流程网络 卡恩流程网络形成一个数据流计算的正式基础。卡恩的系统通过无界点至点先入先出队列沟通的流程。从登陆端阅读会让进程等待直到数据可用,因此卡恩网络的行为并不取决于执行速度。 平衡处理器的相对执行率,以避免无界积累的标识是卡恩网络在调度的一个挑战。任何处理器被编写一个完整的缓冲会闭塞直到空间可用,但如果系统因为所有缓冲区已满而死锁,那调度程序就增加了最小的缓冲能力。 同步数据流 同步数据流在修复在卡恩网络里的阻塞通信模式。每次1个区段运行时,它在每一个数据端口里消耗和生产出固定的数据标识。这种可预见性使得业务数据功能 能够在编译时完全的安排好,

47、生成十分高效的代码。 安排执行分两个步骤。首先,通过考虑每个防火墙在数据收发次序时的不同生产率和消耗率来决定设定每个防火墙的速度。一旦利率确定,任何无网络缓冲区情况下模拟的执行将会产生正确的安排,如果那个安排存在的话。然而,更加先进的技术通过更多的指定防火墙的执行而减少了合成码。 混合语言 混合语言结合了别人的想法来解决不同类型的问题。通过混合软件式的控制流与硬件的同步并发性,Esterel在离散控制上十分擅长。通信协议是规范和描述语言的优势,它使用扩展的有限状态机和单输入序列。C系统在C+基础上提供了一个灵活的离散事件仿真环境。 CoCentricTM系统工作室结合了Esterel式的有限自

48、动机语义的数据流来模拟合成同样需要控制的数据流应用。 Esterel Esterel结合了强制性软件语言的控制结构和并发性和优先权,以及用于同步数字电路的类时同步模型。在每一个时钟脉冲周期里,则程序则开始运行,读取输入,执行输出和暂停。 Esterel通过一个信号来通讯,这种信号在各个周期里出现或不出现都有可能。在每一个周期里,每个信号都不出现,除非是信号的发射陈述中运行了使得信号在该周期出现。Esterel承诺保证每一个信号发射器在任何测试信号的语句运行前正常。 规范和描述语言 规范和描述语言是一个为了描述由国际电信联盟定义的电信议定书的图形化的规范语言。系统包含一个同时运行的有限状态机,每一个都有一个单独的输入次序,由定义携带信息的通道连接。每个有限状态机消耗其序列中的最新消息,通过改变内部状态或发送信息到其他有限状态机来对它做出反应,然后进入下一个状态的变化并重复这个过程。每个有限状态机是确定性的,但是因为来自其他有限状态机的消息可能由于不同的执行速度与通信延迟而有任意的次序,所以一个规范和描述语言系统可能表现出不确定性秩序。 系统C 系统C语言是一个用于系统建模的C + +子集。 系统C规范的模拟通过用标准的C + +编译器

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号