[X]关闭

关于mis603开发板关于DDR3测试程序和小白的一次对话

文档创建者:uisrc
浏览次数:7889
最后更新:2016-08-04
米联客

关于DDR3测试程序和小白的一次对话
jinghong21 (19:49:51):
你好
Osrc板板 (19:50:07):
你好,在的
jinghong21 (19:50:54):
公司的采购还在请款,估计下一周应该会购买了。
现在方便请教个问题吗?
Osrc板板 (19:51:11):
好的,是公司对公司进行采购是吧
可以的
jinghong21 (19:51:35):
发票应该会要胡,采购也要报账胡
我今天看了你网盘里面的DDR3的程序,有个问题想请教一下。
Osrc板板 (19:52:29):
嗯,可以
jinghong21 (19:52:58):
mcb_write写模块,
case(u_wr_s)
      WR_IDLE:
      begin
         u_wr_en       <= 1'b0;
         if(u_wr_cmd_en==1'b0) // start new write  
         u_wr_s      <=   WR_BEGIN;
      end  
jinghong21 (19:54:25):
开机复位结束的时候,没有看到命令使能置位,可以直接发送数据吗?
Osrc板板 (19:55:28):
上电复位吗?
没有上电复位不是不可以,只要清楚上电的时候状态是可以预知的就可以
不能有不可预知的状态,否则可能进入死循环
jinghong21 (19:57:53):
在mcb_write.v里面,复位以后并没有对u_wr_cmd_en置位,那么mcb_user.v里面如何写入地址和命令胡?
jinghong21 (19:59:39):
u_mcb_write.v只有在u_wr_cnt==40的时候,才将u_wr_cmd_en置高。
Osrc板板 (20:00:20):
我看下程序,记不起来
jinghong21 (20:01:15):
恩恩,麻烦了,现在我这边就要基于你们开发板点出2K的画面到LCD上。
Osrc板板 (20:02:00):
我看下
jinghong21 (20:02:07):
这个只要搞定了,会批量采购这个核心板,所以麻烦你多提供提供技术支持。谢谢了啊
Osrc板板 (20:03:37):
没问题的
jinghong21 (20:04:24):
我QQ好像有你好友的,看见你们店铺标志我有印象。
20:04:24
请不要用阿里旺旺以外的其它聊天工具,谨防被骗,网站只视阿里旺旺聊天凭证为有效证据。
Osrc板板 (20:04:33):
Osrc板板 (20:06:06):
这个位置,当u_wr_cmd_en或者u_rd_cmd_en 有效的时候 证明读模块后者写模块已经准备,
jinghong21 (20:06:50):
对,这个是在mcb_write.v里面置位的
Osrc板板 (20:07:17):
如果要进行一次写,那么首先判断当前没有写命令在执行,同理读模块也是一样


2016-03-03
Osrc板板 (20:07:47):
写命令执行完成后,u_wr_cmd_done会置1 这个时候清零 u_wr_cmd_en 这样可以进行下一次写
jinghong21 (20:10:11):
大概我已经理解这个意思了,就是你这个代码的整个流程不是很清晰,读写并没有分开读写,是在同一时刻边读边写吗?
u_wr_cnt为什么等于40呢
Osrc板板 (20:10:37):
为什么设置u_wr_cnt==40呢?因为当MCB写FIFO 有数据其实就可以写了,但是必须确保DDR把不能把FIFO搬运空了,那么这个地方的值就不能太小,如果太小了,万一搬运空了,FIFO就没有数据了,就要出错。当然如果你给60也没问题,但是这个时候FIFO快满了,DDR等了好久,浪费了带宽
jinghong21 (20:15:11):
等我去下载一个旺旺,网页版聊天太慢了,没办法截图
Osrc板板 (20:15:50):
嗯,这程序是带你入门的,后面你再理解视频处理的的程序就不难了,这个地方40是一个考验你是否理解的参数
jinghong21 (20:20:21):
写数据之前,需要发送写命令是不是
我大概看了ug388这个pdf
jinghong21 (20:21:24):
发送玩写命令,地址,突发长度,以后才能写数据
Osrc板板 (20:21:31):
先丢数据也可以,但是FIFO不能满
jinghong21 (20:22:06):
先丢数据也可以吗?
Osrc板板 (20:22:21):
可以
但是FIFO不能满
满了就溢出了
jinghong21 (20:23:30):
那FIFO里面的数据是根据写命令和突发长度,再将FIFO的数据写到DDR里面是不是
其实我送FIFO数据和DDR根本就没有关系
Osrc板板 (20:25:17):
jinghong21 (20:26:00):
只要有写数据命令送到MCB里面,MCB会将FIFO的最先进去的数据写到DDR,那么之前写进FIFO的数据,地址会不会乱掉
Osrc板板 (20:28:56):
每一个命令结束才会进入下一个命令,你只要确保上一个命令执行结束的时候往DDR里面写入了相应的数据,那么数据就不会乱
Osrc板板 (20:35:05):
我先下班了,这些我发到论坛去啊,方便其他人学习
jinghong21 (20:36:09):
好的,新人对这些都不是很清晰,稍微讲一下就好很多了
谢谢了





发表评论已发布 4

jinghong21

发表于 2016-3-3 20:48:34 | 显示全部楼层

真是受益良多,谢谢!

shiwuge

发表于 2016-3-4 11:15:16 | 显示全部楼层

汤工威武
回复

使用道具 举报

wangjie_shenli

发表于 2016-3-9 17:21:37 | 显示全部楼层

您好,我的ui接口时序构建完成后,仿真时init_calib_complete一直为低,但是我并没有改动太多原先的例程,指示添加了自己的ui时序,能不能讲解一下?

AndreZheng

发表于 2016-8-4 09:43:02 | 显示全部楼层

人家就是因为自己是初学者才来购买开发板,有问题请教也是正常现象.你把人家称为小白你觉得合适吗?写的这么个烂代码帮人讲解下还要羞辱人家?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则