- 相關(guān)推薦
基于在系統(tǒng)可編程技術(shù)的PC運動控制卡研究
摘要:介紹了在系統(tǒng)可編程(ISP)器件及其優(yōu)點,分析了PC多軸運動控制卡關(guān)鍵電路的作原理,并由高密度的ISP器件設(shè)計實現(xiàn),運動結(jié)果表明所設(shè)計的電路完全達到了設(shè)計要求。
關(guān)鍵詞:在系統(tǒng)可編程 雙口RAM 多軸運動控制卡
當(dāng)今,數(shù)控系統(tǒng)正在朝著高速度、高精度以及開放化、智能化、網(wǎng)絡(luò)化的方向發(fā)展,而高速度、高精度是通過控制執(zhí)行部件(包括運行控制卡及伺服系統(tǒng))來保證的。以往的運動控制卡主是基于單片機和分立數(shù)字電路制作的,用以實現(xiàn)位置控制、光柵信號處理等功能。由于器件本身執(zhí)行速度慢、體積大、集成度低,并且結(jié)構(gòu)固定,電路制作完成以后,無法改變其功能和結(jié)構(gòu)。采用在系統(tǒng)可編程技術(shù),應(yīng)用ispLSI器件開發(fā)的PC——DSP多軸運動控制卡,能夠完全解決上述問題,適應(yīng)數(shù)控系統(tǒng)發(fā)展的需要。
1 ISP器件及其優(yōu)點
ISP(In-System Programmability)器件,是美國Lattice半導(dǎo)體公司于20世紀90年代初開發(fā)出的一種新型高密高速的現(xiàn)場可編程數(shù)字電路器件,具有在系統(tǒng)可編程能力和邊界掃描測試能力,非常適合在計算機、通信、DSP系統(tǒng)以及遙測系統(tǒng)中使用。
(范文先生網(wǎng)www.gymyzhishaji.com收集整理)
在系統(tǒng)可編程技術(shù)與傳統(tǒng)邏輯電路設(shè)計比較,其優(yōu)點在于:(1)實現(xiàn)了在系統(tǒng)編程的調(diào)試,縮短了產(chǎn)品上市時間,降低了生產(chǎn)成本。(2)無需使用專門的器件編程設(shè)置,已編程器件無須倉庫保管,避免了復(fù)雜的制造流程,降低了現(xiàn)場升級成本。(3)使用ISP器件,不僅能夠在可重構(gòu)器件的基礎(chǔ)上設(shè)計開發(fā)自己的系統(tǒng),還可以在不改變輸入、輸出管腳的條件下,隨時修改原有的數(shù)字系統(tǒng)結(jié)構(gòu),真正實現(xiàn)了硬件電路的“軟件化”,將器件編程和調(diào)試集中到生產(chǎn)最終電路板的測試階段,使系統(tǒng)調(diào)試數(shù)字系統(tǒng)硬件現(xiàn)場升級變得容易而且便宜[1]。
2 在系統(tǒng)可編程技術(shù)應(yīng)用
2.1 系統(tǒng)描述
本所自主開發(fā)的多軸運動控制卡采用的是主-從式PC-DSP系統(tǒng)。PC機的主要任務(wù)是提供良好的人機交互環(huán)境;而DSP(數(shù)字信號處理器)則作為系統(tǒng)執(zhí)行者,以高速度進行算法實現(xiàn)、位置調(diào)節(jié)和速度調(diào)節(jié),然后經(jīng)過16位的D/A將數(shù)據(jù)送給伺服控制單元。系統(tǒng)不但可以進行高速度高精度控制,同時也是一個DSP伺服系統(tǒng)的開發(fā)平臺。
PC運動控制卡采用美國德州公司DSP芯片TMS320F206作為系統(tǒng)的核心,運動控制卡由ISP模塊、DSP-PC通信雙口RAM模塊、光柵信號輸入模塊、數(shù)/模轉(zhuǎn)換電路模塊四部分組成(見圖1)。其中,ISP模塊中包括了可變地址的譯碼電路、輸入輸出緩沖/鎖存器電路、11位的自動加計數(shù)器電路、雙端口RAM的控制電路以及PC機和DSP測驗握手電路。本系統(tǒng)使用Lattice公司的ispLSI系列CPLD(復(fù)雜可編程邏輯器件)來實現(xiàn)這一部分數(shù)字電路和邏輯控制電路,如圖2所示。
2.2 雙端口RAM訪問控制的實現(xiàn)
對于本系統(tǒng)來說,PC機要發(fā)送控制指令和進行大量數(shù)據(jù)計算,數(shù)據(jù)交換應(yīng)盡可能占用較少的機時和內(nèi)存空間;此外,PC機的系統(tǒng)總線與DSP之間還要進行大量可靠的數(shù)據(jù)傳輸,它們均過多地占用CPU時間,導(dǎo)致CPU效降率低。使用雙端口RAM,交換信息雙方CPU將其當(dāng)作自己存儲器的一部分,可保證高速可靠的數(shù)據(jù)通信。我們選用2K×8bit的IDT7132,完全能夠滿足本系統(tǒng)中數(shù)據(jù)交換的要求。對雙端口RAM訪問,一般有三種方式,即映射內(nèi)存方式、DMA方式和擴展I/O方式。映射內(nèi)存方式訪問雙端口RAM,不需要周轉(zhuǎn),訪問速度快。實模式及保護模式下,能對確定內(nèi)存空間進行訪問,實現(xiàn)對RAM任意存儲單元讀寫;但在32位的Windows98和Windows NT操作系統(tǒng)下,不支持對確定內(nèi)存空間的訪問,要訪問雙端口RAM必須編寫復(fù)雜的硬件驅(qū)動程序,難度很大。DMA方式訪問端口RAM,傳送數(shù)據(jù)的速度靈活、擴展I/O方式訪問雙端口RAM,可以按實現(xiàn)要求分配I/O端口,實現(xiàn)對雙端口RAM所有存儲單元讀寫,這種方式軟、硬件設(shè)計都很簡單。所以,擴展I/O方式訪問雙端口RAM是最佳方案。
從技術(shù)上來說,PCI總線是最先進的,不僅速度快,而且支持即插即用等特性,但控制卡上雙端口RAM芯片是8們的IDT7132,而PCI總線是32位。為了簡化設(shè)計,對PC機一方,采用了16位ISA總線, 通過擴展I/O方式訪問雙端口RAM。實際占用了兩個I/O端口地址,一個作為計數(shù)器預(yù)置端口地址,一個作為雙端口RAM讀/寫端口地址。PC機在讀/寫存儲器之前,首先要通過預(yù)置數(shù)端口,用輸出指令將要訪問RAM存儲器的起始地址置入11位可預(yù)置加計數(shù)器中;以后每訪問一次讀/寫端口,執(zhí)行一次讀/
寫操作,計數(shù)器中的地址就自動加1,計數(shù)器輸出指向RAM的下一個存儲單元。這樣,簡單地執(zhí)行I/O指令,就可以傳送一批數(shù)據(jù)。而下位的微處理器(DSP)采用的是存儲器訪問方式,它將IDT7132的2K空間映射自己的外存儲器中,實現(xiàn)對雙端口RAM的任意存儲單元的訪問。
在PC機和DSP對端口RAM訪問時,只要不是同時訪問同一個存儲單元,就允許兩個端口對片內(nèi)任何單元同時進行獨立的讀/寫操作,而且互不干擾。但兩個端口訪問同一存儲單元,會造成同時寫或者一側(cè)讀一側(cè)寫的訪問沖突,因此應(yīng)避免這一訪問沖突發(fā)生。由于片內(nèi)邏輯促裁可根據(jù)兩偶片選或地址信號同時到達的差別(小到5ns),對后到達一側(cè)進行封鎖,并同時輸出一個BUSY(約25ns)的低電平脈沖信號,利用這一信號,便可解決訪問沖突問題。一般來說,標準的ISA總線周期為3個時鐘周期,若主板ISA總線時鐘為8MHz,則一個時鐘周期為125ns;若總線時鐘為6MHz,則一個時鐘周期為167ns,相應(yīng)的16位總線周期時間分別為375ns和501ns。所以對于PC機來說,可以將BUSY信號接ISA總線的I/OCHRDY信號線,總線周期中會自動插入一個等待周期(最多可達10個時鐘周期),直至BUSY信號拉高;同樣,對于DSP,BUSY信號接DSP芯片的READY信號線,系統(tǒng)總線也會自動插入等待周期,從而避免了PC—DSP對雙端口RAM的共享沖突。
無論是PC機還是DSP,傳送數(shù)據(jù)后都需要通知對方及時提取數(shù)據(jù),以免后面數(shù)據(jù)對前面數(shù)據(jù)覆蓋,這就需要協(xié)調(diào)PC—DSP間的數(shù)據(jù)交換。通過中斷控制器可實現(xiàn)數(shù)據(jù)交換過程中兩個CPU之間相互中斷。對于PC機寫RAM操作完成之后,PC機通過端口1將中斷控制器2(DSP中斷控制器)置位,DSP響應(yīng)中斷后進入中斷服務(wù)程序。在子程序中,DSP可以通過端口4將中斷控制器2復(fù)位。同理,DSP也可向PC機發(fā)中斷,PC機響應(yīng)中斷后進入斷服務(wù)程序。
2.3 器件選擇和輸入方法
選擇可編程邏輯器件型號時,應(yīng)注意到ISP模塊電路總共使用I/O管腳數(shù)目為52個,大約需要10~20個GLB單元。所以選用ispLSI1032E-100LJ84芯片來實現(xiàn)ISP模塊電路,它的集成度達到6000門,具有64個I/O引腳,寄存器超過96個,32個GLB單元,系統(tǒng)速度為100MHz,從資源和速度上能夠滿足該多軸運動控制卡的需求。同一芯片內(nèi)的門電路、觸發(fā)器、三態(tài)門等參數(shù)特性完全一樣,抗干擾性能比原來分立器件構(gòu)成的電路也有極大的提高,完全可能實現(xiàn)全數(shù)字的I/O電路。
使用Lattice公司提供的數(shù)字系統(tǒng)設(shè)計軟件ispEXPERT,邏輯設(shè)計可以采用原理圖、硬件描述語言(HDL)以及兩者混合采用三種方法輸入。本設(shè)計采用ABEL—HDL語言輸入和編寫測試向量,并且使用自己開發(fā)的編程板完成對器件的編程和下載。
2.4 主時序設(shè)計
以PC機為例,訪問雙端口RAM分以下兩步完成:
第一步是向PC機I/O端口中的數(shù)據(jù)端口送數(shù)據(jù)D0~D12,D0~D10(訪問RAM的起始地址)送至計數(shù)器,D11作為可預(yù)置計數(shù)器的LOAD信號;當(dāng)D11為1時,計數(shù)器裝入預(yù)置數(shù)。D12作為讀寫控制位,D12為1時,PC機對RAM寫操作;為0時,對RAM讀操作。
第二步是通過PC機ISA總線的I/O端口讀寫RMA,每完成一次讀/寫,計數(shù)器輸出就指向下一個要訪問的RMA地址單元。時序如圖3所示。
3 功能仿真
為了保證本系統(tǒng)設(shè)計的正確性,在對ISP器件下載以前,首先對系統(tǒng)進行功能仿真。功能仿真的輸入信號由ABEL-HDL編寫測試矢量給出。仍以PC機訪問雙端口RAM為例,系統(tǒng)的功能仿真波形圖如圖4所示。
由圖4可以看出,假定訪問RAM的0x006地址,在LOAD(D11)信號到來后,當(dāng)IOW的上升沿到來時(見圖4中1所示),預(yù)置數(shù)(OA3 OA2 OA1 OA0=0110,即十進制數(shù)6)寫入計數(shù)器。然后對雙端口RAM進行讀操作,PC讀信號(IOR)下降沿到來(見圖4中2所示),這時RAM的OEL端(數(shù)據(jù)輸出控制)為低電平(數(shù)據(jù)輸出有效),CEL端(RAM片選)為低電平(選中),RWL(RAM的讀寫控制)置高電平(讀有效),PC機讀取RAM中的數(shù)據(jù);當(dāng)IOR上升沿到來時(見圖4中3所示),計數(shù)器輸出地址加1(OA3 OA2 OA1 OA0=0111,即7),指向下一RAM地址。在預(yù)置數(shù)重新寫入計數(shù)器后(見圖4中4所示),對雙端口RAM進行寫操作。PC寫信號(IOW)上升沿到來,OEL端置高電平,CEL端置低電平,RWL置低電平(見圖4中5所示),PC機將數(shù)據(jù)寫入雙端口RAM中,計數(shù)器輸出地址自動加1。同理,DSP訪問雙端口RAM也可實現(xiàn)。
該運動控制卡經(jīng)實際測試可以達到24MHz,時鐘信號到達輸出延遲為1.6ns,而ISA總線的數(shù)據(jù)傳輸率為16Mb/s,解決了數(shù)據(jù)傳輸?shù)摹捌款i”問題,同時避免了以前的運動控制卡執(zhí)行速度慢、體積大、集成度低,并且結(jié)構(gòu)固定,電路制作完成以后,無法改變其功能和結(jié)構(gòu)的缺點,抗干擾性能比分立器件構(gòu)成的電路也有極大的提高。實際運行結(jié)果表明完全達到了設(shè)計要求。
實際上,DSP的應(yīng)用也是本卡的核心技術(shù)之一,但是限于篇幅,不再介紹。
【基于在系統(tǒng)可編程技術(shù)的PC運動控制卡研究】相關(guān)文章:
凌華圖像運動控制卡基于PC的目標追蹤系統(tǒng)的應(yīng)用08-06
凌華圖像運動控制卡基于PC的目標追蹤系統(tǒng)的應(yīng)用08-06
基于數(shù)據(jù)庫技術(shù)的實驗室管理系統(tǒng)的研究08-18
基于Web技術(shù)的網(wǎng)絡(luò)考試系統(tǒng)08-06
基于虛擬現(xiàn)實技術(shù)的自行車漫游系統(tǒng)的研究與實現(xiàn)08-06
基于嵌入式PC的PIII計算機系統(tǒng)設(shè)計與實現(xiàn)08-06
基于ORACLE技術(shù)的WWW信息查詢系統(tǒng)08-06