tft每日頭條

 > 圖文

 > 芯片的時鐘幹嘛用

芯片的時鐘幹嘛用

圖文 更新时间:2024-10-18 07:55:53

芯片的時鐘幹嘛用?今天想來聊一聊芯片設計中的一個非常基礎的概念——時鐘對于外行來說聽到這個詞可能會感覺迷茫,猜一個大概意思吧可能也不太準對于芯片工程師來說時鐘這個詞就像每天喝水吃飯一樣平常,以至于可能從來不會注意它的存在我也趁此機會,通過寫文章的方式,梳理一下我所理解的芯片時鐘是怎麼一回事,接下來我們就來聊聊關于芯片的時鐘幹嘛用?以下内容大家不妨參考一二希望能幫到您!

芯片的時鐘幹嘛用(何謂芯片的時鐘)1

芯片的時鐘幹嘛用

今天想來聊一聊芯片設計中的一個非常基礎的概念——時鐘。對于外行來說聽到這個詞可能會感覺迷茫,猜一個大概意思吧可能也不太準。對于芯片工程師來說時鐘這個詞就像每天喝水吃飯一樣平常,以至于可能從來不會注意它的存在。我也趁此機會,通過寫文章的方式,梳理一下我所理解的芯片時鐘是怎麼一回事。

提起時鐘,就不得不先說芯片的兩種邏輯——時序邏輯(sequential)和組合邏輯(combinational)。組合邏輯比較好理解,他就是我們常說的與或非這種邏輯門,輸出信号邏輯僅僅依賴于輸入信号的邏輯,或者按我的理解,組合邏輯的信号傳播是瞬間完成的(不考慮cell delay的話)。不管是多麼複雜的組合電路,就比如剛入門電路時候大家都會學一些全加器、半加器、超前進位加法器什麼什麼的,雖然電路圖猛一看特别複雜,可能一張圖還畫不完,但隻要他全部是由邏輯門構成,都可以認為當給定輸入信号的時候,輸出是不需要等待就可以直接看到的。當然這隻是我的理解啦,具體的組合邏輯定義肯定不是這樣吧?而時序邏輯,最重要的就是出現了由時鐘驅動的信号。什麼意思呢?就是說電路中存在這樣一類器件:他有一個特殊的控制輸入信号,當這個信号跳變的時候,輸出信号才會根據其他一般的輸入信号變化。我們一般稱這種器件叫觸發器(flip-flop),而稱這種特殊的控制信号叫時鐘。舉一個最簡單的D觸發器的例子,當時鐘從0到1跳變的時候,輸出才等于輸入,其他時間,不管輸入如何變化,輸出保持不變。由此可以看出時序邏輯器件一個重要的功能:寄存數據,因此這些觸發器有時候也可以被稱為寄存器(register)。當然還有另一種時序邏輯器件叫鎖存器(latch),它是指時鐘信号維持某個電平時信号才可以傳輸。

随着flip-flop的出現,時鐘的概念也就應運而生了。其實時鐘并沒有多麼奇怪的,他隻是一個特殊的控制信号罷了。但是請大家思考這樣一個問題:随着電路漸漸複雜,不同電路分支輸出的信号我總要抓取的呀,而具體什麼時間點抓取信号就成了問題。如果這個時鐘信号一會快一會慢,那麼信号的抓取就會很艱難。所以為了規範化、統一化整個電路,讓大家都按照同一個規則來走,那麼設計就會變得簡單化,這也是時鐘信号(clock)的最初衷。為什麼要叫“時鐘”?就是希望這個信号能像鐘表一樣,穩定的每隔一段時間跳變一次,很形象吧?一個穩定的時鐘會控制這個時鐘域所有的時序器件,這些器件就會統一的隔一段時間跳變一次,或者說信号傳輸一次,這就使我們的邏輯設計成為可能。

那麼,我們如何得到一個穩定的時鐘呢?現在的芯片一般是由晶振産生一個周期信号,但這個信号并不太好,需要後面經過一系列處理,關鍵的一步就是通過鎖相環(PLL),最終得到一個我們想要的時鐘。但是這個時鐘也并不是數學意義上完美的,對我們後端來說,必須要考慮它的不确定性,就是說我們還是會認為它的周期一會大一會小,從來不會有一個完美的時鐘在現實宇宙裡,畢竟我們後端是要做具體芯片實現的,必須悲觀考慮。時鐘從PLL出來,到每個flip-flop的delay也會不同,而我們又希望所有flip-flop都同時跳變,就需要一步CTS(時鐘樹綜合)。這些就比較深入了,PLL和CTS以後再用别的章節來講吧。

突然又想到一個貼近生活的例子,我們平常看電腦CPU多少多少赫茲,就是指CPU的時鐘頻率,時鐘頻率越高,CPU計算速度自然就越快了嘛。而所謂超頻,就是強行增大CPU的時鐘頻率,可以使CPU速度提高。但是頻率越快,timing越難滿足,可能會出現setup violation哦,所以說超頻更容易死機,而且power也會變大,對芯片也不太好喲。

偉醬的芯片後端之路

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved