背景
微控制器作為目前嵌入式系統(tǒng)設計的主力軍在各行各業(yè)得到了廣泛的應用,但隨著物聯(lián)網(wǎng)、智能硬件、VR等一系列新興概念產(chǎn)品的問世,市場產(chǎn)品有明顯的多樣化趨勢,功能更為豐富,因而這也給工程師在嵌入式產(chǎn)品設計的時候提出了新的挑戰(zhàn)。舉個例子,雖然如今的微控制器產(chǎn)品系列細分化更為徹底,對每個層次的領域都有相關(guān)的MCU產(chǎn)品支持,但這也意味著器件的選型和資源評估需要更加謹慎,傳統(tǒng)MCU開發(fā)平臺的選型就是一個難題,對于講究適用就夠的原則,選性能功能強大豐富的微控制器浪費資源、浪費成本,選低端的入門級微控制器可能又會出現(xiàn)功能不支持,IO口不足等問題,另外不同平臺的有不同的開發(fā)環(huán)境流程等要熟悉,這也大大延長了工程師在項目開發(fā)中的時間;而在另一個對于以前來說相對小眾的FPGA領域中,隨著工藝的進步和EDA設計工具的不斷發(fā)展,F(xiàn)PGA的集成度越來越高,而對應的功耗和成本卻在不斷降低,F(xiàn)PGA的門檻(學習成本和價格成本)也相應地越來越低,因而也使得其被廣泛應用到各種領域中去,越來越多的嵌入式系統(tǒng)設計直接采FPGA設計,或者使用FPGA產(chǎn)品作為系統(tǒng)功能的拓展,總之,目前的嵌入式系統(tǒng)設計中越來越多的出現(xiàn)FPGA的身影。
小腳丫STEP-MXO2 二代
作為目前依舊小眾化,但市場前景樂觀的FPGA市場,眾多知名的廠商都推出了各種看似功能強大、但實際體驗效果并不好的FPGA開發(fā)平臺,與此同時,國內(nèi)有些廠商卻另辟新意,推出了一些精致小巧的FPGA開發(fā)板,看似沒什么功能,可玩性不強,但實質(zhì)卻是接口豐富,靈活易用,既可作為FPGA入門學習、又能用于項目開發(fā),比如說筆者手上拿到的這款小腳丫STRP-MXO2 二代FPGA開發(fā)板。
小腳丫FPGA開發(fā)板是基于Lattice公司的MXO2 FPGA系列,說起這款開發(fā)板,它還有個“前世今生”的故事。首先要說明一下的,目前上面看到圖片是小腳丫二代產(chǎn)品,其實在此之前,它還有一個一代的產(chǎn)品,當時還在愛板網(wǎng)眾籌過,那會看到不少網(wǎng)友分享了使用的帖子,很多都吐槽一代的小腳丫開發(fā)板板載FPGA芯片的邏輯資源有些少,另外在一代上沒有板載下載器,只是提供了額外的下載器,使用攜帶不夠方便,原本精致小巧、給人印象不錯的板子就因為這個或那個的原因沒給人留下多深刻的印象,不過,也正是因為一代上暴露出的問題,經(jīng)過了眾多工程師的試用、市場一番洗禮,小腳丫STEP-MXO2二代有種浴火重生的感覺,在一代上遺留的、被吐槽的問題在二代上有了大幅的改進,更增加了許多的外設功能,廢話不多說,直接上實物圖。
相較于一代,二代的包裝由塑料盒改成了紙質(zhì)包裝盒,可能每個人的看法不一樣,以筆者這樣的,認為如果用一代上那種看起來廉價的塑料盒倒不如用現(xiàn)在這種,不僅環(huán)保,多出的成本還可以花功夫在板卡本身上。不過,包裝盒本身也值得吐槽下,說不上什么原因,但是看起來就不像是一個開發(fā)板的包裝。
包裝盒背面倒是印有小腳丫公司的信息,包括電話、地址,有需求的可以直接打電話聯(lián)系,灰常方便,背面的一個二維碼倒是讓人有些摸不著頭腦,沒做任何說明。
本著我不入地獄誰入地獄的救世原則,筆者還是以實際行動直接掃一掃看看結(jié)果,原來是小腳丫FPGA開發(fā)板的公眾賬號,還別說,想要學習這個開發(fā)板,關(guān)注這個公眾賬號還真有必要,里面包含了快速上手以及精品例程的教程,讓你在移動端也可以抽空學習,學霸必備。
展開包裝盒可以看到關(guān)于小腳丫FPGA開發(fā)板的資料、教程鏈接以及小腳丫板卡擴展IO口引腳的信號定義,這讓工程師可以對小腳丫開發(fā)板有個初步認識,可以做些什么用途有個大概的了解,非常方便。
事實上,雖然在上文筆者已經(jīng)透露小腳丫二代增加了板載的下載器以及一些功能外設,但不可否認的是,二代在達成上述條件的同時保持了一代的身材,板卡尺寸為52mm X 18mm,依然小巧精致。
板載外設資源:
-
1路Micro USB接口
-
2位7段數(shù)碼管;
-
2個RGB三色LED;
-
4路撥碼開關(guān);
-
4路按鍵;
-
8路用戶LED;
-
36個用戶可擴展I/O(其中包括一路SPI硬核接口和一路I2C硬核接口)
-
集成 FT232編程器
從上圖中可以了解到,小腳丫 二代是一款超小巧40pin DIP結(jié)構(gòu)的FPGA開發(fā)板,它所采用的核心FPGA芯片為Lattice公司MXO2系列的4000HC產(chǎn)品,相比于小腳丫一代板載的FPGA芯片 MXO2 1200HC系列產(chǎn)品,二代板載的FPGA芯片資源提升了將近4倍,同時板上集成了FT232編程器和按鍵、撥碼開關(guān)、數(shù)碼管、LED等多種外設資源。
另外,小腳丫二代同樣擴展出了36個FPGA IO接口,通過2.54mm通孔焊盤引出,可以和面包板配合使用靈活的嵌入到其它的嵌入式系統(tǒng)設計中。當然最值得肯定的是,二代板載的FT232芯片可以實現(xiàn)板載的編程,無需像一代一樣外接一個編程器,不僅方便,而且大大提升了靈活性。
二代板載外設功能的提升一方面得益于設計的改進,另一方面功不可沒的是板載的這顆Lattice公司的MXO2系列的4000HC FPGA芯片,更多的資源也使板載的功能得到了豐富。
開發(fā)環(huán)境
每個FPGA廠商都有自己的EDA工具,使用可編程器件開發(fā)的都知道FPGA的EDA工具的重要性,所以EDA工具的好用與否也有可能影響工程師對這家公司的FPGA產(chǎn)品態(tài)度。Lattice公司自家的EDA工具為Diamond,支持windows32位、64位以及linux 32位、64位系統(tǒng)版本,有可選性,工程師可以選擇自己擅長的平臺開發(fā)。
Diamond可以去Lattice官網(wǎng)下載,非常方便,并且Diamond的安裝包相對于賽靈思或者Altera的安裝包要小的多。
Diamond安裝完成后要將官網(wǎng)免費獲取到的License拷貝到Diamond安裝目錄的License文件夾下,設置環(huán)境變量指向正確地址,完成后就可以打開Diamond工具。如果是第一次接觸FPGA,第一次接觸小腳丫的開發(fā)環(huán)境,總會有用戶會覺得EDA工具安裝會是一件比較麻煩的事,小腳丫的團隊可能早早就考慮到這種情況,所以在包裝盒上直接印上了詳細的軟件安裝教程,非常的貼心。
上電啟動
小腳丫二代開發(fā)板是通過MicroUSB接口上電啟動的,開發(fā)板在出廠的時候已經(jīng)預載了一個演示Demo,上電后可以直接看到Demo的運行狀態(tài)。可以從下圖中看到,在二代上可展示的外設功能,如數(shù)碼管、RGB LED、LED燈,這些功能在預置的出廠程序中都有展示到。
實際來了解下小腳丫二代的開發(fā)流程,新建了File-->New-->Project
添加相關(guān)設計文件或約束文件,這里筆者直接新建工程,所以不需添加,直接Next
點擊下一步,選擇綜合工具,Synplify Pro(第三方)和Lattice LSE(原廠)都可以,這里就使用原廠Lattice LSE。
下圖則是新建好后Diamond的整個工程界面。
選擇Verilog Files,Name還是填寫之前命名的LED,然后New。
完成代碼的設計后選擇左邊的Process欄,雙擊Synthesis Design,對設計進行綜合,綜合完成后Synthesis Design顯示綠色對勾,如圖
這里就必須要改變一下了,不能再直接套用小腳丫1代的配置,因為二代的資源多了,管腳定義相應也有所變化,管腳配置的話可以參考小腳丫二代的包裝盒上,實際用起來效果很好,非常方便。因為套用的小腳丫1代中代碼只涉及到了兩個LED,所以這邊只有兩個LED管腳分配,另外設置IO口類型為LVCMOS33。
到這里完成了第一個程序流文件的生成,然后可以通過Programmer下載到FPGA中,當然,首先要選擇正確的下載器,這里的使用的FTDI的芯片。
下載成功后會顯示相應的PASS狀態(tài)提示。
當然,這只是入門級的LED閃爍的程序,這里也只是走了整個工程開發(fā)的過程,對于復雜的工程開發(fā)需要預仿真和后仿真等,保證最終的程序設計邏輯和時序符合我們的設計要求。Diamond也自帶了Active-HDL仿真軟件,如果對這部分內(nèi)容感興趣的網(wǎng)友,可以參考愛板論壇中關(guān)于小腳丫1代中的工程仿真范例,本文就不再累述了。
小結(jié)
看完小腳丫二代,你會驚嘆它小巧精致的外觀,開箱上電即可使用的便利,當然或許你也會覺得和市面上動輒各種功能的FPGA開發(fā)板,小腳丫二代的外設還是不夠看,但是如果你換一種思維,考慮到開發(fā)平臺的成本,考慮到開發(fā)平臺以后的實用性,小腳丫FPGA可以滿足你諸多不同層次的需求,比如層疊同樣大小的DIP40標準的模塊;或是作為獨立功能的模塊使用在主板上,增加各種外設功能;還可以在實驗中可以直接插在面包板上進行各種測試,方便靈活,避開了FPGA使用QFP/BGA封裝的問題等,這無論對于初入手FPGA的學生來說,還是想做項目開發(fā)的工程師來說,甚至是精于各種DIY的電子發(fā)燒友來說,都是值得期待的。
另外,筆者在之前查看小腳丫二代資料的時候,同樣發(fā)現(xiàn)了小腳丫團隊另外的幾款開發(fā)板STEP-MAX10、STEP-WiFi、STEP-Baseboard等信息,由此看來小腳丫團隊的野心不小,結(jié)合目前市面上火熱的物聯(lián)網(wǎng)、智能家居概念,想要構(gòu)建一個屬于FPGA的開源生態(tài)系統(tǒng)環(huán)境,當然,這一步想要達成還有待考驗,可以說前途是光明的,道路是曲折的,至于到底會怎樣,交給時間來驗證吧。
評論
查看更多