基于LabVIEW的32位处理器嵌入式系统的开发

发布者:fuehrd努力的最新更新时间:2019-11-16 来源: eepw关键字:LabVIEW  32位处理器  嵌入式系统 手机看文章 扫描二维码
随时随地手机看文章

随着32位多核处理器应用逐渐走热,设计者正面临着新的挑战, 业内专家指出面向角色(actor-oriented)的图形化方法是更适合嵌入式软件设计的工具。NI 的LabVIEW嵌入式开发模块是LabVIEW图形化编程环境的一款全新附加模块,通过这个软件和图形化系统设计的理念,原先无法利用到嵌入式编程的工程师们都可以进入32位微处理器的领域之中。通过LabVIEW中附加的状态图、控制图表、信号处理库函数等这一完整的工具来设计它们的应用,以解决各种问题。本文对该开发工具进行了介绍。

随着嵌入式系统变得越来越复杂,设计者正面临着新的挑战:随着基于32位微控制器(MCU)的嵌入式系统的成本向16位系统逐步接近,在许多高级应用中8位和16位微控制器正逐步让位给扩展性更佳,性能更好的32位片上系统(SoC)。此外,由于单纯通过CPU的性能提升来增加整个系统的性能已经不是一种持久的发展趋势了,所以主要的处理器制造商已经转向了多核心架构。从Dell在几个月前推出的多处理器核心的台式计算机,就可以看到这种趋势。从消费者和用户的观点上来看,处理性能的提升是一样的。但是,从一个嵌入式系统开发者的观点来看,设计将变得更加复杂,因为您必须了解如何在多处理器环境下开发和分割您的应用。根据十年前的估计,嵌入式系统的平均代码量为10万行。到2001年,这个数字实际已经超过了100万,而现在的数字估计为500万。

现在我们将视线转移到当前嵌入式系统的开发工具上来,随着复杂度的逐渐上升,现在传统工具很难降低编程工作的复杂度,嵌入式领域需要另一种方法来应对这些挑战。挑战不仅是工具方面的,还有解决问题的途径:基于文本编程的嵌入式应用开发在将来不可能解决这些问题。这已经是许多业内专家的共识;Edward Lee博士是加州大学伯克利分校嵌入式研究方面的领先者,他指出现在嵌入式系统的开发手段如基于文本编程和面向对象的工具都难以用来构建嵌入式实时系统,因为面向对象很难直观地表达时间和平行性(parallelism),而时间和平行性或并行(concurrency)在现在的嵌入式系统中是必不可少的。Lee博士提出面向角色(actor-oriented)的图形化方法是更适合嵌入式软件设计的工具。

虽然嵌入式系统的挑战越来越严峻,但是现在已经有了许多解决的方向。许多供应商采取了将底层工具的设计抽象出来的办法。这种方法每前进一步,都会吸引更多的用户。另一个方向是可以更彻底地解决面临的挑战,也就是向基于平台的工具转移,它能够更好地表达整个系统,而减少与特定硬件的相关性,这使得更多的软件设计容易理解并被重复使用,而从基于文本的工具向图形化工具的转移则可以直观地表达系统,并解决系统的挑战。图形化系统设计(Graphical System Design)的理念就是源于这些趋势。通过简化嵌入式编程的复杂性,它降低了对领域专家在嵌入式设计流程中各个步骤的要求;同时提供了从设计、原型到部署的一条捷径,使得工程师和科学家们可以更快速地进行重复设计。

尽管市场上的工具都在向图形化的方向转变,但由于它们是针对特定领域特定应用的工具,所以仍旧受到自身的限制,而这是不足以解决行业将要面临的挑战的。事实上,现在的嵌入式系统市场与八十年代早期的台式计算机市场有很多相似之处,其中的一个特点就是非常分散。现在市场所需的是一种完全的图形化编程语言,提供足够的灵活性和功能,以满足更广泛应用的需求。因此,图形化系统设计的关键因素是图形化编程。

将设计方法学直接应用于实现

自1986年诞生以来,LabVIEW图形化编程语言已经开始简化了系统的复杂性,并在同一个平台上提供采集、分析和显示等功能,在使用计算能力对处理过程自动化的同时,允许在研发原型,制造和测试过程中对软硬件的重用,弥补了原先因为原型、制造和测试三个步骤间因工具不同而造成的这一鸿沟。在所有涉及到数据采集和控制的领域里,LabVIEW图形化方式都已经成为标准的开发工具。从那时开始,我们就一直向这个编程环境添加功能上的改进,现在LabVIEW在已有的定时循环结构上新加了硬件定时功能,它是一种表示时间和并行的语义。现在,我们就可以通过点击来设置操作系统优先级,延时,循环速率等等;回想在文章前面所提到的向多处理器转移的趋势,现在我们可以憧憬使用可扩展的直观图形化编程,来开发应用,并将处理过程分配到不同的处理器上。

新的NI LabVIEW嵌入式开发模块(LabVIEW Embedded Development Module,)是LabVIEW图形化编程环境的一款全新附加模块,通过这个软件和图形化系统设计的理念,原先无法利用到嵌入式编程的工程师们都可以进入32位微处理器的领域之中。通过LabVIEW中附加的状态图、控制图表、信号处理库函数等这一完整的工具来设计它们的应用,以解决各种问题。

领域专家-在某个科学或工程领域的专家,但不一定是嵌入式的程序员-一般使用不同的模型或工具解决他们学术上或工程上的问题。例如,开发引擎控制单元(ECU)的工程师可能使用状态图来对引擎控制单元的功能进行图形化的描述。这位工程师可能是一个控制理论方面的专家,但是却可能没有任何嵌入式或C编程方面的经验。直到现在,嵌入式应用的实现仍然需要深入了解关于嵌入式编程工具,如C语言等方面的知识。因此,很多领域专家要实现他们的解决方案,甚至只是简单的验证一个概念仍然要依赖专门的嵌入式开发人员。这个存在于领域专家和嵌入式程序员之间的鸿沟,使得开发时间增加,而且容易在系统中引入错误。

LabVIEW嵌入式开发模块在设计和实现间的鸿沟之上架起了一座桥梁。领域的专家现在可以使用相同环境快速地设计算法,对定制的设计进行原型设计,将他们的解决方案在所选的目标上实现,并进行调试——所有这些过程都是通过图形化方式实现的。

开发与目标无关的代码

嵌入式目标本身要求程序员在编写代码之前对目标有深入的了解。程序需要知道板卡上各种关于内存映射和寄存器的信息,才能在板卡上执行他们的代码。另外,大部分代码是专为某一特定目标编写的。这样,在一块板卡上使用不同的微处理器或是不同的外围设备,可能就需要重新编写大部分已有的代码,或是完全从头开始。这意味着最终产品的扩展性方面是有缺陷的。

图1:LabVIEW 开发界面


但是,使用LabVIEW嵌入式开发模块,工程师和科学家们不需了解最终的目标,就可以进行代码开发,因为软件生成的是LabVIEW应用的ANSI C代码,而不是针对某个特定目标的二进制代码。LabVIEW嵌入式方式是一个开放的框架,它可以整合任意的第三方工具链,将生成的C代码、LabVIEW实时库函数和板卡支持程序包(BSP)编译成为针对某一目标并能在这个目标上运行的二进制代码。BSP是一种作为C代码与板上外围硬件接口的底层代码。因此,如果板卡需要升级,工程师可以简单地将不同的BSP链接到LabVIEW中,在现有的图形化代码上作一小部分改动就可以完成。

与目标无关的代码开发意味着工程师和科学家不再需要等待硬件确定之后再开始设计算法。这样并行的工作和效率的提升,使开发周期和产品上市时间大大缩短。最后,所生成的LabVIEW代码不是针对某个特定平台的,所以您很容易升级到新的硬件。

使用LabVIEW嵌入式特性缩短开发时间

