增强并口EPP与DSP接口的设计增强并口EPP与DSP接口的设计
我们所选用的可编程逻辑器件是Altera公司的EPM7128S系列。它有2500个可用门,128个宏单元、2个全局时钟,可以完成EPP与ECP电路的逻辑设计。同时支持在线编程,可以很方便地对程序进行下载。该器件用MAXPLUS II系列的软件进行编程,这种软件支持图形、语言等多种设计文件。
由于采用可编程器件,因此电路还可以采用ECP协议。ECP协议支持DMA的传输方式。最主要的是在进行大批量的数据传输的时候可以节省很多系统资源;但在传输速度上并没有大的提高。该协议设计起来比EPP协议复杂很多,需要开发相应的硬件驱动程序。因此在我们设计的电路中,仍然采用EPP协议来实现。
javascript:window.open(this.src);" style="cursor:pointer;"/>
四、EPP并口传输速度的测试
读写程序是用VxD编写的。VxD(Virtual Device Driver)是用来扩展Windows操作系统功能的程序,也是一个管理硬件设备或者已安装软件等系统资源的32位可执行程序,并可以使得几个应用程序同时使用这些资源。Windows通过使用VxD允许基于Windows的应用程序实现多任务。VxD在与Windows的连接工作中处理树熊怕,并在不影响其它应用程序执行的情况下为特定的应用程序执行I/O操作。由于设备接收工作中处理中断,并在影响其它应用程序执行的情况下为特定的应用程序执行I/O操作。
测试结果如表2所列。
表2 各种方式读速率的比较
方式1(字节读写) | 方式二(字读写) | 方式三(双字读写) | 方式四(字读写) | |
平均速率/(KB/s) | 850 | 950 | 1050 | 800 |
方式一:VxD编程中以字节来读;
方式二:VxD编程中以字来读;
方式三:VxD编程中以双字来读;
方式四:用C语言的inport()函数进行读写。
由于我们只关心从DSP中读的速率,从表2中看出可以做到1050KB/s的速率,基本满足我们要求。对于用C语言来编写并口操作的程序可以通过嵌套汇编来提高传输速度。
总结
采用EPP协议设计计算机与外设的通信是一种新颖的设计方法。在设计电路时采用可编程器件来设计控制逻辑将是电子设计的一个趋势,将使电路的扩充性与灵活性得到很大的提高。