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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z, U4 [5 l5 ]5 U/ n
    / J3 I6 \5 C3 s4 D* J
    我这我用到的一个器件仿真模型: |# G+ ?& s' K1 H/ Z
    但是为何数据线在读的时候是高阻态?
    / G' ~" `( e1 v1 i: C" v# x3 s6 o7 Y. ?
    在我的tb文件里面
    : s; T5 J) R( }9 J) Z0 m! s+ \wire     [15:0] io_Sdram_DQ;% I0 g4 g; z6 F; D& e. [
    我看器件模型里面有存储单位的设置
    + G) s6 F+ {6 G% f: d为何写如何的数据读出不对7 d. ?0 x) |5 ^# S! m" @% l3 y
      @! Q7 ?, q) t) P. X
        parameter addr_bits =      12;
    6 S5 n, P- n% m. M. D    parameter data_bits =      16;
    0 j. k% @6 `0 n+ w6 ^: s    parameter col_bits  =       8;
    3 e" N" ~2 l& l8 U) M% ?+ L5 ^1 I    parameter mem_sizes = 1048575;
    : C0 d5 ]3 S5 w$ h  h$ j+ f    inout     [data_bits - 1 : 0] Dq;+ ~5 G* u" A. t& G" E
        input     [addr_bits - 1 : 0] Addr;3 b9 m* F. s8 ?' W8 v
        input                 [1 : 0] Ba;
    $ m7 |. I/ L4 l# T7 z    input                         Clk;" Y1 ]0 p' a, n! }. e: i
        input                         Cke;
    2 ]; H) @( T$ V    input                         Cs_n;
    ; @. k% @& \4 a( ?; M& D1 ~/ u+ c    input                         Ras_n;. }/ n* s( V8 F  a3 l
        input                         Cas_n;
    7 a7 Z1 u, g. m" w, ^# e    input                         We_n;
    7 ~- g; o6 e% k7 a( {( @    input                 [1 : 0] Dqm;
    3 P+ W6 o* R  D! j8 Y1 a: P    reg       [data_bits - 1 : 0] Bank0 [0 : mem_sizes];
    8 _' c/ e& P8 B$ p! ?7 g    reg       [data_bits - 1 : 0] Bank1 [0 : mem_sizes];
    0 Q' C8 z* K* X$ s3 d' Y- c    reg       [data_bits - 1 : 0] Bank2 [0 : mem_sizes];) z4 P, s8 ?" @
        reg       [data_bits - 1 : 0] Bank3 [0 : mem_sizes];
    , Q# l% q) s8 F7 O........

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

    Snap1.jpg

    该用户从未签到

    2#
    发表于 2008-12-2 08:42 | 只看该作者
    inout类型的tb文件要这样搞0 E  k: C* Q. s: V  i
    wire[7:0] io_Sdram_DQ_wire;
    ) t+ G2 n  }8 s) \reg[7:0] io_Sdram_DQ_reg;
    4 z! w; o( G8 \assign io_Sdram_DQ_wire = (~We_n) ? io_Sdram_DQ_reg : 1'bz;
    8 K3 |9 z  V  A) q! l' M这样的话在We有效时Dq_wire上是要写入的数据, 在读信号有效时,Dq_wire由读出的数据驱动
    8 O6 R7 a' m0 b8 K5 W* x这个是方法,我也是在网上找到后按这个方法仿真双向端口的HDL文件的
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2008-12-2 20:46 | 只看该作者
    为何在写的过程 列地址的第一位在最后给写成zzzz了?5 O" X4 x' G# p2 B* c, M1 m
    见下面的记录& L& n. [) k( H2 b
    列地址最大255
    4 M+ J; Z) C. |& U/ C, h' ~# }6 N% {1 P

    - C8 A8 M* K9 D6 T2 b1 o) a- f2 ].....$ B5 e0 r  _# X( O
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215250.0 ns WRITE: Bank = 0 Row =    0, Col = 250, Data = 59591 A, T! U0 I2 ^2 i# j! H
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215270.0 ns WRITE: Bank = 0 Row =    0, Col = 251, Data = 6868
    % L5 L, [- p3 WSDRAM_TEST_tb.mt48lc4m16a2 : at time  215290.0 ns WRITE: Bank = 0 Row =    0, Col = 252, Data = 7777: P& U- w4 T. o' q9 S; A/ \4 n
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215310.0 ns WRITE: Bank = 0 Row =    0, Col = 253, Data = 8686
    3 X0 r% z; A! ~SDRAM_TEST_tb.mt48lc4m16a2 : at time  215330.0 ns WRITE: Bank = 0 Row =    0, Col = 254, Data = 9595
    ) Y( [4 Z9 j" |: wSDRAM_TEST_tb.mt48lc4m16a2 : at time  215350.0 ns WRITE: Bank = 0 Row =    0, Col = 255, Data = 34349 Y6 o6 a' J# ?, a+ E- s
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215370.0 ns WRITE: Bank = 0 Row =    0, Col =   0, Data = zzzz
    8 `4 U  z* C( Q# c: dSDRAM_TEST_tb.mt48lc4m16a2 : at time  220915.0 ns READ : Bank = 0 Row =    0, Col =   0, Data = zzzz
    . @7 b! I/ \! T$ x" hSDRAM_TEST_tb.mt48lc4m16a2 : at time  220935.0 ns READ : Bank = 0 Row =    0, Col =   1, Data = 82828 g5 P7 _4 }, u4 x
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220955.0 ns READ : Bank = 0 Row =    0, Col =   2, Data = 9191+ f! @; ~, J: b8 E% P
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220975.0 ns READ : Bank = 0 Row =    0, Col =   3, Data = 3030, m- [& S1 x: @! T; \+ ?+ t+ m
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220995.0 ns READ : Bank = 0 Row =    0, Col =   4, Data = 4f4f& |6 Y: g  c6 L  I8 M- @/ M  {" Y
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  221015.0 ns READ : Bank = 0 Row =    0, Col =   5, Data = 5e5e% `2 l. t1 D- @8 z- U) {
    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, 下载次数: 7)

    Snap1.jpg

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

    Snap2.jpg

    该用户从未签到

    5#
    发表于 2011-4-29 09:24 | 只看该作者
    能交流一下吗?告我你的联系方式吗
    ! {+ |! B8 q7 U- d
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-29 13:48 , Processed in 0.171875 second(s), 27 queries , Gzip On.

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

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

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