嵌入式面试题-2

常见面试题

  1. 请说说ARM微处理器的特点。⭐⭐⭐

    采用RISC架构的ARM微处理器一般具有如下特点:

    1. 体积小低功耗低成本高性能
    2. 支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;
    3. 大量使用寄存器,指令执行速度更快;
    4. 大多数数据操作都在寄存器中完成;
    5. 寻址方式灵活简单,执行效率高;
    6. 指令长度固定

    除此以外,ARM体系结构还采用了一些特别的技术,在保证高性能的前提下尽量缩小芯片的面积,并降低功耗:

    1. 所有的指令都可根据前面的执行结果决定是否被执行,从而提高指令的执行效率。
    2. 可用加载/存储指令批量传输数据,以提高数据的传输效率。
    3. 可在一条数据处理指令中同时完成逻辑处理和移位处理。
    4. 在循环处理中使用地址的自动增减来提高运行效率。
    5. 支持协处理器来扩展ARM的功能
  2. 请说说你了解哪些ARM系列,都应用在什么地方?⭐⭐⭐

    ARM7、9、11,Cortex系列、SecurCore系列性能各有千秋,被用于不同的领域之中。

  3. SecurCore系列和Cortex系列各自有什么优势?⭐⭐⭐

    1. SecurCore系列:SecurCore系列涵盖了SC100、SC110、SC200和SC210微处理器核。该系列处理器主要针对新兴的安全市场,以一种全新的安全处理器设计为智能卡和其他安全IC开发提供独特的32位系统设计,并具有特定的反伪造方法,从而有助于防止对硬件和软件的盗版。
    2. Cortex系列:Cortex-M3处理能力相当于ARM7,处理器结合了多种突破性技术,令芯片供应商提供超低费用的芯片。该处理器还集成了许多紧耦合系统外设,令系统能满足下一代产品的控制需求。Cortex的优势应该在于低功耗低成本高性能3者(或2者)的结合。
  4. ARM处理器模式有哪几种?简要介绍一下。⭐⭐⭐⭐⭐

    • 用户模式Usr,User Mode):ARM处理器正常的程序执行状态。

    • 快速中断模式FIQ,Fast Interrupt Request Mode):用于高速数据传输或通道处理。当触发快速中断时进入此模式。

    • 外部中断模式IRQ,Interrupt Request Mode):用于通用的中断处理。当触发外部中断时进入此模式。

    • 管理模式Svc,Supervisor Mode):操作系统使用的保护模式。在系统复位或执行软件中断指令SWI时进入。

    • 数据访问中止模式abt,Abort Mode):当数据或指令预取中止时进入该模式,可用于虚拟存储及存储保护。

    • 系统模式sys,System Mode):运行具有特权的操作系统任务。

    • 未定义指令中止模式und,Undefined Mode):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。

    除了用户模式之外,其余六种模式都是特权模式。除了用户模式和系统模式之外,其余五种模式都是异常模式

  5. 说说ARM处理器几种模式切换的过程⭐⭐⭐⭐⭐

    1. 执行软中断(SWI)或复位命令(Reset)指令。如果在用户模式下执行SWI指令,CPU就进入管理(Supervisor)模式。
    2. 有外部中断发生。如果发生了外部中断,CPU就会进入IRQFIQ模式。
    3. CPU执行过程中产生异常。最典型的异常是由于MMU保护所引起的内存访问异常,此时CPU会切换到Abort模式。如果是无效指令,则会进入Undefined模式。
    4. 有一种模式是CPU无法自动进入的,这种模式就是System模式,要进入System模式必须由程序员编写指令来实现。因此一般情况下,操作系统在通过SWI进入Supervisor模式后,做一些操作后,就进入System模式。
  6. 说说嵌入式中断的流程⭐⭐⭐⭐

    IRQ中断和FIQ中断都属于ARM的异常模式。在ARM系统中,一旦有中断发生,不管是外部中断,还是内部中断,正在执行的程序都会停下来。接下来通常会按照如下步骤处理中断:

    1. 保存现场。保存当前的PC值到R14,寄存器R14常用作链接寄存器(LR,Link Register),当进入子程序时,常用来保存PC(Program Counter,程序计数器) 的返回值。保存PC值后,接着保存当前的程序运行状态到SPSR(Storage Program Status Register,程序状态备份寄存器)。

    2. 模式切换。根据发生的中断类型,进入IRQ模式或FIQ模式。

    3. 获取中断源。以异常向量表保存在低地址处为例,若是IRQ中断,则PC指针跳动0x18处(0x18:LDR PC, IRQ_ADDR);若是FIQ中断,则跳到0x1C处(0x1c:LDR PC, FIQ_ADDR)。IRQ和FIQ的异常向量地址处一般保存的是中断服务子程序的地址,所以接下来PC指针跳入中断服务子程序处理中断。

    4. 中断处理。

    5. 中断返回,恢复现场。当完成中断服务子程序后,将SPSR中保存的程序运行状态恢复到CPSR(Current Program Status Register,当前程序状态寄存器)中,R14中保存的被中断程序的地址恢复到PC中,继续执行被中断的程序。

  7. 特权模式有哪些?异常模式有哪些?⭐⭐⭐⭐⭐

    除了用户模式之外,其余六种模式都是特权模式。除了用户模式和系统模式之外,其余五种模式都是异常模式

  8. 说说DMA⭐⭐⭐⭐

    1. 概念

      为I/O使用一种特殊的直接存储器访问(Direct Memory Access,DMA)芯片,它可以直接控制外围设备的数据流,而无需持续的CPU干预。这样效率就很高了,但对应成本就相对高些,因为DMA是由专门的硬件( DMA)控制。

    2. 使用场景

      DMA传送主要用于需要高速大批量数据传送的系统中,以提高数据的吞吐量。如磁盘存取、图像处理、高速数据采集系统、同步通信中的收/发信号等方面应用甚广。通常只有数据流量较大(kBps或者更高)的外设才需要支持DMA能力,这些应用方面典型的例子包括视频、音频和网络接口。

    3. 设置

      因为无需CPU干预,那么DMA要进行数据传输就必须有两个条件:数据从

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

<p> - 本专刊适合于C/C++已经入门的学生或人士,有一定的编程基础。 - 本专刊适合于互联网C++软件开发、嵌入式软件求职的学生或人士。 - 本专刊囊括了C语言、C++、操作系统、计算机网络、嵌入式、算法与数据结构等一系列知识点的讲解,并且最后总结出了高频面试考点(附有答案)共近400道,知识点讲解全面。不仅如此,教程还讲解了简历制作、笔试面试准备、面试技巧等内容。 </p> <p> <br /> </p>

全部评论

相关推荐

2024-11-08 16:53
门头沟学院 C++
投票
滑模小马达:第三个如果是qfqc感觉还行,我签的qfkj搞电机的,违约金也很高,但公司感觉还可以,听说之前开过一个试用转正的应届生,仅供参考。
点赞 评论 收藏
分享
评论
点赞
4
分享
牛客网
牛客企业服务