多核环境中的高效率调试方法

发布者:DelightfulSmile最新更新时间:2008-01-14 来源: 今日电子关键字:多核技术  内核  JTAG  调试方法  同步机制  daisy-chaining  开发人员  芯片  处理器  操作系统 手机看文章 扫描二维码
随时随地手机看文章

  毫无疑问,多核多线程是未来处理器的发展方向。回首处理器的发展历程,并行技术从指令级的超标量发展到线程级的超线程或者并发多线程,再到今天处理 器级的多内核,总的趋势都没有改变。英特尔、Sun和IBM等大公司目前已经投身到多核或者多线程技术的浪潮之中。当今的网络应用日趋复杂,对性能的要求 不断提高,无论是需求推动技术,还是技术激发了新的需求,并行技术都将是未来信息基础设施建设的必然选择。

  对于嵌入式装置而言,多核技术可以提供更高的处理器性能、更有效的电源利用率,并且占用更少的物理空间,因而具有许多单核处理器无法具备的优势。与多核解决方案如影随形的,就是多处理器技术,也就是在同一块电路板或同一个集成系统中包含多个处理器。

  要想充分发挥多核以及多处理器解决方案的潜能,仅仅依靠强有力的芯片是不够的,还需要采用新的编程方法。伴随着新的编程方法,同样也需要新 的调试方法和工具,才能确保软件和硬件开发人员在完整的多核系统环境中展开调试工作,同时对“编译—编辑—调试 ”的流程进行优化。

  在传统上,JTAG调试技术主要是用于硬件Bring-Up,如今也常常被用于配合基于代理的调试(agent-based debugging)。然而,在多核和多处理的环境中,片上调试(on-chip debugging)正在扮演着越来越重要的角色,因为这种技术更便于隔离运行在单个或者多个内核中不同软件之间复杂的交互活动,从而帮助开发人员对操作 系统或者中间件实施更加有效的调试。

  认识多核基本架构

  多核处理器在同一个芯片中植入了多个处理器引擎,这就可以提供更高的CPU性能、功能特性和分区能力。一般说来,多核有两种实现形式。

  第一,SMP( Symmetric multiprocessing,对称多处理)。在这种情况下,开发人员面对的是单一的抽象化硬件平台,由SMP操作系统来决定具体由哪一个内核来运行哪 个任务,其中每个内核都是相同的,而且在同一个操作系统的管理控制之下,共享同一个内存。

  第二,AMP (Asymmetric multiprocessing,非对称多处理)。在这种情况下,各个处理器内核都运行着各自独立的操作系统。这种独立性意味着,其中各个处理器内核既可 以是同构的,并且运行同样的操作系统,也可以是异构的并运行各自不同的操作系统。

  多核环境显著增加了系统复杂度,因而在对操作系统和与多核相关的硬件进行调试的时候,就必须采用一整套更有效的工具。另外,尽管大家都认为 多核就是指在同一个芯片中放入多个内核,但是在实际开发工作中所遇到的多处理问题,实际上不仅仅局限于在单一芯片中的多个内核。事实上,不论这些处理器内 核是在同一个芯片之中,或者分布在同一个电路板中的多个芯片之中,甚至同一个系统中的多个电路板之中,开发人员都必须解决好多处理环境中的调试问题。相对 于最近出现的单一芯片多核架构,有多个处理器芯片和多个处理器电路板组成的复杂系统已经存在很多年了。因此,多处理架构的调试问题其实早已存在,只是单一 芯片内多核架构的普及将多处理系统调试问题更加尖锐地摆在了开发人员面前。

  从这个意义上,多年前就开始从事多处理环境软件开发的厂商就积累了更丰富的经验,在应对多核软件开发方面站在了更为有利的地位。例如 Wind River公司经典的实时操作系统VxWorks在多年前最初的设计思路就是基于多处理架构的,因此不论从运行环境还是开发调试工具任何一方面看,对于多 核环境的适应能力都比其他工具要强得多。

  认识多核调试难点

  多核与多处理技术的融合为系统调试带来了许多新的挑战,因为系统复杂度不断增加,要通过优化硬件和软件来充分发挥其中的性能潜力,难度就更大了。其中最主要的难点有以下几个方面。

  * 有效地管理内存和外设等共享资源;

  * 在多内核、多电路板和多操作系统的环境中对操作系统和应用代码进行调试;

  * 优化JTAG接口并充分利用JTAG带宽;

  * 调试单一芯片中的同构和异构多核,进而实现整个系统的协同调试;

  * 有效地利用JTAG与基于代理的调试方法,确保不同调试工具之间的顺畅协同;

  * 确保多核环境中应用调试的同步机制。

  对于多核JTAG调试来说,有三种主要的技术选择:第一,以单一JTAG接口支持所有内核的调试器;第二,在单一JTAG调试接口中采用独 立调试器的JTAG多路(Muxing)技术;第三,JTAG链接器或者可编址扫描端口(Addressable Scan Port)。

  在多核调试中,上述三个技术途径都是在处理同一个核心问题——由SoC厂商所提供的JTAG接口所造成的局限性。 为了节省成本,许多SoC厂商都只为芯片提供单一的JTAG接口,而不理会其中包含了多少个内核。对于开发者来说,最大的挑战就是经济有效地使用这些接口 来同步多核以及多处理的调试工作。其中,单一调试器方式采用IEEE 1149.1标准daisy-chain方法。

  认识多核调试方法

  对于多核架构来说,单一调试器的主流选项仍然是JTAG多路技术。这种技术对IEEE JTAG技术规范进行了拓展,以便为通过共享JTAG接口连接起来的每个内核提供独立的调试器。在多路技术的支持下,通过对希望调试的内核进行注册登记 (Registering),开发人员可经由单一JTAG接口访问多个离散状态的内核。这种解决方案的最大优势在于它的连接和调试性能。因为多路技术单独 连接到每个内核,因而避免了daisy-chaining方法中所遇到的比特位移(bit shifting)方面的麻烦,因而在单芯片中的多核系统中具有更高的性能。这种方式的另一个好处是不需要对开发工具进行修改,从而可以顺畅地应用在多个 开发项目之中。

  多路技术(Muxing)方法所存在的主要问题是在多内核调试过程中无法同时启动和停止内核来同步应用。如果要停止全部内核,开发人员只能 顺序地逐个进行,这就导致了调用延迟问题。在调试过程中的延迟问题,会导致很难在内核之间的操作系统、中间件和应用中找到发生问题的确切位置,特别是当运 行在不同内核之中的应用存在相互依赖性的时候,这个问题就更为突出。例如,某个产品包含DSP功能和ARM 9内核,其中DSP用来处理视频流,ARM 9内核提供文件系统,那么内核的启动与停止同步将会十分关键。如果调试过程中在ARM内核的启动和DSP的停止之间出现过多的延迟,DSP视频流数据很快 就会溢满ARM文件缓冲区,而视频流也将会中止。如果出现这种情况,就很难判断系统中的问题出在哪里。而且,多路进程也给开发人员在故障排除时带来了许多 新的问题,将会大幅度增加调试时间。

  另外,如果在有多个厂商产品组成的异构多核环境中进行调试工作,例如处理器来自一个厂商,而DSP器件来自另一个厂商,还会有更复杂的问题 需要处理。因为这种情况下的多路(Muxing)机制更为复杂,如果各部分之间的兼容性没有得到保证,也就很难保证系统正常运行。此时,仅仅依靠多路技术 是无法解决问题的,开发人员就需要采用可编址扫描端口(addressable scan port),这也可能是最后仅有的方法了。这种架构需要用到非常特殊的组件,这些组件可以让开发人员把JTAG扫描链分割成多个功能组,并通过唯一的地址 来访问每个功能组。这是一种多支路(multi-drop)架构,经常被用于底板(Backplane)环境之中。在这里,有一个分别可编址的扫描链在底 板内实现路由(Routed),从而使机箱中的每个底板都拥有自己专属的扫描链。这种架构的运行速度受限于可编址扫描端口的速度,最典型的情况是 25MHz。

  拥有先进多核调试工具

  Wind River拥有的JTAG加速器和服务器技术可以显著降低JTAG序列包之间的空闲时间,完全充分地利用了可用的JTAG带宽。与JTAG有关的另一个问 题涉及到调试能力,例如用停止请求信号来立即停止某个内核,或者用停止指示信号来停止某个内核并同步其他的内核的停止。与其他所有的局限性一样,这类问题 也依赖于厂商的实现方法。

  Wind River on-chip debugging(片上调试)解决方案可以同时启动和停止多个内核。实际上,Wind River提供的JTAG解决方案,也就是Workbench On-Chip Debugging,是以集中化的方式来实现多核和多处理的调试功能。这个解决方案可以在单一扫描链(Scan Chain)中同时调试多达8个内核。而且,不管这些内核处于同一个芯片之中、分布在线路板中的多个芯片或者分布在复杂系统中的多个线路板之中, Workbench On-Chip Debugging都能够应付自如。

  在Wind River的多核解决方案中,开发人员可以同时停止或者启动任何内核,在一个或者多个内核上设置断点,其中还可以包括条件断点。此外,Workbench Eclipse框架和基于代理的调试方式使开发人员在单一控制台上即可管理多内核/多处理应用的开发。开发人员可以在JTAG调试和基于代理调试二者之间 灵活地选择,例如在硬件Bring-Up、内核、中间件和其他应用功能调试的时候采用JTAG连接,然后在自己认为适当的时机平滑地转移到基于代理的调 试,而这些调试工作都是围绕着同一个应用的。这些能力都会增加不同开发人员之间的协同能力,同时改善异常问题的判定效率。

  结论

  在多核开发中,JTAG调试可以承担非常有价值的角色,有效地改善“编辑-编译-调试”周期时间。然而,实现这一 点的前提是把JTAG调试与基于标准的集成化开发环境(例如Eclipse)紧密地集成起来。最理想的技术方案是,在Daisy Chain中采用遵从IEEE 1149.1 JTAG标准的单一的JTAG调试器,而JTAG的主要作用是改善系统的吞吐能力和性能。

