引言
隨著微電子技術和半導體工業的不斷創新和發展,集成電路的集成度和生產工藝技術水平得到不斷提高,從而使得在一個半導體芯片上完成系統級的集成已成為可能。現代數字技術已進入電子設計自動化EDA(Electronic Design Automation)時代,這大大改變了現代電子系統設計的理念,極大地提高了大規模系統電子設計的自動化程度。EDA設計方法學在各種電子系統設計中有著極大的影響和廣闊的應用前景,當然在電機控制領域也不例外。
1 現代EDA設計方法
可編程邏輯器件是從20世紀80年代開始迅速發展起來的,現在已經成為ASIC(Application Specific Integrated Circuit)的一個重要分支,在計算機應用、通信、智能儀表、醫用設備、軍事、民用電器等各個領域都得到了廣泛的應用,并受到越來越多的關注。它允許用戶按照自己的設計思想對其進行重新編程或重構,因此屬于可編程ASIC一類,并可進一步轉化為掩模(mask)ASIC。
現代可編程邏輯器件主要指CPLD(Complex Programmable Logic Device,復雜可編程邏輯器件)和FPGA(Field Programmable Gate Array,現場可編程門陣列)兩種大容量的可編程邏輯器件,采用深亞微米工藝,能應用在不同的高科技研發領域,如數字電路設計、微處理器系統、DSP、電信、可重構計算機及ASIC設計等。由于以EEPROM、SRAM或FLASH為基礎,用戶可以通過計算機對芯片進行在系統編程(ISP)或在線重配置(ICR),不需要做掩模版圖設計,因而大大降低了成本,縮短了開發時間。
現代EDA設計方法是伴隨著大規模可編程邏輯器件CPLD/FPGA的出現而誕生的,它改變了以卡諾圖化簡、小規模的TTL芯片的堆砌技術等為代表的傳統數字電路設計模式,而是利用軟件來設計硬件,軟件的改變相應地改變了硬件電路結構,甚至在系統運行時改變系統的硬件結構,而不必重新布置器件管腳和設計系統電路,這用傳統設計方法是無法實現的,它的出現打破了硬件電路和軟件設計的傳統界限。EDA是以計算機為工具,在EDA軟件平臺上,對以硬件描述語言HDL為系統邏輯描述手段完成的設計文件自動地完成邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合及優化、邏輯布局布線、邏輯仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。EDA最大的特征就是強大的邏輯設計仿真測試技術。EDA仿真測試技術只需通過計算機就能對所設計的電子系統從各種不同層次的系統性能特點完成一系列準確的測試與仿真操作,在完成實際系統的安裝后還能對系統上的目標器件進行所謂邊界掃描測試。這一切都極大地提高了大規模系統電子設計的自動化程度。
采用EDA方法和可編程器件,設計者的工作就僅限于利用軟件的方式,即利用硬件描述語言來完成對系統硬件功能的描述,在EDA工具的幫助下就可以得到最后的設計結果。盡管目標系統是硬件,但整個設計和修改過程如同完成軟件設計一樣方便和高效。
傳統的電路設計方法都是自底向上的,即首先確定可用的元器件,然后根據這些器件進行邏輯設計,完成各模塊后進行連接,最后形成系統。基于EDA技術的所謂自頂向下的設計方法正好相反,其步驟就是采用可完全獨立于目標器件芯片物理結構的硬件描述語言,在系統的基本功能或行為級上對設計的產品進行描述和定義,結合多層次的仿真技術,在確保設計的可行性與正確性的前提下,完成功能確認;然后利用EDA工具的邏輯綜合功能,把功能描述轉換成某一具體芯片的網表文件,輸出給該器件廠商的布局布線適配器,進行邏輯映射及布局布線,再利用產生的仿真文件進行包括功能和時序的驗證,以確保實際系統的性能。這種把系統的結構構成方式與系統的行為或算法方式相混合的描述方式稱為混合層次描述,設計者可以在抽象度相當高的層次上描述系統的基本結構。
自頂向下的設計方法由于頂層的功能描述可以完全獨立于目標器件的結構,在設計的最初階段,設計人員可不受芯片結構的約束,集中精力對產品進行最適應市場需求的設計,從而避免了傳統設計方法中的再設計風險,縮短了產品的上市周期,而且設計成果可以重復利用,可移植性強。現代的電子應用系統以及電子產品的開發與生產正向模塊化發展,或者說向軟硬核組合的方向發展。對于以往成功的設計成果稍作修改或組合就能投入再利用,從而產生全新的或派生的設計模塊,同時還可以以一種IP核(Intelligence Property Core,知識產權芯核,一種已注冊產權的電路設計)的方式進行存檔。
在實際設計工作中,這兩種方法往往是結合在一起使用的,在清楚了所要設計系統的整體功能后,把整個功能劃分為若干功能模塊,如果需要的話,再繼續劃分為更小的或更容易實現的子模塊,直到這些小模塊能很容易地用硬件語言進行描述或直接利用現成的IP模塊。等所有分散的功能子模塊都設計完成后,再把這些子模塊按一定的方式組合起來,最后形成所要求的系統功能,仿真正確后設計任務也就基本完成了。由于采用的是結構化的設計開發手段,一旦主系統基本功能結構得到確認,即可實現多人多任務的并行工作方式,使系統的設計規模和效率大幅度提高。
2.1 EDA設計思想對電機控制方面的影響
硬件電路設計的軟件化是EDA設計方法學的基本思想,也是電路設計的發展趨勢,用硬件描述語言來描述模擬數字電路系統是這一趨勢的重要組成部分。由于開發工具的通用性、設計語言的標準化以及設計過程幾乎與所用的CPLD/FPGA器件的硬件結構沒有關系,所以設計成功的各類邏輯功能塊軟件有很好的兼容性和可移植性,它幾乎可用于任何型號的CPLD/FPGA中,由此還可以以知識產權的方式得到確認,并被注冊成為所謂的IP芯核,從而使得片上系統的產品設計效率大幅度提高。由于相應的EDA軟件功能完善而強大,仿真方式便捷而實時,開發過程形象而直觀,硬件因素涉及甚少,因此可以在很短時間內完成十分復雜的系統設計,這正是產品快速進入市場的最寶貴的特征。
采用FPGA和CPLD不僅是電子技術發展的必然趨勢,而且也是衡量產品技術先進性和競爭力的一個重要標志。基于EDA的CPLD/FPGA的應用和技術推廣將是我國未來電子設計技術發展的主流。這些新型器件的出現,為我們進行電機集成控制器的研究提供了物質基礎和技術手段,大大地拓廣了我們的設計思路,使得諸如電機控制器等的片上系統集成有了可能。片上系統的出現,對大幅度降低功耗、提高抗干擾性、增加技術保密性以及減少電路板面積等都提供了良好的解決方案;在系統可編程(ISP)技術又使得設計者可以隨時通過軟件對器件編程,從而達到改變硬件結構的目的。隨著EDA技術的發展和CPLD/FPGA在深亞微米領域的進軍,它們與.MCU、MPU、DSP、A/D、D/A、RAM和ROM等獨立器件間的物理與功能界限已日趨模糊。特別是軟/固IP芯核產業的迅猛發展,嵌入處理器IP核的FPGA器件的出現,片上系統(SOC)已近在咫尺。CPLD/FPGA以其不可替代的地位及伴隨而來的極具知識經濟特征的IP芯核產業的崛起,正越來越受到業內人士的密切關注。EDA技術打破了軟硬件之間最后的屏障,使軟硬件工程師們有了真正的共同語言,使目前一切仍處于計算機輔助性設計和規劃的電子設計活動產生了實實在在的設計實體。可以這么說,基于EDA的IP芯核產業的推動應是我國在下一世紀知識經濟發展的重要切人點之一。單片機時代已經結束,未來將是EDA的時代,這是極具深刻洞察力的明世之言。
2.2 電機控制器的研究現狀和發展趨勢
現代電機控制的發展,一方面要求提高性能、降低損耗、減少成本,另一方面又不斷地有技術指標極其苛刻的特殊應用的系統需求。可靠性高、實時性好是對電機控制系統的基本要求。微電子技術和計算機技術的飛速發展以及控制理論的完善、仿真工具的日漸成熟,給電機控制行業帶來了很多發展的機遇;同時現代電力電子技術的發展,使得功率器件的開關頻率越來越高,各項性能也越來越好。而傳統的基于單片機軟件運算的控制系統,由于速度慢、開發周期長等弱點,已越來越不適應現代高性能伺服系統的要求以及時代發展的需要。
在數據處理量大且實時性和精度要求又高的場合,例如矢量變換控制系統,單片機MCU已不再能滿足要求,因此人們自然而然地又想到了數字信號處理器(DSP)。近年來,越來越多的單片機用戶開始選用DSP器件來提高產品性能,DSP器件取代高檔單片機的時機已經成熟。采用基于DSP的電機專用集成電路,通過復雜的算法達到同樣的控制性能,既降低成本,可靠性又高,并且有利于專利技術的保密,還可以降低對傳感器等外圍器件的要求。有時,系統要求的人機交互、打印等控制較多,一個DSP不能勝任,這時可采用一個單片機來處理事務、一個DSP來處理運算的多處理器系統。但這樣做既增加了兩個處理器之間同步和通信的負擔,又使系統實時性變壞,延長系統開發時間。在這種情況下,如果把微處理器、微控制器和數字信號處理器的能力再加上外部各種分立元器件實現的邏輯功能集中于一塊芯片上,那么不但能解決上面的各種問題,還大大減少了控制器的體積和損耗,相應地可靠性也得到了提高。這就是電機控制器的集成化研究,需要自己開發類似的芯片。
同MCU和DSP相比較,基于EDA技術的CPLD/FPGA器件的開發應用可以從根本上解決所遇到的問題。最近十幾年中,大規模/超大規模可編程邏輯器件以及現代EDA技術的發展已經使得幾乎不具備微電子學和半導體工藝專業知識的一般設計人員在實驗室研究集成化的控制器成為可能,也能夠進行專用集成電路的開發,而且只需要一臺計算機、一條編程下載電纜就可以完成ASIC的基本開發,如邏輯設計、時序仿真等,其開發語言比較簡單,也不必了解很多芯片設計方面的細節,只需從行為上描述就可以了。正因為這些手段的應用,使得電機專用集成電路的研究方興未艾。
不可否認,在一些系統中MCU或DSP與CPLD/FPGA有很強的功能互補性。但從長遠看,隨著EDA技術的發展、CPLD/FPGA集成水平的進一步提高和IP芯核產業的進一步擴大,可以預言,在大部分的電子設計領域,MCU、MPU、DSP或A/D、D/A和RAM等必將以各種軟/固/硬IP芯核的形式大統一于CPLD/FPGA,實現真正的單片系統。
最近國外已公開發表了很多關于電機控制器集成方面的文章,而且還相應地提出了一些便于用EDA方法及CPLD/FPGA器件實現的電機控制理論,如電壓空間矢量PWM等。目前國外在電機控制器的集成研究方面已經比較先進,從公開發表的文獻上看,諸如基于矢量控制、直接轉矩控制的控制器已經可以用單片FPGA或CPLD實現,省卻了MCU、DSP,其功能都由硬件來實現,從而大大提高了運算速度,解決了軟件運行速度慢的瓶頸,提高了運行性能,并且可移植能力強;最近幾年,更新穎的控制手段如模糊控制、神經網絡控制、自適應控制、專家控制等智能控制也已經有人實現了模塊化,做成了ASIC。從最新市場情況看,目前一些國外廠家做成了能自動檢測電機類型的智能型的集成控制器,具有多種控制模式。隨著技術的進一步發展,未來幾年內有可能把模擬電路或模數混合電路也很方便地由用戶做成符合自己要求的ASIC。
而在國內,從各種刊物上看,進行同類研究的文章中達到了一定水平的寥寥可數,而且大部分進行的只是控制器的某一功能的模塊化研究,其它的多數也只是在理論上探討了一些,但不深入,進行實質性的開發的并不多。市場上也未見國內廠家自主開發生產的高水平產品。應該可以看到,電機控制器的單片集成化研究已經成為電機控制領域的一個新的發展方向,也是技術發展的必然趨勢。
3 基于EDA技術的電機控制器集成化設計方法
具備了可編程邏輯器件以及相應的EDA開發工具,就可以利用某一種或某幾種硬件描述語言實現電機控制器的集成化設計。基于EDA的電機控制器的集成,應包括算法研究、軟件編程以及硬件實現,需要開發出諸如脈寬調制模塊、坐標變換模塊、電流調節模塊、速度調節模塊、存儲模塊及一般邏輯處理模塊等基本模塊。以這些基本模塊為基礎,就可以繼續研究更大的模塊,如矢量控制模塊、直接轉矩控制模塊及智能控制模塊等,最后組合成實用的控制系統。
根據現代EDA設計方法,電機控制器的集成設計可以分為以下幾個步驟:
(1)系統規劃
根據控制任務規劃整個系統,明確控制對象、控制目的、控制方法等,大致劃分功能模塊,并確定哪些功能可以利用可編程器件實現,哪些不宜于使用可編程器件。
(2)算法研究
包括新算法的研究或傳統軟件算法的改進,以適于用硬件描述語言進行設計。
(3)系統或子系統的模塊化
根據系統的規劃,將可以使用可編程器件的功能進一步細化,形成一些小的可以直接用硬件描述語言或現成的IP模塊實現的子模塊,并確定各個子模塊的接口即輸入輸出。各個子模塊就是靠這些接口構成更大的模塊或功能的。
(4)模塊功能設計
將劃分好的子模塊的功能按照一定的算法分別用硬件描述語言設計,可以采用行為級描述,也可以采用RTL級或門級描述,或者是混合使用各種描述方法;程序完成后在EDA平臺上分別進行編譯及功能仿真。
(5)集成與仿真
根據系統的要求,將設計好的各模塊進行組合,形成一個或多個大的集成功能模塊,并對這些大的模塊進行功能仿真與時序仿真。
(6)控制器的硬件實現
將仿真過的模塊通過編程電纜下載到目標器件上,然后對整個系統電路進行硬件調試,不合要求的地方可以隨時調整設計軟件來改變硬件結構,亦即在系統編程。
4 結語
基于現代EDA技術和CPLD/FPGA器件,運用現代電機控制理論,進行電機控制器的集成化研究將是未來電機控制領域的一個重要發展方向,它不僅具有理論意義,而且具有重要的經濟意義和戰略意義,在軍事、民用等領域都會有廣闊的用途。
? ? ? ?責任編輯:tzh
評論