MyFPGA Forum

 找回密码
 注册
搜索
查看: 7881|回复: 7
打印 上一主题 下一主题

troubled in pll Reconfiguration in ep3c25q240c8

[复制链接]
跳转到指定楼层
1#
发表于 2009-5-17 18:26:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
i follow the steps in the 'Phase-Locked Loops Reconfiguration (ALTPLL_RECONFIG)Megafunction User Guide' .
I reconfigure the c0 counter using the ALTPLL_RECONFIG megafunction to vary the frequency of this counter by changing the c value.
but, after the signal 'scandone' asserted,the pll lose lock.
(i am using the chip ep3c25q240c8)
why, coud you help me?

i have upload my project.

pll_test.zip

96.07 KB, 下载次数: 19

2#
发表于 2009-5-22 15:25:51 | 只看该作者
Could you be more specific on how the pll loses lock ? Did you at least observe the frequency you desired ?
3#
发表于 2009-5-22 22:55:18 | 只看该作者
好高深的问题,可以写篇论文了。
4#
发表于 2009-6-26 20:47:44 | 只看该作者
看起來連結沒問題, 可能是reconfig_one 的輸入訊號有問題, 數入訊號順序應該是:
1. clock 要有輸入(跟pll_one - inclk0同一個),reset=0,pll_reconfig=0, write_param=0
2. 確定busy is low,  準備好data_in, couter_type, counter_param, triggle write_param將參數寫入reconfig_one.
3. 確定busy is low, triggle pll_reconfig (Low,High,Low)
4. 確定pll_one 的locked is high (要等幾個clock)
5. pll_one 的c0 應該要有輸出.

若還不能解決, 可用signalTap來看看pin 的訊號是否是對的.
另外, reconfig_one的config data 可來自on-chip rom, 該rom 可透過pll_one 產生的hex or mif (Generate A Configuration File)來做起始化.
5#
发表于 2009-7-10 02:37:58 | 只看该作者
本帖最后由 huguangheng 于 2009-7-10 02:42 编辑
看起來連結沒問題, 可能是reconfig_one 的輸入訊號有問題, 數入訊號順序應該是:
1. clock 要有輸入(跟pll_one - inclk0同一個),reset=0,pll_reconfig=0, write_param=0
2. 確定busy is low,  準備好data_in, couter_ ...
rich 发表于 2009-6-26 20:47


今天正好用到PLL的动态配置
我在初始化ROM的时候遇到了一个问题
在使用ROM_LPM时,选定mif文件,并生成后,mif/hex文件会被改写。
之后选择将mif设定为只读,其他不变,则可以正常输出

关于mif的问题
上次用mif还是7.1的时候。。。现在是8.1,
之前用时记得没有这个问题

不论设置为什么内容,在使用ROM/RAM_LPM生成模块后,mif被改写为一个略有规律的内容
比如在这里就是成为1 0 1 0序列,位宽大于1时也会类似

在网上简单地查了下,遇到这个问题的人还是有一些
请问版大,这是怎么回事呢?
6#
发表于 2009-7-10 08:40:54 | 只看该作者
在Quartus 8.2 & 9.0, 我沒有遇到mif 被改寫的情況.

RECONFIG_PLL 生成的檔可以用text edit 直接打開來看.
所以可以比較一下, 到底哪裡備改了, 或許就可猜出原因.

RECONFIG_PLL 生成 MIL 內容範例如下:

-- MIF file representing initial state of PLL Scan Chain
--    Device Family: Stratix III
--    Device Part: -
--    Device Speed Grade: -
--    PLL Scan Chain: Fast PLL (180 bits)
--    File Name: D:\NIOS_II\DAUGHTER_BOARD\HDMI_A2\DE3_260_HDMI_TX_RX\vpg_source\gen_27.mif
--    Generated: Thu Mar 19 13:48:37 2009

WIDTH=1;
DEPTH=180;

ADDRESS_RADIX=UNS;
DATA_RADIX=UNS;

CONTENT BEGIN
        0    :   0; -- Reserved Bits = 0 (1 bit(s))
        1    :   0; -- Reserved Bits = 0 (1 bit(s))
        2    :   0; -- Loop Filter Capacitance = 0 (2 bit(s)) (Setting 0)
        3    :   0;
        4    :   1; -- Loop Filter Resistance = 24 (5 bit(s)) (Setting 24)
        5    :   1;
        6    :   0;
        7    :   0;
        8    :   0;
        9    :   0; -- VCO Post Scale = 0 (1 bit(s)) (VCO post-scale divider counter value = 2)
        10   :   0; -- Reserved Bits = 0 (5 bit(s))
        11   :   0;

.....
7#
发表于 2009-7-10 10:15:04 | 只看该作者
在Quartus 8.2 & 9.0, 我沒有遇到mif 被改寫的情況.

RECONFIG_PLL 生成的檔可以用text edit 直接打開來看.
所以可以比較一下, 到底哪裡備改了, 或許就可猜出原因.

RECONFIG_PLL 生成 MIL 內容範例如下:

-- MIF f ...
rich 发表于 2009-7-10 08:40



恩,每次都拿UltraEdit看过,在重新生成ROM之前,的格式和您所附的一样,之后变成下面这个样子。。而且之前mif被修改后,输出要么是PLL的输入,要么是默认的输出,在用PLL_LPM生成mif后设为只读,然后再跑,就可以正确输出所设的频率了
我等会用9.0试一下,看下怎么样

另:
下面是这边的EDACN论坛上关于这个问题的一个简短帖子,可见这个问题还是有一些人遇到过
http://www.edacn.net/bbs//viewthread.php?tid=141586

-- Clearbox generated Memory Initialization File (.mif)

WIDTH=1;
DEPTH=256;

ADDRESS_RADIX=HEX;
DATA_RADIX=HEX;

CONTENT BEGIN
        000  :   1;
        001  :   0;
        002  :   1;
        003  :   0;
        004  :   1;
        005  :   0;
.......
        0fd  :   0;
        0fe  :   1;
        0ff  :   0;
END;
8#
发表于 2009-7-10 13:42:54 | 只看该作者
我怀疑是BUG。。。。。
我用同一台电脑同一个OS下的8.1和9.0,同样的操作和设置
建一个MIF然后放到ROM里,生成ROM后,8.1里的MIF会被修改,9.0里的不会。。。


您说的8.2是什么版本.....
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|MyFPGA

GMT+8, 2025-5-1 08:04 , Processed in 0.044468 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表