找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

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

[复制链接]

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

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

EDA365欢迎您!

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

x
SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z4 ^0 x! U/ m0 R0 v2 a" u
8 F: _6 @4 H0 U+ [
我这我用到的一个器件仿真模型" W3 i2 `% h8 p2 i9 f
但是为何数据线在读的时候是高阻态?' k) m3 z4 L& j! @; y* |' A7 s, T5 l
# o0 }% j: ^. p1 I1 S
在我的tb文件里面& u) ~+ P- x. _% \
wire     [15:0] io_Sdram_DQ;
. f# c6 _4 c- }# t我看器件模型里面有存储单位的设置
% [9 P9 {! f8 ]4 l3 ^5 z  y为何写如何的数据读出不对7 m* m7 i7 ^0 F0 o1 |
' i9 E( |$ C' K0 V* t
    parameter addr_bits =      12;
6 `# F. x8 ^' G& w    parameter data_bits =      16;
8 z" g' u5 J" X$ v1 ?2 ~% R    parameter col_bits  =       8;
- R5 N" X& o% Q  S# k+ F( Y    parameter mem_sizes = 1048575;
! g: F$ L0 @* ~; F    inout     [data_bits - 1 : 0] Dq;
6 q' u: P- l8 j    input     [addr_bits - 1 : 0] Addr;% P4 Q* @8 |( x8 j. M
    input                 [1 : 0] Ba;7 K" {0 q( ~- p
    input                         Clk;! x" U  ~, e! `+ `# R) r2 r
    input                         Cke;  L3 a" d# m# s/ n9 C
    input                         Cs_n;2 R5 L6 v& g5 [( Z
    input                         Ras_n;
( k' B3 ?1 ^  M; K9 m: a4 H    input                         Cas_n;
: H3 D2 R7 d; z    input                         We_n;5 L- @) \2 s: @, G
    input                 [1 : 0] Dqm;% t# N8 I3 |! S2 h1 S" \
    reg       [data_bits - 1 : 0] Bank0 [0 : mem_sizes];
. b' w  s: P8 T, O$ I/ H8 w4 A    reg       [data_bits - 1 : 0] Bank1 [0 : mem_sizes];
# p, y  S- A7 ~: C4 R# y  r    reg       [data_bits - 1 : 0] Bank2 [0 : mem_sizes];
6 M% C' W8 N% T+ f0 }: K( N    reg       [data_bits - 1 : 0] Bank3 [0 : mem_sizes];# n( y/ H* [; R8 i
........

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

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

21

主题

229

帖子

6692

积分

五级会员(50)

Rank: 5

积分
6692
2#
发表于 2008-12-2 08:42 | 只看该作者
inout类型的tb文件要这样搞! ~) z5 i5 {6 `$ W
wire[7:0] io_Sdram_DQ_wire;
+ \$ [4 d0 B2 B) v/ f- Nreg[7:0] io_Sdram_DQ_reg;( q. q7 U3 a% R0 v0 k% X
assign io_Sdram_DQ_wire = (~We_n) ? io_Sdram_DQ_reg : 1'bz;4 P# L; N! N" i* \& Z% L# D2 E
这样的话在We有效时Dq_wire上是要写入的数据, 在读信号有效时,Dq_wire由读出的数据驱动0 U" \" R- u9 ?' L5 b* L3 s: o
这个是方法,我也是在网上找到后按这个方法仿真双向端口的HDL文件的

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
3#
 楼主| 发表于 2008-12-2 20:46 | 只看该作者
为何在写的过程 列地址的第一位在最后给写成zzzz了?
7 f1 Q/ n: M; V' b见下面的记录6 t$ s, ?+ |8 W% j9 S' i
列地址最大2552 V  a5 q# P5 I7 s& b1 U+ K) s# D* l

0 B+ C( e6 ~6 X. e/ M8 }" }1 E" W2 s1 l
.....
6 Y  H* h# c' x! B; d& ~0 D, ySDRAM_TEST_tb.mt48lc4m16a2 : at time  215250.0 ns WRITE: Bank = 0 Row =    0, Col = 250, Data = 5959
/ b& f4 C% {1 N6 O) f5 D# s5 VSDRAM_TEST_tb.mt48lc4m16a2 : at time  215270.0 ns WRITE: Bank = 0 Row =    0, Col = 251, Data = 6868# w7 c4 j0 W, K/ g1 Q, \. K
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215290.0 ns WRITE: Bank = 0 Row =    0, Col = 252, Data = 7777( ?5 y. ]/ N: E0 _
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215310.0 ns WRITE: Bank = 0 Row =    0, Col = 253, Data = 8686; Q3 O& s" M8 O
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215330.0 ns WRITE: Bank = 0 Row =    0, Col = 254, Data = 9595" E3 O  T, u# q! ?& |  F9 N3 q
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215350.0 ns WRITE: Bank = 0 Row =    0, Col = 255, Data = 3434
6 L+ V: h  T, Z* `  g+ ^9 m- TSDRAM_TEST_tb.mt48lc4m16a2 : at time  215370.0 ns WRITE: Bank = 0 Row =    0, Col =   0, Data = zzzz' l7 {! c* D* R6 |! x9 m' y
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220915.0 ns READ : Bank = 0 Row =    0, Col =   0, Data = zzzz+ e! h- v- P; |  Z
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220935.0 ns READ : Bank = 0 Row =    0, Col =   1, Data = 8282
- ?, v1 {/ B4 b2 ?- k9 N  }SDRAM_TEST_tb.mt48lc4m16a2 : at time  220955.0 ns READ : Bank = 0 Row =    0, Col =   2, Data = 9191, w5 w! `& f3 R
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220975.0 ns READ : Bank = 0 Row =    0, Col =   3, Data = 3030; v2 @" _+ U3 a. H/ s5 [; E
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220995.0 ns READ : Bank = 0 Row =    0, Col =   4, Data = 4f4f
# ?1 g7 r' `8 |3 v9 \) [SDRAM_TEST_tb.mt48lc4m16a2 : at time  221015.0 ns READ : Bank = 0 Row =    0, Col =   5, Data = 5e5e1 D' D3 k+ Y: m2 [( b: z
SDRAM_TEST_tb.mt48lc4m16a2 : at time  221035.0 ns READ : Bank = 0 Row =    0, Col =   6, Data = 6d6d

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

5

主题

14

帖子

104

积分

二级会员(20)

Rank: 2Rank: 2

积分
104
5#
发表于 2011-4-29 09:24 | 只看该作者
能交流一下吗?告我你的联系方式吗. ^% o* {; }/ |$ X/ w% ~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

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

GMT+8, 2024-11-28 06:34 , Processed in 0.060534 second(s), 36 queries , Gzip On.

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

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

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