大悟还俗

邮箱 key_ok@qq.com 我的收集 http://pan.baidu.com/share/home?uk=1177427271
posts - 236, comments - 8, trackbacks - 0, articles - 0
  新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

了解ARM+Android

Posted on 2013-11-05 14:11 大悟还俗 阅读(...) 评论(...) 编辑 收藏
第一部分 认识ARM,方案商,GPU
1, 芯片
1.1 ARM
ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
ARM 公司是专门从事基于 RISC 技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片. 正是因为这样,各家都采用了自己的编号来命名,所以CPU型号较为复杂.
1.2 RISC & CISC
市场上可见到的处理器大致可以分为以下两类:CISC处理器和RISC处理器。CISC技术多用在个人电脑等通用处理器上。RISC技术多用在嵌入式处理器上(我们可以认为除了通用处理器,所有的处理器都是嵌入式处理器),比如手机处理器芯片、GPS处理器芯片.
1.3 Cortex-A系列处理器
ARM Cortex A5
ARM Cortex A8
ARM Cortex A9-MPcore
ARM Cortex A9-单核
1.4 ARM7.ARM9,ARM11处理器
1.5 ARMv4,ARMv6,ARMv7指令集
Cortex-A系列是最新的开放式操作系统的高性能处理器,是ARM针对智能手机和MID平板推出的一系列处理器。ARM7、911则是经典系列,也就是上一代处理器,其中ARM9、ARM11架构被采用的比较多,有不少中端MID平板的处理器采用这种构架。Cortex-A系列和ARM7、911系列最大的区别就是采用了不同的指令集,Cortex-A系列采用的是ARMv7指令集,而ARM11采用的是ARMv6指令集。
ARM核心是主控SOC中的重要部分,系统的日常应用都由ARM核心来完成,因此ARM核心的效能很大程度上跟用户体验有关。ARM公司一般用DMIPS/MHz来标称ARM核心的性能。DMIPS是Dhrystone Million Instructions executed Per Second的缩写,反映核心的整数计算能力。但Dhrystone算法代码本身比较叫,可以完全放到Cache中执行,因此反映的只是核心能力,并不能反映缓存、内存I/O性能。
能支持智能系统的ARM核心有以下几类:
ARM9:指令集ARMv5,5级流水线,1.1DMIPS/MHz
ARM10E:指令集ARMv5,intel获得授权后发展的,如PXA270,PXA210系列,6/7级流水线,1.35DMIPS/MHz
ARM11:指令集ARMv6,8级流水线,1.25DMIPS/MHz
Cortex-A8:指令集ARMv7-A,13级整数流水线,超标量双发射,2.0DMIPS/MHz,标配Neon,不支持多核
Scorpion:指令集ARMv7-A,高通获得指令集授权后在A8的基础上设计的。13级整数流水线,超标量双发射,部分乱序执行,2.1DMIPS/MHz,标配Neon,支持多核
Cortex-A9:指令集ARMv7-A,8级整数流水线,超标量双发射,乱序执行,2.5DMIPS/MHz,可选配Neon/VFPv3,支持多核
Cortex-A5:指令集ARMv7-A,8级整数流水线,1.57DMIPS/MHz,可选配Neon/VFPv3,支持多核
Cortex-A15:指令集ARMv7-A,超标量,乱序执行,可选配Neon/VFPv4,支持多核
目前只有指令集ARMv7-A的核心才能在Android2.2上支持Adobe Flash。
Neon是什么?Neon是ARM核心附带的浮点SIMD引擎,可以把它当一个DSP用,可以把它理解为桌面CPU上的SSE,SSE2。合理的利用可以增强处理器在游戏、多媒体中的表现,当然需要软件支持。标准的Neon宽度是64bit。A9的Neon相对A8略有升级。
如果不使用Neon,就只能有CPU自带的VFP进行浮点运算。标准A8的VFP没有管线化,速度是比较低的。A9的VFP管线化后,效能有明显提升,但还是不如Neon。
超标量:A8 A9 A15都是超标量结构,他们具有两条流水线,一个周期可以发射最多两条指令进行执行。因此同频效能比ARM9 ARM11等高的多。
Cortex-A5是Cortex-A家族中的小弟,功耗较低,单位功耗的效能很高,用于代替ARM9和ARM11占据低端市场。
Cortex-A15是最新发布的,作为高端产品出现,目前资料不多。
Scropion是高通根据Cortex-A8修改的。关键的特点是同频下比A8节能30%,或者同功耗的频率高25%。
Scorpion具有部分A9的特性,如乱序执行,管线化的VFP,支持多核。此外,Scorpion的Neon SIMD引擎(高通称之为VeNum)宽度为128bit,是A8和A9的两倍,能提供更强劲的浮点运算支持,并且在不需要的时候可以关闭一半变成64bit以节省能源。总体上,Scorpion是具有部分A9特性的A8,高频率节能浮点加强版。
1.6 方案商
获得ARM许可,生产自己芯片的方案公司
瑞芯微:
Rk2818: ARM9核心,62MB4主频,搭配DDRII 256内存,支持Android 2.1, 电容屏上可实现多点触摸,分辨率可达1024*768, 支持720P 视频,有3D渲染功能,可实现人脸识别。以蓝魔W9,W11,原道N6,台电T720为代表
Rkxx/Rk2918: Cortex-A8处理器,L2 512KB, 1.2Ghz主频,更好的支持Android 2.3。
赢方威:
IMAPX200: ARM11处理器,1G主频,DDRII 256,代表机型卓尼斯,国美飞触
Telechips:
TCC8902: ARM1176JZF-S 540MHz/720MHz,Linpack 2.3/3.5MFlops(2.1系统)
RAM: 256M DDR2,32bit
高通:
QSD8X50: A8,Scorpion 1GHz,Linpack 7-7.5MFlops(2.1系统);RAM: 256/512M mDDR,32bit
飞思卡尔:
I.MX515:Cortex-A8 800MHz/1GHz;RAM: 256/512M DDR2,32bit
三星:
S5PC110/S5PC210:Cortex-A8 800MHz/1GHz,512K L2,Linpack 8-8.5(1GHz)(2.1系统);RAM: 512M mDDR2,32bit
Nvidia Tegra 2:
Cortex-A9 1GHz双核 + VFP;RAM: 512M/1G DDR2,32bit
德州仪器:
OMAP4430: Cortex-A9 1GHz/1.3GHz双核 + Neon;RAM: 512M/1G+ DDR3,64bit
1.7 GPU
Graphic Processing Unit,图形处理器, 目前,市场上主流的MID平板GPU已形成ARM Mali、PowerVR SGX、高通Adreno、NVIDIA Tegra 2四大系列,并已实现全面升级。
1.7.1 ARM Mali系列,是ARM公司官方为了配合ARM处理器而推出的,目前ARM Mali硬件IP有Mali-55、Mali-200、Mali-300、Mali-400 MP和Mali-T604五款, Mali-400 MP的性能是本系列中最高的,代表产品如音悦汇W10、三星Galaxy S2.
1.7.2 PowerVR SGX系列是Imagination Technologies公司出品,目前市场上是以第五代产品为主打,PowerVR SGX530/535/540/543MP, SGX535被苹果公司的iPhone4和iPad采用;而SGX540性能更加强劲,在三星Galaxy Tab与魅族M9上采用;而SGX543MP作为新一代最强新品,目前已成为苹果iPad 2(SGX543MP2/双核)和索尼NGP(SGX543MP4/四核)的图形内核.
1.7.3 Adreno系列是高通公司出品,主要是用来配合Snapdragon CPU,目前常见的产品有Adreno200/205/220/300, 而Adreno 205是目前的主打型号,性能和SGX540基本相当,同样得到了索爱、HTC等品牌的青睐。
1.7.4 Tegra 2是老牌显卡厂家NVIDIA的力作,其集成的GPU型号虽然不明,但是作为实力强劲的老牌显卡厂家,性能表现的确是一流的,超越了SGX540和Adreno205,在摩托罗拉XOOM、LG G-Slate等产品得以广泛采用,但与新一代SGX543MP相比仍存在一定差距.
四大系列诸强争霸,终归需要对比分析,就目前来说,主流的GPU排名基本是SGX543MP、Tegra 2、SGX540、Adreno205、Mali-400 MP、SGX535、SGX530、Adreno200.
第二部分 软件
1, 认识Android
1.1 Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写.
1.2 版本:
Android 2.1:
Android 2.2: 3D网络共享,Flash支持,全新软件商店,APP2sd功能
Android 2.3: 游戏功能增强,多媒体效果,近场通讯(前置摄像头),UI简化,速度提升。
Android 2.4: 更多的动画特效,速度更快,通讯能力更强
Android 3.0: 2/3日发布,MOTO XOOX首先采用,专门针对平板电脑。
22011年Android布局
2.1 应用内交易系统-类似于苹果
2.1 运营商计费
2.3 社会化
3, Android软件
3.1 https://market.android.com/ 可以下载免费软件使用。
3.2 内置的Google Android Market 可以获取
3.3 Android论坛资源获取
3.4 第三方商城程序
3.5 软件黑市
View Code