任何企業(yè)都會面臨這樣一個(gè)需要思考的問題,那就是到底應(yīng)該在人力資源和設(shè)備方面投入多少來實(shí)現(xiàn)贏利目標(biāo)才是好的,尤其是在當(dāng)前的經(jīng)濟(jì)危機(jī)下,這個(gè)問題變得更加突出。投資過度會抹殺利潤的潛在增長,而投資不足則又會讓企業(yè)缺乏抓住市場機(jī)遇的資源,甚至深陷無法實(shí)現(xiàn)其目標(biāo)的危險(xiǎn)之中。
一切的關(guān)鍵就是找到投資與收益之間的最佳平衡,做出明智選擇并采用更靈巧的方式,來滿足自己的需求。大大小小的企業(yè)在大部分事情上都能夠漂亮地實(shí)現(xiàn)上述平衡。因此,他們能夠集中精力在公司運(yùn)營上,讓長期績效與企業(yè)目標(biāo)相吻合。
然而在電子產(chǎn)品設(shè)計(jì)行業(yè),隨著 FPGA 等可編程器件的興起,一向舉止明智的企業(yè)開始有點(diǎn)失常。他們竟不對成本與效果、長期影響與工作流程效率進(jìn)行綜合而全面的考慮,僅著眼于短期效益,便對 FPGA 開發(fā)硬件與工具匆匆做出選擇。
這一“便利”而沖動的選擇可能是一塊價(jià)值幾十美元并且還配套提供免費(fèi)開發(fā)工具的基礎(chǔ) FPGA 開發(fā)板。
“便利”的代價(jià)
不可否人,幾十美元的 FPGA 開發(fā)板確實(shí)極富吸引力,但從專業(yè)產(chǎn)品設(shè)計(jì)經(jīng)濟(jì)學(xué)角度來考慮,這何嘗不是一種有風(fēng)險(xiǎn)的選擇。
舉例來說,某種新產(chǎn)品開發(fā)成本不低于100萬美元,潛在收入會超過 1000 萬美元,而參與項(xiàng)目的工程師平均工資為 10 萬美元,這種情況在當(dāng)今的行業(yè)中很常見。那么,想想看,如果把這數(shù)百萬美元開發(fā)項(xiàng)目的命脈交到區(qū)區(qū)幾十 美元的系統(tǒng)投資手中,這些數(shù)字看起來該有多么失衡和錯(cuò)亂。
盡管通常的審查與權(quán)衡工作好像在這里已經(jīng)失敗,但很可能這并不是事實(shí)。因?yàn)楣こ處煟赡芫褪悄└緵]有進(jìn)行審查和權(quán)衡,而是貿(mào)然認(rèn)定只要擁有合適的 FPGA 器件、可用的外設(shè)和一系列外部連接器,這種幾十美元的開發(fā)板就可行。配套設(shè)計(jì)工具套件可以免費(fèi)下載,一旦做出決定,您可馬上開始嵌入式硬件開發(fā),而且嵌入式軟件設(shè)計(jì)人員也向?qū)嶋H硬件的測試工作邁進(jìn)了一步。
從表面上看這似乎是解決燃眉之急的合理方案,但對涉及數(shù)千、甚至數(shù)百萬美元的專業(yè)設(shè)計(jì)項(xiàng)目而言,未經(jīng)審核的匆忙決定往往讓您欲速則不達(dá)。這種價(jià)格低廉的開發(fā)硬件,除了存在質(zhì)量限制外,系統(tǒng)的內(nèi)在約束大大縮小了可選的設(shè)計(jì)選擇范圍,而這些限制很可能造成代價(jià)高昂的設(shè)計(jì)讓步與延誤。
約束之一是 FPGA 器件固定在電路板上,這樣會限制設(shè)計(jì)人員只能選擇特定廠商的某一器件系列。如果最初決定選擇具有超額容量的器件,意味著您不會用完所有門或 I/O,但對于所有其他功能與特性而言,在正式開始設(shè)計(jì)之前必須準(zhǔn)確預(yù)測。
如果您做出了錯(cuò)誤的選擇——最終發(fā)現(xiàn)器件運(yùn)行速度太慢,占用太多功率,需要硬編碼處理器或DSP,或者需要更換——此時(shí)除了尋找替代器件和新開發(fā)板之外別無選擇。新開發(fā)板可能只需再花幾十美元,但在新器件繼續(xù)現(xiàn)有設(shè)計(jì)工作幾乎不太可能,這會進(jìn)而導(dǎo)致必須重新進(jìn)行設(shè)計(jì),而使項(xiàng)目開發(fā)延誤,代價(jià)高昂。
上述情況的前提是能夠從同一家廠商獲得合適的替代器件,但如果只能從其他廠商獲得可行的替代器件的話,情況會變得更糟。此情況下,一旦新器件架構(gòu)與現(xiàn)有器件架構(gòu)不兼容,整個(gè)設(shè)計(jì)只能從頭再來,從而造成更長時(shí)間的延誤及更高成本。與此同時(shí),嵌入式軟件工程師還要繼續(xù)等待您完成嵌入式硬件。
另一個(gè)潛在約束是 FPGA 廠商提供的免費(fèi)專有工具鏈。雖然這些工具是用于支持廠商的相關(guān)產(chǎn)品和促進(jìn)銷售的,但是它們往往很自然無法支持競爭對手的產(chǎn)品。因此,如果您為了解決設(shè)計(jì)問題而更換 FPGA 器件廠商,還需要學(xué)習(xí)適應(yīng)新的工具和方法。
綜合上述因素來看,倉促選擇開發(fā)硬件會嚴(yán)重影響對特定項(xiàng)目設(shè)計(jì)選項(xiàng)的探索。而獲得最佳設(shè)計(jì)解決方案的可能性也會非常小,變更器件類型會迫使大量重新設(shè)計(jì)的,而更換廠商意味著需要學(xué)習(xí)新的工具與方法。最重要的是,涉及數(shù)百萬美元的設(shè)計(jì)項(xiàng)目最終會陷入危險(xiǎn)之中。
粘性問題
實(shí)踐過程中潛伏的真相是幾十美元的低成本方案還會迫使您為避免額外的工作和延誤而不得不繼續(xù)選用特定廠商和器件系列。您在后續(xù)設(shè)計(jì)中使用該廠商的器件與 IP 越多,則整體設(shè)計(jì)資源就越傾向于鎖定到該廠商。
這意味著既定項(xiàng)目會缺乏設(shè)計(jì)選擇,而且所帶來的損害會蔓延到未來的設(shè)計(jì)。在后續(xù)項(xiàng)目中再利用以該廠商為中心的設(shè)計(jì)從一開始就會減少設(shè)計(jì)可能性,因此您可能會為了適應(yīng)廠商的 FPGA 而調(diào)整設(shè)計(jì),而不是選擇最適合相關(guān)設(shè)計(jì)的 FPGA,這樣您會牢牢地受制于單一而死板的設(shè)計(jì)思路。
為了便于入手,您還很有可能從器件廠商商采購IP內(nèi)核。這種IP僅適用于該廠商提供的特定范圍的FP
GA 器件,因此會緊緊地依賴于狹窄的芯片范圍。這種‘粘性 IP’會讓本來的設(shè)計(jì)選擇受限問題雪上加霜,因?yàn)樵谔剿髟O(shè)計(jì)選項(xiàng)時(shí)無法選擇其他廠商的器件。
其缺陷是,倉促決定采用低成本開發(fā)板方案看似確定了設(shè)備選擇標(biāo)準(zhǔn),但事實(shí)上制造出了一種受限的‘依附于廠商的’FPGA 設(shè)計(jì)環(huán)境。這種環(huán)境甚至從您開始設(shè)計(jì)之前就自然地約束您的設(shè)計(jì)選擇,迫使您走上死板的預(yù)定設(shè)計(jì)思路,同時(shí)降低設(shè)計(jì) IP 對未來項(xiàng)目的價(jià)值。
那么,為什么那些理智而又聰明的設(shè)計(jì)工程師經(jīng)常居然采用限制他們設(shè)計(jì)能力、甚至讓關(guān)鍵項(xiàng)目陷入危險(xiǎn)的方法?
這種認(rèn)為這是正常或可以讓人接受的工作方式的想法會讓人想起FPGA的早期實(shí)施階段——當(dāng)時(shí)大家把 FPGA 看成一個(gè)容納眾多支持膠合邏輯的簡便而又高效的受體。此情況下,采用 FPGA 的決定可能是在設(shè)計(jì)周期的后期做出,而相關(guān)邏輯的功能價(jià)值較低,而且其再利用需求也很低。
隨著 FPGA 設(shè)計(jì)逐漸發(fā)展到 SoC 方法,器件和嵌入式硬件設(shè)計(jì)成為了基本的關(guān)鍵要素。SoC 方法在 FPGA 中部署了處理器、存儲器以及數(shù)據(jù)處理等更多關(guān)鍵功能元件。選擇使用哪種器件的決定變得至關(guān)重要而且需要在設(shè)計(jì)早期決定,它容納的設(shè)計(jì)IP代表著巨大、寶貴的設(shè)計(jì)投資。設(shè)計(jì)選擇與重用成為嵌入式硬件的關(guān)鍵。
如今,F(xiàn)PGA已經(jīng)發(fā)展成設(shè)計(jì)的核心或中心平臺。這是超越 SoC 方法的進(jìn)一步發(fā)展,在其中,除了擁有高級功能,F(xiàn)PGA 還可用作設(shè)計(jì)中軟硬元素的連接結(jié)構(gòu)。處理器、存儲器或 DSP 可以作為軟核心、物理硬件或者同時(shí)作為二者加以實(shí)現(xiàn),而 FPGA 容納的可重編程層可以把它們?nèi)咳诤显谝黄稹?/p>
現(xiàn)在產(chǎn)品設(shè)計(jì)的關(guān)鍵差異化要素同時(shí)在軟件和可編程硬件中被定義。所有這一切與 FPGA 功能及其容納的 IP 息息相關(guān),因此,事后才添加基于 FPGA 的簡單膠合邏輯的方法雖然在過去可行,但是現(xiàn)在已經(jīng)不再管用。自由選擇是實(shí)現(xiàn)出色設(shè)計(jì)方案的關(guān)鍵,缺乏自由選擇會產(chǎn)生巨大的潛在成本。
問題是,面對成千上萬的巨大投資,您是否愿意冒險(xiǎn)采用低成本 FPGA 開發(fā)板并能夠承受它帶來的影響?
為獲得設(shè)計(jì)自由而投資
我們需要的是不會造成上述限制和設(shè)計(jì)約束的 FPGA 開發(fā)系統(tǒng)。理想情況下需要具備一種能夠通過插入式FPGA子板系統(tǒng)容納任何器件的可重構(gòu)開發(fā)板。各種子板可按需添加,從而在設(shè)計(jì)進(jìn)行過程中逐步提高可用器件選擇范圍。
隨后,嵌入式開發(fā)的物理硬件選擇可以擺脫對 FPGA 類型及其廠商的依賴。硬件外設(shè)板選擇也是如此,開發(fā)板可為通用外設(shè)級提供插入式系統(tǒng),如:LCD 屏幕、I/O 接口或音視頻信號調(diào)節(jié),其中還可包含配套 IP,從而可以輕松快速從一個(gè)外設(shè)轉(zhuǎn)移到另一個(gè)外設(shè),或在最終設(shè)計(jì)中添加相關(guān)硬件。
如果這種系統(tǒng)還可以提供一系列良好的擴(kuò)展連接器,并具備與其重要性相符的質(zhì)量水平,而非追求低價(jià)格,那么相關(guān)硬件就能夠帶來自由的設(shè)計(jì)方法。
下一步是通過消除 FPGA 設(shè)計(jì)工具的相同約束而獲得器件自由。采用能夠讓嵌入式硬件設(shè)計(jì)本身與容納它的器件脫離的目標(biāo)驅(qū)動器和‘約束’文件系統(tǒng)可以實(shí)現(xiàn)上述目的。這樣,在修改 FPGA 器件時(shí)只需加載新的約束文件,而設(shè)計(jì)來源仍有效,只需進(jìn)行很少,甚至無需任何重新設(shè)計(jì)。
最終可以獲得能夠打開器件與IP可能性廣闊天地大門的FPGA開發(fā)系統(tǒng)。在最少重新設(shè)計(jì)的情況下更改器件的能力意味著能夠在完全了解真正需求的設(shè)計(jì)后期進(jìn)行最終器件選擇。雖然仍然受制于特定器件,但是粘性 IP 將不再約束您當(dāng)前或未來的設(shè)計(jì)思路。
最重要的是,F(xiàn)PGA 開發(fā)系統(tǒng)的質(zhì)量、靈活性與使用壽命能夠反映大規(guī)模產(chǎn)品開發(fā)過程的重要性與投資情況。受限的設(shè)計(jì)選擇帶來的財(cái)務(wù)風(fēng)險(xiǎn)已經(jīng)蕩然無存,而嵌入式開發(fā)人員能夠自由為項(xiàng)目開發(fā)的關(guān)鍵部分探索并選擇最佳的設(shè)計(jì)選項(xiàng)。
評論
查看更多