打印

RTL8019型控制器与DSP的接口设计及编程技巧

[复制链接]
427|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qwe890asd|  楼主 | 2019-4-18 10:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
RTL8019型控制器与DSP的接口设计及编程技巧



摘要:基于美国TI公司的高速数字信号处理器(DSP),详细描述RTL8019型以太网控制器的性能特点和引脚功能。同时给出DSP与RTL8019的硬件电路接口设计方法及DSP控制RTL8019进行网络传输的相应软件编程方法。
关键词:闪速存储器;接口;DSP;TMS320F206;RTL8019


1 引言
    数字信号处理器(DSP)具有先进的并行处理结构,特别适合于信号处理,已经越来越多地应用于工业控制领域和各类仪器仪表的开发设计。互联网络硬件和软件的迅猛发展使得网络用户呈指数增长,在使用计算机进行网络互联的同时,各种家电设备、仪器仪表以及工业生产中的数据采集与控制设备逐步走向网络化,以便共享网络中庞大的信息资源。在电子设备日趋网络化的背景下,利用高速数字信号处理器控制RTL8019实现以太网通讯具有十分重要的意义。
    TMS320F206是TI公司生产的16-bit定点DSP,它有l条程序总线和3条数据总线,采用了改进的哈佛结构,内含高度并行的32-bit算术逻辑单元、16×16-bit并行硬件乘法器、片内存储器和片内外设,配备了高度专业化的指令集,功耗相当低,特别适合于信号处理。RTL8019采用100引脚POFP封装,性能优良,价格低。它支持PnP自动探测.符合EthernetⅡ与IEEE802.3(10Base5、10Base2、10BoseT)标准,内嵌16 KB SRAM,有全双工通信接口,可以通过交换机在双绞线上同时发送和接收数据,使带宽从lO MHz增加到20 MHz,是进行以太网通信的理想器件。本文即结合DSP处理器的特点,详细介绍Realtek公司生产的RTL8019型以太网控制器的硬件电路设计方法及编程技巧。

2 RTL8019的主要引脚功能
    AEN(34):地址使能引脚,决定电路被分得的地址空间:
    INT0-INT7(97~100,1~4):中断请求引脚;
    IOCHRDY(35):读/写命令准备引脚;
    IOCSl6B(96):8位/16位数据选择引脚,高电平选择16位数据总线,低电平选择8位数据总线;
    IORB,IOWB(29,30):I/O端口读命令、写命令;
    SMEMRB,SMEMWB(3l,32):寄存器读命令、写命令;
    RSTDRV(33):复位信号;
    SD0-SDl5(36~43,87,88,90~96):数据线;
    SA0-SDl9(5,7~13,15,16,18~27):地址线;
    X1(50):20 MHz晶体振荡器或外部晶体振荡器输入引脚;
    LEDBNC,LEDO,LEDl,LED2(60~63):网卡状态指示;
    TPOUT+、TPOUT-、TPIN-、TPIN+(45,46,58,59);数据发送和接收引脚。

3 寄存器配置
    RTL8019有4页寄存器组,每页寄存器组有16个寄存器。进行网络通信时需要对这些寄存器进行设置。
    CR是控制命令寄存器,地址是00H,这个寄存器用来选择寄存器页,控制远程DMA操作。其中STP(O bit)是停止命令位,PSO、PSl(6 bit、7 bit)是页寄存器选择位,在实际配置寄存器时,首先要指定要配置的寄存器属于哪一页(就是进行PSI和PSO的设置),然后对该页中的寄存器写入配置信息。
    PSTART是接收缓冲区起始页位置,地址是01H。
    PSTOP是接收缓冲区中止页位置,地址是02H。
    BNRY是边界寄存器,地址是03H。
    TSR是发送状态寄存器,TPSR是发送缓冲区起始页位置,地址是04H。
    NCR是发送期间碰撞次数,地址是05H。
    FIFO是回环检测后,查看FIFO内容,地址是06H。
    ISR是中断状态寄存器,写“1”清除内部所有寄存器位,地址是07H。
    CRDAO,CRDAl是当前的远程DMA地址寄存器,地址是08H、09H。
    RBCR0,RBCRl是远程DMA字节计数寄存器,地址是0AH、OBH。
    RSR接收状态寄存器,RCR是接收配置寄存器,地址是0CH。
    TCR发送配置寄存器,TSR是发送状态寄存器,CNTR0是帧同步错总计数器,地址是0DH。
    DCR是数据配置寄存器,CNTRl是CRC错总计数器,地址是0EH。
    CNTR2是丢包总计数器,地址是0FH。
    远程DMA端口寄存器,地址是10H。
    复位端口寄存器,地址是1AH。
    要进行网络通信必须对网络控制器的各个寄存器初始化,初始化比较烦琐,但非常重要,它决定网络通信的一些重要参数。初始化时需要对上述的各个寄存器进行详细配置。

4 硬件接口电路设计
    在具体应用中,由于DSP本身的限制,进行了一系列的简化设计。采用跳线工作方式即网卡的I/0和中断由跳线决定,JP引脚接高电平时选择16位数据总线。仅通过4条地址线A0-A3选择RTL8019的寄存器地址和存储器地址,控制并实现数据的读取。LEDBNC、LEDO、LEDl、LED2网卡状态指示引脚连接发光二极管,便于直观判断网卡状态。通过GAL22V10型逻辑编程器对RTL8019的片选信号进行控制。具体的硬件接口电路图如图1所示。


5 软件编程
    TMS320F206的用户可以用汇编语言或C语言进行源程序的编写,用C语言开发出的系统易于维护,可靠性高,可移植性好。下面介绍用C语言编写的RTL8019的开发程序。由于篇幅有限,本文仅给出RTL8019的初始化程序和接收包子程序。
    void ethernetinit()


6 结束语
    本文详细论述了RTL8019的引脚功能、寄存器配置、硬件配置和软件编程方法,这些同样可以作为单片机、微处理器以及PC等其他应用系统对于网络通信设计的直接参考,用户也可以针对自己的特殊需要进行一些特殊设置。这些方面的研究和逐步推进将为测控领域注入新的生机和活力。

使用特权

评论回复

相关帖子

沙发
qwe890asd|  楼主 | 2019-4-18 10:30 | 只看该作者
RTL8019型控制器与DSP的接口设计及编程技巧

文档1.pdf

143.82 KB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

455

主题

583

帖子

5

粉丝