关于S3C2440de6410的CPU,关于FPU方面的配置
2014-06-30 00:01
127 查看
http://www.crifan.com/find_s3c6410_march_macpu_mtune_mfpu_mfloat_abi/
【背景】
看到有人问关于S3C2440de6410的CPU,关于FPU方面的配置。
现去查找整理一下。
【折腾过程】
1.关于crosstool-ng中的-march,-mcpu,-mtune的配置,可参考:
crosstool-ng中的配置参数:Architecture level, Emit assembly for CPU, Tune for CPU
2.关于-mfpu的配置可参考:
crosstool-ng中的配置参数:浮点处理单元FPU
3.现在去研究S3C6410中的核心参数是啥:
先去搜:
s3c6410 vfp
找到:
http://www.samsung.com/global/business/semiconductor/file/media/s3c6410_datasheet_200804-0.pdf
可知:
s3c6410的内核是:
ARM1176ZJF 533/667MHz VFP/SIMD
4.而对于ARM1176ZJF,对应的再去搜:
ARM1176 vfp
找到:
1.4.2. Vector Floating-Point (VFP)
中的:
以及:
http://www.arm.com/zh/products/processors/classic/arm11/arm1176.php
找到:
和:
ARM 浮点架构 (VFP)
中的:
5.其他一些参考资料:
http://en.wikipedia.org/wiki/List_of_Samsung_System_on_a_Chip
中的:
【总结】
1.S3C6410内核是ARM1176ZJF
2.ARM11的内核是ARMv6架构
3.ARM1176ZJF的ARMv6中用的FPU是VFPv2
对应着:
gcc中的选项是:
参考:
3.17.3 ARM Options
中的:
-march=armv6
-mcpu=arm1176jzf-s
-mtune=[b]s3c6410[/b]
或者是:
(参考:[Clfs-support] Target specific options…)
-mtune=arm1176jzf-s
对应fpu的配置,应该是:
(由于3.17.3 ARM Options中没有看到vfpv2,而且网上搜
-[b]mfpu=vfp[/b]
在另外,应该是:
-mfloat-abi=hard
或:
(参考:Android.mk)
-mfloat-abi=softfp
即可。
【背景】
看到有人问关于S3C2440de6410的CPU,关于FPU方面的配置。
现去查找整理一下。
【折腾过程】
1.关于crosstool-ng中的-march,-mcpu,-mtune的配置,可参考:
crosstool-ng中的配置参数:Architecture level, Emit assembly for CPU, Tune for CPU
2.关于-mfpu的配置可参考:
crosstool-ng中的配置参数:浮点处理单元FPU
3.现在去研究S3C6410中的核心参数是啥:
先去搜:
s3c6410 vfp
找到:
http://www.samsung.com/global/business/semiconductor/file/media/s3c6410_datasheet_200804-0.pdf
可知:
s3c6410的内核是:
ARM1176ZJF 533/667MHz VFP/SIMD
4.而对于ARM1176ZJF,对应的再去搜:
ARM1176 vfp
找到:
1.4.2. Vector Floating-Point (VFP)
中的:
The VFP implements the ARM VFPv2 floating-point coprocessor instruction set. |
http://www.arm.com/zh/products/processors/classic/arm11/arm1176.php
找到:
ARM1176 架构 ARMv6 Dhrystone 性能 1.25 DMPS/MHz 多核 否 – 仅单核 ISA 支持 ARM Thumb® Jazelle® DBX DSP 扩展 浮点单元(可选) 内存管理 内存管理单元 调试和跟踪 用于 ARM11 的 CoreSight™ 设计工具包(单独提供) |
ARM 浮点架构 (VFP)
中的:
VFP 架构版本在 ARMv7 架构之前,VFP 代表用于矢量运算的矢量浮点架构。对于许多应用来说,设置硬件浮点至关重要,并且硬件浮点可用作使用高级设计工具(如 MatLab、MATRIXx 和 LabVIEW)直接对系统建模和派生应用程序代码的片上系统 (SoC) 设计流程的一部分。在与NEON™ 多媒体处理功能结合使用时,可增强图像应用程序的性能(如缩放、2D 和 3D 转换、字体生成和数字过滤)。 迄今为止,VFP 主要有三个版本: VFPv1 已废弃。要获取详细信息,可向 ARM 发送相关请求。 VFPv2 是对 ARMv5TE、ARMv5TEJ 和 ARMv6 架构中 ARM 指令集的可选扩展。 VFPv3 是对 ARMv7-A 和 ARMv7-R 配置文件中 ARM、 Thumb®® 和 ThumbEE 指令集的可选扩展。可使用 32 个或 16 个双字长寄存器实现 VFPv3。术语 VFPv3-D32 和 VFPv3-D16 用于区别这两个实现选项。扩展 VFPv3 使用半精度扩展,可在半精度浮点和单精度浮点之间提供双向转换功能。 |
http://en.wikipedia.org/wiki/List_of_Samsung_System_on_a_Chip
中的:
|
1.S3C6410内核是ARM1176ZJF
2.ARM11的内核是ARMv6架构
3.ARM1176ZJF的ARMv6中用的FPU是VFPv2
对应着:
gcc中的选项是:
参考:
3.17.3 ARM Options
中的:
-march=armv6
-mcpu=arm1176jzf-s
-mtune=[b]s3c6410[/b]
或者是:
(参考:[Clfs-support] Target specific options…)
-mtune=arm1176jzf-s
对应fpu的配置,应该是:
(由于3.17.3 ARM Options中没有看到vfpv2,而且网上搜
-[b]mfpu=vfp[/b]
在另外,应该是:
-mfloat-abi=hard
或:
(参考:Android.mk)
-mfloat-abi=softfp
即可。
相关文章推荐
- 关于NA阶段的路由器方面的配置大致总和实验
- AS3.0 五子棋关于AI思想方面分析以及Cocos2d-x环境变量配置
- .Net 2.0 中关于配置方面的文章
- nova虚拟机的CPU配置-关于sockets,cores,threads的限制
- 【美瞳控】全面解析关于WWW服务器的配置方面问题
- 关于Spring+Quartz方面问题,请帮我解答下,在Spirng配置后一直报错
- 关于在配置web ssltossl有关证书方面必须注意的问题。
- 关于 Slackware 9.1.0 系统配置防火墙和NAT功能的配置说明
- 关于配置证书服务器,和自己颁发企业证书
- 关于Pentium CPU的Q&A
- 关于java的各种配置问题
- 关于CNDotText的配置
- 关于Oracle数据库的用户对象配置以及数据镜像的总结--转载于项目组周朝勇笔记
- 关于SSL配置的报告
- 关于打印的其他方面(收集)
- 关于程序集配置文件(App.config)的问题
- 关于路由器cpu利用率过高的解决
- 24个关于Install/Setup方面非常实用的函数
- 关于php4调用javabean的例子()和具体配置(转)