16位ECU存储器寻址技术:表访问与哈佛架构解析

需积分: 50 27 下载量 79 浏览量 更新于2024-08-09 收藏 2.8MB PDF 举报
"存储器寻址在ECU控制策略的实现与验证中扮演着关键角色,尤其是在16位器件中。这种设备采用改进的哈佛架构,数据和程序存储空间独立,支持不同宽度的操作。数据存储器允许字节和字的访问,而程序存储器则专用于字操作。尽管传统哈佛架构不支持程序存储器的数据访问,但16位架构提供了三种方法:表访问指令、程序空间可视性(PSV)窗口和扩展数据空间(EDS)窗口。 表访问指令,如tblrdl、tblrdh、tblwtl和tblwth,用于访问程序存储器中的数据,利用16位数据寄存器指针和8位TBLPAG寄存器进行寻址。汇编语言中,tbloffset()和tblpage()操作符简化了表访问。链接器能解析程序存储器中标号的符号引用,以便表访问指令使用。 在汇编源代码示例中,.section prog,code指定将段分配在程序存储器中,.pbyte伪指令定义字节常量。汇编器会根据需要添加填充数据,确保每个标号对应一个唯一的PC地址。例如,常量1、2、3填充为完整指令字,每个都有独立地址,而常量4、5、6则共享同一地址。 MPLAB® XC16汇编器、链接器和实用程序用户指南详细介绍了这些概念,提供了中文版本以便理解。然而,重要的是不要忽略英文原文,因为它包含了关于Microchip产品的重要信息。Microchip Technology Inc.对其知识产权进行了保护,并且对于因使用其信息而产生的任何后果不承担责任。在使用Microchip器件于生命维持和/或生命安全应用时,风险由购买者承担。"