0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

选择合适CPU会对整个SoC系统的性能产生什么影响?

我快闭嘴 来源:贤集网 作者:贤集网 2020-09-21 11:30 次阅读

如果您认为CPU对片上系统(SoC)而言就像汽车的引擎一样,你知道你不会将大众汽车的发动机放在悍马车上,并期望它能发挥作用。同样,法拉利发动机也不适合。尽管法拉利可以为悍马发动机提供类似的马力,但由于缺少扭矩,它可能会失效。

对马力的简单评估与在汽车世界中一样,在选择CPU时会产生误导。有针对所需功能的最佳解决方案。SoC中的CPU选择也是如此。很多时候,设计人员仅根据系统架构师对特定CPU的知识和过去的经验来选择CPU。

在决定使用哪个CPU时,设计人员应考虑总体系统指标,例如:总体设计的复杂性,设计重点,保护,性能,功耗,尺寸,成本,工具和中间件可用性。

设计的复杂性有助于确定要使用哪个CPU。例如,如果设计要求部署一台状态机,并带有来自少量外围设备的中断,则小型CPU和/或微控制器(例如8051或Z80)可能是最佳选择。许多系统(例如寻呼机)最初可能适合此类别。内存占用空间小,信号缓慢,电池消耗必须非常低。

算法及其相互作用将决定设计的复杂性,也可能确定其是否需要实时操作系统(RTOS)。通常,随着应用程序复杂性的增加,对更大位宽处理器的需求也随之增加。

设计正在被重视,并且复杂性不断增加;那个2000年的传呼机可能需要在2003年播放MP3,因此8位CPU可能不足以应付当前的任务。设计包含的接口数量是一个很好的指标。例如,在我们的传呼机中,最初有两个主要界面,用户界面和无线电链接。在添加MP3播放器的设计中,我们将需要添加用于存储和传输数据的内存接口,以及用于播放数据的音频接口。在这个例子中,系统的复杂性从最初的概念开始就大大增加了,如果我们考虑将来可以将设计部署到哪里,我们可以重用许多相同的设计。

确保您留有增长空间。今天,您的8位设计可能适合MP3播放器。但是,当在具有更高带宽外围设备的机顶盒应用程序中重用设计时,您可能需要重新设计完整的解决方案,以迁移到基于ARM,MIPS或PowerPC的应用程序。体系结构以应对新的约束。

系统可能需要保护自己免受外部攻击,甚至免受自身攻击,这意味着CPU可能需要包含内存管理单元(MMU)来解决此问题。虚拟内存允许受约束的程序访问整个系统,而不受信任的程序只能访问分配给它们的内存。3G手机(具有Internet连接的手机)是需要保护的典型示例。由于恶意程序会使您的手机崩溃,因此设计人员不再能够使用缺少MMU的CPU。尽管MMU并没有消除潜在的系统故障,但它减少了难以发现的系统故障的数量和频率。

三种主要的CPU体系结构围绕具有16位,24位和32位地址总线的8位,16位和32位数据寄存器构建。这些体系结构之间的主要区别在于,一个特定的寄存器可以容纳的信息量以及可以直接寻址的信息量,如下所示:使用8位数据寄存器和16位地址总线,CPU可以拥有64k的地址空间;一个带有16位数据寄存器和24位地址的地址空间可以具有16兆字节的地址空间;而具有32位数据的32位地址将具有4 GB的地址空间。

为什么嵌入式系统曾经需要访问4 GB的地址空间?答案很简单:由于要求系统执行更复杂的任务,因此运行的代码的大小和复杂性都会增加。Z80上CPM的早期使用了存储内存和页面交换的过程来运行8位计算机上更复杂的程序。由于64k的空间不足,设计人员通过覆盖内存和页面以使更多CPU占用空间,使系统变得更加复杂。

