找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1472|回复: 4
打印 上一主题 下一主题

SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z

[复制链接]

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
跳转到指定楼层
1#
发表于 2008-12-1 20:22 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您!

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

x
SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z/ G0 p0 e% Z: w0 c

; i9 |4 }4 A2 p8 K我这我用到的一个器件仿真模型
$ f: G7 \+ H5 O4 z# X7 \0 t但是为何数据线在读的时候是高阻态?, l6 B2 \8 o, O$ S. l
7 l3 e+ u! g6 y( U# B
在我的tb文件里面0 ~4 u) V) H% t7 }- X" p. K
wire     [15:0] io_Sdram_DQ;
& `9 I1 F  {" b: ?$ X+ |9 v5 n/ n我看器件模型里面有存储单位的设置
: Q& |9 M" E! g为何写如何的数据读出不对% r6 w7 r/ C: m$ p2 ^
4 |. K0 G5 n! V4 b, [( u4 R
    parameter addr_bits =      12;
: B( W/ Z( n7 q2 z; m0 [    parameter data_bits =      16;/ D! i2 \* D+ A: x
    parameter col_bits  =       8;& C( J/ x# O* w/ J9 R! x0 V/ F- E, P0 {
    parameter mem_sizes = 1048575;
: U2 S# q! l& q) M; ?; f% n    inout     [data_bits - 1 : 0] Dq;
) x2 v% S( }, F    input     [addr_bits - 1 : 0] Addr;0 T$ V5 w7 C) `( w
    input                 [1 : 0] Ba;4 U& a+ F. d5 v$ K$ O
    input                         Clk;# u. G$ Z* Q' x
    input                         Cke;5 [: T4 |0 d0 t
    input                         Cs_n;9 E- y" i* L- P# S7 a
    input                         Ras_n;$ ^5 [$ z# |+ [4 D
    input                         Cas_n;2 I" k9 D7 U. y6 x+ D% {/ B. Q
    input                         We_n;
1 h. }* z9 Q! q/ ~  s    input                 [1 : 0] Dqm;) N5 M! Q1 s2 }8 F7 A6 c
    reg       [data_bits - 1 : 0] Bank0 [0 : mem_sizes];4 f. I6 A' s  k) b1 ]8 ~. C
    reg       [data_bits - 1 : 0] Bank1 [0 : mem_sizes];
8 {- K4 m; ^& K8 ~! K; N7 y    reg       [data_bits - 1 : 0] Bank2 [0 : mem_sizes];
+ l( y# n* N) a, z; ~8 p    reg       [data_bits - 1 : 0] Bank3 [0 : mem_sizes];- T9 l( L) ^% u8 t4 m
........

Snap1.jpg (69.88 KB, 下载次数: 5)

Snap1.jpg
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏1 支持!支持! 反对!反对!

5

主题

14

帖子

104

积分

二级会员(20)

Rank: 2Rank: 2

积分
104
5#
发表于 2011-4-29 09:24 | 只看该作者
能交流一下吗?告我你的联系方式吗/ L7 z; H8 K8 [1 _: e  @

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
4#
 楼主| 发表于 2008-12-2 21:46 | 只看该作者
发现在仿真出来的波形在写与读的开始位置出有点不对劲见附图 那位用过类似器件模型仿真的说说可能的缘故

Snap1.jpg (79.62 KB, 下载次数: 4)

Snap1.jpg

Snap2.jpg (101.61 KB, 下载次数: 2)

Snap2.jpg

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
3#
 楼主| 发表于 2008-12-2 20:46 | 只看该作者
为何在写的过程 列地址的第一位在最后给写成zzzz了?0 G8 E: |! M2 K0 Z6 A5 }' B
见下面的记录
, b; j; W+ M/ |  t$ O8 t列地址最大255
. X3 O! d# A: l# l. k& ~+ J2 {- X+ N- E% W

/ ?9 F, S4 z2 \, B, r...... d* q' n0 l4 B( W
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215250.0 ns WRITE: Bank = 0 Row =    0, Col = 250, Data = 59597 B- _' L/ P) U2 F4 C* T
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215270.0 ns WRITE: Bank = 0 Row =    0, Col = 251, Data = 6868
  o0 z0 i! p7 L# z! [SDRAM_TEST_tb.mt48lc4m16a2 : at time  215290.0 ns WRITE: Bank = 0 Row =    0, Col = 252, Data = 77775 V2 k/ B: |6 W+ S" T- u
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215310.0 ns WRITE: Bank = 0 Row =    0, Col = 253, Data = 8686, A  Y1 Q$ q! ~6 ?5 u2 A
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215330.0 ns WRITE: Bank = 0 Row =    0, Col = 254, Data = 9595
3 U9 y( {7 K9 TSDRAM_TEST_tb.mt48lc4m16a2 : at time  215350.0 ns WRITE: Bank = 0 Row =    0, Col = 255, Data = 3434
9 v) u+ L% b) FSDRAM_TEST_tb.mt48lc4m16a2 : at time  215370.0 ns WRITE: Bank = 0 Row =    0, Col =   0, Data = zzzz5 Q5 }: C8 F  F& Q
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220915.0 ns READ : Bank = 0 Row =    0, Col =   0, Data = zzzz
. d- F1 O; P$ Y5 R) PSDRAM_TEST_tb.mt48lc4m16a2 : at time  220935.0 ns READ : Bank = 0 Row =    0, Col =   1, Data = 8282
: m6 f& Z7 s# b; GSDRAM_TEST_tb.mt48lc4m16a2 : at time  220955.0 ns READ : Bank = 0 Row =    0, Col =   2, Data = 9191
2 k  q) p4 k8 }. D: W  ^8 ]: eSDRAM_TEST_tb.mt48lc4m16a2 : at time  220975.0 ns READ : Bank = 0 Row =    0, Col =   3, Data = 3030+ W0 z6 D: o+ ~6 s1 d; D) I: P1 x4 B. `
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220995.0 ns READ : Bank = 0 Row =    0, Col =   4, Data = 4f4f" B0 \/ I+ u5 \8 }
SDRAM_TEST_tb.mt48lc4m16a2 : at time  221015.0 ns READ : Bank = 0 Row =    0, Col =   5, Data = 5e5e/ `. @1 J& |8 v  J/ E. y$ v
SDRAM_TEST_tb.mt48lc4m16a2 : at time  221035.0 ns READ : Bank = 0 Row =    0, Col =   6, Data = 6d6d

21

主题

229

帖子

6692

积分

五级会员(50)

Rank: 5

积分
6692
2#
发表于 2008-12-2 08:42 | 只看该作者
inout类型的tb文件要这样搞
1 e- y9 r# n" y) }/ ywire[7:0] io_Sdram_DQ_wire;9 g' i3 h1 b: b
reg[7:0] io_Sdram_DQ_reg;
; A: L5 D3 }) \* ?* E+ Q- `3 _- Yassign io_Sdram_DQ_wire = (~We_n) ? io_Sdram_DQ_reg : 1'bz;1 h* Q* M" f5 g' L2 o- L
这样的话在We有效时Dq_wire上是要写入的数据, 在读信号有效时,Dq_wire由读出的数据驱动- y7 K+ D. k- l& u/ ]6 g8 \
这个是方法,我也是在网上找到后按这个方法仿真双向端口的HDL文件的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-24 20:46 , Processed in 0.059561 second(s), 36 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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