專利名稱:基于現(xiàn)場可編程門陣列的IEEE 1394b數(shù)據(jù)傳輸處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于FPGA (現(xiàn)場可編程門陣列)的IEEE 1394b數(shù)據(jù)傳輸處 理系統(tǒng),可應(yīng)用于高帶寬IEEE 1394b數(shù)據(jù)在FPGA上面?zhèn)鬏敽吞幚淼膱龊稀?于通訊技術(shù)領(lǐng)域。
背景技術(shù):
IEEE 1394,俗稱火線接口,最初是由蘋果公司提出,當(dāng)時的目的是為了簡 化計算機的連線,并為實時數(shù)據(jù)傳輸提供一個高速接口。 IEEE 1394有如下特 點傳輸速度快,支持100Mb/s (兆比特每秒)、200Mb/s、 400Mb/s、 800Mb/s 甚至3200Mb/s的傳輸速率;支持點到點傳輸,每個節(jié)點脫離主機自主執(zhí)行事務(wù); 即插即用并且支持熱拔插;存在距離限制,節(jié)點之間的距離不能超過4.5米, 如加上中繼器,兩個節(jié)點之間的距離最大為72米;支持等時數(shù)據(jù)傳輸和異步數(shù) 據(jù)傳輸兩類傳輸方式;設(shè)備之間采用樹形或者菊花鏈的拓?fù)浣Y(jié)構(gòu),每條總線最 多連接63臺設(shè)備;將資源看成寄存器和內(nèi)存單元,可以按照CPU-內(nèi)存的傳輸速 率進行讀寫操作等。IEEE 1394從提出到現(xiàn)在不斷完善和發(fā)展,很多產(chǎn)品都采用 了該接口作為它們的標(biāo)準(zhǔn)接口 。
目前,市場上主流應(yīng)用的IEEE 1394規(guī)范版本分為兩種IEEE 1394a-2000 和IEEE 1394b-2002。其中IEEE 1394a在嵌入式系統(tǒng)應(yīng)用非常的廣泛,包括在 DSP (數(shù)字信號處理器),ARM (Advanced RISC Machines), FPGA等芯片上面連 接實現(xiàn),產(chǎn)品也日趨成熟和穩(wěn)定。但I(xiàn)EEE 1394b由于傳輸速率相對較高(一般 為800Mb/s),電路較IEEE 1394a復(fù)雜,形成產(chǎn)品化的含IEEE 1394b通信接口的 嵌入式系統(tǒng)少之又少。在很多需要高傳輸速率的場合,例如高分辨高幀率攝像 機圖像處理,迫切需要在嵌入式系統(tǒng)上面實現(xiàn)IEEE 1394b傳輸?,F(xiàn)在有些專門 設(shè)計IP (知識產(chǎn)權(quán))核的公司,成功的在FPGA或者ASIC (專用集成電路)上面實現(xiàn)了IEEE 1394b鏈路層和物理層功能,但是其價格昂貴,沒有得到廣泛使 用。因此在FPGA上面開發(fā)一種簡單易于實現(xiàn)的IEEE 1394b數(shù)據(jù)傳輸處理系統(tǒng) 具有極大的現(xiàn)實意義。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對現(xiàn)有技術(shù)的不足,提出一種基于FPGA的IEEE 1394b 數(shù)據(jù)傳輸處理系統(tǒng),實現(xiàn)高帶寬數(shù)據(jù)在FPGA上面?zhèn)鬏敚蛇_(dá)到800Mb/s的傳輸 速率,實現(xiàn)簡便,成本低。
為實現(xiàn)上述目的,本發(fā)明以PCI (外設(shè)組件互連)總線協(xié)議,IEEE 1394b協(xié) 議,IEEE 1394 OHCI (開放式主機控制接口)協(xié)議為基礎(chǔ),設(shè)計的基于FPGA的 IEEE 1394b數(shù)據(jù)傳輸處理系統(tǒng)包括FPGA邏輯和控制電路,IEEE 1394b控制器 電路,存儲器電路,外部復(fù)位電路和時鐘電路等基本電路模塊。
所述的FPGA邏輯和控制電路,其核心為FPGA芯片,該芯片內(nèi)部以SOPC (可 編程片上系統(tǒng))的方式整合了嵌入式處理器、PCI接口控制器、存儲器接口控制 器、片上存儲器和鎖相環(huán)控制器。其中嵌入式處理器作為整個傳輸系統(tǒng)的控制 和處理的核心單元,通過總線與PCI接口控制器、存儲器接口控制器、片上存 儲器和鎖相環(huán)控制器相連,控制整個傳輸處理系統(tǒng)的初始化和數(shù)據(jù)通信。PCI接 口控制器與IEEE 1394b控制器電路和時鐘電路相連,按照IEEE 1394開放式主 機控制接口協(xié)議配置。存儲器接口控制器與存儲器電路相連,提供存儲器的數(shù) 據(jù)通道。鎖相環(huán)控制器與時鐘電路相連,提供特定相位和頻率的時鐘信號。
所述的IEEE 1394b控制器電路與時鐘電路和外部IEEE 1394b設(shè)備相連, 其核心為IEEE 1394b鏈路層芯片和物理層芯片,實現(xiàn)IEEE 1394b同步和異步 數(shù)據(jù)包的發(fā)送和接收。
所述的外部復(fù)位電路與FPGA邏輯和控制電路相連,提供整個傳輸處理系統(tǒng) 的復(fù)位邏輯。
本發(fā)明的信息處理內(nèi)容和流程為首先IEEE 1394b設(shè)備接入到所述的基于 FPGA的IEEE 1394b數(shù)據(jù)傳輸處理系統(tǒng)。系統(tǒng)上電后,外部復(fù)位電路使能系統(tǒng)復(fù) 位。FPGA內(nèi)部嵌入處理器開始工作,配置內(nèi)部PCI接口控制器,初始化IEEE 1394b控制器電路。接著FPGA內(nèi)部嵌入處理器發(fā)起IEEE 1394b總線復(fù)位命令并強制 自己為根節(jié)點,完成樹標(biāo)示和自標(biāo)示。最后FPGA內(nèi)部嵌入處理器通過發(fā)送異步 數(shù)據(jù)包的方式復(fù)位IEEE 1394b設(shè)備,隨后配置IEEE 1394b設(shè)備,并使能該設(shè) 備數(shù)據(jù)傳輸。
與現(xiàn)有技術(shù)相比,本發(fā)明的系統(tǒng)實現(xiàn)容易,開發(fā)周期短,成本低,完全實 現(xiàn)了 IEEE 1394b高帶寬數(shù)據(jù)在FPGA上面的實時傳輸處理,可以廣泛的集成于 各種需要IEEE 1394b高帶寬數(shù)據(jù)的嵌入式系統(tǒng)中。
圖l為本發(fā)明系統(tǒng)的結(jié)構(gòu)框圖。
圖2為本發(fā)明的FPGA邏輯和控制電路的實例框圖。
具體實施例方式
為了更好地理解本發(fā)明的技術(shù)方案,以下結(jié)合附圖和實施例作進一歩的詳 細(xì)描述。本實施例是在本發(fā)明技術(shù)方案的前提下進行實施,但本發(fā)明的保護范 圍不限于以下具體實施例。
如圖l所示,本發(fā)明包括FPGA邏輯和控制電路,IEEE 1394b控制器電路, 存儲器電路,外部復(fù)位電路、時鐘電路等基本單元。各個單元之間互連關(guān)系如 圖l所示FPGA邏輯和控制電路分別與IEEE 1394b控制器電路、存儲器電路、 外部復(fù)位電路和時鐘電路連接;IEEE 1394b控制器電路與IEEE 1394b設(shè)備和時 鐘電路連接。
本發(fā)明所述的FPGA邏輯和控制電路如圖2所示,實施例采用的FPGA芯片 為altera公司的EP2C70,通過altera公司的SOPC builder工具整合了嵌入 式處理器(NIOSIICPU), PCI接口控制器,存儲器接口控制器,片上存儲器和 鎖相環(huán)控制器組件,各個組件通過總線(這里為avalon-MM總線)互連。其中 NIOS II CPU作為整個傳輸系統(tǒng)的控制和處理的核心單元,通過總線與PCI接 口控制器、存儲器接口控制器、片上存儲器和鎖相環(huán)控制器相連,控制整個傳 輸系統(tǒng)的初始化和數(shù)據(jù)通信。PCI接口控制器與IEEE 1394b控制器電路和時鐘 電路相連,提供中斷請求信號(IRQ)給NIOS II CPU,工作在PCI host bridge(主橋)的模式,具體其突發(fā)傳輸功能,系統(tǒng)上電后需完成PCI-to-avalon和 avalon-to-PCI基地址配置寄存器配置(具體參考1394 Open Host Controller Interface Specification, Release 1.1, January 6, 2000)。存儲器接口控 制器與存儲器電路相連,該控制器提供存儲器的數(shù)據(jù)通道,存儲器的類型可以 是SDRAM、 DDR SDRAM或者DDR II SDRAM等。鎖相環(huán)控制器與時鐘電路相連, 提供特定相位和頻率的時鐘信號。鎖相環(huán)控制器產(chǎn)生的時鐘1 (CI)連接到NIOS II CPU、 PCI接口控制器和片上存儲器,時鐘2 (C2)連接到存儲器電路,時鐘 2需根據(jù)實際電路延時調(diào)整相對于時鐘1的相位偏移。
實施例中的時鐘電路,輸出外部時鐘l、外部時鐘2和外部時鐘3,其中外 部時鐘1與鎖相環(huán)控制器連接,提供FPGA所需基本時鐘,外部時鐘2與PCI接 口控制器連接,提供PCI接口控制器所需的33MHz時鐘,外部時鐘3與IEEE 1394b 控制器電路連接,提供IEEE 1394b控制器電路所需時鐘。
所述IEEE 1394b控制器電路,本實施例采用了 TI公司的IEEE1394b鏈路 層芯片TSB82AA2和物理層芯片TSB81BA3,在滿足功能要求的情況下,其他電路 方案完全可以替換。如圖1所示本發(fā)明系統(tǒng)結(jié)構(gòu)框圖中的存儲器電路,外部復(fù) 位電路和時鐘電路,都是非常成熟穩(wěn)定的電路,選擇的方案非常多,只要滿足 當(dāng)前要求都可以采用。另外本實施例中所需的電源電路只要滿足實際所需的電 源規(guī)格和要求,都可以采用。
下面針對本實施例的具體過程作說明-
1、 NIOS II CPU配置IEEE1394b鏈路層芯片的PCI寄存器,包括置位PCI 命令寄存器的MS(存儲器空間控制)和BM(總線主設(shè)備控制)位為1,寫0HCI 寄存器基地址到PCI基地址寄存器0,以及讀取該PCI設(shè)備的一些其它信息,如 設(shè)備識別字段,供應(yīng)商識別字段等。
2、 NIOS II CPU初始化IEEE1394b鏈路層芯片的0HCI寄存器,依次包括 使能寄存器軟復(fù)位,置LPS (連接電源狀態(tài))位,清除中斷寄存器,置CMC (周 期控制器)、ISC (等時資源管理器)和IRMC (總線管理器)位,設(shè)置總線號, 使能post write位,清除控制寄存器,使能周期定時器和周期控制器,置等時資源管理器競爭位,設(shè)置自標(biāo)識DMA (直接存儲器存取)緩存區(qū),使能自標(biāo)識 DMA,設(shè)置Configuration ROM (配置只讀內(nèi)存)映射寄存器,獲得最大的包尺 寸,清中斷屏蔽寄存器,初始化異步接收D區(qū),初始化異步發(fā)送D區(qū),設(shè)置中斷 掩碼以允許產(chǎn)生某些中斷,設(shè)置異步接收過濾寄存器允許接受所有節(jié)點發(fā)送的 異步數(shù)據(jù)包,定義異步發(fā)送的重試次數(shù),設(shè)置字節(jié)交換,允許中斷,使能鏈路 層。
3、 NIOS II CPU通過置物理層芯片基地址寄存器的IBR (總線復(fù)位)位為 1,發(fā)起IEEE 1394b總線復(fù)位命令并強制自己為根節(jié)點,完成樹標(biāo)示和自標(biāo)示。
4、 NIOS II CPU通過發(fā)送異步數(shù)據(jù)包的方式復(fù)位IEEE 1394b設(shè)備(如IEEE 1394b攝像機)。這里以IEEE1394b攝像機為例,復(fù)位該攝像機后,訪問攝像機 狀態(tài)和控制寄存器信息,設(shè)置接收圖像的大小、幀率和位數(shù)等信息。初始化等 時接收腿(具體參考1394 Open Host Controller Interface Specification, Release 1.1, January 6, 2000),使能IEEE 1394b攝像機,開始圖像傳輸。
權(quán)利要求
1.一種基于現(xiàn)場可編程門陣列FPGA的IEEE 1394b數(shù)據(jù)傳輸處理系統(tǒng),其特征在于包括FPGA邏輯和控制電路,IEEE 1394b控制器電路,存儲器電路,外部復(fù)位電路和時鐘電路;所述的FPGA邏輯和控制電路,其核心為FPGA芯片,該芯片內(nèi)部以可編程片上系統(tǒng)的方式整合了嵌入式處理器、外設(shè)組件互連PCI接口控制器、存儲器接口控制器、片上存儲器和鎖相環(huán)控制器;其中嵌入式處理器作為整個傳輸系統(tǒng)的控制和處理的核心單元,通過總線與PCI接口控制器、存儲器接口控制器、片上存儲器和鎖相環(huán)控制器相連,控制整個傳輸處理系統(tǒng)的初始化和數(shù)據(jù)通信;PCI接口控制器與IEEE 1394b控制器電路和時鐘電路相連,按照IEEE 1394開放式主機控制接口協(xié)議配置;存儲器接口控制器與存儲器電路相連,提供存儲器的數(shù)據(jù)通道;鎖相環(huán)控制器與時鐘電路相連,提供特定相位和頻率的時鐘信號;所述的IEEE 1394b控制器電路與時鐘電路和外部IEEE 1394b設(shè)備相連,其核心為IEEE 1394b鏈路層芯片和物理層芯片,實現(xiàn)IEEE 1394b同步和異步數(shù)據(jù)包的發(fā)送和接收;所述的外部復(fù)位電路與FPGA邏輯和控制電路相連,提供整個傳輸處理系統(tǒng)的復(fù)位邏輯。
全文摘要
本發(fā)明提出了一種基于現(xiàn)場可編程門陣列FPGA的IEEE 1394b數(shù)據(jù)傳輸處理系統(tǒng),包括FPGA邏輯和控制電路,IEEE 1394b控制器電路,存儲器電路,外部復(fù)位電路和時鐘電路。FPGA邏輯和控制電路整合了嵌入式處理器、外設(shè)組件互連PCI接口控制器、存儲器接口控制器、片上存儲器和鎖相環(huán)控制器。嵌入式處理器通過總線與PCI接口控制器、存儲器接口控制器、片上存儲器和鎖相環(huán)控制器相連;PCI接口控制器與IEEE 1394b控制器和時鐘電路相連;存儲器接口控制器與存儲器電路相連;鎖相環(huán)控制器與時鐘電路相連;IEEE 1394b控制器電路與IEEE 1394b設(shè)備和時鐘電路相連;外部復(fù)位電路與FPGA邏輯和控制電路相連。本發(fā)明在IEEE 1394b協(xié)議的支持下完全實現(xiàn)高帶寬數(shù)據(jù)的傳輸處理。
文檔編號G06F13/38GK101625669SQ20091005667
公開日2010年1月13日 申請日期2009年8月20日 優(yōu)先權(quán)日2009年8月20日
發(fā)明者劉允才, 史文歡, 王宸昊, 黃茂祥 申請人:上海交通大學(xué)