找回密码
 注册
关于网站域名变更的通知
查看: 1963|回复: 4
打印 上一主题 下一主题

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

[复制链接]
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z+ O/ C' }' T/ h0 _0 z( G
    3 c8 D' u) S" R" r6 m8 e) I
    我这我用到的一个器件仿真模型& q; x3 G" l/ `- ~, Z  X
    但是为何数据线在读的时候是高阻态?* d2 s& h2 ^3 ^) f& c9 ~3 s
    5 N* v. B5 q1 ~( h" D
    在我的tb文件里面/ f) d+ k! D- X( e! C; [$ C% ^- k
    wire     [15:0] io_Sdram_DQ;" o0 M; T7 T' }7 j+ M
    我看器件模型里面有存储单位的设置
    % z* q* K8 M. Q% R; H7 K" f为何写如何的数据读出不对4 p9 J7 G; [6 R$ a: C  Y

    9 E& ~8 f# N/ ]7 M    parameter addr_bits =      12;  S1 K- W8 y! B7 B: o' w, ^
        parameter data_bits =      16;8 ~" U* E& ^, r( K
        parameter col_bits  =       8;
    % q7 q: D% i- }- ^% H    parameter mem_sizes = 1048575;9 m7 |& s- q4 p* r0 C9 y
        inout     [data_bits - 1 : 0] Dq;
    8 t9 k% m3 r1 M7 ^$ [    input     [addr_bits - 1 : 0] Addr;! z# p7 A/ }( W3 ^- ?. ]% c. u
        input                 [1 : 0] Ba;8 S: b# s' G6 _
        input                         Clk;' U8 T# m$ k7 I* E- q
        input                         Cke;6 n6 ?1 q8 o9 t* m; W% ~- {
        input                         Cs_n;! Y  q" Z) C& b  ~7 Y/ Z
        input                         Ras_n;
    * m' W; i; O+ u2 k$ P: W" r1 Q- v6 F, H    input                         Cas_n;' ~  P# D) p( n( s7 O
        input                         We_n;, O9 z# x0 ^9 ^
        input                 [1 : 0] Dqm;
    $ G2 X4 S; ?9 Z) B    reg       [data_bits - 1 : 0] Bank0 [0 : mem_sizes];6 U1 U3 M* X; v1 E1 V7 O7 q
        reg       [data_bits - 1 : 0] Bank1 [0 : mem_sizes];
    . `& u! g( \& C* M  @8 Q9 ?* s5 H    reg       [data_bits - 1 : 0] Bank2 [0 : mem_sizes];5 y& j% ^4 [: Z' g% g
        reg       [data_bits - 1 : 0] Bank3 [0 : mem_sizes];) R, M9 q. d  n5 E0 U
    ........

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

    Snap1.jpg

    该用户从未签到

    2#
    发表于 2008-12-2 08:42 | 只看该作者
    inout类型的tb文件要这样搞' t9 J: t. P' o% f. w  c
    wire[7:0] io_Sdram_DQ_wire;* d7 W. x5 D/ K: G5 N
    reg[7:0] io_Sdram_DQ_reg;
    " H3 B, {7 q2 {: g4 i) I3 Q( @assign io_Sdram_DQ_wire = (~We_n) ? io_Sdram_DQ_reg : 1'bz;( o( `" a  H  O1 S
    这样的话在We有效时Dq_wire上是要写入的数据, 在读信号有效时,Dq_wire由读出的数据驱动% w5 P$ ?5 O( p7 o" d
    这个是方法,我也是在网上找到后按这个方法仿真双向端口的HDL文件的
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2008-12-2 20:46 | 只看该作者
    为何在写的过程 列地址的第一位在最后给写成zzzz了?. _6 o2 o3 `; F2 @) B8 y  R, f
    见下面的记录& f- a$ Q0 _4 |; z
    列地址最大255
    / d# y( |2 J$ f1 h1 |* ^- y( [) {% |9 _' I) C( ~3 ~! k& x
    % ~  e! q) _; P* g8 n" Y
    .....( b  {& Y" _- _# J
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215250.0 ns WRITE: Bank = 0 Row =    0, Col = 250, Data = 59599 H* B/ p; x3 j$ {; b
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215270.0 ns WRITE: Bank = 0 Row =    0, Col = 251, Data = 6868) @/ v6 W6 f$ \
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215290.0 ns WRITE: Bank = 0 Row =    0, Col = 252, Data = 7777
      E4 Q/ F, n  b9 i! [( @1 m7 WSDRAM_TEST_tb.mt48lc4m16a2 : at time  215310.0 ns WRITE: Bank = 0 Row =    0, Col = 253, Data = 8686
    4 v4 l& F8 R. [. Q4 Z7 I6 I0 qSDRAM_TEST_tb.mt48lc4m16a2 : at time  215330.0 ns WRITE: Bank = 0 Row =    0, Col = 254, Data = 9595
    & o, o3 i. [% q& U5 T  e8 Y# wSDRAM_TEST_tb.mt48lc4m16a2 : at time  215350.0 ns WRITE: Bank = 0 Row =    0, Col = 255, Data = 3434
    1 z7 z1 u9 h  |  `7 TSDRAM_TEST_tb.mt48lc4m16a2 : at time  215370.0 ns WRITE: Bank = 0 Row =    0, Col =   0, Data = zzzz
    7 X4 X! o7 r5 j5 r% e! d6 M. FSDRAM_TEST_tb.mt48lc4m16a2 : at time  220915.0 ns READ : Bank = 0 Row =    0, Col =   0, Data = zzzz" s5 m2 P: b& ^8 Y
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220935.0 ns READ : Bank = 0 Row =    0, Col =   1, Data = 8282' C* [* I8 X+ K7 d
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220955.0 ns READ : Bank = 0 Row =    0, Col =   2, Data = 9191( `& n/ A$ ~- u7 O7 \7 T8 ?5 X
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220975.0 ns READ : Bank = 0 Row =    0, Col =   3, Data = 3030! X" W2 N; B7 l% q; h
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220995.0 ns READ : Bank = 0 Row =    0, Col =   4, Data = 4f4f1 Y' c# W9 e  h1 K
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  221015.0 ns READ : Bank = 0 Row =    0, Col =   5, Data = 5e5e2 `& N7 ]# N  s5 t; b5 a% R$ N. L
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  221035.0 ns READ : Bank = 0 Row =    0, Col =   6, Data = 6d6d
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

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

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

    Snap1.jpg

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

    Snap2.jpg

    该用户从未签到

    5#
    发表于 2011-4-29 09:24 | 只看该作者
    能交流一下吗?告我你的联系方式吗
    + y& r; q: i2 b% ?. f3 O
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-19 22:07 , Processed in 0.125000 second(s), 27 queries , Gzip On.

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

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

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