时钟架构总览
7系的FPGA使用了专用的全局(Global)和区域(Regional)IO和时钟资源来管理设计中各种的时钟需求。Clock Management Tiles(CMT)提供了时钟合成(Clock frequency synthesis),倾斜矫正(deskew),过滤抖动(jitter filtering)功能。非时钟资源,例如本地布线,不建议使用在时钟设计中。
- 全局时钟树(Global clock tree)可以驱动device中的所有同步原件(synchronous elements)
- IO和区域时钟树(Regional clock tree)可以驱动最多三个垂直连接的时钟区域
- 每一个CMT包括了一个MMCM(Mixed-mode clock manager)和一个PLL(Phase-Locked Loop)。两者存在于的CMT柱(CMT Column)中,而CMT柱则在IO柱(IO Column)旁边。
为了满足不同的时钟使用需求,每一个7系的device都把时钟分成了区域(Regions)
- 根据不同的device大小,时钟区域从最少的4个到最大的24个
- 一个时钟区域包括了所有的同步元件(例如: CLB, IO, Serial Transceivers,DSP, Block RAM, CMT),也包括了50个CLBs和一个IO bank,在时钟区域的中间还有一个水平的时钟Row(HROW,Horizontal clock ROW)
- 每一个时钟区域在HROW的上下各有25个CLB
垂直时钟线和水平时钟线将时钟分成了很多区域。
每列时钟域包含50个CLB,10个36kb的block RAMs,20个DSP slices和12个BUFHS(水平时钟缓冲器)。
上图为一个时钟域基本的连接结构,
全局时钟缓冲器(BUFG)能够通过HROW(水平时钟行)驱动所有区域,
水平时钟缓冲(BUFH)驱动器通过HROW到该区域的每一个时钟点。
在HROW中,BUFG和BUFH共享路径。
BUFIO和BUFR都在IO bank里面,BUFIO只驱动IO资源,BUFR驱动IO资源和逻辑资源。
BUFMR支持多区域链接BUFIOs和BUFRs。
时钟输入与外部时钟相连,确定的资源能够连接到CMT的骨架上。
MRCC/SRCC是区域时钟的BUFIO,MRCC能驱动相同、上下相邻bank/时钟区域的IO,SRCC只能驱动相同bank/时钟区域的