LPC4357 官方FAQ

/ 0评 / 0

Q NXP的Cortex-M4芯片是双核,M4和M0两个CPU的最高速度分别是多少?两者共享同样的内存和外设资源吗?
A 两个内核均可在高达204MHz的频率下执行,但并不要求两个内核的主频必须相同,可以使用各自的时钟源选择与分频设置。两者可共享片上所有的内存与外设。
Q LPC4300的双核能做什么用?有应用实例吗?
A 可以让M0响应一些高频率的中断,减轻M4的负担,如同一个智能DMA,也可以把一些弱运算强度的工作,如I/O,驱动程序,一些通信协议栈与文件存取交由M0处理。典型的应用包括高精密运动控制,高端嵌入式音频,需要处理许多通道的控制器等。
Q LPC4300双核的调试工具有哪些?怎样使用?
A 使用常规的ARM开发工具,如MDK,EWARM等即可开发,并无特殊要求。如果要同时调试两个内核的程序,同时运行两个开发工具的进程即可。只是要注意需要先让M4运行起来并且使它解除M0的复位状态。另外,在启动调试会话时也不要把整片复位,以免影响另一个内核。
Q 什么叫非对称双核?和对称双核有什么不同?
A 非对称双核中两个内核的编程模型不同,并且两个内核有主核与辅核之分,通常主核的处理能力与规模都高过辅核。辅核常用于协助主核完成一些杂项和I/O工作,也可见于完成某个专项任务。复位后主核开始执行,而辅核要由主核准备好全部执行环境再由主核启动。主核与辅核间一般不运行同一份二进制代码,不需要专用OS的支持。而对称双核的两个内核编程模型完全相同,地位平等,处理能力与规模也相同,需要专门的OS支持。近年来ARM又提出了一种软件上对称,硬件上不对称的bit.LITTLE结构,由两个编程模型相同但不同的内核来实现(Cortex-A7 + Cortex-A15)。
Q LPC4300和LPC1800只是内核不同吗?外设和管脚配置都完全一致?
A 为LPC18xx的映像可以直接在LPC43xx(尾号一致)上运行,但是LPC4300的片上RAM比LPC1800多64KB,并且LPC1800系列没有SGPIO,而LPC4300有
Q SGPIO是什么?和普通的GPIO有什么不同?
A SGPIO是串行GPIO的简称,只要设置好参数就可以根据时钟基准自动按照预设的时序要求,在合适的时间产生一连串正确的电平跳变,无需像GPIO那样全手工操作,这在一定意义上相当于可编程逻辑器件的作用。可用于实现各种自定义的串行总线协议,也可用于无需软件开销地模拟出更多的标准串行外设如UART, SPI等,实现它们无需额外的CPU时间。
Q LPC4300带浮点运算功能吗?
A LPC4300使用的是Cortex-M4F内核,F即代表浮点,带单精度浮点指令集以及专用的浮点寄存器组,这是Cortex-M4内核的可选功能。在C语言里直接使用浮点类型编译器即会自动使用这些指令,在汇编中则要手工编写。在使用前需要手动使能浮点处理单元。
Q 和通用的DSP芯片相比,LPC4300有什么优势?
A 可以使用同一套开发工具,无需再使用MCU+DSP的双芯片方案,流行的ARM架构和强大的ARM生态系统,继承了Cortex-M的强大控制能力。简单地说就是珠联璧合,最适合数字信号控制(DSC)领域
Q LPC4300适合做哪些应用?
A 除了能想到的强大的MCU可胜任的一般应用外,专长是需要乘加运算、SIMD运算,以及浮点运算的应用,多见于图形图像,音频,运动控制,智能控制等
Q 在Cortex-M3上编译好的程序,在Cortex-M4上可以直接运行吗?
A 从内核的视角来看没有任何问题,Cortex-M4对Cortex-M3完全向下兼容;从芯片级的视角来看,LPC43xx可运行相同尾号的LPC18xx的程序,但LPC17xx的不可以。
Q M4要启动M0需要做哪些工作
A M0只能把向量表放到零地址。为此M4需要编程一个专门的地址映射寄存器,把M0映像的入口地址(如有必要有可能拷贝到另外位置)映射为M0的零地址,然后设置另一个寄存器解除M0的复位状态。这两个寄存器都是内存映射的,用起来和普通的外设寄存器并无二致
Q M4与M0的映像是不是要分别烧写?
A 可以使用开发工具提供的目标文件转换功能把M0的映像转换成C语言数组,放到一个C源文件中,并且随M4的工程一起编译链接,这样就把M0的映像嵌入到M4的映像中了,烧写时只需烧写M4的映像。
Q M4的DSP与SIMD功能使用起来容易吗,要使用这些专用的指令是不是只能靠汇编?
A ARM提供一套相当完整的数学库可以使用,有经验的用户也可以使用开发工具提供的指令内在函数手工添加。也有第三方提供的针对M4优化的科学计算库。个别精悍而关键的底层小函数通常都是经过手工汇编优化的,但一般前人都已经做了这些工作
Q NXP的M4 MCU是不是必须得两个一起用?
A 对于LPC4300系列,如果不释放M0,就可以无视它的存在当作单个M4内核的MCU来用。另外,NXP也会提供单个M4内核的产品

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注