印象中FPGA市場基本是Altera和Xilinx一統(tǒng)天下,他們的明爭暗斗決定著FPGA的未來,甚至他們各自的家族產(chǎn)品都是對著干的。Lattice、Actel、Atmel各有其小眾市場,再有別的廠商,基本上特權(quán)同學是不太叫得上來了。
國產(chǎn)FPGA?是不是聽錯了,沒有。記得第一次聽說 FPGA前面加了個定冠詞“國產(chǎn)”應(yīng)該可以追溯到特權(quán)同學還和價格堪比年薪的軍品糾結(jié)的歲月。不過那個“國產(chǎn)”二字總感覺和“盜版”諧音,真的不是損誰,只是實事求是的說。也許這種模式也叫“中國特色”吧,好歹比那天忘了在哪位大俠博客看到的“二次包裝”的“中國制造”強上千百倍。Xilinx早期的 XC4打頭的FPGA,也只有ISE4以前的版本支持,“低端”軍品也就這幾款了。所以國內(nèi)的XX所也很牛,居然能夠逆向設(shè)計將他們的“國產(chǎn)”FPGA做得和它完全兼容,不止是PIN2PIN,甚至連開發(fā)工具他們都不用徒手打造了,告訴我們完全替代現(xiàn)有的Xilinx器件。
有時候不得不感嘆,中國人很牛。外國人可以做到的,基本上沒有中國人做不到的。時光荏苒,特權(quán)同學已不再需要靠那些“可靠”換“性能”的片子干活了。而FPGA的成本卻越來越成為產(chǎn)品開發(fā)中揮之不去的夢魘,于是乎,老板想盡辦法要壓榨FPGA的成本,這次找來了又一個“國產(chǎn)”準備在低端低成本的應(yīng)用中大干一場。不過幾番觀察下來,特權(quán)同學開始對此“君”頗有好感,它也許算不上真正意義上的“國產(chǎn)”,但是多少讓人感受到了它走的是一條“正規(guī)”有“前途”的路子。
其實也只是昨天才開始正式的和這家名為Agate Logic的FPGA廠商有了一些“親密”接觸。它的開發(fā)工具,它的開發(fā)流程,它的主打芯片結(jié)構(gòu)、特點、性能都有所了解,但要真*實彈的用這個家伙干活,還得有更深入的嘗試和驗證。特權(quán)同學希望對這些嘗試做些記錄,也許,是一次蠻有意思的嘗試。
今天先簡單的沒主題的隨便扯談吧。首先,這家公司是提供了兩個系列的產(chǎn)品,其中一個系列工藝先進些,據(jù)說性能好一些,只不過年初剛量產(chǎn),還不是主推產(chǎn)品,姑且不詳談,畢竟特權(quán)同學的DEMO板上的主角兒也不是它。另一個低端點的系列叫Astro,別小看它了,先羅列一下參數(shù)大家瞧瞧。
★ 硬核——可以跑到100MHz的8051硬核,標準外設(shè)IIC一個、SPI一個、USART兩個、定時器數(shù)個。
★ 1Mbit一次性可編程存儲(OTP)——加密的利器啊。
★ 1個PLL——3個可選輸出,相位可調(diào)。
★ 可選的內(nèi)部4Mbit FLASH。
★ 2個9Kbit可配置存儲器——雖然對于片內(nèi)存儲要求很高的特權(quán)同學有點“巧婦難為無米之炊”了,不過低端應(yīng)用犧牲一些“性能”還是可以接受的。
有這些東西還不算,最主要的還是它保持著傳統(tǒng)“中國特色”的“便宜”,基本上3個美金可以拿到有1024個LUT的器件了。若是要和當前的Altera相關(guān)解決方案比比,那真得是蠻有競爭力的。MAX II系列CPLD除了邏輯真得沒有別的用處了,而邏輯資源遜色不少的EPM570(EPM1270不說了)目前市場上估計是有缺貨的因素,居然賣到30好幾個RMB了。而如果選擇Cyclone系列最便宜的EP1C3好像也只要30多RMB,但是要跑個最經(jīng)濟的NIOS也有點困難。而且有個很有意思的現(xiàn)象,正規(guī)代理商會很無奈的告訴你這樣的老器件要30的數(shù)倍價格才能搞到,而外面的小商小販賣的就是30的準“白菜價”(當然不排除買到“散新貨”的可能)。而Astro卻連配置器件和外掛MCU的成本都省了,雖然它也是基于SRAM的結(jié)構(gòu)。(不行,越比發(fā)現(xiàn)這東西越好。先申明一下,這里不是推銷,只是比較,特權(quán)同學是用芯片的,不是賣芯片的。嘿嘿)
今天花了一上午把它們的開發(fā)工具Primace的 Help過了一遍。再說個題外話,昨天到它們的上海辦事處,感覺上這般人對版本的管理不是很好,動不動來一個版本,讓我們當時一個版本裝另一個版本卸的來回折騰好幾次才看到Primace的本來面目。還有那個USB下載線,MCU要一個JTAG,F(xiàn)PGA也要一個JTAG,如果能二合一的干活多好啊,就像咱的NIOS2。
FPGA開發(fā),確切的說硬件系統(tǒng)的開發(fā)都是有賴于 Primace的,軟件是KEIL,它們提供了一套接口,用上去還算方便。這個Primace整個一ISE或者Quartus II的簡化版,畢竟也是剛起步,勉強可以接受,怎么說咱當年在ISE10大行其道的年代也有過被迫無奈“玩轉(zhuǎn)”ISE4的經(jīng)歷。
截個圖,如圖1,它們的開發(fā)流程也算是軟硬兼施,F(xiàn)PGA的流程很簡化,看上去很“清爽”。最終把FPGA配置文件bitgen和KeilC的Hex一起在軟件里生成個新文件下載就行。
圖1
開發(fā)工具真的很“簡陋”。時序約束和分析特權(quán)同學還沒摸懂怎么回事,就那么兩三個GUI選項,只能說是比Classic timing analyzer還Classic,這一點是特權(quán)同學最擔憂的;提供的板級調(diào)試手段也很有限,好像就一個稱為Signal monitor的家伙,沒有嘗試,就不妄下定論,好在本來它的邏輯資源也不多,調(diào)試起來有沒有在線手段也無關(guān)緊要。