一種高速數字視頻存儲系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種高速數字視頻存儲系統(tǒng)。該系統(tǒng)包括接口單元、綜合處理單元、存儲單元、母板和電源;Cameralink攝像機輸出數字圖像,接口單元將LVDS串行數據轉換為并行數據,當綜合處理單元接收到主控計算機的記錄指令后,接口單元通過母板將數據輸出到存儲單元,存儲單元將圖像數據記錄寫入FLASH芯片陣列。本發(fā)明存儲速度快,修改少量的代碼就可以實現對各種相機的數字記錄,并且記錄的時間和容量可以根據需要選擇。
【專利說明】一種高速數字視頻存儲系統(tǒng)
【技術領域】
[0001]本發(fā)明涉及一種高速數字視頻存儲系統(tǒng),具體涉及一種能夠對不同種類的cameralink數字攝像機輸出的高巾貞頻數字圖像實現實時無損記錄,并且同步記錄當巾貞同步信息。
【背景技術】
[0002]高幀頻相機主要應用于高速用到和高速物體碰撞過程的記錄測試,例如火箭發(fā)射、飛機起落、汽車碰撞試驗等,在這些試驗中,試驗數據的實時記錄顯得尤為重要,傳統(tǒng)的膠片式高速攝像機無論從幀頻速度還是分辨率都無法滿足目前的使用要求。但是隨著高幀頻數字攝像機的幀頻不斷提高,輸出的數字圖像的數據量也越來越大,對數字存儲器的存儲帶寬也要求越來越高。
[0003]目前大多數高速攝像機數字圖像的輸出接口都采用標準cameralink, earner I ink接口分為三種模式 full mode、medium mode 和 base mode。
[0004]現有技術的缺點:1.速度慢,存儲帶寬低;2.只能對一種camerlink相機進行存儲;3.存儲系統(tǒng)的帶寬和容量是固定的,無法根據實際使用需求,進行合理的調整,造成系統(tǒng)資源的浪費;4.存儲設備與相機距離較遠,需要進行camerlink信號的轉換,造成設備線纜復雜,且容易受到信號干擾。
【發(fā)明內容】
[0005]本發(fā)明為了解決【背景技術】中的問題,提供了一種高速數字視頻存儲系統(tǒng)。
[0006]本發(fā)明的技術方案是:
[0007]一種高速數字視頻存儲系統(tǒng),其特殊之處在于:
[0008]所述高速數字視頻存儲系統(tǒng)包括接口單元、綜合處理單元、存儲單元、母板和電源;
[0009]所述接口單元包括Cameralink接口芯片、第一 FPGA、總線驅動器和電源管理芯片;
[0010]所述綜合處理單元包括主控CPU和第二 FPGA ;
[0011]所述存儲單元包括至少一個存儲子單元,每個存儲子單元包括第三FPGA、SRAM和FLASH芯片陣列;
[0012]外部Cameralink攝像機通過Cameralink接口芯片與第一 FPGA連接,第一 FPGA通過總線驅動器與母板連接;
[0013]主控CPU與外部網絡連接,主控CPU通過第二 FPGA與母板連接;
[0014]第三FPGA與母板連接,SRAM和FLASH芯片陣列分別與第三FPGA連接;
[0015]所述電源通過電源管理芯片為Cameralink接口芯片、第一 FPGA、總線驅動器、第二 FPGA、主控CPU、第三FPGA、SRAM和FLASH芯片陣列供電。
[0016]較佳的,上述存儲單元最多數量為5個,每個存儲單元包括2個存儲子單元,各個存儲子單元之間以流水線的方式工作。
[0017]較佳的,Cameralink接口芯片的數量為1-3個。
[0018]較佳的,上述SRAM的數量為2-3個。
[0019]較佳的,一個FLASH芯片陣列包括8片或10片FLASH芯片,FLASH陣列的讀寫操作為并行操作。
[0020]較佳的,上述主控CPU為芯片TMS320DM6467。
[0021]較佳的,上述FLASH芯片采用K9WBG08U0M芯片。
[0022]較佳的,上述第一 FPGA、第二 FPGA和第三FPGA均采用芯片EP2S30F672I4N。
[0023]較佳的,上述總線驅動器采用芯片SN74LVTH16245。
[0024]較佳的,上述SRAM 選擇芯片 IDT71T75602S133BGI。
[0025]本發(fā)明的優(yōu)點是:
[0026]I)存儲速度快,最高存儲帶寬可達到930MB/S ;
[0027]2)通過修改少量的代碼就可以實現對各種camerlink相機的數字記錄,并且記錄的時間和容量可以根據使用需要,選擇存儲板的數量,使得系統(tǒng)具有最佳性價比;
[0028]4)本存儲設備與相機直接連接,連接距離近,與外部只有一根網線連接,整個系統(tǒng)結構簡單,系統(tǒng)可靠性高;
[0029]5)具有自動診斷功能。
【專利附圖】
【附圖說明】
[0030]圖1高速數字圖像存儲系統(tǒng)原理框圖;
[0031]圖2本發(fā)明存儲系統(tǒng)外部接線圖;
[0032]圖3接口單元原理框圖;
[0033]圖4綜合處理單元原理結構框圖;
[0034]圖5存儲單元原理結構框圖;
[0035]圖6系統(tǒng)控制軟件流程圖。
【具體實施方式】
[0036]高速數字視頻存儲系統(tǒng)采用模塊化的設計結構,原理框圖如圖1所示,高速數字視頻存儲系統(tǒng)包括接口單元、綜合處理單元、存儲單元、母板和電源;
[0037]如圖3,接口單元包括 Cameralink 接 口芯片(DS90CR288AMTD)、第 一 FPGA(EP2S30F672I4N)、總線驅動器(SN74LVTH16245)和電源管理芯片;外部Cameralink攝像機通過Cameralink接口芯片與第一 FPGA連接,第一 FPGA通過總線驅動器與母板連接。
[0038]如圖4,綜合處理單元包括主控CPU (TMS320DM6467T)和第二 FPGA ;主控CPU與外部網絡連接,主控CPU通過第二 FPGA與母板連接;
[0039]如圖5,存儲單元包括至少一個存儲子單元,每個存儲子單元包括第三FPGA、SRAM和FLASH芯片陣列;第三FPGA與母板連接,SRAM和FLASH芯片陣列分別與第三FPGA連接;
[0040]電源通過電源管理芯片為Cameralink接口芯片、第一 FPGA、總線驅動器、第二FPGA、主控CPU、第三FPGA、SRAM和FLASH芯片陣列供電。
[0041]10MHZ土和IHZ土為記錄系統(tǒng)外同步信號,由B碼時統(tǒng)提供。[0042]本發(fā)明存儲設備外部接口簡單,圖2為存儲系統(tǒng)外部接線圖。本發(fā)明存儲設備與相機直接連接,連接距離近,與外部只有一根網線連接,整個系統(tǒng)結構簡單,系統(tǒng)可靠性高。
[0043]下面為各部分結構進行詳細說明。
[0044]接口單元接收攝像機輸出的LVDS差分信號,由Cameralink接口芯片(DS90CR288AMTD)解碼之后,將并行數據送到第一 FPGA,將數據經過總線驅動器輸出到母板。對于不同數字攝像機輸出的圖像,只簡單需要修改接口單元的第一 FPGA內的軟件,SP可滿足存儲要求;較佳的,Cameralink接口芯片為3個,能夠支持cameralink接口的fullmode、medium mode和base mode三種格式的數字圖像,即滿足所有cameralink攝像機的存儲要求。
[0045]綜合處理單元主要負責主控命令的接收和轉發(fā),接收主控計算機指令,實現記錄、停止、下載、擦除等功能;接收圖像的同步記錄數據;實時監(jiān)控系統(tǒng)記錄狀態(tài),顯示記錄剩余容量和時間;具備故障自診斷功能;下載圖像時,將存儲單元的數據打包成固定的包,同過千兆網絡將數據上傳到主控計算機。
[0046]主控CPU為TMS320DM6467單元,其內部集成ARM9內核,采用Iinux的嵌入式操作系統(tǒng),其內部集成了千兆以太網、串口、EMIF等驅動,大大縮短了綜合處理單元的開發(fā)時間,而且對系統(tǒng)中各個設備進行統(tǒng)一管理,提高系統(tǒng)的總體性能,減輕了硬件的設計負擔,且使系統(tǒng)研發(fā)的延續(xù)性好。DM6467內部集成了 EMAC控制器,只需要外擴以太網物理層芯片即可實現千兆以太網通信。
[0047]各個單元的FPGA主要負責管理內部接口之間的命令傳輸和數據傳輸,命令傳輸全部采用編碼格式,避免了 IO傳輸可能應為抖動產生的毛刺而導致錯誤觸發(fā)命令的風險,提高了系統(tǒng)的可靠性,數據傳輸采用80位數據總線,提高了系統(tǒng)的傳輸帶寬。
[0048]存儲單元包括至少一個存儲子單元,每個存儲子單元包括第三FPGA、SRAM和FLASH芯片陣列;從圖1中可以看出本發(fā)明具有5塊存儲單元,每塊存儲單元包括2個存儲子單元,系統(tǒng)工作時,10塊存儲子單元形成流水線的工作模式以提高系統(tǒng)的存儲帶寬,此外還可以根據實際工程的使用要求,在滿足存儲帶寬的條件下,減少系統(tǒng)的存儲單元數量,以控制系統(tǒng)的硬件成本,而此時軟件部需要修改。單個存儲子單元容量為80GB,系統(tǒng)最大容量為400G,隨著flash技術的不斷發(fā)展,本系統(tǒng)的容量可擴展到上TB的容量。
[0049]每片第三FPGA控制I組FLASH的讀寫,當第三FPGA接收到接口單元的數據后,先將數據存入SRAM中,然后再寫入FLASH陣列。3片SRAM負責10片FLASH的數據緩存,3片SRAM構成80bit的數據位寬。SRAM選擇IDT71T75602S133BGI,該芯片為512KX36的同步SRAM,速度為 133MHZ。
[0050]FLASH采用NANDFLASH,存儲單元上最復雜最核心的操作是對NANDFLASH的操作。NANDFLASH本身具有寫入帶寬低的缺點,需要設計合理有效的控制邏輯來克服這些固有缺點。對于寫入帶寬低的缺點,系統(tǒng)采用并行操作和流水線操作的辦法來提高帶寬。FLASH采用K9WBG08U0M,其I/O位寬為8bit,另有6位控制信號。每個存儲子單元中包含10片FLASH,每片I/O位寬為8bit,以此構成80bit的數據位寬。在NANDFLASH的控制信號中,R/B由于采用集電極開路輸出,所以可以線與。將一組NAND的R/B信號連在一起并通過一個電阻上拉至電源。為保證驅動能力,其他控制信號采用一驅二的形式由第三FPGA提供,由此實現NANDFLASH接口的并行設計。[0051]接口單元、控制板、存儲單元都插在母板上,母板提供各個板卡之間的信號連接,并且為其余各板提供電源,母板只提供5V電源。為了實現接口的統(tǒng)一化管理,母板的接插件統(tǒng)一采用samtec公司的電路板連接器SFM和TFM系列的連接器,規(guī)格為雙排100芯和40芯,間距為1.27mm,長分別為66.68mm和28.58mm,寬5.72mm。
[0052]接口單元、綜合處理單元、存儲單元之間采用FPGA作為接口管理芯片,數據傳輸使用自定義并行總線,命令的傳輸采用編碼格式,防止誤觸發(fā)。
[0053]本發(fā)明能夠實時記錄數字圖像和圖像的同步信息,記錄完成后,通過千兆網絡下載到控制計算機。存儲系統(tǒng)的容量可根據實際使用需求進行調整。
[0054]本系統(tǒng)的工作流程如下=Cameralink攝像機輸出數字圖像,接口單元將Cameralink接口輸出的LVDS串行數據轉換為并行數據,當綜合處理單元接收到主控計算機的記錄指令后,接口單元通過母板將數據輸出到存儲單元,存儲單元將圖像數據記錄寫入FLASH陣列。系統(tǒng)中各個板卡之間的通信都是通過自定義總線實現的,接口控制由各個FPGA完成,主控計算機通過千兆以太網與綜合處理單元通信,完成圖像的記錄、擦除、下載等功能。系統(tǒng)具備存儲地址記憶功能,支持不連續(xù)存儲記錄,記錄完成后,可選擇下載圖像。當主控下發(fā)記錄命令的時候,綜合處理單元記錄存儲系統(tǒng)的起始地址,每記錄一幀圖像,綜合處理單元的計數單元加1,當收到停止命令后,將本次記錄的起始地址、結束地址、本次記錄的圖像數量記錄到綜合處理單元的FLASH中,同時將這些數據上傳到主控計算機,由主控計算機顯示記錄狀態(tài),能夠實現存儲地址的記憶功能和選擇圖像下載功能。
[0055]系統(tǒng)實時存儲的圖像,事后通過千兆網絡進行下載,由主控計算機實現對圖像的合成。在存儲單元上存儲的數據是標準的,主控計算機根據實際的圖像大小,將圖像打包后保存為標準的bmp格式。
[0056]以MC1362型號的高速攝像機為例,其最大畫幅下幀頻為504fps@1280*1024,采用8*10的camerlink full模式輸出,像素時鐘為75MHz,像素深度為8bit。該攝像機在最高幀頻下輸出的數據量為630MB/s。
[0057]記錄系統(tǒng)主控軟件基于davinci的TMS320DM6467開發(fā),開發(fā)平臺ARM+linux,在宿主機上安裝Red Hat Linux操作系統(tǒng),建立了“宿主機——目標板”的開發(fā)模式。目標板運行操作系統(tǒng)和系統(tǒng)應用軟件,而目標板所用到的操作系統(tǒng)的內核編譯、驅動程序及應用程序的開發(fā)和調試則通過宿主機來完成,在宿主機上編輯的程序交叉編譯后通過以太網接口下載到目標機運行。
[0058]系統(tǒng)的uboot、linux-kernel、file_system在TI提供的開發(fā)包的基礎上進行裁剪和移植得到。系統(tǒng)的驅動和應用程序在Iinux環(huán)境下開發(fā)完成。
[0059]圖6為綜合處理單元的軟件流程圖,系統(tǒng)上電后,cpu順序加載uboot、linux-kernel、file-system和設備驅動,然后系統(tǒng)初始化網絡端口和網絡協(xié)議、GPIO中斷、診斷存儲單元狀態(tài),然后系統(tǒng)進入程序主循環(huán),在主循環(huán)中查詢接收主控計算機指令,cpu解析主控計算機指令,將具體指令下發(fā)到綜合處理單元的FPGA,該FPGA協(xié)調接口單元和存儲單元的FPGA來實現各個指令功能。
[0060]在記錄指令中,系統(tǒng)的中斷信號為攝像機輸出的圖像幀信號,中斷上升沿觸發(fā),在中斷中接收主控計算機發(fā)送的當幀圖像同步信息,當一幀圖像數據傳輸完成后,將接收到的附加數據與圖像合成記錄。[0061]在下載指令中,綜合處理單元接收存儲單元的圖像數據和附加信息,并將其按照固定大小的數據打包,按照TCP協(xié)議上傳到主控計算機,再由主控計算機將這些數據按照攝像機輸出的圖像大小進行封裝。
[0062]在擦除指令中,存儲單元接收到指令后,擦除FLASH陣列上存儲的數據,當所有的FLASH都擦除完成后,給綜合處理單元返回狀態(tài),通知主控擦除指令完成。
【權利要求】
1.一種高速數字視頻存儲系統(tǒng),其特征在于: 所述高速數字視頻存儲系統(tǒng)包括接口單元、綜合處理單元、存儲單元、母板和電源; 所述接口單元包括Cameralink接口芯片、第一 FPGA、總線驅動器和電源管理芯片; 所述綜合處理單元包括主控CPU和第二 FPGA ; 所述存儲單元包括至少一個存儲子單元,每個存儲子單元包括第三FPGA、SRAM和FLASH芯片陣列; 外部Cameralink攝像機通過Cameralink接口芯片與第一 FPGA連接,第一 FPGA通過總線驅動器與母板連接; 主控CPU與外部網絡連接,主控CPU通過第二 FPGA與母板連接; 第三FPGA與母板連接,SRAM和FLASH芯片陣列分別與第三FPGA連接; 所述電源通過電源管理芯片為Cameralink接口芯片、第一 FPGA、總線驅動器、第二FPGA、主控CPU、第三FPGA、SRAM和FLASH芯片陣列供電。
2.根據權利要求1所述的高速數字視頻存儲系統(tǒng),其特征在于:所述存儲單元最多數量為5個,每個存儲單元包括2個存儲子單元,各個存儲子單元之間以流水線的方式工作。
3.根據權利要求1或2所述的高速數字視頻存儲系統(tǒng),其特征在于:Cameralink接口芯片的數量為1-3個。
4.根據權利要求3所述的高速數字視頻存儲系統(tǒng),其特征在于:所述SRAM的數量為2-3 個。
5.根據權利要求4所述的高速數字視頻存儲系統(tǒng),其特征在于:一個FLASH芯片陣列包括8片或10片FLASH芯片,FLASH陣列的讀寫操作為并行操作。
6.根據權利要求5所述的高速數字視頻存儲系統(tǒng),其特征在于:所述主控CPU為芯片TMS320DM6467。
7.根據權利要求6所述的高速數字視頻存儲系統(tǒng),其特征在于:所述FLASH芯片采用K9WBG08U0M 芯片。
8.根據權利要求7所述的高速數字視頻存儲系統(tǒng),其特征在于:所述第一FPGA、第二FPGA和第三FPGA均采用芯片EP2S30F672I4N。
9.根據權利要求8所述的高速數字視頻存儲系統(tǒng),其特征在于:所述總線驅動器采用芯片 SN74LVTH16245。
10.根據權利要求9所述的高速數字視頻存儲系統(tǒng),其特征在于:所述SRAM選擇芯片IDT71T75602S133BGI。
【文檔編號】H04N5/77GK103747197SQ201310676992
【公開日】2014年4月23日 申請日期:2013年12月11日 優(yōu)先權日:2013年12月11日
【發(fā)明者】丁璐, 劉波, 陳二瑞, 田廣元, 郭高 申請人:中國科學院西安光學精密機械研究所