基于数字示波器的高精度抖动测试方法

发布者:keiss2018最新更新时间:2012-03-21 来源: eefocus关键字:数字示波器  高精度  抖动测试 手机看文章 扫描二维码
随时随地手机看文章
越来越多的高速计算机和通信系统开始采用高速串行总线在芯片间,背板间和系统设备间传送高速数据。在串行数据传输过程中,任何微小的高速时钟和数据抖动都会对整个系统产生巨大的影响,在这种情况下,抖动已经成为设计高速数字系统成败的关键。最典型的应用是传统的33M PCI并行总线正在被采用高速串行技术的PCI-Express取代,它的最新标准支持的数据率已经到5Gb/s,一个UI的宽度才200ps,任何微小的抖动都会导致数据传输错误。

从当前各种高速串行总线和数据链路的定时余量规范中表明,在整个数字系统中更加严格地控制抖动是必须的。只有全面有效的测试和分析抖动,其根本原因才能被隔离,从而针对引起系统抖动的原因来减少抖动,提高系统性能和稳定性。像PCI-Express、FBD、InfiniBand、SerialATA和 DVI等都对于时钟和数据抖动有明确要求。本文针对示波器进行的实时抖动测试方法,探讨了影响抖动测试结果的关键因素。

典型的抖动测试方法

为成功地设计高速数字系统,不仅需要理解什么是抖动,计算抖动的大小,还需要对不同的抖动分量进行隔离和分解,分析造成抖动的原因,进而避免在高速系统中出现抖动造成的系统故障。在了解抖动测试前,明智选择合适的抖动测试工具和方法成为整个抖动测试工作的第一步。目前有几种抖动测试工具可供选择,误码仪 (BERT)直接测试系统的误码率,但是价位昂贵,功能单一,不适合设计人员和调试人员;采用时间间隔分析仪测试抖动也存在功能单一,抖动分析能力不足的限制。高性能数字示波器成为当前最流行的抖动测试工具。

对于数字示波器而言,典型的抖动测试方法主要有2种:

1) 采用数字存储示波器的等效采样模式或直接使用采样示波器,通过直方图统计测量定时抖动。等效采样的缺点是无法消除示波器自身的触发抖动对测试结果的影响,并且由于它采用的是多次触发、多次采集、累计显示的工作方式,对于电路设计和调试而言受到较多的限制,无法进行深层的抖动分析。

2) 更为流行的方法是采用数字存储示波器的实时捕获模式,单次触发,连续采集大量数据,配合相应的抖动测试软件进行抖动测试。对比于等效采样方法它消除由于示波器自身的触发抖动对测试结果造成的影响,并且能够进行复杂的抖动分析和抖动分解得到每一个抖动分量,帮助设计和测试人员分析抖动产生的原因,甚至通过抖动分解估算系统的误码率。例如,在美国国家信息标准委员会(INCITS)下属的T11.2组织在有关抖动和信号完整性方法论(MJSQ)中,推荐泰克实时示波器配合TDSJIT3抖动分析软件进行抖动测试和分析。图1是TDSJIT3实时抖动测试结果。

图1:TDSJIT3进行高速数据的抖动测试和分解。

抖动测试


抖动可以描述为相邻脉冲边沿、甚至非相邻脉冲边沿周期或相位的定时变化。这些指标适合检定长期和短期的时钟和数据稳定性。通过更加深入地分析抖动指标,利用抖动测试结果,预测复杂系统的数据传输性能。


周期抖动用来衡量时钟或数据周期样点的边沿到边沿定时。例如,通过测量1,000个时钟周期上升沿之间的时间,可以对统计的周期取样,统计数据会告诉您信号的质量。标准偏差变成RMS周期抖动,最大周期减去最小周期,得到峰到峰周期抖动。每个不同周期测量的精度决定着抖动测量的精度。


