引言
世界正處于高科技下一波快速增長的開端, DSP已經(jīng)成為業(yè)界公認(rèn)的、將按指數(shù)增長的技術(shù)焦點(diǎn)。目前,大多數(shù)DSP設(shè)計(jì)已經(jīng)能在半導(dǎo)體生產(chǎn)商(如T1、ADI、Freescale等)提供的通用DSP芯片上實(shí)現(xiàn)。通用處理器的價(jià)格相對(duì)比較便宜,并且有高質(zhì)量和廉價(jià)的編程工具、方便快速實(shí)現(xiàn)DSP算法的支持,但開發(fā)人員更希望在原型創(chuàng)建和調(diào)試過程中能進(jìn)行重新編程。
圖1 通用DSP處理器的性能與通信領(lǐng)域需要的DSP處理性能的比較
速度的需要
現(xiàn)在,對(duì)電子系統(tǒng)的性能要求已經(jīng)超過了通用DSP處理器的能力。圖1顯示了由寬帶網(wǎng)絡(luò)市場驅(qū)動(dòng)的對(duì)DSP算法的性能需求與通用DSP處理器性能的差異??梢钥闯鐾ㄓ肈SP的性能容量與新的寬帶通信技術(shù)的需求之間的差距正以指數(shù)速率擴(kuò)大。
傳統(tǒng)上DSP開發(fā)者可以獲得的改變通用DSP處理器性能的唯一方法就是將DSP算法注入到ASIC中,以達(dá)到加速硬件的目的。然而這種ASIC的解決方法實(shí)現(xiàn)起來非常困難,而且在ASIC上實(shí)現(xiàn)DSP算法是以犧牲可重編程的靈活性為代價(jià)的,同時(shí)還需要大量的非重復(fù)設(shè)計(jì)費(fèi)用、漫長的原型初始化,以及購買大量昂貴的集成電路設(shè)計(jì)工具等。
隨著先進(jìn)的FPGA架構(gòu)如Xilinx Virtex-II和Altera Stratix-II的引入,DSP設(shè)計(jì)者可以獲得一種把通用DSP處理器的所有優(yōu)點(diǎn)與ASIC的先進(jìn)性能綜合在一起的新型硬件。這些新型的FPGA架構(gòu)可以優(yōu)化DSP的實(shí)現(xiàn),并能提供滿足現(xiàn)今電子系統(tǒng)所必需的處理能力。
FPGA的優(yōu)越性表現(xiàn)在它能允許DSP設(shè)計(jì)者做到“使結(jié)構(gòu)適應(yīng)算法”,設(shè)計(jì)者能夠根據(jù)實(shí)現(xiàn)系統(tǒng)性能的需要最大限度地使用FPGA內(nèi)部的并行資源。而在通用DSP處理器中資源是固定的,因?yàn)槊總€(gè)處理器只包含一些數(shù)量有限的類似乘法器一樣的基本運(yùn)算功能,設(shè)計(jì)者必須做到“使算法適應(yīng)結(jié)構(gòu)”,因而無法達(dá)到在FPGA中能夠獲得的性能。
圖2 全球DSP收入預(yù)測
半導(dǎo)體工業(yè)的亮點(diǎn)
圖2顯示了整個(gè)DSP市場和片內(nèi)算法市場(由FPGA、結(jié)構(gòu)化ASIC和ASIC幾部分組成)的年收入預(yù)測。其中,DSP片內(nèi)算法市場今后三年內(nèi)將以高于42%的年增長率增長,是整個(gè)半導(dǎo)體領(lǐng)域增長最快的部分。
現(xiàn)在DSP的設(shè)計(jì)團(tuán)隊(duì)所面臨的挑戰(zhàn)和二十世紀(jì)九十年代ASIC的設(shè)計(jì)者所面臨的類似—DSP開發(fā)組如何用目標(biāo)FPGA的設(shè)計(jì)方法代替通用DSP;如何去開發(fā)所需要的新的設(shè)計(jì)技巧;如何完善公司的設(shè)計(jì)流程;怎樣才能提出新的DSP算法的實(shí)現(xiàn)方法,同時(shí)又不危及當(dāng)前產(chǎn)品的開發(fā)計(jì)劃?;蛟S更重要的是,管理者怎樣才能夠使災(zāi)難性結(jié)果發(fā)生的可能性降低到最小。
AccelChip公司認(rèn)為DSP的未來取決于新型設(shè)計(jì)方法的采用,而這種方法必須能使公司滿足DSP市場對(duì)上市時(shí)間、成本的苛刻要求。和ASIC、FPGA的產(chǎn)生一樣,對(duì)DSP變革的方式就是采用真正的、自上而下的設(shè)計(jì)流程。
圖3 傳統(tǒng)的DSP設(shè)計(jì)流程
傳統(tǒng)自上而下的設(shè)計(jì)流程
傳統(tǒng)上,DSP設(shè)計(jì)被分為兩種類型的工作:系統(tǒng)/算法的開發(fā)和軟/硬件的實(shí)現(xiàn)。這兩類工作是由完全不同的兩組工程師完成,通常這兩個(gè)組在各自的接口之間被相對(duì)分開。算法開發(fā)者在不考慮系統(tǒng)的結(jié)構(gòu)或軟/硬件實(shí)現(xiàn)細(xì)節(jié)的情況下使用數(shù)學(xué)分析工具來創(chuàng)建、分析和提煉所需要的DSP算法;系統(tǒng)設(shè)計(jì)者則主要考慮功能的定義和結(jié)構(gòu)的設(shè)計(jì),并保持與產(chǎn)品說明及接口標(biāo)準(zhǔn)相一致。軟/硬件設(shè)計(jì)組采用系統(tǒng)工程師和算法開發(fā)人員所建立的規(guī)范進(jìn)而完成DSP設(shè)計(jì)的物理實(shí)現(xiàn)。
一般來講,細(xì)則規(guī)范可劃分成很多小的模塊,每個(gè)小模塊分配給各個(gè)成員,他們必須首先理解屬于自己的模塊的功能。
如果DSP算法的目標(biāo)是FPGA、結(jié)構(gòu)化ASIC或SoC,那么首要任務(wù)就是用Verilog或VHDL等硬件描述語言來建立一個(gè)RTL模型。這就需要實(shí)現(xiàn)工程師了解通信理論和信號(hào)處理以便明白系統(tǒng)工程師提出的細(xì)則規(guī)范。建立一個(gè)RTL模型和仿真測試平臺(tái)常常需要花費(fèi)一至兩個(gè)月的時(shí)間,這主要是因?yàn)樾枰斯を?yàn)證RTL文件和MATLAB模型的準(zhǔn)確匹配。RTL模型仿真環(huán)境一經(jīng)建立,實(shí)現(xiàn)工程師就要同系統(tǒng)工程師和算法開發(fā)人員進(jìn)行交流,共同分析DSP系統(tǒng)硬件實(shí)現(xiàn)的性能、范圍和功能。
由于系統(tǒng)工程師在算法開發(fā)階段無法看到物理層設(shè)計(jì),因此通常會(huì)需要修改原來的算法和系統(tǒng)結(jié)構(gòu)、更新文字性規(guī)范、修改RTL模型和測試平臺(tái)以及重新仿真,這些過程往往需要連續(xù)進(jìn)行多次,直到DSP系統(tǒng)的性能要求能夠由硬件實(shí)現(xiàn)為止。接著,實(shí)現(xiàn)工程師使用邏輯綜合執(zhí)行一種標(biāo)準(zhǔn)的FPGA/ASIC自上而下的設(shè)計(jì)流程,從而將RTL模型映射到門級(jí)網(wǎng)表,并且使用物理設(shè)計(jì)工具在給定的FPGA/ASIC器件中設(shè)置布局網(wǎng)表。圖3給出了基本的片內(nèi)DSP算法的設(shè)計(jì)流程,主要由算法開發(fā)和硬件實(shí)現(xiàn)兩個(gè)相對(duì)分開的部分組成。
如上所述,只有花費(fèi)很長的時(shí)間人工建立基于文字規(guī)范的RTL模型,才能避免因兩個(gè)設(shè)計(jì)域(design domains)之間缺乏聯(lián)系而造成設(shè)計(jì)開發(fā)進(jìn)程的延遲,然而對(duì)這一設(shè)計(jì)工程更大的擔(dān)心是DSP算法的物理設(shè)計(jì)是基于硬件工程師對(duì)文字規(guī)范主觀的理解。
硬件工程師中缺乏DSP專家,因此常常會(huì)因?yàn)閷?duì)要求功能的曲解而造成災(zāi)難性的后果。隨著DSP復(fù)雜度的增加,在人工建立RTL模型的過程中,產(chǎn)生錯(cuò)誤已司空見慣。由于相同的錯(cuò)誤被寫入仿真測試平臺(tái)中,因此仿真中即便出現(xiàn)多次錯(cuò)誤也無法被捕捉到,只有到了原型設(shè)計(jì)階段,硬件設(shè)計(jì)錯(cuò)誤才會(huì)被發(fā)現(xiàn)。
改進(jìn)方法
FPGA/ASIC設(shè)計(jì)人員采用真正意義上的自上而下的設(shè)計(jì)方法,最重要的好處之一就是設(shè)計(jì)數(shù)據(jù)管理的改善。但是當(dāng)ASIC和FPGA采用和現(xiàn)有DSP設(shè)計(jì)相同的自下而上的設(shè)計(jì)方法時(shí),由于缺乏單一且有效的設(shè)計(jì)數(shù)據(jù)源,將會(huì)引入許多錯(cuò)誤。因此,在當(dāng)今的DSP設(shè)計(jì)中,各個(gè)獨(dú)立的設(shè)計(jì)部門有義務(wù)使MATLAB模型和人工創(chuàng)建的RTL模型及測試平臺(tái)保持同步。可是如前所述,這兩個(gè)團(tuán)隊(duì)很少交流,而且通常在地理位置上也相距很遠(yuǎn)。所以管理這些數(shù)據(jù)變得非常困難。
CoWare在其SPW工具包里提供了一種模塊同步問題的解決方案:將輔助模擬設(shè)計(jì)方法的概念引入硬件設(shè)計(jì)系統(tǒng)中,從而達(dá)到從細(xì)則規(guī)范到實(shí)現(xiàn)的轉(zhuǎn)變。在這種方法中,CoWare 建議DSP設(shè)計(jì)組使用他們具有DSP硬件模型庫的硬件設(shè)計(jì)系統(tǒng)創(chuàng)建一個(gè)可以執(zhí)行的規(guī)范,從而取代對(duì)DSP規(guī)范和算法進(jìn)行詮釋的編程語言。
這種方法在消除硬件工程師開發(fā)RTL模型時(shí)造成的曲解方面很有優(yōu)勢,但是,它對(duì)確保設(shè)計(jì)數(shù)據(jù)同步方面還存在不足。由于每次修正模塊都需要人工修改可執(zhí)行規(guī)范,特別在現(xiàn)今復(fù)雜度不斷增加和產(chǎn)品上市時(shí)間越來越短的雙重壓力下,發(fā)生錯(cuò)誤的可能性將會(huì)大幅增加。
真正自上而下的
DSP設(shè)計(jì)方法
Accelchip公司的DSP合成工具使用VHDL或Verilog硬件描述語言能夠直接讀出MATLAB模型并自動(dòng)輸出可以合成的RTL模型和仿真測試平臺(tái)。通過連接DSP的兩個(gè)設(shè)計(jì)域,給DSP設(shè)計(jì)小組在設(shè)計(jì)的人力和時(shí)間、曲解的消除、高成本的重復(fù)工作、硬件實(shí)現(xiàn)的自動(dòng)驗(yàn)證,以及系統(tǒng)設(shè)計(jì)人員和算法開發(fā)人員在開發(fā)的初期階段進(jìn)行結(jié)構(gòu)探索時(shí)所需要的能力等方面帶來了很大的簡化。
Accelchip使硬件設(shè)計(jì)人員不需要人工創(chuàng)建RTL模型和仿真測試平臺(tái),從而縮短了開發(fā)周期,減少了硬件實(shí)現(xiàn)所需要設(shè)計(jì)人員的數(shù)量。而且自動(dòng)建立的RTL模型是目標(biāo)FPGA器件的“結(jié)構(gòu)化意識(shí)”,而不是簡單的、繼承下來的RTL模型。建立RTL模型后,其高級(jí)綜合工具將創(chuàng)建一個(gè)邏輯綜合的最佳實(shí)現(xiàn),以確保所產(chǎn)生的門級(jí)網(wǎng)表具有FPGA器件的優(yōu)點(diǎn)。
例如,DSP算法在不同供應(yīng)商提供的FPGA器件列中實(shí)現(xiàn),其性能和范圍有很大的差異,這是因?yàn)閷?duì)于不同設(shè)備來講,結(jié)構(gòu)、邏輯資源、布局資源以及布局方法都是不同的。通過“結(jié)構(gòu)化意識(shí)”,Accelchip為DSP設(shè)計(jì)小組的目標(biāo)FPGA器件提供了很好的物理實(shí)現(xiàn)。同時(shí)通過提供容易使用的、自動(dòng)的從MATLAB到硬件實(shí)現(xiàn)的直接路徑,使得DSP系統(tǒng)設(shè)計(jì)人員和算法開發(fā)人員能夠在設(shè)計(jì)開發(fā)初期定義他們的算法。進(jìn)而算法開發(fā)人員能夠很快地將MATLAB設(shè)計(jì)轉(zhuǎn)換成綜合了性能、范圍、成本和功率優(yōu)點(diǎn)的目標(biāo)FPGA的門級(jí)網(wǎng)表。有了來自算法物理實(shí)現(xiàn)的初期或開發(fā)周期中的反饋,就意味著設(shè)計(jì)流程后期所做的重復(fù)更少,再一次節(jié)省了寶貴的時(shí)間和人力。
結(jié)語
DSP技術(shù)的重要性日益增加,對(duì)其算法的性能要求遠(yuǎn)遠(yuǎn)超過了通用性DSP處理器的能力,從而促使DSP實(shí)現(xiàn)小組去尋找硬件的解決方法。FPGA給DSP實(shí)現(xiàn)提供了理想的平臺(tái),Accelchip提供的真正的自上而下的設(shè)計(jì)方案無縫地融入了DSP的設(shè)計(jì)環(huán)境,從而確保了在轉(zhuǎn)向真正的自上而下的DSP設(shè)計(jì)方法時(shí)管理風(fēng)險(xiǎn)的最小化。
- 設(shè)計(jì)流程(8006)
- 自上而下(5563)
相關(guān)推薦
DSP的實(shí)現(xiàn)方法
DSP設(shè)計(jì)流程是什么?
DSP設(shè)計(jì)流程有哪幾個(gè)步驟?
物理綜合與優(yōu)化的優(yōu)點(diǎn)有哪些?流程是怎樣的?
DMA串口空閑中斷的實(shí)現(xiàn)流程是怎樣的
FPGA 教程|PDS 軟件使用流程
FPGA培訓(xùn)—基于FPGA的DSP系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
IC設(shè)計(jì)流程介紹
RT-Thread smart內(nèi)存虛擬地址到物理地址的轉(zhuǎn)換是一個(gè)什么樣的流程
[討論]FPGA培訓(xùn)—基于FPGA的DSP系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
【社招】DSP軟件工程師(物理層算法實(shí)現(xiàn)方向)
什么是以太網(wǎng)物理層?Ethernet物理層有哪些功能?
仿照firefly的方式在device/rockchip/rk3399下直接添加新的Product/Device
在IC物理設(shè)計(jì)中應(yīng)用層次化設(shè)計(jì)流程Hopper提高產(chǎn)能
基于LabVIEW開發(fā)環(huán)境實(shí)現(xiàn)DSP設(shè)計(jì)
如何使用DCNXT實(shí)現(xiàn)物理綜合?
如何在Talus下物理實(shí)現(xiàn)SoC芯片結(jié)構(gòu)?
怎么實(shí)現(xiàn)基于DSP和SOPC數(shù)字信號(hào)發(fā)生器的設(shè)計(jì)?
用 TCL 定制 Vivado 設(shè)計(jì)實(shí)現(xiàn)流程
請(qǐng)問一下高清電視音頻解碼的定點(diǎn)DSP怎么實(shí)現(xiàn)?
請(qǐng)問如何通過物理綜合與優(yōu)化去提升設(shè)計(jì)性能?
誰有以CCS5為平臺(tái)的DSP開發(fā)流程資料?
通過FPGA實(shí)現(xiàn)溫控電路接口及其與DSP通信接口的設(shè)計(jì)
采用DSP實(shí)現(xiàn)網(wǎng)絡(luò)通信接口設(shè)計(jì)
采用DSP實(shí)現(xiàn)網(wǎng)絡(luò)通信接口設(shè)計(jì)
Agent Technologies實(shí)現(xiàn)應(yīng)用流程再造

基于DSP的SPWM實(shí)現(xiàn)

基于DSP實(shí)現(xiàn)的無差拍控制逆變器

基于SOPC的DSP系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

基于DSP的寬頻逆變算法的研究與實(shí)現(xiàn)

基于串口實(shí)現(xiàn)DSP程序的在線編程

FPGA實(shí)現(xiàn)DSP應(yīng)用

DSP無線電調(diào)制器的設(shè)計(jì)與實(shí)現(xiàn)

基于DSP 的視頻PCI 采集壓縮卡的實(shí)現(xiàn)

基于RTW 的DSP 控制系統(tǒng)研究

實(shí)現(xiàn)密鑰的物理安全

Xilinx DSP Primer 中文教程

DSP互連分析與FPGA實(shí)現(xiàn)

快速小波變換的定點(diǎn)DSP實(shí)現(xiàn)


基于DSP實(shí)現(xiàn)可并機(jī)的逆變電源


#硬聲創(chuàng)作季 #DSP DSP基礎(chǔ)實(shí)驗(yàn)-3.2.1 定點(diǎn)數(shù)的運(yùn)算及實(shí)現(xiàn)-1



#硬聲創(chuàng)作季 #DSP DSP基礎(chǔ)實(shí)驗(yàn)-3.2.1 定點(diǎn)數(shù)的運(yùn)算及實(shí)現(xiàn)-2



