当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]使用PLD内部锁相环解决系统设计难题

   摘要:从整个应用系统的角度,理解和分析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、XOE三个信号。只有三个同时有效时,才可以读FIFO,所以读使能信号RDEN=not(XCE0 or XRE or XOE);XBUS回复FIFO中断信号XINT1时,需要回复XWE和XCE1两个信号。只有两个信号时有效才可以写FIFO,所以WREN=not(XCE1 or XWE)。

RDEN或者WREN都是由FPGA内部组合逻辑产生的,在FPGA内部组合逻辑的物理延时(tc)为3~5ns。考虑到XBUS的使能信号本身相对于时钟上升沿(td)就有1~7ns,所以使能信号有效相对时钟上升沿来说可能的变化范围为4~12ns,如图4所示。

图3中,系统经过锁相环的相移,驱动FPGA内部逻辑的时钟。相对于XCLK来说,如果XBUS的回应信号的延时为1ns(图4中实线所示部分),则RDEN经过组合逻辑延迟,变为高有效的时候,可以在时钟的第一个上升沿采样到(图4中实线所示);如果XBUS的回应信号延时为7ns(图4中虚线所示),则RDEN经过组合逻辑延迟以后,只能在第二个时钟的上升延才能采样到高有效信号。

    显而易见,XBUS信号延迟的变化范围太大,造成了系统设计的不稳定性。要解决这个问题,通过逻辑优化是没有办法来进行的。因为产生使能信号的那一级组合逻辑本身的延迟是无法改变的。

本文灵活地运用了FPGA内部锁相环的移相功能,巧妙地解决了信号XCLK_Shift相对于XCLK的相移问题。而且,经过这个相移以后的时钟信号,无论XBUS使能信号怎么在1~7ns内发生变化,都可以保证在XCLK_Shift的第二个时钟周期采样到高有效信号。这样就确定了稳定的逻辑关系,为可靠稳定的设计奠定了基础。

4 使用PLL满足XBUS的建立、保持时间要求

如图1中所示,FIFO中数据输出时需要满足一定的建立和保持时间(图1中为时间5和时间6)。但是,时钟信号XCLK输入FPGA的时候需要首先经过IOB(输入输出模块),然后才能连接到锁相环部分进入全局时钟网络。采用同步输出的时候,输出数据也要经过IOB才可以输出。IOB本身的延时就很容易导致无法确保正确的建立和保持时间,满足不了XBUS的要求,如图5所示。

为了解决这个问题,同样可以采用锁相环进行时钟相位偏移来弥补通过IOB引起的时钟相位偏移。这样,数据端的输出只要相对于经过偏移的时钟信号满足建立保持时间,那么,就可以满足原始时钟信号的要求(如图5中虚线所示)。

5 结论

通过合理的使用FPGA内部的锁相环,本文在不改动原有逻辑设计和代码的情况下,巧妙地解决了高速DSP扩展总线XBUS与FIFO的接口问题。为系统和逻辑设计解决了可能遇到的几个难点,为进一步的研究和开发提供了一种解决问题的新方法和思路。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