EDN China > 设计实例 > 通信 > 以太网 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) 基于AX88796B的网络接口设计与实现

现代电子技术 田剑峰?? 2011年01月14日 ?? 收藏0

  0 引言

  在网络技术应用日益普及的今天,许多数字设备需要网络接口来进行网络通信。本设计是以TI公司的TMS320C6722为核心的信息处理系统,为满足大量数据的实时网络交换,用ASIX公司的AX88796B扩展了网络接口。在此主要论述了该网络接口的设计与实现。

  1 前言

  美国TI公司的TMS320C6722是一款主要面向嵌入式应用的高性能32位DSP,它数据运算处理能力可达2 000 MIPS和1 500 FLOPS,具有丰富的片上资源,目前已经被广泛应用在各种数字应用中。AX88796B是由台湾ASIX公司推出的一款与NE2000兼容的快速以太网控制器,其内部集成10/100M自适应的介质访问层MAC和物理层收发器PHY以及8K×16b的SRAM,SK支持8位、16位的通用CPU总线类型,执行基于IEEE802.3/IE-EE80.3u局域网标准的以太网控制功能,并且提供发送队列功能来增强标准NE2000的发送性能。该控制器采用64LQFP封装,仅占用9 mm×9mm的印制板面积,分析其性能可以满足系统需要。

  2 系统硬件设计

  (1)AX88796B的硬件结构。AX88796B芯片内部集成了8/16位CPU接口、串行E2PROM接口、8 K×16 b的SRAM、包缓存管理、MAC、PHY、以及电源和时钟等部件。DSP通过读写NE2000寄存器来控制AX88796B的工作状态,通过DMA方式与AX88796B的内部缓存SRAM进行数据交换。芯片自动在SRAM与MAC核之间进行数据发送接收,再经由内部的PHY层发送至RJ45接口。串行 E2PROM接口可以用来连接串行EEPROM,用于存储MAC地址,供AX88796B每次初始化时读取。AX88796B芯片的内部结构如图1所示。

AX88796B芯片的内部结构

  (2)系统硬件连接。主控制单元TMS320C6722B与网络芯片AX88796B的连接方式如图2所示。TMS320C6722B内部为32 b的总线结构,对外扩展EMIF为16 b的宽度,采用异步总线方式可以直接与网络芯片无缝连接。片选的连接,用EM_CS2连接到网络的CS,使AX88796B工作在186_l-ike模式,在配置引脚EECK接上拉电阻。本设计没有连接EEPROM,所有对AX88796B的配置均由TMS320C6722B在初始化时写入。

主控制单元TMS320C6722B与网络芯片AX88796B的连接方式

  3 系统的软件设计

  AX88796B的网络驱动程序是TMS320C6722和AX88796B硬件的接口,因此编写网络驱动程序模块应满足的主要功能有:AX88796B的初始化、报文的接收、报文的发送;

  (1)初始化。在AX88796B的初始化过程中除了完成对相关寄存器的定义与赋值外,还要完成对接收缓冲环的构造。对TMS320C6722B,要完成对应EMIF的设置和中断的初始化。与网卡有关的初始化如下:

与网卡有关的初始化

与网卡有关的初始化

  (2)报文的接收。判断AX88796B是否接收到新的数据包有2种方式:轮循和中断。单片机用轮循方式较多。由于TMS320C6722在此还要进行其他处理,为了提高DSP性能和实时性要求,这里采用中断方式。当网卡接收到新数据包时进入中断,首先判断cpr是否等于bnry,若相等,则表示接收缓冲区已被存满,则停止接收数据包,而不会覆盖旧的数据;若不等,则将接收缓冲区中待读取的数据包的起始地址写入rsar[0,1]寄存器,数据包的开始4字节写入rbcr[O,1]寄存器,并启动远端DMA读命令,通过读取4个信息字节得到待读取数据包的长度、接收状态和下一个将被读的页的指针信息。然后通过远端DMA读命令,将数据包从网卡sram中读入TMS320C6722内存中,并更新读页指针寄存器bnr-y,DSP每从网卡内存中读走一页数据,bnry便加一,这需要通过程序实现。网卡通过cpr将接收到的数据包写入接收缓冲区,每写完一页,cpr将自动加一,当加到最后的空页(这里是 pstop="0x80")时,cpr将自动恢复为接收缓冲区的首页(pstart=Ox4c)。网卡接收关键性代码如下:


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

AX88796B? 网络接口? TMS320C6722?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