2011年10月24日 星期一

20111024 Verilog 64位元多工器

前幾個禮拜所練習的都是1-bit的多功器

在我們稍為瞭解Verilog的語法後

這個星期要練習到64-bit的多功器


mux~mux64為階乘的關係

一個mux2由兩個mux組成

一個mux4由兩個mux2組成

一個mux8由兩個mux4組成

以此類推至mux64

以Verilog語法的角度來看的話

mux編輯完後編輯mux2時會需要呼叫到兩次mux

編輯mux4時會需要呼叫到兩次mux2

編輯mux8時會需要呼叫到兩次mux4

以此類推至mux64

這點也和C++一樣

可以將先前編輯完的運算方式呼叫出來用

64-bit 多工器程式碼


















模擬結果及波形圖











這個禮拜老師沒把所有的做法都教我們

老師希望我們再過程中遇到的困難有辦法自己解決

經過google大神的幫助輸入信號的問題已經解決了

但要跑程式的時候還是一直出現問題

最後發現原因是直接複製PDF上的程式碼時會複製到伊些特殊字元

但貼上後看不出來有什麼不一樣

所以最後我自己全部用打的



筆記
















































2011年10月17日 星期一

20111017 Verilog基本語法編輯

今天老師把上次的練習又講了一遍

讓上次沒練習到的同學利用今天趕快補回來

今天多講了幾種Verilog語法編輯的一些基本用法和常犯的錯誤

練習時間就用課本舉的四個簡單例子自己實際操作



第一種編輯方式-正常編輯










成功跑出"Hellow Verilog"


第二種編輯方式-以空格取代換行



成功跑出"Hellow Verilog"



第三種編輯方式-全部用換行



成功跑出"Hellow Verilog"



第四種編輯方式-在"..."之間換行



跑出Error的圖示
















在輸入要印出內容的"..."內不可以換行!!!

其他筆記
(因為有版權的問題所以沒有把全部的筆記PO上來)




















































其實Verilog滿多基本語法都和C++一樣

換行 、註解等
所以學完C++再學Verilog其實滿容易上手的

2011年10月3日 星期一

20111003 Verilog 語法概論

今天不知道什麼原因

可能下雨吧

來上課的人頗少

老師說等那些人五分鐘

大家開著Facebook聊著聊著

就這樣一節課快過了...

老師決定要開始上課了




今天是第一次用SynaptiCAD寫Verilog程式碼

但也沒寫到什麼

只是先拿現成的稍微改一下熟悉Verilog的架構跟SynaptiCAD的操作

不過這次這個書上簡單的電路圖就算要自己寫也不難寫

只怕再過幾個禮拜要寫的電路跟實驗課一樣讓我們做到腦袋也短路了




今天的程式碼module top的部分是複製範例來改的

只要把各個輸入源的時脈和腳位名改一下就好了

但注意每次宣告腳位時 ( ) 內的順序要一樣!!!
module name的部分是從電子書裡面的範例複製的

module system_clock的部分是直接複製範例連改都不用改





將編輯好的文字檔加到SynaptiCAD裡

模擬如果成功無誤右下角方塊顏色為綠色





模擬出來的波形圖





今天的筆記