Chinaunix首页 | 论坛 | 博客
  • 博客访问: 531863
  • 博文数量: 174
  • 博客积分: 4177
  • 博客等级: 上校
  • 技术积分: 1827
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-15 14:12
文章分类

全部博文(174)

文章存档

2018年(1)

2017年(1)

2013年(3)

2012年(9)

2010年(12)

2009年(5)

2008年(106)

2007年(37)

我的朋友

分类: LINUX

2008-05-07 00:26:59

摘自http://blog.chinaunix.net/u/21948/showart_358806.html

 
     看s3c2410的datasheet,发现自己对ARM的一系列命名还不是很清晰。到官方网站查阅了一些英文文档,才算是基本清晰。现在总结一下。
 
一、什么是ARM?
 
    学习ARM学习到现在,有了一定的认识。可以从几个不同的角度去认识:
 
    ·首先,ARM是Advanced RISC Machines,1991年成立于英国剑桥的公司。它开创了一种崭新的商业模式,实现了无厂房式工厂,依靠出售芯片技术知识产权的授权来盈利。
 
    ·其次,ARM是一种architecture,同MIPS、PowerPC、X86等并列。谈到架构,这实际上本身就是一个很复杂的概念。就现在的理解 来看,架构是一种系统设计蓝图,规划了方方面面的技术规范。应该说,架构是理论,那么采用同样的架构,实现的形式可以不相同。这也就是为什么同一架构会有 那么多衍生的处理器实现。
 
    ·ARM可以看作是一种技术,是RISC的代表。
 
    应该说,ARM公司位于产业链的最上层,盈利也最多。中国国内的一些OEM厂商,只是处于下游的小鱼,盈利有限。中国的信息产业要想发展,就必须有自己的核心技术。写到这里,希望龙芯带给我们的,是梦想的接近,甚至是实现!(龙芯是兼容MIPS架构)
 
二、命名规则
 
    这里提到的命名规则,应该分成两类。一类是基于ARM Architecture的版本命名规则;另一类是基于ARM Architecture版本的处理器系列命名规则。随便举个例子,s3c2410采用ARMv4T架构版本,ARM920T处理器系列,其中处理器核为 ARM9TDMI。看完下面的规则,对这几个命名就很清晰了。不打算写详细内容,可以查看上的Documentation。
 
·Naming of ARM Architecture versions
 
    | ARMv | n | variants | x(variants) | 
 
    分成四个组成部分:
    ·ARMv -- 固定字符,即ARM Version
    ·n -- 指令集版本号。迄今为之,ARM架构版本发布了7个系列,所以n=[1:7]。其中最新的版本是第7版,具体看ARM官方网站。
    ·variants -- 变种。
    ·x(variants) -- 排除x后指定的变种
 
    常见的变种有:
 
    ·T -- Thumb指令集
    ·M -- 长乘法指令
    ·E -- 增强型DSP指令
    ·J -- Java加速器Jazelle
    ·SIMD -- ARM媒体功能扩展
 
    例如,ARMv5TxM表示ARM指令集版本为5,支持T变种,不支持M变种。
 
·Naming of ARM Processor
 
    采用上述的架构,形成一系列的处理器。有时候还要区分处理器核和处理器系列。不过,在这里其实不用区分太细,毕竟这是功能的小部分的变化,核心是相同的。
 
    规则:ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{-S}
 
    ·x -- 处理器系列
    ·y -- 存储管理/保护单元
    ·z -- cache
    ·T -- 支持Thumb指令集
    ·D -- 支持片上调试
    ·M -- 支持快速乘法器
    ·I -- 支持Embedded ICE,支持嵌入式跟踪调试
    ·E -- 支持增强型DSP指令
    ·J -- 支持Jazelle
    ·F -- 具备向量浮点单元VFP
    ·-S -- 可综合版本
阅读(661) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~