對于下面這個(gè)傳輸門來說,只有當(dāng)CLK為高電平,即傳輸門打開時(shí),輸入端I的電平才會被傳輸?shù)捷敵龆薕,這是一個(gè)正常的傳輸過程。
不過,傳輸過程不是一蹴而就的,一方面,CLK的切換需要時(shí)間(也就是我們所說的transition time),另一方面,如果在傳輸門打開到關(guān)閉的切換過程中,I輸入的電壓也在變換,而在CLK關(guān)閉后,O的輸出剛好在高電平與低電平的一半,或者通俗一些說,剛好是0.5VDD。
如果這種情況出現(xiàn)在寄存器的U2傳輸門上,會發(fā)生什么?沒錯(cuò)了,D’只有0.5VDD,那么一級一級傳下去,D’’、Q’’、Q都是多少呢?
0.5VDD只是一個(gè)假設(shè),實(shí)際上我們知道,對于CMOS傳輸曲線來說,當(dāng)輸入端電壓處于一個(gè)較為穩(wěn)定的接近于傳輸曲線中間位置,則輸出端Q會出現(xiàn)不穩(wěn)定的狀態(tài),我們就把這種情況稱之為寄存器出現(xiàn)了亞穩(wěn)態(tài)。
那么亞穩(wěn)態(tài)是X[2]嗎?亞穩(wěn)態(tài)是中間態(tài)嗎?亞穩(wěn)態(tài)輸出就一定是0.5VDD嗎?這些問題,在任何企業(yè)、學(xué)校都會有熱烈的討論。
實(shí)際上,亞穩(wěn)態(tài)既然叫做亞穩(wěn)態(tài),那么就是可能因?yàn)橹車h(huán)境的不同,其輸出會向一個(gè)方向偏移,比如說電子偏多的時(shí)候,可能偏向于低電平,空穴偏多的時(shí)候,可能偏向于高電平[3]。但由于不是被VDD或地直接驅(qū)動(dòng),變化速度會偏慢,實(shí)際表現(xiàn)就和下面這幅圖一樣,原本應(yīng)該一下就變化的,可能需要一個(gè)緩慢的變化過程。
寄存器的setup和hold時(shí)序概念
通過亞穩(wěn)態(tài)部分的介紹,我們知道,當(dāng)時(shí)鐘上升沿來到,并關(guān)閉輸入端第一級U2傳輸門時(shí),如果D端發(fā)生數(shù)據(jù)變化,有可能導(dǎo)致Q端輸出產(chǎn)生亞穩(wěn)態(tài)。
為了保證寄存器穩(wěn)定工作,在設(shè)計(jì)電路時(shí),需要滿足兩個(gè)時(shí)間窗口。
在時(shí)鐘上升沿來到前的一個(gè)時(shí)間段,數(shù)據(jù)必須建立完成,這個(gè)時(shí)間稱之為建立時(shí)間(setup time)。而在時(shí)鐘上升沿之后一個(gè)時(shí)間段,則需要保持住數(shù)據(jù)不變化,這個(gè)時(shí)間稱之為保持時(shí)間(hold time)。建立時(shí)間、保持時(shí)間與時(shí)鐘的關(guān)系如下圖所示。
現(xiàn)在大部分標(biāo)準(zhǔn)單元庫設(shè)計(jì)的寄存器都采用了0保持時(shí)間或負(fù)保持時(shí)間設(shè)計(jì),也就是保持時(shí)間為0或?yàn)樨?fù)數(shù),當(dāng)然這也在某種程度上增加了建立時(shí)間的時(shí)間窗大小,降低了系統(tǒng)工作頻率。好處是更容易幫助系統(tǒng)在各種不同的時(shí)序簽核(Timing sign-off)條件下,快速收斂,簡化了投片標(biāo)準(zhǔn),加快了上市時(shí)間(Time to Market)。
在時(shí)序分析當(dāng)中,還有一種路徑上的setup time與hold time概念,與寄存器的概念類似,但意思不同,千萬不要混淆了。
寄存器的recovery和remove時(shí)序概念
在建立時(shí)間和保持時(shí)間概念中,我們可以看到,當(dāng)時(shí)鐘觸發(fā)沿到來時(shí),為了保證電路穩(wěn)定工作,需要在邊沿前后一段時(shí)間保持D端數(shù)據(jù)穩(wěn)定。
而對于一個(gè)帶有異步復(fù)位或異步置位的寄存器來說,如果復(fù)位信號釋放(從有效變成無效)與時(shí)鐘觸發(fā)沿同時(shí)出現(xiàn),也會帶來同樣的問題。
當(dāng)寄存器處于復(fù)位狀態(tài),且時(shí)鐘處于低電平,則采集部分和輸出部分由于傳輸門U6關(guān)閉,處于分割狀態(tài)。輸出部分電路,Q端輸出來源于異步復(fù)位rstn驅(qū)動(dòng);而采集部分電路中,D’由于傳輸門U2處于打開狀態(tài),因此由D端輸入,假設(shè)D端剛好與Q端數(shù)據(jù)相反,則在該實(shí)例中為高電平。而D’’則來源于異步復(fù)位rstn驅(qū)動(dòng),為高電平。
可以試想,如果異步復(fù)位釋放,從有效變換成無效狀態(tài),即示例中從低電平轉(zhuǎn)換成高電平,那么采集部分電路所有節(jié)點(diǎn),將依靠D端進(jìn)行翻轉(zhuǎn),直到穩(wěn)定,其中D’’與Q’’因?yàn)閭鬏旈TU6關(guān)閉,要等待CLK為高的時(shí)候才會進(jìn)行傳輸。之后待CLK從低電平變換成高電平后,U6打開,輸出部分電路再根據(jù)D’’進(jìn)行翻轉(zhuǎn),直到Q端輸出高電平,完成復(fù)位后,時(shí)鐘上升沿觸發(fā)工作效果。
但是如果在異步復(fù)位rstn釋放的同時(shí),時(shí)鐘CLK出現(xiàn)上升沿,則可能出現(xiàn)U2還沒有關(guān)閉,但U5已經(jīng)打開的情況,D’會因?yàn)镈為高電平以及D’’為高電平發(fā)生沖突。如果當(dāng)U2完全關(guān)閉后,D’未完全穩(wěn)定在某個(gè)狀態(tài),則可能導(dǎo)致后面電路失效,Q端在此出現(xiàn)亞穩(wěn)態(tài)的情況。
因此與建立時(shí)間與保持時(shí)間類似,對于帶有異步復(fù)位或異步置位的寄存器來說,異步復(fù)位也需要在時(shí)鐘上升沿到來之前的一個(gè)時(shí)間窗穩(wěn)定下來,稱之為recovery time,而在時(shí)鐘上升沿后一段時(shí)間內(nèi)保持住,稱之為remove time。
-
寄存器
+關(guān)注
關(guān)注
31文章
5427瀏覽量
123740 -
變換器
+關(guān)注
關(guān)注
17文章
2134瀏覽量
110528 -
VDD
+關(guān)注
關(guān)注
1文章
316瀏覽量
34899 -
CMOS技術(shù)
+關(guān)注
關(guān)注
0文章
68瀏覽量
10487 -
CLK
+關(guān)注
關(guān)注
0文章
127瀏覽量
17559
發(fā)布評論請先 登錄
Verilog設(shè)計(jì)寄存器

寄存器的作用有哪些?
數(shù)據(jù)寄存器,數(shù)據(jù)寄存器是什么意思
ARM寄存器詳解
寄存器與內(nèi)存的區(qū)別
GPIO寄存器

寄存器的作用以及復(fù)位

寄存器的工作原理
什么是移位寄存器?數(shù)字電路中的寄存器類型有哪些呢?

評論