如何为多CPU SoC设计选择合适的CPU内核

来源 :电子与电脑 | 被引量 : 0次 | 上传用户:eddiechen3
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  MIPS科技公司供稿
  
  越来越多的SoC设计中使用多个CPU。用于多CPU设计的处理器内核应该具备一些重要特性,包括出众的性能密度、有效的处理器间通信、调试支持和执行的灵活性及可配置性。本文阐述与专门为多CPU设计的内核——MIPS32 M4K内核有关的特性。
  随着对可编程性能需求的不断增长,越来越多的SoC设计师倾向于使用多CPU。许多应用对于性能的需求快速增长。这是单CPU能力所不及的。使用多CPU更容易实现复杂实时系统的性能分配和响应时间。外围设备或是特定加速器中的专用CPU可以为主CPU分担低级功能,这样主CPU便可专注于高级功能。
  由于各种原因,现在的多CPU设计在嵌入式系统中是切实可行的。嵌入式应用通常具有高度分区灵活性,可加速对多CPU的映射。在某些情况下,映射到多个独立CPU比使用一个CPU更为容易。同样,由于许多嵌入式应用是采用平行CPU开发的,便具有显著的平行能力。例如NPU设计师利用这个特点开发了邮件路由。另外,利用今天的0.13和0.10μm工艺,多CPU SoC系统的创建可以更加经济。
  在不断发展的许多重要市场中都可见到多CPU设计。网络路由是率先广泛应用多CPU设计的领域之一。大多数新一代网络处理器都是基于多CPU设计的。除了标准NPU,目标ASSP也在利用多处理器建立更加优化、更有应用针对性的路由解决方案。许多情况下.特殊ASSP是比标准NPU更为有效率的解决方案。ASSP可以集成恰当的物理接口或考虑片上存储器的大小,亦或提供最佳的处理器配置。
  相关的应用如DSLAM和基站或高性能网络存储设备也在利用分治法建立高性能的可编程解决方案。出于成本和/或功耗的原因,甚至终端用户设备也在开始利用多CPU实现最高的性能密度。机顶盒、住宅网关,甚至智能移动设备也都在采用多CPU——不仅再是一个RISC处理器和一个DSP,而是多个RISC处理器和DSP。
  
  如何构成理想CPU内核
  
  用于多CPU设计的理想处理器内核必须具有以下一些重要特性。
  首先最重要的是,它必须可提供出色的性能密度。多CPU设计的目的是在每平方毫米或每瓦特拥有尽量多的性能集合。能够以最小空间或最低功耗实现最高MIPS的解决方案才是最佳选择。
  另一个需求是处理器间有效的通信。即使许多多CPU设计是软件关联的.仍然需要大量的处理器间的通信。如果没有用来支持处理器之间通信的结构,那么SoC设计师就必须进行开发。这些工作不仅要耗费大量时间.同时也给设计带来了另一方面的复杂性。对于处理器间通信的支持可简化SoC设计师的工作量,也可以缩短开发时间,还可以将分区边界的低效率降到最低。
  多CPU设计的另一个挑战的是调试。内核之间是相互影响和彼此依靠的,因此在调试SoC时了解这些交互行为十分重要。CPU需要具备内置能力.在进行调试时能够完全互动。如果没有这种能力,SoC调试可能会迅速变成一场灾难,也许更糟——变得完全不可调试。优秀的多CPU调试工具对于CUP的支持也十分关键,这样才可以保证SoC设计师发挥嵌入CPU的调试能力。
  另外需要考虑的是配置和执行CPU内核的灵活性水平。在多CPU设计中,重要的是在最大限度地降低面积和功耗的同时使性能最大化,而一个高度可配置、可合成的CPU有助于设计师考虑特定应用的面积、功率和频率。利用硬内核或不能配置的内核是不可能做的这一点的。它将严重限制执行的选择。
  考虑到上述因素,MfPS科技发布了专门针对多CPU设计的CPU内核。MIPS32 M4K内核具有高性能,不过或许令人惊奇的是,它也是小型的低功耗内核,而且还是可合成的,具备低延迟存储器系统。
  让我们来看看M4K内核的映射是否满足上述要求。
  
  性能密度
  
  性能密度的定义是.以最小的面积提供最高的性能,或是在最小面积上实现最低的功耗。M4K内核可用紧凑的面积和功率限制来提供高性能。该产品可提供大约1.35Dhrystone(整数和逻辑运算性能测试)MIPS/MHz(无需使用其他内核使用的受到置疑的编译器窍门),采用普通0.13μm工艺的产品可在240MHz(最差情况下)条件下运行,采用更高性能的0.13μm工艺的产品可在300MHz条件下运行。
  作为性能密度公式的分母部分,M4K内核是一个非常小和功耗极低的处理器。该产品可配置成像32K门电路,也就是小于0.3mm2的尺寸,而且仍然可以保持整个MIPS32架构的兼容性。该产品的功耗极低,采用0.13μm工艺时可低至0.10mW/MHz。
  该内核还具有新的增强型MIPS架构,可改善重要应用功能的性能。这些功能包括优先化、矢量中断及多达4个寄存器上下文,以减少中断延迟和开销。位域和字节级指令可提供高效率的信息包处理。
  


  该产品包括自定义指令集扩展,SoC设计师可利用该功能执行所需的专用的、高度集中的应用优化,并利用定制指令扩展M4K中业界标准的MIPS32指令集。任何寄存器到寄存器或立即存取寄存器指令都可以进行添加。定制指令可为单周期或多周期,也可支持新用户状态。这些自定义指令是由内核RTL、合成脚本和仿真模式支持的,并可使用GreenHills、Cygnus和Mentor等公司的业界标准开发工具。
  此外,可能最为重要的是,M4K内核具有上述所有特性,同时可保持MIPS32的完全兼容性,并可使用MIPS CPU广泛的软件和工具。事实上,该内核是惟一具有定制指令扩展和业界标准架构的有效的可配置处理器。
  
  处理器间的通信
  
  在多CPU设计中,处理器间必须进行通信以控制共享资源的使用。在今天的大多数多CPU设计中,存储器关联完全由软件控制,所以通信所需的普通高速缓存关联是不能使用的。
  M4K内核通过外部化MIPS架构中的加载关联(LL)行为和条件存储(SC)来支持多CPU信标,以保证对系统逻辑进行必要的监控。此外。SYNC指令的行为可提供存储器排序壁垒,以保证正确的排序语义,也可以提供信号接口,为系统设计提供最大的控制和灵活性。
  如图2所示,当执行典型的信标存取码序列时,LL和sc指令可提供原子型读一改一写序列,而无需锁定整个系统。
  


  例如,在测试和设置安全自旋锁定时,LL指令可在信号接口产生一个读指令,它作为LL由系统进行确认。然后系统按照该地址设置监控。如果另一个处理器写入这个受到监控的地址,监控的通过/失败标记就会被清除。当CPU执行SC指令时.系统逻辑根据监控状态有条件执行对存储器的存储。通过/失败指令会返回处理器,而软件通常会重复失败序列,直到成功为止。
  同样,SYNC指令的语义外化可保证系统存储器壁垒的 正确行为。
  如图3的例子所示,SYNC被放置在一个共享缓冲器的最后的存储与可释放一个控制语义的存储之间。当执行SYNC指令时,CPU向系统逻辑发送信号,通知CPU等待同步响应。一旦系统确认指令可以执行,就将信号发回CPU,允许其后的任务或存储继续执行。一个简单的系统可能会等待所有未完成处理事务的完成,而一个更为复杂的系统可在其列队中保持顺序,而缓冲器可以更快地做出响应。这两种系统中,CPU软件和硬件机制是相同的。
  


  M4K处理器间的通信功能是一种优异的解决方案,得到了业界标准开发工具的全面支持。计划利用M4K内核实现多CPU的设计师.可以利用这些功能快速而容易地实现内核之间的通信,缩短设计时间并降低实现风险。
  
  调试支持
  
  多CPU设计中的调试可能是一个挑战。多处理器之间的互动可能产生难以发现和解决的问题,除非调试工具可以在所有内核上同时执行。
  M4K内核的基于EJTAG的调试逻辑可以应对这一挑战。首先,M4K内核上的EJTAG接口可与一个SoC上的所有内核进行菊链式(daisy-chained)连接,以保证同时对单个调试器和所有内核进行调试。这样还可以支持独立或同步启动、停止或单步控制。
  另外一个很好的功能是M4K支持的多CPU调试是跨CPU的断点的。该内核具有支持CPU断点的能力,可在几个时钟周期内在一个CPU或几个CPU中形成一个断点。该功能是通过一个小型逻辑块由软件控制的,它决定哪个CPU可以穿过另一个CPU。这种能力对于解决CPU互动相关的调试问题非常有用。
  M4K内核上的这些调试功能可赋予使用者充分的支持,以及针对多CPU SoC设计的易用调试环境,从而减少设计时间和风险。
  
  可配置性
  
  由于多CPU系统中的效率至关重要.执行的灵活性和可配置性对构建解决特定应用问题的最佳解决方案也非常重要。
  M4K内核是MIPS科技开发的最具可配置性的内核。如图4所示,大多数CPU模块是可选择或可配置的。
  


  乘法器可以实现高性能或最小的面积。如前所述,寄存器上下文的数量可以进行配置。如果不需要MIPS 16e内核代码压缩解码器.可以将它去掉。调试支持中的多折衷能力只需要最少的支持,就可确定不同数量的硬件断点,甚至还可以使用TAP控制器。
  对于程序和数据跟踪,可以使用或不使用片上捕捉缓冲器,跟踪支持可以进行配置。协处理器接口逻辑可内置或外置。如前所述.自定义的定制化指令扩展可以增加,也可以使用时钟选通(为了减少功耗)。
  除了内部内核的配置性,M4K内核还具有存储器系统设计的相当大的灵活性。它可以使用单独指令和数据存储空间来支持哈佛系统,后者采用针对高效存储器存取的极低延迟的同步SRAM型接口。该接口支持单一循环或多循环处理,并支持8位、16位和32位外围设备的连接。该接口也可使用相同的低延迟接口针对结合指令和数据空间的分享内存系统建立。
  此外,从SRAM型接口到基于EC系统逻辑的桥接可支持现有的基于MIPS32 4K、4KE或MIPS64 5K内核系统的外围设备应用。
  该桥接支持低延迟存储器,以保证本地存储器存取的高性能,同时可连接传统的MIPS-based CPU子系统。
  
  多CPU系统
  
  系统可以用多CPU内核做什么呢,如图5所示,网络存储系统可以使用多核从主处理器卸载特定的功能,就像MIPS64 20Kc那样。通过在网络接口添加一个CPU,可以通过外围设备在本地实现如过滤、L2或L3协议响应和分段与重组等更高级的功能,使主CPU可以处理更高级的协议或管理功能。
  


  同样,利用加速器(如这个例子中的TCP卸载)中的一个或多个M4K内核,可以将特殊高性能功能的与主处理器分开,同时仍然保持标准可重复编程器件的优势。
  另一个多CPU系统设计的常见例子是线卡。它可能是一个网络路由器,也可能是DSLAM或无线基站。在这些例子中.平行的CPU子系统,也叫微型引擎.可用来为高度平行的应用提供巨大的总体性能,如level2处理、信息包分类、过滤或标记管理。在这个例子中,主处理器主要用于异常处理。这种方法有许多变化.不仅可用于平行处理.而且可用于处理器流水线或平行处理器流水线。
  多CPU设计在芯片设计师中日渐流行,因为它可以提供可扩展和可编程性能,并可满足许多网络和其他嵌入式系统设计的自然分区。对于现在大多数SoC设计来说.多CPU设计不是没有挑战,而是这些挑战可以通过使用CPU内核来解决,MIPS32 M4K正是优化处理工作的解决方案之一。
