3259|6

22

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

ARM控制FPGA的IP核时出现地址对齐陷阱问题 [复制链接]

   控制寄存器采用          IP基地址+偏移量        的方法 h2p_lw_ctl_addr=virtual_base + ( ( unsigned long  )( ALT_LWFPGASLVS_OFST + PIO_LED_BASE + 0x00000001) & ( unsigned long)( HW_REGS_MASK ) );  


PuTTY编译时报错:
Alignment trap: asd (249) PC=0x0000850a Instr=0x601a Address=0x76046001 FSR 0x811




请问怎么解决?

此帖出自Altera SoC论坛

最新回复

这个地方应该加4。 因为定义的寄存器是32bit,就是4byte,所以R1的地址+4,R2的地址的+8,以此类推。 记得上次说过直接指针访问就很方便: unsigned long * p =(unsigned long * )(virtual_base + ( ( unsigned long  )( ALT_LWFPGASLVS_OFST + PIO_LED_BASE) & ( unsigned long)( HW_REGS_MASK ) ) ); 用p[0]、p[1]直接读写,系统自己会算的。   详情 回复 发表于 2018-8-9 17:19
点赞 关注(1)
 
 

回复
举报

131

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
你加个0x00000001是干什么的?
此帖出自Altera SoC论坛

点评

逻辑地址的偏移量  详情 回复 发表于 2018-8-7 11:15
 
 
 

回复

22

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
全部都是泡馍 发表于 2018-8-7 09:15
你加个0x00000001是干什么的?

逻辑地址的偏移量
此帖出自Altera SoC论坛

点评

PIO_LED_BASE 就是led IO口的偏移量  详情 回复 发表于 2018-8-7 12:49
 
 
 

回复

131

帖子

0

TA的资源

一粒金砂(中级)

4
 
LiFan123 发表于 2018-8-7 11:15
逻辑地址的偏移量

PIO_LED_BASE 就是led  IO口的偏移量
此帖出自Altera SoC论坛

点评

不是,这个IP里面有两个寄存器,逻辑地址分别是0和1,PIO_LED_BASE只能代表偏移量为0的寄存器  详情 回复 发表于 2018-8-7 17:25
 
 
 

回复

22

帖子

0

TA的资源

一粒金砂(中级)

5
 
全部都是泡馍 发表于 2018-8-7 12:49
PIO_LED_BASE 就是led  IO口的偏移量

不是,这个IP里面有两个寄存器,逻辑地址分别是0和1,PIO_LED_BASE只能代表偏移量为0的寄存器
此帖出自Altera SoC论坛
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(中级)

6
 
这个地方应该加4。
因为定义的寄存器是32bit,就是4byte,所以R1的地址+4,R2的地址的+8,以此类推。
记得上次说过直接指针访问就很方便:
unsigned long * p =(unsigned long * )(virtual_base + ( ( unsigned long  )( ALT_LWFPGASLVS_OFST + PIO_LED_BASE) & ( unsigned long)( HW_REGS_MASK ) ) );
用p[0]、p[1]直接读写,系统自己会算的。
此帖出自Altera SoC论坛

点评

多谢大神  详情 回复 发表于 2018-8-10 11:02
 
 
 

回复

22

帖子

0

TA的资源

一粒金砂(中级)

7
 
cncqzxj 发表于 2018-8-9 17:19
这个地方应该加4。
因为定义的寄存器是32bit,就是4byte,所以R1的地址+4,R2的地址的+8,以此类推。
记 ...

多谢大神
此帖出自Altera SoC论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表