新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于Verilog HDL語言的32X8 FIFO設(shè)計

基于Verilog HDL語言的32X8 FIFO設(shè)計

作者: 時間:2012-09-03 來源:網(wǎng)絡(luò) 收藏

2 系統(tǒng)結(jié)構(gòu)

本文介紹的設(shè)計采用了雙體存儲器(Memory)結(jié)構(gòu)(如圖2)。每個FIFOMemery中都有一個16X8的RAM,rd-cntr3: 和wr-cntr3: 分別作為讀、寫地址,rd-cntr和wr-cntr分別作為讀、寫狀態(tài)位。對整個系統(tǒng),當(dāng)寫信號(wrN)有效,數(shù)據(jù)將寫入FIFO,且交替寫入這兩個分立的存儲器。當(dāng)讀信號(rdN)有效,數(shù)據(jù)將被讀出FIFO,且交替從這兩個分立的存儲器讀出。對基于單體存儲器的FIFO,在讀操作的同時不能有任何的寫操作,只能在讀操作結(jié)束后再進(jìn)行寫操作。本文應(yīng)用的交替讀寫機(jī)制使得 FIFO具有可以同時讀寫的能力,即對一個存儲器讀操作的同時可以對另一個存儲器寫操作;對一個存儲器寫操作的同時可以對另一個存儲器讀操作。32X8 FIFO Data Path的結(jié)構(gòu)框圖如圖3所示。其結(jié)構(gòu)中有兩個分立的存儲器FIFOmem(even)和FIFOmem(odd)。FIFO cntrl模塊控制對這兩個分立存儲器的讀、寫操作。而整個系統(tǒng)的空、滿標(biāo)志位分別由FIFOmem(even)和FIFOmem(odd)中的空、滿標(biāo)志位mem_full_even、mem_empty_even、mem_full_odd和mem_empty_odd來實(shí)現(xiàn)。其中rdN和wrN為整個系統(tǒng)的讀寫控制信號,rstN為FIFO復(fù)位信號。同時可以看出32X8 FIFO共有3個周期的延時:輸入寄存器,FIFOMemery和輸出寄存器延時,存取速度快。


圖2 FIFOMemory結(jié)構(gòu)框圖


圖3 32X8FIFODataPath結(jié)構(gòu)框圖



關(guān)鍵詞: Verilog 32X8 FIFO HDL

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