其他文献
在“幼儿园以游戏为基本活动”的课程改革理念下,幼儿园出现了大量的实质为教学的虚假游戏,其徒有游戏的形式,却没有体现幼儿作为游戏主人的意识,幼儿无法体验游戏的快乐,也无法在游戏中实现真发展。因此,组织开展幼儿的真游戏,即符合游戏本质的幼儿园自主游戏显得难能可贵。这类游戏幼儿可以自主选择游戏方式、游戏伙伴、并商定游戏规则、决定游戏进程,可真正体现幼儿作为游戏者的自由意志。  游戏是幼儿按照自己意愿进行
期刊
Maxim公司供文    过去几年来,ADSL标准沿着ADSL、ADSL2。ADSL2+以及“Extended Reach ADSL2”逐步演进,数据传输率增加到24Mbps,传输距离长达6660多米。ADSL2标准规定的下行频段上至1.1MHz,而ADSL2+为2.2MHz,使较短电话线上的数据传输率显著提升。图1和图2给出了不同标准所覆盖的带宽、数据速率和距离。当同一线束中传输多条ADSL业务
期刊
十一、大型资料集之丛集化    大型数据分析是数据/知识探勘领域的一个重镇,因此丛集方法的使用也被要求要能应用在这些大型数据的处理上。许多传统丛集法(例如:K-means)在处理大型数据上颇受青睐,但是在应付高维度数据关系的分析时却捉筋见肘。为了因应数据的日趋多样化且大量化,丛集算法本身具有的延展性便成为该方法得否长生不死的关键。这些多样化的大量数据通常具有两种特征,一种是数量庞大,另一种特征是数
期刊
为了实现远程数据采集和传输,本文提出了一种基于DSP的网络化数据采集卡的设计。介绍了DSP与A/D转换模块的接口设计和DSP与以太网控制器的接口设计。实现了基于DSP的TCP/IP协议栈的嵌入。  现代数据采集领域中,越来越多地现场采集设备需要扩展网络功能以实现远程控制和数据传输。以太网以其低成本,易于网络集成,传输距离远的优势使其得到了广泛应用,采用以太网进行数据的采集和传输的优势在于从底层采集
期刊
OLED技术(有机发光二极管;Organic Light-Emitting Diode)目前在便携式设备显罘器应用的市塌上正不断地扩大,根据预测,运用OLED技术的显示69其尺寸及产量将会持续不断地增加。    白光OLED在照明应用上的发展课题    关于在照明的应用方面.随着第一个产品即将问世OLED的潜力被寄予厚望.然而,特别是针对白光OLED应用,若要真正导入市场.其效率、寿命及制造成本等
期刊
应用工程师问答-3  避免电容负载所造成  不稳定的实际技术    电容负载往往会提高问题的困难度,其部分的原因是在于它们可以降低输出频宽以及回转率(slew rate),然而主要的原因还是因为它们在运算放大器的回授回路中所产生的相位延迟(phase lag)所造成的不稳定状态。虽然某些电容负载是不可避免的,但是放大器常常会因为充裕的电容负载而造成过冲(overshoot)、共鸣(ringing)
期刊
近年来,市场对于高性能和高效率的逆变器驱动设备需求飞速增长。今天,直流无刷(BLDC)电机已用于许多消费电子设备中,如:变频空调、洗衣机和风扇电机等,使它们较采用开关控制的交流感应电机速度更快、噪声更低及能效更高。这个进步得以实现的关键之一,在于采用了逆变技术,特别是集成功率模块。目前,集成功率开关及其门驱动电路的功率模块能提供紧凑、可靠和具成本效益的逆变器解决方案,而市场对这类功率模块的需求正急
期刊
英特矽尔公司供文    英特矽尔——ISL6294单节锂离子电池充电器可满足不同容量需要    随着手机、数码相机、MP3、GPS等便携式产品向体积小、厚度薄。轻巧造型方向发展,新颖的个人信息产品不断推陈出新。产量也猛增。这些新产品中几乎都采用锂离子(或聚合物)电池,因为它能满足小、薄、轻的要求,并且容量大,能延长两次充电的时间间隔。为了减少手持产品的设计周期,各半导体厂商开发许多性能优良、设计灵
期刊
飞思卡尔半导体供文    MC9RS08KA——价格低于50美分的超低端8位MCU    据行业研究专家统计,2005年全球微控制器(MCU)市场达120亿美元,半导体公司面对着巨大的市场商机。随着需求的增长以及在性能和功能方面要求的不断提高,嵌入式电子产品正在以空前的速度快速发展,微控制器设计人员需要在传统设计中有所突破。当前市场低端8位产品依然活跃,并推动高端产品的发展;32位产品面向高端应用
期刊
区域活动是一种常见的教学方式,教师要学习利用它减轻工作负担,提高工作效益。究竟如何才能达到这个效果呢?下面就让我们一起来探究一下。  1.什么是区域教学?  幼儿园不只是采用集体教学,所以我们需要进行活动室空间设计的不同规划,把它划分成不同的功能,就像买房子后就要把房间按功能不同进行划分,我们需要有一个客厅,需要有一个饭厅,有孩子的可能还要划分孩子游戏的空间。  如果房子很大,每个空间就可以有固定
期刊