zoukankan      html  css  js  c++  java
  • 黑金AX301 SDRAM读写

    sdram的读写数据按照burst方式的话,是一次读写n个字节,一次读写的数目按照burst的配置来完成
    由sys_wraddr[22:0]和sys_rdaddr[22:0]如何转变为sdram_addr[12:0]和sdram_ba[1:0]?
    sys_wraddr和sys_rdaddr根据读写状态选择其一形成系统的实际地址sys_addr,sys_addr的[22:21]是bank地址,[20:8]是行地址,[7:0]是列地址。sdram_addr会根据sdram的状态读取寄存器配置字、行地址或者列地址来配置sdram的状态。
     
    sdram_data[15:0]和sys_data_out[15:0]、sys_data_in[15:0]的区别和联系?
    由sdram_din生成sys_data_in;sdram_dout是wire定义,连接到sys_data_out上,所以在signaltap上看不到sdram_dout接口
    sdram_data是sdram内部的数据总线,输入输出都需要经过此总线。写入数据时sdram_data比sys_data_in慢一个时钟,读出数据时,sys_data_out比sdram_data慢一个时钟。
     
    一切都是因为复用!!!!资源!!!!!
     
    在黑金的demo代码中,定义的wr_addr和rd_addr这两个reg没有使用,实际的sdram_top程序中用的是sdram_wraddr和sdram_rdaddr
    将sdram_top的形参变为wr_add和rd_add编译后运行无问题;再将读的初始地址修改为23d2,读的长度修改为9d253(理论上前面从0003h开始读,最后只读到00feh),发现读信号没有了,原因应该为sdram_cmd的sdram burst配置方式仍然是读出256个,虽然在sdram_test中配置了rd_length是253,但是二者产生了冲突;尝试读初始地址改为23d2,读长度仍然为256,结果与预想的一致,结尾补充的是异常数。
  • 相关阅读:
    从命令行运行postman脚本
    Postman简单的接口测试
    请写出正则表达式(regex),取得下列黄色部分的字符串 TEL: 02-236-9655/9659 FAX:02-236-9654 (黄色部分即02-236-9655/9659 ) ( 测试面试题)
    okhttp 的使用
    GridView的簡單使用
    Fragment 中 ListView绑定ContextMenu
    charles的使用
    selenium元素定位(Java)
    App间相互跳转及图片分享
    微信模板消息的使用
  • 原文地址:https://www.cnblogs.com/Osler/p/8780348.html
Copyright © 2011-2022 走看看