同步控制信號(hào)
對(duì)于讀/寫時(shí)鐘相互獨(dú)立的FIFO(讀/寫時(shí)鐘獨(dú)立意味著這兩個(gè)時(shí)鐘是異步的,例如來自于不同的MMCM),要確保相應(yīng)的控制信號(hào)只在與之對(duì)應(yīng)的時(shí)鐘域內(nèi)被使用。如下圖所示,除了rst對(duì)整個(gè)FIFO進(jìn)行異步復(fù)位外,其余信號(hào)都與各自的時(shí)鐘同步。例如:寫使能wr_en、寫數(shù)據(jù)din都與寫時(shí)鐘wr_clk同步;讀使能rd_en、讀數(shù)據(jù)dout都與讀時(shí)鐘rd_clk同步。和“滿”相關(guān)的狀態(tài)信號(hào)如full/almost_full等都與wr_clk同步;和“空”相關(guān)的狀態(tài)信號(hào)如empty/almost_empty等都與rd_clk同步。
復(fù)位信號(hào) 對(duì)于讀/寫時(shí)鐘獨(dú)立的FIFO,F(xiàn)IFO Generator提供了復(fù)位信號(hào),用于對(duì)所有的狀態(tài)輸出信號(hào)進(jìn)行復(fù)位,如下圖所示。這里復(fù)位信號(hào)是可選的。如果下圖選項(xiàng)1不勾選,那么選項(xiàng)2和選項(xiàng)3則不可見,此時(shí)FIFO沒有復(fù)位信號(hào)。如果勾選1,此時(shí)選項(xiàng)2和選項(xiàng)3可見,且默認(rèn)均被勾選,這意味著rst盡管是異步的,但在使用時(shí)會(huì)被wr_clk和rd_clk先同步到各自的時(shí)鐘域。如果勾選1,但不勾選2,此時(shí)讀/寫時(shí)鐘域會(huì)分別有各自的復(fù)位信號(hào)wr_rst和rd_rst。當(dāng)wr_rst有效時(shí)(高有效),寫時(shí)鐘域處于復(fù)位狀態(tài);當(dāng)rd_rst有效時(shí),讀時(shí)鐘域處于復(fù)位狀態(tài)。由此可見,對(duì)于讀/寫時(shí)鐘獨(dú)立的FIFO,異步復(fù)位rst和同步wr_rst/rd_rst是可選的。這意味著FIFO可以沒有復(fù)位信號(hào),也可以只用一個(gè)異步復(fù)位信號(hào)rst,或者用同步復(fù)位wr_rst/rd_rst。
原文標(biāo)題:你的FIFO為什么不能正常工作
文章出處:【微信公眾號(hào):Lauren的FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
fifo
+關(guān)注
關(guān)注
3文章
400瀏覽量
44595 -
同步控制
+關(guān)注
關(guān)注
0文章
36瀏覽量
12620
原文標(biāo)題:你的FIFO為什么不能正常工作
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論