当前位置:首页 > 电源 > 数字电源
[导读]基于IP网络的多媒体应用越来越广泛,本文首先解决多媒体DSP芯片TM1300与以太网控制器CS8900A的硬件接口的设计

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

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

1 概述

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

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

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

TM1300可以作为PC机的一个外设工作,此时可直接采用PC机上标准的以太网接口传输数据;TM1300支持独立引导,自成一个系统从而脱理PC环境工作,这为实际低价位高性能音频处理终端提供了可能。这种情况下,网络接口的设计就相对复杂一点,需要解决硬件接口电路的设计、基于实时操作系统pSOS+驱动程序的设计等。本文介绍以太网控制器CS8900A,并解决TM1300 DSP系统和CS8900A的硬件接口设计;简单介绍pSOS+操作系统内核中实现TCP/IP协议栈的网络模块pNA+,以及pSOS+操作系统下网络驱动程序的设计。

2 DSP芯片TM1300及X10总线接口

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

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

TM1300片内的PCI/XIO复用总线接口给用户提供了无缝连接PCI设备及扩展8位外设端口的能力。当PCI/XIO总线接口中的XIO总线逻辑被激活时,作为TM1300系统扩展8位外设的总线,其中PCI-AD[23:0]为地址总线A23~A0,共提供了寻址16M个单元的能力;PCI-AD[31:24]为8位数据总线D7~D0;C/BE0#为读信号RD;C/BE1#为写信号WR;C/BE2#为数据选通信号DS。

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给出了接口设计的原理框图。

    图2中,CS8900A的高8位数据线通过1个8位锁存器和缓冲器连接到8路模拟开关A的一端,CS8900A的低8位数据线连接到8路模拟开关B的一端。8路模拟开关A、B的另一端均连接到TM1300芯片XIO总线的数据线D7~D0上。8路模拟A、B在同一个时刻只有1组是连通的,由A0控制:A0=0时,模拟开关B连通;A0=1时,模拟开关A连通。这样就可以实现XIO总线8位数据线与CS8900A的16位总线的连接。同时,TM1300的A20、A0经译码控制锁存器和缓冲器的操作,逻辑关系如下:

①A20用于控制读写。当A20=0时,CS8900A的高8位数据从缓冲器输入;当A20=1时,高8位数据经锁存器输出到CS8900A的D15~D8。

②A0用于控制8位或16位操作。当A0=0时,对应16位数据读写;A0=1时,对应高8位数据读写。

对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)。这些函数如表1所列。

表1 各函数的功能

函    数 功能代码 功能描述
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还包括一个用于处理数据包中断的中断例程。

每一个NI都应该分配一个唯一的IP地址,可以在pSOS+配置文件sys_conf.h中设定IP地址、网关、掩码等网络接口参数。如:

#define SD_LAN1 YES

#define SD_LAN1_IP 0xca726878 /*202.114.104.120设定IP地址*/

#define SD_LAN1_SUBNET_MASK 0xffffff00

/*设定掩码*/

#define SD_DEF_GTWY_IP 0xca726821 /*202.114.104.33设定网关*/

另外,还要给这个CS8900A网卡设定一个MAC物理地址。这个地址可以在配置文件mybsp.h中设定为不与网上其它网卡冲突的任意值,如:

#define BSP_CS8900_IND_ADDR "00:24:20:10:FF:41"

(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结构的网络测试程序也正常工作,在网络低负荷时,可以用于音视频多媒体数据网上传输,具有一定的使用价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

特朗普集团近日取消了其新推出的T1智能手机“将在美国制造”的宣传标语,此举源于外界对这款手机能否以当前定价在美国本土生产的质疑。

关键字: 特朗普 苹果 AI

美国总统特朗普在公开场合表示,他已要求苹果公司CEO蒂姆·库克停止在印度建厂,矛头直指该公司生产多元化的计划。

关键字: 特朗普 苹果 AI

4月10日消息,据媒体报道,美国总统特朗普宣布,美国对部分贸易伙伴暂停90天执行新关税政策,同时对中国的关税提高到125%,该消息公布后苹果股价飙升了15%。这次反弹使苹果市值增加了4000多亿美元,目前苹果市值接近3万...

关键字: 特朗普 AI 人工智能 特斯拉

3月25日消息,据报道,当地时间3月20日,美国总统特朗普在社交媒体平台“真实社交”上发文写道:“那些被抓到破坏特斯拉的人,将有很大可能被判入狱长达20年,这包括资助(破坏特斯拉汽车)者,我们正在寻找你。”

关键字: 特朗普 AI 人工智能 特斯拉

1月22日消息,刚刚,新任美国总统特朗普放出重磅消息,将全力支持美国AI发展。

关键字: 特朗普 AI 人工智能

特朗普先生有两件事一定会载入史册,一个是筑墙,一个是挖坑。在美墨边境筑墙的口号确保边境安全,降低因非法移民引起的犯罪率过高问题;在中美科技产业之间挖坑的口号也是安全,美国企业不得使用对美国国家安全构成威胁的电信设备,总统...

关键字: 特朗普 孤立主义 科技产业

据路透社1月17日消息显示,知情人士透露,特朗普已通知英特尔、铠侠在内的几家华为供应商,将要撤销其对华为的出货的部分许可证,同时将拒绝其他数十个向华为供货的申请。据透露,共有4家公司的8份许可被撤销。另外,相关公司收到撤...

关键字: 华为 芯片 特朗普

曾在2018年时被美国总统特朗普称作“世界第八奇迹”的富士康集团在美国威斯康星州投资建设的LCD显示屏工厂项目,如今却因为富士康将项目大幅缩水并拒绝签订新的合同而陷入了僵局。这也导致富士康无法从当地政府那里获得约40亿美...

关键字: 特朗普 富士康

今年5月,因自己发布的推文被贴上“无确凿依据”标签而与推特发生激烈争执后,美国总统特朗普签署了一项行政令,下令要求重审《通信规范法》第230条。

关键字: 谷歌 facebook 特朗普

众所周知,寄往白宫的所有邮件在到达白宫之前都会在他地进行分类和筛选。9月19日,根据美国相关执法官员的通报,本周早些时候,执法人员截获了一个寄给特朗普总统的包裹,该包裹内包含蓖麻毒蛋白。

关键字: 美国 白宫 特朗普
关闭