欢迎访问有用文档网!

当前位置: 有用文档网 > 作文大全 >

自适应时钟技术在芯片设计与验证中的应用

| 浏览次数:

摘 要:随着嵌入式处理器和DSP性能的迅速提升,传统的JTAG接口设计已经无法满足高速仿真器与高速目标芯片之间的时序要求。在此,提出一种双向同步自适应时钟技术,它不仅能够在仿真器与目标芯片间实现稳定可靠的信号传输,还可以根据目标芯片的时钟频率变化,动态地调整JTAG信号的传输速度,使整个调试系统始终工作在最佳状态。此外,利用该技术还成功地解决了软/硬件协同验证中真实系统与硬件模拟器之间信号传输的难题。

关键词:JTAG接口; 自适应时钟; 软/硬件协同验证; DSP

中图分类号:TP331文献标识码:B

文章编号:1004-373X(2010)08-0001-05

Application ofAdaptive Clocking Technology in Chip Design and Verification

LU Jun-feng, HONG Yi

(IC Design Center, The No.38 Institute, China Electronics Technology Group Corporation, Hefei 230031, China)

Abstract:With the development of embedded processor and DSP′s performance, sincethe traditional JTAG interface can not meet the requirement of time sequence between the high-speed emulator and target chip, an adaptive clocking technology is proposed, which can realize the stable and reliable transmission of signals between emulator and target chip, can dynamically adjust the transmission speed of JTAG signal according to the frequency variation of the target chip′s clock. This new JTAG interface also can resolve the problem ofthe signal transfer between the real digital system and the hardware simulator in software/hardware co-verification.

Keywords:JTAG interface; adaptive clocking; software/hardware co-verification; DSP

0 引 言

随着半导体工艺的迅速发展,嵌入式处理器和DSP的设计越来越复杂,其开发调试工作也日趋重要,因此处理器平台提供强大的调试系统已成为设计中必不可少的一部分。

嵌入式处理器调试系统使用硬件仿真器将调试软件与目标芯片接连起来[1]。仿真器与PC机之间通过标准的计算机通信接口(以太网、USB、串口等)进行通信;仿真器与目标芯片之间通过符合IEEE1149.1标准的JTAG(Joint Test Action Group)信号进行数据传输。随着处理器和仿真器主频的不断提升,传统的JTAG接口设计以其缺乏对JTAG信号传输进行必要的时序匹配,而无法确保仿真器和目标芯片对JTAG信号进行稳定可靠的接收,因此不能满足高性能嵌入式系统的要求。

在此,提出一种双向同步自适应时钟技术,在仿真器与目标处理器之间稳定可靠地实现了跨时钟域JTAG信号的双向时序匹配,并在此基础上设计了一种TCK时钟信号产生算法,从而解决了调试系统软/硬件协同验证中JTAG信号交互时的时序匹配问题。

1 自适应时钟技术

1.1 基本概念

自适应时钟(Adaptive Clocking)是一种信号同步技术,其基本原理来源于异步电路设计中的自动调时(SelfTimed)技术[2],即采用类似应答机制来实现两个不同时钟域系统间信号的可靠传输,如图1所示。

图1 自动调时原理图

图1中的发送与接收系统均工作在各自独立的时钟域下,并对异步输入信号进行采样同步。发送系统(Transmit System)以时钟clk_t为基准,向接收系统(Receive System)发送数据data_t。接收系统将信号clk_t采样同步后产生clk_r,并作为应答信号反馈给发送系统,发送系统接收到clk_r信号,就认为接收系统已经完成了数据接收或处理,可以继续发送新的时钟和数据。此外,如果接收系统也需要向发送系统传送数据data_r,则以clk_r为基准,便于发送系统采用同样的机制接收。

自适应时钟机制通常采用多级同步器实现,一般由几个D触发器构成,如图2所示。同步器将时钟信号TCK同步到内核时钟域。同步器的级数NS通常与具体的器件相关,一般取值为3或者4。TCK_RET来自最后一级D触发器的输出,作为TCK的“应答”信号,反馈给调试系统。

TCK信号频率的理论最大值可以根据内核时钟频率和NS的值,由下式简单计算得到:

fmaxTCK=fCore/(2NS)(1)

自适应时钟协议是一种通过目标系统来控制TCK速率的机制,这种机制的优点在于它能够把所有的信号传输延迟(包括JTAG电缆引入的延时)都考虑在内,从而避免了由于传输延迟带来的接收数据损坏,有效提高系统性能。

自适应时钟的另一个优点是可以使仿真器工作在最优的TCK时钟频率下。如果仿真器支持可变的TCK频率,但没有使用自适应时钟技术,用户就必须通过实验来设置TCK的最高工作频率和稳定工作频率。

自适应时钟的第三个优点是如果芯片内核时钟也是可变的,那么TCK_RET信号也会在工作时随之变化,从而保证传输数据能够随时被仿真器正确同步并采样。

图2 触发器-反相器法原理图

1.2 研究背景

目前自适应时钟技术主要用于嵌入式处理器芯片的在线仿真器 (In-Circuit Emulator, ICE),简称仿真器。仿真器可以为开发人员提供嵌入式处理器的实时调试和性能微调功能,该系统通过符合IEEE1149.1标准的JTAG接口与芯片内部逻辑进行数据交换。

ARM公司最先在其嵌入式处理器的仿真器EmbeddedICE-RT[3]中采用了自适应时钟技术。最近,TI公司也在其OMAP系列嵌入式处理器的仿真器BlackhawkTM JTAG Emulator[4]中采用了自适应时钟技术。它们的自适应时钟都基于触发器-反相器法[4],如图2所示。在采样TCK_RET信号时,使用一个双边沿D触发器(D-type Flip-Flop,DFF),这样可以避免最终产生的TCK时频率被降低一半。

触发器-反向器法自适应时钟技术仅对TCK信号进行同步,并没有对TCK_RET信号同步,因此TCK信号容易产生不定态输出,从而导致整个系统失效。此外,TCK信号的产生模式没法由仿真器控制,因而灵活性差,适用范围窄,并且在没有JTAG信号传输时TCK信号无法关断,这不仅增加了系统功耗,而且也增加了板级JTAG信号间的干扰。

笔者参与了国内一款高性能DSP芯片的研发工作,同时还负责该芯片的调试系统设计,基于自适应时钟的基本原理,提出了双向同步自适应时钟技术。该时钟技术具有如下优点:

(1) 对TCK和TCK_RET分别进行同步,确保JTAG信号双向通信的可靠性和稳定性;

(2) TCK信号由硬件算法产生,可以根据应用需要灵活调整信号特征,从而解决了芯片设计中软/硬件协同验证的时序匹配问题;

(3) 在没有JTAG通信的间隙能够主动关闭TCK信号,降低系统功耗,减小板级的信号干扰;

(4) 由于仿真器时钟域和处理器时钟域之间的异步关系,产生TCK时钟信号时会引入抖动(Jitter)。该抖动对系统是有益的,它会对TCK信号引入扩频调节,从而降低电磁干扰(Electro Magnetic Interference,EMI),提高系统的电磁兼容性(Electro Magnetic Compatibility,EMC)[5]。

2 双向同步自适应时钟技术

随着嵌入式处理器性能的增强,仿真器需要处理的在线调试功能也随之增强,因此仿真器本身也需要工作在比较高的时钟频率下,从而能够在有限的时间内处理足够多的调试信息。通常使用JTAG时钟信号TCK的频率相对比较低,在1~20 MHz之间,已经远远无法满足仿真器的工作需要。双向同步自适应时钟机制能够保证仿真器和处理器都工作在各自的高频时钟下,同时还能够实现可靠的JTAG信号传输。

2.1 原理

双向自适应时钟技术的原理如图3所示。

仿真器工作在JTAG clock时钟域,其频率为fJTAG;所有由仿真器发送给处理器内核的JTAG信号都由该时钟域的逻辑产生,并与TCK对齐,TCK的频率为fTCK。处理器内核工作在Core clock时钟域,其频率为fCore;JTAG clock,TCK和Core clock这三组时钟信号之间通常满足下述基本关系:

fJTAG>fTCK(2)

fCore>fTCK(3)

