查看 RTOS Revealed 系列 本文继续介绍信号量。 信号量实用服务 Nucleus RTOS 有四个 API 调用,它们提供与信号量相关的实用功能:重置信号量、返回有关信号量的信息、返回应用程序中的信号量数量以及返回指向应用程序中所有信号量的指针。其中前三个在 Nucleus SE 中实现。 重置信号量 此 API 调用将信号量恢复到其初始未使用状态。与可用于其他内核对象的 API 函数相比,此 API 函数是不寻常的,因为虽然它是一个重置,但它并不简单地将其计数器初始化为启动值;调用中提供了新的初始计数。任何在信号量上暂停的任务都将恢复并收到 NUSE_SEMAPHOR
查看 RTOS Revealed 系列 邮箱在之前的文章中介绍过。它们可能是 Nucleus SE 支持的第二个最简单的任务间通信方法——仅次于信号。它们提供了一种在任务之间传递简单消息的低成本但灵活的方法。 使用邮箱 在 Nucleus SE 中,邮箱是在构建时配置的。一个应用程序最多可以配置 16 个邮箱。如果未配置邮箱,则应用程序中不包含属于邮箱的数据结构或服务调用代码。 邮箱只是一个存储位置,足够容纳 ADDR 类型的单个变量 ,对其的访问受到控制,以便多个任务可以安全地使用它。一项任务可以写入邮箱。然后它就满了,在任务读取邮箱或邮箱重置之前,没有任务可以发送给它。尝试发送到一
自 2011 年发布以来,ARMv8 处理器架构在移动设备市场上已经相当普遍。根据ARM Limited CEO的预测,到2020年这一代处理器的全球市场份额将达到25%。历史形成的基础设施的原则。 在市场的服务器领域观察到一种根本不同的情况。基于 X86 的服务器在这个领域占据主导地位已经有一段时间了,而 ARMv8 才刚刚找到它的出路(并且只进入特定的业务领域)。 ARM 市场的新颖性以及大多数公认的标准和规范(主要是 ACPI 和 UEFI)直到最近才适用于 ARM 系统这一事实已经在软件基础设施的发展上留下了印记。 本文重点概述基于 ARM 的服务器系统和处理器功能,并不声称是详尽
编者注:我们的好朋友 Max 正在寻找有关电子计算器和求解器的任何建议。没有什么太大或太小。让他知道您认为哪些可能值得包含在 EEWeb.com 的工具列表中。 时不时,一缕意想不到的阳光冲破云层,照亮我的生活。这样的事件刚刚发生。不久前,当我写下这些话的时候,我被那些穿着权威的内衣,跨过我们将要添加到 EEWeb 电子计算器系列中的权力走廊的人告知。 (来源:pixabay.com) 唯一的缺点是,基于那些住在神圣的命运殿堂并乐于用骰子决定我们的命运的人所青睐的反复无常和复杂的逆时间顺序现实(RCR),他们现在想知道为什么我没有上周抢先开始这项任务。他们不想听到我关于我
我收到了大量来自为各种项目发起众筹活动的人的电子邮件。这可能是因为我自己偶尔也涉足众筹领域,而且我已经发布了几篇关于特别调整我的幻想的项目的专栏。 其中一些项目规模大、复杂且昂贵,而另一些项目规模小、成本低且易于打理。我特别喜欢那些让我惊叹的,“哦!我怎么没想到呢?”说到这里,我刚收到一个叫 Forrest Bao 的家伙的邮件,他说: 嗨,我想报告一个开源项目,它可以大大加快 Arduino 的原型设计。它可以消除在 Arduino 和面包板之间使用跳线的痛苦。它目前正在众筹活动中。这是链接:www.crowdsupply.com/loser/breadshield 消除跳线总是一
随着高速模数转换器 (ADC) 采样率的提高,ADC 输出数据中的代码错误(也称为闪烁代码)问题也随之增加。代码错误定义为 ADC 输出代码中超出定义阈值的错误。阈值通常定义为误差超过 ADC 噪声预期幅度的水平,以便在存在噪声的情况下可以轻松识别误差。 另一种解释误差阈值定义的方法是,给定 ADC 假定的高斯分布噪声,误差幅度出现的概率超过该幅度的预期概率。 图 1 显示了在 ADC 的输出样本中发现的示例代码错误。与理想的正弦波拟合相比,错误样本清晰可见,远远超过图中其他样本的噪声。 图 1:带有代码错误的 ADC 输出示例。 ADC 的误码率 (CER),有时也称为字
在我的上一篇博文“Arm Cortex-M 低功耗模式基础知识”中,我们探讨了可以在每个 Arm Cortex-M 处理器上找到的低功耗模式的基础知识,以及我们如何利用 WFI 和 WFE 指令来放置处理器睡觉。但真正存在的问题是这些低功耗模式如何在真正的微控制器上实现,以及这些模式如何影响我们的嵌入式系统?在这篇博文中,我们将更详细地探讨如何让微控制器进入睡眠状态,并了解为我们购买了多少能量。 低功耗模式实验 探索低功耗模式的最佳方法是选择一个微控制器并在各种低功耗模式下实际运行处理器。在这篇文章中,我决定将我久经考验的真正 NXP Kinetis-L Freedom 板擦掉,我不仅试
电力往往需要成本;高电力成本高。这种对阿克顿勋爵名言的强制改编抓住了半导体设计和功耗的两个重要方面。从一段时间内的平均功耗来看,很明显,具有高功耗的芯片会产生高成本。在便携式设备中,更大的功率意味着更大和更昂贵的电池,或者缩短电池寿命。此外,更大的功率意味着更先进和更昂贵的封装来消散产生的热量。这三个因素在产品定价、利润率和市场成功可能性方面也会产生连锁反应成本。 对功耗的担忧远远超出了至少部分时间依靠电池运行的便携式设备。壁挂式设备还会在封装、电源和配电系统方面产生额外成本。这些相同的问题一直延伸到服务器群,包括机架或计算服务器、海量数据存储阵列和网络交换机。服务器群的运营成本是巨大的;研
近年来,我们看到越来越多的新电子应用需要更小的封装、新的外形、更低的功耗和更多的功能,包括嵌入式信号处理、传感器、成像接口和电源管理组件——所有这些都集成在紧凑的尺寸内,有时甚至柔性基板。这种趋势对传统的 PCB 技术提出了许多挑战。以前平坦的刚性 PCB 是主流,智能手表、物联网设备和其他紧凑型系统的出现刺激了先进的新型微型 PCB 的开发,旨在适应不断缩小的封装尺寸的轮廓。新一代 PCB 与前一代几乎没有相似之处,设计人员一直在努力适应。 这些趋势影响设计人员将生产技术强调为更细的导线、高速信号传输线、困难的阻抗控制和过孔放置实践,以及修改基板和增加对嵌入式设备的依赖。这对 PCB 设计
自从电子设计诞生以来,有设计的地方就有缺陷。但是,在它们出现错误的地方,不可避免地会进行调试,与错误、错误和错误进行史诗般的角力比赛,以确定哪些会占上风 - 以及如何彻底。 在许多方面,调试技术的发展与设计的任何方面一样引人入胜。但它很少受到关注。调试已经从简单的刺激-响应-观察方法演变为旨在解决日益复杂的设计的复杂工具、设备和方法。现在,在 2017 年,随着功能 I/O 调试的引入,我们迎来了一个激动人心的新时代。 这是全球数十年辛勤工作和发明的结晶。我从 1984 年就开始参与调试,所以为了真正体会我们现在在调试中所经历的范式转变,回顾一下这些年来发生的创新是很有用的。 1970
异步复位和同步逻辑时钟之间缺乏协调会导致上电时出现间歇性故障。在本系列文章中,我们讨论了异步复位的要求和挑战,并探索了 ASIC 与 FPGA 设计的高级解决方案。 VLSI 设计中传统上采用异步复位,用于在上电后将同步电路置于已知状态。异步复位释放操作必须与同步逻辑时钟信号协调,以消除由于复位和时钟之间可能的争用而导致的同步失败。缺乏这种协调会导致上电时出现间歇性故障。当考虑大型、多时钟域设计时,问题会加剧。除了同步问题之外,将异步复位分配到数百万个触发器也具有挑战性,需要类似于 CTS(时钟树合成)的技术并需要类似的面积和布线资源。 回顾了异步复位的要求和挑战,重点是同步和分布问题。讨
异步复位和同步逻辑时钟之间缺乏协调会导致上电时出现间歇性故障。在本系列文章中,我们讨论了异步复位的要求和挑战,并探索了 ASIC 与 FPGA 设计的高级解决方案。 VLSI 设计中传统上采用异步复位,用于在上电后将同步电路置于已知状态。异步复位释放操作必须与同步逻辑时钟信号协调,以消除由于复位和时钟之间可能的争用而导致的同步失败。缺乏这种协调会导致上电时出现间歇性故障。当考虑大型、多时钟域设计时,问题会加剧。除了同步问题之外,将异步复位分配到数百万个触发器也具有挑战性,需要类似于 CTS(时钟树合成)的技术并需要类似的面积和布线资源。 回顾了异步复位的要求和挑战,重点是同步和分布问题。讨
Internet 上有大量实时操作系统 (RTOS) 可用(单击此处查看“小”列表)。然而,这些产品中的许多现在都已失效/未维护。 在剩下的那些中,大多数只支持一个微控制器或一个微控制器系列。再进一步筛选,您会发现即使是支持多个微控制器的微控制器通常也不具备您需要的所有功能:USB、以太网、Wi-Fi、6LoWPAN、图形 LCD、SD 卡、FAT 文件系统、CAN 总线、 RS485等 相比之下,NuttX RTOS 支持所有这些功能,并且所有功能都已集成到系统中。例如,您无需花费时间移植 FAT 文件系统来使其在 RTOS、FreeModBus 或 Micropython 等上运行。所
最近,Brian Bailey 组织了一个圆桌会议,结果发表了一篇名为 Supporting CPUs Plus FPGAs 的两部分文章 .专家们讨论了基于 FPGA 和 CPU 的系统设计不断发展的现实。本次讨论涉及设计流程的最新发展,以及如何使用新技术帮助软件开发人员加快 CPU 加 FPGA 平台的上市时间。 简介 看着人们对人工智能(AI)日益增长的兴趣、物联网(IoT)的出现以及数据中心加速的趋势,我们不禁要问:三者之间的共同点是什么? 软件开发人员处于所有这些趋势的中心,他们正在寻求加速他们的编程和计算。最新的技术突破,包括 FPGA 和 CPU 之间的低通信延迟,加上当今
长期以来,我一直对 Achronix 的技术感兴趣。大约在 2004/2005 年,他们的异步 FPGA 架构首次引起了我的兴趣。最终,这设法达到了与时钟频率为 2 GHz 的同步 FPGA 相当的速度(如果有这样的野兽的话),但它仅适用于数量有限的算法和数据流应用。 2013 年,Achronix 推出了名为 Speedster 的高性能、高密度独立 FPGA 系列,专注于目标应用。 2016 年,Achronix 产品组合得到了 Speedcore 的扩充,Speedcore 是一款高性能嵌入式 FPGA (eFPGA)。 FPGA 非常适合加速数据密集型人工智能 (AI)/机器学习
耳戴式耳机和真正的无线立体声耳塞越来越受欢迎,但它们还远未发挥其全部潜力。这些微型设备可以改变人们与周围环境互动的方式,为日常生活增添增强的听觉能力、乐趣和安全性。无线音乐体验的市场采用已经在进行中。随着越来越多的设备被语音激活——从家用电器到运动相机——这些微型耳塞也是如此,同时语音界面的智能也在不断增加。然而,缺乏标准化和将多种技术集成到一个无缝封装中的问题仍然阻碍了这一市场。 耳戴式设备正变得无处不在,但它们的全部潜力仍有待开发(来源:索尼移动) 从降噪到增强现实的增强声音 智能耳塞可让用户在与周围环境保持联系的同时,从他们的数字内容中享受更丰富的体验,而无需绑定到手持设备。智能耳
编者注:无线设计可能会阻碍连接设备开发的最佳计划。特别是,设计不当的天线馈线可能很难在测试期间的开发后期发现。这是我们在 EEWeb 上的朋友写的一篇好文章,深入探讨了一种用于改进接地共面波导 RF 馈线设计的方法,以提高 Wi-Fi 性能。 最近,Arira Design 的信号完整性小组被要求重新设计现有的 5GHz 接地共面波导射频馈线,以提高客户板上 Wi-Fi 子系统的性能。测量表明,馈线阻抗的阻抗约为38欧姆。 在进行仿真之前,原始设计中发现了几个问题,包括: 未能考虑阻焊层对走线阻抗的影响 未能在走线阻抗计算中考虑 PCB 回蚀 附近非参考地平面中的切口不正确
在过去几年中,自动语音识别 (ASR) 的重大进步已经导致大量使用语音作为其主要界面的设备和应用程序。 IEEE 频谱 杂志宣布2017年为语音识别年; ZDNet 在 CES 2017 上报道称,语音是下一个计算机接口;许多其他人也有类似的看法。那么,我们在语音接口的进步方面处于什么位置?这篇博文将调查语音界面的现状及其支持技术。 您有多少设备可以与您对话? 语音激活无处不在。几乎每部智能手机都有语音界面,像 Apple iPhone 7 和三星 Galaxy S7 这样的旗舰产品都包含始终聆听功能。大多数智能手表都提供语音激活功能,以及其他可穿戴设备,尤其是耳戴设备,例如 Apple 的
在我的职业生涯中,我参与了为一些非常有趣的项目开发大量 FPGA 设计。遗憾的是,我还参与了拯救一些严重误入歧途的 FPGA 设计的工作。当我处理这些问题设计时,很明显——尽管目标应用程序和开发团队的成员不同——这些设计有一些共同点,这些共同点在第一位工程师甚至坐下来写第一行之前就注定了它们的失败HDL代码。 (来源:pixabay.com) 考虑到这一点,我想我会解决我在拯救这些项目的过程中观察到的五个常见问题。这些问题如下: #1: 第一个问题不仅与基于 FPGA 的开发有关,而且与一般的工程有关。问题在于启动时没有稳定的需求基线。总是希望在需要证明进展的基础上在需求仍然成熟时开始
术语 5G——意思是第五代移动网络或无线系统——最近越来越多地出现。早在2020年就有初步部署的说法。但鲜为人知的是,5G标准仍在考虑和定义中,许多方面仍在不断变化。 那么5G意味着什么呢?那么,下一代移动网络 (NGMN) 联盟定义了 5G 标准应满足的以下要求: 为数以万计的用户提供每秒数十兆比特的数据速率。 大城市地区的数据速率为每秒 100 兆比特。 1 Gb/s 同时传输给同一办公室楼层的许多员工。 数十万个无线传感器同时连接。 与 4G 相比,频谱效率显着提高。 提高覆盖率。 提高信号效率。 显着减少延迟。 简而言之,5G 将提供一个统一的协议,将大量用户聚集在一起,这些用
嵌入式