專利名稱:Fifo寄存器和包括fifo寄存器的數(shù)字信號處理器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種FIFO(先入先出)寄存器。這種寄存器廣泛的用于數(shù)據(jù)處理和數(shù)字信號處理,來提供緩沖存儲器。在US3953838中描述了這種FIFO寄存器。這里披露的FIFO寄存器包括寄存器鏈路,通過MOS門電路相互連接。數(shù)據(jù)通過該寄存器鏈路波動。為此在控制部件中由單觸發(fā)裝置控制MOS門電路,控制部件還包括用于控制該單觸發(fā)裝置的組合邏輯電路和用于存儲該鏈路中的相應(yīng)寄存器的狀態(tài)(滿或空)的狀態(tài)寄存器。根據(jù)隨后的控制部件的單觸發(fā)裝置的輸出、前面的控制部件的單觸發(fā)裝置的輸出、狀態(tài)寄存器的狀態(tài)信號和前面的控制部件的該狀態(tài)信號的狀態(tài)信號,該組合邏輯電路控制該單觸發(fā)裝置。相互接連的控制部件通過5條信號線相互連接。
本發(fā)明的目的是提供一種FIFO寄存器,其中由相對簡單的裝置控制寄存器鏈路。根據(jù)本發(fā)明,根據(jù)權(quán)利要求1提供一種FIFO寄存器。
在根據(jù)本發(fā)明的FIFO寄存器中,該鏈路中的寄存器具有狀態(tài)部分,在一個電容節(jié)點(diǎn)處動態(tài)地存儲每個寄存器的狀態(tài),與其后面的狀態(tài)部分共享該電容節(jié)點(diǎn)。提供一個控制信號,控制相應(yīng)的數(shù)據(jù)寄存器和充電控制元件,充電控制元件用于對與其前面的狀態(tài)部分共享的電容節(jié)點(diǎn)進(jìn)行放電,和用于對與其后面的狀態(tài)部分共享的電容節(jié)點(diǎn)進(jìn)行充電。該控制信號由一個中央時鐘信號同步的控制部件產(chǎn)生,并且控制部件連接到與前面的狀態(tài)部分共事的電容節(jié)點(diǎn)和與后面的狀態(tài)部分共享的電容節(jié)點(diǎn)。這樣考慮到了非常簡單的結(jié)構(gòu),其中該鏈路中的寄存器的狀態(tài)部分僅通過共享的電容節(jié)點(diǎn)相互連接,并連接到一個公共的時鐘發(fā)生器。這樣簡化了該鏈路中的多個寄存器的控制,考慮到了較小數(shù)量的門電路和更快的控制。
在權(quán)利要求2的實(shí)施例中,第一組合部件的控制部件首先產(chǎn)生一個狀態(tài)信號,該信號指示,在輸入端AND是否出現(xiàn)了有效信號和相應(yīng)的數(shù)據(jù)寄存器的狀態(tài)是否為空閑??墒沁@個信號隨后在第二組合部件中不得不與中央時鐘信號同步,從而獲得用于控制數(shù)據(jù)寄存器和充電控制元件的輸出時鐘信號。
權(quán)利要求3的實(shí)施例是有利的,其中多個單元的數(shù)據(jù)部分僅要求少量的門電路。
根據(jù)權(quán)利要求4的實(shí)施例能夠電容性的存儲數(shù)據(jù),使得能夠進(jìn)一步減少門電路。
用于數(shù)字信號處理器中的根據(jù)本發(fā)明的FIFO寄存器是有益的,其中FIFO用于在產(chǎn)生的數(shù)據(jù)的功能部件和使用的數(shù)據(jù)的功能部件之間緩沖數(shù)據(jù)。
本發(fā)明的這些和其它方面將參照附圖詳細(xì)描述。其中
圖1示意性的示出了一個FIFO寄存器,圖2更詳細(xì)的示出了圖1的寄存器單元的狀態(tài)部分,圖3示出了圖2的狀態(tài)部分的第一實(shí)施例,圖4示出了圖3的狀態(tài)部分的一部分,圖5示出了圖4的一部分的可能的實(shí)施方式,圖6示出了用于狀態(tài)部分的一部分的第二實(shí)施例,圖7示出了數(shù)據(jù)部分的一部分的一個實(shí)施例,圖8示意性的示出了一個數(shù)字信號處理器,使用根據(jù)本發(fā)明的FIFO寄存器,圖9示出了在狀態(tài)部分中出現(xiàn)的信號之間的關(guān)系,圖10示出了一個輸入部分,圖11示出了該輸入部分的操作,圖12示出了輸出部分,圖13示出了該輸出部分的操作。
圖1示出了一個FIFO寄存器,包括m個寄存器單元10.1,...,10.m的序列。寄存器單元10.1,...,10.m包括數(shù)據(jù)部分40和狀態(tài)部分30。在輸入部分20提供的數(shù)據(jù)Din通過寄存器單元10.1,...,10.m中的數(shù)據(jù)部分,移位到輸出50。每個單元10.1,...,10.m的狀態(tài)部分30指示那個單元中的數(shù)據(jù)部分40是否包括有效數(shù)據(jù)。
在圖2中更為詳細(xì)的示出了狀態(tài)部分30,包括-時鐘輸入31,用于接收一個輸入時鐘信號Cl,-狀態(tài)輸入32,用于接收一個輸入狀態(tài)信號VDi-1,
-狀態(tài)輸出33,用于提供一個輸出狀態(tài)信號VDi,-時鐘輸出34,用于提供一個輸出時鐘信號Cli,-第一充電控制元件35,連接到狀態(tài)輸入32,-第二充電控制元件36,連接到狀態(tài)輸出33,-控制部件37。
控制部件37連接到狀態(tài)輸入32、狀態(tài)輸出33和時鐘輸入31。它產(chǎn)生輸出時鐘信號Cli,該輸出時鐘信號控制充電控制元件35、36和數(shù)據(jù)部分40。
狀態(tài)部分30的狀態(tài)輸出33和其后面的狀態(tài)部分30′的狀態(tài)輸入32′共享電容節(jié)點(diǎn)38,用于動態(tài)存儲。節(jié)點(diǎn)38的電容例如由在狀態(tài)輸出33和狀態(tài)輸入32′之間的連接的寄生電容來實(shí)現(xiàn),并且電容例如可以在十分之一pF到幾十pF的數(shù)量級。在這個實(shí)施例中,狀態(tài)部分30包括反相器39,用于產(chǎn)生反相的時鐘信號CLi。可選擇的,反相信號CLi能夠在數(shù)據(jù)部分中產(chǎn)生。
圖3示出了圖2的狀態(tài)部分的第一實(shí)施例。其中對應(yīng)于圖2中的那些部分具有相同的附圖標(biāo)記。在圖3的實(shí)施例中,充電控制元件35和36以半導(dǎo)體開關(guān)元件的形式分別由一個p溝道FET和一個n溝道FET實(shí)現(xiàn)。在導(dǎo)通狀態(tài),開關(guān)35將節(jié)點(diǎn)32連接到負(fù)電壓源,并且開關(guān)36將節(jié)點(diǎn)33連接到正電壓源。
該n溝道FET由反相元件36a連接到控制部件37??蛇x擇的,電流源能夠用作充電控制元件。在該實(shí)施例中示出,控制部件37包括第一組合部件37a、37b,用于組合輸入狀態(tài)信號VDi-1和輸出狀態(tài)信號VDi,并且用于根據(jù)這些信號提供一個中間信號Is給第二組合部件37c。第二組合部件37c將中間信號Is與輸入時鐘信號Cl相結(jié)合,并產(chǎn)生輸出時鐘信號Cli。第一組合部件包括反相元件37a,用于反相輸出狀態(tài)信號VDi和產(chǎn)生一個具有值“1”信號,當(dāng)且僅當(dāng)?shù)趇個單元10.i的狀態(tài)為空閑時。第一組合部件進(jìn)一步包括與非門37b,用于產(chǎn)生中間信號Is,當(dāng)且僅當(dāng)?shù)趇個單元10.i為空閑并且在其輸入端提供有效數(shù)據(jù)時,中間信號Is具有值“0”。
圖4更詳細(xì)的示出了第二組合部件37c。它包括用作同步部件的鎖存器37d、反相器37e和或非門37f。如果在輸入端37d2提供的時鐘信號Cl為低電平,那么鎖存器37d傳輸在輸入端37d1提供的中間信號Is。當(dāng)且僅當(dāng)在鎖存器37d的輸出端37d3的值為“0”和時鐘信號具有值“0”時,或非門37f輸出值“1”。
優(yōu)選地如圖5所示實(shí)現(xiàn)鎖存器37d,其中輸出值動態(tài)存儲為在輸出37d3和或非門37f的輸入之間的連接的寄生電容中的電荷。動態(tài)存儲器考慮到了少量的部件。然而,還能夠靜態(tài)的存儲該鎖存器的輸出值。鎖存器37d包括p溝道MOSFET37d5和n溝道MOSFET37d6,以及用于反相時鐘信號Cl的反相器37d4。代替對每個控制部件37使用單獨(dú)的反相器37d4和37e,改為能夠外部提供一個反相的時鐘信號/Cl。這依賴于在減少部件的數(shù)量和減少連接的數(shù)量之間的所做的選擇。
圖6示出了對于圖3和圖4的實(shí)施例的替換實(shí)施例。其中對應(yīng)于圖3和圖4中的那些部分具有比其高100的附圖標(biāo)記。其中第一組合部件包括與門137b和反相器137a。第二組合部件包括鎖存器137d和與門137f。
對所屬領(lǐng)域技術(shù)人員來說,可能進(jìn)行許多進(jìn)一步的改變。例如一個改變中,有效數(shù)據(jù)不用“1”表示出現(xiàn),而用“0”,通過交換充電控制元件35和36,和通過包括在VDi-1輸入和門137b之間的反相門137a代替在VDi輸入和門137b之間的反相門,來實(shí)現(xiàn)這樣的改變。
圖7示出了在單元的數(shù)據(jù)部分40中的存儲元件的實(shí)現(xiàn)方式。雖然數(shù)據(jù)部分40能夠包括單獨(dú)的存儲元件,但是最好包括多個存儲元件。優(yōu)選的,該數(shù)量為2的冪,例如8、16和32。
它包括數(shù)據(jù)輸入41、數(shù)據(jù)輸出42、時鐘輸入43,用于從狀態(tài)部分30的時鐘輸出34接收輸出時鐘信號Cli。數(shù)據(jù)輸出42通過第一鏈路連接到第一電壓線+,通過第二鏈路連接到第二電壓線-。第一鏈路包括由數(shù)據(jù)輸入41控制的第一半導(dǎo)體元件44的主電流通路,和由時鐘輸入43控制的第二半導(dǎo)體元件45。第二鏈路包括由數(shù)據(jù)輸入41控制的第三半導(dǎo)體元件46的主電流通路,和由時鐘輸入43控制的第四半導(dǎo)體元件47。反相器48用于反相時鐘信號Cl。取而代之,反相時鐘信號可以在中央產(chǎn)生。
如圖7所示的實(shí)施例中,單元的數(shù)據(jù)部分40與后面單元的數(shù)據(jù)部分共享電容節(jié)點(diǎn)42,用于存儲數(shù)據(jù)。該節(jié)點(diǎn)的電容可以由在兩個接連的數(shù)據(jù)部分40之間的連接的電容值來體現(xiàn),然而可以增加明確的電容部件??紤]到所要求的門電路的數(shù)量,這樣實(shí)現(xiàn)的動態(tài)存儲是有利的。然而,做為選擇,能夠靜態(tài)的實(shí)現(xiàn)存儲,例如通過一對交叉連接的或門實(shí)現(xiàn)。
圖8示出了一個數(shù)字信號處理器,包括第一功能部件60、第二功能部件80和根據(jù)本發(fā)明如上所述的FIFO寄存器10,F(xiàn)IFO寄存器10用于在第一和第二功能部件之間傳輸數(shù)據(jù)。
現(xiàn)在參照圖9來說明根據(jù)本發(fā)明的FIFO寄存器的操作。
假定在t0時刻輸出信號VDi為“0”,意味著沒有有效數(shù)據(jù)存儲在該狀態(tài)部分所屬的單元中。進(jìn)一步,在t0時刻VDi-1=“0”,表明沒有有效信號由前面的寄存器提供或在該FIFO寄存器的輸入端。此時假設(shè)中間信號Is的值為“1”,意味著不滿足條件有效數(shù)據(jù)出現(xiàn)在輸入端AND,該單元為空。
如圖9所示,在t0和t1之間的t0′時刻,VDi-1的值從“0”變?yōu)椤?”。幾乎同時,中間信號的值從“1”變?yōu)椤?”。第二組合部件的輸出信號A保持“1”,因?yàn)樗鼉H當(dāng)時鐘信號為“0”時,傳輸輸入值。從而,信號Cli保持“0”,使得充電控制元件35和36保持停用。于是狀態(tài)部分不改變VDi-1和VDi的狀態(tài)。
假定在t1時刻時鐘信號Cl的值為“0”,導(dǎo)致鎖存器37將中間信號Is的值傳輸?shù)剿妮敵?,使得信號A也變?yōu)椤?”。輸出時鐘信號Cli仍保持“0”,因?yàn)楝F(xiàn)在或非門37f的另一輸入端的反相時鐘信號具有值“1”。
在t2時刻,反相時鐘信號變?yōu)椤?”,導(dǎo)致或非門37f的輸出信號Cli從“0”變?yōu)椤?”。這使得數(shù)據(jù)部分的MOS晶體管45和47導(dǎo)通。如果輸入數(shù)據(jù)40是邏輯“1”,那么在第一鏈路中連接到數(shù)據(jù)輸入41的半導(dǎo)體元件44截止,同時在第二鏈路中連接到數(shù)據(jù)輸入41的半導(dǎo)體元件47變?yōu)閷?dǎo)通。如果輸入數(shù)據(jù)是“0”,那么半導(dǎo)體元件44導(dǎo)通,半導(dǎo)體元件47非導(dǎo)通。這樣具有結(jié)果,即數(shù)據(jù)Di-1以反相的形式復(fù)制到數(shù)據(jù)輸出42。只要該FIFO包括偶數(shù)個單元,數(shù)據(jù)就在輸出端以其原始形式出現(xiàn)。輸出時鐘信號Cli的值“1”進(jìn)一步使充電控制元件35對輸入節(jié)點(diǎn)32進(jìn)行放電,使得在輸入端的該信號有效數(shù)據(jù)VDi-1從“1”變?yōu)椤?”。它進(jìn)一步使充電控制元件36對電容節(jié)點(diǎn)33進(jìn)行充電,表明在該單元的數(shù)據(jù)部分獲得了有效數(shù)據(jù)。中間信號于是從“0”變?yōu)椤?”。
在t3時刻,時鐘信號Cl從“1”變?yōu)椤?”。這樣具有結(jié)果,即中間信號的當(dāng)前值“1”傳輸?shù)芥i存器37d的輸出,信號A也從“0”變?yōu)椤?”。因此,輸出時鐘信號Cli從“1”變?yōu)椤?”,使得后面的單元現(xiàn)在能夠安全的將一個新的數(shù)據(jù)Di-1提供給數(shù)據(jù)部分40的輸入節(jié)點(diǎn)41,和將一個新的有效數(shù)據(jù)信號VDi-1提供給狀態(tài)部分的輸入32,而不使它們分別重寫輸出42和43。
圖10示出了一個輸入部分50,它連接到第一單元10.1的狀態(tài)部分30。在時鐘CL為低電平期間,該輸入部分用于有選擇的將來自于一個外部數(shù)據(jù)源的寫信號WR傳輸給狀態(tài)輸入32。這樣防止了在第一開關(guān)35處于導(dǎo)通模式中時給狀態(tài)輸入32提供一個有效的高電平信號。
在圖10所示的實(shí)施例中,輸入部分包括第一組合元件51,用于將寫信號WR與輸入狀態(tài)信號VD0組合。該組合元件51的邏輯高電平輸出信號表明FIFO 10的第一位置為空,并且表明寫信號WR有效。輸入狀態(tài)信號VD0還用到外部數(shù)據(jù)源,做為一種指示,即FIFO 10是否具有可用空間來寫入新數(shù)據(jù)。在該實(shí)施例中,所示的組合元件51的輸出連接到鎖存器52的數(shù)據(jù)輸入D,鎖存器52進(jìn)一步包括連接到時鐘CL的一個控制輸入。通過第一可控開關(guān)元件53的主電流通路和第二可控開關(guān)元件54的主電流通路,將狀態(tài)輸入連接到第一電壓線+。鎖存器52的反相輸出Q控制第一可控開關(guān)元件53。時鐘信號CL控制第二可控開關(guān)元件54。
借助于圖11描述圖10的電路的操作。
如圖所示,信號FL(=VD0)在時間間隔t0-t1中從“1”變?yōu)椤?”。這對于一個外部數(shù)據(jù)源表明出現(xiàn)了一個位置?,F(xiàn)在如果在時間間隔t1-t2中外部數(shù)據(jù)源設(shè)置了寫信號WR。因此,組合元件51在鎖存器的D輸入端產(chǎn)生一個邏輯高電平輸出信號。在時鐘信號CL為“1”的時間間隔期間,鎖存器52是通過的(transparent),使得鎖存器的反相輸出Q從時刻t2開始為邏輯低電平值。這樣具有結(jié)果,即第一可控開關(guān)元件53在時刻t2變?yōu)閷?dǎo)通的。然而另一個可控開關(guān)元件54保持在非導(dǎo)通階段,直到時鐘信號在t3時刻變?yōu)檫壿嫷碗娖健kS后對第一單元10.1的狀態(tài)部分30的狀態(tài)輸入32進(jìn)行充電。這不干擾開關(guān)35的操作,因?yàn)閮H在時鐘信號CL具有邏輯高電平值期間能夠?qū)ā?br>
圖12示出了包括具有一個控制部分的輸出部分80,控制部分具有一個輸入,用于接收最后的寄存器單元10.m的有效數(shù)據(jù)信號VDm。該輸出部分具有一個控制部分,該控制部分包括用于產(chǎn)生時鐘信號CLo的鎖存器81和與門82,以及放電元件83。它進(jìn)一步包括數(shù)據(jù)部分84,數(shù)據(jù)部分84包括由時鐘信號CLo控制的一個或多個數(shù)據(jù)寄存器85。
圖13示意性的示出了該輸出部分的操作。在t0到t1期間,因?yàn)闀r鐘信號的高電平值保持放電元件83導(dǎo)通,所以信號VDm維持在值“0”。在從t1到t2期間,放電元件83不再導(dǎo)通,使得最后的寄存器單元10.m的第二充電控制元件36m能夠?qū)?jié)點(diǎn)33m進(jìn)行充電。對于當(dāng)前的實(shí)施例,假定在時間間隔t1-t2中信號VDm的值為“1”。從t1到t2,對于信號VDm,鎖存器81的輸出信號是通過的,并且也具有值“1”。時鐘信號CLo保持“0”。在下一個時間間隔t2-t3中,鎖存器處于非導(dǎo)通狀態(tài),使得它的輸出信號Q保持“1”。現(xiàn)在在t2時刻,時鐘信號CL從“0”到“1”的改變導(dǎo)致了輸出時鐘信號CLo的改變。經(jīng)由這種變換,動態(tài)存儲在最后的單元10.m的數(shù)據(jù)部分中的數(shù)據(jù)就存儲在數(shù)據(jù)部分84中。
應(yīng)當(dāng)注意,本發(fā)明的保護(hù)范圍不限于這里所述的實(shí)施例。權(quán)利要求書中的附圖標(biāo)記也不限制本發(fā)明的保護(hù)范圍。用語“包括”不排除在一個權(quán)利要求中的那些所提及部件之外的其它部件。某個元件前的用語“一個(n個)”不排除多個那種部件。形成本發(fā)明各部分的裝置可以以專用硬件的形式實(shí)現(xiàn)或以編程的通用處理器形式實(shí)現(xiàn)。本發(fā)明在于每個新的特征或特征組合。
權(quán)利要求
1.一種FIFO寄存器,包括寄存器單元的序列,寄存器單元包括數(shù)據(jù)部分和狀態(tài)部分,其中在輸入部分提供的數(shù)據(jù)通過寄存器單元中的數(shù)據(jù)部分移位到輸出端,每個單元的狀態(tài)部分指示那個單元中的數(shù)據(jù)部分是否包括有效數(shù)據(jù),其中所述單元的狀態(tài)部分包括-時鐘輸入,用于接收一個輸入時鐘信號,-狀態(tài)輸入,用于接收一個輸入狀態(tài)信號,-狀態(tài)輸出,用于提供一個輸出狀態(tài)信號,-時鐘輸出,用于提供一個輸出時鐘信號,-第一克電控制元件,連接到狀態(tài)輸入,-第二充電控制元件,連接到狀態(tài)輸出,-控制部件,連接到狀態(tài)輸入、狀態(tài)輸出和時鐘輸入,用于產(chǎn)生輸出時鐘信號,該輸出時鐘信號控制充電控制元件和數(shù)據(jù)部分,其中狀態(tài)部分的狀態(tài)輸出和其后面的狀態(tài)部分的狀態(tài)輸入共享一個節(jié)點(diǎn),用于動態(tài)存儲。
2.如權(quán)利要求1所述的FIFO寄存器,其中控制部件包括第一組合部件,用于組合輸入狀態(tài)信號和輸出狀態(tài)信號,并且用于根據(jù)這些信號提供一個中間信號給第二組合部件,第二組合部件將中間信號與輸入時鐘信號相組合,并產(chǎn)生輸出時鐘信號。
3.如權(quán)利要求1所述的FIFO寄存器,其中該單元的數(shù)據(jù)部分包括數(shù)據(jù)輸入、數(shù)據(jù)輸出、用于從狀態(tài)部分的時鐘輸出接收輸出時鐘信號的時鐘輸入、通過第一鏈路連接到第一電壓線和通過第二鏈路連接到第二電壓線的數(shù)據(jù)輸出,第一鏈路包括由數(shù)據(jù)輸入控制的第一半導(dǎo)體元件的主電流通路和由時鐘輸入控制的第二半導(dǎo)體元件,第二鏈路包括由數(shù)據(jù)輸入控制的第三半導(dǎo)體元件的主電流通路和由時鐘輸入控制的第四半導(dǎo)體元件。
4.如權(quán)利要求1所述的FIFO寄存器,其中該單元的數(shù)據(jù)部分與后面單元的數(shù)據(jù)部分共享一個電容節(jié)點(diǎn),用于數(shù)據(jù)的存儲。
5.一種數(shù)字信號處理器,包括第一功能部件和第二功能部件以及根據(jù)上述權(quán)利要求之一的FIFO寄存器,該FIFO寄存器用于在第一和第二功能部件之間傳輸數(shù)據(jù)。
全文摘要
根據(jù)本發(fā)明的一種FIFO寄存器(10)包括寄存器單元的序列(10.1...,10.m),其中寄存器單元包括數(shù)據(jù)部分(40)和狀態(tài)部分(30)。在輸入部分(20)提供的數(shù)據(jù)(Din)通過寄存器單元中的數(shù)據(jù)部分(40),移位到輸出(50)。每個單元的狀態(tài)部分(30)指示那個單元中的數(shù)據(jù)部分(40)是否包括有效數(shù)據(jù)。一個單元的狀態(tài)部分包括控制部件(37),控制部件(37)連接到狀態(tài)輸入(32)、狀態(tài)輸出(33)和時鐘輸入(31),并且產(chǎn)生輸出時鐘信號(Cli),該輸出時鐘信號控制充電控制元件(35、36)和數(shù)據(jù)部分(40),充電控制元件(35、36)連接到狀態(tài)輸入和狀態(tài)輸出。狀態(tài)部分(30)的狀態(tài)輸出(33)和其后面的狀態(tài)部分(30′)的狀態(tài)輸入(32′)共享一個通用電容節(jié)點(diǎn)(38)。
文檔編號G06F5/08GK1659509SQ03813723
公開日2005年8月24日 申請日期2003年5月27日 優(yōu)先權(quán)日2002年6月14日
發(fā)明者R·H·W·薩特斯, P·維拉格 申請人:皇家飛利浦電子股份有限公司