由于TCK和TCK_RET信号在两个异步时钟域之间传输,为了消除跨时钟域信号传输可能带来的不定态导致系统失效,处理器内核和仿真器都需要分别对这两个信号进行同步和采样,即双向同步。同步器采用2级D触发器级联构成,这种结构可以保证系统在108 s(大约3年)内失效的次数少于1次,从而解决绝大部分跨时钟域信号的不定态问题[6-7]。如果在特殊情况下需要进一步提高系统的稳定性,可以继续增加D触发器的级联数目,但是这样做会增加系统的延迟,因此需要在性能和稳定性之间进行权衡。

图3 双向同步自适应时钟技术原理图

TCK信号经过Core clock时钟同步之后产生TCK_RET信号,反馈给仿真器,从而实现自适应时钟技术。同时,由处理器内核向仿真器发送的JTAG信号(例如TDO)与TCK_RET信号对齐。TCK_R和TCK_F可作为Core clock时钟域的门控信号,分别在TCK的上升沿或者下降沿使能处理器内核对JTAG信号进行采样或处理。

TCK_RET信号被JTAG clock时钟同步。TCK_RET_R表示采样到TCK_RET的上升沿,TCK_RET_F表示采样到TCK_RET的下降沿。这两个信号送给TCK时钟产生逻辑,用来根据当前TCK_RET信号的接收情况产生下一个TCK信号及相关的JTAG控制和数据信号。

2.2 性能分析

双向同步技术引入了两个同步器,分别用来确保TCK和TCK_RET信号能够被异步时钟正确采样,因此各自增加了一定的系统延迟。同步TCK信号引入的延迟为:

T1=3TCore=3/fCore(4)

同步TCK_RET信号引入的延迟为:

T2=3TJTAG=3/fJTAG(5)

此外,产生TCK信号的逻辑电路还会有一定的额外延迟(延迟大小与采用的算法复杂度相关):

T3=mTJTAG=m/fJTAG, m≥1(6)

因此,整个系统所能产生TCK信号的最高频率为:

fmaxTCK=1/

=fJTAGfCore2[3fJTAG+(3+m)fCore](7)

通常情况下,fCore和fJTAG可表示为:

fCore=kfJTAG, k>0(8)

将式(8)代入式(7)化简后可得:

fmaxTCK=k2[3+(3+m)k]fJTAG

=12[3+(3+m)k]fCore(9)

从式(9)可以看到,在m不变的情况下,提高fCore或者fJTAG都能够提升TCK的最高频率。当k>1时,随着k值增加,fmaxTCK主要由fJTAG时钟域的逻辑电路决定;当k≤1时,随着k值的减小,fmaxTCK主要由fCore时钟域的逻辑电路决定。

要保证图3中Core clock时钟域逻辑电路能够在TCK_RET信号上升沿采样到稳定的数据,JTAG信号必须满足图4中的关系。

图4 JTAG信号在处理器时钟域中的关系

同理,对于JTAG clock时钟域的逻辑也一样,因此必须满足下述的关系:

T1+T2+T3≥(3+n)TJTAG(10)

T1+T2+T3≥(3+n)TCore(11)

式中:n≥1,一般情况下只需保证n=1即可。将式(4)~式(6)和式(8)代入上面的不等式,化简后可得式(9),成立的条件为:

k>1/(3+m)(12)

如果k不满足式(12),则需要进一步修正式(9):

fmaxTCK=k2[(3+n)+(3+m)k]fJTAG

=12[(3+n)+(3+m)k]fCore(13)

式中:n≥1。

在DSP设计中,fCore=500 MHz,fJTAG=100 MHz,并假设m=1,代入式(9)计算可得TCK信号的最高频率大约为10.9 MHz。

2.3 多芯片级联结构

双向同步自适应时钟技术完全支持IEEE1149.1协议中定义的各种多芯片间JTAG信号板级互联结构。多芯片级联情况下,通过式(9)或式(13),根据每一块芯片的工作主频都能计算得到一个对应的TCK频率值。整个级联系统最终使用的JTAG时钟信号TCK的最高工作频率不能超过所有TCK频率值中最小的那个。如图5所示。

采用并行互联结构的JTAG链路,多芯片自适应时钟连接方式与单芯片连接方式一致,每块芯片都提供一路被自身时钟域所同步的自适应时钟TCK_RET,如图5(a)所示。

图5 几种JTAG链路中的自适应时钟连接图

对于采用串行菊花链结构的JTAG链路,自适应时钟TCK_RET仅来自于链路上最接近TDO输出端一侧的那块芯片,其他芯片不提供自适应时钟,如图5(b)所示。

对于串/并混合连接的多芯片JTAG链路,自适应时钟的连接是上述两种连接方式的混合,如图5(c)所示。

多芯片系统的JTAG连接方式一般都采用串行菊花链结构,从而确保其JTAG链路与仿真器接口与单芯片情况下一致,并能够简化系统设计。

3 自适应时钟技术在芯片验证中的应用

随着嵌入式处理器设计的规模越来越大,复杂度越来越高,功能验证已经成为设计过程中的首要瓶颈。为了提高验证速度,通常采用专门的硬件加速器,笔者参与的高性能DSP设计项目采用了Cadence公司Xtreme Ⅲ[8]硬件加速器,以加速设计功能的验证。Xtreme Ⅲ是基于FPGA的硬件模拟器,它是专门为运行模拟(Simulation)而特别设计的计算机[9]。硬件模拟器只能验证逻辑功能,而不能验证时序性质,因为来自FPGA网络或者处理器的时延与系统设计过程中的时延无关。使用硬件模拟器时,主要瓶颈是硬件模拟器与主机之间的交互(又称系统调用)。因此,在软/硬件协同验证中,真实的硬件系统在与基于硬件模拟器的系统发生信号交互时,时序匹配成为最大的难题。

图6说明了硬件模拟器的时钟与真实硬件系统时钟间的差别。真实硬件系统产生的是绝对时钟信号,它的周期是一个固定值T,如图6(a)所示。硬件模拟器与软件模拟器类似,只有相对时钟概念。它在被模拟系统的时钟上升沿和下降沿处分别计算系统中所有的事件,如图6(b)所示。对于特定的设计,无系统调用时,虚拟时钟信号周期TS=TR+TF基本上是常值,其中,TR为上升沿计算所有事件所需的时间;TF为下降沿计算所有事件所需的时间会产生;当发生系统调用时(比如仿真时的系统函数调用等),额外的延时Δt(Δt=Δt1+Δt2),使得当前周期增大为TS+Δt。因此硬件模拟器中的时钟信号周期是无规律变化的,而且受系统调用频度以及系统调用复杂度(即Δt的大小)的影响。

图6 硬件系统与硬件模拟器的时序差别

嵌入式处理器的调试系统需要采用系统级的软/硬件协同验证,包括软件开发和调试环境、仿真器系统、处理器系统三部分。在该DSP设计项目中,软件环境(运行在PC机上)和仿真器系统(基于FPGA开发板)都采用真实系统,而DSP则在Xtreme Ⅲ模拟器中实现。仿真器与DSP之间通过JTAG信号进行通信。仿真器采用图3所示的双向同步自适应时钟技术,仿真器发送给DSP的TCK信号特征与图6(a)相同,而DSP反馈给仿真器的同步时钟TCK_RET信号特征与图6(b)相同。因此,在TCK Generator中设计图7所示的算法,从而完全解决了真实硬件系统与硬件模拟器之间的JTAG信号传输时序匹配问题。

实验中,设定TCK的工作频率为40 kHz。未采用双向自适应同步时钟技术时,仿真器与Xtreme Ⅲ硬件模拟器之间的JTAG信号传输经常发生TCK_RET时钟沿丢失(等效时钟频率约为20 kHz),导致仿真器无法正确采样TDO数据,如图8(a)所示。采用双向自适应时钟后,尽管整个验证系统中TCK时钟信号的实际工作频率约为20 kHz,但持续不间断工作72 h以上未发现JTAG信号传输错误,从而证明系统能够正常工作,如图8(b)所示。

图7 TCK信号生成算法流程图

图8 未采用自适应时钟与采用自适应时钟系统实验对比图

4 结 语

