符合学术规范的学术服务

以太网TM1300 DSP系统设计通信期刊投稿

分类:科技论文 时间:2014-04-12

  摘要:基于IP网络的多媒体应用越来越广泛,本文首先解决多媒体DSP芯片TM1300与以太网控制器 CS8900A的硬件接口的设计,分析嵌入式操作系统pSOS+内核中实现TCP/IP协议栈的网络模块pNA+,最后实现在pSOS+操作系统环境下 CS8900A的网络驱动程序的设计。

  关键词:TM1300,CS8900A,pSOS+ pNA+ 驱动程序

  1 概述

  随着网络技术、多媒体技术的飞速发展,基于IP网络的多媒体应用越来越广泛。TM1300是Philips公司推出的一款高性能多媒体数字信号处理器芯片,适合于实时性强的音视频处理应用,可广泛应用于会议电视、可视电话、远程图像监控等应用场合。具有广阔的应用前景。

  根据具体的基于IP网络上的多媒体应用系统的需要,采集的音视频数据经压缩处理后,一般要传送到远程终端或控制中心,这时就需要解决DSP应用系统与IP网络接口的问题。

  考虑到国内局域网大部分是以太网,随着交换式网络、宽带网络的发展,使得基于以太网接入IP网络上的应用有着现实意义。

  2 DSP芯片TM1300及X10总线接口

  DSP芯片TM1300的核心是32位VLIW结构CPU,时钟频率可达166MHz,片内集成了SDRAM接口、PCI/XIO总线接口、图像协处理器、可变长解码器、音频输入输出接口、视频输入输出接口、同步串行通信接口等模块,各模块与SDRAM之间采用DMA方式传送数据。CPU各功能模块之间的协调、资源的分析、进程的调度,由运行在CPU上的一个由中断源触发的实时操作系统pSOS+控制。

  网络控制器CS8900A是通过XIO总线与TM1300实现接口的。限于篇幅,这里重点介绍TM1300中用于外设端口扩展XIO总线。

  3 CS8900A简介

  CS8900A是Cirrus公司生产的一种高集成度的全面支持IEEE802.3标准的以太网控制器,其组成结构框图如图1所示。CS8900A 支持8位、16位的微处理器,可以工作在I/O方式或Memory方式。片内集成了ISA总线接口,可以直接和有ISA总线的微处理器系统无缝连接。片内集成了4KB容量的PacketPage结构的RAM,这4KB存储器映像结构的RAM包括片内各种控制、状态、命令寄存器,以及片内发送、接收缓存。用户可以以I/O方式、Memory方式或DMA方式访问它们。

  之所以选择CS8900A,是因为Cirrus提供了CS8900A的基于各种操作系统的驱动程序源代码,这就为开发带来了方便。基于pSOS的驱动程序是假设目标系统中包含了Intel 80X86的CPU和1个16位的ISA总线接口的,而TM1300中用于扩展外设的XIO总线是8位总线,可见硬件设计的主要任务是实现8位XIO总线与16位ISA总线时序的配合。驱动程序的设计主要是解决基于80X86芯片的源代码移植到TM1300上运行的问题。

  4 TM1300与CS8900A硬件接口电路设计

  TM1300的XIO总线用于提供用户扩展外设,有8根数据线D7~D0,24根地址线A23~A0,还有I/O读写信号RD、WR。所以,利用 TM1300的8位XIO总线模拟1个16位的ISA接口和CS8900A的ISA总线接口连接,即可解决硬件接口的问题。图2给出了接口设计的原理框图。

  对CS8900A的16位数据读和写操作有所不同。当TM1300从CS8900A读16位数据时,读16位数据(A0=0、 A20=0),CS8900A的低8位数据直接通过8路模拟开关B输入到TM1300的XIO总线的8位数据线D7~D0;同时,高8位数据保存在缓冲器中,紧接着TM1300再读入缓冲器中的高8位数据(A0=1、A20=0)。同样,输出16位数据到CS8900A时,首先将要输出的高8位数据锁存到锁存器中(A0=1、A20=1),然后紧接着直接输出低8位数据到CS8900A的D7~D0(A0=0、A20=1),此时,锁存在锁存器中的高8位数据输出允许,也输出到CS8900A的D15~D8。

  A12~A0直接连接TM1300的XIO总线的A12~A0。因此对于TM1300而言没有I/O和存储器的区别,所以WR经与片选取或后直接与CS8900A的IOW、MEMW连接。RD也是直接与CSCS8900A的IOR、MEMR连接。

  5 CS8900A网络接口驱动程序设计

  pSOS+是WindRiver公司专门为嵌入式系统设计和开发提供的一个模块化、高性能的实时操作系统。它采用模块化结构,包含的一系列软件功能模块有:实时多任务内核pSOS+、多处理器多任务内核pSOS+m、TCP/IP协议栈pNA+、远程调用函数库pRPC+和文件系统pHILE+等。

  基于pSOS+实时操作系统的网络接口框图如图3所示。

  下面根据网络结构的分层依次进行分析。

  (1)物理层

  以太网接口的物理实现前面已经分析过。

  (2)NI(网络接口)层

  pNA+通过一个用户提供的称为网络接口(NI)的软件访问网络。一方面它直接驱动网络接口芯片,控制太网数据帧的收发;另一方面它向pNA+提供符合pNA+要求的函数接口。在pNA+和NI之间的函数接口是标准的,和网络的物理媒介以及网络拓扑无关。这些函数可以使得pNA+不需要知道网络接口底层的细节,可以理解它是pSOS+中的硬件抽象层(HAL)。

  函 数 功能代码 功能描述 NI-BROADCAST 5 广播发送1个NI数据帧 NI-GETPKB 2 取得1个NI数据帧 NI-INIT 1 初始化NI NI-IOCTL 7 执行I/O控制操作 NI-POLL 6 轮询(for Probe+ packet) NI-RETPKB 3 返回1个NI数据包 NI-SEND 4 发1送个NI数据包

  这些函数的实现是网络驱动程序设计的主要任务,它们的代码在cs8900a.c中。这些函数一方面驱动网卡收发,另一方面为pNA+提供了一套屏蔽硬件底层细节的函数实现。另外,NI还包括一个用于处理数据包中断的中断例程。

  (3)网络层及传输层

  pSOS+的pNA+模块集成了网络层和传输层。PNA+在整个网络体系结构中处在第3层,包含IP协议、ARP协议的实理,ICMP协议、 IGMP协议的实现;提供了对用户数据报UDP和流式TCP两种传输协议的支持,还提供了符合BSD标准的Socket接口,为应用的实现提供了方便的编程环境。

  (4)应用层

  在应用层实现用户的网络应用。

  网络接口的调试是在PC机上PING这个CS8900A的网络接口。如果PING通,表明整个NI层和pNA+已经正常工作了。这个过程中,可以采用tmdbg.exe调试环境支持的DP()来测试一些结果,克服了TM1300系统没有显示支持的不足。

  6 小结

  本系统在实验室局域网环境下,采用双绞线连接,实现了TM1300与CS8900A的以太网接口的设计,实验结果可以成功PING通。基于 Socket的简单的C/S结构的网络测试程序也正常工作,在网络低负荷时,可以用于音视频多媒体数据网上传输,具有一定的使用价值。

获取发表周期短、审稿速度快、容易录用的期刊

* 稍后学术顾问联系您

学术顾问回访> 详细沟通需求> 确定服务项目> 支付服务金> 完成服务内容

SCI期刊

国际英文期刊

核心期刊

国外书号出书

国内纸质出书

2023最新分区查询