基于FPGA的DSP嵌入系統(tǒng)及其在平板顯示器中的應(yīng)用
前言
用FPGA實現(xiàn)的嵌入式系統(tǒng),均是在更大的芯片中嵌入的重復(fù)完成特定功能的計算系統(tǒng),雖則是隱含嵌入,但實際上在各種常用的芯片中能夠找到這些嵌入式系統(tǒng)。例如,消費(fèi)類電子產(chǎn)品中的手機(jī)、尋呼機(jī)、數(shù)字相機(jī)、攝像機(jī)、錄像機(jī)、個人數(shù)字助理等。
當(dāng)今,以現(xiàn)場可編程門陣列(FPGA)來實現(xiàn)可配置的嵌入式系統(tǒng)已越來越廣泛.其Spartan-3E FPGA成為實現(xiàn)各種低成本數(shù)字消費(fèi)類系統(tǒng)的理想器件。這是從系統(tǒng)對上市時間的要求、可編程的特性以及集成度等方面考慮有其獨(dú)特的優(yōu)勢。即采用90納米工藝生產(chǎn)FPGA器件之后,F(xiàn)PGA器件進(jìn)一步降低成本,減少功耗和提高性能,低成本使FPGA成為中小批量生產(chǎn)的應(yīng)用器件,應(yīng)用范圍從早期的軍事、通信系統(tǒng)等擴(kuò)展到低成本消費(fèi)電子類等產(chǎn)品。
目前,常用FPGA來實現(xiàn)DSP嵌入系統(tǒng)與嵌入微處理器系統(tǒng),而本文主要介紹高性能、低成本的Spartan-3 FPGA實現(xiàn)的DSP嵌入系統(tǒng)及其Spartan-3系列器件在平板顯示器中的應(yīng)用。
2、關(guān)于用Spartan-3 FPG來實現(xiàn)的DSP嵌入系統(tǒng)
為什么利用Spartan-3 FPGA來實現(xiàn)DSP系統(tǒng),這應(yīng)首先了解Spartan-3 FPGA特性,即Spadan-3的各種功能及其在實現(xiàn)DSP時的用途。
2.1 Spartan-3 FPGA特性概述
2.11成本較低的FPGA
*Spartan-3平臺FPGA具有很高的性價比
經(jīng)過優(yōu)化的Spartan-3 FPGA架構(gòu),結(jié)合90納米處理技術(shù)和300毫米晶圓技術(shù),每片晶圓產(chǎn)出的完好芯片數(shù)足130納米/200毫米技術(shù)的五倍,其每邏輯單元成本(CPL)最低。
*完整的密度范圍
Spartan-3FPGA的密度范圍是從50,000系統(tǒng)門到5,000,000系統(tǒng)門,這使得低成本FPGA與的密度范圍得到了前所未有的擴(kuò)展;326MHz的系統(tǒng)時鐘率;三路電源干線內(nèi)核電壓1.2V、I/O電壓1.2~3.3V、輔助設(shè)備電壓2.5V.它為高容量,面向用戶的設(shè)備提供了非常低的成本與高性能邏輯方案。
*獨(dú)特的交錯排列I/O引腳技術(shù)
Spartan-3FPGA結(jié)合了90納米處理性術(shù)和交錯排列引腳技術(shù),可以提供、很低的每I/O成本(CPl)和最高的每門I/O數(shù)。
2.12 獨(dú)特的功能
*XCITE技術(shù)(數(shù)字控制阻抗技術(shù))使用
XCITE片上數(shù)字終端不再需要外部電阻器(見圖1(a)所示),這提供了大量的優(yōu)勢。 減少系統(tǒng)組件;提高系統(tǒng)可靠性;簡化電路板布局;降低制造成本;實現(xiàn)I/O最大帶寬;消除短反射噪音。
*選擇RAM分級存儲(即BlockRAM總位數(shù)高達(dá)1872kb)與擴(kuò)展內(nèi)存
Spartan-3 FPGA具有兩種類型的內(nèi)存,可以滿足不同的設(shè)計需求,即最大1.8Mb的真實雙端口塊RAM和最大520Kb的分布式RAM,其封裝形式為16位深×1位寬,可用作移位寄存器和FIFO。
*系統(tǒng)時鐘管理-具有4個DCM數(shù)字時鐘管理器
先進(jìn)的時鐘管理為高性能電路的設(shè)計者提供了更大的靈活性和更強(qiáng)的控制能力,見圖1(b)所示。最多四個數(shù)字時鐘管理器(DCM),并帶有9個外部輸出;8個預(yù)設(shè)的全球時鐘網(wǎng)絡(luò),即8根全局時鐘線路和豐富的尋址。
*嵌入式乘法器
專用的硅資源允許充分地自定義數(shù)據(jù)路徑,并獲得最佳DSP性能,見圖1(c)所示。 最多104個18×18乘法器,該乘法器模塊允許兩個18位二進(jìn)制作為輸入并計算輸出36位結(jié)果,見圖所示;而專用的進(jìn)位邏輯和高效級聯(lián),可實現(xiàn)更多功能。
*SelectIO-超級連接
每個I/O針腳都支持24個通用I/O標(biāo)準(zhǔn)中的任意一個,所以Spanan-3 FPGA可以最低的成本提供最靈活的連接,即可編程I/O技術(shù);支持PCI、HSTL、SSSL、超傳送(HyperTransport)、LVDS、RSDS、LVPECL、LVPEL、LVCMOS及更多。
2.14邏輯資源
豐富的邏輯單元,寄存器具有移位能力;18X18乘法器;JTAG邏輯與IEEEll49.1/1532說明兼容。
2.15 可以被Xilinx ISE(系統(tǒng)內(nèi)仿真器)開發(fā)系統(tǒng)支持。即綜合、映射、替代和尋址。
Spartan-3設(shè)備以最低成本提供高密度的FPGA,這使得它們非常適合于數(shù)量大、注重成本、以DSP為核心的應(yīng)用程序。
即嵌入式18×18乘法器(最多104個)、每秒最多3300億次乘法和累加運(yùn)算(MAC/s)、優(yōu)秀的高速DSP功能的并行實現(xiàn)能力、靈活的串聯(lián)架構(gòu),可實現(xiàn)成本/功能需求的最佳組合,見圖所示最大的成本/性能靈活性。預(yù)驗證的DSP算法和核心,即濾波器、檢波、變換、算法、FEC、相關(guān)器。
2.2 Spartan-3獨(dú)特的器件結(jié)構(gòu)
Spartan-3系列的結(jié)構(gòu)可由5個基本的可編程功能模塊組成,分別是可配置邏輯模塊(CLB),輸入/輸出模塊(IOB)、BlockRAM、乘法器模塊和數(shù)字時鐘管理器(DCM)。這些 小模塊的組成如圖2所示。一系列IOB模塊沿芯片的邊沿分布,圍繞著一組按規(guī)則排列的CLB模塊。如XC3S50型只有一個按列排列的BlockRAM嵌在陣列中,XC3S200型到XC3S2000小型有兩個按列排列的BlockRAM,而XC3S4000和XC3S5000有4個BlockRAM。每個列狀BLockRAM是由幾個18kbRAM模塊組成,每個模塊與專用乘法器有受.。DCM放在BLockRAM的外端。
由上所見, FPGA解決方案的可編程特性降低了新系統(tǒng)設(shè)計的內(nèi)在開發(fā)風(fēng)險。由于擁有諸如多個I/O槽、片上數(shù)字時鐘管理器、以及大量的Block存儲器和分布式存儲器等其它功能,Spartan-3也可以高效實現(xiàn)許多控制/膠合邏輯功能,有效減小了系統(tǒng)的尺寸、復(fù)雜度和成本。
2.3 Spartan-3 FPGA來實現(xiàn)的DSP嵌入系統(tǒng)
Spartan-3設(shè)備以最低成本提供高密度的FPGA,這使得它們非常適合于數(shù)量大、注重成本、以DSP為核心的應(yīng)用程序。
其嵌入式18×18乘法器(最多104個)、每秒最多3300億次乘法和累加運(yùn)算(MAC/s)、優(yōu)秀的高速DSP功能的并行實現(xiàn)能力、靈活的串聯(lián)架構(gòu),可實現(xiàn)成本/功能需求的最佳組合,見圖3(a)所示最大的DSP成本/性能靈活性。
預(yù)驗證的DSP算法和核心,即濾波器、檢波、變換、算法、FEC、相關(guān)器。而Spartan-3 FPGA 在高性能DSP應(yīng)用中,有各種不同F(xiàn)IR濾波器技術(shù)的適用情況,而FIR濾波器的算法為:
公式中n個系數(shù)與n個相應(yīng)的數(shù)據(jù)采樣相乘,再對內(nèi)積求和產(chǎn)生單個結(jié)果。系數(shù)數(shù)值將確定濾波器的低通/高通/帶通特性,可以利用不同的架構(gòu)和不同的方法來實現(xiàn)濾波器的功能。
由此可以說,因為FPGA是極高并行度的信號處理引擎,能夠滿足算法復(fù)雜度不斷增加的應(yīng)用要求,通過并行方式提供極高性能的信號處理能力。Xilinx的XtremeDSP模塊,如圖3(b)所示,使得Sparten3系列FPGA可以為高性能的數(shù)字信號處理提供理想的解決方案,達(dá)到傳統(tǒng)上由ASIC或ASSP完成的高性能信號處理能力??梢葬槍?shù)字通信和視頻圖象處理等應(yīng)用開發(fā)高性能的DSP引擎,也可在可編程DSP系統(tǒng)中作為預(yù)處理器或協(xié)處理器等。
由于嵌入式18×18乘法器(最多104個)適應(yīng)DSP應(yīng)用中的眾多的功能。提高了操作數(shù)輸入、中間積和累加器輸出的可編程流水線操作。
在復(fù)雜算法的數(shù)字處理系統(tǒng)中,系統(tǒng)要求的不斷提高和集成規(guī)模的不斷擴(kuò)大,使得系統(tǒng)結(jié)構(gòu)在設(shè)計的開始階段是不明確的,不可能直接用RTL(寄存器轉(zhuǎn)移級)設(shè)計方法進(jìn)行描述,所以將系統(tǒng)集成到數(shù)字芯片中。
采用數(shù)字技術(shù)對復(fù)雜算法進(jìn)行硬件實現(xiàn)時,首先遇到的問題是在結(jié)構(gòu)上并沒有預(yù)先的規(guī)定,因此需要首先對算法建模和仿真進(jìn)行優(yōu)化。與基于RTL針對結(jié)構(gòu)清晰的設(shè)計方法不同,算法設(shè)計把焦點(diǎn)從針對結(jié)構(gòu)的細(xì)節(jié)轉(zhuǎn)移到對設(shè)計的整體要求和行為,在最高的算法層次上考慮如何進(jìn)行設(shè)計,對系統(tǒng)的行為描述定義了設(shè)計要執(zhí)行的算法,不涉及或很少涉及實現(xiàn)細(xì)節(jié),因此行為描述比RTL描述要簡潔的多。
圖3(c)為易用的DSP設(shè)計流程所示, 糸統(tǒng)產(chǎn)生器的DSP設(shè)計環(huán)境,包含了系統(tǒng)數(shù)學(xué)建模、算法優(yōu)化和改進(jìn)、設(shè)計校驗和診斷及HDL產(chǎn)生和仿真等。而綜合DSP設(shè)計服務(wù)包括DSP設(shè)計等級、現(xiàn)埸工程服務(wù)。
3、Spartan-3系列器件在平板顯示器中的應(yīng)用
由于低成本和全功能的結(jié)合Spartan-3系列器件特別適合用于實現(xiàn)各種數(shù)字消費(fèi)類系統(tǒng)。使Spartan3器件在平板顯示器市場應(yīng)用中極具吸引力,即Spadan-3器件得到廣泛應(yīng)用的一個市場就是平板顯示器(FPD)市場,它是新潮流,值以此為例介紹。
首先要說明的是平板顯示器是新型消費(fèi)類電視中增長最快的部分,其市場上有三種平板顯示器,即LCD、等離子和投影電視(DLP)。
3.1 Spartan-3芯片在平板顯示器(FPD)應(yīng)用中的價值
Spartan-3 FPGA提供了FPD系統(tǒng)設(shè)計人員非常有用的各種功能。包括能夠高效實現(xiàn)DSP功能的嵌入式乘法器;在實現(xiàn)流水線或多通道功能時能夠支持高性能并減少資源利用率的移位寄存器;大量的存儲器資源;以及對顯示器市場普遍使用的差分I/O標(biāo)準(zhǔn)的內(nèi)在支持,那Spartan-3芯片功能在平板顯示器(FPD)應(yīng)用中的價值是什么,即Spartan-3的各種功能及其在實現(xiàn)DSP時的用途。
*Spartan-3芯片功能在平板顯示器(FPD)應(yīng)用中的價值:
嵌入式乘法器,能有效實現(xiàn)MAC(媒體存儲控制) FIR濾波器和其它DSP功能;
移位寄存器邏輯,能有效實現(xiàn)多通道功能;
BlockRAM和分布式RAM,為視頻線緩沖器,高速緩存標(biāo)志存儲器,用于DSP系數(shù)的便箋式存儲器、數(shù)據(jù)包、緩沖器、FIFO;
對RSDS的內(nèi)置支持,為無終端電阻的RSDS支持及其它特殊設(shè)計考慮之用。
*只有了解FPGA在FPD系統(tǒng)中究竟有是那些典型應(yīng)用(見圖所示4),才能將Spartan-3芯片可以以各種方式應(yīng)用于FPD設(shè)計之中。
3.2 FPGA在FPD系統(tǒng)中典型應(yīng)用分析(由圖所示4可知):
3.21前端預(yù)處理
在數(shù)字RGB信號饋入到主圖像處理引擎之前,通常需要進(jìn)行某種預(yù)外琿。這種預(yù)處埋可以是離散余弦變換、解密、或者是交叉/解交叉。通常FPGA呈與客戶的圖像處理ASIC或ASSP結(jié)合使用,一個普遍用途是在圖像縮放和解交叉過程中輔助ASSP。
3.22核心處理
盡管核心圖像處埋通常是由標(biāo)準(zhǔn)ASSP或定制ASIC完成,但有時也使用FPGA進(jìn)行定制處理.這些功能實例包括:Y校正、圖像縮放、邊緣檢測、尖銳度、對比度和幀緩沖器。有了Spartan-3器件提供的這些性能,可以在最小的芯片面積上實現(xiàn)多種功能。可以使用的某些專項技術(shù),包括:色空間轉(zhuǎn)換器、JPEG多媒體數(shù)字信號編解碼器、離散余弦變換器及MPEG視頻編碼器/解碼器。
可以多次使用FPGA與屏幕或者外部存儲器進(jìn)行接口.Spartan-3支持小擺幅差分I/O標(biāo)準(zhǔn)(如RSDS) ,也支持其它單端標(biāo)準(zhǔn)(如SSTL/HSTL) ,因而它可以在這些應(yīng)用中進(jìn)行使用。
FPGA也可以用于實現(xiàn)時序控制單元(TCON,見圖5所示),來控制水平和垂直像素顯示格式。TCON多少有點(diǎn)象一個垂直和水平顯示器計數(shù)器。Spartan-3架構(gòu)中的大量觸發(fā)器和內(nèi)置進(jìn)位鏈可以有效實現(xiàn)這個功能。同樣,由于具有充足的差分I/O通道,Spartan-3FPGA成為I/O密集型設(shè)計的有效架構(gòu)。圖5顯示了即使一個很小的Spartan-3E器件也具有足夠的差分I/O資源來驅(qū)動較大的LCD/等離子體屏幕。
4、結(jié)束語
Spartan-3E FPGA成為實現(xiàn)各種低成本數(shù)字消費(fèi)類系統(tǒng)的理想器件.該DSP嵌入式系統(tǒng)具有幾個共同的特性,即單一功能、軟硬件共存、實時反應(yīng)及嚴(yán)緊的限制. 目前Spartan-3E FPGA生產(chǎn)廠商己有Xilinx、Altera、Lattice等公司,本文僅以Xilinx公司的Spartan-3 FPGA為例作一說明。
在平板顯示器系統(tǒng)中,由于僅占用競爭FPGA所需面積的一小部分就能實現(xiàn)高性能DSP,Spartan-3E架構(gòu)更加高效有用。
到目前為止,Spartan-3 FPGA已成功地應(yīng)用于平板顯示器系統(tǒng)中來實現(xiàn)以下功能:
*SD/HD色空間轉(zhuǎn)換;
*4:4:4 to 4:2:2縮減像素采樣;
*數(shù)字RGB到USB讀卡器功能;
*時序控制和板RSDS驅(qū)動器;
*圖像壓縮/解壓縮
除上述之外,只要引入高性能、低成本的Spartan-3FPGA,就可以設(shè)計出用在大量數(shù)字消費(fèi)品中的可編程邏輯,例如視訊轉(zhuǎn)接盒、電纜調(diào)制解調(diào)器、HDTV、DVD-RW播放器、LCDTV、家庭多媒體服務(wù)器、家用網(wǎng)關(guān)及更多。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論