基於MSI的N進製計數器設計方法研究
發布時間:2012-03-05
中心議題:
1緒論
jishuqishishuziluojixitongzhongdejibenbujian,tashishuzixitongzhongyongdezuiduodeshixuluojidianlu,qizhuyaogongnengjiushiyongjishuqidebutongzhuangtailaijiyishurumaichongdegeshu。chuciyiwaihaijuyoudingshi、分頻、運算等邏輯功能。計數器不僅能用於對時鍾脈衝的計數,還可使用於定時、分頻、產生節拍脈衝以及進行數字運算等。隻要是稍微複雜一些的
數字係統,幾乎沒有不包含計數器的。通常把滿足N=2n的計數器稱為二進製規則計數器,有些數字定時、分頻係統中,常需要N≠2n的任意進製計數器。
當我們在設計任意進製計數器(即計數模不是2及10)時,一般采用現有的中規模集成電路(MediumScaleIntegratiON,MSI)芯(xin)片(pian),通(tong)過(guo)適(shi)當(dang)的(de)反(fan)饋(kui)連(lian)接(jie)加(jia)以(yi)實(shi)現(xian)。而(er)市(shi)場(chang)上(shang)現(xian)成(cheng)的(de)中(zhong)規(gui)模(mo)集(ji)成(cheng)電(dian)路(lu)芯(xin)片(pian)常(chang)見(jian)的(de)隻(zhi)有(you)十(shi)進(jin)製(zhi)計(ji)數(shu)器(qi)和(he)十(shi)六(liu)進(jin)製(zhi)計(ji)數(shu)器(qi),而(er)在(zai)實(shi)際(ji)應(ying)用(yong)中(zhong),如(ru)數(shu)字(zi)鍾(zhong)電(dian)路(lu)中(zhong),卻(que)需(xu)要(yao)二(er)十(shi)四(si)進(jin)製(zhi)和(he)六(liu)十(shi)進(jin)製(zhi)計(ji)數(shu)器(qi),因(yin)此(ci)要(yao)將(jiang)現(xian)有(you)計(ji)數(shu)器(qi)改(gai)造(zao)成(cheng)任(ren)意(yi)進(jin)製(zhi)計(ji)數(shu)器(qi)。利(li)用(yong)MSI芯片進行適當的連接就可以構成任意進製計數,所使用的方法主要有反饋置零法、反饋預置法和級聯法。
采(cai)用(yong)中(zhong)規(gui)模(mo)集(ji)成(cheng)計(ji)數(shu)器(qi)來(lai)設(she)計(ji)任(ren)意(yi)進(jin)製(zhi)計(ji)數(shu)器(qi),使(shi)設(she)計(ji)和(he)調(tiao)試(shi)工(gong)作(zuo)更(geng)趨(qu)於(yu)簡(jian)單(dan),並(bing)且(qie)具(ju)有(you)體(ti)積(ji)小(xiao),功(gong)耗(hao)低(di),可(ke)靠(kao)性(xing)高(gao)等(deng)優(you)點(dian)。本(ben)文(wen)主(zhu)要(yao)闡(chan)述(shu)了(le)用(yong)中(zhong)規(gui)模(mo)集(ji)成(cheng)計(ji)數(shu)器(qi)設(she)計(ji)任(ren)意(yi)進(jin)製(zhi)同(tong)步(bu)加(jia)法(fa)計(ji)數(shu)器(qi)的(de)設(she)計(ji)思(si)想(xiang),並(bing)對(dui)設(she)計(ji)方(fang)法(fa)和(he)步(bu)驟(zhou)作(zuo)了(le)討(tao)論(lun)。
2.MSI中規模計數器概述
2.1MSI中規模計數器芯片種類
MSI中規模計數器芯片有非常多的種類。若按觸發時鍾的方式分類有:同步計數器、異步計數器;若按進製的“模”分類有:二進製計數器、十進製計數器;若按計數的方式分類:有加法計數器、減法計數器和可逆(加/減)計數器;若按芯片的型號分類就更多了,如:僅74係列的4位二進製計數器芯片就有161、163、191、193、197等,十進製計數器芯片有160、162等。
2.2MSI中規模計數器工作原理
2.2.1.以十進製同步計數器74LS160為例
74LS160的功能
根據功能表,74LSl60的功能說明如下:
(1)異步清零功能。當CR=0時,不論其他輸入如何,輸出Q3Q2Q1Q0為0000,表中“×”表示任意。
(2)同步並行置數功能。LD為預置數控製端,在CR=1的條件下,LD=0時,在CP上升沿的作用下,預置好的數據d3d2dld0被並行地送到輸出端,即此時的Q3Q2Q1Q0為d3d2dld0。
(3)保持功能。在CR=1和LD=1的前提下,隻要TTTP=0,則計數器不工作,輸出保持原狀態不變。
(4)計數功能。正常計數時,必須使CR=1,LD=1,TTTP=1,此時在CP的上升沿的作用下,計
數器對CP的個數進行加法計數。當計數到輸出Q3Q2Q1Q0為1001時,C0=1,C0=1的維持時間是從Q3Q2QlQ0為1001時起到QaQ2Q1Q0狀態變化時止。
2.2.2以四位二進製計數器為例
74LS161功能
從功能表(一)可以看到,74LS161處於計數狀態時,引出端RD,LD,S:,S:都應為“1”(接高電平)。如果取其中一片T4161作為低位計數器〔記作(1)〕,對該片計數器來講,每來一個CP就計一次數,它始終工作在計數狀態。
[page]
3.設計方案
3.1采用反饋置零法來設計任意進製計數器
對於74LS160屬於異步置零輸入端的計數器,它是當置零輸入端出現有效電平(低電平)後計數器立即被置零,不受時鍾信號的控製。而對於74LS162/74LS163屬於同步置零輸入端的計數器。它是當置零輸入端出現有效電平(低電平)後計數器並不會立即被置零,必須等下一個時鍾信號到達後,才能將計數器置零。兩者用時必須加以區分。
3.1.1采用並行法來設計24進製計數器
用74LS160並行置零法設計24進製計數器的電路圖如圖1所示。此電路的工作原理:先假設兩芯片的置零輸入端為1,則個位芯片由於計數控製端ENP=ENT=1,故該芯片始終處於計數狀態;而十位芯片的ENP、ENT連接的是個位芯片的進位控製端RCO,隻有當個位芯片的計數狀態Q3Q2Q1Q0為1001時,RCO才為1.十位芯片才能計數。如果沒有反饋置零(即MR端恒接高電平)則電路是一個100進製計數器。現在電路中加上了反饋,當計數狀態(00100100)8421BCD碼=(24)10時,與非門輸出為零。由於74LS160屬於異步置零,且複位控製端MR低電平有效,所以計數器立即置零。由於電路中的狀態(24)10轉瞬即逝,顯示不出。故電路的有效狀態從(00)10到(23)10共24個,故此電路為24進製計數器。
另外如果采用同步置零74LS162計數器來設計24進製計數器,那麼反饋代碼必須是(23)10相應的8421BCD碼為00100011.由此可見反饋信號應取自十位芯片的Q1及個位芯片的Q1和Q0,相應的與非門應改成四輸入端與非門。用74LS162並行置零法設計24進製計數器的電路圖如圖2所示。 3.1.2采用串行法來設計48進製計數器
用74LS160串行置零法設計48進製計數器的電路圖如圖3所示。
[page]
此電路的工作原理:先假設兩芯片的置零輸入端為1,則個位芯片由於計數控製端ENP=ENT=1,故該芯片始終處於計數狀態;而十位芯片的ENP=ENT=1,但十位芯片的計數脈衝CLK是通過個位芯片的進位控製端RCO取反來控製的。當個位芯片的計數狀態Q3Q2Q1Q0為1001時,RCO為1.當下一個計數脈衝到來時RCO又為0.又由74LS160計數器的時鍾脈衝CLK是上升沿有效,與此同時,個位的RCO由1到0相當於一個下降沿,通過非門74LS04控製就得到一個上升沿,同時十位芯片才能計數。如果沒有反饋置零(即MR恒接高電平)則電路是一個100進製計數器。現電路中加上了反饋。當計數狀態(01001000)8421BCD碼=(48)10時,與非門輸出為零。由於74LS160屬於異步置零,且複位控製端低電平有效,所以計數器立即置零。如果采用同步置零74LS162計數器來設計48進製計數器,那麼反饋代碼必須是(47)10相應的8421BCD碼為01000111.由此可見反饋信號應取自十位芯片的Q2及個位芯片的Q2,Q1及Q0,相應的與非門應改成四輸入端與非門。74LS162串行置零法設計48進製計數器的電路圖如圖4所示。
另外,采用串行法設計時,十位芯片的計數脈衝CLK還可以通過個位芯片的最高位Q3端通過非門取反來控製,其他線路保持不變。隻要對圖3或圖4稍加修改即可。
3.2采用反饋置數法來設計任意進製計數器
此方法適用於某些具有預置數的計數器,它是采用預置數控製端LOAD來實現。對於74LS160屬於同步式預置數的計數器來說,當LOAD出現有效電平低電平後待下一個時鍾脈衝信號到來後計數器輸出端的狀態Q3Q2Q1Q0=D3D2D1D0.使其跳過某些狀態來設計任意進製計數器。下麵就以74LS160為例,用並行置數法設計23進製計數器,其中預置數端D3D2D1D0可以置零,也可以置十以內的任意四位二進製數。那麼此電路在其置數時十位和個位的D3D2D1D0置入(01100110)8421BCD碼=(66)10,而反饋代碼十位和個位為(10001000)8421BCD碼=(88)10,相當於十進製數的88.由此分析可得到計數器的模為(88-66)+1=23,故計數器為23進製計數器,其設計電路圖如圖5所示。由此可以得到置數法的設計要點為:反饋代碼轉換成的十進製數-預置數端的代碼轉換成的十進製數+1=所設計的計數器的模。同樣我們也可以仿照前麵的設計用串行置數法設計任意進製計數器。
4設計步驟
由於反饋置數法不太常用,且難於理解??下麵我們就以反饋置零法為例,通過以上分析和經驗總結,可以得出任意N進製計數器的設計方法及步驟。
根據計數模N來確定所需要計數器芯片的個數n.n=INT(logm(N-1))+1,INT表示取整。m:當芯片為十進製計數器時m取10,當芯片為四位二進製計數器時m取16.
(2)當n個計數器芯片連接成模為m的計數器
(3)選用並行法或串行法將n個計數器連接起來。
(4)確定反饋置零代碼。如果計數器芯片采用異步置零反饋代碼為(N)10,若是采用同步置零,則反饋代碼為(N??1)10.
(5)反饋置零代碼形式的轉換。如果芯片為十進製製計數器,將反饋代碼轉換成8421BCD碼的形式。若是四位二進製計數器,則將反饋代碼轉換成二進製數。
(6)將轉換結果與計數器的狀態輸出端進行比較,讓與1對應的引腳作用到與非門(反饋置零端低電平有效)或者與門(反饋置零端高電平有效)的輸入端,然後將與非門或者與門的輸出,連接到計數器芯片的反饋置零端即可。
- 基於MSI的N進製計數器設計方法研究
- 采用預置數控製端LOAD來實現
- 利用MSI芯片進行適當的連接
1緒論
jishuqishishuziluojixitongzhongdejibenbujian,tashishuzixitongzhongyongdezuiduodeshixuluojidianlu,qizhuyaogongnengjiushiyongjishuqidebutongzhuangtailaijiyishurumaichongdegeshu。chuciyiwaihaijuyoudingshi、分頻、運算等邏輯功能。計數器不僅能用於對時鍾脈衝的計數,還可使用於定時、分頻、產生節拍脈衝以及進行數字運算等。隻要是稍微複雜一些的
數字係統,幾乎沒有不包含計數器的。通常把滿足N=2n的計數器稱為二進製規則計數器,有些數字定時、分頻係統中,常需要N≠2n的任意進製計數器。
當我們在設計任意進製計數器(即計數模不是2及10)時,一般采用現有的中規模集成電路(MediumScaleIntegratiON,MSI)芯(xin)片(pian),通(tong)過(guo)適(shi)當(dang)的(de)反(fan)饋(kui)連(lian)接(jie)加(jia)以(yi)實(shi)現(xian)。而(er)市(shi)場(chang)上(shang)現(xian)成(cheng)的(de)中(zhong)規(gui)模(mo)集(ji)成(cheng)電(dian)路(lu)芯(xin)片(pian)常(chang)見(jian)的(de)隻(zhi)有(you)十(shi)進(jin)製(zhi)計(ji)數(shu)器(qi)和(he)十(shi)六(liu)進(jin)製(zhi)計(ji)數(shu)器(qi),而(er)在(zai)實(shi)際(ji)應(ying)用(yong)中(zhong),如(ru)數(shu)字(zi)鍾(zhong)電(dian)路(lu)中(zhong),卻(que)需(xu)要(yao)二(er)十(shi)四(si)進(jin)製(zhi)和(he)六(liu)十(shi)進(jin)製(zhi)計(ji)數(shu)器(qi),因(yin)此(ci)要(yao)將(jiang)現(xian)有(you)計(ji)數(shu)器(qi)改(gai)造(zao)成(cheng)任(ren)意(yi)進(jin)製(zhi)計(ji)數(shu)器(qi)。利(li)用(yong)MSI芯片進行適當的連接就可以構成任意進製計數,所使用的方法主要有反饋置零法、反饋預置法和級聯法。
采(cai)用(yong)中(zhong)規(gui)模(mo)集(ji)成(cheng)計(ji)數(shu)器(qi)來(lai)設(she)計(ji)任(ren)意(yi)進(jin)製(zhi)計(ji)數(shu)器(qi),使(shi)設(she)計(ji)和(he)調(tiao)試(shi)工(gong)作(zuo)更(geng)趨(qu)於(yu)簡(jian)單(dan),並(bing)且(qie)具(ju)有(you)體(ti)積(ji)小(xiao),功(gong)耗(hao)低(di),可(ke)靠(kao)性(xing)高(gao)等(deng)優(you)點(dian)。本(ben)文(wen)主(zhu)要(yao)闡(chan)述(shu)了(le)用(yong)中(zhong)規(gui)模(mo)集(ji)成(cheng)計(ji)數(shu)器(qi)設(she)計(ji)任(ren)意(yi)進(jin)製(zhi)同(tong)步(bu)加(jia)法(fa)計(ji)數(shu)器(qi)的(de)設(she)計(ji)思(si)想(xiang),並(bing)對(dui)設(she)計(ji)方(fang)法(fa)和(he)步(bu)驟(zhou)作(zuo)了(le)討(tao)論(lun)。
2.MSI中規模計數器概述
2.1MSI中規模計數器芯片種類
MSI中規模計數器芯片有非常多的種類。若按觸發時鍾的方式分類有:同步計數器、異步計數器;若按進製的“模”分類有:二進製計數器、十進製計數器;若按計數的方式分類:有加法計數器、減法計數器和可逆(加/減)計數器;若按芯片的型號分類就更多了,如:僅74係列的4位二進製計數器芯片就有161、163、191、193、197等,十進製計數器芯片有160、162等。
2.2MSI中規模計數器工作原理
2.2.1.以十進製同步計數器74LS160為例
74LS160的功能
根據功能表,74LSl60的功能說明如下:
(1)異步清零功能。當CR=0時,不論其他輸入如何,輸出Q3Q2Q1Q0為0000,表中“×”表示任意。
(2)同步並行置數功能。LD為預置數控製端,在CR=1的條件下,LD=0時,在CP上升沿的作用下,預置好的數據d3d2dld0被並行地送到輸出端,即此時的Q3Q2Q1Q0為d3d2dld0。
(3)保持功能。在CR=1和LD=1的前提下,隻要TTTP=0,則計數器不工作,輸出保持原狀態不變。
(4)計數功能。正常計數時,必須使CR=1,LD=1,TTTP=1,此時在CP的上升沿的作用下,計
數器對CP的個數進行加法計數。當計數到輸出Q3Q2Q1Q0為1001時,C0=1,C0=1的維持時間是從Q3Q2QlQ0為1001時起到QaQ2Q1Q0狀態變化時止。
2.2.2以四位二進製計數器為例
74LS161功能
從功能表(一)可以看到,74LS161處於計數狀態時,引出端RD,LD,S:,S:都應為“1”(接高電平)。如果取其中一片T4161作為低位計數器〔記作(1)〕,對該片計數器來講,每來一個CP就計一次數,它始終工作在計數狀態。
[page]
3.設計方案
3.1采用反饋置零法來設計任意進製計數器
對於74LS160屬於異步置零輸入端的計數器,它是當置零輸入端出現有效電平(低電平)後計數器立即被置零,不受時鍾信號的控製。而對於74LS162/74LS163屬於同步置零輸入端的計數器。它是當置零輸入端出現有效電平(低電平)後計數器並不會立即被置零,必須等下一個時鍾信號到達後,才能將計數器置零。兩者用時必須加以區分。
3.1.1采用並行法來設計24進製計數器
用74LS160並行置零法設計24進製計數器的電路圖如圖1所示。此電路的工作原理:先假設兩芯片的置零輸入端為1,則個位芯片由於計數控製端ENP=ENT=1,故該芯片始終處於計數狀態;而十位芯片的ENP、ENT連接的是個位芯片的進位控製端RCO,隻有當個位芯片的計數狀態Q3Q2Q1Q0為1001時,RCO才為1.十位芯片才能計數。如果沒有反饋置零(即MR端恒接高電平)則電路是一個100進製計數器。現在電路中加上了反饋,當計數狀態(00100100)8421BCD碼=(24)10時,與非門輸出為零。由於74LS160屬於異步置零,且複位控製端MR低電平有效,所以計數器立即置零。由於電路中的狀態(24)10轉瞬即逝,顯示不出。故電路的有效狀態從(00)10到(23)10共24個,故此電路為24進製計數器。
另外如果采用同步置零74LS162計數器來設計24進製計數器,那麼反饋代碼必須是(23)10相應的8421BCD碼為00100011.由此可見反饋信號應取自十位芯片的Q1及個位芯片的Q1和Q0,相應的與非門應改成四輸入端與非門。用74LS162並行置零法設計24進製計數器的電路圖如圖2所示。 3.1.2采用串行法來設計48進製計數器
用74LS160串行置零法設計48進製計數器的電路圖如圖3所示。
[page]
此電路的工作原理:先假設兩芯片的置零輸入端為1,則個位芯片由於計數控製端ENP=ENT=1,故該芯片始終處於計數狀態;而十位芯片的ENP=ENT=1,但十位芯片的計數脈衝CLK是通過個位芯片的進位控製端RCO取反來控製的。當個位芯片的計數狀態Q3Q2Q1Q0為1001時,RCO為1.當下一個計數脈衝到來時RCO又為0.又由74LS160計數器的時鍾脈衝CLK是上升沿有效,與此同時,個位的RCO由1到0相當於一個下降沿,通過非門74LS04控製就得到一個上升沿,同時十位芯片才能計數。如果沒有反饋置零(即MR恒接高電平)則電路是一個100進製計數器。現電路中加上了反饋。當計數狀態(01001000)8421BCD碼=(48)10時,與非門輸出為零。由於74LS160屬於異步置零,且複位控製端低電平有效,所以計數器立即置零。如果采用同步置零74LS162計數器來設計48進製計數器,那麼反饋代碼必須是(47)10相應的8421BCD碼為01000111.由此可見反饋信號應取自十位芯片的Q2及個位芯片的Q2,Q1及Q0,相應的與非門應改成四輸入端與非門。74LS162串行置零法設計48進製計數器的電路圖如圖4所示。
另外,采用串行法設計時,十位芯片的計數脈衝CLK還可以通過個位芯片的最高位Q3端通過非門取反來控製,其他線路保持不變。隻要對圖3或圖4稍加修改即可。
3.2采用反饋置數法來設計任意進製計數器
此方法適用於某些具有預置數的計數器,它是采用預置數控製端LOAD來實現。對於74LS160屬於同步式預置數的計數器來說,當LOAD出現有效電平低電平後待下一個時鍾脈衝信號到來後計數器輸出端的狀態Q3Q2Q1Q0=D3D2D1D0.使其跳過某些狀態來設計任意進製計數器。下麵就以74LS160為例,用並行置數法設計23進製計數器,其中預置數端D3D2D1D0可以置零,也可以置十以內的任意四位二進製數。那麼此電路在其置數時十位和個位的D3D2D1D0置入(01100110)8421BCD碼=(66)10,而反饋代碼十位和個位為(10001000)8421BCD碼=(88)10,相當於十進製數的88.由此分析可得到計數器的模為(88-66)+1=23,故計數器為23進製計數器,其設計電路圖如圖5所示。由此可以得到置數法的設計要點為:反饋代碼轉換成的十進製數-預置數端的代碼轉換成的十進製數+1=所設計的計數器的模。同樣我們也可以仿照前麵的設計用串行置數法設計任意進製計數器。
4設計步驟
由於反饋置數法不太常用,且難於理解??下麵我們就以反饋置零法為例,通過以上分析和經驗總結,可以得出任意N進製計數器的設計方法及步驟。
根據計數模N來確定所需要計數器芯片的個數n.n=INT(logm(N-1))+1,INT表示取整。m:當芯片為十進製計數器時m取10,當芯片為四位二進製計數器時m取16.
(2)當n個計數器芯片連接成模為m的計數器
(3)選用並行法或串行法將n個計數器連接起來。
(4)確定反饋置零代碼。如果計數器芯片采用異步置零反饋代碼為(N)10,若是采用同步置零,則反饋代碼為(N??1)10.
(5)反饋置零代碼形式的轉換。如果芯片為十進製製計數器,將反饋代碼轉換成8421BCD碼的形式。若是四位二進製計數器,則將反饋代碼轉換成二進製數。
(6)將轉換結果與計數器的狀態輸出端進行比較,讓與1對應的引腳作用到與非門(反饋置零端低電平有效)或者與門(反饋置零端高電平有效)的輸入端,然後將與非門或者與門的輸出,連接到計數器芯片的反饋置零端即可。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 2026藍牙亞洲大會暨展覽在深啟幕
- 新市場與新場景推動嵌入式係統研發走向統一開發平台
- 維智捷發布中國願景
- 2秒啟動係統 • 資源受限下HMI最優解,米爾RK3506開發板× LVGL Demo演示
- H橋降壓-升壓電路中的交替控製與帶寬優化
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
Tektronix
Thunderbolt
TI
TOREX
TTI
TVS
UPS電源
USB3.0
USB 3.0主控芯片
USB傳輸速度
usb存儲器
USB連接器
VGA連接器
Vishay
WCDMA功放
WCDMA基帶
Wi-Fi
Wi-Fi芯片
window8
WPG
XILINX
Zigbee
ZigBee Pro
安規電容
按鈕開關
白色家電
保護器件
保險絲管
北鬥定位
北高智










