PCIE 上(shàng)位機(jī) 介紹
本(běn)文(wén)为(wèi)明(míng)德揚原創文(wén)章(zhāng),轉(zhuǎn)载請注明(míng)出(chū)处! 作者(zhě):雲(yún)哥哥
開(kāi)發(fà)环(huán)境:windows開(kāi)發(fà)平台(tái):QT5.11.3
1、PCIE上(shàng)位機(jī)测試过(guò)程
FPGA将數據(jù)傳到(dào)芯片(piàn)中(zhōng),通(tòng)过(guò)pcie再将芯片(piàn)算完的(de)數傳給(gěi)上(shàng)位機(jī)。目标(biāo):
1.实現(xiàn)上(shàng)位機(jī)的(de)速度(dù)测試,經(jīng)测試pcie的(de)傳輸速度(dù)达(dá)到(dào)2.2GB/s以(yǐ)上(shàng)
2.上(shàng)位機(jī)收(shōu)到(dào)pcie的(de)數據(jù)後(hòu)保存在(zài)D盤的(de)根(gēn)目录(lù)下(xià),pcie实現(xiàn)测速的(de)原理:首先(xiān),打(dǎ)開(kāi)上(shàng)位機(jī)後(hòu)先(xiān)檢测pcie設備是(shì)否已經(jīng)準備好(hǎo),調用(yòng)的(de)函(hán)數为(wèi)
若pcie init()<0,則檢测不(bù)到(dào)pcie設備。檢测完準備好(hǎo)後(hòu),開(kāi)啟一(yī)个(gè)線(xiàn)程檢测接收(shōu)的(de)數據(jù);開(kāi)啟線(xiàn)程的(de)函(hán)數如(rú)下(xià):
線(xiàn)程不(bù)斷读(dú)取(qǔ)的(de)函(hán)數如(rú)下(xià):
其中(zhōng),c2h_transfer_size:每次(cì)读(dú)取(qǔ)的(de)长度(dù)为(wèi)8MB
H2c_align_mem_tmp:读(dú)取(qǔ)到(dào)的(de)數據(jù)保存在(zài)这(zhè)块(kuài)內(nèi)存中(zhōng)檢验(yàn)上(shàng)位機(jī)收(shōu)到(dào)的(de)數據(jù)是(shì)否正(zhèng)确。由(yóu)于(yú)要(yào)檢测數據(jù)所(suǒ)以(yǐ)可(kě)以(yǐ)暫时(shí)把數據(jù)保存在(zài)文(wén)件(jiàn)中(zhōng),保存的(de)文(wén)件(jiàn)的(de)函(hán)數如(rú)下(xià):

File_test。Close()://關(guān)閉文(wén)件(jiàn),刷新數據(jù)當用(yòng)戶想(xiǎng)保存文(wén)件(jiàn)的(de)时(shí)候調用(yòng)以(yǐ)上(shàng)代(dài)碼即可(kě)
2、 分(fēn)析文(wén)件(jiàn)
保存的(de)文(wén)件(jiàn)是(shì)以(yǐ)Bin格式保存的(de),可(kě)以(yǐ)使用(yòng)Hex Editor ,打(dǎ)開(kāi)文(wén)件(jiàn)如(rú)下(xià):
當用(yòng)戶相分(fēn)析數據(jù)的(de)时(shí)候可(kě)以(yǐ)使用(yòng)Matable或(huò)者(zhě)qt程序自(zì)行写软(ruǎn)件(jiàn)分(fēn)析这(zhè)里(lǐ),我(wǒ)们(men)明(míng)德揚的(de)pcie自(zì)定(dìng)義了(le)一(yī)个(gè)數據(jù)包(bāo),包(bāo)的(de)格式是(shì)以(yǐ)16个(gè)字(zì)节(jié)为(wèi)一(yī)个(gè)數據(jù),data[16]={0X55,0XAA,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,,0X00,0X00,0X40,0X02,0X00,0X01}
其中(zhōng)0X55,0XAA是(shì)包(bāo)头(tóu),,0X40,0X02是(shì)包(bāo)序列,0X00,0X01包(bāo)數據(jù)當包(bāo)數據(jù)0X00,0X01遞增到(dào)0X00,0X0F後(hòu),然後(hòu)歸为(wèi)0X00,0X00,包(bāo)序列也(yě)遞增,如(rú)0X40,0X00遞增到(dào)0X40,0X01.然後(hòu)用(yòng)qt测試,打(dǎ)開(kāi)如(rú)下(xià)界面(miàn):
然後(hòu)點(diǎn)擊“读(dú)數據(jù)”,數據(jù)保存在(zài)D盤,然後(hòu)打(dǎ)開(kāi)如(rú)下(xià)图(tú)片(piàn)中(zhōng)pcie_fun.c文(wén)件(jiàn),該文(wén)件(jiàn)是(shì)pcie驅動(dòng)文(wén)件(jiàn)
里(lǐ)面(miàn)
是(shì)設備輸出(chū)上(shàng)位機(jī)往fpga發(fà)送數據(jù)的(de)函(hán)數
上(shàng)位機(jī)接收(shōu)fpga的(de)數據(jù)的(de)函(hán)數
以(yǐ)上(shàng)为(wèi)pcie 上(shàng)位機(jī)的(de)介紹,感(gǎn)興趣的(de)同(tóng)学可(kě)以(yǐ)加Q:1465617980 雲(yún)哥哥 了(le)解(jiě)更(gèng)多(duō)的(de)学習信(xìn)息。








