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

发布者:诚信与爱最新更新时间:2013-04-12 来源: dzsc关键字:嵌入式系统  实时数据  接口扩展  S3C4510B 手机看文章 扫描二维码
随时随地手机看文章

嵌入式系统目前已广泛应用于信息家电、网络通信和工业控制等各个领域。典型的嵌入式系统主要由嵌入式硬件和软件构成,其中硬件部分的核心为嵌入式处理器。

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

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

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

  1 嵌入式系统的构成

  1.1 硬件系统

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

嵌入式硬件系统框图

  (1) CPU

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

  8/16/32位的外部总线支持 ROM、RAM、Flash 存储器、DRAM 和外部I/O;

  8K 字节的 Cache;

  一个I2C 接口;

  一个带 MII 接口的100Mbps/10Mbps 以太网控制器;

  两个 UART 通道;

  两个通用 DMA 通道;

  两个 HDLC 通道;

  18个通用I/0通道;

  两个32位定时器;

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

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

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

  (2)Flash ROM 和 SDRAM

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

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

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

  (4)CPLD 和 FIFO

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

  1.2 操作系统

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

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

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

2 实时数据接口的扩展

 2.1 应用要求

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

  2.2 硬件扩展

  根据上述数据流的特点,需在嵌入式系统与外设(编、解码器)之间加入数据缓冲控制单元。对于发送端和接收端,数据缓冲控制单元的设计有所不同,下面以MPEG-2 为例说明。这里考虑系统的处理能力、网络的承受能力以及图像质量,MPEG-2 的输出为 4Mbps 的CBR(固定比特率)TS流。

  2.2.1 发送端

  编码器送出连续、恒定速率的码流。如果将此码流直接送到 CPU 外部总线,将会导致操作系统频繁地处理中断,甚至会产生中断不能及时处理从而导致数据丢失。因此,有必要在编码器与外部总线之间加上 FIFO,同时用 CPLD 实现 FIFO 的读写控制逻辑。编码器送出的数据流连续不断地以恒定速率写入FIFO;当FIFO中的数据积聚到一定值后,每写入若干个数据就向CPU发一个中断;CPU在收到中断后通过外部总线读入相当量的数据,并将其打包送入网络。正常情况下,每个中断读数据个数是一定的,在一段时间内FIFO写入和读出将维持平衡,且不会产生“饥饿”状态;当操作系统因处理别的任务而没有及时响应中断时,FIFO将暂时进入“饱和”状态,但只要FIFO容量足够大就不会产生数据溢出现象。由于CPU从FIFO读取单位数据的速度大大高于外设向FIFO写单位数据的速度,“饱和”状态一般能消除。由此,可以解决前述问题。

  2.2.2 接收端

  在接收端,由于解码器的输入要求是一个连续、恒定速率的码流,同样要求在CPU外部总线与编码器之间加上FIFO和CPLD。同时,接收端的数据包由于经过了网络,不可避免地会引入延时,且数据包之间的延时是不确定的,甚至会产生数据包的丢失。这些都需要在接收端予以考虑,增加了接收端数据缓冲控制单元的复杂度。

  为了解决数据包到达延时及抖动问题(数据包的丢失将间接导致延时的增加),可以简单地靠增大FIFO容量解决。但增大FIFO将意味着从编码器到解码器之间延时的增加,影响了实时性。因此,为了保证一定的实时性,同时考虑成本因素,不能单纯靠增大FIFO解决。

  由于FIFO容量的限制,在出现大延时的情况下,FIFO将可能出现“空”状态。这意味着送给解码器的数据流会有中断,从而可能导致解码器的不正常工作并可能不能恢复(在数据流恢复正常后)。为此,需要在FIFO出现“空”状态之前,即处于“饥饿”状态时(可以设置一个阈值),由CPLD停止向FIFO读数据而向解码器发填充包。填充包中含有同步头,可以维持解码器的同步。短时间的插空包会使视频图像出现马赛克,如果时间过长,可能会出现黑屏。在实际试验中,接收端视频的质量与网络的负载情况有关。当网络负载较重时,图像会出现马赛克,黑屏现象一般极少发生。

  2.3 驱动程序

  为了使μClinux下的应用程序能通过外部总线访问FIFO,需要编写相应的驱动程序。驱动程序主要包括三个基本部分,即CPU相关寄存器的初始化设置以及CPU对外部I/O口的读操作和写操作。其中,初始化设置主要包括中断号及其类型设置、外部I/O口数据位宽度和读写时序设置等。

关键字:嵌入式系统  实时数据  接口扩展  S3C4510B 引用地址:嵌入式系统的实时数据接口扩展

上一篇:基于S3C2410的WLAN智能住宅控制终端的设计
下一篇:一种基于嵌入式系统和Internet的FPGA动态配置方案

推荐阅读最新更新时间:2024-03-16 13:21

基于S3C4510B微处理器和操作系统实现网络通信工程的编写设计
Linux是一种很受欢迎的操作系统,与UNIX系统兼容,开放源代码。它原本被设计为桌面系统,现在广泛应用于嵌入式设备。uCLinux正是在这种氛围下产生的。在uCLinux这个英文单词中,u表示Micro,是“小”的意思;C表示Control,是“控制”的意思,所以uCLinux就是Micro-Control-Linux,字面上的理解就是“针对微控制领域而设计的Linux系统”。它也是针对无MMU(内存管理单元模块)的微处理器设计的操作系统。S3C4510B就是属于该类的微处理器。 Samsung公司的S3C4510B是基于以太网应用系统高性价比16/32位RISC微控制器,内含一个由ARM公司设计16/32位ARM7TDMI
[单片机]
基于<font color='red'>S3C4510B</font>微处理器和操作系统实现网络通信工程的编写设计
DSP器件为核心的嵌入式系统技术
    摘要: 以DSP为信心的嵌入式系统具有实时性、利于并行处理等优点,这也是嵌入式系统中的重要技术。本文在讨论嵌入系统基本技术特征的基础上,比较详尽地介绍了DSP嵌入式系统的基本结构和技术特征,并对应用特性进行了讨论。     关键词: 嵌入式系统 DSP 嵌入式系统的目的是提供一个以多任务和网络为信心,易于开发的复杂数字系统。从数字技术和信息技术的角度看,嵌入式系统已成为现代信息网络技术应用的基础技术,已成为现代工控领域的基本技术。 使用嵌入式系统技术,不仅可以实现硬件和软件的优化集成,更主要的是提供了使用“数字基因技术”的基本工具。从计算机和信息网络技术发展的角度看,嵌入式系统标志着网络化计算机时
[嵌入式]
基于嵌入式系统的多媒体控制前台设计分析
  系统的应用场合及意义   在一个大型会议系统或多媒体电教室系统中往往通过中央控制系统,实现整个系统的集中控制。点击LCD触摸屏,就能实现各种视像信号的快速切换(视频信号、电脑信号)、灯光系统的调光或自动快速模式设定,以及各种音响系统调节,摄像、监控、大屏幕投放、窗帘收放等一系列功能的程序化控制。   这里的中央控制系统实际上是由一个带处理器的智能控制平台和带多媒体设备接口的多路继电器组成,前台控制器可以设计成固定的台式模式,也可以设计成便于携带的手持设备,它往往是通过无线方式控制多路继电器主机,进而控制各种多媒体设备的开关及运行。嵌入式系统的发展为这一媒体控制器提供了一个可靠的平台,而嵌入式处理器的更新换代则意味着这个平台
[单片机]
基于<font color='red'>嵌入式系统</font>的多媒体控制前台设计分析
嵌入式系统在电源设计中的运用
  引言   在如今的信息时代,由于人们对系统性能和成本控制要求的不断提高,嵌入式系统凭其优良的性价比和独特的便利性得到了越来越多的人们的青睐。本文以基于AT91RM9200的嵌入式控制系统为例,重点分析系统电源电路的设计思路、方法以及系统电源的安装与调试过程,结合调试过程中碰到的问题,对嵌入式系统电路的调试方法及注意事项进行了分析。随着嵌入式系统的广泛应用,电源电路的设计与调试尤为重要,本文的设计与调试思路值得借鉴。   1 系统硬件结构   在基于嵌入式系统的焊接机控制系统设计中,以AT91RM9200作为系统核心微处理器,依据控制系统要求外扩了SDRAM、SRAM、Flash,键盘、液晶显示电路可进行实时参数调整、显示并
