位置:51电子网 » 技术资料 » EDA/PLD

使用PLD内部锁相环解决系统设计难题

发布时间:2008/5/28 0:00:00 访问次数:440

摘要:从整个应用系统的角度,理解和分析pld内部锁相环;在此基础上,深入剖析锁相环的相移结构,同时用这个技术解决系统设计难题。

关键词:pld 内嵌锁相环 fifo xbus

引言

微电子技术的发展趋势是片上系统(soc),也就是在一块芯片上实现整个系统,包括模拟部分和数字部分。作为ic产业中重要的一个分支,可编程逻辑器件(pld)也在努力向这个方向发展。无论是xilinx还是altera,它们最新的pld产品中都集成了诸如pci接口、乘法器、mcu核以及dsp核等部件,有的甚至集成了完整的微处理器。例如,xlinux的vietex2-pro系列就是集成了powerpc微处理器。

锁相环技术是模拟集成电路设计中一个重要的研究方向。但是,现在中高档的可编程逻辑器件一般都集成有片内的锁相环(如xilinx的spartan2系列,altera的cyclone系列)。锁相环一端连接外部全局时钟或者全局控制信号,另一端连接可编程逻辑器件内部专门的布线网络,可以最大程度地减少全局时钟信号到片内各个部分的布线延迟,有效地消除了时钟偏移而带一的各种问题。同时,锁相环一般都提供了倍频、分频、相移三个功能。

1 应用背景介绍

本文用fpga实现fifo,连接pci与ti的tms320c6204的扩展总线,与dsp传输数据的时钟达到100mhz。由于dsp的接口对于时钟和信号的要求很苛刻,所以下面具体分析核心的dsp的xbus时序。

dsp的扩展总线(xbus)是一个32位宽的总线,支持与异步外设、异步/同步fifo、pci桥以及外部主控处理器等的接口。它同时提供一个灵活的总线仲裁机制,可以内部进行仲裁,也可以由外部逻辑完成。

本文中使用xbus的同步fifo接口。如果是要读取fifo,首先fifo要通过中断信号xint0来通知xbus数据已经准备好,然后xbus响应xce0、xre、xoe有效,就开始读取fifo中的数据,读fifo的时序如图1所示;如果是要写fifo,fifo通过xint1申请xbus,然后xbus响应xce1、xwe有效,开始一个写fifo的dma传输过程,写fifo的时序如图2所示。

通过分析xbus读写fifo的时序关系可以看出,在fifo实现的过程中需要注意以下几个地方:

①xbus工作时钟是100mhz,对于大部分的fpga来说是一个比较高的频率。而且,由于读出的数据要求一定的建立时间(setup time)和保持时间(hold time),这就对内部逻辑的设计提出了较高的要求。

②读fifo时,必须在使能信号有效之后的第二个时钟周期就把数据输出。对于fifo内部的双端口ram来说,这个实现起来不一定能满足要求(有很多ram是在使能信号只有的3~5个时钟周期才输出数据的)。这样,通用fifo中就要考虑产生预读逻辑来产生数据,以满足xbus严格的时序要求。

③xbus的使能信号xce0/xce1/xre/xoe/xwe的变化时间范围是在时钟有效之后的1~7ns,考虑到fpga内部的组合逻辑延时和布线延时,这样对有效信号的锁定可能是不稳定的。这就为逻辑设计带来了很大的难度。

2 锁相环的相移功能

系统时钟是100mhz,为了获得更好的布线效果和系统性能,时钟信号必须经过锁相环到达全局时钟布线网络。同时,锁相环还可以提供多个时钟相移的信号,同样可以连接到全局布线网络来驱动片的时钟信号。以xilinx公司的spartan2系列芯片为例(altera的cyclone或者更高级别的系列也提供了类似的锁相环),使用片内锁相环进行时钟相移的示意如图3所示。

相移以后的时钟对于系统设计有很大的用处。本文利用了相移以后的时钟解决了系统设计中的两个难点,取得了令人满意的效果:

①用pll解决使能信号漂移的难题;

②使用pll满足ti的tms320c62xx系列dsp中xbus的建立、保持时间要求。

3 使用pll解决使能信号漂移的难题