关键字:多核技术  内核  JTAG  调试方法  同步机制  daisy-chaining  开发人员  芯片  处理器  操作系统 引用地址:多核环境中的高效率调试方法

上一篇:利用微控制器简化电子镇流器的设计
下一篇:磁悬浮车地通信中频调制器的设计与实现

推荐阅读最新更新时间:2024-05-13 21:01

奋达科技发布云音频芯片 进军消费电子
    昨日,奋达科技 (002681)在北京798艺术中心,举行了主题为“风云二十-创‘芯’未来”的新技术发布会。 会上,奋达科技董事长肖奋回顾了奋达20年的发展历程,他表示奋达的20年是不断创新的20年,未来奋达将走持续创新之路。他同时指出,经过管理、人才、技术和客户等各方面的充分积累,公司已具备了向消费电子科技企业转型的条件。 发布会上,奋达科技总裁汪泽其发布了公司研发的两个重量级产品:基于Wi-Fi的云音频硬件及软件解决方案FI-870,以及高性能音频芯片IF5110T。与此同时,他还公布了公司调整后的发展战略:致力于持续成为领先的消费电子产品垂直整合制造与服务的科技企业。 据汪泽其介绍,奋达科技将利用公司在电声、无线、软件
[手机便携]
中移动否认引进iPhone 5 芯片成最大制约因素
9月10日消息,针对日前有媒体报道称“苹果iPhone会支持4G LTE网络,可能涉及中国移动(微博)”的传言,中国移动各地方公司的负责人均表示,中国移动内部从未讨论过引进iPhone 5的计划,也未探讨过iPhone 5的补贴问题。 据了解,苹果将于9月12日举行产品发布会,外界预计届时苹果将发布新一代iPhone。而之前有媒体称,新一代iPhone将会支持4G LTE网络,因此苹果会与中国移动开展合作。 由于中国移动是TD-LTE的运营商,且一直希望能与苹果开展合作,引进iPhone,因此,中国移动本次能否成功引进iPhone 5也备受关注。不过,中国移动内部人员均表示未听说要引进iPhone 5。同时,业内人士也认为,高
[半导体设计/制造]
7219芯片驱动LED的电子时钟
/***************时钟采用定时中断方式,50MS一次******完整可用,硬件实验通过**********************/ #include REG51.H #include stdio.h #include intrins.h /***********************************************************************/ #define uchar unsigned char #define uint unsigned int //common part #define HIGH 1 #define LOW 0 #define
[单片机]
FD-SOI技术在毫米波雷达芯片中有何应用?
毫米波雷达是推动ADAS和自动辅助驾驶发展的关键驱动因素,这种感知方式使得车辆能够感知周围环境并基于此信息做出决策,从而提高了安全性和驾驶性能。毫米波雷达雷达在面对干扰大气和环境因素时表现非常强大,能够即时测量距离、角度和速度,并生成环境的信息。 ● 毫米波雷达发展趋势 毫米波雷达技术主要用于高档车辆,但在过去的20年里,雷达技术取得了长足的进展,第一个大规模生产的77GHz雷达于1998年在奔驰S级车;2011年之后更多车辆采用了标准毫米波雷达产品(开始普及)。目前全球毫米波雷达市场的主要驱动因素是对ADAS的需求增加,同时由NCAP要求的主动安全系统的需求加速增长,汽车行业目前对高精度、多功能毫米波雷达系统的需求增加了。
[嵌入式]
FD-SOI<font color='red'>技术</font>在毫米波雷达<font color='red'>芯片</font>中有何应用?
MOTO X+1谍照曝光 搭载骁龙800处理器
    想要与众不同的机友快来关注,日前外媒曝光了第二代MOTO X,也就是 MOTO X+1,无论是外观还是硬件配置都有了较大升级,同样支持个人定制特色,让用户可以尽情展现自己的个人特色。   据外媒TK Tech News曝光的MOTO X+1谍照显示,MOTO X+1将采用5.2英寸1080p分辨率Super AMOLED屏幕,整体设计风格也会延续MOTO X的样式,并允许个人定制。而在硬件配置上,MOTO X+1或搭载2.3GHz高通骁龙800处理器,2GB RAM,拥有16GB、32GB 以及64GB三个可选ROM版本。   除此之外,MOTO X+1的摄像头功能也会有所升级,可能会配备双摄像头或是将主摄像头像素
