發布日期:2022-07-15 點擊率:30
充分利用開放式系統設計方法的優點
就其本質和歷史而言,電子設計工業的發展同半導體器件技術的進步息息相關。隨著技術在繼承基礎上的每一次進步,當新型器件技術的潛能被完全開發出來時,就會出現產品設計的真正進步和變革。在一些創新的工程想法觸及設計工具時(該工具不但可以提供運用這些技術的新方法,而且還能以一種沒有約束且易于理解的方式進行設計),這種進步便隨之發生。
低成本微處理器最初是作為一種生產袖珍計算器的更有效的方法來設計和構想的,結果它的出現折射出了使用軟件編碼來增強、增加產品功能的可能性。然而正是那些使用更高級語言工具的新型器件的創新應用,因為允許使用以軟設計為中心的方法來進行設計,而實現了技術革新。通過探究所有設計可能性,工程人員能夠將大部分的硬件邏輯轉移到可更改的軟件領域。工程人員對工具和技術的充分利用,促使定義產品價值的功能性“智能”開始向軟件領域轉移。
當前,諸如 FPGA 的低成本、可編程高智能器件的出現已經給我們的設計方法帶來了又一次技術革新。這些智能設計不但涉及傳統意義上的軟件,同時也包括實施在一個 FPGA 中的“軟”硬件。不要僅僅把該項技術用作作為其基本潛能的膠合邏輯貯存器,這樣才能實現產品的獨特功能方面以及由此帶來的市場競爭優勢在可更改的軟件域中來定義。
嵌入式系統的設計人員現在有了一個可用來創建創新型產品的全新的設計平臺。當使用一個完全可配置的設計平臺來實踐“軟”設計方法時,FPGA 帶來了空前的設計自由,這其中一部分得益于包括邏輯塊、外圍器件和微處理器在內的大量可用 IP 內核。這些都能按照設計要求的發展進行變更,在設計周期中一些關鍵設計決定可以在以后進行,同時產品的軟硬件可以實時實地進行更新。
當技術潛能被充分利用時,固有的“軟”設計方法為產品開發工藝帶來了新的自由。想要利用這一技術創建出具有真正市場差異化的產品,意味著要克服運用該技術過程中出現的諸多實施問題。而這一成功的實施無疑與我們使用的設計工具的革新有著密切的關系。
局限性介紹
傳統的設計流程中,可編程器件帶來的設計可能性總是伴隨著整個產品開發流程中不斷增加的復雜性這一傳統出現。被引進到產品開發工具鏈的一個新的層次(或一個新的“領域”)傳統上都是基于一個嵌入式硬件開發工具集,而該工具集不但獨立于現有設計工藝,而且與現有的設計工藝毫不相干。當一個獨立的基于 FPGA 的部件與整個產品設計相集成時,這不僅帶來了很高的復雜性,同時還要求您掌握一套新的設計技能,以充分利用這些嵌入開發工具。
出現這些挑戰的主要原因在于源自 ASIC 設計領域的傳統 IDE 工具系列(集成開發環境),該領域使用 HDL(硬件描述語言)來描述產品生產前芯片的硬件設計。使用一個傳統的 IDE 工具鏈意味著在一個獨立的設計環境下進行設計,并要成為一個 HDL 專家,同時還要應用這些目標 FPGA 基礎架構的知識。
最常見的情況是,IDE 是 FPGA 器件廠商擁有所有權的工具鏈。它們是被開發用來支持每個廠商的產品并促進銷售,自然而然也就不具備對競爭產品的支持。一個廠商 IDE 的使用限制了固有的靈活性以及嵌入式硬件設計的自由度,這是由于 FPGA 器件的范圍、廠商 IP 內核以及您能使用的設計方法都受到了限制。另外,如果想要更改設計使用的可編程器件,您就會前功盡棄。
在實踐中,開發工具自身的局限性使追求創新的過程中可以使用的設計選擇大打折扣。
廠商中立的設計
為了充分挖掘當今嵌入式設計工藝的設計可能性,就需要有一個可編程器件開發環境,從而使您能夠輕松選定來自不同廠商的多種器件。創建一個完全獨立于廠商以及器件的設計環境,就可以打開一扇通往所有目標可能性的大門,從而讓嵌入式開發人員為當前的設計選擇最好的器件。
這樣的一個系統在嵌入式設計中本身就具有中立性,允許在不損害設計源文件有效性的情況下對目標器件進行更改。這樣的話,就可以按照自己的想法對目標器件進行更改,并在能更清楚理解所需的規范時,在設計流程后期再做出最終的決策。嵌入式設計流程可以在所有器件仍可選時進行,而無需在重要的嵌入式設計開始之前開發硬件。
獨立于廠商的設計系統還可以提供范圍更廣的 IP 內核,因為使你能夠通過對目標器件進行簡單的更改來實現與目標廠商提供的內核的兼容(如一個特定的高性能微處理器)。如果使用系統中的器件中立框架來開發 IP 內核庫,隨之而來的軟硬件模塊會顯示出與系統一樣的中立性。這就帶來了引人注目的發展前景,即在最初的開發中使用一個中立的 32 位微處理器內核,之后再在對已完成的設計影響最小的情況下,將 IP 模塊更改成廠商提供的內核。
這種方法的成功部分依賴于可添加新器件硬件支持的系統升級的可用性。您可以自由地將最新的可編程器件用于您的設計中,它們具有完全的系統庫 IP 內核兼容性。同時,它們還支持最新的“軟”及離散微處理器和那些嵌入到 FPGA 結構中的,因為該系統的嵌入式軟件工具鏈也被升級了。
在一個真正的廠商中立的產品開發環境中設計使設計人員有了輕松地探究所有設計可能性的自由。隨著設計的進步,我們可以充分地選擇使用可編程器件、微處理器和 IP 內核來創建最具競爭力的產品,而不需要做任何妥協。
抽象透明度
傳統嵌入式設計流程對于器件和 IP 范圍的限制性,以及基于 HDL 的設計捕捉的神秘性(其復雜程序堪比匯編語言),均要求專家級的技能,而且使工程師不能專注于創新設計。
這里需要的是一個可提升設計流程抽象程度的系統,這樣設計工程師們就能夠使用和拓展已有的設計技能,也能夠在一個更高的層次上進行設計。高級別嵌入式設計方法的潛在好處是使硬件或軟件工程師能夠通過一種方式簡單地將預校驗IP模塊連接到一起,這種方式不但易于達到而且隱藏了器件架構潛在的復雜性。
通過提供基于示意圖或圖表的設計接口,嵌入式設計工藝得到了改善,而無需專家級的 HDL 技能(盡管 HDL 輸入也可以包含在內)。當這種系統作為一個廠商中立的嵌入式設計環境存在時,更換處理器、外圍器件和存儲器的過程可能會變為通過圖形接口進行的簡單的模塊級操作。
這種系統的主要優點是設計人員可以完全將注意力集中于產品開發本身——功能性“軟”智能。高級別的接口選擇可以輕松地捕捉到設計意圖,并且沒有任何復雜性和其他會分散注意力的干擾。
當集成于一個本身支持常見高級設計范例的系統中時,底層硬件的復雜性就被有效地隱藏了。嵌入式硬件抽象可以包括高級 IP 接口系統(例如Y 型總線)以及引入處理器、外圍器件和存儲器周圍的透明互聯層的硬件接口 IP 內核。通過使用支持降低復雜程度的設計接口的低級接口架構,嵌入式設計實際上變成一道“連點”試題。
通過一體化實現自由
跳出基于 IDE 的傳統設計流程就可以為工程師們提供現有選擇基礎上的有價值的拓展,并提供創建嵌入式設計的創新方法。廠商以及器件獨立的嵌入式硬件設計系統帶來了這一切,并提供了高級別的設計抽象。然而,該系統與設計環境其他部分如何連接也同樣值得人們注意。
為了達到完全有效,設計抽象及開放式器件選擇需要在整個產品開發鏈中反映出來。這樣,傳統設計中將所有設計元件(硬件、軟件和可編程硬件)放置在一起而帶來的復雜過程就變得簡易和透明。
一體化的設計系統通過將所有設計域統一放置在一個單一、連貫的應用中來獲得這種效果。設計模型變為貫穿所有域的單一實體,(例如)允許庫 IP 模塊包含多個器件支持、圖形模型和硬件接口層。嵌入式設計的變化可以被直接地傳遞至使用高級自動過程(例如FPGA 引腳優化)的相關域中。這些成為可能是因為設計過程中所有部分均共用設計數據的相同單一模型。
將一體化的廠商獨立的設計環境應用于其邏輯的下一階段意味著要將那些屬性包含到一個聯合硬件開發平臺中。獨立于廠商以及器件(可能通過插件FPGA板的系統)并與一體化應用直接通信的硬件平臺可以將需要的靈活性和開放式設計選擇反映到現實世界中。需要對設計項目進行改進和調試的設計迭代可以實時地出現在真實硬件中,而且還可以減少對設計仿真的需要。
當此類可重配硬件平臺同整個設計系統統一時,從設計捕捉直到物理硬件,做出的器件和 IP 設計選擇可以透明地貫穿于整個設計鏈。這樣,整個產品開發系統就變得統一和連貫。
如果設計環境也能提供高層次的設計抽象,那么系統開發人員將不在受限于器件選擇和用于捕捉設計意圖的方法。最終得到的是一種嵌入式系統開發的開放式方法,使設計人員得到解放,以將其注意力集中于設計本身——創建可提供真正意義上產品差異化的功能性器件智能。
圖1:自動處理底層硬件復雜性的高級設計捕獲系統使設計人員能夠集中精神專注于創新。
圖2:除傳統的HDL入口之外,合適的開發工具能夠使用基于原理圖的捕獲或基于圖標的連續性控制將嵌入式設計抽象到更高的層次。
圖3:在理想的設計環境中, 包括硬件開發平臺在內的所有設計系統都能統一在單一的廠商中立的產品開發系統中。
圖4:不依賴于FPGA器件并能提供高級設計抽象的設計系統能提供創建具有競爭力產品所需的所有選擇,而不需做出任何妥協。
作者簡介:Rob Evans 畢業于澳大利亞皇家墨爾本理工大學(RMIT)電子工程系。他曾經在Electronics Australia擔任技術編輯很多年,在電子設計和出版領域有超過二十年的豐富經驗。Rob Evans現任Altium Limited的技術編輯。