商丘工學院 徐忠根 蔣 琳 王洽峰 高善坤
隨著電子工業的發展,計數器電路在各個領域得到了廣泛應用。計數器不僅能用于對時鐘脈沖計數,還可以用于分頻、定時、產生節拍脈沖和脈沖序列以及進行數字運算等。計算機中的時序發生器、分頻器、指令計數器等都要使用計數器。導航系統中的加速度計,網站設置的網頁計數計,文字編輯中的字數計等都需要計數器。因此,對于應用電子技術專業的學生不僅要掌握好基礎專業知識和技能,還要具有一定的創新能力和電子產品設計開發能力。本文以設計一個鉛筆打包計數器為例,對任意進制計數器的設計方法進行分析探討。
計數是一種最簡單基本的運算,計數器就是實現這種運算的邏輯電路,計數器在數字系統中主要是對脈沖的個數進行計數,以實現測量、計數和控制的功能,同時兼有分頻功能。本任務就是按照計數器的基本結構組成和工作原理,設計制作一個鉛筆打包計數器見表一。
對于由觸發器組成的計數器,在做加法時,每一位的變化均發生在以下各位全是“1”的時候,只有在計數計到最大數碼時,才不論各位的狀態如何統統歸“0”。而對于減法計數,其借位均發生在以下各位全為“0”的時候,只有所有各位都是“0”時,才返回到最大數碼。可見,不論何種進制的計數器,在計滿之前工作都是一樣的,唯一的不同僅在于最大碼回“0”這一步(減法是在由“0”返回最大碼)。所以,我們有理由認為計數的最大碼包含著計數器工作的全部信息。因此,一旦給定了計數器的最大編碼,就應該能夠立即寫出各級觸發器的激勵方程。
目前常見的計數器芯片在計數進制上只做成應用較廣的幾種類型,如十進制、十六進制、7位二進制、12位二進制、14位二進制等。在需要其它任意一種進制的計數器時,只能用已有的計數器產品經外電路的連接方式得到。假定已有的是N進制計數器,而需要得到M進制計數器。當M<N時:按照計數過程中跳躍NM個狀態實現方法的不同有兩種方法:置零法(復位法)和置數法(置位法)。
(1)置零法
置零法如下圖1所示。電路一進入SM狀態就立即被置成S0狀態,所以SM狀態僅在極短的瞬時出現,在穩定的狀態循環中不包括SM狀態,置零法適用于有異步置零輸入端的計數器。

圖1 獲得任意進制計數器的置零法
(2)置數法
置數法如下圖2所示。通過給計數器重復置入某個數值的方法跳越N-M狀態,適用于有預置數功能的計數器電路。

表一 任務目標

圖2 獲得任意進制計數器得置數法
當M>N時:必須用多片N進制計數器組合構成,連接方式可分為串行進位方式、并行進位方式、整體置零方式和整體置數方式幾種。
本設計任務是設計一個任意進制計數器,現以j--k觸發器組成的計數器為例,看看我們是如何從計數的最大編碼得到各位觸發器的激勵方程的。
J—k觸發器激勵函數通式:

其中:Wi----第i位以下各觸發器狀態碼元之積。即

ai---第i位以上最大碼中值為“1”的碼元之與非項
應滿足條件:
①本位值為“0”且以下各位全是“1”。或
②本位值為“0”且是最末位。否則:ai=1 即:

bi---第i位的值與其它值為“1”的碼元之原變量之積。

設計實例:設計一個13進制的計數器。
這是一個鉛筆打包計數器:12支一包,買一送一。
計數長度為12,需要4位觸發器,最大碼M=1100
從末位jK0開始設計:

根據以上所求出的各觸發器激勵方程,采用四個JK觸發器構成同步計數器。
設計電路如下圖3所示:

圖3 鉛筆打包計數器原理圖
原理圖設計完成后,利用PRO TEL99SE軟件畫出該圖,并生成PCB圖,打印輸出制作PCB板。選用原理圖中所需要的元器件,特別是JK觸發器的選擇尤其重要。組裝焊接后,進行性能測試和功能驗證調試。
本文以計數器的最大編碼為入口,獲得各位觸發器的激勵方程,設計中要區分清楚計數過程中跳躍N-M個狀態實現方法的不同有兩種方法:置零法(復位法)和置數法(置位法),關鍵是各級觸發器激勵方程的求法,要求指導學生了解計數器的性能指標,查閱相關計數器設計資料和電路制作調試等。通過本設計任務實施,使學生能理論聯系實際,用所學專業知識解決工程技術問題,同時鍛煉和增強學生的團隊合作意識和良好的職業素養。
本文以設計一個鉛筆打包計數器為例,設計一個任意進制的計數器,設計過程中,一般采用預置數法比復位法簡單靈活,采用同步操作方式比異步方式簡單可靠,采用整體法常常比拆分法更簡單。本文設計的任意進制計數器從最大編碼獲取激勵方程,結構簡單,使用靈活方便。
[1]閆石.數字電子技術基礎[M].北京高等教育出版社,1999.
[2]呂虹.任意進制移位計數器研究與實現[J].淮南工業學院學報,2002(02).
[3]劉忠義.快速設計[R].商丘工學院學術講座,2010,10.