[筆記] 學習Verilog好物:HDLBits
為了未來的工作最近開始學Verilog,雖然很想講是複習,但大學只寫過半學期的FPGA,而且我都忘光了,就再從頭學一次吧,也順便簡單介紹一下。
HDLBits
圖1為HDLBits的介面,基本上我直接把他當成硬體界的Leetcode,進去Problem sets後會看到很多題目,雖然題目大多是循序漸進的,但我也還沒寫很多題,因此不確定後面題目難不難。雖然HDLBits題目是循序漸進的排列,但並不是全部的語法都會在題目內教到,因此有時還是需要上網找一下語法。
圖2為HDLBits的題目畫面,隨便點個題目進去瀏覽一下,上半部是題目敘述,也會有些簡單的語法介紹之類的,下半部黃色區塊則是答題區。比較有趣的部分在於會寫Expected solution length,就是在告訴你這題可以只用幾行就寫出來,有點類似Leetcode的follow up,應該。寫完後下面有個Submit就可以run看看對不對囉。
心得與後記
看到這東西讓我想到大學時教Python的教授,她雖然人很好但上的課很扎實很認真,Python的基礎也是被她操出來的…呵呵,在上她的課之前我也沒想過Python可以上的這麼硬,蠻喜歡她的不過在大四時她就去猴子大學教書了。
前面提到的Expected solution length也是在大學上Python時遇到的,例如課堂練習時會問老師這樣寫行不行,老師會說:這樣寫也對,但可以用多少行就寫出來,行數比較多的話分數比較低哦(心裡OS: …),我只能說這位老師不論是上機或考試都偏硬…
其實這樣限制也有它的好處,就是考驗你對於程式語言本身的熟悉度、對題目的了解程度以及解決題目的能力,可能還有爽度XD。