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