跳轉至內容

數位電子/計數器

來自華夏公益教科書,開放的書籍,開放的世界

計數器是一種根據時鐘或其他脈衝輸入產生特定模式的二進位制值的裝置。有三種簡單的計數器型別:非同步計數器、同步計數器和環形計數器。[[

計數器型別

[編輯 | 編輯原始碼]

環形計數器

[編輯 | 編輯原始碼]

如果將移位暫存器的輸出反饋到輸入,就會形成環形計數器。只要應用時鐘脈衝,移位暫存器中包含的資料模式就會迴圈。例如,在下圖中,資料模式每四個時鐘脈衝就會重複一次。但是,我們必須載入一個數據模式。全 0 或全 1 不會計數。在這種情況下,連續邏輯電平是否有用?


[1]


我們為以下配置為環形計數器的並行輸入/序列輸出移位暫存器提供資料載入功能。可以載入任何隨機模式。最常用的模式是單個 1。


[2]


在移位之前將二進位制 1000 載入到上面的環形計數器中,可以產生視覺化的模式。在我們的 4 級示例中,單個級的數碼模式每四個時鐘脈衝重複一次。所有四個級的波形看起來都一樣,除了一個級到下一個級之間的單個時鐘時間延遲。見下圖。


[3]


上面的電路是一個除以 4 計數器。將時鐘輸入與任何一個輸出進行比較,可以看出頻率比為 4:1。我們需要多少級才能得到一個除以 10 的環形計數器?十級會在十個時鐘脈衝後迴圈 1。


[4]


上面顯示了一種將環形計數器初始化為 1000 的另一種方法。移位波形與上面的相同,每四個時鐘脈衝重複一次。初始化要求是環形計數器相對於傳統計數器的缺點。至少,它必須在通電時初始化,因為我們無法預測觸發器將處於哪種狀態。理論上,初始化應該永遠不需要再次進行。在實際應用中,觸發器最終可能會被噪聲破壞,從而破壞資料模式。像傳統的同步二進位制計數器那樣的“自校正”計數器會更加可靠。


[5]


上面的二進位制同步計數器只需要兩級,但需要譯碼門。環形計數器有更多的級,但它是自譯碼的,節省了上面的譯碼門。環形計數器的另一個缺點是它不是“自啟動的”。如果我們需要譯碼輸出,環形計數器看起來很有吸引力,特別是如果大部分邏輯都在單個移位暫存器封裝中。如果不是,傳統的二進位制計數器在沒有譯碼器的情況下更簡單。


[6]


從同步二進位制計數器譯碼的波形與之前的環形計數器波形相同。計數器序列為 (QA QB) = (00 01 10 11)。

非同步計數器

[編輯 | 編輯原始碼]

非同步計數器是最簡單的計數器型別。它們不過是一些連線成鏈的觸發器,用來將彼此的輸出頻率除以二。結果是一個二進位制計數。它們被稱為非同步計數器,因為新的計數會透過它們傳播。非同步計數器的主要缺點是,由於新的計數會透過觸發器傳播,所以所有計數位的到達時間不同。

同步計數器

[編輯 | 編輯原始碼]

同步計數器是由觸發器和邏輯閘組成的簡單狀態機。它們有兩部分,一個由觸發器組成的暫存器和一個由邏輯閘組成的譯碼器。暫存器是一組簡單的觸發器,它們都在同一時間被時鐘控制。這樣,它們就可以儲存計數器的輸出值,直到下一個時鐘週期。譯碼器對當前計數進行譯碼,併為觸發器生成下一個計數的正確值。例如,在一個簡單的向上計數器中,譯碼器將始終輸出當前計數加一。同步計數器的主要優點是,所有輸出位的變化時間都相同。

華夏公益教科書