喬琳君
(西安航空職業技術學院,710089)
計數器是數字系統中應用廣泛的基本邏輯器件。它不僅能記錄輸入時鐘脈沖的個數,還可以實現分頻、定時、產生節拍脈沖和脈沖序列等。例如,計算機中的時序發生器、分頻器、指令計數器等都要使用計數器[1]。一般集成計數器的進制都是固定的,像74LS160為十進制,74LS161為十六進制,但是實際中需要大量的任意進制(N 進制)的計數器,如:24進制,60進制等,可以通過對固定進制的計數器改進或者級聯來完成所需要的N 進制的計數器。EWB 是加拿大Interactive Image Technologies 公司推出的一款電子電路仿真分析、設計軟件,它具有直觀的界面,用戶學習操作十分簡便,該軟件與其升級版本Multisim 軟件相比,使用方式與實際更接近,同時它還帶有豐富齊全的元器件庫,根據需要可靈活改變各器件的參數,因此它能演示各種復雜電路系統,以查看結果[2]。
74LS160是具有預置數功能的四位同步十進制計數器,其內部是由J-K 觸發器和附加門組成[3]。74LS160管腳功能見表1。74LS160邏輯功能見表2。
從表2看出,集成計數器74LS160具有以下4個功能:
(1)異步清零功能:功能。
當復位端CLR/=O時,輸出QDQCQBQA全為零,實現異步清除
(2)同步預置數功能:
當復位端CLR/=1,預置控制端LOAD/=0,并且有脈沖輸入即CLK=CP ↑時,輸出端QDQCQBQA=DCBA,實現同步預置數功能。
(3)保持功能:
當CLR/=LOAD/=1且計數控制端ENP·ENT=O時,輸出QDQCQBQA保持不變。
(4)計數功能:
當CLR/=LOAD/=ENP=ENT=1,并且有脈沖輸入即CLK=CP ↑時,計數器才開始加法計數,實現計數功能。
設現有M 進制集成計數器,要設計N 進制計數器。
反饋復零法[1]主要利用一個與非門,其輸入接在計數器的輸出端,其輸出接在計數器的復位端或預置數端。當計數器計到N時,反饋與非門的輸入端全部為1,輸出端則為0。由于與非門的輸出端與計數器的復位端或預置數端相連,使得計數器復位或輸出等于預置數(0000),從而使計數器重新回到起始狀態。與非門反饋到復位端的稱為清零法,與非門反饋到預置控制端的稱為預置數法。圖1給出了反饋復零法電路原理圖,(a)圖為異步清零法,(b)圖為同步置數法。

表1 74LS160管腳功能介紹

表2 74LS160邏輯功能表

