找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 20|回复: 0
打印 上一主题 下一主题
收起左侧

位带操作的硬件机制分析,及对膨胀、别名区两词的质疑

[复制链接]
跳转到指定楼层
楼主
ID:266429 发表于 2026-11-2 19:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 慢慢思考 于 2026-11-3 02:45 编辑

     Cortex-M3权威指南中有关位带操作有如下描述:     这两个位带中的地址除了可以像普通的RAM一样使用外,它们还都有自己的"位带别名区“,位带别名区把每个比特膨胀成一个32位的字。      Cortex-M3之位带操作的原理,并不是给每一位配备了读写操作的电路硬件,而是共用机制,而实现共用的机制的原理,应该是将软件的读改写流程改为用硬件来实现,这样的方案是最省芯片面积的也就是成本最低的,虽然速度提升没那么多,但安全上是提升了不少的。
    所谓别名,其实它本质上并不是地址值,它并不像寄存器的地址值那样会被控制中心放在32位地址总线上,控制中心是有一个鉴别器的,它们会对所谓的地址值进行位段操作鉴别,一旦鉴别到是落在那两个位段区域,就会被当作指令一样进行译码,译码出的结果里面就有该位所在的寄存器字的地址,然后控制中心才会将这个译出的地址值放在32位地址总线上,然后读取这个字,如果原命令是写操作,则对译码器译出的结果所指向的位进行写操作,完成后再将修改完成的这个字写回原寄存器字当中。这里是有一个问题的,Cortex-M3究竟是操作字还是操作字节不知,按其说明书的意思,应该是字,但是,操作字好象比操作字节要复杂些,至少中间增加的那个暂存寄存器,32位的比8位的要麻烦些,不过这个不重要影响可以忽略。
   所以啊,那个所谓的膨胀、别名区,是不是有点不对题?
   以上仅仅是个人分析。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶顶 踩踩
回复

使用道具 举报

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

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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