[单片机]
<font color='red'>嵌入式系统</font>在电源设计中的运用
嵌入式系统关键技术
摘要:基于嵌入式系统的概念,阐述嵌入式系统的关键技术、嵌入式开发以及广泛的应用。首先,分析嵌入式系统的技术特点,分别从嵌入式处理器和嵌入式操作系统两方面介绍,着重说明它不同于其它操作系统的一些处理方法和过程;在此基础上阐述嵌入式软件的开发过程,并结合作者嵌入式软件开发的实践,着重阐述嵌入式软件的一些开发技巧。接着,介绍目前嵌入式系统一些流行的应用,以及南京东大移动互联技术有限公司自行研制的基于蓝牙技术的嵌入式产品。最后,给出作者的体会,展望嵌入式系统的前景。 关键词:嵌入式系统 嵌入式处理器 微内核 内存管理单元 蓝牙系统 引 言   在当前数字信息技术和网络技术高速发展的后PC(Post-PC)时代,嵌入式系统已经广泛地渗透到科学
[嵌入式]
罗德与施瓦茨从生产到研发测试的全面解决方案
2016中国(上海)电子展将于2016年11月08-10日在上海新国际博览中心举办。本次上海电子展主要展示各种关键电子器件,光电器件、高性能集成电路、电源模块、电池、嵌入式系统、电子材料、电子基础装备、电子工具、电子测量仪器及工控自动测试系统以及消费类产品,全面展示电子领域最先进的产品和技术。 罗德与施瓦茨公司(Rohde & Schwarz,R&S)作为全球最大的电子和无线移动通信测试设备厂商之一,将在本次展会联合上海本地分销商上海咏绎电子仪器仪表有限公司全面展示其领先的电子,通信,半导体测试产品和解决方案。此次展会,R&S公司共推出8个参展主题方案: 示波器的艺术-时域、频域、多域联合分析:RTE数字示波器,RT0数字
[测试测量]
三菱电机携17款TFT液晶模块亮相国际嵌入式系统
三菱电机将携17款彩色工业用TFT液晶模块产品,亮相于8月24日至26日在深圳举行的第五届深圳国际嵌入式系统展(Embedded Expo 2016)。三菱电机将围绕医疗设备、工程机械、电梯、ATM/POS机、充电桩和船舶六大应用领域为客户推介优质产品。   在本次展会上,三菱电机将重点推介为工程机械而设计的坚固型系列产品、为影视和手持设备提供的小型轻薄型系列产品、以及能满足户外使用的高性能触摸屏等新产品。   耐振动及耐温度TFT液晶屏适合工程机械 在工程机械应用范围中,由于建筑机械及农业机械均在恶劣环境下工作,其显示器所采用的液晶模块,必须能承受超强劲的机械性振动,以及抵受严酷的室外气温,三菱电机为此特别设计了坚固型
[嵌入式]
基于接口芯片8255的扩展方法解析
一般说来,可编程接口芯片都有存储器及地址线,所谓可编程就是指CPU用指令将某数据写入接口芯片的某个存储器,接口芯片在接到CPU送来的数据后,自动翻译该数据,然后执行该数据所代表的动作。 不同的CPU对接口芯片的处理方式不同,某些CPU将接口芯片的存储器和CPU本身使用的存储器区别对待,将对接口芯片存储器的操作称为I/O操作,而对CPU本身使用存储器的操作称为存储器操作,并且I/O操作和存储器操作使用不同的指令,这种方式叫I/O端口的独立编址方式。 这种方式的优点是I/O端口不占用存储器的地址空间,存储器空间和I/O空间独立 ,缺点是CPU中要单独设置I/O端口访问指令,增加CPU的复杂度,INTEL公司的8086系列就是采
[单片机]
基于<font color='red'>接口</font>芯片8255的<font color='red'>扩展</font>方法解析
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved