找回密码
 立即注册
查看: 334|回复: 5

[已解决] 关于STC32G手册上EJMP指令的疑问

[复制链接]
  • TA的每日心情
    开心
    1 小时前
  • 签到天数: 89 天

    [LV.6]常住居民II

    3

    主题

    60

    回帖

    558

    积分

    荣誉版主

    积分
    558
    发表于 2023-11-25 23:01:04 | 显示全部楼层 |阅读模式
    本帖最后由 yefeng 于 2023-11-29 15:11 编辑

    手册中指令集提及的EJMP指令说是可以在16M地址空间内任意跳转,
    在仿真时执行到有一条指令:EJMP 800H时,
    PC寄存器的值不能更新到 0x000800 (暂且不讨论0x800地址的合法性)

    截图202311252300233651.jpg



    回复 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9556

    回帖

    1万

    积分

    管理员

    积分
    14035
    发表于 2023-11-27 21:32:31 | 显示全部楼层
    您是指 EJMP 不能跳到 80:0000H 以下的地址
    而不是整个16M字节的任何地址,高8M才能是程序空间
    截图202311272131295851.jpg
    截图202311272141529756.jpg

    截图202311272142146932.jpg

    截图202311272137098501.jpg
    截图202311272139065534.jpg


    截图202311272139454898.jpg






    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-5-11 09:06
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    16

    主题

    724

    回帖

    2582

    积分

    超级版主

    积分
    2582
    发表于 2023-11-27 22:21:03 | 显示全部楼层
    EJMP ADDR24指令的操作地址为24位
    所以理论跳转范围为16M
    如果是软件仿真,则可模拟16M的地址跳转
    如下所示:(我使用的是ECALL ADDR24指令,和EJMP类似)

    截图202311272214131434.jpg


    但如果是硬件仿真,则芯片内部的电路会将PC值限制在程序空间代码的有效范围范围内,
    因为目前的STC32G系列单片机并不支持在数据区执行代码(后续或许会支持)
    注意:与EJMP ADDR24指令的本身的16M跳转能力无关,是硬件设计时加的限制

    所以手册上,就EJMP ADDE24这条指令的描述:
    “可以在16M地址空间馁任意跳转”,是没错的。

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    1 小时前
  • 签到天数: 117 天

    [LV.6]常住居民II

    0

    主题

    81

    回帖

    662

    积分

    高级会员

    积分
    662
    发表于 2023-11-28 09:32:35 | 显示全部楼层
    向高手学习
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    1 小时前
  • 签到天数: 89 天

    [LV.6]常住居民II

    3

    主题

    60

    回帖

    558

    积分

    荣誉版主

    积分
    558
     楼主| 发表于 2023-11-28 09:55:34 | 显示全部楼层
    zhp 发表于 2023-11-27 22:21
    EJMP ADDR24指令的操作地址为24位
    所以理论跳转范围为16M
    如果是软件仿真,则可模拟16M的地址跳转

    好的,就是指令描述没错,硬件限制了PC寄存器的高8位咯
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9556

    回帖

    1万

    积分

    管理员

    积分
    14035
    发表于 2023-11-28 10:15:39 | 显示全部楼层
    后续考虑开放 80:0000H 以下也是一个发展方向
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-21 11:34 , Processed in 0.063379 second(s), 51 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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