首页 » 技术文章 » 嵌入式系统的实时数据接口扩展

嵌入式系统的实时数据接口扩展

作者:  时间:2011-09-02 19:04  来源:EDN

  嵌入式系统目前已广泛应用于信息家电、网络通信和工业控制等各个领域。典型的嵌入式系统主要由嵌入式硬件和软件构成,其中硬件部分的核心为嵌入式处理器。与通用处理器相比,其在功耗、体积、成本等方面都受到应用要求的制约。嵌入式系统的软件部分可以像计算机一样使用操作系统,目前已有许多成熟嵌入式操作系统,如VxWorkspSOSNucleusWindows CE 以及嵌入式Linux 等。当然,在一些简单应用中许多嵌入式系统的软件并没有使用操作系统,只有一些循环控制。这样,软件复杂度大大降低,从而减少存储器的容量要求,但是这样的软件在重复使用、网络支持等方面的能力相对较弱。

  ARM系列内核是目前嵌入式处理器中广泛使用的内核。采用ARM内核的处理器具有体积小、功耗低、成本低和性能高的特点。在全球有众多生产ARM内核处理器的厂商。

  Linux是一种很受欢迎的开放源码操作系统,原先被设计应用于桌面系统,后被广泛应用于服务器。由于其开放源码和内核可裁减等特性,Linux逐渐被修改用于嵌入式领域。目前已有多个嵌入式应用的版本,μClinux 是其中的一个分支,最早被设计应用于微控制领域。其最大特征就是没有MMU(内存管理单元),很适合于许多低端的、没有MMU的嵌入式处理器。

  本文设计了一种嵌入式系统用于多媒体实时数据的网络传输。ARM内核处理器与嵌入式 Linux 是目前嵌入式应用中的一种典型组合,选用了 Samsung 公司的1632ARM7TDMI 内核的网络处理器 S3C4510B 为嵌入式硬件核心,μClinux 为操作系统。该系统支持完整的TCPIP协议以及许多其它的网络协议,同时它具有很低的成本。

  1 嵌入式系统的构成

  11 硬件系统

  嵌入式硬件系统主要由 CPUFlash ROMSDRAM、以太网物理层、FIFO以及CPLD等芯片构成,如图1所示。

  (1) CPU

  本系统采用了 ARM7TDMI 内核的 RISC 处理器S3C4510B。该芯片具有如下一些主要特点:

·    81632位的外部总线支持 ROMRAMFlash 存储器、DRAM 和外部IO

·    8K 字节的 Cache

·    一个I2C 接口;

·    一个带 MII 接口的100Mbps10Mbps 以太网控制器;

·    两个 UART 通道;

·    
两个通用 DMA 通道;

·    两个 HDLC 通道;

·    18个通用I0通道;

·    两个32位定时器;

·    共有21个中断源,其中4个用于外部中断;

·    一个内部 PLL 用于提供高频率的系统时钟,最高系统时钟可达50MHz

  由此可见,S3C4510B 很适用于低端的网络设备,如集线器、交换机、家庭网关等。

  (2)Flash ROM SDRAM

  Flash ROM SDRAM 构成了系统的存储空间。其中Flash ROM 作为程序存储器,用于存放操作系统、应用程序等;SDRAM为系统内存。

  (3)以太网物理层和串行接口芯片

  CPU 内部的以太网控制器只提供了MAC(媒体接入控制器),需在外部接一个物理层芯片完成编解码和时钟恢复等功能。串行接口芯片主要完成串行线路接口的电平转换。

  (4)CPLD FIFO

  为了能使系统支持实时数据通信,需要在外设和嵌入式系统的外部总线之间加上 FIFO CPLDFIFO 用于数据缓冲,CPLD 用于产生 FIFO控制逻辑和外部总线控制逻辑。

  12 操作系统

  ARM7TDMI 内核已被众多的嵌入式操作系统所支持,如 VxWorkspSOS Nucleus 等。这些商业化操作系统在网络和用户图形界面等方面都有很好的支持,并且在稳定性和实时性方面都有相应的保证,但其价格也相当高。这里选用了开放源码的嵌入式 Linux,它一般免费或花较少的费用就可得到,同时它在网络和图形界面方面也有很好的支持。另外,嵌入式 Linux 的高度模块化使它可以根据实际应用需要灵活配置,能有效精简内核代码。嵌入式 Linux 具有很高的稳定性。在实时性方面,尽管 Linux 本身未作过多关注,但可通过打实时 Linux(RTLinux)补丁解决。

  针对所采用的 CPU 没有 MMU,选用了目前在嵌入式系统中被广泛使用的μClinuxμClinux 是从标准的Linux 20 内核发展而来的,但其源代码针对典型的嵌入式应用已经作了许多精简和修改,使得其内核比标准的 Linux 内核要小很多,不过它仍然保留了标准 Linux的主要特色。

  目前最新的μClinux 版本已经支持 S3C4510B 及典型开发板,如果所采用的 CPU及开发板没有被支持,应根据实际情况移植。此外,由于在外部总线接了 CPLD FIFO,为了使应用程序能访问它,需要在μClinux 下开发相应的驱动程序。

  2 实时数据接口的扩展

  21 应用要求

  将上述嵌入式系统应用于实时多媒体数据的网络传输,如图2所示。这里的实时多媒体可以是 MPEG-4 MPEG-2 等,其数据流一般是连续、恒定码率的。

相关推荐

从TI“蝗虫战略”到雷军“芯片免费”

芯片  嵌入式系统  2013-11-07

嵌入式系统领域迎来创新与转型时代

嵌入式系统  通信  2013-05-30

VDC:物联网将改写嵌入式系统开发趋势

物联网  嵌入式系统  2013-05-14

多元化整合:PCB抄板搭上尧顺科技顺风车

PCB  CPLD  2013-03-12

Altium与Altera发布全新在线元件资源和软件支持

Altium  FPGA  CPLD  2012-02-15

ARM-Linux嵌入式系统的BootLoader分析与设计

嵌入式系统  Linux  2011-09-19
在线研讨会
焦点