3301|1

16

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

XINTF地址问题 [复制链接]

我的XINTF地址总线20根都使用了,但是分高10根(XA19~XA10)和低10根(XA9~XA0)来使用的。现在我遇到个这样的问题,我在和CPLD连接的时候,使用高10根(XA19~XA10)地址线,DSP访问地址从0x4000开始,当CPLD判断地址的时候,收到的地址应该是0x010,请问对不对,相当于丢掉了低10位。所以地址由0x4000变成了0x010,请问这样理解是不是对的,同时这样在数据读写的时候地址能不能对应上。所以我CPLD判断地址的时候直接判断,when “0001000000”   => XD<="01010101';,我的数据总线是采用的高8位(XD15~XD8),所以发送来8位,不知道这样描述,DSP读地址0x4000的时候是否正确,反正我尝试过读取数据,
CPLD 的发送数据程序是这样的:
process(PRSTD,XZCS0,XRD)
begin
  if(PRSTD ='0')then
    XD <="ZZZZZZZZ";
  else
  if (XZCS0 ='0')then
      if (XRD ='0' )then
      case XA is
  when "0000010001"=>   XD<="10101010";
    when "0000010010"=>    XD<="01010101";
                     
  when  others => XD <="ZZZZZZZZ";
      end case;
      end if;
      else
      XD <= "ZZZZZZZZ";
    end if;
  end if;
end process;
DSP读取数据的语句是:
Uint16 *addr;
Uint32  Message0,Message1;
addr=(Uint16*)(0x4400);
Message0=*addr;
addr=(Uint16*)(0x4800);
Message1=*addr;
XBus.XintfL=Message0;
XBus.XintfH=Message1;
结果读到的数据在memory中看到是0x4000地址的数据,但是问题出现了,0x4000的数据初始化之后是0xffff;读出来就是0xffff;而不是CPLD发送的数据,请问这是那个地方出现问题了。
一,是不是CPLD需要确定在CLK的上升沿还是下降沿开始读取?二、还是DSP本身访问的地址和CPLD发送的地址就没有对应好。
请教各位有经验的前辈们指点指点迷津。谢谢了!
点赞 关注
 

回复
举报

16

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
自己想顶一下,希望有高手快点现身,指教一二,谢谢大侠了
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表