原创 TMS320C54x DSP的以太网接口设计

2008-8-23 14:04 2341 7 7 分类: 工程师职场

点击下载


TMS<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />320C54x DSP的以太网接口设计<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


摘要:介绍以太网控制器RTL8019AS的主要性能特点、引脚功能及寄存器,给出了利用RTL8019AS实现TMS320C54x DSP与以太网互连的接口电路,接口方式为跳线模式。通过该接口可实现DSPDSPDSPPC机间的网络互连。


关键词:以太网 DSP 接口   网络变压器 脉冲变压器 YL18-1005D YL18-1001D


以太网产品供应商多、用户组网方便、费用低。以太网是当今最受欢迎的局域网之一,而数字信号处理器(DSP)正加速进入嵌入式应用领域,如何将DSP与以太网连接起来,实现DSPDSPDSP与计算机间的网络互连显得非常重要。目前还未见到自带以太网接口的DSP,本文介绍以太网控制器RTL8019AS的主要特点、性能及操作方法,并给出TMS320C54x DSP[1](以下简称C5402)通过RTL8019AS与以太网互连的接口方法。


1 RTL8019AS介绍


RTL8019AS[2]是台湾readlted公司生产的以太网控制器,支持IEEE802.3;支持8位或16位数据总线;内置16KBSRAM,用于收发缓冲;全双工,收发同时达到10Mbps;支持10Base510Base210BaseT,并能自动检测所连接的介质,在ISA总线网卡中占有相当比例。RTL8019AS与主机有3种接口模式,即跳线模式、PnP模式和RT模式。本文主要介绍便于DSP应用的跳线模式,因此下面主要介绍与跳线模式有<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />关的引脚、寄存器及操作。


1.1 引脚介绍


RTL8019AS可提供100脚的TQFP封装,其引脚可分为电源及时钟引脚、网络介质接口引脚、自举ROM及初始化EEPROM接口引脚、主处理器接口引脚、输出指示及工作方式配置引脚。由于本文主要讨论非PC环境下的以太网接口,该接口不必具有即插即用功能(PnP)和远程自举加载功能,因此不介绍RTL8019AS与自举ROM、初始化EEPROM接口的引脚。其余各部分引脚的功能如表1所示。
1 RTL8019AS部分引脚




与网络介质接口引脚


AUI


输入


用于外部MAU检测


CD+CD-


输入


AUI冲突,接收来自MAU的冲突


Rx+,Rx-


输入


AUI接收,接收MAU的输入信号


Rx+,Tx-


输出


AUI发送,往MAU的输出信号


TPRx,TPRx-


输入


从双绞线接收的差分输入信号


TPRxTPTx-


输出


发往双绞线的差分输出信号


与主处理器接口的引脚


AEN


输入


I/O端口操作允许


INT70


输出


中断输出


IOCS16


输出


16I/O口方式


IOR IOW


输入


端口读、写控制


IOCHRDY


输出


I/O通道准备好


SMEMR SMEMW


输入


存储器读、写控制


RSTDRV


输入


复位


SA 190


输入


20位地址总线


SD 150


双向


16位数据总线


发光二极管输出引脚


LEDBNC


输出


介质类型指示


LED0LED1LED2


输出


指示控制器的工作状态


工作方式配置引脚


JP


输入


置位时选择跳线模式,复全时选择无跳线模式


PNP


输入


置位时进入PnP模式(JP=0


IOS30


输入


I/O口基地址选择


PL10


输入


介质类型选择


IRQS20


输入


用于在INT70中选择一个作为断输出


1.2 寄存器介绍


RTL8019AS片内寄存器分为NE2000寄存器组和PnP寄存器组(本文不介绍PnP寄存器组)。NE2000寄存器组地址如表2所示。NE2000寄存器分为4页,都映射到16I/O端口地址上。主机通过命令寄存器(CR)中的PS0PS1位来寻址不同的页,通过16I/O口地址来寻址页内寄存器。

2 RTL8019AS 寄存器地址表




 


page0


page1


page2


page3


 


[R]


[W]


[R/W]


[R]


[R]


[W]


00


CR


CR


CR


CR


CR


CR


01


CLDA0


PSTART


PAR0


PSTART


9346CR


9346CR


02


CLDA1


PSTOP


PAR1


PSTOP


BPAGE


BPAGE


03


BNRY


BNRY


PAR2


-


CONFIG0


-


04


TSR


TPSR


PAR3


TPSR


CONFIG1


CONFIG1


05


NCR


TBCR0


PAR4


-


CONFIG2


CONFIG2


06


FIFO


TBCR1


PAR5


-


CONFIG3


CONFIG3


07


ISR


ISR


CURR


-


-


-


08


CRDA0


RSAR0


MAR0


-


CSNSAV


-


09


CRDA1


RSAR1


MAR1


-


-


HLTCLK


0A


8019ID0


RBCR0


MAR2


-


-


-


0B


8019ID1


RBCR1


MAR3


-


INTR


-


0C


RSR


RCR


MAR4


CRC


-


-


0D


CNTR0


TCR


MAR5


TCR


-


-


0E


CNTR1


DCR


MAR6


DCR


-


-


0F


CNTR2


IMR


MAR7


IMR


-


-


1017


Remote DMA Port


181F


Reset Port


1.3 RTL8019AS与主机的接口模式


RTL8019AS与主机的接口模式有三种,即跳线模式、PnP模式和RT模式,见表3
3 RTL8019AS的接口模式




JP引脚


PnP引脚


93C46中的PnP


配置模式


配置来源


Initiation Key


1


x


x


跳线 


跳线器


RT


0


1


x


PnP


93C46


RT and PnP


0


x


1


PnP


93C46


RT and PnP


0


0


0


RT


93C46


RT


1)跳线模式 这种模式与早期的网络控制器兼容。RTL8019AS的端口基地址、中断口等都由开关或跳线器决定。跳线模式简单,但配置资源麻烦。


