采用FPGA實(shí)施DisplayPort
Source Policy Maker Controller 設(shè)計(jì)的“邏輯”部分位于 MicroBlaze 處理器之上,并使用 I2C 命令來控制鏈路、數(shù)據(jù)流以及配置空間。該 C 語言代碼可實(shí)施 Policy Maker 的指令控制、高級(jí)示例文件以及嵌入式開發(fā)套件 (EDK)。同時(shí)賽靈思還提供軟件開發(fā)套件 (SDK) 項(xiàng)目文件,可為設(shè)計(jì)人員最大限度地提高實(shí)施靈活性。此外,賽靈思還可為使用現(xiàn)有控制平臺(tái)處理器的應(yīng)用提供 C 語言源代碼。設(shè)計(jì)人員可將該源代碼添加至 FPGA 內(nèi)外的現(xiàn)有控制軟件中。根據(jù)許可證協(xié)議,只要代碼能夠同內(nèi)核配合使用,控制器即可在FPGA外部實(shí)施(即在外部處理器中實(shí)施)。
本文引用地址:http://m.butianyuan.cn/article/112027.htm設(shè)計(jì)人員可使用支持賽靈思 Platform Studio (EDK) 的嵌入式硬件設(shè)計(jì)套件或具有 SDK 的嵌入式軟件設(shè)計(jì)套件,對(duì) XAPP 設(shè)計(jì)進(jìn)行修改。通常情況下,FPGA 設(shè)計(jì)人員使用 EDK,而軟件開發(fā)人員則使用 SDK。EDK 流會(huì)生成一個(gè)中間網(wǎng)絡(luò)文件 (NGC),您可以在實(shí)施設(shè)計(jì)之前,將其整合在ISE項(xiàng)目中。NGC 文件包含構(gòu)成 BRAM 初始化一部分的 MicroBlaze 代碼。
快速轉(zhuǎn)換
如果用戶修改過軟件,EDK 流通常會(huì)占用較長(zhǎng)的時(shí)間。不過,用戶一旦生成了網(wǎng)絡(luò)列表,就不再需要 EDK 或者 SDK 了。SDK 流可修改 FPGA 比特流,因此僅需更新 BRAM 中的 MicroBlaze 代碼內(nèi)容。該 SDK 流能夠?yàn)檐浖薷奶峁└斓霓D(zhuǎn)換時(shí)間,但在這種情況下,用戶必須每生成一個(gè)比特流就使用一次 SDK。
在 DisplayPort 中,VESA 為系統(tǒng)增添了智能性,不但能在源端設(shè)備(如機(jī)頂盒、DVD 播放器或 PC 圖形卡)與宿端設(shè)備(如顯示監(jiān)控器)之間進(jìn)行功能協(xié)調(diào),而且還可優(yōu)化通信參數(shù)。
擴(kuò)展顯示識(shí)別
DisplayPort 一個(gè)特別重要的特性是,能夠通過 VESA 的增強(qiáng)顯示識(shí)別數(shù)據(jù) (EDID) 結(jié)構(gòu)與不同的設(shè)備進(jìn)行接口相連。EDID 并不是什么新事物。實(shí)際上多年以來設(shè)計(jì)人員一直在使用各種視頻接口讀取 EDID 的宿端設(shè)備參數(shù),從而與設(shè)備進(jìn)行接口連接。不過這些早期的 EDID 及相關(guān)接口技術(shù)通常不包含高級(jí)可配置通信通道。如今借助DisplayPort,VESA為系統(tǒng)增添了智能性,不但能在源端(如機(jī)頂盒、DVD 播放器或 PC 圖形卡)與宿端設(shè)備(如顯示監(jiān)控器)之間進(jìn)行功能協(xié)調(diào),而且還可優(yōu)化通信參數(shù)。DisplayPort v1.1a 可協(xié)調(diào)的變量包括通道數(shù)量(1、2 或者 4)、每信道數(shù)據(jù)速率(1.62 或 2.7Gb/s)、電壓擺幅(0.2、0.6、0.8、1.2 V)、4 個(gè)級(jí)別的通道預(yù)加重以及鏈路時(shí)鐘向下擴(kuò)散。由 CORE Generator 生成,并與 LogiCORE 一道提供的接收宿端范例設(shè)計(jì)可提供范例 EDID(圖 3),以便滿足 EDID 源端設(shè)備的讀取需求,確保用戶的最佳視覺體驗(yàn)。
宿端范例設(shè)計(jì)在 FPGA 內(nèi)部的 BRAM 中實(shí)施了 EDID 數(shù)據(jù)結(jié)構(gòu)。DisplayPort 的源代碼可通過 AUX 通道實(shí)現(xiàn) I2C 協(xié)議。圖 3 和圖 4 顯示了連接至源端的 DisplayPort 宿端的方框圖。宿端的 Link 與 Stream Policy Maker屬于宿端內(nèi)核的組成部分,不過源端的Link Policy Maker 具有更高的復(fù)雜性,將作為源代碼隨參考設(shè)計(jì)提供。EDID通過I2C接口與接受宿端進(jìn)行接口連接。
I2C 協(xié)議非常適合針對(duì) EDID 數(shù)據(jù)結(jié)構(gòu)的連接,并常常用于這種類型的應(yīng)用。I2C 控制器負(fù)責(zé)定位與管理在 EDID 中發(fā)現(xiàn)的數(shù)據(jù),并通過串行接口與 I2C 接口協(xié)議(通過 AUX 通道)將數(shù)據(jù)傳輸至宿端內(nèi)核。在工作模式下,用戶無需知曉 EDID 是否正被訪問。用戶可通過檢測(cè) I2C 總線來監(jiān)控 ROM 的內(nèi)容。在調(diào)試模式下,用戶能夠修改 I2C 控制器,覆蓋 EDID ROM 提供的 3 位內(nèi)容。I2C 提供控制信號(hào),在與適當(dāng)?shù)拈_集輸出相連時(shí),可提供 I2C 主接口。宿端內(nèi)含名為“DisplayPort 配置數(shù)據(jù)(DPCD)”的數(shù)據(jù)結(jié)構(gòu),可以存儲(chǔ)配置數(shù)據(jù)并作為宿端與源端都可讀寫的通信郵箱使用。源端一般使用跨 AUX 通道的 DPCD 內(nèi)容(圖 3 和圖 4)。
結(jié)語
采用 MicroBlaze 的賽靈思 Source Policy Maker Controller 系統(tǒng)參考設(shè)計(jì)經(jīng)過精心設(shè)計(jì),可充分發(fā)揮DisplayPort的所有優(yōu)勢(shì),向市場(chǎng)推出功能豐富的顯示產(chǎn)品。
參考文獻(xiàn):
[1]Xilinx IP Center – DisplayPort LogiCORE[R/OL]:http://www.xilinx.com/products/ipcenter/EF-DIDISPLAYPORT.htm
[2]Quantum Data 882E Video Test Instruments[R/OL],http://www.quantumdata.com/pdf/882E_DP_DS_RevI.pdf
[3]VESA DisplayPort Standard[S]. v1.1a, 2008-1
[4]Philips Semiconductors.I2S Bus特點(diǎn).1996 (更多I2S:http://www.nxp.com/acrobat_download/various/I2SBUS.pdf )
[5]UG196 and UG 198.Virtex-5 FPGA GTP Transceiver User Guides
[6]UG386.Spartan-6 FPGA GTP TransceiverUser Guide
評(píng)論