基于GAL的VME總線(xiàn)接口電路及程序設計
摘要:根據VME總線(xiàn)規范和協(xié)議要求,基于GAL芯片進(jìn)行了VME總線(xiàn)地址譯碼、數據讀寫(xiě)及中斷控制接口電路的設計,完成了電路板設計和研制,試驗研究表明其功能滿(mǎn)足要求,文中所提出的設計思路方法合理可行。
本文引用地址:http://dyxdggzs.com/article/149667.htm1 引言
VME 總線(xiàn)由于具有良好的物理特性、嚴格的技術(shù)規范和與微處理器接口靈活的特點(diǎn)而 被廣泛應用于雷達、聲納等大規模并行多處理器系統[1],在國內外船舶機艙自動(dòng)化控制系統 中也有成功應用。用戶(hù)在開(kāi)發(fā)基于VME 總線(xiàn)的信號采集模塊時(shí),首先必須考慮和解決的是 與VME 總線(xiàn)的接口問(wèn)題。本文采用基于GAL 芯片實(shí)現VME 總線(xiàn)接口電路的思路,對VME 總線(xiàn)接口設計問(wèn)題進(jìn)行了深入研究。文中通過(guò)軟件技術(shù)實(shí)現了VME 總線(xiàn)地址的譯碼以及數 據讀寫(xiě)與中斷邏輯控制,有效簡(jiǎn)化了硬件電路的設計。
2 接口設計功能要求
根據 VME 總線(xiàn)規范和本題具體任務(wù)需求,本文設計的VME 總線(xiàn)接口電路為一從控設 備接口電路(Slave Interface),接口的數據總線(xiàn)寬度和地址總線(xiàn)寬度均為16 位。主要接口功 能要求如下:
1)產(chǎn)生電路板本身的程序復位和硬件復位信號;
2)產(chǎn)生I/O 讀、寫(xiě)信號及數據總線(xiàn)接口芯片片選信號;
3)產(chǎn)生與VME 總線(xiàn)的應答信號、數據選通信號,控制數據傳送方向;
4)具有中斷請求功能:可設定的中斷請求級;可編程中斷向量;支持中斷響應菊花鏈。
3 主要接口電路設計與功能實(shí)現
3.1 接口設計原理
通過(guò)比較研究,本文選用 Lattice 的通用陣列邏輯(GAL)芯片來(lái)完成接口邏輯電路設 計。GAL 芯片是Lattice 公司開(kāi)發(fā)的電可擦寫(xiě)、可重復編程的PLD,具有結構簡(jiǎn)單,易于編 程等優(yōu)點(diǎn)。本文采用3 片GAL 芯片進(jìn)行接口邏輯電路設計,電路基本結構及原理如圖1 所 示。圖中2 片GAL20V8 完成地址譯碼和讀寫(xiě)控制,1 片GAL16V8 完成中斷請求控制,數 據接口采用通用總線(xiàn)接口芯片Z8536。Z8536 是一種帶有兩個(gè)8 位I/O 口、通用可編程的總 線(xiàn)接口芯片。通過(guò)對控制寄存器進(jìn)行配置,可將這兩個(gè)I/O 口作為兩路8 位信號通道,或共 同構成一路16 位信號的通道。在本設計中,GAL 芯片將VME 總線(xiàn)*問(wèn)Z8536 的信號進(jìn) 行譯碼,再通過(guò)LA4 和LA5 對Z8536 各個(gè)接口及工作方式配置寄存器進(jìn)行選擇。VME 總 線(xiàn)借助Z8536 即實(shí)現對該從板上8 位或16 位數據的讀寫(xiě)。
圖1 電路基本結構及原理
3.2 地址譯碼和讀寫(xiě)控制電路設計與功能實(shí)現
地址譯碼電路要實(shí)現的主要功能是當主設備發(fā)出的地址有效信號AS*有效時(shí),自動(dòng)從 總線(xiàn)上獲取地址和地址修飾碼,然后根據地址修飾碼配置本次地址傳送的方式,再根據地址 發(fā)出相應的片選信號選擇板上芯片。讀寫(xiě)控制模塊的主要功能是通過(guò)讀寫(xiě)周期時(shí)序內產(chǎn)生的 DS0*、DS1*、WRITE*、LWORD*、IACK*等信號正確配置數據傳送的形式,控制板上的 I/O 芯片的讀寫(xiě),并發(fā)出DTACK*信號還原主設備[2]。
為滿(mǎn)足以上要求,地址譯碼芯片上的CE[3~0]分別接4 片Z8536 總線(xiàn)接口芯片的使能端; 讀寫(xiě)控制芯片上的RD 和WR 分別接Z8536 的讀寫(xiě)使能端。通過(guò)這兩塊芯片,實(shí)現了VME 總線(xiàn)對該從板上各路信號的讀寫(xiě)進(jìn)行的控制。
由以上分析及邏輯推理確定了 GAL 芯片要實(shí)現的功能以后,根據總線(xiàn)協(xié)議和硬件電路 即可得到相關(guān)信號之間的邏輯關(guān)系,本文據此完成了相應ABEL-HDL 程序編寫(xiě)并利用 LatTIce 公司的專(zhuān)用開(kāi)發(fā)工具ispLEVER5.1 對GAL 芯片程序進(jìn)行了編譯和仿真調試,其地址 譯碼控制過(guò)程仿真波形如圖2 所示。
圖 2 地址譯碼控制過(guò)程仿真波形
3.3 中段請求控制電路設計與功能實(shí)現
VME 優(yōu)先級中斷機制采用菊花鏈,它用于在板與板之間傳送一電平信號。它始于第一 槽而終結于最后一槽。系統可以提供IRQ 1 ~IRQ7 共7 個(gè)中斷請求,其中IRQ7 具有最高優(yōu) 先級。本文采用通過(guò)跳線(xiàn)設定優(yōu)先級的方法。當中斷處理器處理中斷請求時(shí),中斷應答菊花 鏈驅動(dòng)器啟動(dòng)中斷應答菊花鏈工作,以確保只有一個(gè)中斷器響應正在進(jìn)行中的中斷應答周 期。當主設備應答某個(gè)中斷時(shí),首先把IACK*信號驅動(dòng)為低,表示當前周期是中斷應答周 期,同時(shí)將相應的中斷請求級別值放到A01~A03 上。而中斷響應主要由中斷響應輸入 (IACKIN*)和中斷響應輸出((IACKOUT*)組成應答菊花鏈。若某一從設備發(fā)出中斷請求,并 且響應的中斷識別碼和自己匹配,同時(shí)接到上一級傳下來(lái)的有效的IACKIN*信號,則判斷 是自己的中斷響應,應該堵塞IACKOUT*信號,使之為高電平,否則應該繼續下傳 IACKOUT*信號[3]。根據上述的VME 總線(xiàn)中斷處理機制和過(guò)程,可以設計出在Slave 模式 下,從設備通過(guò)GAL 芯片申請中斷的控制邏輯。中斷控制邏輯部分的ABEL-HDL 源程序 如下:
圖 3 是該程序在ispLEVER5.1 中的仿真波形圖。在該圖中,從設備板上的Z8536 通過(guò) 將INT 拉低請求一個(gè)權限為IRQ2 的中斷,譯碼識別代碼為010。由圖可見(jiàn),當A[3~1]為 010 時(shí),菊花鏈停止傳送,否則由IACKOUT 傳出。
圖 3 中斷請求控制仿真波形
4 結語(yǔ)
目前基于上述接口電路的VME 總線(xiàn)I/O 接口板卡設計研制工作已完成,并已成功應用 于機艙自動(dòng)化控制系統原理樣機中。試運行以來(lái)穩定可靠,表明本文設計思路方法可行,電 路及程序實(shí)現達到預期目標,為VME 總線(xiàn)接口邏輯功能的設計與實(shí)現提供了一條途徑。
本文創(chuàng )新點(diǎn):VME 總線(xiàn)接口電路設計方法有多種,本文利用可編程邏輯器件,通過(guò)軟 件手段實(shí)現VME 總線(xiàn)地址譯碼以及數據讀寫(xiě)與中斷控制邏輯,使總線(xiàn)接口電路得到了有效 的簡(jiǎn)化。
DIY機械鍵盤(pán)相關(guān)社區:機械鍵盤(pán)DIY
評論