三种嵌入式多内核设计模式的比较分析
时间:2023-10-31 06:07:02
摘要
对跨导放大器-电容器进行了全集成可变带宽中频宽带低通滤波器的讨论和分析(OTA—C)连续时间滤波器的结构、设计和具体实现,采用外部可编程电路控制设计滤波器的带宽ADS电路设计和模拟验证软件。模拟结果表明,滤波器带宽的可调范围为1~26 MHz,阻带抑制率大于35 dB,带内波纹小于0.5 dB,采用1.8 V电源,TSMC 0.18μm CMOS工艺库仿真,功耗小于21 mW,接近理想状态的频响曲线。
合并是嵌入式领域长期存在的一个趋势,它使得性能更优良的嵌入式设备采用更少的元器件,从而降低了成本及功耗预算。这一趋势的最新进展是在单个封装内提供多个处理器内核的多内核嵌入式微处理器的增加,而且与同等的单内核处理器相比具有低功耗和低成本的优点。
多处理器内核的使用需要软硬件团队之间更系统的设计合作。基于这一概念,以下是三个简单模型的概述,即使用当前的开发工具和硬件直接实现多核系统。这些多核设计模式不是严格定义系统的刚性模型,而是思考和讨论系统实现宏伟蓝图的初始点,并规定一套软硬件团队可以设计多核系统结构的通用术语。
三种设计模式
平面模式
第一种模式是平面模式(Planar Pattern),这个名字来源于控制平面和数据平面,划分通信系统的处理任务。它是一个广泛而不同类型的多核设计实例,统称为非对称多处理技术(简称)AMP”或“ASMP”)。
若采用平面模式,系统需分为多个自包含模块,具有明显的不同处理要求。该模式在其标准的通信和媒体处理形式中具有特殊的优势DSP或者在网络处理器上运行需要大量数据处理的算法CPU保持其他系统软件的正常运行。这种特殊性意味着平面模式系统通常在特殊部件的硬件上实现。因为很多平面硬件设备只有一个通用的CPU因此,传统的单核工具、操作系统和设计方法都可以用来设计和调试系统的一般部分。
片上格栅模式
片上栅格(Grid-on-Chip,或者简称格栅)模式是对平面模式的诠释,包括由多个完全独立的节点和网络连接组成的任何多处理器系统。网格是办公计算机网络的电影版本,是许多共享相邻物理链路但相互独立的网络处理节点。有些文献称这种类型的系统为分布式多处理系统,并且仍然将其分类AMP/ASMP在系统总类中。
使用栅格模式的关键要求是首先要分割系统,然后找到一个合适的节点间通信系统。(虽然更先进的网格系统可以在运行过程中重新配置自己,但网格模式系统的设计师需要仔细考虑系统功能的分配,以处理节点。)除分割外,格栅系统在三种设计模式中具有最低的高级设计约束。一旦系统被分割,每个独立节点的设计和实现就会像一个独立的系统一样进行。格栅系统可以在特殊硬件上实现,但另一个常见的选择是使用SMP将共享的存储空间分为每个核心段,以建立网格节点。
与其它设计相比,格栅模式系统具有几个突出的优点。首先,它们可以很容易地与过去的软件集成,过去的系统甚至可以继续在自己的节点上完全运行。此外,格栅系统的判断能力(determinism)调试能力有明显优势。网格模式系统设计的松散连接意味着在资源竞争中不会发生太多事故。由于熟悉的单核调试方法可用于每个孤立的系统节点,调试相对简单。格栅模式系统的分割特性使其更强,但这也是其缺陷的根源,因为分割使其难以再分配资源,这将导致格栅系统缺乏灵活性,以满足未来和不可预测的要求。
SMP模式
对称多处理(简称)SMP)在系统中,单个图像(single-image)操作系统是处理两个或两个以上共享存储空间内核的顶层,这些处理器内核基本相同。就像多内核桌面计算机一样,SMP在处理器内核组的基础上,模式系统可以动态平衡任务。重新分配处理能力以匹配当前任务的这种能力是SMP系统的主要优势之一也使SMP该系统成为三种模式中最灵活、适应性最强的模式。利用当今SMP在不牺牲任何性能的情况下,实时操作系统可以实现判断或实时响应。
一个SMP模型系统需要两个条件:一个是对称共享存储器的多核处理器平台,另一个是SMP功能操作系统。今天,许多处理器系列都支持它SMP还有多种渠道可以获得功能SMP操作系统。SMP系统的两个突出优点是开发人员熟悉,可以快速启动。理论上,开发人员更容易启动SMP移植了现有的应用设计,开发人员可以快速利用多核硬件的性能。
现实基本上是这样,但有几个问题需要记住。第一个值得注意的问题是硬实时要求和支持SMP实时操作系统的功能(RTOS)在使用时不会牺牲实时性能SMP没有硬实时功能的操作系统将缺乏判断力和更先进、更可变的中断反应时间。好的SMP RTOS而言无需担心此点,但需牢记的是,通用的操作系统在SMP与它在单处理器系统中的运行相比,硬件可能会有不同的性能。
第二个潜在问题是资源竞争。SMP该系统的一个突出优势是共享了许多资源,这使得SMP系统更加灵活和适应性。然而,这一优势也是一个缺点。由于所有资源共享,由于资源竞争,性能将发生意想不到的变化。这不会发生在每个系统中,但如果开发人员希望系统按照其设计的性能运行,他们应该牢记这一点。
实现和调试设计
就像嵌入式开发一样,软件的开发和调试需要在硬件设计过程中首先考虑。确保设计有片上调试(OCD)该功能将大大加快系统开发过程,并为编程和分析系统提供可靠的工具。单个平面设计模式和网格设计模式OCD端口允许开发人员调试系统的单核,就像他们有一个更传统的单核系统一样。
随着系统内核数量的不断增加,实时跟踪端口是另一个调试特性,变得越来越重要。实时跟踪提供了一种观察内核之间相互作用的标准方法,而不会破坏对再现问题起关键作用的敏感顺序。如果多核设备包含一个或多个实时跟踪端口,则更容易开发系统。
有一种说法是,它经常被提及但不现实:尽管许多开发人员成功地采用了这三种设计模式,但软件开发工具并不是为多核应用程序设计的。现在,已经有支持了SMP实时操作系统提供功能,可为开发人员提供灵活的判断,不损失实时判断SMP模式。对于平面模式和网格模式的设计,开发人员可以充分利用现有熟悉的验证单核设计工具和方法。多核设计可以使系统更加复杂,但开发的工具和方法可以帮助开发人员管理多核硬件的复杂性,实现其强大的功能和成本。
人工智能也可以在资源有限的嵌入式系统中实现!
2.运用Edge Impulse实现MCU机器学习,试试吧~
3.hex文件、bin文件、axf文件的区别?
4.C为什么语言开发单片机是全局变量形式?
5.Visual Studio它将使嵌入式开发更加芳香
6.完成欧洲处理器项目的第一阶段:29个RISC-V内核
免责声明:本文在网上转载,版权归原作者所有。如果涉及作品的版权,请联系我们,我们将根据您提供的版权证明材料确认版权,并支付报酬或删除内容。