帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
以FPGA電路板建構ASIC原型
節省驗證時間與開發成本

【作者: Cherman Hung】   2006年08月07日 星期一

瀏覽人次:【5105】

根據一項於2004年12月所進行的調查,詢問全球超過兩萬名的開發人員,關於他們如何利用硬體輔助特殊積體應用電路驗證(ASIC verification)。結果發現,目前有三分之一的ASIC設計採用FPGA原型作為驗證方法。


即使ASIC設計的尺寸與複雜度不斷增加,FPGA不論在容量與效能近來都有更進一步的發展,意味著只要利用單一的FPGA,前述設計中的三分之二都可以模型化。然而,仍有三分之一的設計(也就是所有ASIC設計的九分之一)需要多FPGA原型電路板。


不久之前,開發設計的ASIC小組所採用的主要解決方案,仍是在內部自行發展專用的多FPGA原型電路板。不過,時至今日,利用現成的多FPGA原型電路板,再輔以適當的設計工具,就能節省數星期,甚至好幾個月的驗證時間,更不用說動輒上萬元的非經常性工程(NRE)費用。


本文將首先討論主要的ASIC驗證技術,接著探討自行製作多FPGA原型電路板和使用現成產品之間的優劣比較。最後,不管是利用內部發展或現成的多FPGA原型電路板進行驗證,凡用來分割與同步大型設計的尖端設計工具,也將在文中詳加介紹。


各式各樣的驗證技術

時下應用在手機、通訊、繪圖次系統和訊號處理裝置等高階的ASIC,通常含有多顆CPU和DSP核心,再加上多硬體加速器、週邊、介面和記憶體管理核心(為了討論方便,在此使用的ASIC一詞,假定包含了ASSP與SoC裝置)。因此,在設計過程中搶先發展、掌握、整合、除錯和驗證任何內建的軟體內容,才能贏得晶片市場的先機。


不論是ASIC RTL本身或放在任何內嵌軟體中,完整的ASIC RTL功能驗證,都是ASIC設計過程中耗時最多,最困難的一環。資料顯示目前有70%的ASIC設計需要再修正(re-spin)。再修正除了所費不貲之外,還可能導致整個案子錯失市場先機;更甚者,損害公司名譽及財務狀況。目前市場上有三種主要驗證方式供ASIC設計人員選擇,包括軟體模擬、硬體仿真模擬和FPGA原型。


軟體模擬

軟體模擬的使用相當廣泛,不過即使在非常高階(相對昂貴)的電腦平台上操作,比起實際的ASIC硬體,慢了約六到十個級數(orders of magnitude),是個耗時超久又極無效率的方法。如果換算成實際的速度,整個系統的軟體模擬速度,基本上只有幾赫茲,也就是設計裡面的系統時脈,每即時秒(second of real time)只能循環幾次。事實上,這代表大量的軟體驗證只能在設計上的一小部分執行。


硬體仿真模擬

硬體模擬則是另一個驗證選擇,不過仍然比實際ASIC硬體慢上至少三個級數,這是因為大量多工(multiplexing)降低驗證速度,最後只剩下約500KHz到2MHz。再者,此法極為昂貴,無論預算或資源均耗費甚多(視模擬器大小而定,每個等效閘門耗費25分到1美元不等的費用)。因此,設計人員需要的是一個風險低費用省,又能很快將產品推上市的方法。


FPGA原型

為因應許多情況的實際需求,驗證設計的腳步必須加速。例如影像處理晶片,部分驗證牽涉到評估影像輸出流的主觀品質。同理,在嵌入式軟體的環境中,驗證硬體更需要極致高速。而多FPGA原型電路板的速度在10到80MHz之間,相當(或可比擬)即時ASIC速度(即時送入,即時回應),正符合上述的需求。若比較設計一片客製化電路板和使用現成電路板,後者如與適當的設計工具相互搭配,可大幅縮短數星期、甚至數月的驗證時間和節省成千上萬的NRE費用(換算起來,實際費用相當於一個等效門一分美元以下)。


另外,還有一項值得關注的重點。除了提供軟體發展的平台與硬體、軟體的驗證之外,設計ASIC的公司還得儘早提供接觸應用此設計、功能完整之產品的機會,例如,可能需準備示範硬體參加電腦展。


完全量身訂作v.s現有原型電路板

過去約三到五年之間,所有多FPGA原型電路板都是針對自身需要而量身訂作。反觀今日,已有多FPGA原型電路板廠商正在蓬勃成長中,以下茲提供實際市場數字作為參考。


傳統的硬體模擬市場目前一年約為1億美元。相對的,這幾年來,現成多FPGA原型電路板一年的市場值,成長為7500萬美元左右。也就是說,現成的多FPGA原型電路板產業已悄悄地成長為硬體模擬市場的四分之三。


工程師的天性認為,平凡無奇就無法盡如理想,因此工程師常常特別希望建立自己的原型電路板,因為他們認為如此一來效能會更好,也相信更容易使用並與真實狀況接軌、介面較符合所需、降低計劃成本、縮短上市時間等。不過,實際情況是否如此,接下來就讓我們一一檢視這些認知:


效能更佳

在牽涉到超過二個或三個以上的FPGA原型電路板的案子裡,客製電路板效能不太可能超過現成製品,因為設計這類的電路板需要洗鍊的知識與專業,而通常只有歷經多年、數代設計經驗的洗禮,才能累積出這些經驗與智慧。


設計容易

如果一個ASIC設計只配合單一FPGA,設計和完成客製電路板相對簡單。但如果ASIC設計需要二個FPGA,問題就變得複雜多了;而當用到三個或以上的FPGA,事情的複雜度更呈等比級數遞增,花費的心思更難以計數。


介面簡單

假設一個ASIC設計只配合單一FPGA即可,必然有特別的原因,才需要量身訂作特製的電路板。原因不外乎是,這個FPGA要與同一張卡上的任何介面邏輯搭配。然而,在多FPGA原型電路板的解決方案中,早就解決這類問題。口碑良好的現成電路板,通常一定會簡化介面的問題,好讓設計者把心力放在特殊的介面卡設計上。


降低成本

設計與完成高階的多FPGA原型卡需要一組為數眾多的專業設計工程師和佈局工程師,反比單純地採購現成電路板耗費更多成本。


縮短上市時間

即使是擅長設計與製作多FPGA原型電路板的公司,創造一塊高階的電路板,無論再怎麼加快速度,都得耗費九個月的時間(假設多組工程師與佈局工程師輪班作業),遑論非專業的小組。所需時間絕對更長,更容易造成作業進度落後,錯失市場先機。


Dini Group是原型計劃夥伴(Partners in Prototyping Program)的成員之一。下文以Dini Group的DN8000K10板為例,即可了解設計多FPGA原型電路板的複雜度,如(圖一)。


DN8000L10是一塊USB 2.0邏輯原型系統,可容納2到16個高容量的FPGA。圖表展示的是最高規格配置,據此電路板為原型完成的設計,保守值達2400萬個ASIC等效邏輯閘。


整個DN8000K10的設計與製作工程約耗費九個月,其中,六組佈局工程師每天輪二班,日以繼夜連續工作好幾個月,最後才完成這塊使用頻率350MHz的低電壓差動訊號(LVDS)進行晶片對晶片溝通,28層的電路板。在引腳數量受限的設計當中,每個LVDS引腳對(pin pair)支援整合的SERDES,最高可提供10:1的多工作業。


在如此複雜的情況下,還必須將雜訊和訊號完整度納入考量,就更要有高度的知識素養與專業背景。這類水準的電路板需完整的一到二個級數,超過時下先進的自動路由器處理能力,以致於難以提供一個圓滿的解決方案。如此一來,每個引腳都得以人工選取,每個軌道都得以手工連結,自動路由完全英雄無用武之地(除了電路板周邊四周之外)。


