Zynq-7000 rgb2ycbcr IP的創(chuàng)建與使用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
Zynq-7000 rgb2ycbcr IP的創(chuàng)建與使用
1 背景知識(shí)
IP(Intellectual Property)在嵌入式FPGA設(shè)計(jì)中,指的是某些設(shè)計(jì)好的模塊,分為軟件模塊和硬件模塊。這些模塊,一般都是已經(jīng)測試好,所有功能完善的,由一些用戶自己設(shè)計(jì)的。有些模塊是免費(fèi)的,也有收費(fèi)的模塊。所有用戶都可以將這些IP核(IP Core)導(dǎo)入到自己的工程中,同樣,所有用戶也都可以定制自己的IP核。
將一些在數(shù)字電路中常用但比較復(fù)雜的功能塊,如FIR濾波器,SDRAM控制器,PCI接口等等設(shè)計(jì)成可修改參數(shù)的模塊,讓其他用戶可以直接調(diào)用這些模塊,這樣就大大減輕了工程師的負(fù)擔(dān),避免重復(fù)勞動(dòng)。隨著CPLD/FPGA的規(guī)模越來越大,設(shè)計(jì)越來越復(fù)雜,使用IP核是一個(gè)發(fā)展趨勢。理想地,一個(gè)知識(shí)產(chǎn)權(quán)核應(yīng)該是完全易操作的--也就是說,易于插入任何一個(gè)賣主的技術(shù)或者設(shè)計(jì)方法。通用異步接發(fā)報(bào)機(jī)(UARTs)、中央處理器(CPUs)、以太網(wǎng)控制器和PCI接口(周邊元件擴(kuò)展接口)等都是知識(shí)產(chǎn)權(quán)核的具體例子。
知識(shí)產(chǎn)權(quán)核心分為三大種類:硬核,中核和軟核。硬件中心是知識(shí)產(chǎn)權(quán)構(gòu)思的物質(zhì)表現(xiàn)。這些利于即插即用應(yīng)用軟件并且比其它兩種類型核的輕便性和靈活性要差。像硬核一樣,中核(有時(shí)候也稱為半硬核)可以攜帶許多配置數(shù)據(jù),而且可以配置許多不同的應(yīng)用軟件。三者之中最有靈活性的就是軟核了,它存在于任何一個(gè)網(wǎng)絡(luò)列表(一列邏輯門位和互相連接而成的集成電路)或者硬件描述語言(HDL)代碼中。
2 rgb2ycbcr IP的建立
對于RGB轉(zhuǎn)ycbcr的理論可參考《FPGA圖像處理之rgbtogray算法的實(shí)現(xiàn)》。
1) 創(chuàng)建工程添加源文件
2) 點(diǎn)擊菜單欄->tools->Create and Package New IP ->Next
3)點(diǎn)擊package your current project->Next
4)選擇IP Location 這里我們選著Include IP generated files->next->finished
IP Location 放在一個(gè)比較好找的位置,以便我們后期的使用
5)對IP進(jìn)行封裝點(diǎn)擊
各種參數(shù)代碼檢測無誤后點(diǎn)擊Review and Package->Package IP
IP 封裝完成,以后我們可以使用此IP進(jìn)行設(shè)計(jì)。
FPGA開源工作室rgb2ycbcr IP的介紹
如上圖所示,clk為像素時(shí)鐘,i_rgb接口為rgb888格式輸入。我們分別引出了o_rgb(RGB888)、o_ycbcr和o_gray接口,完成了一個(gè)模塊三種顏色空間的輸出以便后期設(shè)計(jì)的使用。
3 zynq-7000的實(shí)現(xiàn)
利用《Zynq-7000電子相冊的實(shí)現(xiàn)》的設(shè)計(jì)成果。我們在此平臺(tái)上驗(yàn)證rgb2ycbcr模塊。
1)添加IP 點(diǎn)擊Project Setting->IP->Repository Manager->+(找到自己IP存放的路徑)->OK.
2)添加rgb2ycbcr IP
其他模塊的配置和使用在此不再贅述,需要源工程的可以聯(lián)系FPGA開源工作室。
3)launch SDK
(1)首先選中system右鍵選中Generate Output Products...
(2)選中system右鍵選中Create HDL Wrapper...
(3)建立約束文件XDC
(4)生成bitstream。
(5)導(dǎo)出硬件 選擇菜單File->Export->Export Hardware...。這里包括bitstream
(6)Launch SDK 選擇菜單File->Launch SDK,啟動(dòng)SDK環(huán)境。
4)SDK編程
程序我們依然實(shí)用《Zynq-7000電子相冊的實(shí)現(xiàn)》的程序。
5)驗(yàn)證結(jié)果
視頻欣賞
4 結(jié)論
利用IP來完成設(shè)計(jì)就像搭積木一樣方便簡單。我們只需要知道IP的功能和接口定義即可方便的使用IP來完成我們的設(shè)計(jì),省事又省力。IP的另一個(gè)好處是可以復(fù)用,不需要每個(gè)人都來設(shè)計(jì)一遍,或者了解里邊的算法如何實(shí)現(xiàn)。對于該模塊的gray和rgb輸出有興趣的同學(xué)可以自己驗(yàn)證一下。





