ARM11 S3C6410 硬件浮点(VFP)实现

Posted 海王

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARM11 S3C6410 硬件浮点(VFP)实现相关的知识,希望对你有一定的参考价值。

http://blog.csdn.net/liujia2100/article/details/7459683

 

在调试一个代码时,编译能顺利编过。可是,就是不能执行。找了半天才发现,原来是浮点问题。由于6410支持硬件浮点,找了很久,才弄清楚怎么使用硬件浮点。

1.RVDS2.2 选择VFP2
2.在初始化时,配置协处理器来打开和配置浮点部件。


VFPEnable                           EQU        (0x40000000)
;------------------------------------ 
; Enable VFP via Coprocessor Access Control Register 
;------------------------------------ 
    mrc        p15, 0, r0, c1, c0, 2 
    orr         r0, r0, #0x00F00000 
    mcr        p15, 0, r0, c1, c0, 2 
 
;------------------------------------ 
; Add following: SISO added 
; Enable FPEXC enable bit to enable VFP 
;------------------------------------ 
    MOV        r1, #0 
    MCR        p15, 0, r1, c7, c5, 4 
    MOV        r0,#VFPEnable 
    FMXR       FPEXC, r0       ; FPEXC = r0 
    nop 
;    nop 
;    nop 
;    nop 
;    nop 

 
 

以上是关于ARM11 S3C6410 硬件浮点(VFP)实现的主要内容,如果未能解决你的问题,请参考以下文章

硬浮点 VFP

搭建S3C6410开发板的测试环境

搭建S3C6410开发板的测试环境

软浮点硬浮点不配套问题(error:uses VFP register arguments)

搭建S3C6410开发板的测试环境

第五章 搭建S3C6410开发版的测试环境