AL440B是由AVERLOGIC推出的一款性價比較高的視頻幀存儲芯片,目前市場上FIFO的存儲容量均比較小,包括該公司前幾年推出的具有3M位容量的AL422系列FIFO芯片,也逐漸無法適應目前高分辨率視頻技術的發展。AL440B沿襲了AL422B的設計思想,從功能、容量、速度上比AL422均有顯著提高。例如:AL440B具有4M位存儲容量,存儲速度可達80MHz,具有用戶可控的讀寫使能,輸入輸出使能及讀寫復位輸入端口,可以通過I2C讀寫其內部寄存器控制讀寫初始地址,可以方便進行總線擴展。文章首先介紹AL440B的功能與操作,然后給出一個應用實例。 芯片簡介☆ 芯片特點 ⑴ AL440B的存儲體容量為4M位(512 8bits)。 ⑵ 具有8位獨立讀寫端口,可擴展總線。 ⑶ 獨立且極性可控的讀寫有效、輸入輸出使能控制端口。 ⑷ 異步讀寫時鐘,最高讀寫時鐘80MHz。 ⑸ 內部DRAM自刷新。 ⑹ 支持窗口讀寫操作,I2C讀寫內部寄存器。 ⑺ 3.3V電源,兼容5V輸入信號。 ☆ 主要管腳功能及操作 IO[7:0],DO[7:0]:8位數據輸入輸出。 RCLK, WCLK:讀寫數據時鐘。 WE:寫FIFO使能信號。WE有效,則在WCLK上升沿輸出數據,同時內部指針自動加1。 IE:輸入使能信號。IE有效時,允許數據輸入;IE處于無效態時,數據 輸出端為高阻,此時若WE有效,內部指針仍然自動加1。 WRST:寫FIFO復位,寫地址指針指向0。 RE:讀FIFO使能信號。RE有效,則在RCLK上升沿輸出數據,同時內部指針自動加1。 OE:輸出使能信號。OE有效時,允許數據輸出;OE處于無效態時,數據輸出端為高阻,此時若RE有效,內部指針仍然自動加1。 RRST:讀FIFO復位,讀地址指針指向0。 ORDY:FIFO輸出準備好標志位,說明FIFO是否已讀空。 IRDY:FIFO輸入準備好標志位,說明FIFO是否已寫滿。 /PLRTY:PLRTY決定了以上8個控制信號的有效極性。/PLRTY置高,以上八個控制信號低有效;/PLRTY置低,以上八個控制信號高有效。 /RESET:復位管腳;復位操作至少要提供200 s負脈沖,系統復位后,各寄存器全部置零。 SDA,SCL:串行總線的數據線與時鐘線。 /SDAEN:串行總線使能控制信號。當/SDAEN置低時,SDA與SCL使能,可以讀寫內部寄存器;反之SDA處于高阻態。 令/PLRTY=VDD,AL440B的讀寫時序如表1、表2所示(/PLRTY=GND的時序略)。 表1:/PLRTY=VDD時,FIFO的寫時序(略) 表2:/PLRTY=VDD時,FIFO的讀時序(略) 注意:寫地址必須先于讀地址192個周期,否則讀到的為上一幀的數據。 ☆ 寄存器操作與窗口編程 AL440B內部18個可讀寫寄存器主要提供窗口讀寫功能操作,通過串行總線配置。讀寫命令格式如下: 寫:開始->寫從地址->應答->寄存器地址->應答->數據->應答->結束; 讀:開始->讀從地址->應答->寄存器地址->應答->開始->讀從地址->應答->數據->非應答->結束; 寄存器定義與配置如下: WSTART_L(H):窗口寫起始地址低位(高位),范圍在0-8191存儲區。 WXSIZE_L(H):定義窗口寫水平方向寬度,范圍在0-1023存儲區。 WSTRIDE_L(H):定義窗口寫水平方向最大寬度;范圍在 4096-+4096存儲區,當為負值時表示FIFO工作在Y-MIRROR模式,WSTRIDE應大于等于WXSIZE。 WYSIZE_L(H):定義窗口寫垂直方向高度,保留且為0。 RSTART_L(H):窗口讀起始地址低位(高位),范圍在0 8191存儲區。 RXSIZE_L(H):范圍在0-1023存儲區。 RSTRIDE_L(H):范圍在0-+4096存儲區。 RYSIZE_L(H):定義窗口讀垂直方向高度,范圍在0-65535。 WWCTRL:寫窗口功能模式選擇,其中No X-mirror No Y-mirror表示按照存儲區由左至右、由上到下寫入,X-mirror模式表示由右至左、由上到下寫入,X-mirror Y-mirror模式表示由右至左、由下到上寫入。 RWCTRL:讀窗口功能選擇。 AL440B的窗口操作將存儲空間分為XY兩個方向,讀寫方向、讀寫數據量都可以不同,這使得例如畫中畫、工控領域窗口顯示、圖像截取等應用設計變得十分簡單。 AL440B的典型應用 視頻幀存儲器可以用在掃描轉換、NTSC/PAL、SVGA、XGA視頻捕獲系統、時基校正、畫中畫視頻顯示、幀同步器、通信緩沖等。此外,AL440B還可應用于視頻采集系統,視頻分割系統等等應用中。 應用實例 在高分辨(或低分辨率)率高幀頻(或低幀頻)數字視頻到標準PAL制轉換的回放顯示系統中,AL440B可以做高速視頻緩沖器或視頻格式轉換器使用。 前端輸入為16位并行YUV格式數字圖像,分辨率為800 600,幀頻80幀/s,數據時鐘為54Hz。數字圖像到標準PAL制模擬視頻的轉換用專用視頻編碼器(CX25871)實現。 專用編碼芯片對輸入數據的時序與格式有一定的要求,例如輸入幀頻要固定為50幀/s,分辨率有最高最低限度,數據時鐘根據不同的輸出要求也各異,對于幀頻較高的輸入要進行抽幀,反之要進行插幀或幀重復讀取;分辨率高于最高限度的要進行行抽取與象素抽取,反之要進行行插入與象素插入;輸入輸出時鐘頻率也要進行相應的匹配。 整個邏輯可以由CPLD配合兩組AL440B實現。其中AL440B用做掃描轉換器與數據緩沖器,CPLD提供對FIFO單元的相關控制邏輯與時序邏輯。其基本設計思想為: 當輸入幀頻高于50幀/s時,抽取50幀,當輸入幀頻低于50幀/s時,采取對某些幀重復讀取的辦法;設計時要考慮所抽取的幀(或重讀的幀)要在時間軸上均勻散開,保證恢復圖像的連續性;保證讀FIFO單元1(以下簡稱F1)時才允許寫FIFO單元2(以下簡稱F2),如果寫FIFO2先于讀F1結束,那么讀完F1后直接讀取F2,如果F1讀完F2還沒有寫完則多次重復讀取FIFO1,直到寫F2結束為止,注意,在連續讀取F1的過程中只允許寫一遍F2;F2寫完則允許開始讀取F2,讀F2的過程中寫F1,過程與上類似。每次讀寫FIFO之前都要給出FIFO的復位信號,將讀寫起始地址置零,以保證每次FIFO中存放的為完整的一幀圖像。 其中WRST1、WRST2、RRST1、RRST2分別為兩個FIFO單元的幀讀寫復位信號,WRITE1、WRITE2、READ1、READ2分別為兩個FIFO單元的輸入輸出使能信號。輸入輸出使能信號必須與輸入數據行有效信號H_ACTIVE、消隱信號BLANK相與后的輸出才可作為FIFO的讀寫使能信號。 該邏輯可以實現從幾幀/s到上千幀/s圖像到50幀/s圖像的格式轉換,同時實現了數據輸出輸入兩端低速到高速或高速到低速數據時鐘的匹配。 由于輸入為16位YUV4:2:2格式圖像,每一組FIFO由兩片AL440B并連。其中FIFO1接收Y7-Y0,FIFO2高四位接收U3-U0,低四位接收V4-V0。 結語 文章介紹了視頻幀存儲器AL440B的特點及功能,并給出一個已經實現的應用實例。AL440B與AL422相比具有更大的容量,更高的讀寫速率,可以支持DTV(HDTV)視頻緩沖,可以支持1024 768分辨率75幀/s(XGA模式)非標視頻信號的掃描轉換(AL422僅能支持VGA模式)。隨著視頻顯示技術、視頻存儲技術不斷向著高分辨率、高幀頻、高速度的方向發展,高速大容量視頻幀存儲器將具有更為廣泛的應用前景。 |