对基于SoC系统设计的探查

最新更新时间:2012-09-29来源: 互联网关键字:SoC系统  探查 手机看文章 扫描二维码
随时随地手机看文章

调试复杂电子系统从来都不是一项简单的工作,但至少是可以实现的。您要找到问题所在。采用您最相信的“示波器”,通过模拟电路到数字转换,您可以追溯到问题的源头。然后,编写测试小程序,检查驱动和外设,增加一些逻辑探针,再回到外设控制器和CPU总线上,最终解决问题。当然,这需要利用别人的一些代码。

    而芯片系统(SoC)集成从根本上改变了这一切。今天,微处理器、总线、外设控制器以及大部分存储器和模拟电路都被包封在一个封装中。它可以是ASSP、高级微控制器、FPGA,或者您自己设计的ASIC。不论SoC是什么,事实上是,除非芯片设计团队愿意帮助您,否则,您不可能深入了解芯片内部。

    在嵌入式CPU中调试硬件,为您提供断点和准实时跟踪等传统调试功能,从而帮助您完成调试工作。但是,对于他们自己,调试内核也只是给出了您系统的CPU外观视图。如果不能针对系统总体状态来更广泛的定义某一事件,那么,当事件发生后,您可能需要编写诊断短代码,使系统暂时停止工作,将相应的数据写回CPU。这一过程最好的情况是仅仅耗费了您的时间,而最差的情况是,耗费了时间却不一定能解决问题,效率非常低。

    硅片知识产权(IP)供应商提供越来越精细的SoC仪表调试手段,从而解决了这一难题。但是,当今的产品是个性化的,而不是标准化的。系统设计人员需要在芯片设计早期阶段独立作出选择,而另一公司的其他团队则根据产品能否及时面市、管芯面积等来确定自己的目标,并不关心能否方便的进行系统调试。而芯片设计人员、软件开发人员和系统设计人员等参与者还是有一个共同点——互相协作,在系统级找到问题所在。

    从一开始就做好规划

    实际上早已决定了您是否能够成功的找到系统中的问题——两年前,在您目前正在使用的SoC的开发阶段。Brad Quinton是泰克公司嵌入式验证的首席规划师,他认为在芯片设计早期阶段进行规划非常关键,不仅仅是能够充分探查芯片,而且还涉及到采用什么样的调试硬件。然而,这并不常见。

    芯片设计团队的确在测试结构中开展了前端工作,但却是出于其他原因。芯片中置入了测试设计和内置自测试硬件来支持IC测试。但是,这些资源并不是用于调试,一般只提供很少的诊断信息。芯片设计人员会专门针对硅片开发团队而内置工具,但是,这些工具可能只有内部文档,硅片一旦发布后,就会禁用这些工具。高速串行端口上会有边界扫描,甚至是非常复杂的仪表功能,必须在系统中对其进行调整。但是,这些手段是为了在电路板级建立并验证连接能力,而不是用于系统调试。

Quinton质疑,虽然这些结构非常有用,但是芯片设计人员会有更多的问题。Quinton认为,“从系统级进行考虑。关键接口、高级状态机在哪里?通过掌握哪些信息您能够知道哪一子系统正在工作?”

    这些思考导致某些IP供应商开发了一类新模块:在SoC中设计实现仪表和控制器,不仅供设计芯片的IC团队使用,而且还有使用它的系统设计团队,如图1所示。

