广告

需要密切关注的 嵌入式系统的5个特征

2017-03-01 Jacob Beningo 阅读:
嵌入式软件开发人员在创建他们的系统时需要监控五个重要特征。现代系统拥有丰富的资源,监控这些特征有时看似价值不高或没有必要,但目前为止在现场遇到的最大问题总是与这五个关键特征密切相关。

无论一个嵌入式系统多简单或多复杂,有5个关键特征是需要开发人员特别留意的。有一些特征显而易见,如RAM和ROM的使用情况;还有一些特征很容易被开发人员忽视,如系统时序和执行顺序,成为开发设计的隐患。svBednc

特征1—系统时序

如果向开发人员询问系统中断或其它系统函数的最小、最大和平均执行时间,90%的反应是翻白眼。说到嵌入式系统的实时性能,许多开发人员只能在心里祷告获得最好的结果。如今的微控制器已经变得非常快速和强大,但它们只是一般的计算器件,其时序并不能被完全忽略。开发人员需要了解多个中断同时发生或者用户在同一时刻“按下”所有按钮(这是我喜欢的一种测试方法,几乎百分之百不能一次通过)时,系统将如何响应。svBednc

幸运的是,现代微控制器有多种工具帮助开发人员理解嵌入式系统的时序和响应。举例来说,ARM微控制器有跟踪功能,使开发人员可以定期采样PC计数器,并重构系统时序和执行路径。利用这些工具,开发人员能看到反映系统内部工作的实际数据,而不再只是默默祈祷系统按自己想要的方式执行代码。svBednc

特征2—执行顺序

对开发人员来说,了解指令执行顺序与了解系统时序一样重要。知道系统在何处分支或跳转、各个函数或中断何时并以何种顺序执行非常重要。如今的系统变得非常复杂,虽然我们自认为明白正在发生什么,但仍然需要提取跟踪数据,明明白白看到代码的执行。结果显示的内容常常与我们所预期的完全不同。svBednc

我强烈推荐开发人员研究并熟悉这些微控制器跟踪工具。这些现代工具可以提供几年前完全无法想象的直观洞察图。我曾经用这些工具提供的洞察功能找出了许多设计缺陷,因此在编写代码之前设置好了跟踪与缺陷捕获工具。svBednc

特征3—代码大小

人们理所当然地认为每个开发人员都会监视代码大小,但我认为实际上他们没有这样做。若是问一个GPIO或SPI驱动程序在他们的系统中占多少空间,大多数开发人员甚至都不知道去哪儿找答案!他们唯一知道的是自己编写的应用程序有GPIO和SPI,最终的应用程序使用了(比如)约47kB的闪存空间。众所周知,我们通常都不会跟踪系统中的代码细节。svBednc

现在在我们的保护系统中,代码大小会根据所用的编译器甚至优化等级和标志而有很大的变化。另外,多数情况下,监视代码大小已经变得不那么重要了,这是因为闪存相当便宜,供应商已经能够做到根据代码大小便利地在同一微控制器系列的不同器件之间切换。但为了便于未来的项目规划和器件选择,跟踪驱动程序等项目的细节仍然特别有用。svBednc

特征4—RAM的使用

与代码存储器不同,RAM正成为嵌入式软件开发的关键因素。提供超过100kB的闪存空间同时却只提供16kB的RAM,对于微控制器已经很常见。这意味着RAM空间仍然非常珍贵。如果再考虑实时操作系统(RTOS),情况会变得更糟。在基于RTOS的系统中,开发人员通常将大量的RAM分配给线程堆栈空间,因为很难准确估计合适的大小。因此开发人员在编写并实现他们的软件时,需要监控RAM空间都作了何用。svBednc

特征5—能耗

对于电池供电的设备,能耗无疑是系统设计的一个关键要求。而对于接入电网的系统,因为能耗不是关键要求,因此常被忽略。鉴于能量成本不断上升、自然资源逐渐减少,开发人员仍应继续监控设计的功耗需求,以便了解它们的能耗情况并最大程度地降低能耗。借助这种监视,由电池供电的设备显然会通过替换电池或给电池充电而获得更长的工作时间。那些直接连接到电网的设备也能节省电力成本而使消费者和最终用户受益。的确,每一台单独的设备所节约的能源可能微乎其微,但如果数百万台设备合在一起,我们就知道有多少能量不会被浪费了。svBednc

总结

本文讨论了嵌入式软件开发人员在创建他们的系统时需要监控的五个重要特征。现代系统拥有丰富的资源,监控这些特征有时看似价值不高或没有必要,但目前为止我在现场遇到的最大问题总是与这五个关键特征密切相关。svBednc

《电子技术设计》2017年3月刊版权所有,谢绝转载。svBednc

20160630000123svBednc

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • 上海微系统所使用石墨烯纳米带研制出世界上最小尺寸的 非易失性相变随机存取存储器(PCRAM)被认为是大数据时代新兴海量存储的有希望的候选者之一。然而,相对较高的编程能量阻碍了 PCRAM 中功耗的进一步降低。利用石墨烯的窄边接触可以有效降低每个电池中相变材料的活性体积,从而实现低功耗运行。
  • 第三代半导体——碳化硅材料之制程与分析 SiC功率电子是加速电动车时代到来的主要动能。以SiC MOSFET取代目前的Si IGBT,不仅能使电力移转时的能源损耗降低80%以上,同时也可让芯片模块尺寸微缩至原本的1/10,达到延长电动车续航里程及缩短充电时间的功效。
  • 苹果iPhone 14 Pro、iPhone 14 Pro Max 将采用更快的 随着iPhone 14系列发布的临近,iPhone 14系列的内存供应商也被曝光。一份由DigiTimes发表的报道显示,今年晚些时候到达的"Pro"型号将配备6GB LPDDR5内存,这比当前一代的iPhone 13 Pro和iPhone 13 Pro Max都有6GB LPDDR4X内存提升了一代。
  • 国际象棋机器人Chessrobot夹断对手手指,意外还是设计缺 据悉,在7月19日的莫斯科国际象棋公开赛期间,一位7岁小男孩疑似因提前走子犯规手,意外被“对手”国际象棋机器人Chessrobot夹住手指,造成指骨骨折,该事件登上了热搜榜。该男孩是莫斯科9岁以下最强的30位棋手之一。
  • M2 Pro 和 M2 Max 或是苹果首款采用台积电3nm 工艺的 M1 Pro 和 M1 Max 最多可配置 10 核 CPU 和 32 核 GPU。借助 M2 Pro 和 M2 Max,Apple 有望突破这一门槛,为这两个领域带来更多的核心数量。目前M2 Pro相关的爆料很少,但据称M2 Max 有12 核 GPU 和 38 核 GPU。12 核 CPU 将包括 10 个性能核心和两个能效核心。
  • 小米12S Ultra游戏性能超越iPhone 13 Pro Max?高通骁龙 高通将骁龙8 Plus Gen 1的量产交给台积电之后,其生产技术带来了许多改进,其中之一是提高了游戏性能。众所周知,Apple 的 A15 Bionic 是目前公认的最快的移动 SoC,但这一认知却被小米 12S Ultra 搭配高通骁龙8 Plus Gen 1所颠覆。
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告
    向右滑动:上一篇 向左滑动:下一篇 我知道了