对于许多设计而言,24位地址总线似乎已足够。但是,有几个因素将设计人员驱使到32位地址空间,包括保护和指针。为了进行保护,具有虚拟内存的CPU可以使用整个地址范围将物理内存划分为单独的虚拟空间,从而可以保护指针免受错误的侵害。无需索引即可使任何寄存器成为指向内存的指针的功能简化了软件。

选择CPU会对整个系统的性能产生极大的影响。具体来说,缓存,MMU,流水线,分支预测和超标量体系结构等功能都会影响系统的速度。根据SoC的需求,可能需要使用这些功能来实现系统的最佳性能。

SoC的最终用途将决定您的设计消耗多少功率。如果您的设计是电池供电的,则CPU将需要尽可能节省功耗。例如,某些CPU具有睡眠。这些模式允许CPU在空闲时通过关闭CPU的数量来暂停操作并消耗更少的功率。不同的CPU执行同一任务的结果不同。

CPU的成本可以通过几种方法来衡量。首先,存在IP成本,其中包括为SoC和任何衍生产品获得IP的成本。然后是系统集成成本,其中包括可用于SoC设计和实现的工具。最后,您必须确定CPU变体是否经过硅验证,以及在SoC使用的总线体系结构中是否可用。

RTOS和中间件的可用性也可能决定您的选择。例如,在设计PDA时,您可能需要适用于Linux的中间件,但是选择虚拟操作系统将决定您要从小型非MMU CPU迁移。

此外,如果设计需要图形系统或文件系统,则RTOS的选择将决定CPU的类型。许多RTOS供应商针对特定的家庭,而其他人则保持不变。大多数8位CPU都具有简单的调度程序,尽管这些调度程序适合于消耗很少的外包代码的小型设计,但不适用于消耗任何数量的外包代码的设计。解决方案的外包将确定要使用的RTOS,进而决定将支持哪些CPU。

其他考虑因素包括:您需要哪些工具来进行设计,并且它们可用于您可能使用的标准ANSI C / C ++编译器吗?您将如何在硬件/软件协同仿真环境或SoC中调试设计?是否存在JTAG端口,CPU是使用该通道进行调试还是调试需要专用的串行端口?选择更高级的语言(例如C ++)或从UML中的设计生成的代码也可能表明您需要更高的总线宽度和时钟频率来处理代码的大小和复杂性。

如果将SoC划分为几个通过松散连接的FIFO或串行通道进行通信的处理器子系统,则可能会更好。许多设计都集成了数字信号处理器和RISC CPU,以分担工作量并简化每个处理器域的设计。

现代SoC设计为系统架构师提出了新的挑战。选择CPU不再是琐碎的事情。通过使用诸如总体设计的复杂性,设计重用,保护,性能,功耗,尺寸,成本,工具和中间件可用性之类的指南,设计人员可以简化决策。
责任编辑:tzh

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7500

    浏览量

    151130
  • 处理器
    +关注

    关注

    68

    文章

    19186

    浏览量

    229263
  • 发动机
    +关注

    关注

    33

    文章

    2450

    浏览量

    69194
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10832

    浏览量

    211275
收藏 人收藏

    评论

    相关推荐

    如何选择合适的PLC控制系统

    在现代工业自动化领域,PLC控制系统因其可靠性、灵活性和易于编程而成为核心组件。选择合适的PLC系统不仅能够提高生产效率,还能降低维护成本。 1. 应用需求分析 在
    的头像 发表于 11-08 09:43 168次阅读

    如何选择合适SOC芯片

    在现代电子设计中,SOC芯片扮演着核心角色,集成了处理器、内存、输入/输出接口等多种功能。 1. 确定应用需求 在选择SOC芯片之前,首先需要明确产品的应用需求。这包括: 性能要求 :
    的头像 发表于 10-31 14:56 282次阅读

    如何选择合适的UWB模块

    选择合适的UWB(超宽带)模块需要考虑多个因素,以确保模块能够满足特定应用场景的需求。以下是一些关键因素和步骤,帮助您选择合适的UWB模块: 一、了解UWB技术基础 工作原理 :UWB
    的头像 发表于 10-31 11:18 368次阅读

    如何选择合适的adc芯片

    在现代电子设计中,ADC芯片扮演着至关重要的角色,它们将模拟信号转换为数字信号,以便微处理器或数字电路可以处理。选择合适的ADC芯片不仅能够提高系统性能,还能降低成本和功耗。 1. 确定应用需求 在
    的头像 发表于 10-31 10:33 216次阅读

    怎样选择合适的MOSFET

    怎样选择合适的MOSFET
    的头像 发表于 10-01 08:01 217次阅读
    怎样<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的MOSFET

    如何选择合适的过载保护器

    选择合适的过载保护器是确保电气系统安全稳定运行的关键步骤。以下将详细阐述如何选择合适的过载保护器,包括考虑的因素、
    的头像 发表于 09-06 11:53 643次阅读

    CPU主要性能指标有哪些

    CPU(中央处理器)的性能指标是衡量其处理能力和效率的关键参数。这些指标不仅决定了CPU在处理各种任务时的速度和效率,还影响了整个计算机系统
    的头像 发表于 09-02 11:01 3314次阅读

    如何选择合适的风冷散热器?

    CPU散热器是用作辅助CPU散热的一个配件,为CPU创造一个良好的散热环境,如果CPU散热器选择的不好,
    的头像 发表于 08-30 12:13 731次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的风冷散热器?

    如何选择合适的工控机

    选择合适的工控机取决于您的任务所需的计算性能、电脑的部署环境、计算机的空间、您拥有的电源以及您需要的连接功能。1.性能CPU是每台工业计算机
    的头像 发表于 07-16 15:18 231次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的工控机

    如何根据需求选择合适的新加坡VPS操作系统?

    选择合适的新加坡VPS操作系统您需要考虑哪些因素,如何根据需求选择合适的新加坡VPS操作系统?r
    的头像 发表于 05-10 11:14 411次阅读
    如何根据需求<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的新加坡VPS操作<b class='flag-5'>系统</b>?

    谐波量多大会对电抗器产生影响

    谐波量是指电路中存在的频率是基波频率整数倍的谐波信号的振幅。在电力系统中,谐波量的大小会对电抗器的性能和运行产生影响。本文将深入探讨谐波量对电抗器的影响,并提供一些解决方案,以确保电抗
    的头像 发表于 04-08 14:08 767次阅读
    谐波量多大<b class='flag-5'>会对</b>电抗器<b class='flag-5'>产生</b>影响

    晶振的外接电容值选择不当,会对电路产生什么影响?

    如果晶振的外接电容值选择不当,可能会对电路产生以下影响 : 1.频率稳定性: 电容值过小可能导致频率稳定性下降,容易受到外界因素的干扰。电容值过大可能会使频率偏离标称值。 2.起振问题: 电容值
    发表于 03-04 11:33

    什么是预充电阻 如何选择合适的电阻

    什么是预充电阻 如何选择合适的电阻  预充电阻是用于控制电路的电容预充电的电阻器。在电容上电之前,通过预充电阻器将充电电流限制在合适的范围内,以减少电容充电时对电路和电源的压力。 电容器是一种电子
    的头像 发表于 02-02 16:41 2997次阅读

    什么是中央处理器,中央处理器的性能结构

    总体来说,中央处理器是计算机系统的核心部件,它的性能整个系统的运行效率有着至关重要的影响。不同的CPU具有不同的
    的头像 发表于 01-16 13:56 1737次阅读

    如何选择合适的伺服联轴器?

    详细了解将非常有助于选择合适的联轴器。不同的伺服连轴器存在着其自身的优缺点。本文旨在向伺服联轴器的终端用户介绍不同联轴器的性能,同时指出设计中要考虑的因素以及如何针对不同的应用情况选择
    的头像 发表于 12-25 16:35 906次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的伺服联轴器?