LabVIEW嵌入式开发模块构建在自LabVIEW诞生以来近20年的创新精神之上,帮助工程师和科学家们利用数百个内建的库函数,涵盖高等算法、文件I/O、逻辑和信号处理各个方面。通过LabVIEW嵌入式方式 ,工程师和科学家可以使用一种叫做内联C节点(Inline C Node)的新特性,整合现有的嵌入式代码,来保持LabVIEW的开放架构。

除了用于快速调试的内建图形化用户接口显示件、探针、断点和函数步进之外,LabVIEW嵌入式开发模块为代码调试提供了另外两种无缝的接口。在嵌入式目标平台上,工程师可以使用“仪器调试”(instrumented debugging),以便于通过TCP/IP、RS232,或CAN进行调试。使用内建的片上调试接口,工程师可以通过工业标准协议,如JTAG、BDI和Nexus等,进行调试,同时不影响程序性能。

LabVIEW嵌入式开发模块使领域专家可以使用现有的技术进行更多的应用,使用同一环境进行算法设计、原型,实现他们的解决方案,极大地缩短开发时间和产品上市时间。
NI提供了各种硬件平台与LabVIEW集成,完成从设计、原型到部署的全过程。例如使用LabVIEW和NI 可重复配置I/O(RIO)设备或NI CompactRIO平台,他们可以快速而便捷地创建嵌入式系统的原型。NI现有的一个成功案例就是帮助汽车控制和数据采集解决方案的提供商--Drivven公司通过NI CompactRIO对基于FPGA的2004 Yamaha YZF-R6摩托车引擎控制系统设计原型,他们的目标是为基于FPGA传动控制器提供一条无缝的从原型设计到生产的路径。对于这个项目,Drivven在软件上使用LabVIEW;在硬件上选择了一个4插槽的NI CompactRIO嵌入式系统,因为它灵活性强、体积小巧而且波形因数稳定。利用这一系统,他们可以在轻松地添加传感器和激励器的同时快速且便捷地观察数据,除此之外,还可以在一个超级运动型摩托车上利用的极为有限的空间放置控制器。这个项目包含三个主要的阶段: 1,通过自定义I/O模块的开发。共有三个自定义I/O模块监视着所有摩托车的传感器并控制它的激励器,此外现在正在开发其他的CompactRIO的模块以用于传动控制应用,包括用于驱动电子节流阀的模块和与通用的废气氧气传感器连接的模块。2,映射工厂级ECU(Factory ECU)。把ECU数据记录在1MB的文件上(在每分钟一个文件的速率下高达20个文件)同时在许多种不同的节流阀位置和引擎速率(接近700个操作点)的组合下驾驶摩托车从而完整地映射了工厂级ECU(Factory ECU)的性能。驾驶员仔细地驾驶着摩托车,以尽可能的减少瞬时操作。在一辆跟随的汽车里的工程师则周期地以无线的方式从CompactRIO接收数据文件,传输至一台笔记本电脑并且立即分析这些数据以覆盖所有操作点。一个基于笔记本电脑的NI LabVIEW应用程序迅速地将数据分类至速度/负载操作表,与此同时滤除瞬时数据。对每一个操作点都从这些数据计算出平均和标准的偏差。在两个小时里,这个团队采集了90%摩托车的操作点的数据,这对于全面理解工厂级ECU的映射是一个足够充分的覆盖。后来,在实验室里,工程师又使用LabVIEW对这些数据进行处理,在图形化地修改原始数据以填充丢失的操作点的同时提供了3维和2维的可视化信息。3,引擎控制。在最后阶段,Drivven使用CompactRIO对一个研究性质的ECU进行原型设计,它的性能可以与工厂级ECU相媲美,但是却提供了可以实施未来控制算法研究和开发的功能(这对使用生产目的的电子是不可能的)。利用CompactRIO,Drivven实现了许多引擎管理FPGA核,它们都具有可配置的LabVIEW FPGA图表并放置在方框图里。使用LabVIEW实时模块,实现了速度-密度和alpha-N引擎控制策略(经常用于高性能的赛车场合)的结合。所以说,Compact RIO和LabVIEW提供了所需的可靠性和精确的定时资源,而且这个系统具有足够稳定性来承受工作环境的高温和高振动。如果读者想要阅读完整的解决方案,请访问ni.com/china,输入信息码(info code)cn5k8t。

另外使用LabVIEW嵌入式开发模块,还可以制造嵌入式板卡并部署到任意的32位微处理器。正如LabVIEW使工程师们可以开发定制的虚拟仪器,而不再依赖供应商定义的台式仪器,从而在测试和测量领域掀起一场革命一样,LabVIEW嵌入式开发模块使得业内专家可以使用他们的专业知识开发嵌入式应用,而不需要再依赖嵌入式方面的专家。

NI嵌入式开发模块示意图

随着嵌入式系统设计的复杂性日益增加,图形化方式是一个必然的趋势,它正在对嵌入式设计进行重新的定义,使更多的工程师可以以一种前所未有的方式使用嵌入式开发,从而使设计的速度和质量得到提高。将分散的市场整合、采用标准和现成可用的技术,并发布集成的、易用的软硬件平台——这就是NI多年来所持之以恒的运营模式。图形化系统设计,这是一个将嵌入式设计推向更广大受众的平台,我们通过一个统一的图形化工具提供这种功能,这种工具能将领域专家从越发复杂的嵌入式设计中解脱出来。从设计、原型到实现的整个过程中,使用统一的设计工具无疑将会大大提升整个设计过程的效率。


关键字:LabVIEW  32位处理器  嵌入式系统 引用地址:基于LabVIEW的32位处理器嵌入式系统的开发

上一篇:LabVIEW8.6有哪些新亮点?
下一篇:Labview基本常见问题解答(四)

推荐阅读最新更新时间:2024-11-02 15:38