手動分割與同步多FPGA設計

在手動分割的環境下,原始RTL程式碼內任何以ASIC為中心的概念,如門控時鐘(gated-clocks)、Synopsys的DesignWare範例等等,分割之前必須手動轉換成FPGA等值(FPGA equivalent)。撇開其它問題不論,這樣一來,會立刻產生二股獨立的編碼串流(code stream),可能喪失同步性,最後導致FPGA原型與預期完成的ASIC之間出現功能差異。


接下來則是分割過程本身,這時工程師試著集結不同群組的功能區塊(模組),每個群組預定於一個個不同的FPGA完成。這類群組(分割)以往都是邏輯閘層完成,不過近來有些流程在RTL層即支援群組,完成的群組會逐一通過傳統的FPGA合成工具。只有在這個時候,才能真正了解不同FPGA實際的資源利用狀況。


工程師的盲目作業,是前述二種情況所遭遇的問題之一。他們無視於不同群組的區域和資源影響,重複作業,以致浪費時間。首先,工程師抱著「區塊A將可能消耗數量xxx的資源,而區塊B可能需要數量yyy的資源」的守則,算出推估值,接著再用這些推估值導出一堆的群組指令,然後合成(以RTL分割為例),分析結果,再來就是以為數眾多的取消/恢復群組的指令進行評估不同成品。


而整個工作又因為這類原型通常受限於FPGA上的輸入/輸出(I/O)引腳,變得更加混亂,很容易消耗裝置上的I/O資源,同時利用到的內部邏輯資源量卻佔很小部份,可謂毫無效率的解決方案。為了克服這些I/O限制,可能需要一起多路傳輸I/O群組,以及/或在多FPGA中複製同樣的邏輯區塊(為了達到特定的效能目標,有時也需要進行邏輯複製)。


假設每個這類原型使用的FPGA大概具有超過1000個引腳,利用電子表格管理連結的方法,動輒包含成千上萬個儲存格。再者,追蹤對應到每個FPGA的區塊與追蹤連結矩陣(不同FPGA之間的連結)無異是浩大工程,不僅耗費資源、時間,還容易出錯。


自動分割與同步多FPGA設計

Certify RTL Prototyping工具是多FPGA分割與同步工具。有趣的是,當Certify軟體在1990年底推出之際,市面上並沒任何現成的多FPGA原型電路板,以輔助ASIC設計小組。因此,Certify當時被認為是ASIC小組自行設計特製多FPGA原型電路板的得力幫手。


藉由Certify軟體,工程師定義電路板上FPGA的數目與類型,跟彼此間的互聯狀況。這些資料最後用於多FPGA上的ASIC設計,自動分割RTL,並合成已分割的RTL成為設定檔(configuration file),用來編寫FPGA。


只要工程師使用Certify工具定義電路板的基礎結構,軟體輸出的訊息之一為網路表(netlist),內容描述FPGA和彼此之間的連結。而這個由Synplicity定義,Verilog描述的網路表格式,已經變成眾所週知的*.vb(Verilog Board)格式。


目前每一現成多FPGA原型電路板廠商推出的電路板,都具備對應的*.vb檔案。*.vb檔案會成為輸入訊息讀入Certify軟體,以定義每個電路板結構。


Certify工具可以和Verilog、VHDL與混合語言設計併用。工作流程中第一個要素就是,利用Certify軟體自動轉換任何特定的ASIC編碼,成為等效的FPGA結構。在市面上現成的多FPGA原型電路板中,內有記載主要經銷商產品的表單,使用者只需下拉表單,告訴軟體使用的電路板類型即可(另一方面,如果電路板是內部量身打造的,Certify工具有辦法在作業中虛擬一個多FPGA電路板,成為設計真正電路板的基礎)。接下來,使用Certify軟體分割多FPGA上的設計,如(圖二)。


《圖一 多FPGA原型流程圖(展示三個FPGA)》
《圖一 多FPGA原型流程圖(展示三個FPGA)》

HDL Analyst工具和Certify軟體之間的整合密切,它會自動為設計產生技術獨立的圖形檢視(graphical view),呈現格式為高階階層電路區塊圖(hierarchical block diagram)—接著合成—對應邏輯閘電路原理圖(schematics)。HDL來源碼以及區塊層與邏輯閘電路原理圖之間完整的雙向與交叉探測,Certify與HDL Analyst工具同樣予以支援,以便設計師快速瀏覽設計四周,定位訊號與邏輯功能。


除了各式各樣其它的設計檢視之外,Certify軟體以圖形化方式,呈現製作原型電路板的FPGA,如(圖三)。每個圖形元件可以二種相關的測量類型表現:其一反映裝置的I/O利用狀況,另一則是區域/資源利用狀況。


根據對I/O的認識,還有FPGA和FPGA之間路由資源相關的邏輯資源,Certify軟體能夠自動進行引腳分派,利用先進的Quick Partitioning Technology(QPT)自動執行第一級分割。另一種方法則是使用者輕鬆拖曳編碼區塊,放在不同的FPGA上,即可互動地執行分割。或者是二種方法混合應用。


Certify軟體內建一連串的工具協助分割作業。舉例而言,分割之後的軟體分析結果,提供使用者選擇應用Certify Pin Multiplexing(CPM)的機會,協助多組訊號共同進行多工傳輸,減緩裝置上I/O資源的負擔。


《圖二 Certify Interface(右上為圖形化FPGA介面)》
《圖二 Certify Interface(右上為圖形化FPGA介面)》

除了協助多裝置的邏輯複製之外,Certify工具也具備位元截割(bit-clicing)處理的功能,將寬廣的資料路徑(data-path)結構切割成較小的單位。另外,Certify軟體還有複雜的「拉鍊」功能,分解大的區塊成為較小的碎片(最後指定這些碎片到不同的FPGA上)。


當預定的分割完成後,加以命名並存檔,將方便使用者管控不同的分割,是另一項非常有用的功能。這項功能可以和Certify軟體的衝擊分析併用,在置放與/或移動一片多FPGA板的有效區域和I/O相關之邏輯時,將協助使用者了解衝擊狀況。此外,使用者不需要思考此邏輯應該指定到哪個FPGA,衝擊分析會擷取出特定資訊,作為分割的參考。


一旦分割執行完畢,接著使用Certify軟體合成不同FPGA裝置上的編碼流(code stream)。Certify工具採用的基礎合成技術,和Synplify Pro FPGA的合成引擎相同。例如Certify軟體完全利用Synplicity Best的演算法,在執行主要的合成步驟之前,分析RTL並完成高階最佳化。Certify工具則擁有Synplify Pro軟體所有的合成功能,例如資源分享、暫存器調節(register balanceing)、重新定時(retiming)、複製與重新合成(re-synthesis)等。


Certify軟體很單純地視不同的FPGA為設計層次上額外的一層,為此程序的主要重點。也就是說,該工具能提昇效能將計時通道(timing path)最佳化,甚至通道橫跨多個FPGA時亦然(Certify軟體同時編撰分時報告,在硬體程式化之前,通知設計者原型能夠達到的效能)。


結語

創造出在系統中全速運作的ASIC設計原型,其必要性日益增加。如欲達到所需效能,最經濟的方式便是架構FPGA原型。


運用多FPGA原型電路板進行驗證逐漸尉為風潮,已經有九分之一的ASIC設計採取這類方式,而其中使用現成原型電路板更漸漸普及,市場上重要的供應商包括The Dini Group、Hardi Electronics、Gidel與Altera等,他們都是原型計劃的合作夥伴。


