http://www.hbfydz.com

 

学习园地 邮购导航 联系我们 方圆商店

热忱欢迎您的到来!联系电话13513271716  0317-3082889  QQ:361801738          热忱欢迎您的到来!联系电话13513271716  0317-3082889  QQ:361801738

智能化I/O接口的发展与应用

作者 赵建东 王广炎 帅 梅 王小椿
关键词 智能化I/O接口 双口RAM
摘要 本文首先综述了智能化I/O接口的发展与应用,接着结合实例详细介绍了一种基于双口RAM设计的新型智能化I/O接口,最后阐述了智能化I/O接口的发展趋势。
内容 1 智能化I/O接口的发展与应用
   近几年来,微处理机在集成密度和运算速度方面,存储器在存储容量和存取速度方面都取得了飞速发展。相比之下,在应用微型计算机组成各类数据采集、工业控制、信息处理、网络通信等系统中,I/O接口因为与其相连的外部设备种类繁多特性各异而发展较慢。为了适应微型计算机广泛灵活的使用以及高性能的发挥,智能化已成为I/O接口扩展设计这一关键技术的发展方向之一。
   智能化I/O接口是指在I/O接口卡中也设置CPU。卡上CPU与主机CPU可属同一系列,也可不同,还可以是单片机、数字信号处理器、图象信号处理器等。它不仅用于数据的I/O传送,而且可以协助主机进行某些信号的处理工作。
   智能化/O接口由于具有处理能力和智能作用,所以它除了具有一般I/O接口的连接外设与主机CPU进行信息交换的功能外,还具有以下两大功能:实现接口控制主体改变;进行接口数据处理。因此,主机在以下几方面获得效益:
1 减轻负担
使主机CPU腾出更多的时间去处理其他事情,从而提高了主机的工作效率,分散了主机的故障风险。
2 加速处理
承担主机处理特别费时间的工作,从而改善了主机高性能的发挥。
3 节省空间
对I/O数据进行预处理或处理以及压缩或解压缩,从而减慢了主机I/O的速率,提高了主机有效的数据存储空间。
   因此智能化接口在工业控制、信息处理、音频或视频信号的数据采集、通讯网络接口、个人仪器系统等领域有广泛的应用前景。
智能化接口卡上的CPU与主机CPU之间的通讯常采用以下三种工作方式:
1 I/O传送从属型
2 共用ARM从属型
3 主控型

基于这些方式,在实际应用中已有多种形式:
.串行通讯
   主机与从机通过各自的串行口传递数据,其连线简单,但传输速率慢,即使波特率为9600Kb/s,传送1K字节也要1秒左右。当传送数据量大时,需几秒甚至十几秒,显然不能满足实时控制的要求,同时也不适应于多主/从CPU组成的网络通讯系统。
.直接用微机(单片机)本身的并行口进行并行通讯
   这种方式对于微机来说多使用其并行口LPT1(通常用做打印机接口),对于单片机而言是使用其数据/地址复用线,故实现简单,但最大缺点在于占用微机的I/O资源,不利于系统扩展。
.用可编程I/O芯片(8255、8155、PIO等)扩展并行口
   这是一种较为传统的并行通讯方式,结构较简单,价格低,故被广泛应用。在数据通信时主机与从机都要对各自的可编程I/O芯片进行初始化操作,数据的传送随字节进行,在传送过程要受交换双方CPU的干预,过多占用CPU的时间,传送效率低,不适合大数据量传送的场合 。
.邮箱传送
   信箱存储系统由两个分离的模块构成--信箱和控制逻辑。信箱存放主机与从机之间进行交换的数据信息,控制逻辑允许多个CPU/MPU同时访问该信箱,无需在主、从机之间进行仲裁。该方式亦仅适用传递信息量较小的应用场合。
.竞争存储器方式
   需要专门设计总线控制逻辑,以控制交换数据双方的CPU分时获得存储器信息交换窗口的控制权,从而实现数据的交换。该方式控制逻辑复杂,在应用系统中很少采用。
.硬件共享存储器方式
   交换信息双方的CPU将存储器信息交换窗口作为自己存储器的一部分,CPU对该窗口的操作如同对自己的存储器进行操作,通过该窗口就可实现信息的交换。目前,这种方式应用较多的是用户自行设计数据、地址、读/写等信号的切换逻辑,将单端口的数据存储器(如6264、62256等)作为存储器窗口。交换双方CPU对窗口的控制为整块控制,只要一方对窗口正在进行操作(即使对窗口中一字节进行存取),另一方对该窗口的操作也必须等待,因而,在信息交换频繁的实时控制应用系统中受到了限制;另外,利用硬件组成总线隔离和竞争仲裁电路,使其结构复杂,降低了可靠性。

2 基于双口RAM的智能化I/O接口
2.1 实例背景
   在一数控加工系统中设计一块内嵌式开关量控制卡,要求满足如下要求:
   .输入输出点数均达50点左右,即数据传送量大;
   .要满足系统的快速性和实时性;
   .I/O卡工作在工况环境中要有较强的抗干扰能力和较高的可靠性;
   .尽可能减轻工控机负担,因系统要实现的功能较多。
   结合智能化I/O接口的优点与加工系统的控制要求,决定采用智能化I/O接口扩展卡。由卡上CPU通过输入口来读取开关状态,并通过卡上扩展系统来运行开关控制逻辑程序,最后将运行结果送到输出口,经光隔放大驱动开关闭合。这样能避免主机直接参与控制,减少占用主机时间,提高主机运行速度,同时相对分散主机风险。
   在选择何种应用方式来实现主从CPU间的数据信息传递时,发现上述六种或因结构复杂或因传递效率低都不能很好地满足要求,而新型的双口RAM芯片却有它独特的优点:
   .具有两套完全独立的数据线、地址线、读/写控制线,允许两个CPU对双端口存储器的同一单元进行同时存取。
   .具有两套完全独立的中断逻辑来实现两个CPU之间的握手控制信号。
   .具有两套独立的“忙”逻辑,保证两个CPU同时对同一单元进行读/写操作的正确性。
   .兼容性强
   该类芯片的读/写时序与普通单端口存储器(如6116、6264等)完成一样,存取速度完全满足各种CPU的要求。
   可见,双端口RAM的高集成度不仅能使信息交换窗口的设计大大简化,而且使信息的交换更加快速、可靠,所以采用它来做主从CPU间的联系纽带。
2.2 硬件原理及通信
   智能化I/O接口卡的硬件原理及其与主机的连接如图(见下页)所示(考虑到产品设计的标准化和通用性,故只给出了大致框架)。可以看到双口RAM的内部结构和连接,其左端连接主CPU(实例中为工控PC),右端连接从CPU(实例中为INTEL8031)。具体信息交换过程是:主CPU将需要传送的数据块写入双端口存储器,然后给从CPU发中断信号,从CPU接到中断信号后,将数据块搬入自己的数据区,然后清除该中断,同时给主CPU回发中断信号,告知从CPU已将数据取走。至此便完成了从主到从的数据交换;反之亦然。以往介绍双口RAM使用的文章中,只是利用它作为一个通讯的工具,很少利用它作为RAM本身的特点。在实例中,笔者选用4kx8的双端口RAM芯片,分成三个区来使用,其中Ⅰ、Ⅱ区各占512个字节,用于主、从CPU间交替传送信息;Ⅲ区只供从CPU使用来运行开关逻辑处理(即用户程序)、运行故障监测等程序。
   另外,在开发阶段笔者利用双口RAM快速调试扩展卡,其大致做法是:在主机中编写I/O扩展卡上的应用程序,汇编后得到二进制BIN文件,把此BIN文件送至双口RAM内;设从CPU侧双口RAM的地址范围为3000~37FFH,另写一段程序,如仅含一条指令:LJMP 3000H,则存入EPROM芯片中,插到智能卡系统的EPROM插座上,则从CPU复位后,即转入双口RAM中读取指令。利用这种方法可以大大提高本智能化I/O卡的开发速度。
   其他设计(如输入输出接口、译码电路等)都跟普通I/O接口一样,不再详述。
   经实用,基于双口RAM制作的智能化I/O接口有如下优点:
   1 较好地满足了系统的各项要求,实现了主从CPU间大数据量的快速交换及实时性控制;
   2 明显在硬件设计方面扩展灵活,减少了设计工作量和布线密度,提高了接口卡的可靠性;
   3 明显减轻了主机的负担,提高了主机的效率;
   4 用户调试程序方便快捷。

3 智能化I/O接口卡的发展趋势
   综上所述,可看出今后智能化I/O接口卡有如下发展趋势:
   1 高速率
   满足应用系统的数据交换的快速性和控制的实时性。
   2 多功能
   不仅能完成信息交换和处理,而且能实现更多的智能功能。
   3 标准化与通用性
   在保证可靠性的前提下,尽可能选用通用和标准的芯片和电路。这样才能便于用户嵌入到自己的系统中,便于结合现有软硬件组成更复杂的系统.实现最优控制.
来源 电子计算机与设备