1、組合邏輯的競爭冒險
組合邏輯:任何時刻電路的穩(wěn)定輸出,僅僅取決于該時刻各個輸入變量的取值。
組合邏輯的競爭冒險:當(dāng)輸入信號同事變化時,組合邏輯必然產(chǎn)生毛刺。
解決方法:用時序邏輯,每次寄存器的輸出結(jié)果取決于上一個時鐘的寄存器的值,不會產(chǎn)生毛刺。
2、寄存器reg可以用在時序邏輯也可以用在組合邏輯
時序邏輯就是平時寫的clk觸發(fā)
組合邏輯例如always@(b) out1 =~ b;
觸發(fā)器具有記憶性原因:普通的門電路輸出信號只取決于當(dāng)前輸入信號,無記憶性,但是觸發(fā)器
的輸出還和之前的狀態(tài)有關(guān),比如JK觸發(fā)器:Qn+1 = JQn_ + K_Qn
3、時序,組合邏輯,阻塞與非阻塞區(qū)別
//time 非阻塞 always @(posedge clk) begin time_nblock <= sig_in; time_nblock1 <= time_nblock; end //time 阻塞 always @(posedge clk) begin time_block = sig_in; time_block1 = time_block; end //combine 非阻塞 always @(*) begin com_nblock <= sig_in; com_nblock1 <= com_nblock; end //combine 阻塞 always @(*) begin com_block = sig_in; com_block1 = com_block; end
綜合出來的電路
時序電路,會生成D觸發(fā)器,根據(jù)電路可以看出阻塞賦值和非阻塞賦值,一個always塊結(jié)束之后,阻塞賦值結(jié)果都是一樣的,但是非阻塞
賦值的話,是同事變化的,time_nblock得到sig的同時,time_nblock1也得到time_nblock之前得值。
阻塞賦值從電路上看,非阻塞和阻塞都是一樣得,modelsim仿真也是這么個情況。
一般來說,時序邏輯用非阻塞賦值,組合邏輯用阻塞賦值。
4、與門
assignq = (al == 1) ? d : 0;
5、亞穩(wěn)態(tài)
亞穩(wěn)態(tài)定義:在進(jìn)行fpga設(shè)計時,往往只關(guān)心“0”和"1"兩種狀態(tài)。然而在工程實踐中,除了”0“、”1“外還有其他狀態(tài),亞穩(wěn)態(tài)就是其中之一。
亞穩(wěn)態(tài)是指觸發(fā)器或鎖存器無法在某個規(guī)定時間段內(nèi)達(dá)到一個可確認(rèn)的狀態(tài)[1]。當(dāng)一個觸發(fā)器進(jìn)入亞穩(wěn)態(tài)時,既無法預(yù)測該單元的輸出電平,
也無法預(yù)測何時輸出才能穩(wěn)定在某個正確的電平上。在亞穩(wěn)態(tài)期間,觸發(fā)器輸出一些中間級電平,甚至可能處于振蕩狀態(tài),并且這種無用的輸
出電平可以沿信號通道上的各個觸發(fā)器級聯(lián)式傳播下去。亞穩(wěn)態(tài)是異步數(shù)字電路設(shè)計中的固有現(xiàn)象,但是由于其偶發(fā)性和溫度敏感性的特點,
在產(chǎn)品前期測試過程中很難發(fā)現(xiàn)。
亞穩(wěn)態(tài)產(chǎn)生的原因:1、時序不滿足,例如不滿足建立時間和保持時間。
2、不同時鐘域接口
例如當(dāng)數(shù)據(jù)剛傳過來的時候,clkb恰好來了一個上升沿
亞穩(wěn)態(tài)的解決方法:1、單比特信號打兩拍寄存器,我看網(wǎng)上亞穩(wěn)態(tài)有一個震蕩周期,如果震蕩周期大于一個時鐘的話那么一級緩存之后仍然會有亞穩(wěn)態(tài)
現(xiàn)象,所以兩級緩存就比較靠譜了。
2、多比特信號fifo
審核編輯:劉清
-
寄存器
+關(guān)注
關(guān)注
31文章
5493瀏覽量
127721 -
Verilog
+關(guān)注
關(guān)注
30文章
1368瀏覽量
113504 -
觸發(fā)器
+關(guān)注
關(guān)注
14文章
2047瀏覽量
62783 -
FIFO存儲
+關(guān)注
關(guān)注
0文章
103瀏覽量
6259
原文標(biāo)題:verilog知識
文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
哪有FPGA的verilog編程基礎(chǔ)知識?
Verilog HDL練習(xí)題和Verilog基礎(chǔ)知識適合verilog新人
介紹關(guān)于編程的基礎(chǔ)知識
Verilog HDL基礎(chǔ)知識
Verilog_HDL基礎(chǔ)知識非常好的學(xué)習(xí)教程 (1)
Verilog教程之Verilog HDL數(shù)字集成電路設(shè)計方法和基礎(chǔ)知識課件

Verilog的基礎(chǔ)知識
Verilog HDL的基礎(chǔ)知識

評論