时钟监测(共3篇)
时钟监测 篇1
0 引 言
随着坚强智能电网建设的推进,电能质量关注度持续提升,日益复杂的电能质量问题对电能质量测量的准确性提出更高的要求。IEC 61000 - 4 - 30《电磁兼容电能质量测量方法》[1]要求,不同电能质量监测设备在同一时刻测量同一信号时,应得出一致、可重复的测量结果; 与此同时,标准中进一步要求电能质量指标的测量方法,需要在10 min RTC计时点重新同步,且一些参数可根据需要对某一时间间隔( 如150 cycle、10 min、2 hour) 进行测量累积。因此,电能质量监测设备指标测量方法与RTC实时时钟密切相关,RTC实时时钟精度直接影响到电能质量指标测量数据计算的准确性[2]。
IEC 62586《电能质量监测设备产品标准》[3,4]对电能质量监测设备RTC实时时钟精度测试作出了相关规定,目前针对该标准进行RTC实时时钟测试的方法和装置还很少。文献[5 - 6]给出了一些常见电力设备,如电能计量装置、微机保护装置等的RTC实时时钟精度测试方法; 文献[7]提供了我国在电能质量监测设备测试领域中取得的研究成果,主要集中在对电能质量监测设备测量指标的测量精度进行测试,在一定程度上实现了半自动化甚至是自动化测试,但是上述文献在RTC实时时钟精度测试方面,没有提出相应的测试方法,也未见适用的装置。
针对上述情况,本文基于NI( National Instrument) 公司的虚拟仪器工作平台和相关设备,应用虚拟仪器技术,提出并设计研制了一种电能质量监测设备RTC实时时钟精度测试系统,来实现RTC实时时钟精度的测试。
1 测试依据及原理
1. 1 测试依据
根据IEC 62586《电能质量监测装置产品标准》和GB 17626.30 - 2012《电能质量测量方法》[8]的要求,对于A类设备,RTC实时时钟的误差应不超过 ± 20 ms; 当无法通过一个外部信号同步时,RTC实时时钟的容差应满足24 h周期小于 ± 1 s。
1. 2 测试原理
1. 2. 1 系统构成
本测试系统由GPS对时装置、电能质量标准源、虚拟仪器测试平台、被测设备及各类数据总线等组成,如图1。
( 1) GPS对时装置: GPS对时装置用于提供标准的GPS时间信号,该信号可完成测试系统中被测设备和测试平台的时钟同步。被测设备一般采用IRIG-B码实现对时功能,由于IRIG-B信号有多种制式和电压形式,被测设备可以识别的IRIG-B制式各不相同,如: IRIG-B AC与IRIG-B DC信号互相不能识别。在此情况下,需要配置IRIG-B码转换器( 或适配器) 。该转换器可以将GPS时间频率标准装置发生的IRIG-B信号转换为被检设备可以识别的IRIG-B制式。
( 2) 电能质量标准源: 系统采用Fluke 6135A作为标准源,该标准源能够在提供可自定义骤升 /骤降信号的同时发出一个下降沿时间标记: + 5 V TTL逻辑驱动,可用来将外部设备同步到骤升/骤降功能。标准源支持仪器命令为SCPI,采用GPIB通用仪器接口实现远程控制。系统中采用NI公司的GPIB-USB控制卡来实现PC机与Fluke 6135A标准源的数据通信。
( 3) 虚拟仪器测试平台: 以PXIe模块化数据采集分析系统取代传统测量仪器,由数据采集卡、GPS接收装置、定时同步模块、嵌入式控制器等构成。各部分功能分别为: 数据采集卡采用NI公司高精度的数字信号采集卡NI PXI - 6621,对电能质量标准源输出的TTL信号进行数字化采样并传输至控制器; GPS接收机采用NI PXIe - 6683H,通过GPS对时装置接收IRIG-B( AC) 码信号,定时对虚拟仪器测试平台进行校准,测试平台的同步时间精度为30 ns; 定时同步模块结合NI PXIe - 6683H,通过GPS同步信号来来调整测试平台10 MHz时钟; 嵌入式计算机用于控制和协调整个系统的工作,完成数据处理和分析,是测试系统的核心模块。
1. 2. 2 工作原理
测试时,首先将虚拟仪器测试平台和被测仪器同步至GPS时钟。电能质量标准源模拟电能质量事件,被测设备将会记录事件发生时刻; 与此同时,虚拟仪器测试平台捕获电能质量标准源触发下降沿,并计算该下降沿发生的绝对时刻作为标准值。通过比较这两个时刻,可以判断该电能质量监测设备的实时时钟精度,且当失去同步时,测试方法类似,如图2所示。
2 测试系统软件设计
根据上述测试设备和测试原理,本文结合总体设计的技术思想和测试自动化的发展方向,设计开发了RTC实时时钟精度测试系统软件,该测试软件的主要功能如下:
( 1) 可将所有设备集成一体化,能够完成激励信号的发出到测试数据采集的同步闭环控制处理;
( 2) 能够控制激励信号的产生,并自动计算得到待测指标的标准值;
( 3) 具有对采集到的数据及测试过程进行记录、处理、保存、打印等功能,对测试值与标准值比较,得出测试结果;
( 4) 具备开放的体系结构、通用的总线结构,具备良好的可扩展性。
3 测试系统软件实现
测试平台软件用于控制和协调整个系统的工作,自动执行测试任务,完成数据处理和分析,是测试系统的核心模块。
3. 1 总体架构
系统软件模块化是本测试系统软件设计开发的主要思想,系统软件组成结构如图3所示。通过该软件将硬件设备资源和被测仪器无缝接入,利用强大的计算机处理能力和分析能力来实现对整个测试流程的自动化。
按照系统的功能要求,测试软件设计包括上层管理层、中层执行层和底层I/O接口驱动程序层三个层次,采用模块化结构设计,每个模块完成不同的功能。
( 1) 管理层是用户与系统交互的媒介,实现整个测试系统的控制和调度,将接收的用户指令下达到各个功能模块,并从这些模块中返回和显示所需的结果。
( 2) 执行层的主要功能是按照自定义的测试任务执行测试、处理和返回测试结果以及实时监测仪表的工作状态,并生成测试报告。它主要由系统配置模块、测试设置与执行模块和数据管理模块以及报告生成模块组成。
( 3) 驱动层即底层仪器设备驱动,主要功能是将执行层控制模块的命令转化为仪器设备可识别的指令通过总线传递给每台仪器,再将仪器设备的测试结果返回执行层数据分析与处理模块。测试系统将每一个测试项目封装为独立的驱动模块,测试时分别调用。
3. 2 关键技术
3. 2. 1 基于 IEC 61850 被测设备无缝接入
一般来说,通用仪器设备编程接口为GPIB,此类接口使用标准的SCPI语言进行仪器控制功能研发,其仪器驱动相对简单; 对于电能质量监测此类专业设备而言,我国电力行业标准和国家电网公司企业标准均规定,电能质量监测设备需要具备IEC 61850通讯功能,且通过以太网实现数据传输。电能质量监测设备上传电能质量事件信息基于IEC 61850非缓存报告的方式,因此本系统通过创建IEC 61850Client端完成对IEC 61850非缓存报告的解析,实现被测设备和测试系统间的数据通信,达到被测设备“即插即测”的目的。
3. 2. 2 虚拟仪器测试平台标准值计算
电能质量事件标准源发出测试信号即电压事件波形,并在事件发生时刻产生TTL下降沿脉冲,数字信号采集卡带时标采样TTL脉冲,测试平台接收采集装置上传的TTL脉冲采样值,计算标准源给出的电能质量事件发生时刻,此时刻记为标准值; 测试平台比对标准值与被检设备的测量值,根据检测方法要求计算被检设备指标,给出检测结果。
虚拟测试平台作为电能质量监测设备测试的参考标准表使用,与传统的仪器相比,其可扩展性、灵活性更强。
3. 2. 3 标准化全过程测试流程管理
本系统完成的是一个多任务、多过程的实时测试过程,通过运用软件流程控制结构,组织和调用各功能模块,依次进行测试信息录入—测试项目设置—测试执行 - 测试结果—测试报告生成等一系列测试动作,即一个完整的测试流程,规范了电能质量监测设备测试工作的进行。
3. 2. 4 数据库控制测试技术
如果将所有测试参数、指令及数据都内置于测试软件中将会导致系统的可维护性、可扩展性差。本系统将数据库引入,通过数据库实现测试流程控制,把测试任务写入数据库,测试程序读取数据库并执行相应的测试动作。这样当测试任务改变时,只要操作数据库而无需对程序进行更改,便于系统扩展。
4 系统验证
4. 1 测试结果
利用该测试系统对一台已经过IEC 61000 - 4 - 30 A级符合性测试的电能质量监测设备进行实时时钟精度测试,测试结果见表1。
4. 2 系统测量不确定度评定
4. 2. 1 数学模型
测试系统显示的RTC实时时钟误差:
其中A为电能质量监测设备的RTC实时时钟误差,AS为虚拟仪器测试平台的标准RTC实时时钟误差。
( 1) 输入量A的不确定度UA( A) 主要来源是被测电能质量监测设备RTC实时时钟误差值的测量重复性,可通过测量得到测量列,采用A类方法评定。
( 2) 输入量AS的不确定度UB( AS) 主要来源于电能质量标准源TTL延迟误差和测试平台的标准RTC实时时钟误差的不确定度,可根据校准证书给出相应的允许误差来进行评定,由B类方法评定。
( 3) 由于各个标准不确定度分量互不相关,可通过方和根法求得合成标准不确定度:
( 4) 取95% 概率值,包含因子k = 2,则扩展不确定度为U =2Uc( δ) 。
4. 2. 2 系统测量不确定度
由4. 1的测试数据计算得到测量不确定度见表2。
测试过程与结果表明,系统运行稳定可靠,精度高,符合IEC62586标准测试要求。
5 结束语
本文提出的电能质量监测设备时钟精度测试系统综合应用时钟同步、虚拟仪器、数字信号处理和数据库等技术,能够基于IEC 62586标准的测试要求,自动完成电能质量监测设备RTC实时时钟精度的测试工作,测试实时性、可靠性强。此外,本系统可进一步扩展用于电能质量监测设备其他功能的测试,该系统的推广和使用将有利于电能质量监测设备测试水平和该类产品研发技术水平的提高,为电力系统电能质量的提高和改善提供准确的依据及技术保障。
时钟监测 篇2
S o C技术的高速发展使集成电路的集成度越来越高, 芯片尺寸越来越小, 而芯片的功能不断强大。当前在一个封装内往往集成了许多的模块或者IP, 这些模块或者IP的时钟速度往往有比较大的差异, 如某交换机芯片, 其核心部分的时钟为1 3 3 M H z, P C I接口部分的时钟有5 0 M H z, S D R A M内存接口部分的时钟是1 2 5 M H z, 而I 2 C接口部分的时钟只有100 kHz或者400 kHz。这些时钟速率直接影响到芯片相应接口部分的传输数据的速率。一般时钟速率和相应接口的传输数据速率数值上是1:1的关系, 如核心的时钟频率是133 MHz, 相应端口的数据速率为133 Mbps。在对该芯片进行测试时, 同一测试向量中, 不同部分端口信号数据速率是不同的。
1 ATE硬件实现多时钟域测试
自动测试设备 (Automatic Test Equipment, 简称A T E) 是目前大规模集成电路测试的主要手段。目前就世界上高端A T E设备而言数字测试通道数量可以达到2 0 4 8个, 通道的数据速率可以达到3 G s p s以上。同时也有提供了多时钟域的测试方案, 即系统内不同时钟生成单元产生不同的时钟, 数字测试通道的数据速率由其所在卡笼 (cardcage) 中的时钟生成单元决定。
这种方法存在着两个问题, 一是不同时钟域间的同步问题, 由于不同时钟生成单元产生不同的时钟, 而不同时钟生成单元间微小的延时差异, 在经过一定数量的周期后, 因延时差异累加起来产生的延时就会非常明显, 从而造成数字测试通道的测试向量的驱动或者比较信号发生错误。二是由于数字测试通道的数据速率由其所在卡笼中的时钟生成单元决定, 因此测试时数字测试通道的选择受此限制, 当然, 也可以将测试通道板卡在卡笼之间移动来解决, 这样需要A T E系统具有很高的硬件配置, 具有高的测试成本。
由于该交换机芯片具有多个时钟域, 所以A T E设备除了在数据速率上要满足测试要求外, 还需要满足芯片上不同时钟域信号问题。如果从硬件实现多时钟域的测试, 需要配备多个卡笼。目前国内现有的测试系统很难具有这样的硬件条件。
本文提出以单时钟域的形式对多时钟域的测试向量进行转换, 使得A T E设备就能以单时钟域的形式运行测试向量, 并基于中国电子技术标准化研究所的V 9 3 0 0 0系统进行多时钟域测试向量转换成单时钟域, 最终完成测试项目。
2 V93000向量的转换过程
测试向量文件格式主要有V C D、W G L等多种, 国内较常见的是V C D格式。V C D (V a l u e C h a n g e D u m p) 格式是基于事件的向量文件。基于事件是指只有当信号发生变化时才记录波形。而V 9 3 0 0 0系统使用的向量是基于周期的, 即向量需要描述每一个周期中信号的状态, 即使信号的状态没有发生变化。由于V C D格式与V 9 3 0 0 0系统使用的向量之间有比较大的差异, 所以需要将V C D向量转换成V 9 3 0 0 0系统的向量。
目前, 有一些第三方的商业向量转换工具可以完成这项工作, 如V t r a n、W a v e W i z a r d、T P C等。他们基本工作流程类似, 如图1所示。首先要解析V C D文件, 分析其各个信号对应的管脚及其输入输出属性等。之后对信号进行周期化, 即用指定的时间长度 (周期) 来按顺序“切割”向量, 周期的大小通常是对应时钟周期的长度, 同时还受到测试系统时钟生成单元硬件的限制。然后对周期化后向量按周期进行采样, 形成各个周期的波形。一个信号所能使用波形的数量受测试系统硬件的制约。如果采样后, 形成的波形数超过了系统所能提供的波形数量, 则转换失败, 需要改变周期, 重新周期化以减小各个周期出现不同波形的数量, 再进行采样。如此反复, 直至波形数符合系统要求。最后, 根据测试系统对向量文件格式的要求输出最后的向量文件, 一般会包括A S C I I t i m i n g文件和A S C I I vector文件。V93000系统自带的工具可以把上述两个文件处理生成最终的二进制的测试向量文件。
3 实现方法
实现基于单时钟域的多时钟域测试向量转换的方式根据周期化选取周期的方式不一样, 分为以下几种方式。
3.1 公约数周期
这种方式相对比较简单。以前文提到的交换机芯片为例, 其核心部分时钟周期为7.5 ns, PCI接口部分为20 ns, SDRAM部分为8 ns。上述几个周期的最大公约数为0.5 ns。如果以0.5 ns为周期对测试向量进行周期化, 则几个部分的信号都可以进行完整的周期化。但是, 同时带来向量深度的大大增加。因为原来核心部分每7.5 ns才有一次状态变化, 只需要一条向量就可以描述, 而以0.5 ns进行周期化需要15条向量才能描述同样时间长度的状态变化, 这意味着向量深度会增加15倍!需要测试系统有足够深度的向量储存器才能实现。目前市场上常见的测试系统配备的向量储存器都比较有限, 一般每个测试通道配备的向量储存器最多只能达到64 Mb。所以, 时钟周期为7.5 ns的芯片核心部分的测试向量深度达到5.72 Mb, 以0.5 ns进行周期化, 产生的测试向量深度将达到5.72 Mb×15=85.8 Mb, 超过测试系统的最大向量储存器深度。另一方面, 测试系统的时钟生成单元对周期的最小值是有限制的。因为测试系统不能提供比其系统时钟周期更短的信号周期, 所以, 周期化使用的周期必须大于或者等于测试系统的系统时钟的周期。以V93000系统为例, 不同型号的测试通道板卡的最小周期也不同。目前其最小周期是PinScale3600测试通道板在全速软件许可条件下可达到2.2 ns, 大于0.5 ns的公约数周期。所以, 该交换机芯片无法使用公约数周期进行周期化转换。
3.2 公倍数周期
以几个周期的公倍数为周期对向量进行周期化。7.5 ns、20 ns和8 ns的最小公倍数是120 ns。如果以120 ns为周期对测试向量进行周期化, 则几个部分的信号可以进行完整的周期化。例如转换后, 核心部分由原来周期7.5 n s延伸至周期60 ns, 新周期中恰好完整包括原来16个周期的信号。S D R A M部分在新周期中将包括原来1 5个周期。在每一个原周期内, 信号可能会有且仅有一次信号状态的改变, 所以, 在一个原周期内测试系统需要提供一个驱动沿来改变或维持输入信号的状态, 或者提供一个采样沿来捕获输出信号的状态变化。以V93000系统为例, 系统提供8个独立驱动沿和8个独立的采样, 同一个测试通道的同一个采样沿或者驱动沿的触发时间是固定的, 同时V93000系统不支持多通道复用的方式来增加信号沿资源。以核心部分为例, 由于新周期120 ns中包括16个原周期 (7.5ns) 的信号, 因此, 在新周期中需要使用16个驱动沿或者采样沿才能确保描述信号的状态变化, 而测试系统无法提供如此多的信号沿资源, 所以无法使用公倍数周期进行向量。
3.3 平衡周期
上述两种方法比较易于理解, 而且可以很方便由前文提到的商业向量转换工具实现。下面介绍的平衡周期需要首先通过人工计算得到, 同时目前的商业向量转换工具对使用平衡周期转换向量支持有限, 需要人为干预, 有时甚至无法转换成功。平衡周期是在公约数周期和公倍数周期之间的一个周期值。它要满足几个条件:首先, 虽然平衡周期不是几个时钟周期的公倍数, 但是它是这个公倍数的一个约数。经过若干个平衡周期后, 原来几个不同周期的信号沿重新对齐, 从而避免由于测试系统的边沿放置精度误差累积造成信号的时序错乱。其次, 部分信号的原有周期无法被平衡周期整除, 会出现平衡周期中包含非整数个原有周期的信号, 因此, 需要保证平衡周期中出现的波形变化可以被测试系统提供的驱动/采样沿完全表示。最后, 平衡周期要考虑测试系统硬件的限制, 一般需要以所使用的测试通道板中最慢的数据速率为底限进行考虑。
综合上述的几个条件, 我们最终选定1 0 n s为平衡周期, 首先, 10 ns是公倍数周期的一个约数, 在12个周期后所有信号重新对齐。其次, 以7.5 ns的周期为例, 10 ns周期中有11/3个周期, 每3个10 ns新周期中有4个原有7.5 ns周期的信号, 需要使用4个驱动沿或者采样沿就可以描述3 0 n s时间内信号的变化, 满足测试系统对信号沿的数量限制。最后, 10 ns周期意味着测试通道板中的数据速率只要达到1 0 0 M s/s以上就可以满足。测试系统硬件条件达到要求。测试人员以1 0 ns为周期对交换机芯片的测试向量进行转换, 测试向量成功转换成V93000的向量文件。利用这些向量文件, 测试人员完成了该交换机芯片的功能及全部交/直流电参数和开关参数的测试。
4 结语
介绍的三种多时钟域测试向量转换成单时钟域方法中利用多周期的公约数周期进行转换的方法比较简便, 对硬件要求较高, 其转换出来的向量深度大, 但是由于每个周期中最多只有一次状态变化, 比较易于电参数测试程序的调试。公倍数周期也对硬件有一定要求, 由于其一个周期内包含多于一个原有周期的信号, 起到了压缩向量长度的作用, 对于测试向量深度有限的测试系统还是有帮助的。平衡周期相比于前两种方法对硬件的要求低, 但是操作起来相对复杂, 主要表现为商业向量转换工具支持不好。平衡周期和公倍数周期产生的向量同样具有一个周期有多于一个信号状态变化的现象, 所以, 对电参数测试程序的调试需要一定的技巧。
参考文献
FPGA时钟设计 篇3
对于一个设计项目来说,全局时钟是最简单和最可预测的时钟。在PLD/FPGA设计中最好的时钟方案是由专用的全局时钟输入引脚驱动的单个主时钟去钟控设计项目中的每一个触发器。只要可能就应尽量在设计项目中采用全局时钟。PLD/FPGA都具有专门的全局时钟引脚,它直接连到器件中的每一个寄存器。这种全局时钟提供器件中最短的时钟到输出的延时。
1 全局时钟
全局时钟的实例如图1所示。图1中定时波形示出触发器的数据输入D[1..3]应遵守建立时间和保持时间的约束条件。建立和保持时间的数值在PLD数据手册中给出,也可用软件的定时分析器计算出来。如果在应用中不能满足建立和保持时间的要求,则必须用时钟同步输入信号。
2 门控时钟
在许多应用中,整个设计项目都采用外部的全局时钟是不可能或不实际的。PLD具有乘积项逻辑阵列时钟(即时钟是由逻辑产生的),允许任意函数单独地钟控各个触发器。然而,当你用阵列时钟时,应仔细地分析时钟函数,以避免毛刺。
通常用阵列时钟构成门控时钟。门控时钟常常同微处理器接口有关,用地址线去控制写脉冲。然而,每当用组合函数钟控触发器时,通常都存在着门控时钟。如果符合下述条件,门控时钟可以象全局时钟一样可靠地工作,图2所示是一个可靠的门控时钟电路。
(1) 驱动时钟的逻辑必须只包含一个“与”门或一个“或”门。如果采用任何附加逻辑在某些工作状态下,会出现竞争产生的毛刺。
(2) 逻辑门的一个输入作为实际的时钟,而该逻辑门的所有其他输入必须当成地址或控制线,它们遵守相对于时钟的建立和保持时间的约束。
在设计中可以将门控时钟转换成全局时钟以改善设计项目的可靠性。图3示出如何用全局时钟重新设计图2所示的电路。地址线在控制D触发器的使能输入,许多PLD设计软件,如Max+Plus Ⅱ软件都提供这种带使能端的D触发器。当ENA为高电平时,D输入端的值被钟控到触发器中:当ENA为低电平时,维持现在的状态。
3 多级逻辑时钟
当产生门控时钟的组合逻辑超过一级(即超过单个的“与”门或“或”门)时,验证设计项目的可靠性变得很困难。即使样机或仿真结果没有显示出静态险象,但实际上仍然可能存在着危险。通常,不应该用多级组合逻辑去钟控PLD设计中的触发器。
图4给出一个含有险象的多级时钟的例子。时钟是由SEL引脚控制的多路选择器输出的。多路选择器的输入是时钟(CLK)和该时钟的2分频(DIV2)。多级逻辑的险象可以去除。例如,可以插入“冗余逻辑”到设计项目中。然而,PLD/FPGA编译器在逻辑综合时会去掉这些冗余逻辑,使得验证险象是否真正被去除变得困难了。为此,必须应寻求其他方法来实现电路的功能。
图5给出图4电路的一种单级时钟的替代方案。图中SEL引脚和DIV2信号用于使能D触发器的使能输入端,而不是用于该触发器的时钟引脚。采用这个电路并不需要附加PLD的逻辑单元,工作却可靠多了。
4 行波时钟
另一种流行的时钟电路是采用行波时钟,即一个触发器的输出用作另一个触发器的时钟输入。如果仔细地设计,行波时钟可以像钟一样地可靠工作。然而,行波时钟使得与电路有关的定时计算变得很复杂。行波时钟在行波链上各触发器的时钟之间产生较大的时间偏移,并且会超出最坏情况下的建立时间、保持时间和电路中时钟到输出的延时,使系统的实际速度下降,如图6所示。
5 多时钟系统
许多系统要求在同一个PLD内采用多时钟。最常见的例子是两个异步微处理器之间的接口,或微处理器和异步通信通道的接口。由于两个时钟信号之间要求一定的建立和保持时间,所以,上述应用引进了附加的定时约束条件。它们也会要求将某些异步信号同步化。
图7给出一个多时钟系统的实例。CLK_A用以钟控REG_A,CLK_B用于钟控REG_B,由于REG_A驱动着进入REG_B的组合逻辑,故CLK_A的上升沿相对于CLK_B的上升沿有建立时间和保持时间的要求。由于REG_B不驱动馈到REG_A的逻辑,CLK_B的上升沿相对于CLK_A没有建立时间的要求。此外,由于时钟的下降沿不影响触发器的状态,所以CLK_A和CLK_B的下降沿之间没有时间上的要求。电路中有两个独立的时钟,可是,在它们之间的建立时间和保持时间的要求是不能保证的。在这种情况下,必须将电路同步化。图8给出REG_A的值(如何在使用前)同CLK_B同步化。新的触发器REG_C由GLK_B触控,保证REG_G的输出符合REG_B的建立时间。然而,这个方法使输出延时了一个时钟周期。
在许多应用中只将异步信号同步化还是不够的,当系统中有两个或两个以上非同源时钟的时候,数据的建立和保持时间很难得到保证,将面临复杂的时间问题。最好的方法是将所有非同源时钟同步化。使用PLD内部的锁项环(PLL或DLL)是一个效果很好的方法,但不是所有PLD都带有PLL,DLL,而且带有PLL功能的芯片大多价格昂贵,所以除非有特殊要求,一般场合可以不使用带PLL的PLD。 这时需要使用带使能端的D触发器,并引入一个高频时钟。
6 结 语
稳定可靠的时钟是系统稳定可靠的重要条件,所以不能将任何可能含有毛刺的输出作为时钟信号,并且尽可能只使用一个全局时钟,对多时钟系统要注意同步异步信号和非同源时钟。
摘要:在FPGA设计中,为了成功地操作,可靠的时钟是非常关键的。设计不良的时钟在极限的温度、电压下将导致错误的行为。在设计PLD/FPGA时通常采用如下四种类型时钟:全局时钟、门控时钟、多级逻辑时钟和波动式时钟。多时钟系统包括上述四种时钟类型的任意组合。
关键词:FPGA,时钟,逻辑时钟,险象
参考文献
[1]Anon.The ten commandments of excellent design[M/OL].[2009-01-04].http://www.fpga.com.cn.
[2]吴继华,王诚.Altera FPGA/CPLD设计(基础篇)[M].北京:人民邮电出版社,2005.
[3]徐振林.Verilog HDL硬件描述语言[M].北京:电子工业出版社,2000.
[4]田耘,徐文波,胡彬,等.Xilinx ISE Suite Designer 10.X FP-GA开发指南:逻辑设计篇[M].北京:人民邮电出版社,2008.
[5][美]Clive Maxfield.FPGA设计指南:器件、工具和流程[M].杜生海,刑闻,译.北京:人民邮电出版社,2007.
[6]吴继华,王诚.Altera FPGA/CPLD设计(高级篇)[M].北京:人民邮电出版社,2005.
[7]阎石.数字电子技术基础[M].4版.北京:高等教育出版社,1998.
[8]周海斌.静态时序分析在高速FPGA设计中的应用[J].电子工程师,2005,31(11):42-44.