在soc中有一種常見(jiàn)的情況,,有時(shí)為了考慮到功耗,性能的問(wèn)題,,某個(gè)模塊可能在某一種情況下工作在一個(gè)頻率,,另一種情況下工作在另一種頻率,,這個(gè)時(shí)候就需要進(jìn)行mux的切換,有的人就會(huì)說(shuō)了,哪簡(jiǎn)單啊,,加個(gè)mux啊,,可事實(shí)真的如此嗎?
如上圖,,大家會(huì)很自然而想到的一種時(shí)鐘切換電路,,可是,你仔細(xì)分析,,你會(huì)發(fā)現(xiàn)該電路會(huì)出現(xiàn)如下的問(wèn)題,,毛刺!這個(gè)毛刺無(wú)論對(duì)于clk0還是clk1都不是好事,,它不屬于任何一個(gè)時(shí)鐘域,,它的脈寬根本無(wú)法確定,你切換的點(diǎn)會(huì)影響毛刺的寬度,。
那么該如何消除毛刺,,進(jìn)而消除后面可能帶來(lái)的問(wèn)題呢,見(jiàn)下圖,,加入反饋電路,。
反饋是為了確保時(shí)鐘真正被關(guān)閉了,,例如,,select從0切換到1,也就是選擇clk1,但是這時(shí)要確保clk0被完全關(guān)閉了,,所以通過(guò)clk0時(shí)鐘域的DFF反饋回來(lái)的1(如果能反饋1說(shuō)明0已經(jīng)進(jìn)入到clk0時(shí)鐘域的DFF中了)與clk1時(shí)鐘域的select進(jìn)行相與,。
另外,為了解決跨時(shí)鐘域的問(wèn)題(select畢竟是不同于clk0,,clk1時(shí)鐘域的),,通常還會(huì)加入1-2級(jí)的DFF。
這幾個(gè)電路使用時(shí)需要注意一點(diǎn)的是兩個(gè)clk都必須要震蕩起來(lái)后才可以進(jìn)行select,,否則進(jìn)行切換可能導(dǎo)致select不能被正確的傳送到最后一級(jí)的與門上,,這樣消除毛刺的功能可能就無(wú)效。
更多信息可以來(lái)這里獲取==>>電子技術(shù)應(yīng)用-AET<<