• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      FPGA在線實驗平臺設(shè)計與在線實驗方法研究

      2019-09-19 12:09:10
      測控技術(shù) 2019年1期
      關(guān)鍵詞:實驗者鼠標(biāo)上位

      (北京航空航天大學(xué) 計算機(jī)學(xué)院,北京 100191)

      在高校人才培養(yǎng)中,實驗教學(xué)是不可或缺的重要教學(xué)環(huán)節(jié)之一,是培養(yǎng)學(xué)生創(chuàng)新意識、深化理論知識理解、形成專業(yè)工程素養(yǎng)、提升實踐動手能力的重要途徑[1]。

      近年來隨著科學(xué)技術(shù)的進(jìn)步以及人工智能的普及,數(shù)字信號處理已經(jīng)變得尤為重要。尤其以FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)為核心的數(shù)字信號處理電路,在不同的領(lǐng)域都發(fā)揮著重要的作用[2-3]。高校計算機(jī)專業(yè)的硬件類課程一般包括數(shù)字邏輯、計算機(jī)組成原理、計算機(jī)接口與通信、計算機(jī)體系結(jié)構(gòu)、嵌入式系統(tǒng)等課程,這些課程都有配套的實驗環(huán)節(jié)。為了將多門課程的知識點銜接貫通起來,現(xiàn)在國內(nèi)外不少高校,都開發(fā)了基于FPGA的硬件實驗平臺。一方面,使實驗平臺具有通用性,能夠?qū)⒂布愓n程貫通,實現(xiàn)課程之間互用;另一方面,使各課程之間在實驗項目的設(shè)計上具有延續(xù)性,能體現(xiàn)出課程之間的銜接[4]。然而,F(xiàn)PGA實驗教學(xué)通常只能在實驗室里開展,受實驗時間、實驗場地、設(shè)備數(shù)量和實驗形式等的限制,實驗教學(xué)的靈活性不足,實驗的延續(xù)性得不到保證,硬件設(shè)備利用率不高。因此,迫切需要一種新型實驗教學(xué)模式,使得學(xué)生可以“隨時、隨地”開展實驗,同時使昂貴的實驗設(shè)備能夠被充分利用,最大程度地發(fā)揮硬件設(shè)備的價值。

      近幾年來,以開放性、互動性、個性化為特征的大規(guī)模開放在線課程(Massive Open Online Course,MOOC)在國內(nèi)外得到快速發(fā)展,并引發(fā)了全球教育界對傳統(tǒng)教育模式的反思和變革。但是,現(xiàn)有的MOOC平臺提供的開放課程大多為理論課程,而涉及真實實驗操作的實驗類課程還很少。研究MOOC環(huán)境下開放共享的實驗教學(xué)的解決方法,不僅對于實驗教學(xué)本身在教育模式變革中的發(fā)展有重要的意義,對于輔助線上理論課程的教學(xué)也有著非常重要的作用[5]。

      為此,一些高校和科研機(jī)構(gòu)開始探索:如何將真實的硬件設(shè)備聯(lián)入網(wǎng)絡(luò),同時利用MOOC的巨大優(yōu)勢,為廣大學(xué)習(xí)者提供一個可以隨時隨地進(jìn)行實驗的開放式、真實的實驗環(huán)境,從而實現(xiàn)真正的在線實驗教學(xué)。近幾年來,人們開發(fā)研制出各種FPGA在線實驗系統(tǒng)[4,6-14],建立了FPGA遠(yuǎn)程實驗室,使得FPGA在線實驗成為可能,從而有效克服實驗教學(xué)受場地和時間約束的缺陷,激勵學(xué)生自主學(xué)習(xí)和自主研究。

      然而,現(xiàn)有的FPGA在線實驗平臺通常只提供按鍵和撥碼開關(guān)等常規(guī)的輸入設(shè)備以及LED和數(shù)碼管等常規(guī)的輸出設(shè)備。由于結(jié)構(gòu)和技術(shù)的局限性,并沒有提供鍵盤鼠標(biāo)接口和VGA(Video Graphics Array,視頻圖像陣列)接口,也沒有考慮對鍵盤鼠標(biāo)接口和VGA顯示在線實驗的支持。學(xué)生無法開展使用鼠標(biāo)或鍵盤進(jìn)行實驗操作的在線實驗,無法實時觀看VGA顯示,也就無法通過在線實驗掌握鍵盤鼠標(biāo)接口標(biāo)準(zhǔn)和VGA顯示器標(biāo)準(zhǔn)的工作原理和設(shè)計方法;同時,這在很大程度上限制了在線實驗項目的種類,降低了實驗教學(xué)的多樣性和趣味性。

      1 FPGA在線實驗平臺設(shè)計

      1.1 FPGA在線實驗平臺簡介

      北京航空航天大學(xué)計算機(jī)學(xué)院自2014年以來,以“任何人、任何時間、任何地點、多種設(shè)備”開展實踐性學(xué)習(xí)為目標(biāo),積極探索MOOC在線教育在實驗教學(xué)中的應(yīng)用新模式,為學(xué)生提供不受時空限制的在線實驗環(huán)境,自主研發(fā)了“基于FPGA的硬件類課程在線實驗平臺”(簡稱FPGA在線實驗平臺)。該平臺支持以FPGA為核心的多門硬件類課程在線實驗,能夠提供實驗?zāi)繕?biāo)文件的遠(yuǎn)程下載、硬件設(shè)備遠(yuǎn)程操控、實驗設(shè)計在線調(diào)試、實驗結(jié)果實時反饋和自動評測等功能。并在北航學(xué)堂上建設(shè)了《計算機(jī)組成實驗》、《計算機(jī)EDA設(shè)計》等MOOC課程,將FPGA在線實驗平臺嵌入其中,使得學(xué)生可以隨時隨地進(jìn)行在線實驗,從而突破了傳統(tǒng)硬件類實驗課程在時間、空間和形式上的限制,將實驗教學(xué)場所從象牙塔尖延伸到學(xué)生宿舍、圖書館乃至地球上網(wǎng)絡(luò)能訪問的任一地點。

      1.2 FPGA在線實驗平臺的結(jié)構(gòu)

      FPGA在線實驗平臺的整體架構(gòu)如圖1所示。

      圖1 FPGA在線實驗平臺整體架構(gòu)

      整個平臺由硬件系統(tǒng)和軟件系統(tǒng)兩部分組成。其中,硬件系統(tǒng)主要包括上位機(jī)和FPGA板。

      上位機(jī)采用M58工控板,M58采用Intel低功耗Atom系列處理器。上位機(jī)主要有3個功能:① 接收實驗者在客戶端上傳的目標(biāo)文件;② 接收實驗者在客戶端發(fā)送的指令;③ 接收FPGA板上的LED、數(shù)碼管等輸出設(shè)備的信號狀態(tài)。

      FPGA板是實驗的硬件載體,它包括實驗FPGA和主控FPGA(分別采用Xilinx公司的Spartan6系列FPGA芯片XC6SLX100-2FGG676C和XC6SLX16-2FTG256C),還有輸入設(shè)備(通用按鍵開關(guān),撥碼開關(guān))和輸出設(shè)備(LED,7段數(shù)碼管),以及一些外設(shè)接口(如UART串口,VGA接口,PS/2接口,蜂鳴器等)。每個實驗所生成的編程目標(biāo)文件都下載到實驗FPGA中運行。主控FPGA是上位機(jī)與實驗FPGA之間的橋梁,一方面,模擬輸入設(shè)備產(chǎn)生實際激勵信號發(fā)送至實驗FPGA;另一方面,實時采集FPGA板上所有輸出設(shè)備和外設(shè)接口輸出的信號,并傳送至上位機(jī)。

      軟件系統(tǒng)提供在線實驗服務(wù)和設(shè)備控制管理功能,包括在線實驗管理系統(tǒng)和上位機(jī)控制軟件。在線實驗管理系統(tǒng)部署在MOOC服務(wù)器上,上位機(jī)控制軟件部署于上位機(jī)中,它們協(xié)同完成實驗者在MOOC平臺上對實驗設(shè)備的遠(yuǎn)端操控。

      實驗者所使用的終端稱為用戶前端。用戶前端采用SaaS(Software-as-a-service,軟件即服務(wù))的軟件應(yīng)用模式,用戶(實驗者)無需安裝客戶端軟件,即可通過Web界面使用在線實驗管理系統(tǒng)。

      2 在線實驗方法研究

      2.1 實現(xiàn)鍵盤鼠標(biāo)接口在線實驗的遠(yuǎn)程控制方法

      2.1.1 鍵盤和鼠標(biāo)接口簡介

      鍵盤和鼠標(biāo)是實現(xiàn)人機(jī)交互的重要輸入設(shè)備。鍵盤、鼠標(biāo)的接口形式因主機(jī)而異,過去的計算機(jī)都采用PS/2接口,而現(xiàn)在的PC機(jī)、筆記本電腦大多已用USB接口替代了PS/2接口,目前普遍使用USB接口的鍵盤鼠標(biāo)。但是,仍有一部分PS/2接口的設(shè)備在使用,尤其是在軍用加固設(shè)備領(lǐng)域,可長距離傳輸數(shù)據(jù)的優(yōu)勢使得PS/2接口廣泛應(yīng)用于軍用加固計算機(jī)、服務(wù)器等設(shè)備。

      此外,由于PS/2通信協(xié)議簡單、容易理解和實現(xiàn),所以特別適于作為教學(xué)內(nèi)容學(xué)習(xí)和掌握;而USB通信協(xié)議相對要復(fù)雜得多,并不適合開展教學(xué)。故在FPGA實驗中,PS/2鍵盤鼠標(biāo)接口實驗常常被作為一類實驗項目,通過此類實驗,使學(xué)生了解雙向同步串行通信協(xié)議的一般原理,進(jìn)而掌握其設(shè)計方法。

      PS/2通信協(xié)議是一種雙向同步串行通信協(xié)議。PS/2鍵盤/鼠標(biāo)可以發(fā)送數(shù)據(jù)到主機(jī),而主機(jī)也可以發(fā)送數(shù)據(jù)到PS/2鍵盤/鼠標(biāo)。主機(jī)一般指與PS/2設(shè)備相連的計算機(jī)。本文中,主機(jī)即實驗FPGA,實驗者將電路的目標(biāo)文件下載到實驗FPGA中,從而產(chǎn)生實驗的控制邏輯。

      2.1.2 鍵盤鼠標(biāo)接口在線實驗方法主要思路

      為了利用客戶端的通用鍵盤或鼠標(biāo)(不限于PS/2鍵盤或鼠標(biāo))進(jìn)行在線實驗操作,筆者提出一種遠(yuǎn)程控制方法,實現(xiàn)基于FPGA在線實驗平臺的PS/2鍵盤鼠標(biāo)接口在線實驗。

      簡單來說,通用鍵盤或鼠標(biāo)產(chǎn)生的數(shù)據(jù)經(jīng)歷了用戶前端—服務(wù)器—上位機(jī)—主控FPGA—實驗FPGA的通信過程,其中涉及了相應(yīng)的編碼轉(zhuǎn)換和解碼。該方法的基本思路如下:

      (1) 用戶前端捕獲鍵盤事件或鼠標(biāo)事件并進(jìn)行編碼轉(zhuǎn)換。

      實驗者操作與終端相連的通用鍵盤或鼠標(biāo)進(jìn)行實驗,用戶前端實時捕捉鍵盤事件或鼠標(biāo)事件,并進(jìn)行編碼轉(zhuǎn)換,得到相應(yīng)的PS/2鍵盤數(shù)據(jù)或PS/2鼠標(biāo)數(shù)據(jù)(統(tǒng)稱為PS/2數(shù)據(jù))。

      (2) 用戶前端將PS/2數(shù)據(jù)打包后經(jīng)服務(wù)器發(fā)送給上位機(jī)。

      用戶前端根據(jù)服務(wù)器與上位機(jī)之間的通信協(xié)議,對PS/2數(shù)據(jù)按照約定的格式打包得到PS/2數(shù)據(jù)包,并將PS/2數(shù)據(jù)包通過Websocket發(fā)送給MOOC服務(wù)器;MOOC服務(wù)器再轉(zhuǎn)發(fā)給上位機(jī)。

      (3) 上位機(jī)解析PS/2數(shù)據(jù)包,將PS/2數(shù)據(jù)發(fā)送給主控FPGA。

      上位機(jī)接收到PS/2數(shù)據(jù)包后,根據(jù)預(yù)設(shè)通信協(xié)議對PS/2數(shù)據(jù)包進(jìn)行解析,得到PS/2數(shù)據(jù),并將PS/2數(shù)據(jù)通過串口發(fā)送給主控FPGA。

      (4) 主控FPGA將PS/2鍵盤數(shù)據(jù)或鼠標(biāo)數(shù)據(jù)發(fā)送給實驗FPGA。

      主控FPGA中的鍵盤接口控制模塊和鼠標(biāo)接口控制模塊對PS/2數(shù)據(jù)進(jìn)行識別,區(qū)分其到底是鍵盤數(shù)據(jù)還是鼠標(biāo)數(shù)據(jù),然后將相應(yīng)的數(shù)據(jù)通過模擬PS/2鍵盤接口和PS/2鼠標(biāo)接口的4個特定引腳(PS/2鍵盤的數(shù)據(jù)線和時鐘線、PS/2鼠標(biāo)的數(shù)據(jù)線和時鐘線)分別發(fā)送至實驗FPGA相應(yīng)的4個特定引腳,從而使下載到實驗FPGA中的目標(biāo)文件產(chǎn)生相應(yīng)的輸出,完成實驗。

      2.2 實現(xiàn)VGA顯示在線實驗的遠(yuǎn)程控制方法

      2.2.1 VGA顯示原理介紹

      VGA是IBM在1987年推出的一種視頻傳輸標(biāo)準(zhǔn),其具有分辨率高、顯示速率快、顏色豐富等優(yōu)點,在彩色顯示器領(lǐng)域得到了廣泛的應(yīng)用。VGA標(biāo)準(zhǔn)一直沿用至今,現(xiàn)在的液晶顯示器也都兼容VGA標(biāo)準(zhǔn)。

      采用VGA標(biāo)準(zhǔn)的顯示器通過VGA接口與計算機(jī)內(nèi)部的顯卡相連。VGA接口通常為D形三排15針接口。顯示器只接受模擬信號輸入,其中最重要的信號包含R、G、B(紅、綠、藍(lán))三原色信號和HSYNC(行同步信號)、VSYNC(場同步信號)控制信號。

      VGA是一種使用模擬信號的視頻傳輸標(biāo)準(zhǔn),顏色信號R、G、B均為模擬信號,用紅、綠、藍(lán)這3種顏色可以隨意配出自然界中的大部分顏色,因此采用VGA標(biāo)準(zhǔn)能夠提供絢麗多彩的顏色。但在某些應(yīng)用場合,并不需要顯示彩色高分辨率的圖像,如超市、車站、機(jī)場等公共場所的廣告宣傳和提示信息顯示,工廠車間生產(chǎn)過程中的操作信息顯示等。這時可以簡單地采用數(shù)字量代替模擬量作為顏色信號R、G、B,則能夠顯示的最大顏色數(shù)只有23=8色,但8種顏色足矣。故在一些嵌入式系統(tǒng)中,廣泛采用VGA進(jìn)行圖像顯示,可以使得系統(tǒng)結(jié)構(gòu)簡單,降低成本,易于設(shè)計。

      FPGA擁有豐富的硬件資源,可重配置能力強(qiáng),保密性好,是嵌入式設(shè)計的主流平臺之一[15]。故在嵌入式系統(tǒng)中,人們基于FPGA設(shè)計出各種圖像采集與VGA顯示系統(tǒng)[16],甚至是視頻采集、實時視頻跟蹤系統(tǒng)[17]等。其中一個關(guān)鍵部分是設(shè)計VGA顯示接口控制電路,產(chǎn)生相應(yīng)的RGB信號和控制信號,然后通過VGA接口將這些信號傳輸?shù)斤@示設(shè)備中,從而使顯示器顯示各種圖像。在FPGA教學(xué)中,VGA顯示接口控制電路設(shè)計往往是必不可少的重要內(nèi)容之一。

      2.2.2 VGA顯示在線實驗方法主要思路

      在線下實驗中,實驗者可以通過VGA線纜直接將一個VGA顯示器與FPGA板上的VGA接口相連,從而顯示圖像。但是,做在線實驗時,實驗者是無法看到遠(yuǎn)程VGA顯示器上的畫面的;而且,VGA顯示器的輸出信號并不是簡單的電平或脈沖信號,而是具有一定時序關(guān)系的多個信號,數(shù)據(jù)量巨大,直接傳輸根本無法保證實時性。因此,需要考慮如何將VGA顯示器的畫面實時回傳給客戶端,借用實驗者的顯示器復(fù)現(xiàn)實驗產(chǎn)生的圖像畫面。

      為此,提出一種VGA遠(yuǎn)程顯示控制方法,實現(xiàn)VGA信號采集和壓縮、本地分發(fā)推流以及在線實時播放。VGA信號的轉(zhuǎn)換和傳送過程如圖 2所示。

      圖2 VGA信號的轉(zhuǎn)換和傳送過程

      該方法的關(guān)鍵是采用VGA2USB視頻采集卡將VGA模擬信號轉(zhuǎn)換為壓縮的視頻流,再通過網(wǎng)絡(luò)進(jìn)行傳送。VGA2USB視頻采集卡是外置VGA信號采集盒,它能夠?qū)崟r捕獲計算機(jī)或嵌入式系統(tǒng)輸出的VGA模擬信號;并將其轉(zhuǎn)換成數(shù)字信號;再編碼成視頻流,通過USB2.0接口回傳到計算機(jī)或嵌入式系統(tǒng)中。

      VGA信號的轉(zhuǎn)換和傳送過程具體如下:

      (1) VGA2USB視頻采集卡對FPGA板輸出的VGA模擬信號進(jìn)行實時采集、壓縮,轉(zhuǎn)換成flv(FlashVideo)格式的視頻流。

      flv是現(xiàn)在非常流行的流媒體格式,由于其視頻文件體積輕巧、封裝播放簡單等特點,使其很適合在網(wǎng)絡(luò)上應(yīng)用;此外,由于當(dāng)前瀏覽器與Flash Player緊密結(jié)合,使得網(wǎng)頁播放flv視頻輕而易舉,這也是flv流行的原因之一。flv視頻格式是Adobe公司設(shè)計開發(fā)的,目前已經(jīng)免費開放。

      flv格式文件是一個二進(jìn)制文件,包括文件頭(Flv Header)和文件體(Flv Body)兩部分,其中文件體由一系列的Tag及Tag Size對組成。Tag又可以分成3類:audio、video、script,分別代表音頻流、視頻流和腳本流(關(guān)鍵字或者文件信息之類)。

      (2) 通過視頻采集卡與上位機(jī)相連的USB線將flv視頻流傳送到上位機(jī),上位機(jī)上運行的FFmpeg推流器接收視頻流數(shù)據(jù)。

      實時流媒體編碼工具FFmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并將其轉(zhuǎn)化為流的開源計算機(jī)程序。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。FFmpeg從視頻采集卡處獲取視頻流數(shù)據(jù),并設(shè)置相關(guān)參數(shù)(VGA2USB采集卡的設(shè)備ID,SRS服務(wù)器IP地址,上位機(jī)的ID)。

      (3) FFmpeg推流器將視頻數(shù)據(jù)以RTMP(Real Time Messaging Protocol,實時消息協(xié)議)流的形式推送到SRS(Simple-RTMP-Server)流媒體服務(wù)器端;SRS服務(wù)器搜集來自多個上位機(jī)推送的視頻流,并根據(jù)用戶請求提供正確的視頻流供用戶訪問。

      RTMP是一種進(jìn)行實時數(shù)據(jù)通信的網(wǎng)絡(luò)協(xié)議,主要用來在Flash/AIR(Adobe Integrated Runtime,Adobe集成運行環(huán)境)平臺與支持RTMP協(xié)議的流媒體/交互服務(wù)器之間進(jìn)行音視頻和數(shù)據(jù)通信。

      RTMP協(xié)議規(guī)定,播放一個流媒體有兩個步驟:① 建立一個網(wǎng)絡(luò)連接(NetConnection);② 建立一個網(wǎng)絡(luò)流(NetStream)。其中,網(wǎng)絡(luò)連接代表服務(wù)器端應(yīng)用程序和客戶端之間基礎(chǔ)的連通關(guān)系。網(wǎng)絡(luò)流代表發(fā)送多媒體數(shù)據(jù)的通道。服務(wù)器與客戶端之間只能建立一個網(wǎng)絡(luò)連接,但是基于該連接可以創(chuàng)建很多網(wǎng)絡(luò)流。

      播放一個RTMP協(xié)議的流媒體具體需要以下幾個環(huán)節(jié):握手、建立連接、建立流、播放。RTMP連接都是以握手作為開始的。建立連接階段用于建立客戶端與服務(wù)器之間的“網(wǎng)絡(luò)連接”;建立流階段則用于建立客戶端與服務(wù)器之間的“網(wǎng)絡(luò)流”;播放階段用于傳輸視音頻數(shù)據(jù)。

      (4) 當(dāng)目標(biāo)文件燒錄到FPGA中后,實驗者單擊客戶端實驗界面上方的“VGA顯示”按鈕,實驗界面將彈出一個顯示器窗口,顯示實驗者所設(shè)計的VGA畫面。

      最終,客戶端通過Internet訪問流媒體服務(wù)器,使用基于Flash技術(shù)的播放器(如Adobe Flash Player)即可實時播放視頻,從而實現(xiàn)FPGA在線實驗平臺的遠(yuǎn)程VGA顯示。

      3 在線實驗平臺應(yīng)用

      基于FPGA在線實驗平臺可以支持多門課程。目前,F(xiàn)PGA在線實驗平臺配置了40套設(shè)備(系統(tǒng)規(guī)模還可以根據(jù)需要隨時擴(kuò)充),在各門課程運行期間,能夠7×24 h為學(xué)生提供在線實驗服務(wù),部分實驗環(huán)節(jié)還可通過互聯(lián)網(wǎng)面向全球開放運行,以實現(xiàn)優(yōu)質(zhì)實驗教學(xué)資源的開放共享。平臺已多輪次在筆者所在學(xué)校的《計算機(jī)組成實驗》、《計算機(jī)EDA設(shè)計》和《數(shù)字系統(tǒng)設(shè)計》課程中使用,實現(xiàn)了多門硬件課程的在線實驗教學(xué),與課內(nèi)實驗起到了很好的互補(bǔ)作用,形成了一種線下實驗和線上實驗相結(jié)合的實驗教學(xué)新模式。

      筆者開發(fā)了對抗性彈球游戲在線實驗,該實驗項目在《數(shù)字系統(tǒng)設(shè)計》課程中被作為大作業(yè)選題使用。學(xué)生在離開實驗室后,在任何時候,可以在宿舍、圖書館或者有網(wǎng)絡(luò)的任何地方,通過連接于終端上的通用鍵盤和鼠標(biāo),操縱顯示在實驗界面中的游戲界面上的擋板,遠(yuǎn)程進(jìn)行實驗,來驗證設(shè)計的正確性,從而保證了實驗的連貫性,顯著提高了學(xué)生的學(xué)習(xí)效率。

      為了驗證所提出方法的有效性,結(jié)合對抗性彈球游戲在線實驗,對在線實驗平臺的性能進(jìn)行了測試。測試環(huán)境配置如表1所示。

      表1 測試環(huán)境詳細(xì)配置

      使用JavaScript語言在Visual Studio Code平臺上編寫腳本,捕捉實驗者的鍵盤/鼠標(biāo)被觸發(fā)的時間點以及客戶端實驗界面收到SRS服務(wù)器傳回的視頻圖像的時間點。通過多次測試可以發(fā)現(xiàn),從按下鍵盤/鼠標(biāo)至實驗界面的VGA畫面發(fā)生響應(yīng)的時間,即全過程時延,平均低于700 ms。

      分析可知,當(dāng)實驗者希望通過鍵盤/鼠標(biāo)控制游戲畫面中的擋板,在鍵盤或鼠標(biāo)按下時,鍵盤或鼠標(biāo)產(chǎn)生的數(shù)據(jù)經(jīng)歷了用戶前端—MOOC服務(wù)器—上位機(jī)—主控FPGA—實驗FPGA的通信過程。由于字符指令所占帶寬較小,故該傳輸過程對帶寬沒有限制,時延為毫秒級。

      由于實驗者的“對抗性彈球游戲在線實驗”目標(biāo)文件已經(jīng)遠(yuǎn)程上傳、下載到實驗FPGA中,所以該目標(biāo)文件會自動運行,產(chǎn)生預(yù)定的邏輯,隨時響應(yīng)鍵盤/鼠標(biāo)操作,使游戲畫面中的擋板上移或下移。則實驗FPGA產(chǎn)生的VGA信號經(jīng)歷了實驗FPGA—VGA2USB采集卡—上位機(jī)/FFmpeg推流器—SRS服務(wù)器—用戶前端的通信過程。

      上述數(shù)據(jù)回傳過程的主要時延在于VGA2USB進(jìn)行編碼的過程,即由VGA信號轉(zhuǎn)換為flv格式視頻流的過程。最終,小巧的flv格式視頻流傳輸?shù)絊RS服務(wù)器,服務(wù)器再傳送給客戶端界面進(jìn)行播放。實驗者只需單擊客戶端實驗界面上方的“VGA顯示”按鈕,實驗界面將彈出一個顯示器窗口,刷新顯示實驗者所設(shè)計的VGA畫面。

      實驗平臺使用的VGA2USB采集卡為科伍KW520采集卡,其最大采樣率為230 Mpixels/s。若適應(yīng)640×480的視頻模式,根據(jù)其官方數(shù)據(jù),其刷新率在典型應(yīng)用下為10次/s;而在640×480的分辨率下,WinXP的刷新率(每秒鐘填充圖像的幀數(shù))為28.0 f/s,因此可以實現(xiàn)實時刷新。故整體時延在在線實驗的過程中是可以接受的。

      學(xué)生在完成“對抗性彈球游戲在線實驗”時,充分發(fā)揮其想象力,對設(shè)計進(jìn)行優(yōu)化、改進(jìn)和創(chuàng)新,有效提升了其系統(tǒng)設(shè)計能力和自主設(shè)計能力,培養(yǎng)了創(chuàng)新精神,取得了很好的教學(xué)效果。

      由于在線實驗打破時空限制,學(xué)生開展實驗的方式更加靈活,投入實驗的時間明顯增加,實驗學(xué)習(xí)效果有顯著提升。

      4 結(jié)束語

      采用一體化設(shè)計的FPGA在線實驗平臺,保證了線上實驗和線下實驗的實驗設(shè)備的一致性,能夠顯著提高學(xué)生的學(xué)習(xí)效率;平臺同時具有一臺多用、輸入設(shè)備和輸出設(shè)備豐富、普適性強(qiáng)等特點。所提出的實現(xiàn)鍵盤鼠標(biāo)接口在線實驗和VGA實時顯示的遠(yuǎn)程控制方法,擴(kuò)展了現(xiàn)有FPGA在線實驗平臺的功能,極大地豐富了實驗的種類,增加了實驗的趣味性。

      筆者開發(fā)的在線實驗平臺和在線實驗方法已被應(yīng)用于實際教學(xué)中,并取得了很好的教學(xué)效果。實踐表明,借助于這個平臺,學(xué)生可以開發(fā)更多有趣的游戲或者復(fù)雜的系統(tǒng),從而進(jìn)一步激發(fā)學(xué)習(xí)興趣,有利于學(xué)生開展自主學(xué)習(xí)、自主設(shè)計和創(chuàng)新。

      猜你喜歡
      實驗者鼠標(biāo)上位
      Progress in Neural NLP: Modeling, Learning, and Reasoning
      Engineering(2020年3期)2020-09-14 03:42:00
      探討消毒供應(yīng)室護(hù)理人員職業(yè)倦怠情況及對應(yīng)的措施
      喉氣管狹窄外科治療效果的分析
      加年華
      特斯拉 風(fēng)云之老阿姨上位
      車迷(2018年12期)2018-07-26 00:42:22
      “三扶”齊上位 決戰(zhàn)必打贏
      基于ZigBee和VC上位機(jī)的教室智能監(jiān)測管理系統(tǒng)
      學(xué)不會珍惜
      愛你(2016年18期)2016-04-10 09:38:58
      以新思路促推現(xiàn)代農(nóng)業(yè)上位
      45歲的鼠標(biāo)
      临沭县| 界首市| 三河市| 会同县| 武山县| 荥阳市| 宾川县| 清水县| 南溪县| 比如县| 屏东市| 大埔区| 永宁县| 景宁| 天峻县| 和政县| 中超| 鄯善县| 千阳县| 合水县| 铜川市| 酒泉市| 石泉县| 顺平县| 景东| 榆中县| 怀集县| 夏津县| 清水河县| 木兰县| 威宁| 南丹县| 桦川县| 宝兴县| 绍兴县| 莎车县| 偃师市| 吉首市| 胶州市| 奈曼旗| 庄浪县|