FIFO芯片IDT72V3680概述及應(yīng)用
1 FIFO概述
FIFO芯片是一種具有存儲(chǔ)功能的高速邏輯芯片,可在高速數(shù)字系統(tǒng)中用作數(shù)據(jù)緩存。FIFO通常利用雙口RAM和讀寫地址產(chǎn)生模塊來(lái)實(shí)現(xiàn)其功能。FIFO的接口信號(hào)包括異步寫時(shí)鐘(wr-clk)和讀時(shí)鐘(rd-clk)、與寫時(shí)鐘同步的寫有效(wren)和寫數(shù)據(jù)(wr-data)、與讀時(shí)鐘同步的讀有效(rden)和讀數(shù)據(jù)(rd-data)。寫地址產(chǎn)生模塊一般還根據(jù)讀地址和寫地址來(lái)產(chǎn)生FIFO的滿標(biāo)志。讀地址產(chǎn)生模塊一般根據(jù)讀地址和寫地址的差來(lái)產(chǎn)生FIFO的空標(biāo)志。
為了實(shí)現(xiàn)正確的讀寫和避免FIFO的上溢或下溢,通常還應(yīng)給出與讀時(shí)鐘和寫時(shí)鐘同步的FIFO的空標(biāo)志(empty)和滿標(biāo)志(full),以禁止讀寫操作。寫地址產(chǎn)生模塊通常根據(jù)寫時(shí)鐘和寫有效信號(hào)來(lái)產(chǎn)生遞增的寫地址,而讀地址產(chǎn)生模塊則根據(jù)讀時(shí)鐘和讀有效信號(hào)來(lái)產(chǎn)生遞增的讀地址。
FIFO一般在操作時(shí),首先在寫時(shí)鐘wr clk的上升沿且當(dāng)wren有效時(shí),將wrdata寫入雙口RAM中寫地址對(duì)應(yīng)的位置中,然后將讀地址對(duì)應(yīng)的雙口RAM中的數(shù)據(jù)輸出到讀數(shù)據(jù)總線上,這樣就可實(shí)現(xiàn)先進(jìn)先出功能。讀寫操作一般會(huì)自動(dòng)訪問(wèn)存儲(chǔ)器中連續(xù)的存儲(chǔ)單元。從FIFO中讀出的數(shù)據(jù)順序與寫入的順序相同,而地址的順序則在內(nèi)部已經(jīng)預(yù)先定義好,因此,對(duì)FIFO芯片的操作不需要額外的地址信息。另外,F(xiàn)IFO芯片還能提供對(duì)讀/寫指針的復(fù)位功能?! ? IDT72V3680簡(jiǎn)介
2.1 IDT72V3680功能特點(diǎn)
IDT72V3680屬于IDT公司的高密度supersyncTMⅡ36位系列存儲(chǔ)器IDT72V3640~3690中的一種,其存儲(chǔ)結(jié)構(gòu)為16,384×36。這一系列CMOS工藝的FIFO(先入先出)芯片具有極大的深度。其基本功能特點(diǎn)如下:
- 對(duì)讀/寫口都可進(jìn)行靈活的總線寬度設(shè)置,可選擇不同的輸入/輸出數(shù)據(jù)線寬度(可在36 in 36 out;36 in 18 out;36in 9 out;18 in 36 out;9in 36 out中選擇);
- 重傳操作延時(shí)很低且固定;
- 首字的寫入到讀出的延時(shí)很低且固定;
- 數(shù)據(jù)密度高達(dá)1Mbit;
- 操作時(shí)鐘可達(dá)166MHz;
- 可選大/小字節(jié)排列格式;
- 主復(fù)位方式可提供FIFO整體清零,部分復(fù)位只清掉存儲(chǔ)數(shù)據(jù),但保留可編程設(shè)置項(xiàng);
- 幾乎空/滿標(biāo)志置位或無(wú)效操作可選擇同步或異步時(shí)間模式;
- 具有兩種時(shí)間工作模式,分別為IDT標(biāo)準(zhǔn)模式(采用和標(biāo)志位)和FWFT首字直傳模式(采用標(biāo)志位);
- 讀寫操作采用獨(dú)立時(shí)鐘,并可異步操作;
- 采用TQFP(128引腳)和PBGA(144引腳)兩種封裝形式,其中PBGA封裝形式不僅可用JTAG口提供邊界掃描功能,還可選擇同步或者異步讀寫操作(只對(duì)PBGA封裝);
- 與5V輸入兼容;
- 具有節(jié)電模式;
- 管腳可與更高密度的芯片IDT72V36100和IDT72V36110兼容。
IDT72V3680的內(nèi)部結(jié)構(gòu)框圖如圖1所示。
2.2 使用要點(diǎn)
IDT72V3680系列產(chǎn)品在使用中,通常應(yīng)注意以下幾點(diǎn):
?。?)兩種可選擇的時(shí)間運(yùn)行模式的區(qū)別
在主復(fù)位時(shí),F(xiàn)WFT/SI信號(hào)電平為低表示選擇IDT標(biāo)準(zhǔn)模式,否則表示選擇首位字直傳模式FWFT。在兩種不同模式下,其輸出的標(biāo)志信號(hào)也有所不同,其中、為IDT標(biāo)準(zhǔn)模式;(輸出準(zhǔn)備好)輸入準(zhǔn)備好)為FWFT模式。另一個(gè)區(qū)別是在FWFT方式下,第一個(gè)寫入字在三個(gè)讀時(shí)鐘上升沿后將直接傳到輸出Qn上,而不需要信號(hào)有效,以后寫入的字則需要信號(hào)有效才能通過(guò)Qn傳出;而在IDT方式下,寫入字都需要有效才能讀出數(shù)據(jù)。另外,F(xiàn)WFT在深度擴(kuò)展時(shí),F(xiàn)IFO可串行連接,即上一個(gè)FIFO的Qn直接連接下一個(gè)FI-FO的Dn,而無(wú)需額外控制邏輯。
?。?)兩種復(fù)位操作
IDT72V3680有主復(fù)位(MRS)和部分復(fù)位(PRS)兩種方式(都屬于異步操作)。當(dāng)主復(fù)位啟動(dòng)后,讀寫指針都指向第一個(gè)數(shù)據(jù)位置,幾乎空標(biāo)志置低,幾乎滿標(biāo)志和半滿標(biāo)志置高,同時(shí),輸入/輸出的總線寬度、可編程標(biāo)志位的同/異步方式以及是否需要去掉字節(jié)中的校驗(yàn)位均被確定,輸出寄存器初始化為全零,上電即進(jìn)行復(fù)位,以后才可進(jìn)行寫操作。而當(dāng)部分復(fù)位后,只有讀寫指針復(fù)位,幾乎空標(biāo)志置低,幾乎滿標(biāo)志和半滿標(biāo)志置高電平,其余各種運(yùn)行方式不變,部分復(fù)位可在操作進(jìn)行中進(jìn)行復(fù)位,當(dāng)經(jīng)過(guò)編程設(shè)定的偏置值不理想時(shí),可隨時(shí)調(diào)用。 [!--empirenews.page--]
?。?)加載操作
當(dāng)置高時(shí),可以采用串行的方式加載可編程標(biāo)志位以生效偏置值;而當(dāng)其置低時(shí),則采用并行方式加載。讀出這些偏置值時(shí),只能采用并行方式。加載和讀出偏置值的操作既可以被中斷以執(zhí)行普通數(shù)據(jù)的讀寫操作,也可以在主復(fù)位時(shí)通過(guò)FSL1、FSL0選擇缺省的8種偏置值。
?。?)PAE、
幾乎空/滿標(biāo)志可由PFM引腳輸入并將其設(shè)定為同步或異步模式操作。在異步操作時(shí),幾乎空標(biāo)高速大深度新型FIFO存儲(chǔ)器IDT72V3680的應(yīng)用志位電平在RCLK的上升沿降低,而在WCLK的上升沿電平升高;對(duì)于幾乎滿標(biāo)志位,在WCLK的上升沿電平降低,而在RCLK的上升沿電平升高。在同步操作時(shí),幾乎空標(biāo)志位只能隨讀時(shí)鐘上升沿跳變,幾乎滿標(biāo)志位只能隨寫時(shí)鐘上升沿跳變。
?。?)讀寫操作
讀寫操作可以通過(guò)異步讀寫引腳將讀寫操作設(shè)定為同步或異步方式。對(duì)于異步讀寫操作,芯片不能在FWFT模式下工作。
3 FIFO在高速數(shù)據(jù)傳輸系統(tǒng)中的應(yīng)用
筆者所研究的高速數(shù)據(jù)傳輸系統(tǒng)是針對(duì)大容量的視頻數(shù)據(jù)的壓縮和解壓縮性能研制的測(cè)試設(shè)備,在測(cè)試前后,需要將大容量的視頻信號(hào)數(shù)據(jù)流從高檔服務(wù)器中通過(guò)PCI接口讀出或?qū)懭耄到y(tǒng)所要求達(dá)到的指標(biāo)是數(shù)據(jù)傳輸速率為62.5M字節(jié)/秒。PCI總線是高速端口,采用PCI總線進(jìn)行數(shù)據(jù)傳輸,還應(yīng)考慮到它與另一子系統(tǒng)間的數(shù)據(jù)傳輸協(xié)調(diào)及同步問(wèn)題。如果這一子系統(tǒng)速率較低,整個(gè)系統(tǒng)的速率也將降低,PCI總線的優(yōu)勢(shì)將不能發(fā)揮出來(lái)。而采用FIFO存儲(chǔ)器則不同,它不但提供了存儲(chǔ)空間作為數(shù)據(jù)的緩沖,而且還可以在兩個(gè)子系統(tǒng)之間提供一個(gè)“橡皮繃帶式”(有彈性)的存儲(chǔ)器,以使其在兩端速率不一致的情況下,仍然可以實(shí)現(xiàn)兩個(gè)子系統(tǒng)間的高速數(shù)據(jù)傳輸,而不需要解決相互同步和協(xié)調(diào)問(wèn)題。IDT72V3680的工作時(shí)鐘最高可達(dá)166MHz。
圖2是FIFO所在的接口卡的結(jié)構(gòu)框圖。在這個(gè)設(shè)計(jì)中,PCI總線接口卡用來(lái)進(jìn)行視頻信號(hào)的高速傳輸和接收。雙口存儲(chǔ)器FIFO則作為PCI總線主控和后續(xù)或前端數(shù)據(jù)處理電路(如分路器、壓縮、解壓縮等電路)之間的數(shù)據(jù)通道。由于PCI總線經(jīng)過(guò)PCI控制器轉(zhuǎn)換后的插卡總線仍為同步總線,所以使用同步器件最能發(fā)揮總線的傳輸效率。在設(shè)計(jì)中,要求系統(tǒng)輸出是8~12位長(zhǎng)度的字節(jié)輸出,而PCI總線的數(shù)據(jù)線輸出位數(shù)是32位,由于該種FIFO有靈活的字節(jié)寬度匹配設(shè)置,因而免去了在邏輯設(shè)計(jì)中加入字節(jié)轉(zhuǎn)換器的設(shè)計(jì),這樣不僅簡(jiǎn)化了控制邏輯設(shè)計(jì)的復(fù)雜度,而且提高了系統(tǒng)的速度及穩(wěn)定性。該接口卡中的控制邏輯部分負(fù)責(zé)完成PCI9656的插卡總線和雙口存儲(chǔ)器之間的通信協(xié)議以及對(duì)前端或后端數(shù)據(jù)處理的傳輸控制。圖3是IDT72V3680單芯片配置信號(hào)框圖。
對(duì)FIFO芯片的時(shí)間運(yùn)行模式、可編程標(biāo)志位的時(shí)間模式、輸入/輸出字節(jié)寬度、缺省偏置值的選擇等均可由撥動(dòng)開(kāi)關(guān)來(lái)設(shè)置;各標(biāo)志位信號(hào)輸出到控制邏輯可與前后端部分進(jìn)行消息傳遞;讀寫時(shí)鐘則由時(shí)鐘產(chǎn)生電路提供。
4 結(jié)論
應(yīng)用FIFO存儲(chǔ)芯片可用其內(nèi)部讀寫指針代替復(fù)雜的地址發(fā)生器,從而從硬件上簡(jiǎn)化了數(shù)據(jù)高速交換中與地址線相關(guān)的處理邏輯電路。高速FIFO存儲(chǔ)芯片在PCI總線插卡設(shè)計(jì)中的應(yīng)用能夠保證高速系統(tǒng)數(shù)據(jù)傳輸?shù)乃俣扰c效率。目前,F(xiàn)IFO芯片在眾多的數(shù)據(jù)傳輸處理領(lǐng)域已得到廣泛的應(yīng)用。另外,由于FIFO存儲(chǔ)芯片是成系列生產(chǎn)且功能相同,因此,隨著存儲(chǔ)容量的增加,外部引腳數(shù)不會(huì)增加,從而為以后系統(tǒng)的升級(jí)帶來(lái)了方便。