首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

altera公司maxII中UFM的读取小实验

altera公司maxII中UFM的读取小实验

大家知道,对于maxII的应用中,对UFM(user flash memory)的操作很重要。这里讲讲我这两天做的一个小实验,希望与大家交流交流。


我所采用的开发板是altera公司的epm1270开发板。采用UFM的parallel protocol,若对其不了解,可先参考max II的handbook.


(1)应用Quartus中的megafunction功能,生成一个地址宽度9、数据宽度16、read only类型的并行接口模块以及初始化文件.mif。


(2)根据开发板例子改编程序


最后生成的.bdf如下


 


 

大家好斯蒂芬多幅似懂非懂

下面是UFMinterface模块的程序和仿真的结果

程序如下:

仿真图形如下:

[此贴子已经被作者于2006-3-27 14:58:24编辑过]

大家好斯蒂芬多幅似懂非懂

疑问:

我上面的clock为10ns
疑问就是maxII的handbook有这么一个图

其中里面注释:

600ns<Tcommand<30000ns

Thnbusy<300ns

Thbus>600ns

但不管我的clock设为10ns,还是20ns,30ns,上面的仿真波形中Tcommand都为5us多

不知道为什么?但读数很准确。

[此贴子已经被作者于2006-3-27 15:14:46编辑过]

大家好斯蒂芬多幅似懂非懂

总结

下面总结一下:

UFM的读取基本时序为:

(1)nrd 1->0;
        (2)判断data_valid是否变高,变高则锁存数据do;否则等待;
        (3)addr增1;         (4)nrd 0->1;
        (5) 重复以上操作,直到读出全部数据。

这就是说,UFM接口模块实际上是在nrd信号的上升沿锁存地址数据,在nrd的下降沿启动内部读过程。

呵呵,希望有高人可解决我的问题。有希望交流者可进群:19972261,或加qq:53579621(请注明为cpld)
     
   

[此贴子已经被作者于2006-3-27 15:26:09编辑过]

大家好斯蒂芬多幅似懂非懂
谢谢了,下载学一下!
返回列表