国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      具有非易失性存儲級的先入先出存儲設(shè)備的制作方法

      文檔序號:6655118閱讀:182來源:國知局
      專利名稱:具有非易失性存儲級的先入先出存儲設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種先入先出存儲設(shè)備。
      背景技術(shù)
      當(dāng)前的集成電路包含大量小的芯片內(nèi)緩沖器。大量的這些緩沖器用來去耦知識產(chǎn)權(quán)(IP)塊,諸如處理核心、通用處理器(例如ARMTM或MIPSTM)、數(shù)字信號處理器(DSP)、特定用途處理器(ASP)或其它硬件核心。這種去耦緩沖器典型地具有先入先出(FIFO)操作,在某些系統(tǒng)中可能有多于200個(gè)FIFO緩沖器。為此,使用了專用硬件FIFO,其能夠顯著地減小面積并增加這些緩沖器的速度。
      有兩種已知類型的硬件FIFO動(dòng)態(tài)和靜態(tài)。動(dòng)態(tài)FIFO只是將數(shù)據(jù)存儲有限的時(shí)間量,在這之后,如果沒有被刷新,其將丟失。靜態(tài)FIFO永久性地存儲數(shù)據(jù)。
      動(dòng)態(tài)FIFO比靜態(tài)FIFO小,但是為了保存數(shù)據(jù),必須刷新所述FIFO,并且這涉及額外的邏輯來生成刷新信號等,而靜態(tài)FIFO在尺寸上比動(dòng)態(tài)FIFO大,無需刷新就可以保存數(shù)據(jù),并因此不需要額外的邏輯。根據(jù)需求來使用這些設(shè)備中的任意一個(gè)。
      將參照圖1和圖2來說明傳統(tǒng)FIFO的基本操作。如圖1中所圖示的,在這種FIFO中,僅當(dāng)?shù)谝患?01為空時(shí),數(shù)據(jù)才被寫入FIFO100的該第一級101。數(shù)據(jù)行波傳送穿過FIFO 100直到其到達(dá)FIFO100最后占用的級103的后面。在讀取時(shí),如圖2所示,僅當(dāng)FIFO 200的最后級201為非空時(shí),才從該最后的級轉(zhuǎn)移數(shù)據(jù)??瞻卓臻g行波傳送穿過FIFO 200直到在FIFO 200中最后占用的級203之后。
      數(shù)據(jù)傳播穿過FIFO花費(fèi)了有限的時(shí)間。因此,在讀取操作期間對于空穴或空白空間來說存在有限的時(shí)間來反向傳播穿過FIFO,即是,在已經(jīng)讀取字之后直到所述空間變得可寫所花費(fèi)的時(shí)間。由于這些是用管道進(jìn)行的,因此這對靜態(tài)FIFO設(shè)備是特別有問題的。因此,在已經(jīng)從FIFO讀取數(shù)據(jù)之后,一旦位置變得可用,該空間(或空穴)在其在輸入端變得可見并對要寫入其中的數(shù)據(jù)可用之前必須反向傳播穿過每個(gè)流水線的級,即,引入了等待時(shí)間。
      作為示例,如果對FIFO的每個(gè)管道級傳播空穴的時(shí)間是360ps,那么,對于大小為32的FIFO來說,使一個(gè)空間在FIFO存儲設(shè)備的“輸入”端變得可用要花費(fèi)11520ps。在以200MHz(即5ns時(shí)鐘周期)運(yùn)行的系統(tǒng)中,這產(chǎn)生了3個(gè)時(shí)鐘周期的額外等待時(shí)間。在以500MHz運(yùn)行的系統(tǒng)中,該額外的等待時(shí)間將是6個(gè)周期。
      一個(gè)已知的改進(jìn)這種系統(tǒng)中的等待時(shí)間的技術(shù)是為FIFO提供額外的級。這些額外的級只是用于等待時(shí)間隱藏,例如,為200MHZ系統(tǒng)提供3個(gè)額外級,為500MHZ系統(tǒng)提供6個(gè)額外級。然而,這增加了緩存器的成本(在硅的面積方面),例如給200MHz的系統(tǒng)增加了10%的成本,給500MHz的系統(tǒng)增加了20%的成本。要增加的級的數(shù)量與FIFO的長度和設(shè)備操作頻率成比例。

      發(fā)明內(nèi)容
      本發(fā)明的目的是提供一種FIFO存儲設(shè)備,其在最小化設(shè)備成本的同時(shí)改善了等待時(shí)間。
      這是通過用于在非易失性(或靜態(tài))FIFO中隱藏等待時(shí)間的額外級來實(shí)現(xiàn)的;這些額外級是易失性(或動(dòng)態(tài))FIFO。依照本發(fā)明的第一方面,提供了一種FIFO存儲設(shè)備,其包含存儲級和輸入級,所述存儲級包含多個(gè)非易失性存儲元件,并且所述輸入級包含多個(gè)易失性存儲元件。這樣,所述輸入級有效地隱藏了所述存儲級的等待時(shí)間。
      所述輸入級可以包含易失性FIFO存儲器,其代替了上述的傳統(tǒng)硬件FIFO的額外級。因此,不再需要增加這些級,并且設(shè)備的成本也減少了。
      此外,F(xiàn)IFO緩存總是被用來提高數(shù)據(jù)吞吐量。能夠使用非易失性存儲器來實(shí)現(xiàn)根據(jù)本發(fā)明該方面的所述存儲設(shè)備,諸如靜態(tài)硬件FIFO或SRAM。這可以適應(yīng)數(shù)據(jù)流的給定平均吞吐量。然后,諸如DARM的易失性存儲器能夠被用于數(shù)據(jù)流最差情況的吞吐量。當(dāng)這在一小段時(shí)間內(nèi)發(fā)生時(shí),在不刷新的情況下使用DRAM,或者作為選擇,可以使用動(dòng)態(tài)硬件FIFO。在這種情況下,要增加額外的存儲器以便容納由臨時(shí)較高率的成組傳送而產(chǎn)生的額外數(shù)據(jù),這否則將導(dǎo)致產(chǎn)生數(shù)據(jù)的IP停止,或者導(dǎo)致溢出。在大部分的情況下,當(dāng)能夠保證額外數(shù)據(jù)在有限時(shí)間內(nèi)被吸收時(shí),易失性并較便宜的存儲器能夠被用于所述額外數(shù)據(jù)。
      這在IC設(shè)計(jì)中尤其有利,所述IC設(shè)計(jì)需要小時(shí)間間隔的額外存儲。例如,硬件去耦FIFO存儲器,其中為隱藏等待時(shí)間而增加了額外級,和具有額外易失性緩沖以便容納數(shù)據(jù)流吞吐量峰值的FIFO存儲器。
      本發(fā)明允許降低FIFO存儲器的成本,對于臨時(shí)數(shù)據(jù)所述FIFO存儲器需要額外級。這個(gè)成本降低是通過使用易失性而不是非易失性存儲器來實(shí)現(xiàn)的。在硬件FIFO的情況下,這個(gè)成本的降低沒有損失速度,因?yàn)殪o態(tài)(非易失性)和動(dòng)態(tài)(易失性)FIFO以相同的速度運(yùn)行。


      現(xiàn)在將參照附圖來描述本發(fā)明的實(shí)施例,附圖中圖1是傳統(tǒng)FIFO中寫操作的示意圖;圖2是傳統(tǒng)FIFO中讀操作的示意圖;圖3根據(jù)本發(fā)明第一實(shí)施例的存儲設(shè)備的框圖;和圖4根據(jù)本發(fā)明第二實(shí)施例的存儲設(shè)備的框圖。
      具體實(shí)施例方式
      現(xiàn)在將參照圖3描述本發(fā)明的實(shí)施例。FIFO存儲設(shè)備300包含數(shù)據(jù)輸入端301,數(shù)據(jù)輸出端303,寫使能端(wr_en)305,寫接受端(accept)307,讀使能端(rd_en)309和讀有效端(valid)311。所述數(shù)據(jù)輸入端301連接到輸入緩沖級315的數(shù)據(jù)輸入端313。所述輸入緩沖級315包含多個(gè)動(dòng)態(tài)、易失性存儲元件(這里未示出)。所述輸入緩沖級315的數(shù)據(jù)輸出端317連接到存儲級321的數(shù)據(jù)輸入端319。所述存儲設(shè)備321是非易失性、靜態(tài)FIFO,其包含多個(gè)靜態(tài)存儲元件或鎖存器(這里未示出)。所述存儲級321的數(shù)據(jù)輸出端323連接到存儲設(shè)備300的數(shù)據(jù)輸出端303。所述非易失性FIFO321如傳統(tǒng)非易失性、靜態(tài)FIFO中那樣存儲所述數(shù)據(jù)。然后,由于所述輸入緩沖級315能夠臨時(shí)地存儲等待空間被反向傳播穿過所述存儲級315的數(shù)據(jù),因此所述輸入緩沖級315能夠操作來隱藏存儲級321的等待時(shí)間。
      所述寫使能端305連接到第一與門325的第一輸入端。第一與門325的第二輸入端連接到計(jì)數(shù)器327的輸出。第一與門325的輸出為輸入緩沖級315提供了寫使能信號(wr_en1)。在第二與門329的第一輸入上提供輸入緩沖級315的接受標(biāo)記(accept1),所述第二與門329的第二輸入連接到計(jì)數(shù)器327的輸出。第二與門329的輸出連接到FIFO存儲設(shè)備300的接受端307和第三與門331的第一輸入。第三與門331的第二輸入連接到FIFO存儲設(shè)備300的寫使能端305。第三與門331的輸出連接到計(jì)數(shù)器327。存儲級321的接受標(biāo)記(accept2)連接到輸入緩沖級315的讀使能端(rd_en1)。所述輸入緩沖級315的有效標(biāo)記(valid1)連接到存儲級321的寫使能端(wr_en2)。
      FIFO存儲設(shè)備300的讀使能端309為存儲級321提供讀使能(rd_en2)。在FIFO存儲設(shè)備300的有效端311上提供存儲級321的有效標(biāo)記(valid2)。FIFO存儲設(shè)備300的數(shù)據(jù)輸出端303連接到存儲級321的數(shù)據(jù)輸出端。所述存儲級321的標(biāo)記(valid2)和讀使能(rd_en2)是第四與門333的相應(yīng)輸入。第四與門333的輸出連接到計(jì)數(shù)器327。
      FIFO存儲設(shè)備300還包括傳統(tǒng)設(shè)計(jì)的讀接口和寫接口,并且在圖3中未示出。
      現(xiàn)在將描述本發(fā)明第一實(shí)施例的存儲設(shè)備300的操作。
      在讀操作期間,讀接口通過激活端309上的讀使能(rd_en=高)來請求來自存儲設(shè)備300的數(shù)據(jù)。FIFO存儲設(shè)備300通過使端311上的標(biāo)記(valid)為高來指示數(shù)據(jù)可用,即,存儲FIFO321的最后級被占用。當(dāng)rd_en和valid都為高時(shí),數(shù)據(jù)字被傳送到FIFO存儲設(shè)備300的數(shù)據(jù)輸出端303之上。對于寫操作是相似地,寫接口通過使所述端305上的wr_en為高來發(fā)出寫請求,并且如果所述FIFO設(shè)備300能夠容納數(shù)據(jù),即,所述輸入緩存315的第一級為空,那么其使在所述端307上的標(biāo)記(accept)為高并且字?jǐn)?shù)據(jù)被傳輸?shù)剿鲚斎刖彌_級315的輸入端313之上。然后,所述數(shù)據(jù)被寫入輸入緩沖級315的第一級直到其到達(dá)最后占用的級的后面。當(dāng)所述數(shù)據(jù)到達(dá)輸入緩沖級315的最后級時(shí),標(biāo)記valid1被激活并且作為所述存儲級321的寫使能(wr_en2)被提供(作出了寫請求)。如果所述存儲設(shè)備321的第一級為空,那么所述標(biāo)記accept2為高,并且使得所述輸入緩沖級315的讀使能rd_en1為高,并且保存在輸入緩沖級315的最后級中的數(shù)據(jù)被傳遞到所述存儲FIFO321的第一級中。就像輸入緩沖級315一樣,數(shù)據(jù)行波傳送穿過存儲設(shè)備321直到其到達(dá)最后占用的級的后面。
      FIFO存儲設(shè)備300還包含計(jì)數(shù)器327,其維護(hù)輸入緩沖級和存儲級空白空間的計(jì)數(shù)。當(dāng)rd_en和valid都為高時(shí),即,作出了讀請求并且數(shù)據(jù)字被傳送到輸出端303之上時(shí),遞增計(jì)數(shù)器327的內(nèi)容以便指示存儲級321中的空白空間。相反,當(dāng)wr_en和accept都為高時(shí),即,作出了寫請求并且數(shù)據(jù)被傳送到輸入緩沖級315之中時(shí),遞減計(jì)數(shù)器以便指示空白空間現(xiàn)在被占用。如果存在空白空間,那么計(jì)數(shù)器327的內(nèi)容為正值,并且accept1為高(在輸入緩存315的第一級處存在空白空間),端307的accept為高并且輸入緩沖級315準(zhǔn)備如果發(fā)生了寫請求就在輸入端301上接收數(shù)據(jù)。復(fù)位時(shí),計(jì)數(shù)器327初始地被設(shè)置為等于存儲級321的大小。
      計(jì)數(shù)器327能夠被用來向讀接口和寫接口提供關(guān)于在FIFO設(shè)備300中是否存在空間的信息。圖4示出了這個(gè)的實(shí)現(xiàn)。
      根據(jù)本發(fā)明第二實(shí)施例的FIFO設(shè)備400對應(yīng)于圖3的設(shè)備,并且相同的組件使用了相同的引用數(shù)字,并且在這里不包含詳細(xì)的描述。
      在第二實(shí)施例中,計(jì)數(shù)器327輸出空間的數(shù)量。這是作為端440上的標(biāo)記empty_sapce來提供的,所述端440對于寫接口可用。這個(gè)標(biāo)記也被提供給減法器442,在所述減法器442中輸出了FIFO的大小和空間數(shù)量的差值。如果減法器442的輸出為0,那么端444上的full_space標(biāo)記被輸出給讀接口。計(jì)數(shù)器327的輸出上的值由數(shù)字轉(zhuǎn)換器446進(jìn)行數(shù)字化,所述數(shù)字轉(zhuǎn)換器446在計(jì)數(shù)器的輸出指示有至少一個(gè)空間的情況下輸出1(輸出值大于0),在計(jì)數(shù)器的輸出指示沒有空間的情況下輸出0。這作為輸入被提供給第二與門329。
      根據(jù)上述優(yōu)選實(shí)施例的FIFO存儲設(shè)備包括隱藏存儲FIFO等待時(shí)間的額外級。
      這些額外級(易失性FIFO 315)僅被用作為臨時(shí)存儲。數(shù)據(jù)被存儲在這個(gè)隊(duì)列中最長時(shí)間僅是存儲級321中的空項(xiàng)行波傳送穿過FIFO給輸出所花費(fèi)的時(shí)間。這個(gè)時(shí)間比易失性FIFO的保持時(shí)間要短(例如,對于PRLE/IC設(shè)計(jì)/DD&amp;T組中的靜態(tài)、非易失性FIFO,空項(xiàng)的行波傳送時(shí)間是每個(gè)級360ps,而動(dòng)態(tài)FIFO的保持時(shí)間是1us)。結(jié)果,易失性FIFO315不需要刷新邏輯。能夠省去易失性存儲315的刷新是因?yàn)閿?shù)據(jù)駐留在易失性FIFO315中的時(shí)間(最多十幾個(gè)ns)比易失性FIFO單元的保持時(shí)間小很多。因此,不需要用于刷新操作的額外電路,進(jìn)一步減少了設(shè)備的大小和成本。
      根據(jù)本發(fā)明優(yōu)選實(shí)施例的FIFO存儲設(shè)備的一個(gè)實(shí)例當(dāng)在使用時(shí),需要每位2.8m2大小的動(dòng)態(tài)單元,和每位7.5m2大小的靜態(tài)單元。因此,對于隱藏等待時(shí)間,成本減小了63%。對于上述特殊實(shí)例,根據(jù)本發(fā)明實(shí)施例的32級FIFO,以200MHz來操作,總的FIFO成本減少了6.3%。根據(jù)本發(fā)明實(shí)施例的32級FIFO,以500MHz來操作,總的FIFO成本減少了12.6%。
      盡管本發(fā)明的優(yōu)選實(shí)施例在附圖中圖示并且在前面的詳細(xì)描述中作出了描述,但是要理解的是本發(fā)明不局限于所公開的實(shí)施例,而是在不偏離權(quán)利要求所提出的本發(fā)明范圍的情況下能夠有許多的變化、修改。
      權(quán)利要求
      1.一種FIFO存儲設(shè)備,包含存儲級和輸入級,所述存儲級包含多個(gè)非易失性存儲元件,并且所述輸入級包含多個(gè)易失性存儲元件。
      2.根據(jù)權(quán)利要求1的FIFO存儲設(shè)備,其中所述存儲級包含非易失性FIFO存儲設(shè)備。
      3.根據(jù)權(quán)利要求1或2的FIFO存儲設(shè)備,其中所述輸入級包含易失性FIFO存儲設(shè)備。
      4.根據(jù)前面權(quán)利要求中任何一個(gè)的FIFO存儲設(shè)備,其中所述存儲設(shè)備進(jìn)一步包含用于監(jiān)控所述輸入級和/或存儲級的狀態(tài)的裝置。
      5.根據(jù)權(quán)利要求4的FIFO存儲設(shè)備,其中所述監(jiān)控裝置包含指示空白空間數(shù)量的計(jì)數(shù)器。
      6.根據(jù)前面權(quán)利要求中任何一個(gè)的FIFO存儲設(shè)備,其中所述輸入級和存儲級串聯(lián)連接。
      7.一種集成電路,包括至少一個(gè)根據(jù)前面權(quán)利要求中任何一個(gè)的存儲設(shè)備。
      全文摘要
      一種FIFO存儲設(shè)備(300)包含存儲級(321),所述存儲級是包含多個(gè)非易失性存儲元件或鎖存器的非易失性FIFO。該FIFO存儲設(shè)備(300)包含輸入級(315),所述輸入級是包含多個(gè)易失性存儲元件的易失性FIFO。所述輸入級(315)為數(shù)據(jù)提供臨時(shí)存儲,并因此隱藏了存儲設(shè)備(321)的等待時(shí)間。
      文檔編號G06F5/12GK1918541SQ200580004669
      公開日2007年2月21日 申請日期2005年2月8日 優(yōu)先權(quán)日2004年2月12日
      發(fā)明者A·拉杜勒斯庫 申請人:皇家飛利浦電子股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1