现在用cortex a9,和arm-eabi-gcc 编译一段数学运算,其中有乘除和sqrt,编译选项 -mfpu=vfpv3 -mfloat-abi=softfp,看了反汇编,已经有 vmul,vdiv 这些浮点指令了,但是 sqrt 却是调用的 sqrt 函数,没有生成 vsqrt 指令。然后-O1 优化之后,才生成了 vsqrt 指令。这是怎么回事?
为什么乘除的浮点指令都生成了,而sqrt 却只能在打开优化才能生成vsqrt?
另外,arm gcc 的 -O1 选项都打开那些优化了?
现在用cortex a9,和arm-eabi-gcc 编译一段数学运算,其中有乘除和sqrt,编译选项 -mfpu=vfpv3 -mfloat-abi=softfp,看了反汇编,已经有 vmul,vdiv 这些浮点指令了,但是 sqrt 却是调用的 sqrt 函数,没有生成 vsqrt 指令。然后-O1 优化之后,才生成了 vsqrt 指令。这是怎么回事?
为什么乘除的浮点指令都生成了,而sqrt 却只能在打开优化才能生成vsqrt?
另外,arm gcc 的 -O1 选项都打开那些优化了?
现在用cortex a9,和arm-eabi-gcc 编译一段数学运算,其中有乘除和sqrt,编译选项 -mfpu=vfpv3 -mfloat-abi=softfp,看了反汇编,已经有 vmul,vdiv 这些浮点指令了,但是 sqrt 却是调用的 sqrt 函数,没有生成 vsqrt 指令。然后-O1 优化之后,才生成了 vsqrt 指令。这是怎么回事?
为什么乘除的浮点指令都生成了,而sqrt 却只能在打开优化才能生成vsqrt?
另外,arm gcc 的 -O1 选项都打开那些优化了?
我现在正从事嵌入式系统开发的工作,为ARM-based ASIC开发固件(包括ROM部分)。整个工程不是从零开始的,是基于前辈的代码,所以大部分时候即使用到ARM的某些特性只要做局部的学习就好。现在新一代产品需要从ARM Cortex-A9移植到A7,发现缺乏对ARM架构的系统学习很大程度上限制了工作的开展。每次遇到问题也都去查阅TRM以及架构manual,但是经常因为知识的不足得不到一个完整的答案。我想向您请教下,是否有推荐的书籍或者课程可以帮助我系统的学习?如果说官方的TRM和Architechture…

2016年2月24日,北京讯——ARM针对下一代嵌入式产品推出ARM® Cortex®-A32,为超高能效应用处理器系列再添新成员。Cortex-A32处理器采用ARMv8-A架构,赋予功耗有限的32位嵌入式应用更多优势。相较其他同类处理器,Cortex-A32拥有最小体积和最佳的能效表现。
ARM 处理器部门总经理James McNiven表示:“ARM提供无与伦比的处理器产品组合,能驱动数十亿计的超高能效嵌入式设备。Cortex-A32处…
最近搞飞思卡尔iMX6 4核A9处理器,有几个问题要请教下:
1、每个核都是有一套独立的指令寄存器吧,问题来了,PC寄存器和一些状态寄存器是否也是独立的?
2、在裸机开发的情况下,怎么获取当前的代码运行在哪个核上面?
3、如果在多核处理器上面实现一个longjmp应如何实现?longjmp只能实现核内长跳吗?
4、核处于关闭状态,来一中断后,是所有核都唤醒还是只有其中一个?核被关闭后,然后被唤醒,需要重新初始化核的PLL等那些参数吗?standby状态与其他两关闭状态主要区别在哪?
5、中断发生后,哪个核要进行中断服务处理是程序员事件还是硬件事件…
大家好,
我在A15上编写汇编,发现A8 和A9 Technical Reference Manual 中有一章是将Instruction Cycle Timing,但是在A15的Technical Reference Manual 中没有找到,想问下A8,A9,A15 的ARM指令集的 Instruction Cycle Timing 是一样的吗?
另外,关于neon的 Instruction Cycle Timing 我也只在A8手册Technical Reference Manual 中看到,A8…
Cortex A5 MPcore寄存器TPIDRPRW复位值不为零,造成Linux Kernel不能启动的问题。
由于Linux Kernel内核配置使能了CONFIG_TRACE_IRQFLAGS,内核在跟踪关闭硬件中断行为时(trace_hardirqs_off_caller()),调用内核中__my_cpu_offset()(以汇编指令mrc p15, 0, r2, c13, c0, 4实现)以获取寄存器TPIDRPRW的值来获取当前线程/进程信息时…
hi, experts:
以Cortex-A7 CPU为例:
如果在程序执行过程中:发生了一个Asynchrous External Data Abort,它会很快进入Data Abort handler吗?
(Synchrous Data Abort会立即进入Data Abort handler.)
不清楚Asynchrous external data abort,什么时候才会进入Data abort handler!
best wishes,
hi, experts:
CA57 TRM说:
它只包含GIC CPU Interface。
请教2个问题:
1. CA57的SOC,需要另外集成GIC-400 IP吗?
2. GIC-400里的GIC CPU Interface会和CA57的各个Core对应的GIC CPU Interface连接吗?
best wishes,
在cortex a7上看到PoC和PoU的概念如下:
PoC: the PoC is the point at which all blocks, for example, cores, DSPs, or DMA engines, that canaccess memory are guaranteed to see the same copy of a memory location.
PoU: the PoU for a core is the point at which the instruction…