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

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

    关注

    49

    文章

    8833

    浏览量

    165612
  • 处理器
    +关注

    关注

    68

    文章

    20327

    浏览量

    254747
  • 发动机
    +关注

    关注

    33

    文章

    2721

    浏览量

    72854
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11326

    浏览量

    225836
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ADM5120 系统级芯片(SoC)网络控制器:高性能与多功能的完美结合

    ADM5120 系统级芯片(SoC)网络控制器:高性能与多功能的完美结合 在当今数字化的时代,网络设备的性能和功能需求不断提升。对于电子工程师而言,
    的头像 发表于 03-30 14:20 126次阅读

    村田电感出现磁芯断裂,会对电路性能产生什么影响?

    村田电感若出现磁芯断裂,会对电路性能产生多方面的严重影响,具体分析如下: ​ 1.磁性能下降,电感量失准 磁芯是电感的核心部件,其作用是提供高效的磁路,增加电感器的磁
    的头像 发表于 03-23 16:42 308次阅读
    村田电感出现磁芯断裂,<b class='flag-5'>会对</b>电路<b class='flag-5'>性能</b><b class='flag-5'>产生</b>什么影响?

    国巨电阻如何选择合适的型号?

    关注的焦点。本文将从应用场景、阻值范围、功率封装、温度系数、成本可靠性等关键维度出发,为您梳理国巨电阻选型的系统化方法。 国巨电阻选择合适型号的步骤如下 : 1、确定应用场景与需求 : 普通电路 :如上下拉电阻、
    的头像 发表于 03-17 16:11 248次阅读
    国巨电阻如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的型号?

    如何选择合适的嵌入式核心版产品?

    嵌入式产品的设计是一个复杂的系统工程,从硬件到应用软件,再到底层驱动,一个好的产品往往需要考虑诸多因素。那么,工程师该如何选择一款合适的核心版产品呢?今天我们就来深入探讨一下。1.技术规格技术规格
    的头像 发表于 01-19 11:41 719次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的嵌入式核心版产品?

    如何选择合适的半导体芯片清洗模块

    选择合适的半导体芯片清洗模块需要综合考虑工艺需求、设备性能、兼容性及成本效益等多方面因素。以下是关键决策点的详细分析:1.明确清洗目标与污染物类型污染物特性决定清洗策略:若主要去除颗粒物(如硅微粉
    的头像 发表于 09-22 11:04 856次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的半导体芯片清洗模块

    如何选择合适的实时操作系统

    选择合适的实时操作系统(RTOS,Real-Time Operating System)可能会影响你在不同行业的职业发展路径。
    的头像 发表于 09-09 14:47 1222次阅读

    从GX连接器到应用:如何选择合适的连接器以提高设备性能

    选择合适的连接器对提高设备性能至关重要。GX连接器凭借其出色的性能和广泛的适用性,已成为各行业设备的重要组成部分。作为工程师,我们必须综合考虑设备的
    的头像 发表于 08-26 14:39 922次阅读
    从GX连接器到应用:如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的连接器以提高设备<b class='flag-5'>性能</b>

    如何选择合适的TVS管

    TVS管以快速的响应速度、精准的钳位电压及多样化的封装形式,使其广泛应用于各种需要瞬态电压保护的电子电路领域,如电子仪器与仪表、医疗设备、工业自动化设备与计算机系统与通讯设备等等。在保护设计中,选择
    的头像 发表于 08-14 10:25 2.7w次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的TVS管

    如何选择合适的直流负载或交流负载?

    如何选择合适的直流负载或交流负载?
    的头像 发表于 08-04 17:53 1358次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的直流负载或交流负载?

    如何选择工业电脑?

    选择一台设备齐全的工业电脑来处理工作负载,确保可靠和不间断的运行是至关重要的。那么,如何选择合适的工业计算机呢?选择合适的工业电脑取决于任务
    的头像 发表于 07-29 15:49 651次阅读
    如何<b class='flag-5'>选择</b>工业电脑?

    如何选择合适的物联网蓝牙模块?

    也会导致更多的信号干扰。因此,需要根据具体应用场景选择合适的发射功率模块。2、接收灵敏度:接收灵敏度决定了蓝牙模块能否在多远距离内成功接收信号。接收灵敏度越高的模块,能够接收信号的距离就越远。因此
    发表于 06-28 21:46

    如何选择合适的工业化超声波清洗设备?

    如何选择合适的工业化超声波清洗设备?专家指导在制造业中,选择合适的工业化超声波清洗设备至关重要。不同的应用需要不同类型的设备,而且性能和功能
    的头像 发表于 06-18 17:24 857次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的工业化超声波清洗设备?

    如何选择合适的背负式AGV小车

    选择合适的背负式AGV需要考虑以下几个方面: 负载能力 确定所需搬运货物的重量和尺寸,选择负载能力匹配的联集背负式AGV。常见的联集背负式AGV负载重在200-1000公斤,甚至更高。 工作环境
    的头像 发表于 05-21 16:33 711次阅读

    CYPD3177直接连接 VBUS_IN 而不使用 VBUS_FET_EN 负载开关,会对我们的系统产生任何影响吗?

    PD IC 是否可以通过 I2C 与处理器传达电缆方向信息? 如果我们直接连接 VBUS_IN 而不使用 VBUS_FET_EN 负载开关,会对我们的系统产生任何影响吗?
    发表于 05-20 07:39

    如何选择合适的 BNC 连接器?接线工具与配件推荐

    线缆:配套的线缆要与BNC连接器的阻抗匹配。例如,75Ω的BNC连接器应搭配75Ω特性阻抗的同轴电缆,如RG-59线缆,确保信号传输全程阻抗匹配,减少信号失真。 选择合适的BNC连接器需综合考虑应用场景与性能指标,搭配优质的
    的头像 发表于 05-05 11:07 840次阅读
    如何<b class='flag-5'>选择</b><b class='flag-5'>合适</b>的 BNC 连接器?接线工具与配件推荐