相位抖动用来衡量被测信号边沿相对于一个参考信号边沿的时间偏差,从而可以检测到信号相位中的任何变化。这一指标在许多方面不同于周期测量指标。第一,它单独使用每个边沿,而没有使用“period”或“cycle”一类的说法。第二,它可以测量大的时间位移。边沿相位可以偏离几百或几千度,但仍可以以非常高的精度进行测量(360度等于一个周期或循环时间)。测量相位误差常用的指标是时间间隔误差(TIE),测量结果用相对于度的秒来表示。TIE把信号边沿与参考边沿匹配起来,对各边沿之差相加计算总和。在比较了大量的边沿之后,可以为分析提供一个样点集合。与上面的周期测量一样,标准偏差变成RMS TIE,最大时间减最小时间得到峰到峰值TIE等等。TIE测试精度取决于构成样点集合的各个测量的精度。图2显示的是对一个时钟信号的不同抖动测试参数。

图2:典型的时钟信号抖动测试参数。[page]

测试精度

任何设计人员选择示波器进行参数测量前都会通过产品的指标了解其测试精度,以保证足够的容许误差和测量余量。抖动测试也不例外,例如泰克TDS6804B 示波器指明了精度,规定了抖动测量能力的典型值。抖动测试精度受到许多因素的影响,主要包括示波器的定时稳定度、取样噪声、仪器幅度本底噪声和内插误差。


内插误差是由在实际电压样点之间进行线性内插导致的误差。在测量100ps上升时间的信号、示波器以20GSa/s采样率在50%电压门限上进行检测时,这一误差要小于0.3ps RMS。在许多情况下这一误差可以使用示波器中的SIN(X)/X正弦内插及其它方法改善,例如充分利用示波器的垂直动态范围,使输入信号幅度达到示波器满刻度。在大多数情况下,这一原因导致的误差会远小于其它误差源,并且通过使用如Sin(X)/X或Sinc内插,可以进一步减小这一误差。


示波器采样系统中定时元件的稳定性直接影响着定时测量精度。如果时基有误差,那么基于该时基进行的测量会具有同等或更大的误差。示波器中的时基稳定性包括参考时钟、倍频器、计数器等相关电路的稳定性。当通过实时采集模式进行抖动测试时,由于示波器工作在单次触发模式,连续实时采集所有信号,所以它不受仪器多次触发带来的触发抖动影响。


另外两个误差源分别是ADC孔径不确定性和量化误差。这些误差可以表现为幅度噪声和定时噪声,具体取决于取样数据使用的方式。很难区分该误差的实际来源,因为模数转换的时间不同。由于采样头要求有限的时间选通样点(ADC孔径不确定性),任何取样都可能同时包括时间误差和幅度误差。由于ADC分辨率和相关量化误差的综合结果,取样时间和电压样点位置会表现出有限的误差。


最后,幅度噪声是定时测量精度中另一个因素。在快速边沿中,幅度噪声的影响最小,但在边沿速率变慢时,幅度噪声会占据主导地位。这是因为在边沿速率相对于系统带宽变慢时,幅度噪声会改变跨越门限的定时,这样幅度噪声就会变成定时测量误差。


增量时间精度(DTA)


怎样才能确保结果是精确的呢?或者说如何评估示波器的时间测试精度呢?由于抖动测试是时间信息的提取,泰克最早使用“增量时间精度”(Delta Time Accuracy)指明时间测量的精度。这一指标在数字示波器中至关重要,因为它包括前面提到的影响时间精度的多种效应导致的总体影响。


一般增量时间精度(DTA)指标为:

DTA = ±0.3 × SI + 3.5×ppm MI     方程1

其中SI是取样时间间隔,单位为秒,例如20GS/s采样率下,样点时间间隔为25ps。MI是测量时间间隔,单位为秒。±0.3是示波器采集系统常系数。

采用上面的公式来定义DTA是因为几个不同因素对精度的影响不同。首先是时基精度,一个10.0MHz参考源的校准精度以及校准后是否漂移,都会影响长时间测量结果。例如,在测量一个时间为1.0ms脉冲时,低于皮秒级的影响(如内插误差)相对于0.4ppm校准偏差引起的误差非常小,因为 1.0ms×0.4ppm,得到误差达到400ps。

通过使用TDS6804B(8GHz带宽,20GS/s采样率)进行两个时钟测量实例(一个短时钟周期、一个长时钟周期),可以查看主要误差的来源。当测试1.0GHz高速时钟时,使用TDS6804B以20GS/s实时采样率进行采样。根据DTA公式可以得到下面结果:
DTA=±0.3x50 ps+3.5ppm×1ns = ±15ps    方程2

