| IT十八般武藝之嵌入式電子設計軟件之我見(jiàn)
IT產(chǎn)業(yè)如今在中國發(fā)展得如火如荼,IT專(zhuān)業(yè)年年擴招,人數越來(lái)越多。如今的IT相關(guān)的本科專(zhuān)業(yè)包括電子信息工程、通信工程、電子信息與技術(shù)、自動(dòng)化與控制專(zhuān)業(yè)、計算機專(zhuān)業(yè)、機械與電子工程、信息安全工程、電氣自動(dòng)化專(zhuān)業(yè)等等。 但我個(gè)人覺(jué)得其中IT的核心專(zhuān)業(yè)當屬電子信息工程和通信工程兩個(gè)專(zhuān)業(yè),因為這兩個(gè)專(zhuān)業(yè)的學(xué)習內容真正涉及了IT——Information Technology,以電路原理、模擬電路(低頻和高頻兩部分)、數字電路、信號與系統、數字信號處理、計算機硬件基礎、隨機信號分析、通信原理為基礎,向上學(xué)習了單片機技術(shù)、DSP技術(shù)、EDA技術(shù)、嵌入式操作系統、數字圖像處理、交換技術(shù)、現代通信系統、微波技術(shù)基礎、射頻電路設計、傳感器技術(shù)、醫學(xué)電子和集成電路IC技術(shù)等等。而我,就是一個(gè)電子信息工程專(zhuān)業(yè)的學(xué)生,現在大四了,即將畢業(yè)成為IT業(yè)真正的一員,我為此而感到無(wú)比的光榮和自豪。 回顧自己這四年的專(zhuān)業(yè)學(xué)習,感由心生。我們專(zhuān)業(yè)如上所說(shuō),課程多而難,非有志者,我覺(jué)得不大可能把它們都學(xué)好。而且真是一門(mén)實(shí)踐性很強的工程學(xué)科,實(shí)驗和經(jīng)驗與理論知識同樣重要,有些時(shí)候經(jīng)驗甚至勝于理論,常見(jiàn)的就是模擬電路這門(mén)課的學(xué)習了。如果你照顧學(xué)習理論,恐怕學(xué)完了模擬電路這門(mén)課你連最基礎的晶體管長(cháng)啥模樣都還不清楚吧?更不用說(shuō)怎么用了,O(∩_∩)O~呵呵!另外,在很多人看來(lái),就憑本科四年的學(xué)習,能夠掌握這些課程的部分內容已經(jīng)是相當不錯的了,如果全部都掌握了,那可真算是全才、奇才了! 別的,我暫且不說(shuō),在這里我先說(shuō)一下我大學(xué)這四年學(xué)習我們專(zhuān)業(yè)所遇到的、用到的和掌握的專(zhuān)業(yè)軟件吧!要知道,畢竟現在已經(jīng)不再是X86時(shí)代了,Intel的酷睿2雙核甚至4核處理器加上2GB的DDR2-800內存條和獨立顯卡都早已經(jīng)平民化了,大眾化了,整個(gè)IT產(chǎn)業(yè)作為信息產(chǎn)業(yè)的核心,在產(chǎn)品設計和制作方面也早已進(jìn)入了信息化、智能化時(shí)代,學(xué)習電子的,決不能不掌握計算機這門(mén)技術(shù),就像電工必須懂得如何使用電羅鐵一樣。而運行于Windows或者Linux平臺上的電子設計軟件也早已成為電子工程師的左膀右臂。因而,有必要在此介紹一下這些電子IT產(chǎn)業(yè)發(fā)展的幕后英雄們----電子設計EDA工具軟件。 一、電路基礎仿真與設計軟件 ①Pispice 9.2 基于Spice仿真模型,是業(yè)內公認的模擬器件仿真工具,具有仿真效率高,與實(shí)際結果80%以上的接近。但是工具箱眾多,操作略顯復雜。 ②Mutisum 10.0(也叫EWbench) 屬于美國國家儀器公司(NI)。整個(gè)軟件實(shí)現基于虛擬儀器,而且儀器種類(lèi)齊全,所有的仿真結果均以現實(shí)實(shí)驗室中的儀器界面呈現,感覺(jué)十分自然,操作也與設計儀器操作相當,是一個(gè)相當不錯的工具,所見(jiàn)即所得,是學(xué)習模擬電路的軟件首選,在它最新的10.0版本中還加入了PCB設計和8位單片機仿真功能。 ③protel99 SE 電路設計的入門(mén)級工具軟件,在中國大部分硬件工程師對它絕對都不陌生,整個(gè)器件短小精干,完整安裝所需硬盤(pán)空間不到300M,具有1-2層PCB板的設計和仿真能力。適于作為硬件電路設計EDA軟件的入門(mén)學(xué)習用。 ④Altium Designer 2009 Altium Designer 軟件為protel軟件的升級版本,先后經(jīng)歷了2004,2006到現在的2009,軟件功能越來(lái)越強大了,現在此軟件還具有設計FPGA和仿真C語(yǔ)言和HDL語(yǔ)言的能力,但是它也變得比protel更加的龐大了,安裝文件近1.5個(gè)G,完整安裝所占磁盤(pán)空間近3G。運行時(shí)所占系統資源也不少,內存至少在200M以上,算的是是個(gè)龐大大物了。 不過(guò),Altium Designer 2009雖然經(jīng)歷了這么多次升級,它現在依然不能勝任多層高速PCB的設計,說(shuō)到底也就是它的高速信號完整性分析仿真能力太弱了。所以,要設計多層高速PCB的同志們還是應當選擇專(zhuān)業(yè)一些的工具,如Mentor 公司和Cadence公司的軟件。 ⑤Cadence Allegro 16.2 此軟件為Cadence公司的最新高速PCB設計軟件,我是在上學(xué)期學(xué)習《高速電路分析與設計》這門(mén)課是略有接觸,僅學(xué)習了它的原理圖繪制,和PCB布局布線(xiàn),它還有許多其他的強大功能,十分的復雜。由于A(yíng)llegro 是在Linux下開(kāi)發(fā)的,它的許多操作與LINUX相近,對于習慣了Windows的人來(lái)說(shuō),剛開(kāi)始都會(huì )感覺(jué)有些不適應。不過(guò),沒(méi)有關(guān)系,慢慢的就會(huì )適應的,畢竟它在高速電路設計方面是夠專(zhuān)業(yè)、夠強大的,在國內大的公司做硬件設計幾乎無(wú)一例外的采用了它,學(xué)好了它就業(yè)不愁呀,呵呵!。 最后,用Allegro 進(jìn)行高速電路設計大量的工作集中于布局布線(xiàn)規則的設置上。所以,學(xué)習Allegro 耐心是必不可少的。 ⑥Proteus 7.4(現在最新版本為7.6) Proteus軟件也是基于Spice模型的一類(lèi)及原理圖設計,系統級電路仿真和PCB設計制作為主的EDA工具。它的強大之處為可以對單片機及其外圍電路進(jìn)行軟件模擬仿真。也就是說(shuō)它可以在沒(méi)有任何硬件成本投資的情況下先對整個(gè)數字模擬電路系統進(jìn)行硬件評估。這種觀(guān)念無(wú)疑是創(chuàng )新和實(shí)用的。 目前Proteus所支持的軟件模擬仿真MCU包括大多數51單片機和LPC的ARM7系列單片機。從自己使用的感受來(lái)講,Protus確實(shí)讓我耳目一新。不過(guò),希望它能夠繼續發(fā)展,支持更多的MCU和外圍數字模擬器件的軟件仿真。期待。。。。。。
二、MCU設計軟件 ①Keil 7.6(即uVision2) 這個(gè)軟件是我接觸的最早的單片機設計軟件,德國Keil公司的得意之作,支持90%以上的51內核單片機,集51匯編編譯器(A51),C語(yǔ)言編譯器(C5)以及51連接器和調試器于一身,可以進(jìn)行51的匯編語(yǔ)言,C語(yǔ)言程序編寫(xiě)和調試,也可以進(jìn)行軟件仿真,使用界面非常友好,操作簡(jiǎn)單,十分實(shí)用。實(shí)為學(xué)習MCU的入門(mén)首選和必備。 ②Keil uVision3 uVision3是keil的設計產(chǎn)品,增加了對32為MCU的支持,主要針對ARM7/ARM9/Cortex等系列ARM芯片的匯編及C語(yǔ)言編程,調試。使用流程和操作界面與uV2保持一致,是現在許多公司開(kāi)發(fā)ARM芯片的首選。 ③ADS 1.2 (升級版本為Code Warrior 4.x) ADS 1.2為摩托羅拉公司的軟件,現在它的半導體部已經(jīng)獨立出來(lái),成為飛思卡爾(freescale)半導體公司,ADS1.2為ARM芯片的開(kāi)發(fā)集成環(huán)境,大三的時(shí)候做課程設計時(shí)有用過(guò)感覺(jué)不錯。只是它的操作和軟件設置稍比keil要復雜些。至于它的升級版本Code Warrior 4.x則為freescale 8位/16位/32位單片機的集成開(kāi)發(fā)環(huán)境,我在學(xué)習《freescale 16位單片機技術(shù)》這門(mén)課很去年電子競賽培訓師時(shí)有接觸過(guò),感覺(jué)也還不錯! ④IAR 至于IAR,據說(shuō)是目前最優(yōu)秀的MCU開(kāi)發(fā)工具,具有功能強大,編譯代碼效率高,支持MCU種類(lèi)多等特點(diǎn),是學(xué)習NEC 78xx系列單片機和TI 16位單片機MSP430的首選軟件設計和編譯工具,我只是短暫的學(xué)習過(guò)一點(diǎn),原因是使用網(wǎng)上申請的MAX2000單片機。感覺(jué)是很與眾不同,只是感覺(jué)它的資料比較少,軟件也不易獲得,感興趣的朋友也可以去試用一下。 三、DSP設計軟件 至于DSP的學(xué)習,我僅限于上課時(shí)老師所講所以中用過(guò)TI的DSP——STM54XX,其編程設計軟件為CCS3.1,最新版本為CCS3.3.至于A(yíng)DI和Atmel的DSP我就都沒(méi)有用過(guò),據說(shuō)還是不錯的!
四、FPGA設計軟件 ①Libero IDE 8.3(最新版本為L(cháng)Ibero 8.6) Libero IDE 為ACTEL FPGA的設計軟件。ACTEL的FPGA是基于Flash的,掉電配置信息部丟失,上電即可運行,具有高可靠性和低成本,高安全性,低功耗等特點(diǎn)廣泛應用于航天領(lǐng)域,民用領(lǐng)域較少見(jiàn),其FPGA內部集成有模擬數字IP模塊和8051核,芯片性能還是不錯的!但是它的這個(gè)Libero IDE集成開(kāi)發(fā)環(huán)境確實(shí)不夠好用,至少與Altera的Quartus II和Xilinx的ISE相比,我個(gè)人是這樣認為的,因為09年初的時(shí)候曾因為參加ZLG舉辦的ACTEL FPGA設計大賽而使用它近4個(gè)月,對它也是有所了解的。 ②Quartus II 4.2/5.1/6.0/8.0/9.0 對于Quartus II這個(gè)軟件,我有說(shuō)不出的親切感因為它是我使用最多的FPGA軟件了,這個(gè)軟件的操作界面十分友好,集成了包括SOPC Builder、DSP Bulilder、MegaCore、Programmer and SignalTap II等軟件在內的眾多AlteraFPGA開(kāi)發(fā)設計工具。其中SOPC Builder為它的嵌入式系統硬件集成和設計工具,可以完成NIOS II 32bit軟核與外設IP或用戶(hù)模塊的集成;DSP Builder 為Altera FPGA的DSP設計工具,需要安裝對應的Matlab版本(比如最新的Quartus II 9.0對應的Matlab軟件版本為Matlab 2008a或更高),其實(shí)質(zhì)為在Matlab的Simulink工具中加入了Altera的FPGA DSP設計工具組件,從而實(shí)現由浮點(diǎn)數工具來(lái)設計定點(diǎn)數的HDL硬件設計;MegaCore為Altera FPGA的IP核例化工具,可以完成各種IP核的參數設置和例化工作;而SignalTap II則是Altera的基于JTAG和FPGA內核的低成本嵌入式邏輯分析儀,可以觀(guān)察FPGA內部的和外部的任意信號(但是占用FPGA的片上RAM資源,RAM使用多少與觀(guān)察信號數量和存儲深度成正比)非常實(shí)用,是我平時(shí)解決Altera FPGA設計調試問(wèn)題的必備工具。 ③NIOS II IDE 6.0/9.0 NIOS II IDE是Altera FPGA的嵌入式軟核 32bit-NIOS II的軟件集成開(kāi)發(fā)環(huán)境,采用流行的gcc編譯器,支持NIOS的匯編、C和C++編譯,鏈接,下載及調試,是學(xué)習基于A(yíng)ltera FPGA嵌入式系統開(kāi)發(fā)的必備軟件。整個(gè)軟件對工程文件的管理清晰明了,操作十分容易。 ④ISE 8.2i/9.1/10.x/11.3 不用多說(shuō)的是現在Xilinx FPGA在市場(chǎng)上所占的絕對優(yōu)勢。至于它的ISE開(kāi)發(fā)工具也是業(yè)內出了名的優(yōu)秀EDA軟件,它的設計效率極高,操作流程簡(jiǎn)單。ISE也和QuartusII一樣集成了眾多的Xilinx其自己FPGA開(kāi)發(fā)所需的工具,包括IP生成工具Core Generator、時(shí)序分析工具Timing Analyzer、設計約束工具Constraints Editor、管腳分配和時(shí)序約束工具Floorplan Editor and PACE、智能分析工具SmartXplorer (Linux Only)、映射和布局布線(xiàn)工具M(jìn)AP and PAR、Xilinx FPGA綜合工具XST、ISE集成仿真工具ISE Simulator (ISIM)、Xilinx在線(xiàn)調試嵌入式邏輯分析儀ChipScope Pro(相對于A(yíng)ltera的SignalTap II)以及XILINX工程導航器Project Navigator等等。 ISE功能強大,是實(shí)現Xilinx FPGA邏輯功能設計的必備工具。ISE帶給使用者的不只是強大還有更多的是創(chuàng )新的概念。 ⑤EDK 10.x/11.3 EDK為Xilinx的嵌入式系統設計和開(kāi)發(fā)提供了強有力的軟件保障。它包括XPS和SDK兩部分,分別對應于Xilinx FPGA嵌入式系統設計中的硬件系統集成和軟件設計。 目前,Xilinx共有3個(gè)自己的嵌入式內核——8bit-PicoBlaze、32bit-MicroBlaze、和32bit-PowerPC405/440。前兩種為嵌入式軟核,后者為嵌入式硬核。在XPS中可以以圖形化的方式直觀(guān)的完成MicroBlaze和PowerPC內核的硬件設計和簡(jiǎn)單的應用工程軟件設計(包括軟件編輯、編譯、鏈接、下載和調試)。包括可裁剪內核的配置和其與眾多外設IP的連接,并且XPS工具還可以工具系統集成,自動(dòng)生成對應外設的驅動(dòng)函數和系統的板級支撐包BSP,使用起來(lái)時(shí)相當的方便。 SDK是Xilinx FPGA嵌入式系統軟件設計的高級工具,支持帶操作系統的軟件編輯,編譯,鏈接,下載和調試。目前SDK支持的操作系統有Standalone、Xilkernel、Linux2.6和第三方提供的Vxworks。另外,SDK還自動(dòng)檢測并更新XSP中的硬件更改,從而使得SDK成為Xilinx 嵌入式系統軟件設計的理想解決方案。 ⑥System Generator 10.x/11.3 System Generator(簡(jiǎn)稱(chēng)Sygen)和Altera的DSP Builder一樣,都是基于Matlab和FPGA設計軟件,運用浮點(diǎn)數工具來(lái)設計定點(diǎn)數的FPGA硬件。在使用Sygen之前必須安裝ISE和其對應版本的Matlab軟件(比如ISE 10.x支持的Matlab版本為Matlab2007a和Matlab 2007b,而ISE11.x則支持Matlab 2008a以上的版本)。在Sysgen軟件中可以調用Simulink工具中集成的Xilinx DSP工具箱中的模塊以圖形化的方式實(shí)現FPGA的DSP設計。Sysgen工具會(huì )自動(dòng)生成相應的ISE工程、HDL語(yǔ)言文件和Modelsim 仿真文件。注意:每一個(gè)Sysgen設計模塊model中必須包括一個(gè) Xilinx Generator 圖標,用以設置工程屬性和調用ISE工具生成設計網(wǎng)表文件(ngc)等。 ⑦M(jìn)odelsim SE 6.1/6.5 Modelsim是Mentor公司推出的功能強大的圖形化仿真工具,是目前業(yè)內公認的最優(yōu)秀的EDA仿真工具。它支持多種FPGA器件(需要安裝相應的仿真庫,因為其自帶的只有少數幾個(gè)常用的仿真庫),VHDL與Verilog HDL混合仿真,以及多種輸入方式和操作模式,可以以模擬量的形式觀(guān)察數字信號,十分好用,且功能強大,推薦大家使用。 ⑧Synplify/Synplify Pro 8.6/9.6.2 Synplify工具為業(yè)內最專(zhuān)業(yè)的EDA綜合工具,支持眾多廠(chǎng)商的FPGA和CPLD器件及多種混合語(yǔ)言輸入,可以生成對應的網(wǎng)表文件和查看RTL圖及邏輯資源使用情況,從我實(shí)踐使用的體會(huì )來(lái)說(shuō)與網(wǎng)上人們所說(shuō)的其綜合效率高的特點(diǎn)并無(wú)不一致,可以在綜合室進(jìn)行多種優(yōu)化,它的軟件界面也做得相當好,非常的專(zhuān)業(yè)和實(shí)用。 五、系統級算法設計軟件 ①Matlab 6.5/2007a/2008a (最新版本最2009b(下載有)/2010a(據說(shuō)而已)) Matlab的大名相信每一個(gè)工科學(xué)生都不會(huì )陌生,它是基于矩陣運算的浮點(diǎn)數計算工具,目前它強大的數學(xué)計算能力已被廣泛的運用于社會(huì )生產(chǎn)工作的各個(gè)領(lǐng)域、各個(gè)學(xué)科和工程領(lǐng)域。全世界使用Matlab的工程師數以萬(wàn)計。這一點(diǎn),你只需要看看它的Simulink工具箱就知道了。 ②Labview 8.x(最新版本為L(cháng)abview 9.0) Labview是NI公司的主力軟件之一,它基于圖形化編程語(yǔ)言——G語(yǔ)言實(shí)現,開(kāi)創(chuàng )一種全新的電子設計和測量方法。使得現在的電子工程師們得以從發(fā)雜的編程語(yǔ)言中解脫出來(lái),能夠系統級上以圖形化直觀(guān)的方式,用所見(jiàn)即所得的觀(guān)點(diǎn)進(jìn)行工程設計和管理。其基于Labview實(shí)現的虛擬儀器,利用強大的PC功能實(shí)現數據采集和測量,以低成本和靈活性取代傳統測量?jì)x器,我覺(jué)得這勢必會(huì )成為未來(lái)電子測量和儀器儀表發(fā)展的主流趨勢。所以,Labview是非常值得我們學(xué)習的一個(gè)功能強大的軟件。 ③PSoC Designer 5.0 這是Cypress(中文賽普拉斯)公司的PSoC開(kāi)發(fā)環(huán)境。所謂PSoC即Programmable System on Chip,可編程片上系統。PSoC的概念與20世界90年代提出,隨后即成為微電子技術(shù)發(fā)展的熱點(diǎn),他集成了包括MCU核在內的模擬和數字混合系統。目前,Cypress公司的PSoC3系列芯片內置M8C內核MCU,PSoC5系列芯片內置Cortex 32bitARM MCU,其豐富的可編程模擬數字外設包括ADC,PGA,濾波器、比較器、DAC、PWM、定時(shí)器timer、UART、I2C、SPI,USB2.0控制器,無(wú)線(xiàn)收發(fā)器等。 而這里所提到的PSoC Designer 5.0正是Cypress公司推出的PSoC最新設計軟件,可以在系統級上以圖形化的方式完成整個(gè)可編程系統的配置、構建和連接。并為相應的外設模塊提供驅動(dòng)和API,方便系統軟件的編寫(xiě)和設計。雖然現在只是初接觸,但是,它給我留下了極為深刻的影響。
以上就是我這四年電子信息工程專(zhuān)業(yè)學(xué)習中所遇到過(guò)和學(xué)習過(guò)的電子設計EDA軟件,以及我對他們的一些個(gè)人評價(jià),希望能對大家有所幫助。另外,由于時(shí)間倉促和精力有限,一些軟件并為深入學(xué)習,所以難免有評價(jià)不妥之處,因而,還望大家見(jiàn)諒。 還是那句話(huà),若有不當之處,敬請提出,本人樂(lè )與大家交流學(xué)習。 歡迎大家訪(fǎng)問(wèn)我的電子博客:http://huxiongwei.spaces.eepw.com.cn/
胡恩偉 寫(xiě)于重慶大學(xué)A區一舍 2010年4月14日 |
聯(lián)系客服