免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3927 | 回复: 6
打印 上一主题 下一主题

如何获得ARM处理器的序列号 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-29 17:09 |只看该作者 |倒序浏览
每一款ARM的处理器是否都带有序列号信息,如果有,如何获得序列号信息?

论坛徽章:
0
2 [报告]
发表于 2008-10-29 17:22 |只看该作者
用ARM的协处理器指令可以得到。

论坛徽章:
0
3 [报告]
发表于 2008-10-29 17:26 |只看该作者
原帖由 rodgerluo 于 2008-10-29 17:22 发表
用ARM的协处理器指令可以得到。


能否说的详细一些,用什么指令?序列号放在什么地址?等着用,多谢啦

论坛徽章:
0
4 [报告]
发表于 2008-10-29 17:30 |只看该作者
好像是mrs cp15, r0, c2之类的指令啊。

评分

参与人数 1可用积分 +15 收起 理由
bitmilong + 15 鼓勵下

查看全部评分

论坛徽章:
0
5 [报告]
发表于 2008-10-29 17:42 |只看该作者
原帖由 rodgerluo 于 2008-10-29 17:30 发表
好像是mrs cp15, r0, c2之类的指令啊。


还是没看出序列号存在哪里

[ 本帖最后由 eveson 于 2008-10-29 17:51 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2008-10-29 18:20 |只看该作者
原帖由 rodgerluo 于 2008-10-29 17:30 发表
好像是mrs cp15, r0, c2之类的指令啊。


找到了,取到的这个id号是在所有arm处理器上唯一的吗?


资料:
CP15 —系统控制协处理器 (the system control coprocessor)他通过协处理器指令MCR和MRC提供具体的寄存器来配置和控制caches、MMU、保护系统、配置时钟模式(在bootloader时钟初始化用到)……

CP15的寄存器只能被MRC和MCR(Move to Coprocessor from ARM Register )指令访问

他包括15个具体的寄存器如下:
-R0:ID号寄存器 这是一个只读寄存器,返回一个32位的设备ID号,32具体功能参考2410 datesheet的 table 2-5

-R0:缓存类型寄存器(CACHE TYPE REGISTER) ,注意有2个R0,根据MCR操作数的不同传送不同的值,这也一个只读寄存器,包含了caches的信息。读这个寄存器的方式是通过设置协处理操作码为1.

如:

MRC p15,0,Rd,c0,c0,1; 返回caches的详细信息

详见:table 2-6

-R1:控制寄存器 2-10

-R2:转换表基址寄存器(Translation Table Base --TTB) 2-12

-R3:域访问控制寄存器(Domain access control )2-13

-R4:保留 2-14

-R5:异常状态寄存器(fault status -FSR)2-14

-R6:异常地址寄存器(fault address -FAR)2-15

-R7:缓存操作寄存器 2-15

-R8:TLB操作寄存器 2-18

-R9:缓存锁定寄存器 2-19

-R10:TLB 锁定寄存器 2-21

-R11-12&14:保留

-R13:处理器ID 2-22

-R15:测试配置寄存器 2-24

评分

参与人数 1可用积分 +15 收起 理由
bitmilong + 15 鼓勵下

查看全部评分

论坛徽章:
0
7 [报告]
发表于 2008-10-29 20:10 |只看该作者

回复 #6 eveson 的帖子

世上无难事,只怕有心人!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP