Mvb網(wǎng)卡開(kāi)發(fā)方法及平臺(tái)的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái),為解決現(xiàn)有的MVB網(wǎng)卡開(kāi)發(fā)方法過(guò)程中,MVB網(wǎng)卡的軟件開(kāi)發(fā)必須等待硬件開(kāi)發(fā)完成且制作出產(chǎn)品才能進(jìn)行軟件開(kāi)發(fā)的驗(yàn)證,導(dǎo)致的開(kāi)發(fā)周期長(zhǎng)等問(wèn)題而設(shè)計(jì)。所述MVB網(wǎng)卡開(kāi)發(fā)方法包括:步驟S1:仿真待開(kāi)發(fā)MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu),以形成虛擬MVB網(wǎng)卡;步驟S2:將軟件寫入所述虛擬MVB網(wǎng)卡中;步驟S3:將所述軟件在所述虛擬MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。本發(fā)明MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái),通過(guò)軟件模擬仿真MVB網(wǎng)卡的硬件邏輯,再將軟件在虛擬的MVB網(wǎng)卡上進(jìn)行驗(yàn)證,從而可以大大的縮短MVB網(wǎng)卡軟件開(kāi)發(fā)的周期,從而提高M(jìn)VB網(wǎng)卡開(kāi)發(fā)的效率,且實(shí)現(xiàn)簡(jiǎn)便快捷。
【專利說(shuō)明】MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)及通信領(lǐng)域,尤其涉及一種MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái)。
【背景技術(shù)】
[0002]TCN(Train Communication Network,列車通信網(wǎng)絡(luò))是在列車分布式控制系統(tǒng)之上發(fā)展起來(lái)的列車、診斷信息數(shù)據(jù)通信網(wǎng)絡(luò)。MVB(Multifunction Vehicle Bus,多功能車輛總線)是TCN的一部分,用來(lái)實(shí)現(xiàn)位于同一車輛或固定重聯(lián)的不同車輛中的設(shè)備間通信。TCN-MVB網(wǎng)絡(luò)技術(shù)符合IEC61375-1國(guó)際標(biāo)準(zhǔn)。
[0003]MVB網(wǎng)卡用于MVB網(wǎng)絡(luò)的通信,研制的MVB網(wǎng)卡應(yīng)符合IEC61375-1標(biāo)準(zhǔn)中有關(guān)MVB的技術(shù)要求,能夠?qū)崿F(xiàn)過(guò)程數(shù)據(jù)、消息數(shù)據(jù)及監(jiān)控?cái)?shù)據(jù)的通訊功能。對(duì)于MVB的I類設(shè)備,其僅具有過(guò)程數(shù)據(jù)功能和設(shè)備狀態(tài)響應(yīng)功能,功能相對(duì)簡(jiǎn)單,可由FPGA硬件邏輯實(shí)現(xiàn)。而對(duì)于MVB的2、3、4、5類設(shè)備,除具有I類設(shè)備的功能外,還具有消息數(shù)據(jù)的功能。其中4類和5類設(shè)備還具有總線管理能力,可以成為總線主。這些更復(fù)雜的功能通常需要在嵌入式CPU (如ARM)上實(shí)現(xiàn)。
[0004]在具體的MVB網(wǎng)卡的卡發(fā)過(guò)程中,包括硬件和軟件兩部分,現(xiàn)有的方法為軟件和硬件分別開(kāi)發(fā),當(dāng)硬件和軟件完成開(kāi)發(fā)后,將軟件在硬件上進(jìn)行系統(tǒng)的正確性驗(yàn)證,然和在實(shí)際的開(kāi)發(fā)過(guò)程中,硬件的開(kāi)發(fā)往往滯后與軟件,這樣將導(dǎo)致軟件的測(cè)試、修改等工作被推遲,從而導(dǎo)致整個(gè)開(kāi)發(fā)周期的被延長(zhǎng),從而延長(zhǎng)了開(kāi)發(fā)的周期。
【發(fā)明內(nèi)容】
[0005](一)發(fā)明目的
[0006]針對(duì)上述問(wèn)題,本發(fā)明旨在提供一種加快MVB網(wǎng)卡開(kāi)發(fā)速度,簡(jiǎn)化MVB網(wǎng)卡開(kāi)發(fā)流程的MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái)。
[0007](二)技術(shù)方案
[0008]為達(dá)上述目的,本發(fā)明MVB網(wǎng)卡開(kāi)發(fā)方法,包括:
[0009]步驟S1:仿真待開(kāi)發(fā)MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu),以形成虛擬MVB網(wǎng)卡;
[0010]步驟S2:將軟件寫入所述虛擬MVB網(wǎng)卡的存儲(chǔ)介質(zhì)中;
[0011]步驟S3:將所述軟件在所述虛擬MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。
[0012]優(yōu)選地,所述步驟SI包括:
[0013]步驟S1.1:對(duì)MVB網(wǎng)卡的上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存以及MVB總線建模;
[0014]步驟S1.2:構(gòu)建頂層的功能單元;
[0015]其中,所述功能單元包括對(duì)應(yīng)于MVB網(wǎng)卡總線的總線單元、對(duì)應(yīng)于所述上位機(jī)接口的上位機(jī)接口單元、對(duì)應(yīng)于總線收發(fā)器的總線收發(fā)單元、對(duì)應(yīng)于軟件接口的軟件接口單元、對(duì)應(yīng)于控制器的控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線;[0016]各功能單元間利用內(nèi)置的信號(hào)、端口以及套接字進(jìn)行單元間的綁定;
[0017]步驟S1.3:編譯可執(zhí)行文件以實(shí)現(xiàn)所述步驟S1.2中的各個(gè)功能單元。
[0018]優(yōu)選地,
[0019]所述虛擬MVB總線通過(guò)TLM套接字與所述總線收發(fā)單元完成一對(duì)多的綁定。
[0020]優(yōu)選地,所述方法還包括:
[0021]仿真形成虛擬上位機(jī),并通過(guò)上位機(jī)接口單元使所述仿真形成的虛擬上位機(jī)與所述步驟SI至S3形成的虛擬MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。
[0022]優(yōu)選地,所述方法還包括:
[0023]通過(guò)所述虛擬MVB總線實(shí)現(xiàn)所述步驟SI至S3所形成虛擬MVB網(wǎng)卡與連接在所述虛擬MVB總線上的其他MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。
[0024]優(yōu)選地,所述方法還包括通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述虛擬MVB總線中數(shù)據(jù)的傳輸。
[0025]優(yōu)選地,所述方法還包括通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述存儲(chǔ)單元中數(shù)據(jù)的讀寫。
[0026]優(yōu)選地,所述步驟SI中采用System C或System Vevrylog仿真形成所述MVB網(wǎng)卡的硬件的邏輯結(jié)構(gòu)。
[0027]為達(dá)上述目的,本發(fā)明MVB網(wǎng)卡開(kāi)發(fā)平臺(tái),包括硬件仿真子平臺(tái)以及軟件加載運(yùn)行子平臺(tái):
[0028]所述硬件仿真子平臺(tái)用以仿真待開(kāi)發(fā)MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu),以形成虛擬MVB網(wǎng)卡;
[0029]所述軟件加載運(yùn)行子平臺(tái)用以將軟件寫入所述虛擬MVB網(wǎng)卡中,并將所述軟件在所述虛擬的MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。
[0030]進(jìn)一步地,,所述硬件仿真子平臺(tái)包括建模單元、構(gòu)建單元以及編譯單元:
[0031]所述建模單元用以對(duì)MVB網(wǎng)卡的上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存、軟件安裝板卡以及MVB總線建模;
[0032]所述構(gòu)建單元用以構(gòu)建頂層的功能單元;
[0033]其中,所述功能單元包括對(duì)應(yīng)于MVB網(wǎng)卡總線的總線單元、對(duì)應(yīng)于所述上位機(jī)接口的上位機(jī)接口單元、對(duì)應(yīng)于總線收發(fā)器的總線收發(fā)單元、對(duì)應(yīng)于軟件接口的軟件接口單元、對(duì)應(yīng)于控制器的控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線;
[0034]各功能單元間利用內(nèi)置的信號(hào)、端口以及套接字進(jìn)行單元間的綁定;
[0035]所述編譯單元用以對(duì)編譯可執(zhí)行文件以實(shí)現(xiàn)所述構(gòu)建單元中所構(gòu)建的各個(gè)功能單元。
[0036](三)本發(fā)明MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái)的有益效果
[0037]本發(fā)明MVB網(wǎng)卡開(kāi)發(fā)方法及平臺(tái),通過(guò)軟件虛擬出MVB網(wǎng)卡的硬件結(jié)構(gòu)形成虛擬MVB網(wǎng)卡,從而將需要開(kāi)發(fā)出的軟件在所述虛擬MVB網(wǎng)卡進(jìn)行運(yùn)行測(cè)試,從而減少了軟件開(kāi)發(fā)等待硬件開(kāi)發(fā)完并制作出相應(yīng)的硬件結(jié)構(gòu)后,才能繼續(xù)的測(cè)試、驗(yàn)證等開(kāi)發(fā)工作,從而縮短了開(kāi)發(fā)周期;進(jìn)一步的采用本發(fā)明所述的開(kāi)發(fā)方法及開(kāi)發(fā)平臺(tái),可以實(shí)現(xiàn)軟件邊開(kāi)發(fā)邊測(cè)試,部分軟件先行測(cè)試,再次縮短了開(kāi)發(fā)周期,減化了開(kāi)發(fā)過(guò)程中軟件各個(gè)部分的相互牽制的因素,從而簡(jiǎn)化了開(kāi)發(fā)流程。
【專利附圖】
【附圖說(shuō)明】
[0038]圖1為本發(fā)明實(shí)施例一所述的MVB網(wǎng)卡卡發(fā)方法的流程示意圖;
[0039]圖2為本發(fā)明實(shí)施例一所述的MVB網(wǎng)卡虛擬MVB網(wǎng)卡內(nèi)部結(jié)構(gòu)及虛擬MVB網(wǎng)卡與虛擬上位機(jī)以及虛擬終端的結(jié)構(gòu)示意圖;
[0040]圖3為本發(fā)明實(shí)施例一所述的虛擬上位機(jī)與虛擬MVB網(wǎng)卡的上位機(jī)接口單元間的連接結(jié)構(gòu)示意圖;
[0041]圖4為本發(fā)明實(shí)施例一所述的軟件安裝板卡的部結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0042]下面結(jié)合說(shuō)明書附圖以及實(shí)施例對(duì)本發(fā)明做進(jìn)一步的說(shuō)明。
[0043]實(shí)施例一:
[0044]如圖1所示,本實(shí)施例MVB網(wǎng)卡開(kāi)發(fā)方法,包括:
[0045]步驟S1:仿真待開(kāi)發(fā)MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu),以形成虛擬MVB網(wǎng)卡;
[0046]步驟S2:將軟件寫入所述虛擬MVB網(wǎng)卡中;
[0047]步驟S3:將所述軟件在所述虛擬MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。
[0048]本實(shí)施例中所述仿真待開(kāi)發(fā)的MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu)至少包括軟件安裝板卡以及所述軟件安裝板卡以外的電路結(jié)構(gòu)。所述軟件安裝板卡通??梢詾锳RM板卡,用來(lái)安裝ARM軟件即本實(shí)施例中所述的軟件。所述軟件安裝板卡以外的電路結(jié)構(gòu)通常為FPGA——Field Programmable Gate Array 可編程邏輯門陣列。
[0049]本實(shí)施例所述的MVB網(wǎng)卡開(kāi)發(fā)方法,通過(guò)軟件仿真的方法,形成虛擬MVB網(wǎng)卡,再通過(guò)開(kāi)發(fā)出的軟件與虛擬MVB網(wǎng)卡模擬軟件與實(shí)體的MVB網(wǎng)卡之間的數(shù)據(jù)以及命令的交互,來(lái)對(duì)開(kāi)發(fā)出的軟件進(jìn)行驗(yàn)證。本實(shí)施例所述的方法相對(duì)于傳統(tǒng)的方法,軟件開(kāi)發(fā)中的驗(yàn)證不必等到新開(kāi)發(fā)出的MVB網(wǎng)卡制作成完成之后再進(jìn)行,從而加快了開(kāi)發(fā)速度,縮短了開(kāi)發(fā)周期,同時(shí)能實(shí)現(xiàn)軟件開(kāi)發(fā)的同步驗(yàn)證,從而能及早的發(fā)現(xiàn)錯(cuò)誤,能避免因一個(gè)錯(cuò)誤,導(dǎo)致后續(xù)開(kāi)發(fā)出的軟件都得重新調(diào)整或重新開(kāi)發(fā)的問(wèn)題,從而再次提高了開(kāi)發(fā)的效率。
[0050]作為本實(shí)施例進(jìn)一步的改進(jìn),所述步驟SI包括:
[0051]步驟S1.1 :對(duì)MVB網(wǎng)卡的上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存、軟件安裝板卡以及MVB總線建模。
[0052]在具體的實(shí)現(xiàn)過(guò)程中可以參照VHDL代碼,采用SystemC語(yǔ)言對(duì)上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存以及MVB總線進(jìn)行行為級(jí)別的建模,而在參照VHDL代碼過(guò)程中可以對(duì)VHDL代碼中包含的時(shí)鐘周期有關(guān)的信息在進(jìn)行級(jí)別抽象時(shí)可以忽略。
[0053]在具體的實(shí)現(xiàn)過(guò)程中可以采用SimSoC或QEMU對(duì)所述軟件安裝板卡進(jìn)行建模。具體的圖3所示,所述軟件安裝板卡通??梢允茿RM板卡,所述ARM板卡包括處理器、中斷控制器、內(nèi)部總線、內(nèi)存以及包括如UART、GP10等功能模塊的模擬。所述虛擬形成的軟件安裝板卡上可以加載與真實(shí)的軟件安裝板卡一致的軟件棧,具體的可以加載操作系統(tǒng)以及應(yīng)用程序。所述步驟S2中將所述軟件寫入所述軟件安裝板卡的內(nèi)存中。當(dāng)所述軟件安裝板卡為ARM板卡時(shí)則至少可以加載ARM操作系統(tǒng)以及ARM應(yīng)用程序。以下以仿真形成ARM板卡為例進(jìn)行說(shuō)明:步驟1:根據(jù)STM3240G-Eval的相關(guān)文檔,為虛擬的ARM運(yùn)行eCos應(yīng)用程序必須的中斷控制器及其他資源(如UART、GP10)等功能模塊的便攜。步驟2:復(fù)用SimSoC內(nèi)置的ARM處理器、內(nèi)存、虛擬總線等模塊分別實(shí)現(xiàn)虛擬ARM板卡的處理器、中斷控制器、內(nèi)存、內(nèi)部總線等仿真。步驟3:STM3240G-Eval的相關(guān)文檔,利用步驟I和步驟2中的模塊對(duì)板卡進(jìn)行后續(xù)的建模。
[0054]步驟S1.2:構(gòu)建頂層的功能單元;
[0055]其中,所述功能單元包括對(duì)應(yīng)于MVB網(wǎng)卡總線的總線單元、對(duì)應(yīng)于所述上位機(jī)接口的上位機(jī)接口單元、對(duì)應(yīng)于總線收發(fā)器的總線收發(fā)單元、對(duì)應(yīng)于軟件接口的軟件接口單元、對(duì)應(yīng)于控制器的控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元、對(duì)應(yīng)于軟件安裝板卡的軟件安裝單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線;各單元間利用內(nèi)置的信號(hào)(Signal)、端口(Port)以及套接字(Socket)進(jìn)行單元間的綁定;在具體的實(shí)現(xiàn)過(guò)程中可以采用一個(gè)System C進(jìn)程可以模擬一個(gè)虛擬MVB總線的仿真模擬。
[0056]步驟S1.3:編譯可執(zhí)行文件以實(shí)現(xiàn)所述步驟S1.2中的各個(gè)功能單元。
[0057]其中圖2中所示的網(wǎng)卡I即可認(rèn)為本實(shí)施例仿真形成的虛擬MVB網(wǎng)卡。具體的所述上位機(jī)接口單元用于虛擬MVB網(wǎng)卡與上位機(jī)進(jìn)行命令和/或數(shù)據(jù)的交互;所述總線收發(fā)單元用于虛擬MVB網(wǎng)卡與虛擬的MVB總線進(jìn)行數(shù)據(jù)和/或命令的交互。所述軟件接口單元用以實(shí)現(xiàn)軟件安裝板卡上運(yùn)行的軟件與所述控制單元之間的數(shù)據(jù)和/或命令的交互。所述對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元用以實(shí)現(xiàn)通訊過(guò)程中各種數(shù)據(jù)的存儲(chǔ)以及暫存等存儲(chǔ)工作。
[0058]通過(guò)步驟SI的三個(gè)子步驟,簡(jiǎn)便的實(shí)現(xiàn)了對(duì)MVB網(wǎng)卡中硬件結(jié)構(gòu)的模擬,具有實(shí)現(xiàn)快捷方便的優(yōu)點(diǎn)。
[0059]作為本實(shí)施例的進(jìn)一步的改進(jìn),
[0060]所述虛擬MVB總線通過(guò)TLM套接字與所述總線收發(fā)單元完成一對(duì)多的綁定。即所述虛擬MVB總線可以通過(guò)TLM —對(duì)多套接字實(shí)現(xiàn)與多個(gè)MVB網(wǎng)卡的連接,從而實(shí)現(xiàn)總線上多個(gè)設(shè)備之間的數(shù)據(jù)交互。具體的如圖1中,虛擬的MVB網(wǎng)卡為網(wǎng)卡1、連接在同一虛擬MVB總線上的還包括網(wǎng)卡2 ;使網(wǎng)卡I和網(wǎng)卡2之間進(jìn)行數(shù)據(jù)交互的仿真驗(yàn)證。
[0061]進(jìn)一步地,所述方法還包括:
[0062]仿真形成虛擬上位機(jī),并通過(guò)上位機(jī)接口單元使所述仿真形成的虛擬上位機(jī)與所述步驟SI至S3形成的虛擬MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。在本實(shí)施例中具體可以采用QEMU實(shí)現(xiàn)上位機(jī)的仿真,從而不僅實(shí)現(xiàn)MVB網(wǎng)卡內(nèi)部軟件與硬件之間的整合驗(yàn)證,同時(shí)實(shí)現(xiàn)MVB網(wǎng)卡與上位機(jī)之間的交互的驗(yàn)證。虛擬上位機(jī)上可以加載和真實(shí)的上位機(jī)同樣的軟件棧(具體的包括操作系統(tǒng)以及上位機(jī)的應(yīng)用程序等)。如圖4所示的為一個(gè)用QEMU虛擬的上位機(jī)對(duì)虛擬MVB網(wǎng)卡的測(cè)試的框圖。通過(guò)PC104總線將用以進(jìn)行驗(yàn)證的QEMU虛擬上位實(shí)例輸入所述QEMU虛擬上位機(jī)的監(jiān)視層。所述QEMU虛擬上位機(jī)的監(jiān)視層,為PC104總線對(duì)應(yīng)的端口地址添加了讀寫幀聽(tīng)函數(shù),當(dāng)QEMU虛擬上位機(jī)實(shí)例運(yùn)行的程序產(chǎn)生通過(guò)PC104總線的讀寫時(shí),相應(yīng)的讀寫偵聽(tīng)函數(shù)會(huì)被觸發(fā),進(jìn)而該偵聽(tīng)函數(shù)里,通過(guò)IPC方法與虛擬MVB網(wǎng)卡的上位機(jī)接口單元進(jìn)行通信。
[0063]作為本實(shí)施例進(jìn)一步的改進(jìn),所述方法還包括:
[0064]通過(guò)所述虛擬MVB總線實(shí)現(xiàn)所述步驟SI至S3所形成虛擬MVB網(wǎng)卡與連接在所述虛擬MVB總線上的其他MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。在本實(shí)施例中通過(guò)仿真形成虛擬MVB總線且通過(guò)所述虛擬的MVB總線與連接在所述虛擬MVB總線上的MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互,從而實(shí)現(xiàn)了同一總線上的多個(gè)MVB網(wǎng)卡之間通信的仿真和驗(yàn)證,從而開(kāi)發(fā)驗(yàn)證功能更加強(qiáng)大。
[0065]優(yōu)選地,所述方法還包括通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述虛擬MVB總線中數(shù)據(jù)的傳輸。
[0066]優(yōu)選地,所述方法還包括通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述存儲(chǔ)單元中數(shù)據(jù)的讀寫。
[0067]采用上述TLM2.0中聽(tīng)過(guò)的阻塞/非阻塞傳送接口來(lái)仿真虛擬MVB總線中的數(shù)據(jù)傳輸以及存儲(chǔ)單元中的數(shù)據(jù)的讀寫,實(shí)現(xiàn)簡(jiǎn)便快捷。
[0068]此外,在本實(shí)施例中如圖1所示,還包括對(duì)虛擬的終端的模擬以及虛擬終端軟件安裝板卡之間通信模擬,從而實(shí)現(xiàn)了終端側(cè)的通信的驗(yàn)證,再次加強(qiáng)了驗(yàn)證功能。
[0069]綜合上述,本實(shí)施例所述的MVB開(kāi)發(fā)方法,包括對(duì)MVB網(wǎng)卡硬件結(jié)構(gòu)的模擬仿真、形成虛擬的MVB網(wǎng)卡,將已開(kāi)發(fā)出的MVB網(wǎng)卡的軟件在所述虛擬的MVB網(wǎng)卡運(yùn)行及驗(yàn)證,從而大大的縮短了開(kāi)發(fā)周期,提高了開(kāi)發(fā)效率。同時(shí)在本實(shí)施例中還包括對(duì)上位機(jī)的仿真、對(duì)終端的仿真可以實(shí)現(xiàn),MVB網(wǎng)卡內(nèi)部硬件與軟件之間的驗(yàn)證、MVB網(wǎng)卡與上位機(jī)以及終端之間的驗(yàn)證,從而功能強(qiáng)大且具有實(shí)現(xiàn)簡(jiǎn)便的優(yōu)點(diǎn)。
[0070]實(shí)施例二:
[0071]本實(shí)施例MVB網(wǎng)卡開(kāi)發(fā)平臺(tái),包括硬件仿真子平臺(tái)以及軟件加載運(yùn)行子平臺(tái):
[0072]所述硬件仿真子平臺(tái)用以仿真形成所述MVB網(wǎng)卡的硬件的邏輯結(jié)構(gòu);
[0073]所述軟件加載運(yùn)行子平臺(tái)用以將軟件寫入所述硬件仿真子平臺(tái)仿真形成的虛擬MVB網(wǎng)卡中,并將所述軟件在所述虛擬的MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。
[0074]本實(shí)施例所述的MVB網(wǎng)卡開(kāi)發(fā)平臺(tái)用以實(shí)現(xiàn)實(shí)施例一中任一技術(shù)方案中所述的MVB網(wǎng)卡開(kāi)發(fā)方法。
[0075]進(jìn)一步地,所述硬件仿真子平臺(tái)包括建模單元、構(gòu)建單元以及編譯單元:
[0076]所述建模單元用以對(duì)MVB網(wǎng)卡的上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存、軟件安裝板卡以及MVB總線建模;
[0077]所述構(gòu)建單元用以構(gòu)建頂層的功能單元;
[0078]其中,所述功能單元包括對(duì)應(yīng)于MVB網(wǎng)卡總線的總線單元、對(duì)應(yīng)于所述上位機(jī)接口的上位機(jī)接口單元、對(duì)應(yīng)于總線收發(fā)器的總線收發(fā)單元、對(duì)應(yīng)于軟件接口的軟件接口單元、對(duì)應(yīng)于控制器的控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線;
[0079]各功能單元間利用內(nèi)置的信號(hào)、端口以及套接字進(jìn)行單元間的綁定;
[0080]所述編譯單元用以對(duì)編譯可執(zhí)行文件以實(shí)現(xiàn)所述構(gòu)建單元中所構(gòu)建的各個(gè)功能單元。
[0081]在具體的實(shí)現(xiàn)過(guò)程中,所述開(kāi)發(fā)平臺(tái)還用以仿真形成虛擬上位機(jī),并通過(guò)上位機(jī)接口單元使所述仿真形成的虛擬上位機(jī)與所述虛擬MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。
[0082]所述開(kāi)發(fā)平臺(tái)還用以通過(guò)所述虛擬MVB總線實(shí)現(xiàn)所述步驟SI至S3所形成虛擬MVB網(wǎng)卡與連接在所述虛擬MVB總線上的其他MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。
[0083]所述開(kāi)發(fā)平臺(tái)還用以通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述虛擬MVB總線中數(shù)據(jù)的傳輸。
[0084]所述開(kāi)發(fā)平臺(tái)還用以通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述存儲(chǔ)單元中數(shù)據(jù)的讀寫。
[0085]具體的所述開(kāi)發(fā)平臺(tái)采用System C或System Vevrylog對(duì)成所述總線單元、上位機(jī)接口單元、總線收發(fā)單元、軟件接口單元、控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線進(jìn)行建模;采用SimSoC或QEMU對(duì)所述軟件安裝板卡進(jìn)行建模。
[0086]本實(shí)施例所述的開(kāi)發(fā)平臺(tái),提供了一個(gè)仿真開(kāi)發(fā)MVB網(wǎng)卡的平臺(tái),實(shí)現(xiàn)對(duì)MVB網(wǎng)卡驗(yàn)證,縮短了 MVB網(wǎng)卡開(kāi)發(fā)周期,提高了 MVB網(wǎng)卡開(kāi)發(fā)效率。
[0087]以上實(shí)施方式僅用于說(shuō)明本發(fā)明,而并非對(duì)本發(fā)明的限制,有關(guān)【技術(shù)領(lǐng)域】的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。
【權(quán)利要求】
1.一種MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,包括: 步驟S1:仿真待開(kāi)發(fā)MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu),以形成虛擬MVB網(wǎng)卡; 步驟S2:將軟件寫入所述虛擬MVB網(wǎng)卡中; 步驟S3:將所述軟件在所述虛擬MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。
2.根據(jù)權(quán)利要求1所述的MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,所述步驟SI包括: 步驟S1.1:對(duì)MVB網(wǎng)卡的上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存、軟件安裝板卡以及MVB總線建模; 步驟S1.2:構(gòu)建頂層的功能單元; 其中,所述功能單元包括對(duì)應(yīng)于MVB網(wǎng)卡總線的總線單元、對(duì)應(yīng)于所述上位機(jī)接口的上位機(jī)接口單元、對(duì)應(yīng)于總線收發(fā)器的總線收發(fā)單元、對(duì)應(yīng)于軟件接口的軟件接口單元、對(duì)應(yīng)于控制器的控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元、對(duì)應(yīng)于軟件安裝板卡的軟件安裝單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線;各功能單元間利用內(nèi)置的信號(hào)、端口以及套接字進(jìn)行單元間的綁定; 步驟S1.3:編譯可執(zhí)行文件以實(shí)現(xiàn)所述步驟S1.2中的各個(gè)功能單元。 所述虛擬MVB總線通過(guò)TLM套接字與所述總線收發(fā)單元完成一對(duì)多的綁定。
3.根據(jù)權(quán)利要求1或2所述的MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,所述方法還包括: 仿真形成虛擬上位機(jī),并通過(guò)上位機(jī)接口單元使所述仿真形成的虛擬上位機(jī)與所述步驟SI至S3形成的虛擬MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。
4.根據(jù)權(quán)利要求3所述的MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,所述方法還包括: 通過(guò)所述虛擬MVB總線實(shí)現(xiàn)所述步驟SI至S3所形成虛擬MVB網(wǎng)卡與連接在所述虛擬MVB總線上的其他MVB網(wǎng)卡進(jìn)行數(shù)據(jù)和/或命令的交互。
5.根據(jù)權(quán)利要求4所述的MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,所述方法還包括通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述虛擬MVB總線中數(shù)據(jù)的傳輸。
6.根據(jù)權(quán)利要求5所述的MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,所述方法還包括通過(guò)TLM2.0中提供的阻塞/非阻塞傳送接口來(lái)仿真所述存儲(chǔ)單元中數(shù)據(jù)的讀寫。
7.根據(jù)權(quán)利要求2或3所述的MVB網(wǎng)卡開(kāi)發(fā)方法,其特征在于,采用SystemC或SystemVevrylog對(duì)成所述總線單元、上位機(jī)接口單元、總線收發(fā)單元、軟件接口單元、控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線進(jìn)行建模; 采用SimSoC或QEMU對(duì)所述軟件安裝板卡進(jìn)行建模。
8.—種MVB網(wǎng)卡開(kāi)發(fā)平臺(tái),其特征在于,包括硬件仿真子平臺(tái)以及軟件加載運(yùn)行子平臺(tái): 所述硬件仿真子平臺(tái)用以仿真待開(kāi)發(fā)MVB網(wǎng)卡的硬件邏輯結(jié)構(gòu),以形成虛擬MVB網(wǎng)卡; 所述軟件加載運(yùn)行子平臺(tái)用以將軟件寫入所述虛擬MVB網(wǎng)卡中,并將所述軟件在所述虛擬的MVB網(wǎng)卡上運(yùn)行及驗(yàn)證。
9.根據(jù)權(quán)利要求8所述MVB網(wǎng)卡開(kāi)發(fā)平臺(tái),其特征在于,所述硬件仿真子平臺(tái)包括建模單元、構(gòu)建單元以及編譯單元: 所述建模單元用以對(duì)MVB網(wǎng)卡的上位機(jī)接口、總線收發(fā)器、軟件接口、控制器、通訊內(nèi)存、軟件安裝板卡以及MVB總線建模;所述構(gòu)建單元用以構(gòu)建頂層的功能單元; 其中,所述功能單元包括對(duì)應(yīng)于MVB網(wǎng)卡總線的總線單元、對(duì)應(yīng)于所述上位機(jī)接口的上位機(jī)接口單元、對(duì)應(yīng)于總線收發(fā)器的總線收發(fā)單元、對(duì)應(yīng)于軟件接口的軟件接口單元、對(duì)應(yīng)于控制器的控制單元、對(duì)應(yīng)于通訊內(nèi)存的存儲(chǔ)單元以及對(duì)應(yīng)于MVB總線的虛擬MVB總線.各功能單元間利用內(nèi)置的信號(hào)、端口以及套接字進(jìn)行單元間的綁定; 所述編譯單元用以對(duì)編譯`可執(zhí)行文件以實(shí)現(xiàn)所述構(gòu)建單元中所構(gòu)建的各個(gè)功能單元。
【文檔編號(hào)】G06F11/26GK103514074SQ201310403750
【公開(kāi)日】2014年1月15日 申請(qǐng)日期:2013年9月6日 優(yōu)先權(quán)日:2013年9月6日
【發(fā)明者】孫家廣, 賀飛 申請(qǐng)人:清華大學(xué), 北京清軟英泰信息技術(shù)有限公司