这是在单次采集或实时采集中进行的任何一项时间测量的峰峰值测量误差。在大量的样本容量(大约1,000次测量值)中,误差的标准偏差一般为 0.06×SI+3.5 ppm×MI。在本例中,其约等于3.0 ps RMS(0.06×50ps+3.5ppm×1ns)。


当在测量100kHz时钟时,根据DTA公式可以得到下面结果:p>
DTA=±0.3×50 ps+3.5 ppm×10us= ±50 ps    方程3

测量误差可能会高达50ps峰值,RMS结果将受到类似的影响,因为时基误差是确定的。在这种情况下,我们看到在测量时间更长时,常数0.3决定的短期效应变得不如时基校准和稳定性对长时间结果的影响明显。在泰克示波器中,采用一种独有硬件技术保证更高的时间测试精度,称为实时内差模式,它作用在示波器采集前端,通过sinx/x内差算法在ADC的样点间插入样点,并且可以调节插入的样点数目,最小样点间隔为500fs。


分辨率


测量分辨率定义了可靠地检测到测量变化的能力。不要把分辨率与测量精度、甚至测量可重复性混为一谈。在定时测量中,分辨率是辨别信号定时中微小变化的能力,而不管变化是有目的的,还是由噪声引起的。


在实时示波器中,定时分辨率受到取样速率、内插精度和基于软件的数学运算库的限制。在使用40GS/s的取样速率和SIN(X)/X内插时,可能会实现几十飞秒的分辨率。由于上面的参考实例中的分辨率基于数学运算库,因此实际分辨能力低于一飞秒(0.0001 ps)。


分辨率是指测量定时中微小变化的能力。但这可能并不一定反映真实情况。当测量变化小于仪器内部固有噪声时会发生什么情况呢?在测量幅度小的噪声或抖动时,必须考虑示波器系统的抖动本底噪声。只知道系统分辨率对理解精度或示波器整体能力的实际极限并没有什么帮助。


抖动本底噪声(JNF)


抖动本底噪声(Jitter Noise Floor)是抖动测量时仪器固有的噪声。在示波器中JNF决定着可以检测到的抖动底限。客观的讲,幅度小于JNF的抖动示波器是观察不到的。尽管某些厂商可能声称可以分辨小于JNF的抖动幅度,但这种能力几乎没有什么参数价值。


检验JNF的方法之一是测量没有噪声的、完美定时的信号。尽管完美信号非常少见,但适当良好的信号源是存在的,可以用来表征抖动本底噪声。一般用于这一测试的常用仪器是具有低相位噪声的高精度RF发生器。


泰克示波器使用时间间隔误差(TIE)来测量JNF。TIE是最优方法,因为它测试出信号中的任何相位误差,而不管误差具有高频特点还是低频特点,是单次事件误差还是累积误差。此外,在实时示波器中,TIE方法可以将计算得到的完美时钟作为参考时钟源。


内存长度对抖动测试的影响


影响JNF的另一个因素是在测试结果中包括的抖动噪声的频段。所有抖动都具有不同的频率分量,其通常从DC直流到高频部分。因为抖动测试的频率范围是由示波器的高速采集内存的大小决定的,它是单次采集时间窗口的倒数(单次采集时间窗口=高速内存长度×采样间隔时间)。例如,泰克TDS6154C在 40GSa/s时实现了64 M的高速采集内存,即一次触发能够以25ps的时间间隔连续采集64M个样点,得到单次采集时间为1.6ms,因此它能够测量最低到625Hz的抖动。在示波器中测量JNF时,还应指明该指标包括的频率范围。泰克示波器一般标称的是在最长记录长度和高采样率下的JNF。

当使用示波器进行抖动测试时,高速采集内存长度是示波器进行抖动测试的关键指标。在示波器的前端放大器和采集电路后面跟随着高速存储电路,它存储ADC转换的采样点。高速内存长度不仅决定了一次抖动测试中样本数的多少,还决定了示波器能够测试的抖动频率范围。表1显示了20GSa/s高采样率下,不同内存长度分析抖动频率范围的大小。

表1:在20GSa/s高采样率下不同内存长度分析抖动频率范围的大小。


传统示波器设计时采用将高速采集前端(多达80颗ADC)和高速内存在物理上用一颗SoC芯片实现,由于有太多功能在一个芯片内部,导致片内高速内存容量的限制(在40GS/s下一般小于2M),只能测量直到20KHz以上的抖动,并且当需要测试低频抖动时,无法对内存扩展升级。对于大多数应用,测试和分析625Hz到20KHz范围内的抖动信息非常重要。为了弥补这种设计结构的缺陷,这类示波器会采用外部的低速存储器弥补片内高速内存,但外部存储器不能在高采样率下工作,一般只能提供2GS/s,无法提供有意义的抖动测试结果。

TDS6154C采用硅锗(SiGe)半导体集成采集前端,并使用专用的高速存储器。它同时支持最大的带宽,采样率和存储长度。例如,当使用40GS/s 实时高速采集时,512K内存一次采集数据量仅为12.5us,只能测试频率范围为80K以上的抖动。在各种串行总线和时钟抖动测试中都很难满足测试要求。


因为内存长度对JNF和实际抖动测试都有至关重要的影响,为了提供和其它示波器厂商的该指标有可比性,泰克还提供了其它情况下的JNF指标。即将 TDS6154C示波器的存储长度限制为2M进行JNF测试,以便和其它有内存限制的示波器进行比较。在这一频率范围内,TDS6154C的典型JNF是 420fs,该指标比其它类型示波器小一倍。[page]


JNF测试实例


通过和示波器的DTA指标相结合,JNF可以帮助确定该示波器在时间域中进行有效精确测量的能力。图3 所示为泰克TDS6154C示波器测量一个稳定信号源(如BERT或RF发生器)信号的性能。图3测试使用的内存长度约为5ns,TIE测试结果为 326fs RMS。这种测试方法对应于其它示波器厂商提供的抖动测量本底噪声指标(JMF),它们的测试方法类似。由于在JMF指标下示波器的时基设置只能测试到大约200 MHz(5ns的倒数)的抖动频率。它无法全面反映该示波器的抖动测试能力,所以泰克示波器提供JNF指标来表征实际情况下抖动测试能力。JMF和JNF 指标在绝大多数实际应用环境中不能互换。



图3采集5ns稳定时钟波形得到的JNF测试结果(对应于其它示波器厂商提供的JMF指标)

图4表明了使用更长的内存记录长度,连续采集10us信号得到的更合理结果。在这种情况下,TDS6154C 测试的TIE只是略有提高,为374fs。它的采集显示了在更长的采集时间上的抖动本底噪声,其中包括直到大约100kHz(10us的倒数)的低频噪声。这可以更全面地查看信号上超过100K的噪声,但仍不能完全表示示波器的使用方式。当在40GS/s采样率下连续采集10us信号时,需要400K的记录长度。这个记录长度设置已经接近有些示波器的测试极限。

图4:采集10us稳定时钟波形得到的JNF测试结果。

图5表明了在40 GSa/s取样速率、40 Mpts采集内存、连续采集1 ms时间后对稳定的时钟信号进行的TIE测量,这一时间比竞争对手示波器最长的内存长度要长20倍。1ms采集结果中包括从1 kHz直到示波器带宽的噪声来源,本例中的TDS6154C示波器带宽是15 GHz,1ms采集可以直接查看从15 GHz直到1 kHz的信号抖动和调制效应。


通过图3可以看出TIE测试结果约为1.0ps RMS,但更重要的是最大定时误差的峰到峰值。在1 ms采集中,峰值定时误差指标小于±7ps,周期间误差约为±4ps峰值。如果考虑一下目前仪器的典型使用方式,并看一下基于PLL的TIE测量,误差要降低到±3ps峰值以下,在所示的40M采样点、1ms记录中要降低到500fs RMS以下。实际仪器的JNF小于显示的值,因为信号源中也有噪声。

图5:采集1ms稳定时钟波形得到的1K到15G的所有抖动结果。

在当前的高速总线标准中,如FBD、PCI Express和DDR2,示波器可以采集和处理长记录长度,显示周期间相关性,检验参考时钟的调制特性,检验PLL和时钟恢复性能。通过图3可以看到 TDS6154C在40 GS/s 40Mpt记录长度上拥有非常好的长期性能。


结论