为解决高性能嵌入式处理器或DSP与仿真器之间JTAG信号传输稳定性问题,提出了一种双向同步自适应时钟技术。该技术在同步电路中引入了异步电路的应答机制,巧妙解决了由于嵌入式处理器或DSP (尤其是针对低功耗设计的处理器,它的工作主频会随着负载变化而变化)本身主频变化导致的JTAG信号传输失效。此外,该技术还为软、硬件协同验证中真实系统与硬件模拟器之间信号传输提供了可靠的解决方案。在随后的工作中,将继续研究自适应时钟技术在各种系统跨时钟域信号传输中的应用,从而进一步拓展该技术的适用范围。

参考文献

[1]VAHID Frank, GIVARGIS Tony. Embedded system design:a unified hardware/software introduction[M]. \: John Wiley & Sons Inc., 2002.

[2]RABAEYM, CHANDRAKASAN Anantha, NIKOLIC Borivoje. Digital integrated circuits:a design perspective\. 2nd Edition \: Pearson Hall, 2003.

[3]ARM. ARM9EJ-S technical reference manual[EB/OL]. \. http: //infocenter. arm. com/help/topic/com. arm. doc. ddi0222b/DDI0222. pdf.

[4]KOSTADINOV ostadinov, KASSAMAKOV Invilo, LAZAROVNenko. Using the adaptive clocking feature of the TI OMAPTM platform [EB/OL]. \. http: //.cn/qkpdf/moet/moet201008/moet20100801-2.pdf" style="color:red" target="_blank">原版全文

推荐访问:时钟 自适应 芯片 验证 设计

热门排行Top Ranking

支部组织生活方面存在问题清单和整改措施 党组织生活个人问题整改清单

下面是小编为大家精心整理的支部组织生活方面存在问题清单和整改措施党组织生活个人问题整改清单文章,供大家阅读参考

2021年党员个人问题清单及整改措施 党组织生活个人问题整改清单

下面是小编为大家精心整理的2021年党员个人问题清单及整改措施党组织生活个人问题整改清单文章,供大家阅读参考。

浅析军队战斗力损耗的新变化

关键词:军队;战斗力损耗;新变化军队战斗力的结构,是战斗力各要素间的结合方式和相互关系。军队战斗力的

小学六年级毕业演讲稿100字左右9篇

小学六年级毕业演讲稿100字左右9篇小学六年级毕业演讲稿100字左右篇1敬爱的老师,亲爱的同学们:大

问题及整改措施 (2) 药房个人存在问题及整改措施

下面是小编为大家精心整理的问题及整改措施(2)药房个人存在问题及整改措施文章,供大家阅读参考。精品文章《问题及

个人问题清单及整改措施(最新) 能力作风建设个人问题清单及整改措施

下面是小编为大家精心整理的个人问题清单及整改措施(最新)能力作风建设个人问题清单及整改措施文章,供大家阅读参考。在认真

疫情防控赞美警察诗朗诵 关于警察的诗朗诵

下面是小编为大家精心整理的疫情防控赞美警察诗朗诵关于警察的诗朗诵文章,供大家阅读参考。疫情防控赞美警

纳税人满意度调查存在不足及对策探讨 提升纳税人满意度的方式方法有哪些

下面是小编为大家精心整理的纳税人满意度调查存在不足及对策探讨提升纳税人满意度的方式方法有哪些文章,供大家阅读参考。纳

小学思想品德教育面临的问题及对策

摘要:小学思想品德课程是小学教育教学过程中不可或缺的一门综合性课程,它对学生良好品德的形成具有重要影

2020党支部班子查摆问题清单及整改措施 农村党支部问题清单

下面是小编为大家精心整理的2020党支部班子查摆问题清单及整改措施农村党支部问题清单文章,供大家阅读参

消防安全检查简报 派出所校园消防安全检查简报

下面是小编为大家精心整理的消防安全检查简报派出所校园消防安全检查简报文章,供大家阅读参考。简报第2期申扎县中学

2021教师党员年度个人总结8篇

2021教师党员年度个人总结8篇2021教师党员年度个人总结篇1敬爱的党组织:我是一个普通年轻的人民