㈠ 怎么设置FPGA的全局时钟资源
锁相环(PLL)和混合模式时钟管理器(MMCM)处理的工作有许多是相同的,比如频率综合、内外部时钟抖动滤波、时钟去歪斜等。这两种资源也可用于镜像、发送或再缓冲时钟信号。 在深思设计实现细节时,把这些通常用法记在心里,有助于理清时钟选择的思路。对于长期产品发展规划而言,在制定合适的时钟策略时,应考虑各个器件系列之间的兼容性。下面让我们深入了解一下这些时钟资源。 您可以使用DCM将时钟源的输入时钟信号相乘,生成高频率时钟信号。与此类似,可以将来自高频率时钟源的输入时钟信号相除,生成低频率时钟信号。 数字时钟管理器 顾名思义,数字时钟管理器(DCM)是一种用于管理时钟架构并有助于时钟信号成形和操控的模块。DCM内含一个延迟锁相环(DLL),可根据输入时钟信号,去除DCM输出时钟信号的歪斜,从而避免时钟分配延迟。 DLL 内含一个延迟元件和控制逻辑链路。延迟元件的输出是输入时钟延迟所得。延迟时间取决于延迟元件在延迟链路中的位置。这种延迟体现为针对原始时钟的相位改变或相移,这就是所谓的“数字相移”。图1所示的即为Virtex-4器件中的典型DCM模块。根据Virtex-4FPGA用户指南(UG070,2.6 版本)的介绍,Virtex-4中有三种不同的DCM原语。 一般来说,DLL与PLL类似。但与PLL不同的是DLL不含压控振荡器(VCO)。PLL会一直存储相位和频率信息,而DLL只存储相位信息。因此,DLL略比PLL稳定。DLL和PLL这两种类型都可以使用模拟和数字技术设计,或者混合两种技术设计。但赛灵思器件中的DCM采用全数字化设计。 由于DCM可以在时钟路径上引入延迟,比如您就可使用DCM可以精确地为DRAM生成行和列访问选通信号的时序。与此类似,数据总线上的各个数据位可以在不同的时间到达。为了正确对数据位采样,接收端的时钟信号必须适当地与所有数据位的到达保持同步。如果接收器使用发射时钟,可能会要求延迟从发送端到接收端的时钟信号。 有时设计可能需要一个更高的时钟频率来运行FPGA上的逻辑。但是,只有低频率输出的时钟源可以用。此时可以使用DCM将时钟源的输入时钟信号相乘,生成高频率时钟信号。与此类似,可以将来自高频率时钟源的输入时钟信号相除,生成低频率时钟信号。这种技术称为“数字频率综合”。 设计人员使用扩频时钟并通过调制时钟信号来降低时钟信号的峰值电磁辐射。未经调制的时钟信号的峰值会产生高电磁辐射。但经调制后,电磁辐射被扩展到一系列时钟频率上,从而降低了所有频点的辐射。一般来说,如果需要满足一定的最大电磁辐射要求和在FPGA上执行高速处理的时候(比如说通信系统中接收器使用的解串器),就需要使用扩频时钟。因此,FPGA中的DCM将乘以输入扩频时钟信号,在内部生成高频时钟信号。 DCM的输出必须准确地跟随扩频时钟,以保持相位和频率对齐并更新去歪斜和相移。DCM相位和频率对齐的恶化会降低接收器的歪斜裕量。 建立时钟的镜像需要将时钟信号送出FPGA器件,然后又将它接收回来。可以使用这种方法为多种器件的板级时钟信号去歪斜。DCM能够把时钟信号从FPGA发送到另一个器件。这是因为FPGA的输入时钟信号不能直接路由到输出引脚,没有这样的路由路径可用。如果仅需要发送时钟信号,那么使用DCM将时钟信号发送到输出引脚,可以确保信号的保真度。另外也可选择在时钟信号发送之前,将DCM输出连接到ODDR触发器。当然也可以选择不使用DCM,仅使用ODDR 来发送时钟信号。往往时钟驱动器需要将时钟信号驱动到设计的多个组件。这会增大时钟驱动器的负荷,导致出现时钟歪斜及其它问题。在这种情况下,需要采用时钟缓冲来平衡负载。 时钟可以连接到FPGA上的一系列逻辑块上。为确保时钟信号在远离时钟源的寄存器上有合适的上升和下降时间(从而将输入输出时延控制在允许的范围内),需要在时钟驱动器和负载之间插入时钟缓冲器。DCM可用作时钟输入引脚和逻辑块之间的时钟缓冲器。 最后,还可以使用DCM将输入时钟信号转换为差分I/O标准信号。例如,DCM可以将输入的LVTTL时钟信号转换为LVDS时钟信号发送出去。
㈡ 什么是FPGA系统时钟频率
就是整个基于FPGA的数字电路的系统主时钟的频率。全同步的数字电路设计,一般使用一个全局时钟,作为驱动所有时序逻辑的主时钟。但如果设计比较复杂,可能会引入多个主时钟,即多时钟域的设计。这时,FPGA系统时钟频率约束就默认对应于所有主时钟的频率约束。如果希望设定不同的时钟频率约束,就必须单独给每个主时钟设定约束。
㈢ fpga中全局时钟与局部时钟理解
用的资源不一样,全局时钟要靠BUFG驱动,将时钟信号放在时钟树上,保证到整个芯片的任意一个触发器是电延时等长的。局部时钟靠BUFR驱动,只在一个bank内用。
㈣ 什么叫FPGA的配置模式FPGA的器件有哪几种配置模式每一种配置模式有什么特点FPGA的配置流程如何
大概可以分为主串、主并、从串、从并、JTAG模式等等。很简单,FPGA主动控制的配置就是主,外部CPU控制的配置就是从,串并你懂的,就是串行还是并行数据进去。JTAG是标准的,CPLD/FPGA都支持的,也可以配置。
配置流程要去看数据手册,如果是从方式配置,你需要产生一个时序给FPGA,包括时钟和初始化信号,因为没几个脚,很简单的。
㈤ 到底什么是FPGA的“全局时钟”
理论上FPGA的任意一个管脚都可以作为时钟输入端口。但是FPGA专门设计了全局时钟,全局时钟总线是一条专用总线,到达片内各部分触发器的时间最短,所以用全局时钟芯片工作最可靠,但是如果你设计的时候时钟太多,FPGA上的全局时钟管脚用完了就出现不够用的情况。道听途说,具体你上网查查吧。
㈥ FPGA为什么有时候还需要一个时钟配置芯片提供时钟
FPGA不像单片机,可以有多个时钟。
比如编程中always@(posedgeclk1)…always@(posedgeck2)…等等,实现不同部分不同频率处理。
所以他没有所谓的默认时钟,每一个模块每一个同步处理代码都是需要自己制定用哪个时钟的。
㈦ 到底什么是FPGA的“全局时钟”
编程时,将fpga分成很多模块
每个模块有各自的任务
当然咯,每个模块也都需要时钟
一般来说设计都是同步时序电路(反之就是异步)
所以这些模块用的都要是同样的时钟
这样时序比较稳定
稳定的时序对于高速的数据处理是很重要的
这个时钟对所有模块都一样,所以就是全局时钟
FPGA外部有这样的全局时钟引脚可以接晶振
但是这种引脚驱动能力有限
一旦模块较多,就无法全部驱动
你说的"全局时钟不够用"就是这个意思