面对当前各种时钟和数据的抖动测试需求,选择合适的示波器和测试方法是第一步。在进行抖动测试前,需要了解示波器对抖动测试精度影响的关键指标和测试方法,例如JNF、DTA等,以及不同测试参数对测试结果的影响,这是保证高精度抖动测试结果的前提。

抖动测试时不仅需要对示波器整体性能进行评估,例如示波器的带宽,采样率,还需要与之匹配的高采样率下的采集内存长度,这样才能测量从接近DC直流到仪器带宽的抖动,同时保持各种相位和谐波关系,对被测信号的抖动有一个全面的分析。

抖动是一种DC到超高频的现象,当试图发现抖动产生的根源时,必需能够查看整个抖动频谱,从不到千赫兹的电源频率直到几百兆赫的相邻时钟和数据频率干扰。 TDS6000B/C和TDS7000B系列示波器不仅提供为您提供了与带宽,采样率匹配的高速存储长度,还提供业内最高的抖动测试精度。
关键字:数字示波器  高精度  抖动测试 引用地址:基于数字示波器的高精度抖动测试方法

上一篇:用数字荧光示波器对开关电源功率损耗进行精确分析
下一篇:利用VC++模拟示波器实现简谐振动合成

推荐阅读最新更新时间:2024-03-30 22:24

