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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    SDRAM控制问题请教:为何用的器件模型读数据的时候是高阻Z
      b2 P1 ^! V' M, w1 w  l6 H& r/ F% B6 X5 f
    我这我用到的一个器件仿真模型' P9 _  [4 C# V
    但是为何数据线在读的时候是高阻态?0 q  v: f3 c. k  w7 t9 x& O
    . M$ P5 f$ R" J4 ]; p- L  ^
    在我的tb文件里面
    ' T, I4 W' E: Y2 O* Nwire     [15:0] io_Sdram_DQ;( |1 R: b) y1 c  N/ B7 d8 U
    我看器件模型里面有存储单位的设置
    - r  A0 X( f; z# N为何写如何的数据读出不对4 G% W+ x- r% F8 F5 {; @! M4 S- `

    * g! F& k. A# h' D    parameter addr_bits =      12;
    3 q; z4 D% p) `% ]6 X    parameter data_bits =      16;
    , y: n. B! U" C/ U$ a. T+ @$ @    parameter col_bits  =       8;
    3 D8 {) b% y$ m    parameter mem_sizes = 1048575;
    5 w2 R7 K$ Z% K    inout     [data_bits - 1 : 0] Dq;7 j* w/ Z0 [" b
        input     [addr_bits - 1 : 0] Addr;
    & A! g8 Y3 I8 a! |" L    input                 [1 : 0] Ba;
    * `" S0 K& Q# Z5 T! {    input                         Clk;  a- L' l& a  x$ C3 m5 V9 U
        input                         Cke;4 O3 z+ n+ @& \+ T2 ^7 a2 C
        input                         Cs_n;  a) \' y8 [4 V3 k
        input                         Ras_n;9 @- z9 [1 D% D
        input                         Cas_n;
    # q" s  t0 M1 a; R9 \* o, ?' y9 o+ o, e    input                         We_n;- M- i0 b# t* H
        input                 [1 : 0] Dqm;
    5 L1 W" o# s) G: R    reg       [data_bits - 1 : 0] Bank0 [0 : mem_sizes];; y+ F; Z! ^& ~/ l6 f3 `; Q
        reg       [data_bits - 1 : 0] Bank1 [0 : mem_sizes];
    , @" f, l" V. |7 `5 s; ]1 ]- P    reg       [data_bits - 1 : 0] Bank2 [0 : mem_sizes];3 `( @; f, G: M( F! ~2 U& h
        reg       [data_bits - 1 : 0] Bank3 [0 : mem_sizes];
    2 M* O5 _3 p. r# y' J& a: R' _........

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

    Snap1.jpg

    该用户从未签到

    2#
    发表于 2008-12-2 08:42 | 只看该作者
    inout类型的tb文件要这样搞" Y4 j& @6 F  g: N$ _" r
    wire[7:0] io_Sdram_DQ_wire;" |$ ~. O/ T& c/ I- G! s0 s( q, q5 q
    reg[7:0] io_Sdram_DQ_reg;
    , N7 v1 ^2 T3 xassign io_Sdram_DQ_wire = (~We_n) ? io_Sdram_DQ_reg : 1'bz;
    & F2 ~, g$ q3 S7 s这样的话在We有效时Dq_wire上是要写入的数据, 在读信号有效时,Dq_wire由读出的数据驱动8 O. m; r- h& Z4 g& e- \
    这个是方法,我也是在网上找到后按这个方法仿真双向端口的HDL文件的
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2008-12-2 20:46 | 只看该作者
    为何在写的过程 列地址的第一位在最后给写成zzzz了?
    6 m- a+ O  W9 Y& a见下面的记录$ E4 L& @& i$ U! Y$ `
    列地址最大255( {2 p+ {$ x' @) B7 f7 ?

    ' `* v4 \0 X7 ]0 p% X9 ]$ ~
    " i; I! N7 V% w% _7 t2 R8 B.....! }1 u; P1 O  w+ W& u
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215250.0 ns WRITE: Bank = 0 Row =    0, Col = 250, Data = 5959$ T3 ~/ [. V0 S+ \& T- [
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215270.0 ns WRITE: Bank = 0 Row =    0, Col = 251, Data = 68681 X+ e% l+ N' m  K
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215290.0 ns WRITE: Bank = 0 Row =    0, Col = 252, Data = 7777
    9 P8 L: C5 ]3 O* F' `SDRAM_TEST_tb.mt48lc4m16a2 : at time  215310.0 ns WRITE: Bank = 0 Row =    0, Col = 253, Data = 8686; j& s4 Z! P  W/ K$ L4 m" E% c
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  215330.0 ns WRITE: Bank = 0 Row =    0, Col = 254, Data = 9595
    $ r4 z& p, G- q  A5 b8 NSDRAM_TEST_tb.mt48lc4m16a2 : at time  215350.0 ns WRITE: Bank = 0 Row =    0, Col = 255, Data = 3434
    ) ?2 _$ y$ |: ^) O* ]+ oSDRAM_TEST_tb.mt48lc4m16a2 : at time  215370.0 ns WRITE: Bank = 0 Row =    0, Col =   0, Data = zzzz
    ! C- b; O% _* y- c# r' PSDRAM_TEST_tb.mt48lc4m16a2 : at time  220915.0 ns READ : Bank = 0 Row =    0, Col =   0, Data = zzzz2 G* e3 x# p7 o7 R, @4 N
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220935.0 ns READ : Bank = 0 Row =    0, Col =   1, Data = 8282
    + A* G0 c0 a( F' T9 ]* V5 ^( OSDRAM_TEST_tb.mt48lc4m16a2 : at time  220955.0 ns READ : Bank = 0 Row =    0, Col =   2, Data = 9191" @) G; W5 D5 c; m. O8 p/ l
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220975.0 ns READ : Bank = 0 Row =    0, Col =   3, Data = 3030. x- I1 A6 B! a2 U: B+ F0 L/ B
    SDRAM_TEST_tb.mt48lc4m16a2 : at time  220995.0 ns READ : Bank = 0 Row =    0, Col =   4, Data = 4f4f
    0 W' Y1 m& h1 m8 F! sSDRAM_TEST_tb.mt48lc4m16a2 : at time  221015.0 ns READ : Bank = 0 Row =    0, Col =   5, Data = 5e5e& a. i: f" D7 R6 s$ T3 l( X- G
    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, 下载次数: 6)

    Snap1.jpg

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

    Snap2.jpg

    该用户从未签到

    5#
    发表于 2011-4-29 09:24 | 只看该作者
    能交流一下吗?告我你的联系方式吗
    & E9 h  A  s+ E- u* f9 D5 g
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-5 07:08 , Processed in 0.125000 second(s), 27 queries , Gzip On.

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

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

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