圖1 反饋復零法電路原理
圖1中與非門的輸入端個數及連接位置由設計的計數器進制N 決定。
實際設計時,如果M>N,用一片M 集成集成計數器就可以完成N 進制計數器的設計;如果M 74LS160為同步十進制集成計數器,其最大計10個脈沖數。現在需要設計60進制計數器,通過兩片74LS160級聯的方式擴展成100進制,設十位計數器的編號為2,個位計數器的編號為1。使用反饋復零法設計,步驟如下: (1)寫出60對應的二進制代碼:01100000,即十位計數器的輸出Q2DQ2CQ2BQ2A=(6)D=(0110)B,個位計數器的輸出Q1DQ1CQ1BQ1A=(0)D=(0000)B (3)在EWB 軟件里搭建仿真電路。具體如下: ①在EWB的數字集成電路庫選擇2片74LS160集成計數器,在邏輯門電路庫選擇與非門,在信號源庫選擇Vcc 電源、地和脈沖信號源,在指示器件庫選擇2個數碼顯示管將以上器件拖放在工作區的合適位置并設置參數。 ②連接線路:電源、地分別接到兩片計數器的Vcc 和GND 端。脈沖信號源分別接到CLK 端。要實現計數功能則ENP=ENP=LOAD/=1,所以個位計數器的ENP=ENP=LOAD/=1,而十位計數器的接個位計數器的進位輸出端RC0。由反饋復零邏輯表達式知反饋與非門輸入端接十位計數器的Q2CQ2B,輸出反饋到兩個計數器的復位清零端CLR/。 采用異步清零法實現的60進制計數器仿真電路圖如圖2所示。 (4)打開仿真開關,運行仿真電路,觀查仿真結果。仿真時可以看到,從0開始計數時,來一個脈沖,個位計數器增1,當第十個脈沖來后,個位計數器進位,個位計數器為0,十位計數器顯示1。即每計十個脈沖,十位計數器增1。整體看,當計數器從0開始計數計到59時開始循環,說明圖3實現了60進制加法計數器功能。 同步置數法原理和異步清零法原理相同,區別在于與非門的輸出端接在74LS160的預置數端LOAD/。當計數器計到N-1時,反饋與非門的輸入端全部為1,則輸出端為0,此時預置控制端有效,當再來一個脈沖時,計數器的輸出端數據等于預置數,使計數器重新回到起始狀態。所以要實現24進制的計數器,應寫出23對應的二進制代碼。 (1)寫出23對應的二進制代碼:00100011,即十位計數器的輸出Q2DQ2CQ2BQ2A=(2)D=(0010)B,個位計數器的輸出Q1DQ1CQ1BQ1A=(3)D=(0011)B 圖2 異步清零法實現的60進制計數器仿真原理圖 圖3 同步預置數法實現的24進制計數器仿真原理圖 (3)在EWB 軟件里搭建仿真電路。具體如下: ①拖放元器件同異步清零法實現的60進制計數器的仿真設計。 ②連接線路:電源、地、技術控制端ENP/ENP、脈沖信號源接法不變。與異步清零法仿真設計區別在于此時CLR/=1;十位計數器的數據輸入端D=C=B=A=0;由反饋復零邏輯表達式知與非門輸入端接十位計數器的Q2CQ2B,而輸出反饋到兩個計數器的預置數端。 采用同步預置數法實現的24進制計數器仿真電路圖如圖3所示。 (4)打開仿真開關,運行仿真電路,觀查仿真結果。仿真時可以看到,從0開始計數時,計到23時開始循環,說明圖3實現了24進制加法計數器功能。 在設計60進制計數器仿真時,發現十位計數器不計數,檢查后發現十位計數器的預置數端虛接,改正后仿真結果正確。另外以下幾點: (1)正確求取復零邏輯表達式,異步清零法為N 對應的二進制代碼為1的輸出項的與非表達式,同步預置數法為(N-1)對應的二進制代碼為1的輸出項的與非表達式。 (2)如果設計10進制以上的計數器時,個位計數器的進位端要連到十位計數器的計數控制端ENP 和ENT 端。 (3)注意不同方法時,反饋與非門的輸出端連接位置不同,異步清零法連到計數器復位端,而同步預置數法連到計數器預置數端,并且此時數據輸入端應為0。 本文主要以74LS160為例,介紹了采用反饋復零法實現的N進制計數器的設計方法及仿真步驟。并以異步清零法設計的60進制計數器和同步置數法實現的24進制計數器為例給出了詳細的設計步驟。應用EWB 軟件對設計的計數器進行仿真,結果表明達到設計要求。 [1]黃建華.汽車電工電子技術[M].西安:西安電子科技大學出版社,2006 [2]蔡娟娟.任意進制計數器設計在EWB中的仿真實驗[J].太原城市職業技術學院學報,2011,9 [3]胡錦.數字電路與邏輯設計[M].北京:高等教育出版社,2011 [4]趙家松.基于集成計數器的N 進制計數器設計與仿真[J].電子設計工程,2012,2 [5]李耐根電工電子技術基礎[M].北京:冶金工業出版社,2011 [6]楊頌華,馮毛官,孫萬蓉,等.數字電子技術基礎[M].西安:西安電子科技大學出版社,2000.3 設計實例
3.1 異步清零法實現的60進制計數器的仿真設計
3.2 同步置數法實現的24進制計數器的仿真設計


3.3 仿真問題分析
4 小結