一種采用FPGA/DSP的靈巧干擾平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)


FPGA/EPLD的自上而下設(shè)計(jì)方法


基于DSP的TETRA話音編碼設(shè)計(jì)與實(shí)現(xiàn)

融合DSP設(shè)計(jì)與FPGA硬件實(shí)現(xiàn)

Altera演示業(yè)界首款FPGA的浮點(diǎn)DSP設(shè)計(jì)流程

基于DSP的閉環(huán)SPWM的實(shí)現(xiàn)方法

Alter FPGA的設(shè)計(jì)流程以及DSP設(shè)計(jì)

基于Arria V和Cyclone V精度可調(diào)DSP模塊的高性能DSP應(yīng)用與實(shí)現(xiàn)

SVPWM在變頻調(diào)速系統(tǒng)中的應(yīng)用及其DSP實(shí)現(xiàn)

基于DSP和SVPWM控制的變頻調(diào)速系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)

空間電壓脈寬調(diào)制SVPWM的原理及DSP的實(shí)現(xiàn)

基于DSP和SVPWM控制的變頻調(diào)速系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)

基于總線的多DSP交叉調(diào)試器的設(shè)計(jì)與實(shí)現(xiàn)

基于FPGA和DSP的圖像多功能卡的設(shè)計(jì)與實(shí)現(xiàn)

一種基于DSP的多核SOC中斷擴(kuò)展設(shè)計(jì)與實(shí)現(xiàn)

基于FPGA和DSP網(wǎng)絡(luò)單向時(shí)延測量系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)_唐旭

基于DSP運(yùn)動(dòng)目標(biāo)檢測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

基于DSP開發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

基于Costar_的異構(gòu)多核DSP設(shè)計(jì)與實(shí)現(xiàn)

多渦卷混沌吸引子在DSP上的實(shí)現(xiàn)及CCSLink的應(yīng)用

DSP最小系統(tǒng)設(shè)計(jì)及基本算法的實(shí)現(xiàn)

DSP與單片機(jī)串口通信的設(shè)計(jì)與實(shí)現(xiàn)

Vivado設(shè)計(jì)之Tcl定制化的實(shí)現(xiàn)流程


FPGA的開發(fā)流程和物理含義和實(shí)現(xiàn)目標(biāo)詳解


如何在Vivado中應(yīng)用物理優(yōu)化獲得更好的設(shè)計(jì)性能

如何進(jìn)行DSP的軟件編程及使用算法實(shí)現(xiàn)的學(xué)習(xí)教程說明

用Tcl實(shí)現(xiàn)Vivado設(shè)計(jì)全流程

交流采樣技術(shù)及其DSP設(shè)計(jì)實(shí)現(xiàn)

ASIC物理設(shè)計(jì)流程概述


廣凌全流程采購管理系統(tǒng):能實(shí)現(xiàn)全流程監(jiān)管留痕嗎?


PCB行業(yè)應(yīng)如何實(shí)現(xiàn)全流程追溯?


Innodb中的Btree實(shí)現(xiàn)(一)·引言&insert篇


評(píng)論