图1.片内调试电路本身会成为实际的设计。

    从不同的方向开始工作,两类供应商验证了这一发展趋势。ARM扩展了其CPU内核调试内核CoreSight,涵盖了多核SoC的大部分工作,而现在是泰克一部分的Quinton Veridae从仪表模块开始,集中开发触发器/踪迹控制器,包括了CPU调试内核。这两种方法对于系统调试人员都非常宝贵。这都为在SoC基础上扩展可探查性提供了重要的理念。

    数据源

    虽然您想立即开始在系统结构图中加入各种各样的数据采集节点,而Quinton首先提出了一些基本问题。谁会使用调试功能:应用编程人员、模拟设计人员,还是机械工程师?他们会在哪一抽象等级上来定义事件;功能调用、信噪比、扭矩读数?这些用户会怎样做:确定他们的代码热点、找到瞬变噪声,或者知道驱动杆为什么失效?只有您理解了问题所在,才能够找到解决问题的数据。

    Quinton认为,现在的技巧是确定在哪里收集数据。很明显,首先是在源头采集所有数据:A/D转换器(ADC)输出、状态寄存器、网络接口等。当然,您希望尽可能获得接近源头的一些信息,例如,受控物理器件的状态等。

    但是,在其他情况下,事先考虑好在哪里采集数据可以减少测量开销,以及后分析所需要的数据量。Quinton建议,“找到关键地方来观察系统。在一点上所通过的系统状态量会让人感到惊讶:例如,CPU与系统总线的接口。”

    在哪里对数据进行采样也取决于用户所希望的抽象级。例如,可能是通过PCI Express (PCIe)总线的系统交换信息等。探查串化器/解串器(SERDES)和PCIe控制器,使您能够获得底层协议层工作的详细信息,这对于总线接口调试非常重要。但是,如果您希望总线接口能够正常工作,观察信息流,那么,您最好监视主存储器中的缓冲,而忽略总线控制器。

    问题的相对性

    一旦找到了您需要的数据,确定了要在系统中的哪些地方来提取这些数据,那么,您需要收集数据,知道数据与时间的相关性,找到触发模式,采集您希望保存的数据,从系统中提取出这些数据,送入分析工具中。在分立系统中,这一过程相对简单:所有工作都可以回到逻辑分析仪中完成,分析仪提供统一时间基础。在基于SoC的系统中,您可能希望把所有数据送回SoC的中心模块中,如图2所示。好消息是,泰克和ARM的IP简化了这一过程。

图2.完整的片内调试系统结合了传统的CPU内核调试和数据采集站以及信息路由,提供将数据从芯片中输出的方法。 

    但是,使用IP带来了新问题。中心模块和电路板另一侧芯片之间的延时会有十几个时钟周期。即使在芯片内部,也会有数十个时钟域,当您跨过时钟域边界时,延时会增加很多CPU周期。您怎样知道两路数据是同时的呢?

 如果您要开发自己的调试工具,那么,这会很难。您可以估算数据采集模块和中心控制器之间的传播延时,然后,对数据流进行后处理,使其对齐。但是,这一方法难以解决时钟域交叉的非确定性延时问题。您可以分配一路主时钟,使用它对您采集的数据进行时间戳处理,但是,这需要很大的电路开销。泰克等提供的商用解决方案同时使用了硬核IP和软件算法,在底层自动完成所有这些工作。通过这些算法,可以在一个与时间相关的视图中看到SoC不同时钟域和不同物理位置上的事件,通常会发现意外的系统行为。

    即使是自动完成,仍然会有变化。如果把在系统中不同部分同时发生的小事件作为触发器,只定义这类事件——例如,ADC输出等于0,而一个CPU内核进入某一中断服务例程,那么会出现什么情况?如果事件不仅仅涉及到不同的地方,而且还有不同的抽象级——例如,串行端口的接收眼图闭上后,出现了堆栈上溢,又会怎样呢?Quinton把这类跨域分配事件触发描述为系统触发的“圣杯”。正如这一隐喻所示,很难找到合适的解决方案。但是,采集了足够的数据,经过认真思考,构建能够采集这类复杂事件的本地触发器,通常能够实现这些解决方案。

    从芯片到系统

    我们详细讨论了芯片级调试功能,它比简单的CPU调试内核有很大的进步。对于开发自己的SoC的系统设计人员,这些数据非常有用。但是,其他人会怎样,谁会使用他人的芯片设计?这里的很多理念仍然能发挥作用。

    其中最首要的是重视提前做好规划:确定用户及其使用环境,制定测试策略,回答这些用户可能提出的问题,规划数据采集来支持这一策略。最大的不同是,芯片设计人员会提出这些问题,然后,在他们的SoC中开发结构。系统设计人员也会提出问题,然后,通过SoC供应商所提供的工具以及他们的支持来解答问题。

    相应的,系统设计团队至少会向他们的SoC供应商提出三类很难的问题。第一,芯片供应商会提供调试工作台——例如,Tektronix或者ARM主软件包,来控制SoC的调试硬件吗?主软件包能够很好的适应您现有的系统调试环境吗?

    第二,硬件实际接触SoC中的哪一点?您只获得了一个CPU内核的触发/跟踪功能,或者芯片提供CPU、加速器、总线和外设控制器的扩展采集,跟踪以及交叉触发功能吗?第三,调试子系统会提供哪些方法来观察系统中其他芯片和器件的状态?

    这些问题的答案会定义系统团队连接哪类外部测量设备工作台,在哪些工作台上能够实现他们的系统调试计划。在这么多的系统工程中,关键是尽早开始对调试进行规划——在工程的体系结构设计阶段。没有足够的数据呈现,就开始调试基于SoC的系统,这种场景很快就会很难维持下去。