由于dsp的xbus响应fifo的中断xint0时,需要回复xrf、xce0、xo

摘要:从整个应用系统的角度,理解和分析pld内部锁相环;在此基础上,深入剖析锁相环的相移结构,同时用这个技术解决系统设计难题。

关键词:pld 内嵌锁相环 fifo xbus

引言

微电子技术的发展趋势是片上系统(soc),也就是在一块芯片上实现整个系统,包括模拟部分和数字部分。作为ic产业中重要的一个分支,可编程逻辑器件(pld)也在努力向这个方向发展。无论是xilinx还是altera,它们最新的pld产品中都集成了诸如pci接口、乘法器、mcu核以及dsp核等部件,有的甚至集成了完整的微处理器。例如,xlinux的vietex2-pro系列就是集成了powerpc微处理器。

锁相环技术是模拟集成电路设计中一个重要的研究方向。但是,现在中高档的可编程逻辑器件一般都集成有片内的锁相环(如xilinx的spartan2系列,altera的cyclone系列)。锁相环一端连接外部全局时钟或者全局控制信号,另一端连接可编程逻辑器件内部专门的布线网络,可以最大程度地减少全局时钟信号到片内各个部分的布线延迟,有效地消除了时钟偏移而带一的各种问题。同时,锁相环一般都提供了倍频、分频、相移三个功能。

1 应用背景介绍

本文用fpga实现fifo,连接pci与ti的tms320c6204的扩展总线,与dsp传输数据的时钟达到100mhz。由于dsp的接口对于时钟和信号的要求很苛刻,所以下面具体分析核心的dsp的xbus时序。

dsp的扩展总线(xbus)是一个32位宽的总线,支持与异步外设、异步/同步fifo、pci桥以及外部主控处理器等的接口。它同时提供一个灵活的总线仲裁机制,可以内部进行仲裁,也可以由外部逻辑完成。

本文中使用xbus的同步fifo接口。如果是要读取fifo,首先fifo要通过中断信号xint0来通知xbus数据已经准备好,然后xbus响应xce0、xre、xoe有效,就开始读取fifo中的数据,读fifo的时序如图1所示;如果是要写fifo,fifo通过xint1申请xbus,然后xbus响应xce1、xwe有效,开始一个写fifo的dma传输过程,写fifo的时序如图2所示。

通过分析xbus读写fifo的时序关系可以看出,在fifo实现的过程中需要注意以下几个地方:

①xbus工作时钟是100mhz,对于大部分的fpga来说是一个比较高的频率。而且,由于读出的数据要求一定的建立时间(setup time)和保持时间(hold time),这就对内部逻辑的设计提出了较高的要求。

②读fifo时,必须在使能信号有效之后的第二个时钟周期就把数据输出。对于fifo内部的双端口ram来说,这个实现起来不一定能满足要求(有很多ram是在使能信号只有的3~5个时钟周期才输出数据的)。这样,通用fifo中就要考虑产生预读逻辑来产生数据,以满足xbus严格的时序要求。

③xbus的使能信号xce0/xce1/xre/xoe/xwe的变化时间范围是在时钟有效之后的1~7ns,考虑到fpga内部的组合逻辑延时和布线延时,这样对有效信号的锁定可能是不稳定的。这就为逻辑设计带来了很大的难度。

2 锁相环的相移功能

系统时钟是100mhz,为了获得更好的布线效果和系统性能,时钟信号必须经过锁相环到达全局时钟布线网络。同时,锁相环还可以提供多个时钟相移的信号,同样可以连接到全局布线网络来驱动片的时钟信号。以xilinx公司的spartan2系列芯片为例(altera的cyclone或者更高级别的系列也提供了类似的锁相环),使用片内锁相环进行时钟相移的示意如图3所示。

相移以后的时钟对于系统设计有很大的用处。本文利用了相移以后的时钟解决了系统设计中的两个难点,取得了令人满意的效果:

①用pll解决使能信号漂移的难题;

②使用pll满足ti的tms320c62xx系列dsp中xbus的建立、保持时间要求。

3 使用pll解决使能信号漂移的难题

由于dsp的xbus响应fifo的中断xint0时,需要回复xrf、xce0、xo

相关IC型号
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!