高精度低成本:一款LED老化测试方案
本文所介绍的一种LED 照明产品长时间通电老化试验的方案,主要说明了如何结合系统中的硬件产品,和主要的监控软件,实现最大程度的发挥电源在老化系统中的作用,提高多个LED 产品老化测试的同时性和自动化性,得到最准确的监控数据以及最大程度的节约人力成本的目标。该系统已经应用到实际的老化试验中,并将进一步在LED 行业中推广和应用。   LED 发光的原理   中国LED 产业起步于20 世纪70 年代。经过30 多年的发展,中国LED 产业已初步形成了包括LED 外延片的生产、LED 芯片的制备、LED 芯片的封装以及LED 成品应用在内的较为完整的产业链。   LED 照明的LED 是由Ⅲ-Ⅳ族化合物,如GaAs(砷化镓)、G
[模拟电子]
<font color='red'>高精度</font>低成本:一款LED老化<font color='red'>测试</font>方案
1.13.2_高精度延时函数_P
在使用某些设备时,对延时时间的精度有很高的要求,这时候,就可以使用高精度的延时函数来实现精准延时。 实现方法 实现高精度的延时函数的方法主要有以下两种。 使用for循环 在for循环中循环自减,为0跳出,以此来实现延时;这种方法实现难度较高,需要不断测试才能确定一个比较精确的值,且移植性能很差(同样程序,比如在Nor和SDRAM上运行,花费的时间将不同,不同款的SDRAM设备,花费的时间又会不同)。 使用定时器 使用芯片内部的定时器可以实现微秒级的精准计时。 假设有一个定时器,设置一个初始值,每来一个CLK计数值就减一,减到0则重新计数。 假设Tclk = 0.1us,也就是每0.1us来一个时钟脉冲,那么我们
[单片机]
1.13.2_<font color='red'>高精度</font>延时函数_P
Littelfuse推出高精度MACD-14和MASM-14系列
新款开关可满足需要以具有竞争力的价格获得近差继电特性的其他细分市场的需求。 中国,北京,2015年2月3日讯 - Littelfuse公司是全球电路保护领域的领先企业,日前宣布推出了MACD-14和MASM-14系列高精度产品以扩充其磁簧开关产品系列。 (MASM-14为MACD-14的表面贴装型号。) 这些磁簧开关具备近差继电特性,可服务于受空间限制和对准确性要求严格的客户应用。 此外,MACD-14和MASM-14系列为电路设计师带来更大的布局和设计灵活性。 MACD-14和MASM-14系列的近差继电特性让我们能够服务于要求以具有竞争力的价格实现高精度传感的新细分市场。 Littelfuse业务
[工业控制]
Littelfuse推出<font color='red'>高精度</font>MACD-14和MASM-14系列
车规级高精度组合导航定位系统——INS-811
① 产品 介绍 INS-811是一款高性价比车规级组合导航定位系统,内置集成了战术级6轴 MEMS 惯性测量单元和RTK功能的 高精度 卫星定位模块,能够在各种严苛环境中实时提供位置、航姿、速度信息,也可以提供加速度、角速度等信息。产品具有体积小、重量轻、性价比高的特点,适用于L2及以上 智能 驾驶,智慧物流,精准农业,低速无人车等应用场景,可以根据客户的需要加入其他特征(摄像头、 激光雷达等)辅助实现多源传感融合定位。 ②应用领域:智能驾驶、智慧物流、精准农业、低速无人车
[汽车电子]
车规级<font color='red'>高精度</font>组合导航定位系统——INS-811
DSO中的内插技术 (数字示波器重要功能的使用)
DSO中的内插技术 内插是当前数字示波器中的一项重要功能。DSO的主要用途是分析和查看模拟波形。为此,DSO以某种有限采样率对波形采样,相对于时间生成电压矢量。由于这个矢量代表着一个样点集(而不是实际平滑的模拟波形),因此通常需要在实际采集点之间生成预测的样点,来修改采集的波形。在实际波形样点之间生成样点的过程称为内插。在正常操作时,内插可以得到一个采样率较高的、更接近被分析模拟波形近似值的波形。 本文将讨论两种最流行的内插方法,解释其基本工作方式。然后,本文将介绍怎样保证良好的内插结果及怎样确定什么时候适合采用内插。本文使用部分简单的试验,比较了三种高端示波器的内插性能。最后,本文比较了内插操作的差异。 线性内插 最简单
[模拟电子]
DSO中的内插技术 (<font color='red'>数字示波器</font>重要功能的使用)
基于混合最优算法的高精度数控直流电源设计
1 设计任务 设计并制作 数控 直流电流源。输入交流200~240V,50Hz;输出直流电压≤10V。原理框图如1所示。 要求:输出电流范围:200mA~2000mA;可设置并显示输出电流给定值,要求输出电流与给定值偏差的绝对值≤给定值的1%+10mA;具有步进调整功能,步进≤10mA;纹波电流≤2mA;改变负载电阻,输出电压在10V以内变化时,要求输出电流变化的绝对值≤输出电流值的1%+10mA。 2 系统设计方案 鉴于目前数控直流源一般采取运放构成的电流-电压转换电路与单片机结合,设计方案大多为开环系统,主控制器仅用于数字给定及显示,没有对输出电流进行检测和控制。本文在传统电路设计的基础上,利用控制系统中反馈与控制原理,引入电
[电源管理]
基于混合最优算法的<font color='red'>高精度</font>数控直流电源设计
基于数字示波器的EMI预测试
伴随着现代电子技术的发展,各种电子设备的集成度越来越高。大量高速总线和RF功能的引入,使设备本身产生更多的电磁辐射问题。同时,由于用户对采购产品的电磁兼容性要求越来越高,产品设计工程师必须努力降低设计产品的电磁干扰(EMI)。各个厂家也大量投入资金,对产品进行EMC兼容性的测试和认证。   对于通常的EMC设计和认证流程,一般可以分为三个阶段,即产品设计预测试(Pre-test),产品预认证(Pre-compliance)和产品认证(compliance test)阶段。产品认证涉及到严格的标准和测试仪器与场地要求,很多公司在这一阶段是通过第三方的专业实验室完成的,在公司内部只进行预测试和预认证。传统的设计流程是产品设计完成后,
[测试测量]
数字示波器的检定系统
在数字示波器的工作过程中除了存储深度之外还有另外一个系统是非常重要的哦,那就是数字示波器的检定系统,大家对检定系统有什么了解呢?下面中国传感器交易网的专家来给大家介绍一些数字示波器的检定系统的相关知识。 在模拟示波器中,上升时间是示波器的一项极其重要的指标。而在数字示波器中,上升时间甚至都不作为指标明确给出。 由于数字示波器测量方法的原因,以致于自动测量出的上升时间不仅与采样点的位置相关。另外,上升时间还与扫速有关。 随着电子技术的发展,数字示波器凭借数字技术和软件大大扩展了工作能力,早期产品的取样率低、存在较大死区时间、屏幕刷新率低等不足得到较大改善,以前难以观察的调制信号、通讯眼图、视频信号等复合信号越来越容易观察。 数字示波
[测试测量]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved