loading请求处理中...

基于ARM的嵌入式系统开发流程

2021-12-02 17:38:16 阅读 11800次 标签: 嵌入式系统开发 作者: 陈先生12121

  基于ARM的嵌入式系统开发方案

  1 背景介绍

  在日益信息化的社会中,各种嵌入式系统已经渗透到我们日常生活的每一个角落。嵌入式系统的功能越来越复杂,使得嵌入式系统产品的开发成本从市场需求到项目选择、原型开发、定型、量产越来越多,开发时间越来越长。因此,设计一个高效的嵌入式系统显得尤为重要。

  1.1 传统的嵌入式系统设计方法

  嵌入式系统开发的关键是验证核心部分的功能。传统的验证方法有建模、仿真和目标板评估

  通过建模进行功能验证存在一些不足。首先,耗时和准确性是矛盾的。构建一个高级模型需要很短的时间,但是仿真不够精确。与此相反,低层次模型可以获得满意的评价结果,但建模时间较长。其次,建模和仿真是一个静态的过程,不能很好地反映系统的实际运行情况。好的靶板,各部分连接已固定。如果需要更改连接的一部分,则只能重新设计版本。这样可以大大延长产品的上市时间,增加开发成本。新的嵌入式系统产品在设计之初很难清楚地考虑所有的技术细节。有时在设计时很难对性能指标进行修改。因此,直接生产目标板专用样机并不适合设计复杂的嵌入式系统产品。

  1.2 嵌入式系统模块化设计方法

  嵌入式系统设计要求可测试性、高效性和灵活性。目前,嵌入式系统的物理尺寸越来越小,其功能也越来越复杂。为了便于系统的调试和维护,完整的可测性是极其重要的。另一方面,模块化设计方法也越来越受到重视。模块化设计方法将复杂系统合理地划分为不同的功能模块,然后充分利用现有模块,设计新的模块,最后将这些模块连接起来形成目标系统。模块化设计方法减少了新的设计、开发难度、开发成本和开发时间。它是一种有效的嵌入式系统设计方法。此外,各模块连接的灵活性也非常重要,它直接决定了模块的组合能力。

  2 基于ARM核的快速原型化平台

  嵌入式系统硬件具有以下特点:

  1. 嵌入式硬件以嵌入式处理器为核心。嵌入式处理器的种类很多,具有不同的功能。

  2. 与嵌入式处理器相比,嵌入式系统的外设种类较少,接口标准相对统一。

  3.随着EDA的发展,SOC(单片机系统)得到了越来越广泛的应用。

  2.1 ARM核处理器的特点

  ARM核心处理器以其低成本、低功耗、高性能等优点在嵌入式系统中得到了广泛的应用。ARM核心处理器是一个高度集成的SOC,包括ARM核心和各种外设。图1是基于ARM核心处理器的通用架构。内存控制接口为外部内存提供总线接口。总线接口支持不同类型的存储芯片和不同的存储操作。此外,总线还可以用于扩展外围设备。片内和片外设备包括中断控制器。HTML“target="_blank"controller, OS timer, UART, I2C, PWM, AC97等。在这些片上外设中,有些信号是复用的。这种方法的优点是用户友好。用户只需要配置相应的寄存器就可以将片内和片外设备连接到通用I/O上,这是非常灵活的,例如USB接口的服务器/客户端。有些芯片内外都有特殊的信号。用户通过连接或扩展这些通用的和专用的I/Os来使用片上外设。当片上外设无法实现目标系统的功能时,需要通过总线对专用外设芯片进行扩展。

基于ARM的嵌入式系统开发流程

         图1(arm核处理器框图)

基于ARM的嵌入式系统开发流程

     图2 (ARM核处理器的嵌入式系统的框图)

  2.2 基于ARM的快速原型化平台的实现

  图2是基于ARM核心处理器的嵌入式系统框图。系统分为两部分,一部分是由嵌入式ARM核心处理器和内存组成的最小系统,另一部分是由嵌入式处理器芯片接口直接扩展的外设和通过总线扩展的外设。为了充分利用模块化设计方法,这些部件应该能够通过灵活的互连形成一个平台。通过互连模块实现灵活的互连功能。

  该系统可以对CPLD、FPGA等可编程器件进行编程。修改连接只需要修改相应的控制程序,非常方便灵活。CPLD成本低,运行速度快,但集成度较低。FPGA的高集成度使得CPLD难以实现的复杂逻辑功能,如嵌入式逻辑分析仪程序、获取所需信号、完成系统在线测试等成为可能。FPGA的另一个优点是可以动态配置,例如在系统通电时配置自检程序,在自检通过后配置实际工作程序。最后将CPU软核嵌入到FPGA中进行SOC的开发。因此,可编程互连模块由FPGA组成。

  为了确定可编程互连模块的插入位置,对图2中嵌入式系统的结构进行了分析。

  最小系统决定了整个系统的处理能力,是整个系统的核心。常用嵌入式处理器的时钟周期已经达到400mhz,还将进一步发展。连接处理器的总线速度和存储芯片速度也超过100MHz。FPGA的pin和pin之间的延迟是几纳秒,插入FPGA模块会降低整个系统的处理速度。因此,FPGA模块不能插入处理器和内存之间。外围设备使嵌入式系统能够与实际应用环境进行通信和交互。通常外设是高度模块化和独立的,几乎不需要外设之间有灵活的连接,处理器和外设之间的数据通信速度比最小系统慢得多。因此,用互连模块代替最小系统与外围设备之间的直接物理连接是可行的。

  根据这种思想,设计了一个快速原型平台,如图3所示。

基于ARM的嵌入式系统开发流程

                            图3(快速原型平台)

  在图3中,可编程互连模块是快速原型平台的核心。常用外设有:网卡、USB接口、LVDS接口、RS-232接口、RS-485接口、音频AC ' 97接口、PCMCIA/CF卡接口。这些常见的外围设备是上面提到的可重用模块。因为公共汽车,通用I / O,特殊的I / O和各种外围设备的嵌入式处理器连接到可编程互连模块,不同的嵌入式处理器只需要设计的最小系统,然后连接最小系统到快速原型平台,并使用平台提供的外围设备调试系统。

  上面的快速原型平台设计不仅考虑当前嵌入式硬件系统的发展特点,也就是说,有许多类型的嵌入式处理器,种类相对较少的外围设备,和接口标准往往是统一的,但也充分体现了可测性的设计理念,模块化和灵活性。

  3 随机方向信号的可配置互连

  常见的信号传输方向,无论是单向的还是双向的,都可以预先定义。例如,数据总线是双向的,读写是完全确定的,数据传输的方向可以通过读写信号来控制。但是有一种特殊的总线,例如I2C,它是一种多主/从通信总线。如图4所示,如果设备1启动通信,SCL上的信号传输方向为设备1到设备2。如果设备2启动通信,SCL上的信号传输方向正好相反。在系统设计中,要求信号可以在总线上双向传输。FPGA的内部部分由一系列逻辑门组成。如果I2C信号通过FPGA连接,它将不能正常工作。这是因为双向传输相当于两个反平行门(如图5所示,实际传输方向由方向控制信号决定)。但是,如果没有明确的方向控制信号,I2C信号就不能通过电路o

  基于ARM的嵌入式系统开发流程

       图4(I2C总线)

基于ARM的嵌入式系统开发流程

  图5(双向信号传输)

  如果I2C信号是直接接线或跳线连接,I2C可以正常工作。然而,这与快速原型平台可配置互连的灵活性相悖,因此提出了以下方案。I2C信号通过基于MOSFET的数据交换机连接,而不是使用FPGA配置连接。目前,市场上常用的点对点任意方向MOSFET开关不能直接使用。因为一般的结构是这样的。利用CPLD控制开关,多通道并联连接可形成8X8的点对点随机方向可配置连接。它是数据从一种方式转换为八种方式的内部结构

                                        最齐全嵌入式系统开发攻略

                          

Tag: 嵌入式

开发公司推荐

成为一品威客服务商,百万订单等您来有奖注册中

留言( 展开评论

快速发任务

价格是多少?怎样找到合适的人才?

官方顾问免费为您解答

 
相关任务
DESIGN TASK 更多
嵌入式软硬件设计

¥100000 已有0人投标

数字化档案管理系统开发

¥100000 已有1人投标

单位后勤管理系统开发

¥100000 已有0人投标

瑞幸咖啡代下系统开发

¥5000 已有1人投标

风控系统开发

¥10000 已有14人投标

自助登报系统开发

¥1000 已有1人投标

智能数字点餐系统开发

¥50000 已有16人投标