精华内容
下载资源
问答
  • 1 基于缓存分区的分配调度策略概述  1.1 缓存分区的背景  在CMP 系统中,缓存通常是私有的,而缓存(last level cache,LLC)则在各个核间共享(下文提到的缓存如无特别说明都是指LLC)。  共享缓存使得多个...
  • DVFS及多核处理器功耗优化技术详解

    千次阅读 2018-10-09 20:25:04
    概述  降低嵌入式系统功耗有多种方法,其中动态电源管理(DPM)和动态电压频率调整技术(DVFS)是降低系统功耗的两种关键技术。其中动态电源管理主要依据设备工作负载的变化切换器工作状态以达到系统功耗最小化。本...
    •     概述

            降低嵌入式系统功耗有多种方法,其中动态电源管理(DPM)和动态电压频率调整技术(DVFS)是降低系统功耗的两种关键技术。其中动态电源管理主要依据设备工作负载的变化切换器工作状态以达到系统功耗最小化。本篇博客则主要从DVFS技术做详细的介绍。DVFS(Dynamic Voltage and Frequency Scaling)动态电压频率调节本质上是一种低功耗技术,目的是根据的芯片当时的实际功耗需要设定工作电压和时钟频率,这样可以保证提供的功率既满足要求又不会性能过剩,从而可以降低功耗。

            DVFS技术利用了CMOS芯片的特性:CMOS芯片的能量消耗正比于电压的平方和时钟频率。DVFS技术是以延长任务执行时间为代价来达到减少系统能量消耗的目的,体现了功耗与性能之间的权衡。可以通过减少时钟频率来降低通用处理器功耗的。然而,仅仅降低时钟频率并不节约能量,因为性能的降低会带来任务执行时间的增加。调节电压需要以相同的比例调节频率以满足信号传播延迟要求。然而不管是电压调节还是频率调节,都会造成系统性能的损失,并增加系统的响应延迟。

    动态功耗[55]、短路功耗[56] 和漏电流功耗[57] 是CMOS 电路的三个主要功耗,因此CMOS 电路的总功耗可由下面公式表示:
                           P = P_{Dynamic} + P_{Short} + P_{Leakage} = ACV^{2}f+ AVI_{Short}+VI_{Leakage}
            式中C 代表负载电容的容值,V 是工作电压,A 是当前频率下电路的平均翻转率,f 为工作频率,IShort 和ILeakage 分别为短路电流和漏电流。从公式中可知,C、V 、A、f 决定了整个CMOS 电路的功耗,而DVFS 技术就是主要通过改变频率f 和电压V 的值来调节系统功耗的。

            为了尽量减少可感知的系统性能负面影响同时又能最大程度地降低系统能耗,策略必须估计未来的工作负载并选择最合适的频率。准确地预测未来的工作负载对广泛使用的策略是至关重要的。预测错误可能会导致设置的频率太高降低节省能耗,或设置频率过低造成系统响应延迟过高。所以,要想降低功耗,需要选择合适的供电电压和时钟频率。


    • 硬件基础

    为了实现供电电压可调节,目前的芯片电源模块都可以提供多级输出,本质上是多个不同输出电压的LDO通过选择开关桥接,DVFS控制逻辑输出所需电压的控制向量,电源管理模块会自动完成电压源切换。

                               http://www.eetop.cn/blog/attachments/2016/10/214199_201610102129311ju02.jpg

    时钟频率的控制是目前已经很常见的,芯片内部一般都会集成CGU(Clock Generator Unit)负责时钟源的提供,可以对某个时钟源分频升频,为系统提供特定频率的时钟信号,这里不再赘述。


    • 调节顺序

    目前的芯片实现工艺下,更高的频率则需要更高的供电电压。因为更高的频率意味着动态功率的消耗增加,而在芯片整体电容电阻值不变的前提下,更高的供电电压可以提供更高的电源功率。

    所以安全的调节机制是:

    当需要提升功率时,应先提升供电电压,然后提升时钟频率。

    当需要降低功率时,应先降低时钟频率,再降低供电电压。

                             http://www.eetop.cn/blog/attachments/2016/10/214199_201610102129312hinp.jpg


    • DVFS调节策略

            一味的降频降压当然是不能降低功耗的,因为低频下运行可能使系统处理任务的时长增加,从而整体上可能增加了功耗。所以DVFS的核心是动态调整的策略,其目的是根据当时的系统负载实时调整,从而提供满足当时性能要求的最低功率,也就达到了最低功耗。

            制定调整策略前,需要先找出系统中的耗电大的部件,如CPU、GPU、DSP等硬件算法加速模块(结合逻辑规模);然后统计出这些模块的负载情况,基本的策略当然是工作负载增加则升频升压,工作负载降低则降频降压。工作负载的粗略模型是在一个时间窗口内,统计模块工作的时间长度,设定不同阈值,高阈值对应高电压高频率,低阈值对应低电压低频率。每次统计值穿过阈值边界,触发DVFS转换。

                              http://www.eetop.cn/blog/attachments/2016/10/214199_201610102129313ZXcx.jpg

    实际的系统中,每个CPU,DSP也许有自己独立的DVFS调节系统,所以可以根据本模块的特点制定出更精确的负载模型,从而取得更优的功耗表现。

    至于调节算法的实现,可以软件也可硬件,看资源消耗情况和DVFS响应时间要求而定。

    展开全文
  • 1 基于缓存分区的分配调度策略概述  1.1 缓存分区的背景  在CMP 系统中,一级缓存通常是私有的,而最后一级缓存(last level cache,LLC)则在各个核间共享(下文提到的缓存如无特别说明都是指LLC)。  共享...
  • 多核体系概述--多核系列之一

    千次阅读 2013-05-16 22:31:32
    接触多核有段时间了,决定把这方面的知识做个总结。   1。多核基本理论 ...片上多核处理器(CMP)是将多个计算内核集成在一个片处理器芯片中,从而提高计算能力。每个微处理器核心实质上都是一个相
       接触多核有段时间了,决定把这方面的知识做个总结。
     

    1。多核基本理论

    多核即在一个单芯片上面集成两个甚至更多个处理器内核,其中每个内核都有自己的逻辑单元、控制单元、中断处理器、运算单元、一级cache、二级cache共享或独有,其部件的完整性和单核处理器内核相比完全一致。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

    片上多核处理器(CMP)是将多个计算内核集成在一个片处理器芯片中,从而提高计算能力。每个微处理器核心实质上都是一个相对简单的单线程微处理器或者比较简单的多线程微处理器,这样多个微处理器核心就可以并行地执行程序代码,因而具有了较高的线程级并行性。由于CMP采用了相对简单的微处理器作为处理器核心,使得CMP具有高主频、设计和验证周期短、控制逻辑简单、扩展性好、易于实现、功耗低、通信延迟低等优点。此外,CMP还能充分利用不同应用的指令级并行和线程级并行,具有较高线程级并行性的应用如商业应用等可以很好地利用这种结构来提高性能。

    按照内核的对等与否,CMP可分为同构多核和异构多核。计算内核相同,地位对等的称为“同构多核”。同构CMP大多数由通用的处理器组成,多个处理器执行相同或者类似的任务。计算内核不同,地位不对等的称为“异构多核”,异构多核多采用“主处理核+协处理核”的设计,Cell处理器正是这种异构架构的典范,它是一枚拥有9个硬件核心的多核处理器。在Cell芯片中,只有一个是IBM完整的Power(精简的PowerPC970)处理器,其余8个内核都是为处理图像而专门设计的、用于浮点运算的协处理器。主处理器的主要职能就是负责任务的分配,实际的浮点运算工作都是由协处理器来完成。由于Cell中的协处理器只负责浮点运算任务,所需的运算规则非常简单,对应的电路逻辑同样如此,只要CPU运行频率足够高,Cell就能获得惊人的浮点效能。整数性能和动态指令执行性能并不理想。由于电路逻辑简单,主处理器和协处理器都可以轻松工作在很高的频率上,Cell起步频率可达到4GHz。在高效率的专用核心和高频率的帮助下,Cell可以获得高达256Gigaflops2560亿次浮点运算每秒)的浮点运算能力。Cell聚集在消费性电子市场。

    CMP处理器由多个CPU核心组成,每个核心执行各自的程序代码,但是CMP处理器的各CPU核心执行的程序之间要进行数据共享和同步,所以硬件结构必须支持核间通信。高效的通信机制是CMP处理器高性能的重要保障,比较主流的片上高效通信机制有两种,一种是基于总线共享的cache结构,一种是基于片上的互连结构。

    总线共享cache结构是指每个CPU内核拥有共享的二级或三级cache,用于保存比较常用的数据,并通过连接核心的总线进行通信。这种系统的优点是结构简单,通信速度高,缺点是基于总线的结构可扩展性较差。

    基于片上互连的结构是指每个CPU核心具有独立的处理单元和cache,各个CPU核心通过交叉开关或片上网络等方式连接在一起,各个CPU核心间通过消息通信。这种结构的优点是可扩展性好,数据带宽有保证,缺点是硬件结构复杂,且软件改动较大。

     

    2。网络多核处理器

    网络处理器主要应用于通信领域的各种任务,比如包处理、协议分析、路由查找、声音/数据的汇聚、防火墙、QoS等。网络设备如路由器和交换机的体系结构的发展基本上经历了基于通用处理器的体系结构和基于ASICRISC的体系结构两个阶段。

    网络处理器的体系结构是在以上两种体系结构的基础上,综合了双方优点推出的一种新型的体系结构。网络处理器是一种可编程ASIC,不但可为系统提供类似ASIC的处理速度,而且可以提供类似通用处理器的灵活性。网络处理器主要被用于处理线速wire-speed数据,进行协议分析和数据分类,位于物理接口处理器和交换架构之间。

    网络处理器器件内部通常由若干个微码处理器和若干硬件协处理器组成,多个微码处理器在网络处理器内部并行处理,通过预先编制的微码来控制处理流程。而对于一些复杂的标准操作如内存操作、路由表查找算法、QoS的拥塞控制算法、流量调度算法等则采用硬件协处理器来进一步提高处理性能,从而实现了业务灵活性和高性能的有机结合。

    网络处理器是一种专门用于网络报文处理的CPU,它的设计充分结合了网络环境中数据流的特点,具有优化的体系结构和指令集。一般由通用的RISC(精简指令集计算机)核或专用的处理器实现,通过执行预先编制的程序对到达的报文进行处理。为提高性能,网络处理器内部可以由多个核组成。网络多核处理器一般可以分为两种,一种是具有一般运算能力和指令存储能力的处理单元,另一种是能够完成特定处理任务的功能模块。这两种单元一般采用以下两种组织机制:

    流水线:每个内核被设计成具有特定处理功能的模块,这些模块以流水线方式组织在一起完成分组的处理。

    并行处理:每个处理单元都可以完成相似的任务,多个处理单元彼此间可并行执行,网络处理器可实现不同级别的并行处理。通过流水线实现指令级的并行; 通过硬件线程实现线程级的并行; 通过片内多处理器结构实现处理器级的并行。

    然而网络处理器对报文处理的并行度是有限的,主要原因是

    Ø  共享资源访问瓶颈。一旦多个并行体对共享资源(如路由表)的访问出现瓶颈,增加并行度只能增加对共享资源的高度开销而不能提高性能。

    Ø  相关性问题。某些应用(如IPsec协议处理)对同一个会话中报文处理是前后相关的,即同一个会话的报文必须被相同的core处理。将报文随机分给不同的core并行处理不但会破坏相关性,还会造成错误。即使对于没有相关性的会话,并行处理造成的报文乱序还会引发网络系统不必要的TCP重传。

     

    3。多核发展现状

      

    网络处理器可以看作是基于多线程的片上多内核系统(CMP),它不但集成了多个可以独立并行的微内核,还提供了多线程的支持,是一套典型的多线程、多内核的并行处理机系统。在这样的硬件体系架构中,网络处理器的应用开发者不得不研究和挖掘特殊的硬件技术和编程技能以获得优良的包处理性能,包括基于多内核架构的并行处理模型,多线程技术,特定用途的硬件加速单元,优化的内存结构等。对硬件细节的过度关心增加了编程的复杂性,没有良好的并行软件设计模型的支持也降低了代码的可重用性和可维护性。在现有的相关研究项目中,大多对通用处理器提出了解决方案,但是很少有专门针对特定网络处理器的研究。这使得研究特定网络多核处理器的程序设计技术具有很高的实用价值和理论意义。

    在单核处理器研究中,主要集中在提高频率,提高指令级并行度等方面。而在多核体系中,更加关注核与核之间的协作、共享资源的分配、提高线程级并行度等方面。

    多核处理器必然带来一个问题是,需要提高程序的并行度,因为单线程程序是无法发挥多核处理器的优势的。通过编译优化可以把原先单线程的代码编译成多线程的形式。OpenMP提供了一种方法,程序员根据需要把可以并行处理的代码加上合适的标记,编译器根据这些标记把相应代码编译成多线程的程序段。多线程程序开发涉及到多线程调试的难题,这在多核处理器上会变得更加困难,所以多核体系导致程序开发模式发生巨大变化。

    多核处理器上的任务调度也是个新问题,常用的调度算法有全局队列调度和局部队列调度。前者是指操作系统维护一个全局的任务等待队列,当系统中有一个CPU核心空闲时,操作系统就从全局任务等待队列中选取就绪任务开始在此核心上执行。这种方法的优点是CPU核心利用率较高。后者是指操作系统为每个CPU内核维护一个局部的任务等待队列,当系统中有一个CPU内核空闲时,便从该核心的任务等待队列中选取恰当的任务执行,这种方法的优点是任务基本上无需在多个CPU核心间切换,有利于提高CPU核心局部Cache命中率,从而提高系统的性能。目前多数CMP操作系统采用的是基于全局队列的任务调度算法。

    如何有效地利用多核技术,对于多核平台上的应用程序员来说是个首要问题。多核时代的到来需要软件开发者必须找出新的开发软件的方法,选择程序执行模型。在多核系统中,核心是通过内存共享数据和通讯。为了充分利用多核,程序需要同时做很多工作。

    多核编程存在的问题:

    Ø  同步问题。对于同一个分组中的报文必须被相同的核处理的情况,各个报文不是相互独立的,有时分组间也存在一定的制约关系。这种制约关系主要体现在服务时序和资源操作两个方面,对于服务时序引起的同步问题可以维护分组处理状态来解决,对于资源操作冲突则需要通过加锁机制来解决。

    Ø  处理资源调度问题。对一个待处理的报文到达时交由哪个核内处理,如何处理。在调度时要考虑系统负载和流量特性在内的多种信息,并要保证效率和公平性。

    Ø  模块间通信问题。为了解决同步以及系统控制等问题,网络处理器内部核间的通信以及外部设备间的通信越来越多,甚至成了系统性能的瓶颈。高效的核间及设备间的通信机制将大大提高程序的效率,这也是程序设计中必须要考虑的问题。

    Ø  编程者如何设计一个能充分利用多线程并行来提高应用程序性能的合适模型。如果没有统一模型,则每个程序都要重新实现多线程的性能提高模型,降低了编程效率。

    Ø  随着处理器数目的增加,负载均衡就成了一个很大的问题。而且对于一般的编程人员来说,实现一个动态调度器来解决不规则任务问题来使程序保持在一个良好状态是困难的以及耗时的。

     

     

    <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
    阅读(434) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~
    评论热议
    展开全文
  • PowerPC处理器概述

    千次阅读 2019-06-25 18:05:54
    PowerPC处理器的发展可以分为两个阶段:AIM(Apple-IBM-Motorola)联盟阶段和Power.org阶段,其指令集则直到2004年才形成第一个版本Power ISA 2.01,如今已更新到Power ISA2.06,加入了虚拟化,多核等功能,并分化出...

        PowerPC处理器的发展可以分为两个阶段:AIM(Apple-IBM-Motorola)联盟阶段和Power.org阶段,其指令集则直到2004年才形成第一个版本Power ISA 2.01,如今已更新到Power ISA2.06,加入了虚拟化,多核等功能,并分化出嵌入式(Book-E)和服务器两个分支。PowerPC处理器因此也可分为经典PowePC处理器和Book-E处理器。

    经典PowerPC处理器和Book-E处理器的主要区别在于MMU,启动模式和异常向量地址:

         1. 前者支持实地址模式、块模式和页模式三种地址翻译模式,而后者则仅支持增强的可变长度的页地址模式。

         2. 前者启动后会立即跳转到复位异常向量(0x100或者0xfff00100)执行并进入实地址模式,而后者则直接跳到有效地址空间的最后4个字节(0xFFFFFFFC)处执行,并且在处理器默认映射的有效地址最后4K地址空间中完成相应的MMU配置工作后才能跳出这段地址空间执行。

        3. 前者的异常向量地址是固定的,后者则可以通过IVPR和IVORn寄存器来配置每一个异常向量的地址。

         经典PowerPC的代表是IBM和Motorola/Freescale的60x系列处理器,包括Motorola/Freescale的MPC8XX/MPC82XX/MPC83XX/MPC86XX/MPC5XXX系列和Motorola/Freescale/IBM的74xx/750系列。Book-E处理器则包括了IBM/AMCC(APM)的PPC4XX和Motorola/Freescale的PPC85XX系列和QorIQ系列。

        进一步的介绍请参考:

        1.Programming Environments Manual for 32-Bit Implementations of the PowerPC Architecture

        2.Book E: Enhanced PowerPC Architecture

        3.Power ISA V2.06

        4.http://en.wikipedia.org/wiki/Power_Architecture

    转载于:https://www.cnblogs.com/EmbeddedLiving/articles/2011674.html

    展开全文
  • 在焊缝别算法中应用多核技术 摘要介绍了一种以多核处理器为主控制器的...关键词多核处理器延迟多维图像焊缝识别智能自动焊 概述 机器视觉技术是智能自动化焊接的核心技术之一近年来随着计算机硬件技术的发展和智能自动
  • 尽管多核处理器比单核处理器提供更强大的处理能力,当时多核处理器存在难以检测和并发相关的错误。本文介绍了一种对多核处理器架构上程序时间测量的全新技术,这种技术通过在目标系统上运行,实现覆盖率的实时测量和...

    概述
    尽管多核处理器比单核处理器提供更强大的处理能力,当时多核处理器存在难以检测和并发相关的错误。本文介绍了一种对多核处理器架构上程序时间测量的全新技术,这种技术通过在目标系统上运行,实现覆盖率的实时测量和复杂错误的分析。

    现代汽车上的控制单元已经接管了越来越多的计算密集型任务,而且这种趋势还没有结束的迹象。随着复杂性的增加,错误发生的概率增加,而消除误差的效率越来越低。 不断增加的计算负载使得多核处理器的使用成为许多应用的必然。但是,从顺序处理到并行处理的转换可能会引入非常难以再现的错误,特别是如果代码从未打算用于并行执行。

    毫无疑问,汽车电子行业需要在软件开发和测试方面特别努力,然而,只有能观察到错误的根本原因时,测试和调试环境才是有意义的。因此,可观察性是关键,与传统的单核系统相比,现代的多核架构给我们带来了特殊的挑战。这样的系统越集成,就越难以理解软件内部流程。这正是本文介绍的技术重点解决的问题所在。

    经过充分验证的新技术
    软件插装被广泛地应用于软件内部流程的监视,例如,为了测量代码块的执行时间或者测量覆盖率,一般采用代码插装技术自动在源代码里插入代码并记录程序的执行过程。然而,插装需要占用内存空间并影响程序运行的时间特性。幸运的是,有一种替代方案:几乎所有的现代处理器都有一个内嵌的跟踪单元(比如英特尔的Processor Trace),这个跟踪单元通过指定的接口(比如AGBT)或者标准接口(比如USB DCI、PCIe)进行通信。

    在这里插入图片描述 图1: CEDARtools

    这个跟踪单元提供了程序运行流程的信息且并不影响程序的运行。根据处理器架构和跟踪配置,还可以对程序的时序行为和内存访问进行重新构建,此外,许多跟踪单元使得轻量级硬件支持的插装成为可能,因此可以在发布代码中应用,(比如 PTWrite,MIPI STP)同样也可以用在对外设单元的跟踪 (内存控制器,通信单元)。

    目前常用的嵌入式跟踪解决方案将宽带跟踪数据(几Gbit/s)存储在临时缓冲区内存中。在测试运行结束时,在PC上重新构建程序流程,并计算结构覆盖率。这个过程的限制是观察时间受缓冲区内存大小的限制,以及离线重建程序流所需的额外计算时间。

    实时分析是对离线跟踪数据分析的进一步改进,需要解决两项技术难点,一是高压缩的跟踪数据流必须要经过处理,CPU的控制流必须要重新构造。这个运算能力必须能够适高速处理器CPUs (>1 GHz)且适合不同的操作系统。另一方面,产生的事件流必须经过处理,例如,通过记录跳转信息来计算结构覆盖率,或者通过使用在高级语言中配置的数据流处理器来动态监控大量的属性。

    应用实例A:代码覆盖率
    关键安全系统的标准(例如ISO26262)定义了测试过程的需求、所应用的测试技术,以及通过测量测试的结构覆盖率来验证这些测试的完整性。对于后者,必须要表明,根据应用的关键级别,所有的指令(语句覆盖了)、所有的跳转(分支覆盖率)或者所有的分支条件组合(MC/DC)在测试中都已经被调用了,一般来说,标准在很大程度上保持开放,在不同的测试级别(系统测试、集成测试、模块测试)验证对应的结构覆盖率。理想情况下,需求规格说明包含在测试中,这样结构覆盖率也可以对需求的质量做出证明。

    根据CAST-17意见书中所讨论的,基于目标码的结构覆盖率比基于源代码的结构覆盖率提供不同的信息,利用编译器产生的调试信息,测量出的目标码覆盖率可以映射到相应的源代码覆盖率,如图2所示。在这里插入图片描述
    图2:目标码覆盖率和源代码的映射

    调试信息的分析可以在线实时进行,而不需要任何插装(因此不会影响目标系统的功能和性能),目标系统的测试覆盖率可以确定。图1所示就是这样的分析系统CEDARtools,利用FPGA进行实时分析。在集成和系统测试期间度量结构化测试覆盖率能够识别这些测试中的差距,并替代结构化单元测试。

    应用案例B : 动态分析
    静态分析是开发过程中的一个过程或测试方法。嵌入式系统的动态分析作为静态分析的补充显得越来越重要。而且,这种方法可以通过使用上述硬件实现。

    基于这个目的,在持续重建控制流的过程中对指令地址进行标记,在执行这些指令时,特定的事件会自动注入到发出的事件流中,然后可以在线分析事件流中的特定属性。所使用的时间处理单元可以利用一种高级语言配置 (www.tessla.io),多种时间属性(例如,由AUTOSAR TIMEX 或者Amalthea定义) 可以并行监视。FPGA只需要参数化事件处理单元,不需要单独合成逻辑结构,因此,高级语言属性描述可以在几秒钟完成,如图3所示。

    在这里插入图片描述

    图3 使用CEDARtools® 进行动态分析

    动态分析也是调试的强大工具,特别是对于复杂的非确定性错误模式。根据发生的概率和应用领域的不同,寻找这些缺陷可能会需要付出巨大成本和开销。

    设计的考虑
    安全规范中已经规定了适当的预防措施,在电子控制单元(ECU)的测试期间和发布后都要具备的全面可观察性。跟踪接口应该在测试阶段和生产车辆的特定ECU版本中可用。此外,对于生产前和生产后车辆的测试,必须确保从ECU到分析仪(通常位于车内)的跟踪数据的无干扰传输。

    结论
    随着嵌入式系统复杂性的提高,产品发布后缺陷的数量不断增加,需要应用新的测试方法。这些方法包括结构测试覆盖率的度量,以及在完全集成的系统中运行时分析的自动执行。由于有了这项新技术,现在采用CEDARtools就可以进行这种分析,而且确保不会影响软件的运行时行为。

    此外,即使在发布系统之后,它也允许有效地分析复杂错误的原因。为了能够使用这种测试分析技术,需要允许对由处理器输出的跟踪数据进行宽带宽访问。

    附加信息1: 动态软件架构
    汽车软件的重要性持续加大,这一趋势很可能会继续下去。特别是在高度自动化的驾驶领域,许多创新都是基于软件的。与上市时间的压力相结合,OEM厂商在验证他们的系统时面临着各种各样的挑战。除了不断增加的软件体系结构的复杂性之外,遗留组件的集成以及多核平台上的联合调度都是特别棘手的问题。

    LET 概念(逻辑执行时间)提供了一个框架来应对这些挑战。但是,它依赖于一个重要的前提条件:必须确保每个任务在指定的时间窗口内安全地处理。静态分析目前不能提供足够的精度。因此,还需要使用测量方法来检查是否达到了最后期限。不需要软件插装的方法在这个环境中非常有趣,因为这种方法度量了真实的软件状态。

    为了简化设计过程,LET概念通过只查看读写访问的时间,从给定平台上的物理执行时间中抽象出来。只要满足最后期限,就不考虑实际执行时间。

    附加信息2:CEDATtools
    CEDRAtools是 Accemic Technologies开发的用以对复杂嵌入式系统分析的工具,它解决了缓冲区大小受限的问题,目前汽车行业和航空航天行业主要的开发商都在评估和使用这个系统。

    这个工具不采用跟踪数据存储事后离线分析技术,而是利用先进的硬件实时对上Gbit的数据进行分析,可以实现:

    ● 对一个或多个CPU的控制流和数据流进行重建,这是一个相当苛刻的任务,因为跟踪数据是由处理器以高度压缩的形式输出。
    ● 对生成的事件流进行高度可配置的实时分析(例如指令命中、数据访问、任务更改,最多100个事件/s),同时对多种复杂属性进行调查(效应链的最小和最大运行时间、统计、序列、值范围的检查等)。
    ● 连续实时测量结构测试覆盖率,不需要在长时间内收集大量的原始跟踪数据,以便以后在耗时的过程中进行评估,而是使用预定义的高级语言属性动态地分析跟踪数据。这可以在几分钟、几小时甚至几天内完成。但是,不需要分发原始数据:使用复杂触发器,可以精确地定义哪些原始数据和事件与分析相关,并存储在现有的跟踪缓冲区(4 GByte)中。
    支持的处理器*:
    ◆ Arm® Cortex®-A, -R, -M
    ◆ Infineon Aurix™ TC2xx, TC3xx
    ◆ Power Architecture® (including NXP QorIQ® P-/T-Series)
    ◆ Intel® Atom® (among others E39x0)
    支持的跟踪接口*:
    ◆ 高速串行接口 (Aurora): NEXUS, HSSTP, AGBT
    ◆ 标准接口: PCIe, USB
    ◆ 并行接口:Mictor, NEXUS
    *部分还在开发中

    这项工作是由EU H2020 project 732016 “COEMS” 和BMBF project “ARAMiS 2” (FKZ 01IS16025)基金成立的项目。“CoCoSI”研究项目(BMBF KMU Innovativ, FKZ 01IS19044)与项目合作伙伴Accemic Technologies、Fraunhofer IESE、Heicon和Intel对集成系统中结构测试覆盖率的测量进行了深入研究。

    更多信息:http://www.softtest.cn/

    展开全文
  • 多核

    2013-11-13 19:35:00
    多核 1概述 多内核(multicore chips)是指在一枚处理器(chip)中集成两个或多个完整的计算引擎(内核)。多核技术的开发源于工程师们认识到,仅仅提高单核芯片(one chip)的速度会产生过多热量且无法带来相应的...
  • 龙芯1 号处理器及其IP 系列主要面向嵌入式应用,龙芯2 号超标量处理器及其IP 系列主要面向桌面应用,龙芯 3 号多核处理器系列主要面向服务器和高性能机应用。 2 龙芯2E 处理器微体系结构概述龙芯2E 处理器是一款...
  • AM5728概述(2)

    千次阅读 2015-12-24 20:39:12
    介绍Ti的AM572x Sitara 多核处理器
  • 深入浅出DPDK-第一章

    2020-10-09 20:38:12
    用软件的方式在通用多核处理器上,演绎着数据包处理的新篇章 2.数据包处理的主流硬件平台 1)硬件加速器 2)网络处理器 3)多核处理器 DPDK主要是以IA(Intel architecture)多核处理器为目标平台 3.IA本身...
  • 通过增加主流处理器的执行内核提高硬件并行处理能力——这一业界变革要求软件制作人员做出相应的转变。关键的一点便是要求他们着眼于未来可用的硬件资源,并提前为这些资源做出合适的架构选择。本文将继续就上述开发...
  • DOTS概述

    2019-09-24 15:31:16
    Unity数据导向技术栈有三个主要部分:Unity实体 - 组件 - 系统(ECS),Unity C#作业系统和...ECS利用C#作业系统和Burst编译器来充分利用当今的多核处理器。 除了更好地利用现代CPU之外,ECS背后的面向数据的...
  • 计算机概述

    2020-04-26 20:18:14
    并行则指同一时刻能运行多个指令,需要硬件支持,如多流水线、多核处理器或者分布式计算系统。 共享 共享是指系统中的资源可以被多个并发进程共同使用。 有两种共享方式:互斥共享和同时共享。 互斥共享的资源...
  • 多核与多CPU

    千次阅读 2012-10-25 19:06:38
    概述  多内核(multicore chips)是指在一枚处理器(chip)中集成两个或多个完整的计算引擎(内核)。多核技术的开发源于工程师们认识到,仅仅提高单核芯片(one chip)的速度会产生过多热量且无法带来相应的性能改善...
  • 并发编程-1-概述

    2018-11-01 11:02:08
    多核处理器,除了逻辑上同时发生外,还可能使程序并行,提升程序效率。   并发与并行 并发:同时开始 并行:同时进行 关系:并行是并发的子集 其他并发并行的解释: 并发:一个处理器同时处理多个任务。 ...
  • OpenMP概述

    千次阅读 2011-11-26 14:16:21
    根据计算平台和规模的不同,并行计算可以分为两种:第一种是基于单一计算机系统的多核处理器或多处理器进行多线程并行计算,采用共享存储的方式,主要的标准有OpenMP,如下左图所示;第二种就是基于多台计算机组件的...
  • 64位多核 MIPS 异常和中断结构

    千次阅读 2013-01-10 20:51:47
    64位多核 MIPS 异常和中断结构 1. 概述 MIPS 统称异常(同步事件)和中断(异步事件)为例外 (Exception) 引入异常则是为了解决处理器运行过程中的一些意外情形,比如执行流中有非法指令(无法被处理器辨识的...
  • 1.概述  ...•充分发挥多核处理器的优势,并发(同时执行)执行任务让系统运行的更快、更流畅 •一个运行的程序就是一个进程或者叫做一个任务 •一个进程至少包含一个线程,线程是程序的执行...
  • OpenMP: OpenMP概述

    2015-01-25 12:19:00
    根据计算平台和规模的不同,并行计算可以分为两种:第一种是基于单一计算机系统的多核处理器或多处理器进行多线程并行计算,采用共享存储的方式,主要的标准有OpenMP,如下左图所示;第二种就是基于多台计算机组件的...
  • 操作系统-概述

    2020-02-28 03:24:30
    并行需要硬件支持,如多流水线、多核处理器或者分布式计算系统。 操作系统通过引入进程和线程,使得程序能够并发运行。 2. 共享 共享是指系统中的资源可以被多个并发进程共同使用。 有两种共享方式:互斥共享和同时...
  • 并行需要硬件支持,如多流水线,多核处理器或者分布式计算系统。 操作系统通过引入进程和线程,使得程序能够并发运行。 2.共享 共享指的是系统中的资源可以被多个并发进程同时使用。 有两种共享方式:互斥共享和同时...
  • 并行需要硬件的支持,如多流水线、多核处理器或者分布式系统 操作系统通过引入进程和线程,使得程序能够并发运行 共享 共享是指系统中的资源可以被多个并发进程共同使用 共享可以分为互斥共享和同时共享 互斥共享的...
  • 操作系统:概述

    2019-06-24 15:32:00
    并行依靠硬件完成,例如多核处理器或分布式操作系统 并发依靠操作系统引入进程与线程来完成 共享 同一个进程内的线程共享系统中的资源 共享有两种方式:同时共享和互斥共享 互斥共享的资源称为临界资源,临界...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 148
精华内容 59
关键字:

多核处理器概述