DSP的Page3和R/W信号用于选通网卡的读写信号IOR、IOW,实现的逻辑关系如图2所示。
![]() |
IRQ9是网卡的中断9,通过非门后接DSP的INT1引脚。
RTL8019网卡有三种工作方式:
第一种为跳线方式,网卡的I/O和中断由跳线决定;
第二种为即插即用方式,由软件进行自动配置plug and play;
第三种为免跳线方式,网卡的I/O和中断由外接的93C46里的内容决定。
计算机上一般实现的是即插即用方式,为了降低软件编程的复杂度,将网卡设置为跳线方式。
上述所有的译码逻辑都在EPM7128中实现。
74ALVC164245是总线驱动芯片,可实现3.3V到5V的电平转换。由于TMS320VC33和EPM7128是3.3V的器件,而ISA总线是5V的,所以信号线不能直接连接,需要通过74ALVC164245进行电平转换和隔离。
2 软件设计
2.1 网卡硬件驱动程序的设计
网卡驱动程序主要包括以下几部分:
(1)NIC的初始化
NIC是网络接口控制芯片,它负责网络上数据的接收和发送。为了能够使NIC启动并处于准备接收或准备发送数据的状态,必须对相关的寄存器进行初始化。这些寄存器包括CR、DCR、RBCR、PSTART、PSTOP、ISR、IMR、PAR0~PAR5、MAR0~MAR7、CURR、TCR、RCR等。
(2)中断服务程序
中断服务程序一般完成两项任务:一是设置中断标志,以使相关程序能以此发现发生了中断;二是取得中断状态寄存器的值,并将引起中断的具体原因提交给相应的程序,这一过程也是通过设置中断原因标志完成的。需要注意的是,中断服务程序开始的时候要保护中断现场,待程序处理完成后要恢复中断现场;中断服务程序应尽可能短小,以便在尽可能短的时间内执行完成,因此需要将一些不必要的工作交给其它程序来完成。
(3)帧发送程序
在网络中,帧传输的过程是:发送方将待发送的数据按帧格式要求封装成帧,然后通过网卡将帧发送到网络的传输线上;接收方根据接收到的帧的目的地址确定是否将该帧提交给上层应用程序。帧的发送是指将待发送的数据以帧的形式发送到网络传输线上,因此,帧的发送过程应该包括以下几个步骤:
①装帧; ②将帧送入NIC的发送缓冲区; ③初始化发送控制寄存器; ④启动NIC将该帧发送到网络传输线上。
| 欢迎光临 光电工程师社区 (http://bbs.oecr.com/) | Powered by Discuz! X3.2 |