官术网_书友最值得收藏!

  • SoC設計方法與實現
  • 郭煒 魏繼增等編著
  • 1645字
  • 2018-12-26 16:59:28

3.3 邏輯綜合及綜合工具

從硬件的行為描述轉換到電路結構,這種自動產生電路結構的過程稱為綜合。它把設計人員從門級電路的設計中解脫出來,讓設計人員把更多的精力放在電路的邏輯功能的設計上,只需要用專用的硬件描述語言把電路的功能描述清楚即可,這就大大提高了設計效率。同時,電路的設計者往往希望所設計的電路可以自由地移植到另外的環境和工藝下,所以他們希望這種移植工作不需要設計人員花費過多的精力,而由軟件工具自動來完成。所以在當今的EDA設計與實現過程中,綜合是一個非常重要的環節。

3.3.1 EDA工具的綜合流程

圖3-5 綜合流程

如圖3-5所示,就現有的EDA工具而言,邏輯綜合就是將RTL級的描述轉換為門級網表的過程,一般分3步完成這一過程。

首先將RTL描述轉換成未優化的門級布爾描述,即布爾邏輯方程的形式,這個過程可以稱為翻譯,或者展平。

接下來執行優化算法,化簡布爾方程,這一步叫作優化。

最后按照半導體工藝要求,采用相應的工藝庫,把優化的布爾描述映射為實際的邏輯電路,這一步稱作映射,即門級網表的映射。在這一過程中,提取工具會取出經過優化后的布爾描述,并利用從工藝庫中得到的邏輯和時序信息去做網表。網表是對用戶所提出的面積和速度指標的一種體現方式。工藝庫中存有大量的標準單元的元器件信息,他們在功能上相同,但可以在速度和面積等特性上不同。

3.3.2 EDA工具的綜合策略

不同的電路描述方法將導致生成不同的電路,為了使設計更加有效,設計者應該了解一些EDA工具基本的綜合和優化策略,這樣可以選擇和規劃不同的綜合策略來實現高效的電路。

1.以速度為目標的綜合策略

以速度為目標的綜合策略是當速度問題是設計的主要矛盾時,需要采用的綜合方案。這一類算法的核心是忽略所有的有關代價的約束,尋找出具有最大速度特性的算子調度方案。只有當速度滿足了設計要求時才去考慮其他代價的優化。

2.成本盡可能低的綜合策略

成本盡可能低的綜合策略是當成本問題是設計的主要矛盾時,需要采用的綜合方案。這一類算法的核心是忽略所有的有關速度的約束,尋找出具有最低成本特性的算子調度方案。只有當成本特性滿足設計要求時才去考慮速度的優化。

3.速度和成本折中的綜合策略

速度和成本折中的綜合策略是當所尋找的是一個最優的設計時,需要采用的綜合策略。這一類算法的核心是將速度盡可能快的調度算法給出的速度和低成本(面積)分別作為系統速度的上界和下界,尋找出具有最低成本和最快速度的調度方案。

3.3.3 優化策略

在綜合過程中,綜合工具需要調整電路的結構以滿足約束的要求。一個好的綜合工具,可以在保證電路功能與設計一致的前提下,對電路的結構有比較大的調整,使電路的性能有較大的提高。較典型的策略如下。

1.器件復用

該策略在不影響功能的前提下,把不同的電路中某些相同的器件進行復用,以減小芯片的面積。但這種優化策略有可能會降低速度,設計者應該統籌考慮。

2.時序重排

該策略允許把觸發器間的延時比較大的組合邏輯的一部分調整到前一級或后一級,以平衡時序關系,降低關鍵路徑,提高系統的性能。

3.狀態機重新編譯

狀態機的實現是非常復雜的,往往設計者只是保證狀態機的正確,而很難根據實際電路的情況設計狀態機。該策略允許對電路中的狀態機重新編譯,以找到使電路性能更高、資源更省的實現方式。

以上所提到的綜合及優化策略只允許設計者在宏觀上指導綜合的進行。事實上,同樣的硬件描述語言在不同的綜合工具中所得到的結果都是不同的,而綜合工具對某一特定電路的綜合和優化又與該電路的描述方法息息相關。這就要求設計者能夠熟悉綜合工具更為具體的綜合策略,掌握其中的規律,設計出更有效率的電路。

3.3.4 常用的邏輯綜合工具

Synopsys的RTL綜合工具Design Compiler自從1987年以來在全球范圍內使用,它也是當前90%以上ASIC設計人員廣泛使用的軟件。據統計,使用Design Compiler系列軟件僅有1%的設計風險,它可以快速生成面積有效的ASIC設計。采用用戶指定的標準單元或門陣列庫可將設計從一種工藝轉換成另一種工藝,能使設計人員有效地進行靜態時序分析、測試綜合和功耗綜合集成,形成完整的解決方案。幾乎所有的硅片供應商、IP供應商和庫的供應商都支持Design Compiler。

主站蜘蛛池模板: 鄱阳县| 迁安市| 泗阳县| 麻城市| 花垣县| 长乐市| 菏泽市| 峨眉山市| 克东县| 高青县| 牟定县| 蒙山县| 衢州市| 正阳县| 泽州县| 金昌市| 集贤县| 界首市| 武冈市| 樟树市| 富裕县| 武鸣县| 安新县| 筠连县| 镇原县| 双峰县| 西乌珠穆沁旗| 南部县| 新田县| 泸溪县| 新疆| 宜川县| 佛冈县| 黄大仙区| 洞口县| 正定县| 岫岩| 城步| 九龙城区| 称多县| 竹北市|