Tipik olarak ASIC tasarımı, işin karmaşıklığı ve miktarından dolayı bir ekip çalışmasıdır. Zorlu bir adımlar sırası vereceğim, ancak bazı adımlar paralel veya sıra dışı olarak tamamlanabilir. Her görev için kullandığım araçları listeleyeceğim, ancak ansiklopedik olmayacak.
Bir hücre kütüphanesi oluşturun. (Alternatif olarak, çoğu işlem, ticari olarak temin edilebilen kapı kitaplıklarına sahiptir. Mevcut olmayan bir şeye ihtiyacınız olmadığını bilmediğiniz sürece bunu öneririm .) Bu, ihtiyaç duyulan sayıda mantık işlevi için çoklu sürücü gücü kapıları tasarlamayı, tampon sürücüleri / alıcıları tasarlamayı içerir. ve bir dizi çarpanı veya bellek gibi herhangi bir makro. Her hücre için şematik tasarlanıp doğrulandıktan sonra, fiziksel düzen tasarlanmalıdır. Kullandığım Ritim Virtuoso'yu gibi analog devre simülatörleri ile birlikte, bu işlem için Spectre ve HSPICE .
Hücre kütüphanesini karakterize edin. (Üçüncü taraf geçit kitaplığınız varsa, bu genellikle sizin için yapılır.) Kütüphanenizdeki her hücre, Statik Zamanlama Analizi (STA) için zamanlama tabloları oluşturmak üzere simüle edilmelidir. Bu, bitmiş hücrenin alınmasını, Assura , Diva veya Calibre kullanılarak düzen parazitlerinin çıkarılmasını ve devrenin değişen giriş koşulları ve çıkış yükleri altında simüle edilmesini içerir. Bu, STA paketinizle uyumlu her bir geçit için bir zamanlama modeli oluşturur. Zamanlama modelleri genellikle Liberty dosya biçimindedir. Ben kullandım Silikon Smart ve Özgürlük-NCXgerekli tüm koşulları simüle etmek için. Çoğu yazılımın düzgün çalışması için muhtemelen "en kötü durum", "nominal" ve "en iyi durumda" zamanlama modellerine ihtiyaç duyacağınızı unutmayın.
Tasarımınızı sentezleyin. Üst düzey derleyicilerle ilgili deneyimim yok, ancak günün sonunda derleyici veya derleyici zincirinin üst düzey tasarımınızı alıp geçit düzeyinde bir ağ listesi oluşturması gerekir. Sentez sonucu, teorik sistem performansında elde ettiğiniz ve göz kuvveti sorunlarının ilk ele alındığı nokta. Design Compiler'ı RTL kodu için kullandım .
Tasarımınızı yerleştirin ve yönlendirin. Bu, kapı seviyesi ağ listesini sentezleyiciden alır ve fiziksel bir tasarıma dönüştürür. İdeal olarak bu, fabrikasyon için hazır bir ped-pad düzeni oluşturur. P&R yazılımınızı otomatik olarak binlerce DRC hatası yapacak şekilde ayarlamak çok kolaydır, bu yüzden bu adımda hepsi eğlenceli değil. Çoğu yazılım sürücü gücü sorunlarını yönetir ve yönlendirildiği gibi saat ağaçları oluşturur. Bazı yazılım paketleri Astro, IC Derleyici, Silikon Encounter ve Silikon Topluluğu içerir. Yer ve rotadan elde edilen sonuç nihai netlist, nihai düzen ve çıkarılan düzen parazitleridir.
Mizanpaj Sonrası Statik Zamanlama Analizi. Buradaki amaç, tasarımınızın zamanlama şartnamenize uygun olduğunu ve herhangi bir kurulum, bekletme veya kapılama sorunu bulunmadığını doğrulamaktır. Tasarım gereksinimleriniz kısıtlıysa, hataları düzeltmek ve P&R aracınızdaki düzeltmeleri güncellemek için burada çok zaman harcayabilirsiniz. Kullandığımız son STA aracı PrimeTime oldu .
Mizanpajın fiziksel olarak doğrulanması. P&R aracı tarafından bir pafta oluşturulduktan sonra, tasarımın proses tasarım kurallarına uyduğunu (Tasarım Kural Kontrolü / DRC) ve paftanın şematik (Şemaya Karşı / Şema / LVS) eşleştiğini doğrulamanız gerekir. Düzenin doğru şekilde kablolandığından ve üretilebilir olduğundan emin olmak için bu adımlar izlenmelidir. Yine bazı fiziksel doğrulama araçlarıdır assura , Diva veya kalibre .
Son tasarımın simülasyonu. Karmaşıklığına bağlı olarak, kullanarak bir transistör düzey simülasyon yapmak mümkün olabilir Spectre'ı veya HSPICE kullanarak bir "hızlı baharat" simülasyon HSIM veya kullanan tamamen dijital simülasyon ModelSim veya VCS . STA veya P&R aracınızın yardımı ile gerçekçi gecikmelere sahip bir simülasyon üretebilmelisiniz.
Varolan bir geçit kitaplığıyla başlamak, bellek, mikrodenetleyici veya alternatif işlem blokları gibi tasarımınıza yarar sağlayan tüm makroları kullanmak kadar büyük bir zaman tasarrufu sağlar. Tasarım karmaşıklığını yönetmek de büyük bir parça - tek bir saat tasarımının birden fazla saat alanlı devreden daha doğrulanması kolay olacak.