找回密码
 注册
搜索
查看: 24120|回复: 72

[FPGA资料] 本人在此解答关于SDRAM的问题

[复制链接]
发表于 2007-4-30 11:36:10 | 显示全部楼层 |阅读模式
调试过SDRAM,虽然简单但初涉者也会有较多疑惑。
为节省大家时间,特在此解答关于SDRAM的问题。
本人不是大牛,只是愿意帮助别人而已,所以不保证100%的正确性,所以也欢迎真正的大牛一起来指正。
解答范围:SDRAM原理性的、调试上的问题
不予解答范围:开口要程序[br]<p align=right><font color=red>+5 RD币</font></p>
 楼主| 发表于 2007-4-30 11:37:26 | 显示全部楼层
难以时刻在线,如果久候无回答,联系 lizhaozhuo ($) people.com.cn
点评回复

使用道具 举报

 楼主| 发表于 2007-5-9 10:52:49 | 显示全部楼层
尚无人提问
点评回复

使用道具 举报

发表于 2007-5-10 10:16:43 | 显示全部楼层
哈哈,终于找到了人才了,

我最近要求做一个performance很好的sdram ctrl,我参考了一些资料,要performance好就应该做一些command的pipline结构。这个问题还是比较好解决的。
但是问题不好解决的是:由于我们不知道使用者的system clock是多少,因为在fpga的晶振是可以随意的更换的。一方面要求performance 很好,我们应该怎么办呢?内部的时间应该怎么来计算?
因为sdram spec规定是一个固定的时间。

还有一个小问题:请求大家的意见。
我们要怎么要保证一块sdram的板子是可以使用的,包括sdram 的引线,内部是否有坏块,焊接的问题。 我们应该怎样检测呢? 要求时间不是很久。
[br]<p align=right><font color=red>+3 RD币</font></p>
点评回复

使用道具 举报

 楼主| 发表于 2007-5-11 10:15:36 | 显示全部楼层
1 在SDRAM的常用参数中,tCL是一个以时钟周期为单位的相对指标,tRAS、tRP、tRC、tRCD都是以ns为单位的绝对指标。这一点是设计high performance的重要依据。
   正因为这一特性,一般的sdram ctrl都是半开放式的。通常是在init时让用户设置tCL。至于读写数据时如何卡准时机,都交由用户自己。

2 关于测试程序,半导体业常用的是March C算法,它测试的侧重点在于发现内部坏块,过程比较复杂,如有兴趣可以baidu之
  对于板级测试,侧重点是要发现引线错误、虚焊或者搭丝。可以往所有地址写入一依次递增的数值,然后再依次读出比较。较之于循环写入几个固定数值,这种做法的好处是可以发现地址线的错误。
  
   
  [br]<p align=right><font color=red>+5 RD币</font></p>
点评回复

使用道具 举报

发表于 2007-5-11 11:19:18 | 显示全部楼层
谢谢你的答复,感受很深

但是我还是不明白你对第一个问题的答复,下面这句话我不是很明白:
   正因为这一特性,一般的sdram ctrl都是半开放式的。通常是在init时让用户设置tCL。至于读写数据时如何卡准时机,都交由用户自己。
   init时候的设置tCL好像和performance没有什么关系吧,它不是2,就是3个sysclk cycle吗?
如果单独的让我做一个sysclk = 50Mhz 的sdram ctrl我想这个问题就不是很难。

可是问题是给spec的时候并没有说我的这个设计会用到什么样的sysclk 下,所以头痛。
我大概的思想是在sdram crtl里加一个region file之类的东西,让init时候使用者告诉我,你工作的sysclk,大概分0~50Mhz,50~75Mhz, 75~100Mhz, 100~133Mhz这四个区段,划分的比较大,但应该不是最好的方法,不知道楼主是否有好的方法。

哈哈,看来还有继续的请教你哦,不知道楼主有sdram相关的资料没有?我的邮件是yi.luo@sunmedia.com.cn 谢谢
[em01][em01][br]<p align=right><font color=red>+3 RD币</font></p>
点评回复

使用道具 举报

发表于 2007-5-11 11:41:27 | 显示全部楼层
哈哈,希望楼主可以知道一下March C算法,呵呵,我在baidu上有用的资料不是很多哦。。[em01]

yi.luo@sunmedia.com.cn
点评回复

使用道具 举报

发表于 2007-5-11 12:16:43 | 显示全部楼层
支持楼主和提出问题的行为。
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 10:51:01 | 显示全部楼层
对于第一个问题,我的意思是:不同时钟频率的影响,无法就两点:
1. 对tCL的设置,低时钟频率可以设置得小一点;
2. 涉及到tRAS、tRP、tRC、tRCD这些参数的,因为它们是以ns为单位的,不同时钟频率下需要的时钟周期数不一样。因此无法统一设定。我所说“交由用户自己”,就是指让用户自己在计算好的时机发出相应的命令。
具体可参考Altera的sdr_sdram IP。

对于March算法,上面说了,一般是半导体业内用于BIST(内嵌自检)的,建议你采用后者(写、读验证)即可。
当然了解一下也无不可,下面是google上一段话:

The March C algorithm, and its modifications, is a popular algorithm for memory testing. This algorithm, which consists of 11 operations (11n), writes and reads words of 0s, followed by writing/reading words of 1s, in both descending and ascending address spaces.

The original March C algorithm consists of the following steps:

1. Write 0s to all locations starting at the lowest address (initialization).
2. Read 0 at lowest address, write 1 at lowest address, repeating this series of operations until reaching the highest address.
3. Read 1 at lowest address, write 0 at lowest address, repeating this series of operations until reaching the highest address.
4. Read 0 from the lowest address to the highest address.
5. Read 0 at highest address, write 1 at highest address, repeating this series of operations until reaching the lowest address.
6. Read 1 at highest address, write 0 at highest address, repeating this series of operations until reaching the lowest address.


March C- : The algorithm modifies the March C algorithm by eliminating the redundant Read 0 operation between the ascending and descending address operations. Removing this operation reduces the algorithm from 11n to 10n, without sacrificing any fault coverage.


March C+ : The algorithm modifies the original March C algorithm by adding an extra read operation after each stage of the march. While increasing the algorithm from 10n (for the March C-) to 13n, this extra read allows additional fault detection, most notably, stuck-open faults for all types of RAM. It's also possible to add one more read operation at the end of the final stage, which increases the algorithm from 13n to 14n (commonly referred as March 14n).

Varying Data Backgrounds
The March C+ algorithm normally writes and reads words of either all 0s or all 1s. However, you can vary the value the March C+ test uses for each write/read operation. By varying the data values, or data backgrounds, you can increase the fault detection. For example, by intelligently choosing the data background from inductive fault analysis of the memory, the enhanced algorithm can detect state coupling faults between two cells of the same address, for which the March C+ algorithm cannot normally prove detection.
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 10:52:49 | 显示全部楼层

Altera (Northwest)公司的SDRAM控制器IP源码和文档

【文件名】:07512@52RD_ref-sdr-sdram-verilog.zip
【格 式】:zip
【大 小】:776K
【简 介】: Altera (Northwest)公司的SDRAM控制器IP源码和文档
【目 录】:
[br]<p align=right><font color=red>+3 RD币</font></p>

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 10:55:43 | 显示全部楼层

基于March X算法的SRAM BIST设计

【文件名】:07512@52RD_基于March X算法的SRAM BIST设计.pdf
【格 式】:pdf
【大 小】:241K
【简 介】:基于March X算法的SRAM BIST设计
【目 录】:
[br]<p align=right><font color=red>+3 RD币</font></p>

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 10:58:16 | 显示全部楼层

一些中文sdram翻译资料

【文件名】:07512@52RD_SDR SDRAM 控制器白皮书 中英文对照版本.doc
【格 式】:doc
【大 小】:1006K
【简 介】:Altera sdr SDRAM 控制器白皮书 中英文对照版本.doc
【目 录】:
[br]<p align=right><font color=red>+5 RD币</font></p>

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 11:05:20 | 显示全部楼层

一份SDRAM调试经验

【文件名】:07512@52RD_sdram设计经验.doc
【格 式】:doc
【大 小】:236K
【简 介】: 别人写的一份SDRAM调试经验
【目 录】:
[br]<p align=right><font color=red>+3 RD币</font></p>

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 11:06:38 | 显示全部楼层
以上都是免费的。可放心下载
点评回复

使用道具 举报

发表于 2007-5-12 12:54:22 | 显示全部楼层
谢谢 lz

做个朋友吧, 哈哈,

[em02][em02][em01][em01]
点评回复

使用道具 举报

 楼主| 发表于 2007-5-12 14:28:14 | 显示全部楼层
呵呵,好啊!
我也是抱着结交朋友的想法发这个帖子的,
大家以诚相待,资源共享,互通有无,总好过一个人闷头干得累死累活的

我的邮箱:lizhaozhuo ($) people.com.cn
网易popo: lizhaozhuoxp                          时刻在线
我的msn: lizhaozhuoxp ($) hotmail.com   多半隐身
点评回复

使用道具 举报

发表于 2007-5-13 11:37:21 | 显示全部楼层
则么感觉你的邮箱很别扭哦
不是邮箱都是@来连接的吗?可你的都不是,是写错了,还是本来就是那个样子的哦
而且好像这个邮箱地址也不是公共机构的邮箱,哈哈,应该是工作用的邮箱吧,
是那个公司哦 ?
点评回复

使用道具 举报

 楼主| 发表于 2007-5-13 16:33:47 | 显示全部楼层
呵呵,中间的用#替换下即可(并去掉空格)
防止网络crawler用的,不得已,这年头垃圾邮件太多了
点评回复

使用道具 举报

 楼主| 发表于 2007-6-2 17:33:03 | 显示全部楼层
有问题欢迎在这里留言
点评回复

使用道具 举报

发表于 2007-6-2 22:44:41 | 显示全部楼层
谢谢[em08][em01][em08]
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-5-8 05:36 , Processed in 0.158206 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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