Quartus Modelsim初始化問題

2021-09-08 00:09:25 字數 697 閱讀 8672

問題也不是我乙個人遇到:

印象中verilog程式設計,不給初,就是預設為零哦!

但是modelsim不賦初值,他就不是零;之後如果在復位中也沒寫道,到必然出錯。

所以嚴謹的**風格,完整的時序模型,於己於人都是一種完美!

除錯乙個fifo2sram2fifo的工程,用uart來顯示,總是規律性的出現問題。睡覺自己當年設計的時候全憑yy。

在quartus ii自然沒問題,他預設為0 的;

但是好歹不好意思雜用quartus ii自帶的simulation了,無奈,用modelsim看看波形;問題也從此開始:

如下圖所示,注釋部分的txd_cnt本身沒多大意義,只在t_send的時候才具有意義,因此當年因為偷懶,以及嫩,沒寫上去。

但是**波形如下,你可以看得到txd_cnt,txd,state的異常

但是把上述注釋部分加上,即完整時序,寫入各種狀態的初始化後:

哎,嚴謹的**,完整的風格,於己於人,總會事半功倍的!

初始化 指定初始化

id alloc 物件的誕生過程,主要是從作業系統獲得一塊足夠大的記憶體,以存放該類的全部例項變數,並將其指定為存放記憶體物件的實力變數的位置。alloc方法同時將這塊記憶體全部設定為0。結果是 bool變數初始化為no,所有的int型別變數為0,float變數為0.0,所有的指標為nil.obje...

初始化 1 預設初始化 列表初始化

初始化的基本概念 事實 初始化和賦值是兩個完全不同的操作。初始化,是建立變數時賦予其乙個初始值。賦值,是把物件的當前值擦除,用乙個新值代替。列表初始化 p39 作為c 11新標準的一部分,用花括號 來初始化變數得到了全面應用。出於某些原因,這種初始化的方式叫做列表初始化。現在,無論是初始化物件還是某...

初始化 MyBatis初始化之載入初始化

在mybatis初始化過程中,大致會有以下幾個步驟 1.建立configuration全域性配置物件,會往typealiasregistry別名註冊中心新增mybatis需要用到的相關類,並設定預設的語言驅動類為xmllanguagedriver 3.構建defaultsqlsessionfacto...