基于Labview的自动化精密阻抗分析系统构架
0 引言 随着科学技术的进步,各类实验研究的对象和方法也越来越复杂,相对应的实验系统及实验平台的复杂度也成几何增长。传统的人工操作在精确度及重复性上已远远不能满足要求。于是仪器设备的高度可集成化和可自动化已成为当代仪器必不可少的特性。但不同实验系统所要求的测量参数和步骤均不同,因此所需要的实验仪器系统同时也应该是可模块化并且可自主集成的。虚拟仪器(VIs)概念的提出使得可以利用传统的仪器设备来搭建不同的实验平台。并且由于VI是可编程和可程控的,这样可以依据不同的实验要求来改变实验平台的设计。基于VI的平台相比较于商业化的集成平台有着显著的优势:a.利用各类传统仪器即可搭建复杂的系统;b.平台的功能可以通过程序的改变而简单地变换;
[测试测量]
基于<font color='red'>Labview</font>的自动化精密阻抗分析系统构架
NIWEEK 2018——更强大的软硬件造就未来
5月22日,美国奥斯汀,美国国家仪器(National Instruments)举办了NIWEEK 2018年度盛宴,此次NIWEEK以“加速到来的未来(Future Faster)”为主题,旨在通过提供NI最新的软硬件平台,为客户解决未来问题。此次NIWEEK规模盛大,共有3300名听众参加了230场以上的课程培训,而在展览会上共有106个展商,NI也在展位上提供了104个Demo可让观众更直观的体验NI的产品和解决方案。 “为什么我们一再强调未来?虽然现今的挑战已然很大,但随着系统越来越复杂,未来对测试复杂度的需求将会越来越多,我们作为基础技术供应商,需要提前为客户做好储备。”NI总裁兼CEO Alex Davern在NI
[测试测量]
NIWEEK 2018——更强大的软硬件造就未来
满足的嵌入式系统电路特性测试需求的JTAG技术
引言: EEE 1149.1边界扫描测试标准(通常称为JTAG、1149.1或"dot 1")是一种用来进行复杂IC与电路板上的特性测试的工业标准方法,大多数复杂电子系统都以这种或那种方式用到了IEEE1149.1(JTAG)标准。为了更好地理解这种方法,本文将探讨在不同年代的系统开发与设计中是如何使用JTAG的,通过借助过去有关JTAG接入的经验或投入,推动设计向新一代发展。 大多数复杂电子系统都以这种或那种方式用到了IEEE1149.1(JTAG)标准。如果系统采用的是复杂FPGA或CPLD,那么几乎可 以肯定这些硬件是通过JTAG端口设置的。如果系统利用仿真工具来调试硬件或软件,那么仿真工具也很可能是通过JTAG端口与微处理
[电源管理]
满足的<font color='red'>嵌入式系统</font>电路特性测试需求的JTAG技术
基于可配置处理器嵌入式系统ESL设计需求
虚拟系统原型工具提供单核或多核SoC平台的仿真模型,可以以数十MHz的速度仿真实际系统。系统架构师需要在这样的平台上运行大量的测试序列,并得到系统性能分析的结果,软件开发人员也可在接近实际的仿真模型中测试他们的嵌入式软件。 但现今提供的商业ESL工具没有一种可以在更早的阶段帮助工程师决定系统的基础架构,例如决定整个系统需要使用处理器的数量和种类;需要设计专门的通信机制还是使用传统的分级总线;如何将应用程序划分成多个任务,并分配到不同的处理器上运行;如何有效的探索各种可能的设计方案等。现在的SoC架构设计工具和ISS要在体系架构确定后才有用武之地。 今天的设计要比上世纪90年代末处理器加硬件模块的结构复杂许多。
[嵌入式]
LabVIEW静态事件的注册
用户界面事件可以进行用户静态事件注册,使用 编辑事件 对话框配置事件结构来处理静态注册的事件。选择事件源,事件源可以是程序、VI或某个控件;再选择一个事件源可产生的特定事件,如前面板大小调整,值改变等,再根据应用程序的需求,编辑该分支来处理事件数据。 运行一个含有事件结构的VI时,LabVIEW会自动进行静态事件注册。只有在VI处于运行状态或另一个处于运行状态的VI以子VI的形式调用该VI时,LabVIEW才产生该VI的事件。运行一个VI时,LabVIEW将顶层VI及其在程序框图上所调用的子VI的层次结构设置一个称为保留的执行状态。由于Ⅵ的父VI在运行时会随时将其作为子VI调用,所以当VI处于保留状态时,不能编辑VI或单击运行按钮。
[测试测量]
便携式振动分析仪测试研究
  引言   便携式振动仪是随着设备故障诊断需求不断提高而发展起来的面向现场的测试仪器。传统的振动分析仪器具有结构复杂、体积大、操作不方便等特点;而基于单片机的振动采集分析仪虽然体积较小,但是分析能力有限,往往不能够满足振动分析与诊断的特殊要求。   本文所设计的振动分析仪以CompactRIO为采集设备,以Labview为软件开发平台,不但具有体积小、重量轻的特点,而且具有强大、灵活的专业分析能力,适合于测点分散而又不需要持续检测的测试场合。   系统结构   系统采用上下位机结构,下位机将采集到的转速和振动信号通过TCP/IP协议传送给上位机,上位机进行数据保存与分析。结构如图1所示。 图1 系统结构简图   通过在线分析
[测试测量]
便携式振动分析仪测试研究
龙芯税控SoC中Bootloader的设计与分析
前言 Bootloader是系统加电运行的第一段软件代码。在嵌入式系统 中,通常并没有像BIOS那样的固件程序,因此整个系统的加载启动任务就完全由Bootloader来完成。Bootloader是底层硬件和上层应用软件之间的一个中间件软件。它创建内核需要的一些信息并将这些信息通过相关机制传递给内核,从而将系统的软硬件环境带到一个合适的状态。同时还提供基本输入、输出系统监控程序功能,还可具有一定的调试功能。 随着大规模集成电路的发展和现在工艺的进步,片上系统SoC逐渐成为主流的芯片设计形态。龙芯税控 SoC系统软件框架包括以下几个主要部分:工具链、模拟调试环境、仿真环境、Bootloader、操作系统以及应用程序。本文介绍了龙芯税控
[单片机]
龙芯税控SoC中Bootloader的设计与分析
小广播
最新测试测量文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved