TA的每日心情 | 开心 2019-11-20 15:00 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
FPGA内部时钟处理的常见设计方法) o8 p1 g C' W# Y; M: {
2 n5 D6 e1 h: J/ g( f$ a
# Y4 A. n) ^2 l T' m完整资料见附件
/ Z2 U6 I! V* R; y& k" Z前言: 目前的 fpga 功能越来越强大,在 FPGA 内部对时钟的处理使用比较普遍。其时钟处理内容 根据不同的应用场合与不同的设计需求包含倍频或者分频.下面是比较常用的FPGA内部实现时 钟处理的一些基本思想及经验与大家交流.希望与大家一起交流提高.这里主要以 Altera 的 FPGA 为例说明,对 Xilinx 的 FPGA 说明相对较少,需要的可以参见 Xilinx 的相关文档。2 G# v7 P' ^" z+ j5 X
, s4 D7 M7 h6 T! a* b; k* O V
1 倍频
6 P c7 ~$ u$ Q6 w2 I" a, b4 h1 I( S! A- l
时钟的倍频: 在 FPGA 内部实现倍频一般采用外部时钟输入根据项目不同的需要可以倍频到不同的时 钟频率(低时钟速率到高速时钟频率). 例如外部晶振输入 27M,在 fpga 内部倍频至 54M,或者 81M,而不同的 FPGA 厂家实现 的机制不尽相同.在 Xilinx 的 FPGA 内部实现时直接调用 DCM(数字时钟处理模块)可以实现, 在 ISE 界面下可以直接实现.而 Altera 的 FPGA 内部实现倍频则需要内部的 PLL,方法与步骤参 考图 1 与图 2.客观一点来讲,PLL 的性能相对 DCM 有一定的优势,因为 PLL 是模拟锁相环, 而 Xilinx 的 DCM 采用的 DLL 为数字锁相环。两者的性能比较有兴趣的可参考相关文档。
$ c4 K+ R* Z) Z# F% n1 z1 K) a" A8 K/ a2 i' Q8 O
注:下面的 Megawizard 使用流程同样适合其他的 Altera 的 Mega-core。这里可以根据用户需求生成相应的 Mega-core,例如 RAM,FIFO 等。- |2 [5 w) }3 `0 ^& i+ m8 A" H
2 W2 j1 C3 i1 C. j0 ^
( @6 u" u0 x+ s& ]( s& } n7 | |
|