增强并口EPP与DSP接口的设计增强并口EPP与DSP接口的设计

时间:2020-10-06 19:38:43 理工毕业论文 我要投稿

增强并口EPP与DSP接口的设计增强并口EPP与DSP接口的设计

摘要:提出用计算机的EPP协议与ADSP2181的IDMA口进行快速通信的设计方法。该接口的核心是可编程逻辑器件EPLD,只需要修改EPLD的逻辑就可以满足各种不同设计的要求,因此具有很强的通用性。

利用计算机进行数据采集与控制一直都是研究的热点。大部分数据采集与控制系统都是做成插卡的形式;然而,对于日益普及应用的笔记本电脑而言,由于没有提供扩展插槽,不能够直接做成插卡的形式,因此就需要充分利用笔记本提供的外围接口,例如并口、串口等来实现。由于串口速度的限制,对于速度比较高的数据采集与控制系统,往往采用计算机的并口。这几年在国内已经有很多大在做利用增强型并行口(EPP)与外界进行通信这方面的工作,但大部分都是与一些简单外围电路的通信与控制(例如FIFO、A/D转换器),很少有人涉及到与DSP的通信。我们所设计的并口与ADSP2181的接口,为和外围复杂电路进行通信提供了一种途径。

一、EPP并口

最常见的计算机并口模式是SPP模式(标准并行口)。该模式数据传输是单向的,如果要完成数据的输入就不得利用状态线。故读入一个数据就需要进行好几次的I/O读周期,因此传输速度就不可能做到很高,仅能做到150KB/s。其外围设计电路并不比EPP简单,因此SPP在数据采集与控制系统中很少应用。

1992年,intel、Xicom与Zenith公司共同制定了EPP1.7标准,并在随后的时间里对该增值修订与完善。对于EPP标准而言,现在主要有EPP1.7与EPP1.9两种标准;对于用户而言,它们在具体的应用中并没有什么不匹配的地方。

EPP协议与标准并行口兼容而且能够完成双向数据传输的协议。它提供了四种数据传送周期:数据读周期、数据写周期、地址读周期、地址写周期。数据周期一般用于主机与外设之间进行数据传送;地址周期一般用于传送地址、通道、命令和控制等信息。在实际操作中,两者并没有太大的区别。几乎可以把地址周期看到另外一种的数据周期。仅有的区别将在后面说明。

表1给出了EPP协议中各引脚的信号的定义与描述。

表1 EPP中各引脚的定义与描述

EPP信号名EPP信号方向EPP信号描述对应并口引脚Nwrite输出低电平写,高电平读1Ndatastb输出低有效,进行数据读写14Naddstb输出低有效,进行地址读写17Ninit输出低有效,得置外设16Intr输入外设断,外设对机产生中断请求10Nwait输入低有效,外设响应信号11AD[0..7]双向双向数据/地址总线2~9用户定义输入用户可灵活定义12用户定义输入用户可灵活定义13用户定义输入用户可灵活定义15

图1是EPP数据读周期的时序图。读操作是在一个I/O周期内完成的。这就是说用EPP传输数据,可以达到500KB~2MB/s的传输速率。由于Nwait是互锁形式的握手信号,故数据的传输以接口的最慢的设备来进行,可以是主机,也可以是外设。因此设计外围电路就比较灵活。

EPP模式是在BIOS里进行设置的。需要设置的主要是基地址以及中断号。基地址最好设置成378H或278H,而不要设置成3BCH,因为3BFH后面的端口可能为其它设备所占用。EPP共有8个I/O地址端口(假如基地址为378H);378H为SPP的.数据口;379H为SPP的状态口;37AH为控制口;37BH为地址读写口;37HC为数据读写口;37DH~37FH可以由用户定义,主要用作16bit与32bit I/O数据读写辅助口。通过对端口基地址 4的I/O读写就可以产生EPP的数据读写周期,对基地址 3的I/O读写就可以产生EPP的地址读写周期。夺址读写周期与数据读写周期的主要区别就是数据读写可以做32bit与16bit的I/O读写,而地址读写周期只能够做8bit的I/O读写(主要因为它没有辅助的端口)。在C语言里面,可以用端口读写函数outportb()、inportb()、outport()、inport()来实现EPP的读写操作,相应的控制信号由计算机自动产生。