欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法

文檔序號(hào):6758879閱讀:249來源:國(guó)知局
專利名稱:使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法
技術(shù)領(lǐng)域
本發(fā)明涉及先進(jìn)先出隊(duì)列(FIFO)的可編程邏輯設(shè)計(jì)方法,具體地說涉及使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法。
本發(fā)明的目的在于提供一種使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,使用該方法塊存儲(chǔ)器資源的利用率較高,能夠減少可編程邏輯設(shè)計(jì)中需要的塊存儲(chǔ)器的數(shù)量,降低設(shè)計(jì)成本并簡(jiǎn)化設(shè)計(jì)。
為達(dá)到上述目的,本發(fā)明提供的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法使兩個(gè)先進(jìn)先出(FIFO)隊(duì)列分別同時(shí)占用雙端口隨機(jī)存儲(chǔ)器(RAM)的一個(gè)端口,其中一個(gè)FIFO隊(duì)列占用雙端口RAM的低端空間,另一個(gè)占用雙端口RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換。
上述兩個(gè)FIFO隊(duì)列,一個(gè)FIFO隊(duì)列從雙端口RAM的第一個(gè)端口寫入,并從第一個(gè)端口讀出;另一個(gè)FIFO隊(duì)列從雙端口RAM的第二個(gè)端口寫入,并從第二個(gè)端口讀出。
所述地址切換邏輯在同一個(gè)FIFO隊(duì)列的讀地址指針和寫地址指針之間切換。
本發(fā)明提供的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法還可以是使兩個(gè)先進(jìn)先出(FIFO)隊(duì)列分別分時(shí)占用雙端口隨機(jī)存儲(chǔ)器(RAM)的二個(gè)端口,其中一個(gè)FIFO隊(duì)列占用雙端口RAM的低端空間,另一個(gè)占用雙端口RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換。
上述兩個(gè)FIFO隊(duì)列,一個(gè)FIFO隊(duì)列從雙端口RAM的第一個(gè)端口寫入,從第二個(gè)端口讀出;另一個(gè)FIFO隊(duì)列從雙端口RAM的第二個(gè)端口寫入,從第一個(gè)端口讀出。
所述地址切換邏輯在第一個(gè)FIFO隊(duì)列的讀地址指針和第二個(gè)FIFO隊(duì)列的寫地址指針之間切換及第一個(gè)FIFO隊(duì)列的寫地址指針和第二個(gè)FIFO隊(duì)列的讀地址指針之間切換。
本發(fā)明采用使兩個(gè)FIFO隊(duì)列分別同時(shí)或分時(shí)占用雙端口RAM的一個(gè)或二個(gè)端口,其中一個(gè)FIFO隊(duì)列占用雙端口RAM的低端空間,另一個(gè)占用雙端口RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換的方法,使得使用一個(gè)雙端口RAM即可實(shí)現(xiàn)兩個(gè)FIFO隊(duì)列,由于本發(fā)明充分利用了雙端口RAM中的塊存儲(chǔ)器資源,提高了塊存儲(chǔ)器資源的利用率,能夠減少可編程邏輯設(shè)計(jì)中需要的塊存儲(chǔ)器的數(shù)量,降低設(shè)計(jì)成本并簡(jiǎn)化設(shè)計(jì),因此采用本發(fā)明的方法有可能只用較小規(guī)模的可編程邏輯器件就可以實(shí)現(xiàn)以前需要較大規(guī)模的可編程邏輯器件才能實(shí)現(xiàn)的設(shè)計(jì)。
采用現(xiàn)有方法實(shí)現(xiàn)的獨(dú)立式FIFO的邏輯圖參考

圖1。圖中使用的可編程邏輯器件的塊存儲(chǔ)器的容量為4KBits,圖中所示的FIFO隊(duì)列(該隊(duì)列名稱為FBQ)將雙端口RAM的其中一個(gè)端口作為寫入端口,連接輸入數(shù)據(jù)信號(hào)FBQ_D、寫控制信號(hào)FBQ_WEN和寫地址指針,另一個(gè)端口作為讀出端口,連接輸出數(shù)據(jù)信號(hào)FBQ_Q和讀地址指針,由于讀、寫地址指針分別占用8位地址線ADDRA和ADDRB,其存儲(chǔ)容量為256×8Bits共2KBits(1K=1024),這樣,F(xiàn)IFO隊(duì)列FBQ單獨(dú)占用一個(gè)雙端口RAM,雙端口RAM用可編程邏輯器件器件DPRAM內(nèi)部的塊存儲(chǔ)器產(chǎn)生,由于塊存儲(chǔ)器只能整塊地使用,不能分成2個(gè)獨(dú)立的存儲(chǔ)器,因此圖中的FIFO隊(duì)列FBQ需要獨(dú)立占用整塊存儲(chǔ)器,這樣導(dǎo)致了塊存儲(chǔ)器中有一半的存儲(chǔ)空間被浪費(fèi)了。
采用本發(fā)明所述的方法,能夠根據(jù)具體應(yīng)用情況的不同,使用一個(gè)雙端口RAM實(shí)現(xiàn)2個(gè)FIFO隊(duì)列。
本發(fā)明提供的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法有兩套實(shí)現(xiàn)方案,第一套方案為使兩個(gè)先進(jìn)先出(FIFO)隊(duì)列分別同時(shí)占用雙端口隨機(jī)存儲(chǔ)器(RAM)的一個(gè)端口,一個(gè)FIFO隊(duì)列從雙端口RAM的第一個(gè)端口寫入,并從第一個(gè)端口讀出;另一個(gè)FIFO隊(duì)列從雙端口RAM的第二個(gè)端口寫入,并從第二個(gè)端口讀出,其中一個(gè)FIFO隊(duì)列占用RAM的低端空間,另一個(gè)占用RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換,所述地址切換邏輯在同一個(gè)FIFO隊(duì)列的讀地址指針和寫地址指針之間切換。該方案的特點(diǎn)是同一個(gè)FIFO隊(duì)列不能同時(shí)進(jìn)行讀寫操作,但兩個(gè)FIFO之間的操作完全獨(dú)立。
圖2是本發(fā)明第一個(gè)方案提供的實(shí)施例邏輯圖。圖中描述了一個(gè)具有2個(gè)FIFO隊(duì)列的裝置,該裝置包括一個(gè)雙端口隨機(jī)存儲(chǔ)器1、第一個(gè)FIFO隊(duì)列FBQ的寫地址指針2和讀地址指針3、第二個(gè)FIFO隊(duì)列PIQ的寫地址指針6和讀地址指針7;圖中,兩個(gè)FIFO隊(duì)列FBQ和PIQ分別同時(shí)占用雙端口RAM的一個(gè)端口,即端口A和端口B,F(xiàn)BQ隊(duì)列從雙端口RAM的第一個(gè)端口,即端口A寫入,并從該端口讀出;另一個(gè)FIFO隊(duì)列PIQ從雙端口RAM的第二個(gè)端口,即端口B寫入,并從該端口讀出,上述FBQ隊(duì)列占用雙端口RAM的低端空間,PIQ隊(duì)列占用RAM的高端空間,當(dāng)然也可以FBQ隊(duì)列占用雙端口RAM的高端空間,PIQ隊(duì)列占用RAM的低端空間,上述2個(gè)隊(duì)列通過切換邏輯完成讀地址指針和寫地址指針的切換,即地址切換邏輯4在FBQ隊(duì)列的讀地址指針3和寫地址指針2之間切換,地址切換邏輯8在PIQ隊(duì)列的讀地址指針7和寫地址指針6之間切換。可見圖2中的同一個(gè)FIFO隊(duì)列不能同時(shí)進(jìn)行讀寫操作,但兩個(gè)FIFO之間的操作完全獨(dú)立。
圖2中,DPRAM管腳DIA、WEA、ADDRA、DOA分別為第一個(gè)端口的數(shù)據(jù)輸入管腳、寫控制信號(hào)管腳、地址線管腳和數(shù)據(jù)輸出管腳,上述管腳分別用于連接第一個(gè)隊(duì)列FBQ的輸入數(shù)據(jù)FBQ_D、寫控制信號(hào)FBQ_WEN、地址切換邏輯4和數(shù)據(jù)輸出FBQ_Q,寫地址指針2還連接時(shí)鐘線CLK和寫控制信號(hào)FBQ_WEN,讀地址指針3連接時(shí)鐘線CLK和讀控制信號(hào)FBQ_REN;寫控制信號(hào)FBQ_WEN同時(shí)還連接地址切換邏輯4以對(duì)地址切換邏輯4進(jìn)行讀地址指針、寫地址指針之間的切換控制,地址切換邏輯4還與寫地址指針2和讀地址指針3連接;管腳DIB、WEB、ADDRB、DOB分別為第二個(gè)端口的數(shù)據(jù)輸入管腳、寫控制信號(hào)管腳、地址線管腳和數(shù)據(jù)輸出管腳,上述管腳分別用于連接第二個(gè)隊(duì)列PIQ的輸入數(shù)據(jù)PIQ_D、寫控制信號(hào)PIQ_WEN、地址切換邏輯8和數(shù)據(jù)輸出PIQ_Q,寫地址指針6還連接時(shí)鐘線CLK和寫控制信號(hào)PIQ_WEN,讀地址指針7還連接時(shí)鐘線CLK和讀控制信號(hào)PIQ_REN;寫控制信號(hào)PIQ_WEN同時(shí)還連接地址切換邏輯8以對(duì)地址切換邏輯8進(jìn)行讀、寫指針切換控制,地址切換邏輯8還與寫地址指針6和讀地址指針7連接。
圖2中的兩個(gè)FIFO隊(duì)列FBQ的寫地址指針2和讀地址指針3和PIQ的寫地址指針6和讀地址指針7分別與各自隊(duì)列的標(biāo)志控制邏輯5、9連接,以在實(shí)際應(yīng)用中通過標(biāo)志控制邏輯5、9的隊(duì)列滿標(biāo)志FBQ_FF、PIQ_FF和隊(duì)列空標(biāo)志FBQ_EF、PIQ_EF獲取上述2個(gè)隊(duì)列的狀態(tài),從而對(duì)該2個(gè)隊(duì)列進(jìn)行控制。
本發(fā)明的第二套方案為使兩個(gè)先進(jìn)先出(FIFO)隊(duì)列分別分時(shí)占用雙端口隨機(jī)存儲(chǔ)器(RAM)的二個(gè)端口,一個(gè)FIFO隊(duì)列從雙端口RAM的第一個(gè)端口寫入,從第二個(gè)端口讀出;另一個(gè)FIFO隊(duì)列從雙端口RAM的第二個(gè)端口寫入,從第一個(gè)端口讀出,其中一個(gè)FIFO隊(duì)列占用RAM的低端空間,另一個(gè)占用RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換,所述地址切換邏輯在第一個(gè)FIFO隊(duì)列的讀地址指針和第二個(gè)FIFO隊(duì)列的寫地址指針之間切換及第一個(gè)FIFO隊(duì)列的寫地址指針和第二個(gè)FIFO隊(duì)列的讀地址指針之間切換。其特點(diǎn)是同一個(gè)FIFO隊(duì)列可以同時(shí)進(jìn)行讀寫操作,但在寫其中一個(gè)FIFO隊(duì)列時(shí)不能讀另一個(gè)FIFO隊(duì)列。
圖3是本發(fā)明第二個(gè)方案提供的實(shí)施例邏輯圖。圖中也描述了一個(gè)具有2個(gè)FIFO隊(duì)列的裝置,該裝置包括一個(gè)雙端口隨機(jī)存儲(chǔ)器10(DPRAM)、第一個(gè)FIFO隊(duì)列FBQ的寫地址指針20和讀地址指針30、第二個(gè)FIFO隊(duì)列PIQ的寫地址指針60和讀地址指針70;圖中,兩個(gè)FIFO隊(duì)列FBQ和PIQ分別分時(shí)占用雙端口RAM的二個(gè)端口,即端口A和端口B,F(xiàn)BQ隊(duì)列從雙端口RAM的第一個(gè)端口,即端口A寫入,并從第二個(gè)端口,即端口B讀出;另一個(gè)FIFO隊(duì)列PIQ從雙端口RAM的第二個(gè)端口,即端口B寫入,并從第一個(gè)端口,即端口A讀出,上述FBQ隊(duì)列占用雙端口RAM的低端空間,PIQ隊(duì)列占用RAM的高端空間,當(dāng)然也可以FBQ隊(duì)列占用雙端口RAM的高端空間,PIQ隊(duì)列占用RAM的低端空間,上述2個(gè)隊(duì)列通過切換邏輯完成讀地址指針和寫地址指針的切換,即地址切換邏輯40在FBQ隊(duì)列的寫地址指針20和PIQ隊(duì)列的讀地址指針70之間切換,地址切換邏輯80在PIQ隊(duì)列的寫地址指針60和FBQ隊(duì)列的讀地址指針30之間切換。
圖3中,DPRAM管腳DIA、WEA、ADDRA、DOA分別為第一個(gè)端口的數(shù)據(jù)輸入管腳、寫控制信號(hào)管腳、地址線管腳和數(shù)據(jù)輸出管腳,上述管腳分別用于連接第一個(gè)隊(duì)列FBQ的輸入數(shù)據(jù)FBQ_D、寫控制信號(hào)FBQ_WEN、地址切換邏輯40和第二個(gè)隊(duì)列的數(shù)據(jù)輸出PIQ_Q,寫地址指針20還連接時(shí)鐘線CLK和第一個(gè)隊(duì)列的寫控制信號(hào)FBQ_WEN,讀地址指針30連接時(shí)鐘線CLK和第一個(gè)隊(duì)列的讀控制信號(hào)FBQ_REN;寫控制信號(hào)FBQ_WEN同時(shí)還連接地址切換邏輯40以對(duì)地址切換邏輯40進(jìn)行兩個(gè)隊(duì)列的讀地址指針20、寫地址指針80之間的切換控制,因此地址切換邏輯40還與FBQ隊(duì)列的寫地址指針20和PIQ隊(duì)列的讀地址指針70連接;管腳DIB、WEB、ADDRB、DOB分別為第二個(gè)端口的數(shù)據(jù)輸入管腳、寫控制信號(hào)管腳、地址線管腳和數(shù)據(jù)輸出管腳,上述管腳分別用于連接第二個(gè)隊(duì)列PIQ的輸入數(shù)據(jù)PIQ_D、寫控制信號(hào)PIQ_WEN、地址切換邏輯80和第一個(gè)隊(duì)列FBQ的數(shù)據(jù)輸出FBQ_Q,寫地址指針60還連接時(shí)鐘線CLK和第二個(gè)隊(duì)列的寫控制信號(hào)PIQ_WEN,讀地址指針70還連接時(shí)鐘線CLK和第二個(gè)隊(duì)列的讀控制信號(hào)PIQ_REN;寫控制信號(hào)PIQ_WEN同時(shí)還連接地址切換邏輯80以對(duì)地址切換邏輯80進(jìn)行隊(duì)列FBQ讀地址指針30和隊(duì)列PIQ寫地址指針60進(jìn)行切換控制,因此地址切換邏輯80還與隊(duì)列PIQ的寫地址指針60和隊(duì)列FBQ的讀地址指針30連接;圖3中的兩個(gè)FIFO隊(duì)列FBQ的寫地址指針20和讀地址指針30和PIQ隊(duì)列的寫地址指針60和讀地址指針70分別與各自隊(duì)列的標(biāo)志控制邏輯50、90連接,以在實(shí)際應(yīng)用中通過標(biāo)志控制邏輯50、90的隊(duì)列滿標(biāo)志FBQ_FF、PIQ_FF和隊(duì)列空標(biāo)志FBQ_EF、PIQ_EF獲取上述2個(gè)隊(duì)列的狀態(tài),從而對(duì)該2個(gè)隊(duì)列進(jìn)行控制。
圖4是圖2和圖3中采用的地址切換邏輯圖,Addr_W為該模塊輸入的寫地址信號(hào),Addr_R為該模塊輸入的讀地址信號(hào),Addr_O為該模塊輸出的地址信號(hào),WEN為地址切換模塊的切換控制信號(hào)。當(dāng)WEN有效(假設(shè)為1)時(shí),地址切換模塊的輸出地址Addr_O等于輸入的寫地址Addr_W,當(dāng)WEN無效(假設(shè)為0)時(shí),地址切換模塊的輸出地址Addr_O等于輸入的讀地址Addr_R。
在以上兩種設(shè)計(jì)方案中,通過控制兩個(gè)FIFO的讀地址指針和寫地址指針的計(jì)數(shù)值范圍可以實(shí)現(xiàn)對(duì)雙端口RAM存儲(chǔ)空間的任意分配,即只要合并的兩個(gè)FIFO容量之和不大于一個(gè)塊存儲(chǔ)器的存儲(chǔ)容量,兩個(gè)FIFO的容量大小可以任意分配。
需要指出,如果使用一個(gè)雙端口RAM實(shí)現(xiàn)多個(gè)FIFO隊(duì)列,只要該多個(gè)FIFO隊(duì)列的總的容量之和不超過塊存儲(chǔ)器的容量,在本發(fā)明的基礎(chǔ)上,使地址切換邏輯在多個(gè)隊(duì)列之間的讀、寫地址指針之間切換即可實(shí)現(xiàn)。
權(quán)利要求
1.一種使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,其特征在于使兩個(gè)先進(jìn)先出(FIFO)隊(duì)列分別同時(shí)占用雙端口隨機(jī)存儲(chǔ)器(RAM)的一個(gè)端口,其中一個(gè)FIFO隊(duì)列占用雙端口RAM的低端空間,另一個(gè)占用雙端口RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換。
2.根據(jù)權(quán)利要求1所述的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,其特征在于一個(gè)FIFO隊(duì)列從雙端口RAM的第一個(gè)端口寫入,并從第一個(gè)端口讀出;另一個(gè)FIFO隊(duì)列從雙端口RAM的第二個(gè)端口寫入,并從第二個(gè)端口讀出。
3.根據(jù)權(quán)利要求1或2所述的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,其特征在于所述地址切換邏輯在同一個(gè)FIFO隊(duì)列的讀地址指針和寫地址指針之間切換。
4.一種使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,其特征在于使兩個(gè)先進(jìn)先出(FIFO)隊(duì)列分別分時(shí)占用雙端口隨機(jī)存儲(chǔ)器(RAM)的二個(gè)端口,其中一個(gè)FIFO隊(duì)列占用雙端口RAM的低端空間,另一個(gè)占用雙端口RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換。
5.根據(jù)權(quán)利要求4所述的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,其特征在于一個(gè)FIFO隊(duì)列從雙端口RAM的第一個(gè)端口寫入,從第二個(gè)端口讀出;另一個(gè)FIFO隊(duì)列從雙端口RAM的第二個(gè)端口寫入,從第一個(gè)端口讀出。
6.根據(jù)權(quán)利要求4或5所述的使用一個(gè)雙端口隨機(jī)存儲(chǔ)器實(shí)現(xiàn)兩個(gè)先進(jìn)先出隊(duì)列的方法,其特征在于所述地址切換邏輯在第一個(gè)FIFO隊(duì)列的讀地址指針和第二個(gè)FIFO隊(duì)列的寫地址指針之間切換及第一個(gè)FIFO隊(duì)列的寫地址指針和第二個(gè)FIFO隊(duì)列的讀地址指針之間切換。
全文摘要
本發(fā)明公開了一種使用一個(gè)雙端口RAM實(shí)現(xiàn)兩個(gè)FIFO列的方法,該方法使兩個(gè)FIFO隊(duì)列分別同時(shí)占用雙端口RAM的一個(gè)端口或分時(shí)占用雙端口RAM的二個(gè)端口,其中一個(gè)FIFO隊(duì)列占用雙端口RAM的低端空間,另一個(gè)占用雙端口RAM的高端空間,通過切換邏輯完成讀地址指針和寫地址指針的切換,采用上述方案,使用一個(gè)雙端口RAM即可實(shí)現(xiàn)兩個(gè)FIFO隊(duì)列,這樣可以充分利用雙端口RAM中的塊存儲(chǔ)器資源,提高塊存儲(chǔ)器資源的利用率,因此能夠減少可編程邏輯設(shè)計(jì)中需要的塊存儲(chǔ)器的數(shù)量,降低設(shè)計(jì)成本并簡(jiǎn)化設(shè)計(jì),使得有可能只用較小規(guī)模的可編程邏輯器件就可以實(shí)現(xiàn)以前需要較大規(guī)模的可編程邏輯器件才能實(shí)現(xiàn)的設(shè)計(jì)。
文檔編號(hào)G11C16/00GK1434453SQ0210075
公開日2003年8月6日 申請(qǐng)日期2002年1月23日 優(yōu)先權(quán)日2002年1月23日
發(fā)明者雷春, 涂君 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
互助| 北宁市| 延安市| 嵊州市| 桃园市| 枝江市| 酒泉市| 积石山| 拉孜县| 遂昌县| 铜川市| 双辽市| 西安市| 潞城市| 安龙县| 漾濞| 平山县| 高雄市| 西盟| 石屏县| 宁津县| 望城县| 禄丰县| 通河县| 宝坻区| 上蔡县| 井陉县| 南靖县| 扎鲁特旗| 海淀区| 博罗县| 娄烦县| 莒南县| 克东县| 大安市| 锦州市| 资源县| 海南省| 阳泉市| 三河市| 台州市|