[手机便携]
恩智浦新型i.MX 8XLite,专注道路安全
随着科技的进步,人们越来越清楚地认识到,科技将如何帮助我们开拓新领域并提升现有环境。恩智浦推出下一个领军产品i.MX 8XLite,打造更安全、更互联的交通世界。车联万物(V2X)的趋势日益发展,汽车可以更好地与其他汽车、交通基础设施和行人进行交互,因此我们有必要寻求新的方式,让自动化程度日益增高的汽车,可以更安全、更高效地与其周围环境交互。 我们可以把新型汽车看作车轮上的边缘节点,由互联智能提供动力。从这个意义上说,V2X是一种物联网应用,可使汽车作为边缘节点,与汽车网络和智能交通基础设施进行通信。V2X让“不可见的事物”变得“可见”,提醒驾驶员注意道路上的危险状况,帮助减少交通伤亡事故,支持零愿景倡议(Vision Zer
[嵌入式]
恩智浦新型i.MX 8XLite,专注道路安全
Gartner:09年芯片业营收将连续两年下滑
据国外媒体报道,IT研究与顾问谘询公司Gartner宣布,2009年芯片行业有可能首度遭遇连续两年营收下滑的窘境。   该公司预计,明年芯片销售额总计2192亿美元,较2008年减少16.3%。芯片行业将受到经济危机的冲击。在这场危机当中,个人电脑销量和消费开支均出现显著下跌。   “半导体行业从未出现过营收连续两年下滑的问题,但是在2009年,这却变成了现实,”该公司指出。   该公司预计,2008年芯片销售额总计在2619亿美元左右,较2007年下降4.4%。这是过去25年当中第五次出现芯片销售额较前一年下滑的情形。   该公司曾于11月中旬预计2008年芯片销售额增长0.2%,2009年下降2.2%。   “
[模拟电子]
股价上涨 预示内存芯片需求触底反弹?
瑞士信贷(Credit Suisse)董事总经理、台湾股票研究主管Randy Abrams表示,许多芯片公司表示,尽管预计2019年第一季度前景不佳,但该季度可能会触及“周期底部”。他说,投资者通常会试图 把握底部时间 , 担心稍后的复苏速度 。Kiwoom Securities全球战略与研究主管Daniel Yoo表示,半导体行业的低迷周期“可能比预期短得多”。 以服务器为需求快速增长的DRAM价格在去年第三季达到高点,从去年第四季开始下跌,市调公司DRAMeXchange公布的数据显示,DRAM平均交易价格(ASP)在去年第四季就下降了11%以上。 一位业界相关人士对此表示,由于之前累积的库存让数据中心的客户开始
[手机便携]
股价上涨 预示内存<font color='red'>芯片</font>需求触底反弹?
小广播
最新应用文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved