根据VME总线规范和协议要求,基于GAL芯片进行了VME总线地址译码、数据读写及中断控制接口电路的设计,完成了电路板设计和研制,试验研究表明其功能满足要求,文中所提出的设计思路方法合理可行。
1 引言
VME 总线由于具有良好的物理特性、严格的技术规范和与微处理器接口灵活的特点而 被广泛应用于雷达、声纳等大规模并行多处理器系统[1],在国内外船舶机舱自动化控制系统 中也有成功应用。用户在开发基于VME 总线的信号采集模块时,首先必须考虑和解决的是 与VME 总线的接口问题。本文采用基于GAL 芯片实现VME 总线接口电路的思路,对VME 总线接口设计问题进行了深入研究。文中通过软件技术实现了VME 总线地址的译码以及数 据读写与中断逻辑控制,有效简化了硬件电路的设计。
2 接口设计功能要求
根据 VME 总线规范和本题具体任务需求,本文设计的VME 总线接口电路为一从控设 备接口电路(Slave Interface),接口的数据总线宽度和地址总线宽度均为16 位。主要接口功 能要求如下:
1)产生电路板本身的程序复位和硬件复位信号;
2)产生I/O 读、写信号及数据总线接口芯片片选信号;
3)产生与VME 总线的应答信号、数据选通信号,控制数据传送方向;
4)具有中断请求功能:可设定的中断请求级;可编程中断向量;支持中断响应菊花链。
3 主要接口电路设计与功能实现
3.1 接口设计原理
通过比较研究,本文选用 LATTICE 的通用阵列逻辑(GAL)芯片来完成接口逻辑电路设 计。GAL 芯片是LATTICE 公司开发的电可擦写、可重复编程的PLD,具有结构简单,易于编 程等优点。本文采用3 片GAL 芯片进行接口逻辑电路设计,电路基本结构及原理如图1 所 示。图中2 片GAL20V8 完成地址译码和读写控制,1 片GAL16V8 完成中断请求控制,数 据接口采用通用总线接口芯片Z8536。Z8536 是一种带有两个8 位I/O 口、通用可编程的总 线接口芯片。通过对控制寄存器进行配置,可将这两个I/O 口作为两路8 位信号通道,或共 同构成一路16 位信号的通道。在本设计中,GAL 芯片将VME 总线*问Z8536 的信号进 行译码,再通过LA4 和LA5 对Z8536 各个接口及工作方式配置寄存器进行选择。VME 总 线借助Z8536 即实现对该从板上8 位或16 位数据的读写。

图1 电路基本结构及原理
3.2 地址译码和读写控制电路设计与功能实现
地址译码电路要实现的主要功能是当主设备发出的地址有效信号AS*有效时,自动从 总线上获取地址和地址修饰码,然后根据地址修饰码配置本次地址传送的方式,再根据地址 发出相应的片选信号选择板上芯片。读写控制模块的主要功能是通过读写周期时序内产生的 DS0*、DS1*、WRITE*、LWORD*、IACK*等信号正确配置数据传送的形式,控制板上的 I/O 芯片的读写,并发出DTACK*信号还原主设备[2]。
为满足以上要求,地址译码芯片上的CE[3~0]分别接4 片Z8536 总线接口芯片的使能端; 读写控制芯片上的RD 和WR 分别接Z8536 的读写使能端。通过这两块芯片,实现了VME 总线对该从板上各路信号的读写进行的控制。
由以上分析及逻辑推理确定了 GAL 芯片要实现的功能以后,根据总线协议和硬件电路 即可得到相关信号之间的逻辑关系,本文据此完成了相应ABEL-HDL 程序编写并利用 LATTICE 公司的专用开发工具ispLEVER5.1 对GAL 芯片程序进行了编译和仿真调试,其地址 译码控制过程仿真波形如图2 所示。 |