設計工具是FPGA在SoC設計中繼續(xù)應用的關鍵
對于大多數使用 FPGA 的嵌入式系統(tǒng)設計人員來說,基于微處理器核的 SoC 結構正在成為主流。據調查,目前有五分之一的 FPGA 設計使用了軟處理器核,調查還發(fā)現大多數 FPGA 設計人員希望今后都使用軟處理器核,并渴望使用像 ARM 公司提供的處理器核解決方案。
與此同時,另一個與核使用增加并行的趨勢是:約四分之三的嵌入式設計都在某種程度上采用知識產權 (IP) 復用。總體趨勢仍然持續(xù)轉向 FPGA 及摒棄 ASIC 發(fā)展,使用可編程邏輯技術的嵌入式項目中有 81% 是采用 FPGA器件。
這對于 FPGA 市場來說無疑是好個消息,但這種發(fā)展趨勢也無容置疑地為 FPGA 廠家?guī)硖魬?zhàn)。僅就尺寸而言,典型的嵌入式設計現在越來越復雜;而這類復雜設計以往只能采用傳統(tǒng)的 ASIC 類型 SoC 器件來實現,并且需要使用有助于設計人員在直觀和抽象層面進行開發(fā)的高層軟件工具。
由于需要復用現有的 IP 資源,這些開發(fā)工具必須能夠快速簡單地將自有的 IP和第三方的 IP 組構在一起。而且在接下來的流程中,還需要對設計進行仿真和調試,并通常在與硬件進行設計的同時編寫應用軟件。IP 的使用也會對器件本身提高要求,即寶貴的軟件 IP 必須在器件中安全地運行,無論是在開發(fā)階段還是在制造階段均需采用安全保護措施,而且在現場使用時能抵御篡改和盜竊的侵擾。這也是為什么 ARM 等高價值 IP 供應商過去一直不愿將其 IP 產品以軟件形式用于 FPGA 的原因之一。
所有這一切都表明了 Actel 新近推出的 CoreMP7 軟 ARM7 處理器以及包括 CoreConsole IP 開發(fā)平臺在內的整套工具具有重要意義。
ARM7 是業(yè)界領先的 32 位處理器,付運量已達到數十億片。在 FPGA 上使用這種處理器核,是 FPGA 能否繼續(xù)在 SoC 類應用中替代 ASIC 的一個先決條件。Actel 以 Flash 為基礎的 ProASIC3 和 Fusion 技術是這個發(fā)展的重要推動因素,因為它們能防止商用 IP 的運行受到篡改和盜竊等問題侵害。ProASIC3 和 Fusion 技術具有先天優(yōu)勢,難以對其進行逆向工程,而且無需外部能被讀出設計信息的配置器件,加上采用片上 AES 加密引擎和密鑰系統(tǒng),確保 ARM 核得以安全地以軟件形式銷售,并且僅在那些經授權的特定器件上使用。
除了 CoreMP7 本身及 ProASIC3 器件技術外,其配套的開發(fā)工具也同樣重要。該開發(fā)工具的核心是 CoreConsole IP 開發(fā)平臺 (IDP),它針對 RTL 上的抽象層,允許設計人員通過圖形化用戶界面進行設計。CoreConsole 會生成 RTL 代碼,并傳送至 Actel 的 Libero 集成設計環(huán)境 (IDE) 進行仿真和綜合。它還可輸出與 ARM7 軟件編程開發(fā)工具共用的 IP 所需的全部軟件驅動程序。
CoreConsole 的主體是以總線為中心的工具軟件,可將用戶自有或第三方的 IP 構件“縫合”在一起,即將各 IP 構件自動連接到所選的互連總線上。CoreConsole 還包括一個 IP 庫,內含 CoreMP7 和其它 Actel IP 部件,以及來自 Actel 的 CompanionCore 伙伴的第三方 IP。
CoreConsole 雖然是針對 ARM7 軟件核而開發(fā),但其本身卻獨立于特定使用的互連總線標準、處理器、子系統(tǒng)和IP構件,讓設計人員面對未來的升級和開發(fā)選擇現有的IP時享有最高的靈活性。CoreConsole 的功能集中于處理器核周圍的子系統(tǒng)的定義、實施和配置,當中包括中斷控制器、內存控制器、定時器、串行接口、I/O端口和上電復位 (POR) 電路。
要將這些不同的部件用手工組構在一起既費時又費力。CoreConsole 便將這個工序自動化,使設計人員能專注于系統(tǒng)而不是部件本身。支持子系統(tǒng)的組裝也是在功能層面上通過圖形化界面完成,這樣就可及早進行系統(tǒng)級評測,大大縮短整體開發(fā)時間。這種處理方式當然也順應了業(yè)界一直期待的系統(tǒng)級設計趨勢。CoreConsole 工具使用直觀的 Windows 界面作為系統(tǒng)級控制界面,并采用SPIRIT (Structure for Packaging, Integrating and Re-using IP within Tool-flows;工具流程中包裝、集成和復用IP的結構) 聯盟所定義的方法來確保工業(yè)標準的系統(tǒng)級IP開發(fā),并通過基于XML代碼的基本結構來實現。
當 IP 核與總線連接在一起后,就可進行系統(tǒng)級的維護工作。設計人員不但能及早查看系統(tǒng)功能,而且還可用 CoreConsole 生成系統(tǒng)互連測試工作臺,能夠全程跟蹤整個設計直至實施,并可用于驗證和調試 FPGA 架構內的設計連接。
CoreConsole 與 CoreMP7 工具流程其余部分的集成顯然采用了相同方法。該工具生成的文件可直接在 Libero IDE 中使用。這樣,就可將 Actel 內部開發(fā)的工具和其他商業(yè) EDA 工具如 Magma Design Automation、Mentor Graphics、Synplicity 和 SynaptiCAD 結合起來,從而實現仿真、綜合和布局布線功能。這樣,Libero 可讓設計人員使用其在流線型設計流程中所熟悉的商業(yè)工具,能夠自動管理所有的資源、設計、運作和日志文件。這結構保證了相互操作性,使所有的設計數據都能在不同的工具之間無縫傳送,從原理圖/HDL 開始進入綜合、仿真、布局布線和器件編程。
與建立集成硬件設計流程同等重要的是,盡早開始設計過程中的軟件開發(fā)工作,并在軟件和硬件設計團隊之間傳遞必要的信息。ARM 公司已經針對 CoreMP7開發(fā)出使用 CoreConsole 輸出數據的工具軟件 RealView Developer Kit (RVDK);該工具軟件具有優(yōu)化的 C 編譯器、調試器、匯編器和指令集仿真器。
最近,Actel 推出基于廣泛使用的源碼開放的 Eclipse 集成設計環(huán)境和 ARM7 GNU 編譯器和調試器的開發(fā)環(huán)境 SoftConsole,可從 CoreConsole 導入內存映象和驅動程序,從而簡化開發(fā)和調試。
正如使用微處理器核已經成為構建 ASIC 類 SoC 所認可的規(guī)則一樣,隨著 FPGA 不斷發(fā)展和普及,這種構架和戰(zhàn)略也逐漸用于可編程邏輯領域中。以 Flash 為基礎的安全器件及在其上運行的處理器核,是 FPGA 向新水準發(fā)展的必要條件。用于軟件和硬件的設計工具也同樣重要,可以用來進行系統(tǒng)級設計,并且提供全集成的產品實現環(huán)境。所有這些條件都具備之后,下一代可編程邏輯 SoC 正蓄勢待發(fā)。
評論