對可編程系統級芯片(SoPC)的開發而言,僅僅依靠可編程器件(PLD)在規模和速度方面的進步,依靠使用方便的嵌入式處理器內核,以及依靠其他的IP內核本身是不夠的。通過解決系統級的復雜問題,使PLD技術在產品面市時間方面帶來好處,需要一種清晰的系統層次的構造方法。 過去, PLD的用戶喜愛MAX+PLUS II的集成化特點(一個完全集成的設計實體,包括設計輸入、綜合、仿真、布局布線和時序分析),今天,同樣還是那些用戶,卻要求最佳的綜合工具、最佳的仿真工具和最佳的時序分析工具。PLD布局布線工具必須以某種方式滿足這些不斷變化的要求,這種方式使得整個設計方法在方向上更加以專用集成電路(ASIC)為中心。如果這種新的PLD設計方法正確地構造出來,它將比ASIC技術更快地促進IP內核的應用,并且,支持只有可編程技術才能提供的靈活性和定制能力。 現在,在高密度器件中使用IP內核已經是非常普遍的做法。盡管用戶使用總線接口功能(如 66 MHz的PCI總線)和DSP功能(如FIR濾波器)已經有幾年的時間,IP內核的應用最近又出現了三個基本的變化。首先是現在的專用編程器具有強大的功能和靈活性。例如,新的FIR編譯器包含了一個支持4比特到32比特系數精度的內置系數生成器,可以設計任何抽頭數目的濾波器。該編譯器還支持樣點的等間隔舍入、內插以及串行和并行的算法結構選項,從而使用戶可以按照自己的性能和布局面積要求優化濾波器,并且,可以容易地修改和重新評價濾波器以滿足系統的要求。 在強化設計方法方面采取的第二個重要變化就是現在已有的對各種工業標準開發工具的接口。例如, 現在的FIR 編譯器還能夠產生MATLAB、Simulink、VHDL和Verilog HDL 格式的仿真模型,從而與上述各種強大的工具更緊密地連接起來。類似的支持Reed-Solomon糾錯算法等DSP應用的應用編譯器也正在開發過程中。 與IP內核的應用有關的第三個重大變化是專門為PLD優化的嵌入式處理器的出現。只有使用了高性能的處理器, SoPC設計能力的潛力才真正成為可能。在一個理想的開發環境中,設計者將只是簡單地編寫出體現系統規范的C代碼,然后,足夠智能化的開發工具將在嵌入式處理器中劃分某些算法,并將其余的算法綜合到可編程邏輯中去。然而,遺憾的是,現有的工具還沒有達到如此高級的水平,而在PLD中集成嵌入式處理器會將增加設計的復雜性。新的開發方法必須解決建模、處理器集成和PLD的設計輸入等問題,并且,能夠智能化地開發各種總線接口來優化系統性能。 為了優化系統級的解決方案,開發工具必須就處理器內核如何與存儲器、外設I/O模塊相互作用提供精確和完整的模型。利用硬核處理器進行設計,通常需要一個描述特定的系統總線操作的處理器總線功能模塊,一定的時序關系,以及設計內部處理器模塊與其他模塊的接口。使用軟核處理器,則需要正確的行為模型來證實PLD內部的具體實現滿足處理器子系統的時序規范。整個SoPC的設計過程必須支持對VHDL或者Verilog仿真、行為仿真以及VHDL和Verilog 測試工具。 保證嵌入式處理器在PLD中成功應用的關鍵是開發一種直觀的方法,用來選擇一個指定的處理器,選擇所有適用的外設功能和外部存儲器控制器,以及定義存儲器映象圖。開發工具SoPC Builder使用設計者熟悉的MegaWizard插件完成全部適用選項的選擇。 外設和存儲器映象選定后,處理器C代碼的生成、實時操作系統(RTOS)的選擇以及外設驅動程序的設計也非常關鍵。對PLD編程需要用一個集成了嵌入式處理器初始化代碼和傳統的PLD初始化文件的器件文件。將這些文件集成到一個連貫的過程中,才能實現成功的編程。 設計方法中采用的IP內核會不斷變化,在很多其他的設計方式中,設計方法與現有的ASIC方法緊密結合,而用戶正在要求將從前只與ASIC設計有關的工具應用到PLD設計中。去年,功能和時序仿真對大多數PLD用戶還是足夠的,但是現在用戶卻在期望使用行為仿真工具優化設計過程。為了滿足這一需求,Altera在其所有開發工具的應用中包含了利用建模技術實現的行為仿真功能。這些開發工具還提供了測試功能以加速仿真的過程。 現在,基于仿真向量文件的功率估計工具也已問世。這些工具使用仿真向量文件來代表實際的器件操作,以此來模擬可編程器件(PLD)的功耗,精度比按照設計規模、時鐘速率和節點切換速率來估計功耗的上一代設計工具高得多。用戶還期望用基于最小時序的時序仿真來補充基于典型延遲的時序仿真,從而證實其設計將在所有的操作條件下正常工作。 通常,設計方法發生變化或者是因為新的工具提高了系統性能,或者是因為它們帶來的生產效率的提高,縮短了設計周期。基于C代碼的設計和行為綜合工具能夠縮短設計周期。 今天,對這些提高生產效率的工具的挑戰在于:對于現有的HDL方法,從更高層次的抽象能否產生具有比較性的性能?在ASIC技術能夠獲得高得多性能的應用場合,PLD的用戶通常想充分利用器件的性能。 只有當這些提高生產效率的工具以提供最優性能的方式解決這種抽象的性能折中時,它們才會有實用價值。當且僅當它們真正可行的時候, PLD的形式驗證才是可行的。 目前,盡管PLD開發工具的性能已經大為提高,人們仍然在持續努力。智能邏輯布局和時序驅動布線技術的新發展正在預示著新的性能超越。不久以前, fMAX的性能指標就提高了40%到50% 。并且,新技術與傳統綜合工具的結合更緊密,如更精確的時序估計和閉環綜合將進一步提高性能。 使用PLD主要優勢之一是PLD提供了一個硬件平臺,在這個平臺上可以進行軟件開發、建模、系統級仿真,并且,在設計過程早期就可以進行協同驗證。在這一過程中,盡早獲得在硅片中布局布線的結果是一個優勢,只要它確實提高了系統級調試過程的效率。象SignalTap技術這樣的第一代調試工具使用了嵌入式邏輯分析器,當以系統最高速度運行器件時,它使得整個設計的全部內部節點是可見的。人們期待著調試工具的進一步改進,以便將同樣的直觀性帶回到最初的HDL源代碼中去,并且通過快速的轉換來觀察新增的節點。 PLD開發工具必須進一步發展,從而與技術進步和EDA產業的發展相適應。器件的復雜度在不斷地增加,設計方法也必須在不降低器件性能的情況下,通過縮短設計周期來提高生產效率。如果成功了,這種技術將使得基于PLD的產品進入傳統的嵌入式處理器市場。 |