使用FPGA學(xué)數(shù)電不再需要安裝軟件, 真的么?
當(dāng)然是真的,聽我細(xì)細(xì)道來。。。。
數(shù)字電路是一門非常基礎(chǔ)的課程,核心是“數(shù)字”、“邏輯”、“電路”,充斥著各種燒腦的新概念和理論知識,但又是各種現(xiàn)代電子設(shè)備的基石,實(shí)用性非常強(qiáng),因此與理論學(xué)習(xí)同步進(jìn)行的動手實(shí)操體驗(yàn),是學(xué)好數(shù)字電路的最佳方式。
而最佳的體驗(yàn)工具自然是、也只能是FPGA - 現(xiàn)場可編程邏輯門陣列,它就像數(shù)字領(lǐng)域的萬能積木,可以允許用戶通過畫圖(已經(jīng)被淘汰)或?qū)懘a(采用更符合我們邏輯思維方式的編程語言)對其硬件功能實(shí)現(xiàn)任意自定義的半成品電路,同樣一顆 FPGA 芯片既可以被定義成簡單的運(yùn)算電路,也可以被定義為復(fù)雜的集成電路用于實(shí)現(xiàn)特定功能,這完全得益于其獨(dú)特的內(nèi)部構(gòu)造,F(xiàn)PGA具有非常大的可塑性。
如下圖所示,一個 FPGA 通常由3個主要的部分組成:可編程邏輯單元 CLB,開關(guān)矩陣 SM和I/O 模塊IOB。其中,可編程邏輯單元的本質(zhì)就是一個可以通過其內(nèi)部儲存的查找表 LUT 來實(shí)現(xiàn)任意邏輯功能的模塊,而實(shí)現(xiàn)任意邏輯功能定義的工具被稱為硬件描述語言 HDL(最常用的為Verilog)。當(dāng)電路的功能被定義之后,開關(guān)矩陣可以定義自行控制各個可編程邏輯單元之間的連接方式,進(jìn)而實(shí)現(xiàn)指定的邏輯功能。最終,F(xiàn)PGA與外界電路的交互可以通過I/O 模塊實(shí)現(xiàn)。
那問題來了:
1 要學(xué)習(xí)數(shù)字電路,需要什么級別的FPGA呢?
科技發(fā)展到今天,現(xiàn)在市面上的任何一款被稱之為FPGA的芯片,滿足數(shù)字電路的教學(xué)實(shí)踐使用都綽綽有余,畢竟教學(xué)實(shí)驗(yàn)中用到的功能非常有限,還在學(xué)習(xí)基礎(chǔ)理論路上的菜鳥用不了多少資源,這些產(chǎn)品級的FPGA器件無論其功能還是性能都遠(yuǎn)超我們教學(xué)的需要,所以,可以忽略對這個因素的考慮。
2 要體驗(yàn)數(shù)字電路書本上的各種理論知識,F(xiàn)PGA學(xué)習(xí)板上需要哪些功能外設(shè)?
無論是組合邏輯、時序邏輯還是數(shù)字系統(tǒng),無外乎都是“基于多個輸入?yún)⒘客ㄟ^各種數(shù)字邏輯的執(zhí)行,得到不同的輸出參量”,輸入?yún)⒘亢洼敵鰠⒘康谋磉_(dá)方式有很多種,而最簡單、最直觀的也就是:
輸入 - 用按鍵和開關(guān),多個按鍵和開關(guān)就可以體現(xiàn)組合邏輯的“因”;
輸出 - 用LED(數(shù)碼管本質(zhì)上也是LED),多個LED可以表達(dá)組合邏輯不同的“果”;
板上自帶的時鐘,自然就能夠提供時序邏輯和狀態(tài)轉(zhuǎn)換的根本驅(qū)動力。
因此,針對數(shù)字電路/數(shù)字邏輯乃至數(shù)字系統(tǒng)的教學(xué)實(shí)驗(yàn),幾個按鍵 + 幾個LED + 時鐘的組合就已經(jīng)足夠。更多的功能比如視頻、網(wǎng)絡(luò)、USB等等對于數(shù)電這門課程的作用也只是錦上添花,并不是必須,多數(shù)情況是為了讓板子看起來更值錢。
3 拋開那些花里胡哨,花錢買頭暈的外設(shè)之外,選用FPGA學(xué)習(xí)平臺最重要的因素是什么呢? 那自然是:
人人都能一學(xué)就會 - 畢竟它只是個加強(qiáng)理論理解的實(shí)驗(yàn)工具,學(xué)生應(yīng)該把90%的精力用在用它體驗(yàn)、驗(yàn)證書本上的邏輯知識上,而不應(yīng)該花大量的時間來琢磨該工具自身如何用起來(很多開發(fā)板的工具即便帶實(shí)驗(yàn)的老師也都搞不定,學(xué)生自然也就用不起來),不用專門學(xué)習(xí)就能使用,能10分鐘跟著一個例子就能上手那是最好了,就像三輪車,踏上去就能騎著走,走幾步就能心中無車,只有目的地;
人人都能隨時、隨地使用 - 傳統(tǒng)的EDA實(shí)驗(yàn),需要同學(xué)們在被安排的時間點(diǎn)要專門去實(shí)驗(yàn)室使用,還要小心翼翼地打開箱子、按照說明手冊一步一步上電、開機(jī),像伺候?qū)氊愐粯硬桓逸p易觸碰(畢竟是價值上千塊錢、傳說中只有大神才能真正學(xué)會的“設(shè)備”,這種距離感很難讓學(xué)生能夠喜歡上它、跟它親密接觸,而好的實(shí)踐平臺就應(yīng)該像書包里的筆和紙,隨時拿出來試一下、體驗(yàn)一下,只有這樣,它才會在無形中成為你學(xué)習(xí)的最佳幫手,尤其是疫情的影響,這個大家都懂的;
人人都能用得起 - 很多開發(fā)板很貴,因?yàn)榘迳霞闪颂喔居貌恢⒒蛘哒f用起來也不知道有啥意義的功能,要讓每一位學(xué)習(xí)數(shù)字電路的同學(xué)都有機(jī)會隨時、隨地使用,那就必須是非常低廉的價格。
除了上述的三要素,還有一點(diǎn)非常重要 - 必須有豐富的實(shí)驗(yàn)參考案例,畢竟有限的課時,要繞通那么多燒腦的概念,而書本上的理論基本上還都停留在用一個個“門”搭建電路的原始階段,如何跟我們?nèi)粘A?xí)慣的高級邏輯思維方式相通,那就需要一系列的參考案例,門電路構(gòu)成和Verilog描述相對照,讓同學(xué)們體會用不同方式可以實(shí)現(xiàn)同樣的功能,以及它們之間的差異。
有沒有這樣的平臺?有,小腳丫FPGA團(tuán)隊最新推出的一款新產(chǎn)品StepFPGA - U,就專為數(shù)電而生,先通過一個5分鐘的案例視頻(實(shí)踐數(shù)電書本上的2-4譯碼器),體驗(yàn)一下使用小腳丫FPGA的編程的過程。
視頻中使用的是我們新版本的Web IDE,只需要一個瀏覽器,一個注冊好的賬號,一切都在云端搞定!無論你用的是Windows、Mac OS還是Linux,即便你使用iPad或手機(jī),都可以在瀏覽器里使用。
省去了下載20GB軟件的煩惱,省去了安裝License的煩惱,省去了因?yàn)槟撤N插件導(dǎo)致的兼容性的問題,老師們再也不用為幫著解決同學(xué)們遇到的各種問題而頭疼了。
有同學(xué)會問,如何配置FPGA?會不會依然會遇到兼容性的問題?電腦找不到FPGA板。
這個煩惱從此也不再出現(xiàn),因?yàn)槲覀冃掳娴男∧_丫核心板Step FPGA-U插到電腦的USB端口上就是一個虛擬的U盤,你只要將生成的jed文件拖到這個U盤里就可以了。
不需要安裝任何驅(qū)動程序!
U盤的兼容性對所有的電腦、所有的操作系統(tǒng)都是最魯棒的,只要你的電腦能識別標(biāo)準(zhǔn)的U盤,我們的小腳丫FPGA就能識別,
就這么簡單!
新版本的StepFPGA - U還有兩個備受歡迎的小改進(jìn):
USB接口更換成了USB Type-C接口,不用再為找不到帶數(shù)據(jù)的USB線煩惱,USB Type C正反兩面都可以,非常方便;
一個USB端口既用于FPGA的配置,同時還可以用于UART的通信,其它的FPGA開發(fā)板上要支持UART通信需要增加接口芯片的成本,并多一個USB連接器
責(zé)任編輯:haq
-
FPGA
+關(guān)注
關(guān)注
1629文章
21736瀏覽量
603432 -
led
+關(guān)注
關(guān)注
242文章
23277瀏覽量
660902 -
電路
+關(guān)注
關(guān)注
172文章
5915瀏覽量
172258
原文標(biāo)題:淺談“數(shù)字電路”的學(xué)習(xí)(3)- 不需要安裝軟件、人人一學(xué)就會的FPGA學(xué)習(xí)板
文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論