2PnP模式 与微软的PnP协议兼容。在这种模式下,RTL8019AS的端口基地址、中断口等都由EEPROM93C46设定,但需要进行PnP芯片的识别,不便与DSP接口。


3RT模式 为了避免PnP模式下的PnP芯片识别和配置过程,readlted公司提供RT模式。在RT模式下,RTL8019AS的端口基地址、中断口等也是由EEPROM93C46决定的。


2 RTL8019AS与传输介质的连接


RTL8019AS可与双绞线或同轴电缆接口,连接方法如图1所示。介质选择由引脚PL1PL0决定,另外,RTL8019AS还自动测试介质连接是否成功。


1中,NS8392是同轴电缆驱动/接收器,其电源应与RTL8019AS的电源隔离,一般使用一个DC-DC电源转换器得到该隔离电源。YL18-1005D内有3个耦合变压器,用来传输信号,同时抑制来自介质的共模噪声/干扰。YL18-1001D是双绞线驱动/接收器,内部也有2个传输变压器。


3 DSPRTL8019AS的接口


为了简化DSP网络接口的软、硬件设计,不使用远程自举加载功能,并且选用跳线接口模式。用C5402的扩展I/O口代替跳线器对RTL8019AS进行初始化配置,这样既省去了93C46,又避免了跳线器更改变资源配置的麻烦。RTL8019AS的总线接口是与ISA总线兼容的,虽然不能与C5402的外部总线直接接口,但是只要进行一些简单的逻辑变换就可以了。另外,C5402的总线电平是3.3V的,而RTL8019AS的接口电路是5V的,二者接口时要使用电平转换器。C5402RTL8019AS的接口如图2所示。


1)地址总线 RTL8019AS20根地址线主要是为了读/写自举ROM,对于I/O端口寻址来说只要16根地址线就足够了,因此将DSP的地址总线A0A15RTL8019AS的地址总线SA0SA15相连,而SA16SA19全部接地。由于DSP系统无DMA控制器,因此将RTL8019ASAEN引脚也接地。


2)数据总线RTL8019ASIOCS16引脚接高电平,选择16位数据总线方式,并且使用了电平转换器。


3)中断连接 虽然RTL8019AS7个中断输出,但只要从中选择一个送往C5402的外部中断输入口就可以了。中断接口也使用了电平转换器。


4)读/写控制C5402I/O口控制信号ISIOSTRBR/W等信号经过74HACT139译码后与RTL8019ASIORIOW连接。由于C5402I/O口读/写速度很快,因此将RTL8019ASIOCHRDY信号与C5402的外设准备好信号READY相连。另外,将SMEMRSMEMW引脚接高电平,屏蔽了远程自举加载功能。


5)初始化配置 用C5402的一个扩展输出口代替跳线器来指定RTL8019ASI/O口基地址、中断输出口、介质类型,并用一个输出信号作为RTL8019AS的复位信号。RTL8019AS复位结束时采样这些配置引脚,并根据引脚状态初始化其内部的配置寄存器。

4 RTL8019AS
的编程


可以用查询方式或中断方式对RTL8019AS进行操作[3]RTL8019AS复位初始化后,程序员应对表2中的部分寄存器进一步初始化,然后才能发送数据或接收数据。RTL8019AS内置16KBSRAM,可作为接收缓冲区和发送缓冲区。缓冲区分为64页,页范围为0x400x80,每页256个字节。由PSTARTPSTOP寄存器来设定接收缓冲器的页范围,由RSAR01RBCR01寄存器来设定发送缓冲器的页范围。CURR指向接收到帧的起始页,Boundary指向还未读帧的起始页。当CURR到达了接收缓冲页的底部与PSTOR相等时,CURR又会指向PSTART处。


1)查询方式 在查询方式下,通过CURRBoundary两个寄存器的值来判断是否收到一帧数据。当BoundaryCURR不等时,说明接收缓冲区接收到了新的帧,主程序读取数据后,以读取帧的第二个字节(下一帧的页地址)更新Boundary,主程序循环跟踪CURRBoundary达到接收数据的目的。主程序发送一帧数据时,先要查TSR寄存器判断上一帧是否发送完毕。


2)中断方式 在实际的DSP应用系统中常采用中断方式。当一帧数据发送结束、接收到一帧数据或出错等事件发生时,RTL8019ASDSP申请中断,DSP响应中断后根据中断状态寄存器的内容进行相应的处理。


RTL8019AS性价比高,与DSP连接方便,二者的结合将大大拓宽DSP的应用范围。带有以太网接口的DSP应用系统可以通过双绞线或同轴电缆与PC机构成一个高速局域网,并且DSP可以通过PC机接入互连网,进一步延伸DSP的应用领域。


 

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条