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