关键字:SoC系统  探查 编辑:神话 引用地址:对基于SoC系统设计的探查

上一篇:以软启动电路延长电池寿命
下一篇:麦克风灵敏度规格阐释及其应用

推荐阅读最新更新时间:2023-10-12 20:42

如何利用软件作为激励来加速SoC系统级验证?
验证复杂的SoC设计要耗费极大的成本和时间。据证实,验证一个设计所需的时间会随着设计大小的增加而成倍增加。在过去的几年中,出现了很多的技术和工具,使验证工程师可以用它们来处理这类问题。但是,这些技术中很多基于动态仿真,并依靠电路操作来发现设计问题,因此设计者仍面临为设计创建激励的问题。 设计者可以使用运行在处理器上的固件作为验证仿真激励的一部分,这也是目前通常采用的方法——使用全功能处理器模型。与在HDL中编写激励相比,固件作为激励速度更快,并且更容易创建。在一个全功能处理器模型上执行代码的缺点是模型运行较慢,因此只有少量软件会使用这个技术执行。很多固件执行由取指令操作和内存读写周期组成,验证价值很低。在逻辑仿真器中屏蔽这些低价值操
[电源管理]
车载电池管理系统SOC现状分析与挑战
作为新能源行业分析领域的专业人士,接下来的日子将随着自己对新能源动力电池领域的深入分析,将一些电动汽车技术领域的基础知识分享给大家,真正了解行业本 质技术。此次选择动力电池管理系统的SOC分析,一方面是因为SOC是BMS的核心,BMS是动力电池的核心,动力电池是新能源汽车的核心,SOC对新能 源汽车至关重要;另一方面是因为新能源汽车整体太庞大,很难说深,说小说深较好把控,也学习的深入。   SOC是当前动力电池剩余电量/容量的简称,汽车通过SOC,知道目前的电量状态,通过SOC,我们把综合影响因素说开去,形成一个宏观系统的概念。 一:现状分析 如果没有准确的SOC,会出现的情况: 1、过充/过放情况,导致
[嵌入式]
MIPS科技与生态系统伙伴携手展示SoC解决方案
美普思科技公司(MIPS Technologies, Inc., 纳斯达克代码:MIPS)宣布,将在6月1日至5日台北世贸中心(TWTC)与台北国际会议中心(TICC)举行的台北国际电脑展(COMPUTEX TAIPEI)上参与一系列活动。展会期间,MIPS科技将在多场论坛中发表演讲,并为客户举办仅限受邀者参加的活动。 MIPS科技营销副总裁Art Swift表示:“在去年的COMPUTEX期间,我们宣布MIPS架构已可支持Android平台。自此,我们在推动Android 进入消费应用方面获得了显著进展。今年,我们仍将与业界分享有关Android与其它软件平台的最新动态,这对开发下一代连网设备至关重要。我们也非
[嵌入式]
多标准无线基站片上系统SOC【德州仪器】
新闻摘要 • TCI6618 SoC 打破了摩尔定律的限制,在实现其性能的革命性突破,并保持其业内基准水平之后,用不到六个月的时间将LTE性能提高了一倍。 • 高达 40% 的“频谱效率”优化可为运营商带来极大的优势,能够以低成本方式提升 3G 与 4G 的网络容量。 • 高效满足 3G/4G 网络的用户数据要求,为消费者提供最佳移动体验。 2011 年 2 月 18日,北京讯 日前,德州仪器 (TI) 宣布推出一款最新多标准无线基站片上系统 (SoC),与采用 40 纳米工艺技术开发的现有宏及小型基站 SoC 解决方案相比,其不但可实现 2 倍 的 LTE 性能提升,而且还可将功耗性能比
[网络通信]
海纳百川建SoC(片上系统)IP模块
  一个SoC可能包含上百个IP模块,一家公司很难完全拥有所需的IP,从外界获得IP迫在眉睫。   SoC的设计应采用新的设计方法提高设计效率。目前多采用基于平台的设计方法,用已设计好的模块来集成,这些模块就称为IP(Intellectual Property)核。IP核现在主要有几个来源: 芯片设计公司自身积累,Foundry积累,专业IP公司,EDA厂商和设计服务公司提供等。   在集成电路的设计和研制中,IP概念已经使用了将近20年,应该说标准单元库(Standard Cell Library)就是IP的一种形式。工艺加工线(Foundry)为扩大业务,便以精心设计并经过工艺验证的标准单元吸收IC设计公司成为它的
[焦点新闻]
海纳百川建<font color='red'>SoC</font>(片上<font color='red'>系统</font>)IP模块
Nordic SoC为智能货架标签系统实现远程产品定价更新
Nordic SoC为智能货架标签系统实现远程产品定价更新 云里物里使用Nordic的nRF52832和nRF52810 SoC以蓝牙 5 连接智能标签和网关 挪威奥斯陆 – 2021年11月25日 –Nordic Semiconductor宣布国内科技企业深圳云里物里科技股份有限公司选择Nordic的nRF52832蓝牙® 5.2/低功耗蓝牙 (Bluetooth® Low Energy (Bluetooth LE))通用多协议系统级芯片(SoC)和nRF52810 SoC为其“Minew ESL”电子货架标签提供无线连接。智能货架标签系统使得零售商等运营商能够通过从中心点为多个商店/分支机构或某些地理位置的个别货架价格
[物联网]
Nordic <font color='red'>SoC</font>为智能货架标签<font color='red'>系统</font>实现远程产品定价更新
芯邦采用Incisive Xtreme系统提升SoC验证实效
    Cadence设计系统公司宣布,位于中国深圳的、无晶圆厂集成电路设计领先企业芯邦科技股份有限公司已采用Cadence Incisive Xtreme III系统来加速其RTL设计流程,并为下一代数字消费和网络芯片提供了一个验证流程。     芯邦是一家领先的芯片供应商,其芯片的目标应用领域有数字音视频处理、移动存储、网络通信和消费电子等。 Cadence Incisive Xtreme III 系统以及Incisive Enterprise Simulator的部署,使芯邦的工程师能加速其寄存器传输级(register-transfer level, RTL)全芯片SoC验证,加速倍数可达500倍。     “采用
[半导体设计/制造]
我自研首枚卫星片上系统芯片SoC2008世界领先
        10月14日成功发射的实践九号A、B卫星上卫星控制计算机目前在轨工作稳定,其中实践9B卫星控制计算机的核心是我国首枚应用于航天的片上系统芯片SoC2008,由中国航天科技集团公司五院502所自主研制,具有完全自主知识产权。这标志着我国已经全面突破和掌握了SoC系统级设计、抗辐射加固设计、容错设计、高可靠实时操作系统设计以及验证等关键技术,在国内国际上均处于领先地位。 SoC技术是微电子技术发展到高级阶段的必然产物。 SoC 技术为系统设计人员提供了一种全新的设计思路和手段,即在单一芯片上实现系统功能。采用SoC技术以后,航天型号不再处于持续基于国外计算机芯片进行设计的局面,而可以立足于国内设计、生产和工
[嵌入式]
小广播
最新模拟电子文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved