找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

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

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

[复制链接]

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

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

EDA365欢迎您!

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

x
SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z
3 d' r8 q' [) l3 Y* W% p2 P
& Q% K0 N, u( g& c$ r+ [我这我用到的一个器件仿真模型3 u9 q& S/ ^7 C: ~3 B! F( y
但是为何数据线在读的时候是高阻态?( @9 O( ]* L( R' i; K* V

# M8 X+ v! X0 ?: J5 ]9 G在我的tb文件里面
$ O7 I, k2 }4 z0 x/ _wire     [15:0] io_Sdram_DQ;
+ ]$ T0 W( g2 V6 E2 e8 o( R我看器件模型里面有存储单位的设置: U5 q- v; a5 m* }' m% V3 R
为何写如何的数据读出不对
% n- E( m8 y: m: K' ~, [5 }$ I3 L! _' U9 ^* C' I6 f; M4 [# W" H
    parameter addr_bits =      12;
3 H& e: F; n. X1 i, W# [$ [: E5 P  O    parameter data_bits =      16;/ r: `8 o3 K7 W# }: W5 p
    parameter col_bits  =       8;
' O8 E9 y# Y) [1 R    parameter mem_sizes = 1048575;
* U- X! P$ c/ J) f, J8 L    inout     [data_bits - 1 : 0] Dq;
& L  h2 L# z  q    input     [addr_bits - 1 : 0] Addr;
$ X1 o' i4 S% W3 J    input                 [1 : 0] Ba;
& D% ~* U. P' Y! W- n( Q6 H    input                         Clk;' B7 R9 w# ^3 j! y* i& s' P# L2 y
    input                         Cke;
0 k( Y/ H, [7 n1 c2 t8 [9 Y    input                         Cs_n;
4 G" N3 ^* L5 S7 `* u$ k    input                         Ras_n;$ `2 Z5 ?/ D( n8 T" m) c3 Y0 V$ S
    input                         Cas_n;# T! Y% m7 [, U& y! f3 X5 E. }
    input                         We_n;  w* u. I0 w, e/ K6 N& C/ E7 V, b! A$ q
    input                 [1 : 0] Dqm;% I$ D- g$ z2 G7 M* Q; N
    reg       [data_bits - 1 : 0] Bank0 [0 : mem_sizes];
0 V3 k0 b$ V" ?9 o% b/ {+ ?0 v    reg       [data_bits - 1 : 0] Bank1 [0 : mem_sizes];
  A6 s& g1 O" {    reg       [data_bits - 1 : 0] Bank2 [0 : mem_sizes];
" m% ^) v/ ^) X    reg       [data_bits - 1 : 0] Bank3 [0 : mem_sizes];
) z1 Z, h" h6 Z" r& q# k# S........

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文件要这样搞
# S" @9 x( T3 t$ T0 iwire[7:0] io_Sdram_DQ_wire;- s; X8 n) G' `2 ?  O' {
reg[7:0] io_Sdram_DQ_reg;& |: R% z; X+ b( |% L7 o) q0 E2 X
assign io_Sdram_DQ_wire = (~We_n) ? io_Sdram_DQ_reg : 1'bz;
% r& n( M& V. o0 M( }4 T这样的话在We有效时Dq_wire上是要写入的数据, 在读信号有效时,Dq_wire由读出的数据驱动
) A# p) X$ w& ^* z% ]' Z: R这个是方法,我也是在网上找到后按这个方法仿真双向端口的HDL文件的

604

主题

2859

帖子

1万

积分

EDA365版主(50)

Rank: 5

积分
13638
3#
 楼主| 发表于 2008-12-2 20:46 | 只看该作者
为何在写的过程 列地址的第一位在最后给写成zzzz了?
; T. K8 s; L+ G4 `, y$ V* @见下面的记录
8 {. c; r- `; l列地址最大255
$ x. R, H# m0 L* v5 c  u* h  u- t/ Z
# I/ m" {  q/ G8 U# E7 c
.....* j6 W8 ?( H9 e% a
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215250.0 ns WRITE: Bank = 0 Row =    0, Col = 250, Data = 5959
6 C0 P- _1 v2 e- qSDRAM_TEST_tb.mt48lc4m16a2 : at time  215270.0 ns WRITE: Bank = 0 Row =    0, Col = 251, Data = 6868
! u: p% A+ J& ySDRAM_TEST_tb.mt48lc4m16a2 : at time  215290.0 ns WRITE: Bank = 0 Row =    0, Col = 252, Data = 7777' t0 l# a8 \0 e( y
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215310.0 ns WRITE: Bank = 0 Row =    0, Col = 253, Data = 8686
' C/ @% B6 J. K8 kSDRAM_TEST_tb.mt48lc4m16a2 : at time  215330.0 ns WRITE: Bank = 0 Row =    0, Col = 254, Data = 9595
* h* q  [0 `- fSDRAM_TEST_tb.mt48lc4m16a2 : at time  215350.0 ns WRITE: Bank = 0 Row =    0, Col = 255, Data = 3434. c4 z" z: ~* B/ P8 J
SDRAM_TEST_tb.mt48lc4m16a2 : at time  215370.0 ns WRITE: Bank = 0 Row =    0, Col =   0, Data = zzzz' i! |+ S1 x% W* y( U
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220915.0 ns READ : Bank = 0 Row =    0, Col =   0, Data = zzzz
- n# {( f$ P3 |( S2 h- u  f, FSDRAM_TEST_tb.mt48lc4m16a2 : at time  220935.0 ns READ : Bank = 0 Row =    0, Col =   1, Data = 82823 p' b8 C: ]" r" l  W) U
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220955.0 ns READ : Bank = 0 Row =    0, Col =   2, Data = 9191* v/ Z( f( o* o1 x- l9 X- V; ^1 f
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220975.0 ns READ : Bank = 0 Row =    0, Col =   3, Data = 3030; z' i6 b7 _7 e
SDRAM_TEST_tb.mt48lc4m16a2 : at time  220995.0 ns READ : Bank = 0 Row =    0, Col =   4, Data = 4f4f
; N  Y+ n6 X# mSDRAM_TEST_tb.mt48lc4m16a2 : at time  221015.0 ns READ : Bank = 0 Row =    0, Col =   5, Data = 5e5e& a9 m/ r+ q; L" _) E2 W; ~% n
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 | 只看该作者
能交流一下吗?告我你的联系方式吗
/ l% C1 h. C3 W+ I3 Z
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

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

GMT+8, 2024-11-24 17:57 , Processed in 0.062158 second(s), 36 queries , Gzip On.

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

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

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