在XILINX官網(wǎng)上看見了一些SDSoc的介紹視頻,感覺這個(gè)工具很強(qiáng)大,我之前也有一點(diǎn)點(diǎn)VIVADO+HLS的學(xué)習(xí)經(jīng)歷,感覺會(huì)為學(xué)習(xí)SDSoc提供一些幫助,所以就嘗試學(xué)習(xí)學(xué)習(xí)。
先從最基礎(chǔ)的點(diǎn)亮一個(gè)LED入手,通過(guò)對(duì)官方資料的學(xué)習(xí),驚奇的發(fā)現(xiàn)官方給的例程都是對(duì)算法加速,而沒有一些入門例程,比如說(shuō)點(diǎn)亮一個(gè)LED(可能是太簡(jiǎn)單了官方不屑說(shuō),也有可能是我沒找到)。
我用的是ZedBoard開發(fā)板,SDSoc版本2017.4,Win10 64位系統(tǒng)。這個(gè)例子是我用ZedBoard開發(fā)板點(diǎn)亮一個(gè)直接連在MIO7上的LD9。
第一步:搭建平臺(tái)
搭建平臺(tái)是使用SDSoc工具開發(fā)的第一步,對(duì)于如何搭建平臺(tái),XILINX官方提供了較為詳細(xì)的說(shuō)明,由于SDSoc2017.4包含了ZedBoard開發(fā)板平臺(tái),而且提供的這個(gè)平臺(tái)也剛好配置了MIO(如下圖所示),因此這個(gè)例子就可以省去搭建平臺(tái)的操作。
而且這個(gè)平臺(tái)也配置了SD對(duì)應(yīng)的引腳,這樣就可以使用SD卡啟動(dòng)開發(fā)板(這些引腳設(shè)置需要參照所使用的開發(fā)板的具體硬件連接)。
第二步:新建工程
1、打開SDSoc(SDx),創(chuàng)建一個(gè)Application Project,點(diǎn)擊Next。
2、設(shè)置工程名(MIO_test),點(diǎn)擊Next。
3、選擇硬件平臺(tái),這里需要根據(jù)自己的開發(fā)板的型號(hào)進(jìn)行選擇,因?yàn)槲矣玫氖荶edBoard開發(fā)板,所以選擇zed;從圖中可以看到,SDSoc2017.4只支持zc702、zc706、zcu102、zed這4中開發(fā)板(橙色符號(hào)有custom標(biāo)識(shí)的是鄙人自己搭建的平臺(tái)),因此如果使用的不是上述4種開發(fā)板的話,需要自己搭建平臺(tái);點(diǎn)擊Next。
4、選擇要在ARM核中運(yùn)行的系統(tǒng),這里選擇standalone(裸機(jī))就行了;點(diǎn)擊Next。
5、選擇一個(gè)例程,這里選擇一個(gè)空應(yīng)用就可以了,其他的都是比較復(fù)雜的例程;點(diǎn)擊Finish。
6、在如下界面中注意畫圈標(biāo)記的位置,Generate SD card image這個(gè)選項(xiàng)是設(shè)置在Debug后生成一些文件,將生成的文件拷貝到SD卡中就可以直接啟動(dòng),當(dāng)然設(shè)置這種啟動(dòng)方式的前提是這個(gè)平臺(tái)已經(jīng)使能了SD卡對(duì)應(yīng)的引腳,而且開發(fā)板也設(shè)置成了SD卡啟模式(一般是通過(guò)撥碼開關(guān)設(shè)置,具體要參考所使用的開發(fā)板)。
ZedBoard配置SD卡啟動(dòng)(白線框出的位置)
第三步:編寫程序并運(yùn)行
1、右擊src->New->File,F(xiàn)ile name設(shè)置為MIO_test.c(要指明是.c格式文件),點(diǎn)擊Finish。
2、在MIO_test.c中編寫如下程序,然后Ctrl+s保存。
3、點(diǎn)擊Debug(紅圈所示)然后等待結(jié)束,這個(gè)過(guò)程需要等待好幾分鐘。
4、運(yùn)行結(jié)束后,在工程目錄下有個(gè)sd_card文件夾,我的路徑是這樣的E:\sdsoc20174\projects\MIO_test\Debug\sd_card,將這個(gè)文件夾中的4個(gè)文件拷貝到一張空SD中,再將卡插到開發(fā)板上,然后對(duì)開發(fā)板供電,就可以看見LD9閃爍了。
結(jié)束
這是一個(gè)簡(jiǎn)單的關(guān)于SDSoc的入門例子,對(duì)這個(gè)工具分析來(lái)看,其實(shí)SDSoc就是包含了VIVADO和SDK以及以后要用到的HLS,我們以前使用VIVADO搭建的硬件工程,就是現(xiàn)在的SDSoc中的平臺(tái);以前調(diào)用SDK編寫程序,就是現(xiàn)在的在SDSoc中編寫程序;包括以后會(huì)用到的硬件加速,就是SDSoc調(diào)用HLS,將需要加速的函數(shù)轉(zhuǎn)換成IP核連接到平臺(tái)通路中。了解這些對(duì)應(yīng)關(guān)系將有助于我們理解掌握SDSoc。
評(píng)論