和自製原型電路板相較之下,連結Certify RTL Prototyping軟體,原型電路板的效能更高、價格更低、更縮短上市時間。現成的多FPGA原型電路板與Certify軟體結合後,讓設計小組能在真正的硬體上測試,不管是從裝置面或系統面皆可,有利於在設計過程中早期發現難以偵測的問題,將ASIC專案的驗證時間縮短數月之多。而儘早完成的硬體原型就能用於軟體發展與早期系統整合上,進一步改善上市時間。(作者目前任職於Synplicity Taiwan FAE)


延 伸 閱 讀

本文介紹了利用現代FPGA架構的先進性能管理PCB複雜性的新方法,即可以減少PCB佈線的擁塞,減少設計反覆、重新設計次數以及降低層和元件的數量。同時也概述了利用FPGA的靈活I/O特性降低PCB製造成本的方法。相關介紹請見「利用先進的FPGA I/O功能降低總體PCB製造成本 」一文。

無論是網路產品、通訊設備、工業系統,還是汽車電子系統,這些電子系統都普遍採用現場可程式閘陣列(FPGA)晶片,進而顯示這種晶片在實際應用時具有高度的靈活性,加上 FPGA 具有可重新配置的高智慧特性,因此輕易成為上述各種電子產品所不可缺少的基本元件。你可在「FPGA 所需的電源供應:深入分析」一文中得到進一步的介紹。

系統單晶片(SoC)可採用現場可程式閘陣列(FPGA)或專用積體電路(ASIC)兩種方式實現。目前業界通常將處理器、邏輯單元和記憶體等系統嵌入FPGA中構成靈活的SoC解決方案,本文以Virtex-II系列Platform FPGA為例,說明採用FPGA方案進行數位顯示系統設計所具有的靈活、快速和低成本等特性。在「採用基於FPGA的SoC進行數位顯示系統設計」一文為你做了相關的評析。

市場動態

據In-Stat報告指出,由於應用範圍的不斷擴大,現場可編程門陣列(FPGA)市場正在蓬勃發展。預計全球FPGA市場的出貨總值將從2005年的19億美元達到2010年的27.5億美元,其中大部分收入將來源於小規模用量市場。總體而言,低用量的FPGA產品與其價格直接相關,而價格又和其複雜度直接相關,一片FPGA的價格可以不到100美元也可能是幾千美元。相關介紹請見「2010年FPGA市場預計將達27.5億美元」一文。

聯電與大客戶-全球可編程邏輯解決方案領導供應商Xilinx,共同宣佈,雙方之長期策略合作關係,將拓展至65奈米及更先進之製程技術。雙方已共同研發出內含實際可編程邏輯電路的新一代65奈米Xilinx FPGA原型晶圓,目前正由聯電位於南科的十二吋晶圓廠進行試產。你可在「聯電、智霖 攜手65奈米」一文中得到進一步的介紹。

明導國際(Mentor Graphics)宣佈其先進合成產品現已支援Xilinx新推出的Virtex5 FPGA。兩家公司在過去一年密切合作,確保即將推出的Xilinx ISE設計套件和Mentor Precision Synthesis軟體支援所有的Virtex-5 LX元件。Mentor Graphics和Xilinx現已開始供應初期試用軟體給需要的客戶。在「Mentor Graphics合成工具支援Xilinx Virtex-5 FPGA」一文為你做了相關的評析。

相關文章
FPGA開啟下一個AI應用創新時代
專攻低功耗工業4.0應用 可程式化安全功能添防禦
以設計師為中心的除錯解決方案可縮短驗證時間
移動演算法 而非巨量資料
最大限度精減電源設計中輸出電容的數量和尺寸
相關討論
  相關新聞
» 日本SEMICON JAPAN登場 台日專家跨國分享半導體與AI應用
» Nordic Thingy:91 X平臺簡化蜂巢式物聯網和Wi-Fi定位應用的原型開發
» 豪威集團推出用於存在檢測、人臉辨識和常開功能的超小尺寸感測器
» ST推廣智慧感測器與碳化矽發展 強化於AI與能源應用價值
» ST:AI兩大挑戰在於耗能及部署便利性 兩者直接影響AI普及速度


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.18.117.101.7
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw