由工業和信息化部指導,西安市科學技術局、西安市集成電路產業發展中心和中國電子報社主辦,陜西省半導體行業協會、西安軟件園發展中心和西安地區科技交流中心協辦的2010年(第二屆)中國FPGA產業發展論壇于8月31日在西安市隆重舉行。本次論壇的主題是“可編程技術加速中國科技創新”,來自國內外數十家企業、高等院校和科研機構的200余名代表參加了本次論壇。
圖為:Synopsys 亞太區FPGA產品總監陳俊麟演講。
Jimmy Chen:
從早上到現在,大家談的都是FPGA的工藝上,還有它直接的應用上做生產和設計的方法,在這里我換一個角度來看FPGA的應用。現在越來越多在工業上把FPGA拿來做原型驗證的方式,這個也是FPGA非常大的一個市場,所以從(英)這個角度來說我們也有一些做法,我在這邊跟大家交流一下。
首先提到的包括幾個方面:第一個,為什么要做FPGA為基礎的原型驗證平臺?這里的驗證平臺包括你在演算法的初期的驗證,然后再討論一下(英)在這個地方所提出來的解決方案我們稱之為(英)60的解決方案,然后把一些領先平臺的做法跟大家分享一下。
現在不管設計一個SOC或者一個新的產品,舉一個最普遍的例子里來看,像蘋果的這個產品,一般來說在65納米的工藝以下,這些公司已經在軟件的開發方面有超過50%的支出,所以說不管在機構上、在IC的設計上,這個都不到它50%的總開銷,在軟件上面已經超過50%,所以這個變成一個產品成敗的最重要的關鍵。在右邊這一幅圖,據先前的一些市場調查報告,這些做產品的公司一致認為在功能設計的錯誤上面是他們最不想看到的,也提到他們在功能設計的錯誤上面其實占有60%的失敗的可能性。功能設計的上面除了硬件以外還包括軟件,所以變成軟件的開發跟驗證,其實是現在最主要的一個課題。過去在軟件的開發,通常是在硬件開發完成,而且在SOC的設計里面,樣件回來以后才會真正地開始做,初期可能做一些軟件開發,但是真正做驗證會在樣片回來以后。但是這種做法已經沒有辦法適合現在的商品競爭的原則,所以現在的做法已經都是在產品設計初期就開始規劃這個硬件怎么設計、軟件怎么設計,在這個時候也開始設計一個軟、硬件協同驗證的平臺。所以,你可以看到,在左邊一半下面的這個圖,在投片的時候其實軟件開發就已經完成,在這個樣片回來大概在第一天或者第二天里面,軟硬件整個系統的設計就馬上照原來的計劃來運轉。所以這個方式主要用了FPGA為主的原型驗證平臺,這底下的圖是原型驗證平臺的樣子。大家看到這里面的好處,用FPGA,或者單一的FPGA,或者很多個FPGA,所能夠達到的好處,就是能夠把整個的設計做到FPGA的平臺上面,而且能夠接上實際的輸入輸出的信號,而且能夠達到將來要達到目標的速度,而且它可以大量制造能夠讓許多用戶一起來使用這個,所以能夠達到這樣的要求。在速度上面其實這是一個關鍵的技術,當然我們不管在做什么系統,SOC,或者做FPGA,或者在演算法的初期,我們都要考慮這個驗證平臺能不能夠達到一定的速度,在仿真環節里面,其實不管是直接的仿真,或者是加上加速,這些速度都不夠。主要的差別在哪里呢?差別在于一些界面的需求,你的原型驗證平臺的界面只要達到這個速度,你的整個平臺才算完整,才能正常操作軟件、硬件一起來做驗證。所以這個是用FPGA做驗證平臺最大的好處。大家也都接受這個觀念,但是在很多公司在考慮達到這個效果的時候,看法會比較不一樣,有些公司會在內部成立一個組織,專門來做內部的驗證平臺設計FPGA為主的PC板,當然這里面也都可以達到我剛剛說的這些目標。從04、05年開始,有一些商業導向的驗證平臺的廠商,那個時候把一些驗證平臺也做得非常穩定,能夠達到更高的效率。這些公司主要提供的價值就是讓這些顧客們降低他內部設計的人數或者所要具備的知識,然后這些商品的驗證也都事先透過幾個主要的協同廠商,能夠把這些技術驗證得很好,而且在客戶需要使用這個驗證平臺的時候,他能夠馬上交到客戶的手里,所以這是商品化的FPGA廠商所提供的價值。在FPGA的領導廠商也有類似的產品提供,這里面Synopsys提供了更多的價值,它有整個軟件,就是從工具上面來看,怎么樣把原來的設計概念從(英)后轉到你的代碼FPGA里面,所以它提供的是一個更高的價值、更好的速度來提供給客戶。這個原型驗證平臺它是一個硬件,上面有一顆、兩顆,或者多顆的FPGA在上面,這些原型驗證平臺必須具備幾個主要的功能。第一,它必須要能夠把原來設計的代碼成功的轉換進來到這個平臺里面;第二,因為原來的設計代碼,原來都是做(英),所以這個原型驗證平臺必須要跟仿真能夠溝通,也解決說在仿真的環境里面怎么把這個東西做到原型驗證平臺里面,而且反過來在原型驗證平臺里面又可以利用這個界面采取雙方的好處,又可以做仿真、又可以做原型,這個變成一個必備的條件。第三,在右邊的方塊,因為所有的系統設計,或者SOC的設計,一定有它自己的界面,包括ODO、VDO(音)的界面,一定有一些M(英),一定要連接到這個平臺上面,然后最重要的是你這個整個的原型平臺做好了以后一定要能夠調試,調試是最主要的目的,所以中間最底下的一格是調試的啊環節,所以一個原型的驗證平臺必須有這四個主要的接口。接下來要有一個調試的環節。另外,仿真的環節怎么轉移過來,或者從原型再轉移到仿真的環節里面,這也有一個對應的工具。它提供一個IP,它同時也提供了一個原型平臺做法。可以看到,一個理想的原型驗證平臺能夠適應現在需求的,就必須要有這些原件在里面。
這些東西實際上是已經存在的,我拿Introducing HAPS—60做例子。這個容量大家可以看到,64的容量就達到1800萬門的邏輯,就邏輯的角度的門數來看,比如說你有AMC(英),它有一個接口給大家使用,之前的直板也供給大家使用。更好的是這個平臺除了大片的平臺,它還能夠調節,它不管怎么放,它都有一個連接的方式,有8個FPGA一起來操作。這上面使用的器件,我們從上一代的產品HAPS5的系列,一直到現在HAPS6。這個上面其實是非常高的一個設計工藝,舉例來說,從PC板上面它是40層的設計工藝在上面,它也考慮到它的速度,每一個節點都能跑到200兆的速度。因為所產生出來的散熱問題,或者說怎么樣控制它的功耗,也都有獨特的設計在上面。除了這些以外,它必須跟 你原來的仿真環節能夠連接,為什么要有這個要求呢?我們可以看到,右邊的綠色方塊,它能夠在驗證平臺里面把里面的值事先儲存,你設定它一個固定的值里面,然后看看這個原型平臺的反應,你可以把(英)數據整串的丟進去,整串的抓出來,這些在硬件里面很難看到,但是你通過跟仿真的連接,你就可以看到。在接口上面,你可以把系統設計成你喜歡的設計環節,因為每個人的用法不一樣,你今天用了,明天可能另外一個人要使用,只要在文檔上面選擇,依照哪一個文檔來設定就可以了,所以這也是原型驗證平臺跟仿真環節整合的好處。仿真環節里面,你就可以在仿真跟硬件里面抓到雙方的優點,硬件的速度是方針的大概100萬倍,所以一些穩定的線路你就可以放到硬件上面加速,不穩定的,你可以盡量放在仿真的環節里面來調試。還有一個比較先進的做法,當然剛剛提到了,仿真的環境其實速度非常慢,硬件環境非常快,但是你硬要把它結合在一起,你所能夠忍受的范圍就是看仿真的速度了。為了解決這個問題,現在有一個比較新的做法,就等于一個指令一樣,一個信號交換為主的基礎來做仿真,也就是說我這個信號從仿真的環節繞到硬件我的信號交換的接口上面,我做完所有的事情一次把信號交過來,而不是像仿真的環節,我們說叫做(英)里面的一個信號轉換它都會整個的操作一次,所以比較浪費時間。現在比較尖端的做法叫做(英)的這種做法,這個做法是針對硬件速度的優勢發展出的一個新的技術。當然上面是一個仿真的環節,下面是一個硬件的環節,下面是代表驗證的平臺,仿真環節里面送出的信號是(英),而不是(英),在硬件里面又是平行的信號,而不是串極的信號,所以這里面還是要有一個轉換,這里面要有兩個轉換,這個都包括在平臺的里面。把它轉換過來以后,你就可以開始做兩邊信號的交換。我們在細部的這種設計里面,通常在上驗證平臺以后,驗證平臺一上去,因為在它的速度優勢下你可以測很多測不到的東西,因為它是實際的信號進來,這個時候你跟仿真的環節結合在一起,可以把里面特定的(英)值抓出來,當然在驗證的時候以硬件的速度來做驗證,跟軟件一起協同驗證之后,把它的資料放到仿真環境里面,用仿真的環境慢慢找出問題來,找出問題來還是要把你的設計代碼修改以后,在仿真的環境里面再重新做一次,確定完全沒有問題以后你再把他放到硬件里面來,所以這個接口是非常重要的。在一個理想的驗證平臺里面這些都是要能夠支持的。在原型驗證平臺上面現在已經越來越重要,在所有產品的設計都需要做原型驗證,這里面最重要的是把軟件開發放在這里面,更重要的是把軟件開發在你硬件還沒確定之前就做好,比如說硬件投片之前就把這個芯片開發完成,不容許軟件的任何錯誤。第二個,低成本、高效率。你要考慮到這個板要能夠支持到所有所要的這種界面的速度,比如說USB3.0怎么樣在(英)上面做原型驗證,必須仔細選擇一個好的驗證平臺。接下來必須選擇一個低風險的原型驗證平臺,有一個世界級的支持團隊、有世界及的口碑這樣子的商品化原型驗證平臺,這樣可以減低你內部的風險,提升你市場的競爭力。
所以這些就是我今天提出來跟大家分享的資料。