国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于開源軟件的數(shù)字電路與邏輯設(shè)計虛擬實驗室設(shè)計

2021-03-11 03:34:12劉剛田玉敏萬波吳自力王宗武
電子技術(shù)與軟件工程 2021年21期
關(guān)鍵詞:邏輯設(shè)計數(shù)字電路開源

劉剛 田玉敏 萬波 吳自力 王宗武

(西安電子科技大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院 陜西省西安市 710071)

1 序言

隨著計算機(jī)和互聯(lián)網(wǎng)在世界范圍內(nèi)的普及,教育研究呈現(xiàn)出廣闊的新維度,信息技術(shù)和工程教育已經(jīng)成為一個令人興奮的新興研究領(lǐng)域,其涉及多個學(xué)科,旨在解決隨著技術(shù)進(jìn)步而產(chǎn)生的教育挑戰(zhàn)[1]。在高等教育中,實驗環(huán)節(jié)越來越受到重視,而實驗室設(shè)備也變得越來越復(fù)雜、越來越昂貴,對于每個大學(xué)來說,購買和維護(hù)這些設(shè)備帶來巨大的經(jīng)濟(jì)投入。虛擬和遠(yuǎn)程實驗室提供了一種新的解決方案,通過新技術(shù)的引入,建設(shè)具有傳統(tǒng)實驗室同等功能的新型實驗室,實現(xiàn)有限的資源共享,提高實驗效率,越來越受到重視。

遠(yuǎn)程實驗室是真正的實驗室,只是其實驗設(shè)備接入到互聯(lián)網(wǎng)中,實驗者通過網(wǎng)絡(luò)操作實驗設(shè)備并完成實驗、收集實驗數(shù)據(jù)。虛擬實驗室通常來源于計算和仿真軟件,是一種基于Web、虛擬現(xiàn)實等技術(shù)構(gòu)建的純數(shù)字化系統(tǒng),系統(tǒng)中提供的是真實實驗設(shè)備和器材的數(shù)字拷貝。相比于遠(yuǎn)程實驗室,虛擬實驗室是完全基于軟件的,具有更低成本,沒有場地要求,而且儀器設(shè)備的更新更加靈活方便,是目前新型實驗室技術(shù)發(fā)展的一個重要分支[2][3]。

我們提出一個基于開源軟件設(shè)計的數(shù)字電路與邏輯設(shè)計虛擬實驗系統(tǒng),旨在為相關(guān)專業(yè)的學(xué)生、老師提供一個便捷的教學(xué)和實驗環(huán)境。該系統(tǒng)能達(dá)成以下四個方面的功能:

(1)授課教師在課堂上利用虛擬實驗室演示教學(xué)內(nèi)容,豐富教學(xué)手段;

(2)學(xué)生利用虛擬實驗室隨時開展實驗,幫助鞏固基本理論,驗證設(shè)計,亦可完成課程要求的實驗內(nèi)容;

(3)實驗指導(dǎo)老師利用虛擬實驗室布置實驗任務(wù),完成實驗管理、成績評定和效果評估;

(4)愛好者們利用全天候后開放的虛擬實驗室實踐自己的設(shè)計,或進(jìn)行相關(guān)研究。

2 虛擬實驗室設(shè)計

數(shù)字電路與邏輯設(shè)計實驗的目的是幫助學(xué)生豐富和拓寬有關(guān)數(shù)字電路邏輯設(shè)計、數(shù)字集成電路及其工程應(yīng)用方面的知識,培養(yǎng)學(xué)生進(jìn)行小型數(shù)字系統(tǒng)設(shè)計和分析的能力?;疽蟀ǎ耗軌蛘_使用示波器、萬用表等常用儀器設(shè)備;掌握數(shù)字電路系統(tǒng)的設(shè)計、調(diào)試,故障分析與排除的一般方法和步驟。在此基礎(chǔ)上,進(jìn)一步培養(yǎng)學(xué)生關(guān)于復(fù)雜系統(tǒng)分析和設(shè)計的綜合能力。結(jié)合虛擬實驗室的四個功能要求,我們設(shè)計的虛擬實驗室系統(tǒng)構(gòu)成如圖1所示。

圖1:數(shù)字電路與邏輯設(shè)計虛擬實驗室

虛擬實驗室的主要基礎(chǔ)設(shè)施是云計算平臺。采用云計算技術(shù)的目的是利用其具備的大規(guī)模、高可靠、虛擬化、可擴(kuò)展的優(yōu)點。本設(shè)計中,我們依托校園網(wǎng)資源,基于開源的OpenStack[4]來搭建私有云,云平臺包含存儲、控制及計算節(jié)點各一個。

虛擬實驗室的核心是實驗?zāi)M軟件。首先,我們可以自己來開發(fā)“數(shù)字電路與邏輯設(shè)計”仿真軟件。其次,也可以直接選用軟件市場上的成熟軟件。本項目中,我們走了一條中間路線,即基于開源軟件進(jìn)行二次開發(fā)。通過調(diào)研比較,我們選擇了CircuitVerse[5]作為設(shè)計的基礎(chǔ)。其次,為了豐富平臺功能,本設(shè)計集成了開源的論壇軟件StartBBS 和開源的輕量人臉檢測模型[9],借以提供一個交流園地,以及在實驗管理中實現(xiàn)對實驗者的持續(xù)身份認(rèn)證功能。

虛擬實驗室的用戶分為兩類,一類是教學(xué)用戶,一類是實驗用戶。實驗用戶具有兩種權(quán)限,一是利用虛擬實驗室資源開展實驗,二是查看老師布置的實驗任務(wù),在線完成并提交;教學(xué)用戶能夠創(chuàng)建和管理實驗班級、發(fā)布實驗作業(yè),以及對實驗用戶提交的作業(yè)進(jìn)行評估。當(dāng)然也能利用虛擬實驗室的實驗資源。

2.1 CircuitVerse概述

CircuitVerse 是一個基于Web 的開源軟件,用于設(shè)計和仿真數(shù)字電路。該項目是來自印度IIIT-Bangalore 大學(xué)的一個學(xué)生項目,采用MIT[7]許可協(xié)議,這是一個比GNU[6]等更加寬松的軟件授權(quán)條款。

CircuitVerse 提供了豐富的數(shù)字器件、儀器儀表和常用的調(diào)試工具,通過對器件等的簡單拖放即可進(jìn)行電路的設(shè)計和仿真。其功能覆蓋了從簡單的邏輯門到復(fù)雜的時序電路的仿真、時序圖繪制、自動電路產(chǎn)生以及標(biāo)準(zhǔn)集成電路分析等。而且,支持層次化設(shè)計方法,使得用戶可以存儲和訪問先前設(shè)計的電路,實現(xiàn)設(shè)計復(fù)用。圖2是該仿真器的主界面,主要構(gòu)成部分如下:

圖2:CircuitVerse 模擬器主界面

(1)菜單欄和快捷工具欄:實現(xiàn)項目管理,如設(shè)計的存儲、讀取等。

(2)器件/儀器庫:分類存放了實驗所需的各種邏輯門、集成電路以及調(diào)試用的儀器儀表;

(3)實驗環(huán)境參數(shù)設(shè)置:用于設(shè)置項目的名稱,全局時鐘屬性等;

(4)實驗臺:設(shè)計空間,放置設(shè)計電路。

(5)示波器界面:信號顯示,以及顯示參數(shù)如尺寸調(diào)整按鈕等。

CircuitVers 已經(jīng)具備了設(shè)計一個虛擬實驗室的主要要素:各種數(shù)字化器件、數(shù)字化儀器儀表,以及實驗臺等等,然而在實驗組織和管理方面,仍然有一些不足。本項目首先在用戶管理功能以及身份認(rèn)證功能上進(jìn)行增強。

2.2 用戶管理功能增強

CircuitVerse 的用戶管理功能比較弱,而且所有用戶具有相同權(quán)限。在本設(shè)計中,我們修改了這方面的功能,將用戶分為兩類,并在權(quán)限上予以區(qū)分。

(1)實驗用戶:注冊的合法實驗用戶能夠使用虛擬平臺提供的資源進(jìn)行實驗,可以使用平臺提供的存儲資源保存和瀏覽自己的設(shè)計;能夠加入合法的實驗班級并完成和提交老師布置的實驗任務(wù);能夠使用學(xué)習(xí)園地。這類用戶包括圖1中的學(xué)生用戶和愛好者。

(2)教學(xué)用戶:除了具備實驗用戶的權(quán)限外,能夠創(chuàng)建實驗班級,對加入班級的同學(xué)進(jìn)行審核。能為每個班級布置實驗,并在線批閱班級成員提交的作業(yè)。這類用戶如圖1中的教師和實驗指導(dǎo)老師。

為了安全,目前該虛擬實驗室暫時沒有向非注冊用戶開放,也不支持普通的訪客使用實驗室的資源,下一步會考慮這種需求。

2.3 持續(xù)用戶身份認(rèn)證設(shè)計

該功能的設(shè)計是為了滿足考評環(huán)節(jié)需求。傳統(tǒng)實驗?zāi)J较?,學(xué)生在確定的時間在實驗室開展實驗,并接受指導(dǎo)老師的驗收,并在實驗后提交實驗報告。而實驗指導(dǎo)老師根據(jù)驗收情況和實驗報告,給參與實驗的同學(xué)評定成績。當(dāng)實驗轉(zhuǎn)移到虛擬實驗室后,實驗者在分散的時間,在網(wǎng)絡(luò)空間開展并完成實驗。那么,需要一種手段對完成實驗的同學(xué)的身份進(jìn)行驗證。為了完成這一個功能,在軟件中增加了基于人臉識別的持續(xù)身份認(rèn)證功能。Web 前端會每隔一個隨機(jī)時間啟動終端攝像頭拍照,并送后臺進(jìn)行識別。整個實驗期間的若干次識別結(jié)果記錄在該同學(xué)的實驗日志中,作為學(xué)生誠信評估的依據(jù)。

本功能采用開源的人臉識別庫進(jìn)行開發(fā),開源人臉識別項目非常多,典型的有Face Recognition[8],輕量級人臉檢測模型[9]等??紤]到設(shè)備要求以及我們的應(yīng)用場景比較簡單,本設(shè)計選用輕量人臉檢測模型作為開發(fā)基礎(chǔ),測試表明,該開源庫能夠滿足我們的應(yīng)用需求。

2.4 電子社區(qū)交流園地

為了方便同學(xué)們交流心得,共享資料,我們在虛擬實驗平臺上集成了論壇功能。開源論壇系統(tǒng)非常多,如Discuz、Opensns 等,本項目基于輕量級開源社區(qū)系統(tǒng)StartBBS 進(jìn)行開發(fā)。StartBBS 是一個基于PHP+MySQL 開發(fā)的新型社區(qū)系統(tǒng),采用MVC 框架開發(fā)。具有易于二次開發(fā)、程序與模板文件分開,以及輕量等特點。前臺用戶界面采用的TwitterBootstrap 和Jquery,用戶體驗得到了驗證,同時其設(shè)計上采用了流式響應(yīng)式設(shè)計,無論是使用電腦還是平板電腦抑或手機(jī),都能很好地適應(yīng)屏幕,無需要再開發(fā)相應(yīng)的模板。

在本設(shè)計中,將StartBBS 作為一個附加模塊集成到虛擬實驗室系統(tǒng),通過仿真器主界面提供的超級鏈接可進(jìn)入論壇。同時,論壇不提供單獨的用戶注冊和登陸功能,只有通過虛擬實驗室注冊并登陸的用戶才能使用論壇功能。

3 虛擬實驗室應(yīng)用過程

在本節(jié),我們通過一個例子來介紹我們設(shè)計的“數(shù)字電路與邏輯設(shè)計虛擬實驗室”的使用方法,讀者也能通過該例子進(jìn)一步了解其特點和功能。

3.1 實驗班級的創(chuàng)建和作業(yè)發(fā)布

首先,必須注冊為教學(xué)用戶,通過管理員審核后即可登陸。在登陸名后通過My Groups 即可創(chuàng)建、管理班級(圖3)。對于已經(jīng)創(chuàng)建的班級,點擊View 按鈕即可進(jìn)入作業(yè)發(fā)布界面,如圖4所示。

圖3:班級管理

圖4:實驗任務(wù)發(fā)布

在圖4中,輸入實驗要求,完成時間等信息后提交,即可完成實驗任務(wù)發(fā)布。同時系統(tǒng)會向班級里的每個成員發(fā)送電子郵件通知。發(fā)布任務(wù)時輸入的信息除了實驗名稱、實驗的具體要求描述外,還包含下列信息(圖4中沒有展示):

(1)完成截止時間;

(2)能夠使用的器件;

(3)評分方法:提供了A-E 五級評分和100 分制兩種方法,評分方法一旦確定不能修改。

3.2 實驗的完成和提交

實驗用戶登陸系統(tǒng)后可加入班級,教師用戶在創(chuàng)建班級時,也能通過郵件的方式邀請相關(guān)學(xué)生加入班級。實驗任務(wù)發(fā)布后,班級成員會收到郵件,通過郵件提供的鏈接可以瀏覽發(fā)布的實驗任務(wù)。在截至日期前登陸系統(tǒng),可瀏覽老師發(fā)布的實驗任務(wù)(如圖5)。截至日期前的任何時候可通過點擊“Start Working”按鈕開始實驗。一旦開始實驗,則可啟動如圖2所示的虛擬實驗室工作臺,完成實驗并保存。

圖5:實驗任務(wù)提示界面

圖6給出了用戶在虛擬實驗室工作臺完成實驗并保存后,Start Working 頁面的內(nèi)容,可以預(yù)覽自己的設(shè)計,還可通過按鈕“Launch simulator”啟動工作臺進(jìn)行修改。實驗工作一旦保存,則班級指導(dǎo)老師登陸系統(tǒng)后即可看到。

圖6:任務(wù)預(yù)覽界面

3.3 實驗成果批閱

指導(dǎo)老師登陸系統(tǒng)后,通過圖3所示的班級管理界面的View按鈕,可以瀏覽每個學(xué)生的實驗情況,如圖7所示。左邊是已經(jīng)開展實驗的學(xué)生名字列表。通過該界面,也能夠?qū)γ總€學(xué)生的實驗結(jié)果進(jìn)行評價,并可通過系統(tǒng)提供的報表生成功能導(dǎo)出全體同學(xué)的成績。

圖7:實驗成果評閱

3.4 小結(jié)

本章通過從實驗發(fā)布到開展,到最后評閱的整個流程敘述了我們設(shè)計的虛擬實驗室的核心功能。由于篇幅的限制,許多輔助功能,如持續(xù)身份認(rèn)證、交流論壇等沒有展示。但虛擬實驗室的框架已經(jīng)完成,而且實驗管理的流程也得到了驗證。下一步,將會完成更多的軟件的本地化工作,包括主要界面的漢化、儀器儀表庫的補充等,我們團(tuán)隊將盡快推出改進(jìn)版本,供其他高校實踐。

4 總結(jié)

虛擬實驗室具有成本低、管理方便、資源利用率高、開放性、高可擴(kuò)展等優(yōu)點,是未來實驗技術(shù)的重要發(fā)展趨勢。數(shù)字電路與邏輯設(shè)計實驗是課程的重要部分,能夠幫助學(xué)生深入理解布爾代數(shù)、數(shù)字邏輯的本質(zhì);能夠幫助學(xué)生鞏固數(shù)字電路分析和設(shè)計的基本步驟和方法。有趣的實驗不但能激發(fā)學(xué)生的學(xué)習(xí)興趣,學(xué)生通過實驗獲得知識,培養(yǎng)批判性思維,提高自我管理技能。針對傳統(tǒng)實驗室存在的局限性,我們基于開源軟件開發(fā)了一個數(shù)字電路與邏輯設(shè)計虛擬實驗室,虛擬實驗室提供了實驗所需要的基本要素。該虛擬實驗室在我們學(xué)校開展了試驗,老師和同學(xué)們反映良好,也在設(shè)計支持、界面友好等方面提出了寶貴的意見,這將是下一步團(tuán)隊致力解決的問題。

猜你喜歡
邏輯設(shè)計數(shù)字電路開源
基于數(shù)字電路的定時器的設(shè)計
電子制作(2019年22期)2020-01-14 03:16:46
五毛錢能買多少頭牛
MATLAB在數(shù)字電路教學(xué)中的應(yīng)用
電子測試(2018年23期)2018-12-29 11:11:48
火電機(jī)組公用電泵系統(tǒng)介紹及邏輯設(shè)計
電子制作(2018年12期)2018-08-01 00:47:44
基于數(shù)字電路的密碼鎖設(shè)計與實現(xiàn)
數(shù)字電路實驗的設(shè)計分析
電子制作(2017年1期)2017-05-17 03:54:28
提高火力發(fā)電廠熱工保護(hù)可靠性方案與策略探討
大家說:開源、人工智能及創(chuàng)新
開源中國開源世界高峰論壇圓桌會議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
開源計算機(jī)輔助翻譯工具研究
奉化市| 邵东县| 仁寿县| 湛江市| 赤城县| 甘孜县| 从江县| 星子县| 白水县| 上虞市| 泾源县| 孟村| 长武县| 壶关县| 桐乡市| 荔浦县| 图片| 宁波市| 曲阜市| 班玛县| 青河县| 大洼县| 宝丰县| 宁波市| 邢台市| 三原县| 保康县| 厦门市| 建瓯市| 玉门市| 开封县| 墨玉县| 宁明县| 望都县| 富裕县| 连江县| 通城县| 永仁县| 临夏市| 谢通门县| 咸阳市|