Chapter 15:国产FPGA之让没有晶振的生活成为可能
0赞第十五章
国产FPGA之让没有晶振的生活成为可能
当年我在CPLD的UFM使用中,讲过让没有晶振的生活成为可能,感兴趣的朋友可以看看"让没有晶振的生活成为可能——UFM"
http://www.cnblogs.com/crazybingo/archive/2010/05/14/1735338.html
其实国产FPGA也未尝不可。但这不能完全说不用晶振,而是真对于FPGA而言,不用那个死贵死贵的有源晶振罢了。
国产FPGA除了外部有源晶振,无源晶振,内部还有内部振荡器,这我在前面章节讲过(典型值15MHz,会随着温度在9~20M波形)。一般不推介使用这个内部振荡器,这个振荡器主要是给AS用的。。面对死贵死贵的有源晶振,我们可以用无源晶振来替换那个5*7的晶振。这就是特某人没有把这个5RMB的晶振焊接上去的原因吧。只为了入门简单,Bingo先焊接上了那玩样,从这一刻起,我们遵循特某人的旨意,开使用无源晶振来配置吧。
在前面第一课:外部时钟驱动流水灯;第二课外部时钟+PLL驱动流水灯的基础上,我们开始不用外部晶振,用11.0592MHz的无源晶振配置电路。
预知过程如何,切听Bingo一一道来!
(1)新建工程,你懂的
(2)Wizard Manager→ Oscillator
(3)选择外部晶体11.0592MHz(内部16M不准确。)
(4)Finish
(5)查看状态
(6)例化myOscillator
(7)修改或者重新配置myPLL(不用还不行,全局时钟的原因),如下
a) 输入11.06MHz
b) 输出4倍频:44.24MHz
c) 将全局时钟CLK[1]设置为external crystal(如果你要使用CLK1的话,其实不设置也没关心,因为我们仅仅使用了pllout0--clkout0)
d) Finish
(8)例化myPLL(如果你在原工程上修改,仅需修改输入即可)
(9)如果你新建工程,则配置引脚;反之,run project
(10)Download,那水灯,有流起来了。。。。
最后
稍作美化,规范了一下设计风格(好的代码是写给人看的):
(1)封装water_led.v
(2)顶层例化water_led,并加入工程
(3)Run project,download,告一段落,如下RTL图
注意:不例化PLL,直接使用myOscillator,还真不能直接用。。。,如下,得到的结果就是没反应!!!原因就是因为没有配置好全局时钟吧,因为跟external crystal 有关的是CLK[1],而默认却是clk1,------------PLL必须得用啊,设置全局时钟
注意:
这好像跟直接有源晶振时钟倍频有点点不一样,有源晶振倍频能跑到75M,但有源晶振倍频能跑到80多点M,再高就挂了。。
哎。。。。还是50MHz吧。。。。。