探究最佳的結(jié)構(gòu)化ASIC設(shè)計(jì)方法
由于與深亞微米標(biāo)準(zhǔn)單元ASIC相關(guān)的非重復(fù)性工程費(fèi)用(NRE)越來越大,設(shè)計(jì)周期又很長,因此利用結(jié)構(gòu)化ASIC進(jìn)行定制IC設(shè)計(jì)的吸引力正變得越來越大。結(jié)構(gòu)化ASIC能以極具競爭力的單位成本提供優(yōu)秀的硅片性能,并且NRE費(fèi)用極低。結(jié)構(gòu)化ASIC的多樣性意味著它即可以用作系統(tǒng)主芯片,也可以用作高性價(jià)比的小型輔助芯片。
許多物理設(shè)計(jì)問題在結(jié)構(gòu)化ASIC的片設(shè)計(jì)中已經(jīng)得到解決,因此后端版圖設(shè)計(jì)的時間可以大大縮短,從而導(dǎo)致更快的驗(yàn)證確認(rèn)和原型提供。不過ASIC片具有預(yù)定義的結(jié)構(gòu),因此設(shè)計(jì)師必須合理安排芯片資源才能獲得理想的性能。
FPGA是ASIC的另外一個替代品,它們一般基于查找表和可配置的邏輯單元。與相應(yīng)的ASIC技術(shù)相比,F(xiàn)PGA的面積效率較低,功耗較大。當(dāng)年產(chǎn)量超過5000片時,使用結(jié)構(gòu)化ASIC通常具有更好的性價(jià)比。當(dāng)然,F(xiàn)PGA在許多應(yīng)用領(lǐng)域中仍是理想的原型設(shè)計(jì)工具,可以提供快速周轉(zhuǎn)和較低的前端成本。
如果采用FPGA做設(shè)計(jì)原型,那么規(guī)劃好向所選結(jié)構(gòu)化ASIC的移植非常重要。最好是盡早采用FPGA和ASIC庫做協(xié)同開發(fā)。不過即使不這樣做,少許的規(guī)劃努力也能使移植工作更加順利。
建議
采用可以避免失配的綜合工具策略。通常設(shè)計(jì)師可以使用他們選擇的前端環(huán)境將設(shè)計(jì)轉(zhuǎn)換成供應(yīng)商網(wǎng)表或寄存器轉(zhuǎn)移級的HDL描述;但FPGA綜合和 ASIC綜合很可能使用不同的工具或同一工具的不同版本。利用代碼檢查器和‘最小公分母’編程風(fēng)格可以避免結(jié)果的失配。這樣也可確保不同的工具不會對 RTL代碼作出不同的解釋。
提供時序細(xì)節(jié)。ASIC供應(yīng)商需要這些信息執(zhí)行綜合、時序?yàn)橹鲗?dǎo)的版圖和后版圖靜態(tài)時序分析。精確的系統(tǒng)時鐘信息和I/O系統(tǒng)時序預(yù)算,以及FPGA綜合腳本上的任何錯誤/多循環(huán)路徑信息都有助于加快版圖設(shè)計(jì)速度。
盡早與ASIC提供商討論可測性設(shè)計(jì)要求。雖然測試電路不需要納入FPGA原型中,但ASIC中不可測試的電路將降低器件的故障覆蓋率,并有可能使故障元件通過測試儀器的測試。一些ASIC供應(yīng)商在NRE中包含了測試插入和自動測試程序產(chǎn)生費(fèi)用;但仍可能要求專門的功能復(fù)用性測試引腳和額外的測試電路。
增加復(fù)位和初始化邏輯。即使FPGA不需要,但增加復(fù)位和初始化邏輯能使在完整原型上使用的測試向量產(chǎn)生與仿真相同的結(jié)果。
盡早決定封裝類型和引腳輸出。結(jié)構(gòu)化ASIC供應(yīng)商可以提供各種完全滿足設(shè)計(jì)要求、可以節(jié)省成本和電路板面積的封裝,但封裝選擇對FPGA來說是有限制的。如果要求與FPGA原型保持引腳兼容,那么應(yīng)該盡早與ASIC供應(yīng)商討論引腳輸出和封裝選擇以滿足設(shè)計(jì)要求。
圖:對于結(jié)構(gòu)化ASIC和FPGA協(xié)作開發(fā)項(xiàng)目,提前規(guī)劃很重要。
避免
使用與ASIC不匹配的原型FPGA RAM功能。雖然ASIC RAM通常是高度可配置的,不同的RAM容量不是問題,但要確保整個RAM容量和實(shí)例數(shù)量的可用性。異步訪問和不對稱地讀寫具有不同字寬的端口可能無法實(shí)現(xiàn),或要求增加額外的輔助電路和邏輯。
選擇ASIC產(chǎn)品中不能提供的FPGA I/O。因此需要檢查ASIC庫并尋求匹配性。這樣可以避免在原型板上插入ASIC時發(fā)生奇怪的問題。
使用FPGA供應(yīng)商提供的私有知識產(chǎn)權(quán)。要堅(jiān)持使用有信譽(yù)的供應(yīng)商提供的很容易用于FPGA和ASIC的可綜合IP。當(dāng)使用諸如鎖相環(huán)等模擬IP時,要確保目標(biāo)ASIC供應(yīng)商可以匹配設(shè)計(jì)所要求的頻率產(chǎn)生或降斜率要求。
使用長的互連線。雖然后端工具通過緊鄰放置互連電路可以很好地減少互連延時,但結(jié)構(gòu)化ASIC中的RAM位置是固定的,連接裸模頂部的 RAM和固定在底部與I/O相關(guān)的電路將增加延時。如果有任何重要的時序接口,應(yīng)避免會導(dǎo)致版圖設(shè)計(jì)后出現(xiàn)長互連的引腳輸出和RAM指配。
使用異步邏輯,如果可能的話。你可能無法在結(jié)構(gòu)化ASIC中再生FPGA異步邏輯路徑。