0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于MPC823微处理器和Linux实现视频网络接入终端的设计

电子设计 来源:现代电子技术 作者:冀朝晖;冀中笑 2021-05-22 09:20 次阅读

1 引 言

世界已经进入了Internet时代,嵌入式系统接入Internet已成为网络接入重要的基础信息设施。嵌入式的网络接人设备系统广泛应用在工业控制系统中、交通监控系统、银行证券操作与安全监控、智能仪器、安防系统、智能家电和信息家电等领域,我们将嵌入式设备与视频的结合称为嵌入式的视频接入设备。本文介绍了视频网络接入终端的开发方法。

视频网络接人终端可将经H.261或MPEGl编码器压缩后的视频信号直接以多播的方式送上局域网(10M/100M以太网)。每台视频网络接人设备都具有独立的IP地址,可单独作为视频服务器向局域网上多播视频数据,客户端可通过加入不同的多播组接收来自不同的视频网络接人设备的视频数据。特权用户可通过网络控制各视频网络接人设备以及其下挂的视频切换箱、云台控制器并最终控制云台的动作。

2 嵌入式视频网络接入终端的系统硬件部分

2.1 嵌入式视频网络接入终端硬件基本要求

为完成该设计目标,该硬件平台应具有以下功能特点:

(1)处理器处理能力较强、接口丰富。由于TCP/IP的协议将占用大量的系统资源,各种通信协议对计算机的存储器、运算器的速度要求比较高。

(2)处理器结构应当支持虚拟存储器,以便于移植操作系统

(3)必须提供以太网接口,视频信号输入接口(该部分可参考现有的图像卡)以及控制接口。为实现多播,必须有网络功能强大的操作系统。

(4)必须提供控制接口,可对云台控制器等设备进行控制。

根据以上要求,处理器选用Motorola的PowerPC823。他内部集成了微处理器和常用外围组件,提供了更高的性价比。

2.2 MPC823的功能详述

MPC823微处理器是一个MPC821内核多用途的通用芯片,他内部集成了微处理器和常用外围组件,可用于各种控制领域。MPC823集成了嵌入式PowerPC核和一个为通信使用的专门的RISC的通信处理器模块(CPM),由于CPM分担了嵌入式PowerPC核的外围工作任务,这种双处理器体系结构比传统体系结构的处理器具有更高的效率,硬件原理如图1所示。

图1中,视频接口(Video Interface)完成输入的E1或422视频数据流的解帧、串并转换、缓冲然后送到系统总线上供MPC823读取。MPC823内集成了符合IEEE802.3标准的通信控制器,外接以太网收发器Ethernet Transceiver)即可完成以太网全部通信子网层功能。网络层和传输层功能由Linux操作系统来完成。操作系统及应用程序都存储在FLASH中,并在DRAM中运行。串口(RS232Control Interface)完成同其他设备通信、控制功能。电源(Power Supply)为整个设备供电。经过我们实践证明,此方案的性能价格比较高,外围电路简捷,符合发展潮流SOC(System On Chip)。

3 视频网络接入终端软件部分

3.1 嵌入式视频网络接入终端软件平台

接人设备软件包括应用软件和系统软件,由于CPU的功能强大,系统资源的极其丰富,十分需要一个功能强大的操作系统来管理系统资源;操作的可靠性提高。

嵌入式Linux由于代码开放性以及强大的网络功能,在中低端的嵌入式网络设备中应用起来。在移植的Linux源代码,根据目标进行半剪裁定制,以适合目标系统,尽量少占用内存。操作系统定制后,将其连接到目标的应用程序上,成为应用程序的一部分。并对低级系统的初始化文件进行修改,使之符合目标版的需要。 由于视频网络接人终端需要采用组播方式传数据上网,需要一个网络功能比较强大和完善的操作系统。目前用于嵌入式设备的有许多操作系统,如商业操作系统PSOS,VXWORKS,WINCE等,免费操作系统如Linux,UCOS,ECOS等。商业操作系统固然功能强大,但是同时价格非常昂贵,而且比较复杂;免费操作系统中,UCOS较为简单,但是他只有一个核心,如要加上网络功能,还需要另外购买协议栈;ECOS功能比较全,实时性也很好,但是其网络部分不够完善,目前还不支持组播;Linux是一个网络操作系统,稳定而强大,而且源代码完全公开。

综上所述,最终选择了Linux作为我们的嵌入式操作系统。

3.2 嵌入式的视频网络接入终端软件的基本结构

视频网络接人终端软件分为2部分,即应用软件的编制和系统软件的编制,包括编写底层的软件设备的驱动程序和Linux网络编程和系统的测试程序。与在PC环境下开发大体类似,因此初期开发工作在PC机上进行模拟,硬件平台成型之后,我们把程序移植到接人设备上。

4 接入部分的设计

4.1 MPEGl视频接入部分

MPEGl编码板提供的是8b的并行数据总线以及写信号,由于编码板上接口处理器MCS51和系统的主处理器MPC823都是主动工作方式,不能直接互连,必须经过FIFO来协调,同时,FIFO在这里也起到缓冲视频数据的作用。采用IDT公司的IDT7204或CYPRESS公司的CY7C433(4k深,9 b并行异步FIFO)。为了隔离视频、音频、以及其他外围电路对总线的影响,还需要用总线缓冲器。考虑到电路的其他部分都用到了TI公司的LX245八位双向总线收发器,为了节省成本、减少芯片采购种类,这里我们也用该芯片来替代。

这部分电路的工作过程是:编码板将8b并行的压缩视频数据不断地写入FIFO,当FIFO达到半满,产生中断,通过系统的中断信号线IRQl传给主处理器,再由相应的视频接人驱动程序去读取。这部分电路不仅能接人MPEGl视频数据,任何8b宽的数据都可以接人。所以在今后开发其他编码方式时,只要接口相同,这部分电路和驱动程序不需要做任何改动,保持了向后的兼容性。结构图如2所示。

基于MPC823微处理器和Linux实现视频网络接入终端的设计

4.2 音频编解码部分

音频编解码采用Motorola公司的MCl45567芯片,该芯片提供双向模拟音频接口,能够根据ITU-T的G.71l描述的算法提供标准的A律PCM音频编解码,其音频速率为64kb/s。考虑到成本和体积,在音频输入输出接口处没有提供功率放大器。因此,在工程应用中必须在音频播放端加外置功放。

4.3 音频数据控制、处理部分

音频数据控制、处理在CPLDAltera公司的MAX3064ACTl00-10)中实现,该部分主要有4部分:

(1)时钟部分

将外部输入的2.048MHz的时钟信号分出2个64k时隙,其中一个时隙用于音频输入,另一个用于音频输出。

(2)上行音频部分

将经MCl45567编码的串行音频数据转换成8b宽的并行数据并写入音频上行FIFO。

(3)下行音频部分

将音频下行FIFO中的8b宽的并行音频数据读入,转换成串行信号并在相应的时隙内写入MCl45567。 (4)总线控制部分

提供总线控制信号线的逻辑转换。

4.4 音频总线接口部分

音频总线接口包括音频上行FIFO、音频下行FIFO和总线收发器3部分。音频上下行FIFO采用CYPRESS公司的CY7C421(9 b宽,512 b深异步FIFO)。总线收发器采用TI公司的LX245八位双向总线收发器。总线接口为中断触发的读写工作模式。由系统的片选6(CS6)来选中音频接口,RD/WR控制数据的传输方向,OE、WE配合CS6对相应的FIFO进行读写。整个工作过程是这样的:当上行FIFO被CPLD写至半满时,产生中断,通过中断信号线IRQ2传给系统,通知驱动程序将数据读走;当下行FIFO的数据被CPLD读至半空时,也产生中断,通过中断信号线IRQ7传给系统,通知驱动程序将下一块音频数据写入下行FIFO。

所有以上这些控制信号线的逻辑组合都是在CPLD的总线控制部分完成的。

5 结 语

随着网络技术的突飞猛进,32b处理器价格的下降,使用PowerPC823开发具有独立IP地址的视频网络接人终端的研制成为可能。目前,视频网络接人终端已在2002年6月应用于南阳市道路交通的监控,经过高温(60°)、高湿度、雷电的考验运行稳定良好,具有广泛的推广价值。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5056

    文章

    18955

    浏览量

    301680
  • Linux
    +关注

    关注

    87

    文章

    11196

    浏览量

    208670
  • 微处理器
    +关注

    关注

    11

    文章

    2242

    浏览量

    82251
收藏 人收藏

    评论

    相关推荐

    TMS320C6000扩展总线与MPC860微处理器接口

    本应用指南描述了实现德克萨斯仪器TMS320C6000 DSP扩展总线与摩托罗拉MPC860微处理器接口的方法。
    发表于 09-23 17:04

    摩托罗拉MPC 5XX微处理器的仿真和分析解决方案

    摩托罗拉MPC 5XX微处理器的仿真和分析解决方案
    发表于 03-28 11:00

    摩托罗拉MPC 8XX微处理器的仿真和分析解决方案

    摩托罗拉MPC 8XX微处理器的仿真和分析解决方案
    发表于 04-25 16:34

    嵌入式微处理器MPC860包括哪些部分?

    MPC860PowerQUICC是当今比较流行、性能相当优越的单片集成嵌入式微处理器。它内部集成了微处理器和一些控制领域的常用外围组件,特别适用于互联网络和数据通信。PowerQUIC
    发表于 10-16 07:30

    网络存储NAS系统嵌入式微处理器怎么实现

    介绍网络存储NAS系统的设计,以及把ARM9微处理器和源码开放的嵌入式Linux操作系统应用在网络存储领域,构建一个附网络存储NAS系统,拓
    发表于 04-13 07:08

    请问MPC823MPC823E是否引脚兼容?

    MPC823MPC823E 是否引脚兼容?或者不同的家庭会有不同的管脚排列?
    发表于 03-23 08:44

    MPC8250 处理器及其在宽带接入中的应用

    MPC8250 是Motorola 公司推出的高性能32 位嵌入式微处理器MPC82XX 系列中的一种。本文介绍MPC8250 的结构与特点,并与M
    发表于 05-15 16:34 15次下载

    基于SOPC的网络视频终端处理器的设计

    本文介绍了一种基于SOPC技术的网络视频终端处理器的设计方案,通过将Nios II软核CPU,用户自定义逻辑模块、存储,常用I/O口等集成
    发表于 01-13 15:51 22次下载

    芯片文档MPC823 系列

    芯片文档MPC823 系列 Overview of Internal ArchitectureFigure 3 and Figure 4 show the differences
    发表于 03-18 16:41 10次下载

    MPC8250处理器及其在宽带接入中的应用

    摘要:MPC8250是Motorola公司推出的高性能32位嵌入式微处理器MPC82XX系列中的一种,本文介绍MPC8250的结构与特点,并与M
    发表于 03-11 22:10 1543次阅读
    <b class='flag-5'>MPC</b>8250<b class='flag-5'>处理器</b>及其在宽带<b class='flag-5'>接入</b>中的应用

    HHPPC823e-WLAN-LCD-USB-R1:基于MPC823嵌入式开发套件

    HHPPC823e-WLAN-LCD-USB-R1是基于MPC823处理器,是华恒HHPPC SDK系列产品的嵌入式Linux开发套件;它保留MPC
    发表于 04-19 21:06 18次下载

    基于MPC850实现ADSL宽带网接入系统

    提出了以 MPC850 微处理器和FPGA 芯片为核心的非对称数字用户线路技术(AD2SL) 的实现方案,解决了系统的局端和用户端的接入问题. 微处
    发表于 06-08 18:00 35次下载
    基于<b class='flag-5'>MPC</b>850<b class='flag-5'>实现</b>ADSL宽带网<b class='flag-5'>接入</b>系统

    MPC755微处理器上应用说明指令和数据缓存锁定

    文档描述了MPC755微处理器上的指令和数据缓存锁定功能。MPC755是MPC750微处理器的后续版本。
    发表于 09-07 18:45 12次下载
    在<b class='flag-5'>MPC</b>755<b class='flag-5'>微处理器</b>上应用说明指令和数据缓存锁定

    嵌入式微处理器MPC860的开发应用解析

    1 MPC860 MPC860PowerQUICC是当今比较流行、性能相当优越的单片集成嵌入式微处理器。它内部集成了微处理器和一些控制领域的常用外围组件,特别适用于互联
    发表于 11-01 16:18 1次下载
    嵌入式<b class='flag-5'>微处理器</b><b class='flag-5'>MPC</b>860的开发应用解析

    TMS320C6000扩展总线到MPC860微处理器接口

    电子发烧友网站提供《TMS320C6000扩展总线到MPC860微处理器接口.pdf》资料免费下载
    发表于 10-26 10:27 0次下载
    TMS320C6000扩展总线到<b class='flag-5'>MPC</b>860<b class='flag-5'>微处理器</b>接口