用增强并口EPP协议扩展计算机的ISA接口

网友投稿 290 2022-10-30

用增强并口EPP协议扩展计算机的ISA接口

1 EPP并口

2 用EPP扩展ISA接口的总体设计

3 硬件操作方法

EPP协议定义的并行口提供了四种传送周期:数据写周期、数据读周期、地址写周期和地址读周期。数据周期一般用于计算机和外设间的数据传送,地址周期一般用于传送地址、通道、命令和控制等信息。实际上,数据周期和地址周期并没有那么严格的界限,可以把地址周期看做另一种数据周期,二者并没有太大的区别。图2是EPP数据写周期的时序图,图中的nIOW信号实际上在进行EPP数据写时并不会产生,只不过是为了表示所有的操作都发生在一个IO周期内,只有这样,才能使EPP获得ISA总线的数据操作速度。图2中的nDataStrobe信号如果换为nAddStrobe信号,就是EPP地址写周期。图3是EPP地址读周期,也是发生在一个IO周期内。

EPP定义了一个计算机用于控制外设初始化的信号:nInit,如果用户不希望控制外设的初始化,则可以不处理这个信号;用户也可以挪用nInit信号做其他的用途,在本设计方案的地址周期中,如果nInit为高,则表示该地址对应ISA接口的高8位地址,否则,对应低8位地址。用这种办法解决了用8位的EPP地址扩展16位的ISA地址的难题。实践证明,这是一个方便实用的解决方法。

4 CPLD的编程

系统选用的CPLD是ALTERA公司的MEP7064,它有64个宏单元,1250个可用门,就可以完成EPP和ISA的接口任务。文献[4]详细介绍了ALTERA公司的CPLD器件,在这里就不再介绍器件的性能和使用方法了。仅给出用VHDL语言写的控制程序如下(部分信号的意义请参照前面的电路原理图)。

Process (clk)

Type ISAType is (Idle,RD,WR);

Variable ISA: ISAType;

Variable IOR: STD_LOGIC;

Variable IOW: STD_LOGIC;

Variable EPPBuf: STD_LOGIC_VECTOR (7 downto 0);

Begin

Case ISA is

When Idle =>

If IOR=‘1’ then

#IORD <= ‘0’;

IOR?=‘0’;

ISA := RD;

Elseif IOW=‘1’ then

#IOWR <= ‘0’;

ISADataBuf<=EPPBuf;

IOW:=‘0’;

ISA:=WR;

End if;

When RD =>

EPPBuf:=ISADataBus;

#IORD<=‘1’;

ISA:=Idle;

When WR =>

#IOWR <=‘1’;

ISA:=Idle;

End case;

End;

End Process;

5 计算机对EPP/ISA的操作

6 与其它通讯方案的比较

(1)RS232串口:最通用的一种连接方法。但是它支持数据传输速率最大为10~20KB/s,对于一般的数据采集和控制系统而言显得有些慢。

(2)SPP:数据通讯速度比串口快,可以达到150 KB/s。但是SPP用做数据输入时很麻烦,用多次IO才能完成一次完整的数据读取,速度要牺牲很多,况且外设的设计并不比EPP简单。所以,如果选择了并口方案,就不能选择SPP模式,除非用户仅仅是做数据输出并且对速度没有很高的要求。

(3)ECP:与EPP相比ECP最大的优势是它支持DMA操作,如果系统工作时有大批量的数据要传输,用ECP模式可以大大减轻计算机CPU的负担,提高系统的整体性能。但是获得ECP的高性能的代价是必须重新设计比EPP复杂得多的接口软件(指CPLD的控制软件),同时计算机软件方面还必须要编写硬件驱动程序,这对于一般的计算机应用系统开发者而言还是一个不小的困难。

综上所述,采用EPP扩展计算机的ISA接口是一种新颖的计算机外设设计方案,它具有非常高的性能价格比,能够达到绝大多数基于ISA接口的数据采集和控制系统的通讯速度要求。这种方案大大扩展了笔记本电脑对于ISA接口设备的适应能力,省去了用户对扩展箱的需求。仅仅改写该系统的CPLD程序和计算机的控制程序就可以提供新的功能,如做成双ISA接口系统,或者改造成STD、STE总线系统等等,而系统的硬件不需做任何的改动。EPP的确是一种有前景的实用接口技术,值得微机外设设计者和使用者采用。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java实现经典角色扮演侦探游戏游戏的示例代码
下一篇:使用 docker compose 架构三层软件
相关文章

 发表评论

暂时没有评论,来抢沙发吧~