Ana Sayfa Bilgisayar Yazılım

Yazılım

Neden Bütün ASIC’ler İlk Olarak FPGA Kullanılarak Tasarlanmalı?

Neden Bütün ASIC’ler İlk Olarak FPGA Kullanılarak Tasarlanmalı?

ASIC tasarımların boyutları, karmaşıklığı ve maliyetleri artmaktadır. Aynı zamanda
elektronik pazarındaki sıkı rekabet pazara çıkış süresini oldukça önemli bir hale getirmiştir.
Dahası pazardaki kollar halen daralmaya devam ediyor; örneğin tipik bir ASIC tasarım 12 24
ay sürmektedir, fakat pazarın sunduğu fırsatları yakalayabilmek için ürünün 2 yada 4 haftada
hazırlanıp müşteriye sunulması gerekmektedir.  
 
Pazarın başlangıcında bir üründeki hata önemli gir gelir kaybına sebep olabilir (veya pazara
girmekte geç kalınırsa yatırım veya gelirin tümü de kaybedilebilir). Bu da ASIC tasarımda ilk
seferinde geri dönmeden doğru bir tasarım yapmak yönündeki baskıları büyük ölçüde
arttırmıştır. Geri dönüşlerde, yonga veya sistem seviyesinde, hız, verim ve maliyetler öne
çıkar.
 
Modern bir ASIC tasarımda, yüksek hızlı bir tasarımı birkaç Hz daha yüksek bir hızda
bilgisayar ortamında eşdeğer devre yazılımsal olarak simüle edilebilir. Pratik olarak bu detaylı
simulasyon  tasarımın sadece küçük bir parçasının doğrulandığı anlamına gelir. Bu yüzden
yüksek hızlı simülasyonları başarmak yerine, aşağıda bahsedildiği gibi dağıtılmış üç farklı
kategoride, bazı donanımsal yapılar oluşturmak gereklidir.  
 
Hızlandırma:
Donanım tabanlı hızlandırıcı çözümleri tipik olarak bir dizi özel amaçlı işlemci yongaları yada FPGA’lar içerir. Hızlandırıcı yapısında dikkat edilmesi gereken en önemli şey,
hızlanma moduna alınan ASIC simülasyonun komple sistem olmasıdır. Bu dağıtılmış yapı bir
yonga içerisinde ASIC olarak tanımlandığında aynı sistemi doğrulamayacaktır. Bir diğer
dikkat edilecek husus ise böyle bir hızlandırıcı çok pahalı olabilir ve gerçekte her birim aynı
anda sadece bir veya birkaç tasarımcı tarafından gerçekleştirildiği için bu problem daha da
önemli bir boyut kazanmaktadır. 
 
Benzetim: Donanım tabanlı benzetim çözümler de bir dizi özel amaçlı işlemci yongaları veya
FPGA’ler içerir. Benzetimin hızlandırıcıya göre avantajı tüm tanımlamanın sistem
seviyesinde olmasıdır. Dezavantajı iste simülasyon hızının 1 MHz olmasıdır bu ise bir çok
doğrulama için yeterli değildir. Ve bu birim çok pahalı olabilir ayrıca bir anda bir veya birkaç
tasarımcı tarafından gerçekleştirilir.
 
FPGA Tabanlı İlk-Örnekler: Bir çok durumda tasarımı gerçek hızında doğrulamak gerekir.
Bir video işlemcisi için örneğin video çıkış verisi akışı doğrulamada da öznel bir kaliteye
sahip olmalıdır. ASIC tasarımın donanımsal ilk-örneğini oluşturmak için bir veya daha fazla
FPGA kullanmak gerekir. FPGA tabanlı ilk-örnek hem yonga hem de sistem seviyesinde
davranışsal olarak ASIC’e özdeştir. Ayrıca gerçek zamanlı simülasyon hızı 10MHz ile
80MHz (Xilinx ile 600MHz) mümkündür, bu tür tasarımlar pahalı değildir ayrıca bir çok
tasarımcı tasarım süreci içerisinde yer alabilir bu da tasarım süresinin kısalmasını sağlar.


Synplicity Inc. Aralık 2004 den beri dünya çapında 20000 den fazla tasarımcıya ASIC
doğrulama stratejilerinde tasarımlarına denetleyicilik yapmıştır. Sonuçlar gösteriyor ki
günümüz ASIC tasarımlarının 1/3’ü FPGA tabanlı ilk-örnekleme yoluyla doğrulanıyor. Bu
makale geleneksel FPGA tabanlı ilk-örneklemedeki bazı problemleri tanıtmaktadır. Aynı
zamanda  İlk-Örneklemede kullanılan tasarım araçları da tanıtılacaktır, bunlar Certify ASIC
RTL İlk-Örnekleme, Synplify Proto Tek-Yonga İlk-Örnekleme, Synplify Pro advanced FPGA
sentezi ve Identifiy RTL Debugger.
 
Tek-FPGA İlk-Örnekleme
Daha önce de bahsedildiği gibi günümüz ASIC tasarımların 1/3’ü FPGA tabanlı  İlk-
Örnekleme ile doğrulanmaktadır. Dahası modern FPGA lerin gelişmiş özellikleri sayesinde
bu tasarımların 2/3’ü sadece FPGA tabanlı İlk-Örnekleme ile modellenebilir.
 
Tek-FPGA geliştirme bordlarını FPGA üreticilerinden veya malzeme teminatçılarından
bulmak mümkün. Yani böyle bir borda sahip olmak ile bütün problemler çözülmüyor. Asıl
problemler sentezlemede ve programın derlenmesindeki yetersizliklerde ortaya çıkmaktadır.
Bu problemler aşağıda tartışılmıştır.
 
Geleneksel Çözümlerdeki Problemler
FPGA tabanlı birçok  İlk-Örnekleme çözümünde rastlanılan en büyük problem ASIC ile
FPGA tanım lamasında kullanılan HDL dili arasındaki kod uygunluğudur. Örneğin ASIC
kaynak kodu tipik olarak clock-ayarlama yapılarına sahiptir ve bir FPGA gerçekleştirmesi ile 

kullanılabilmesi için sayıcı parçalarının clock enableleri için çevrilmesi (uygunlaştırılması)
gerekir. Benzer  şekilde ASIC kodları çoğu zaman Synopsys DesignWare kütüphanesi
elemanlarını içerir. Bu elemanlar hedef FPGA tarafından direkt olarak desteklenmiyorlar, bu
durumda RTL eşdeğeri ile değiştirilip kullanılmaları gerekecektir.
 
Bir çok  İlk-Örnek uygulamasında bu çevrimlerin tasarımcı tarafından yapılması gerekir,
sonuç olarak ortada iki ayrı kod dizini ortaya çıkmaktadır. Bunun anlamı ASIC kodunda bir
değişiklik yapıldığı takdirde bu değişim FPGA eşdeğerinde de yapılmalıdır.  İki ayrı kod
dizininde uyumu kaybetmek sürpriz olmayacaktır bunun gerçekleşmesi çok doğaldır. Bu
FPGA  İlk-Örneğinin istenilen ASIC formundan farklı olması kabus senaryosunun
gerçekleşmesine neden olacaktır. 
 
Diğer bir dikkat edilecek husus ise tasarım için uygun görünen FPGA tabanlı bir çok  İlk-
Örnek çözümünde vardır. Yazılım geliştiricilerin C/C++ kaynak kodu kullanıyor olduklarına
dikkat edin yazılım seviyesinde derleyiciler  C/C++ tabanlıdır. Benzer  şekilde günümüz
donanım tasarlama mühendisleri Verilog ve/veya VHDL kaynak kodu kullanıyorlar.
Böylelikle maksimum verim için donanımcıların yazdıkları kod dizini içerisinde yazılım
seviyesinde derleme tekniği hakkında yetkin olmaları gerekir. FPGA’lerin bir avantajı sanal
derleyici mantığı yonga içerisinde kendiliğinden yapılmaktadır. Geleneksel derleyici
uygulamalarında bu problem sadece ardışık olarak gelen bilgilerin grafik dalga formlarından
takip edilir. 
 Syplify Proto’ nun Avantajları
State-of-the-art çözümlerini, FPGA tabanlı İlk-Örnek tasarımlar üzerinde uygulayabilmek için 
Synplicty’in Synplify Pro ve Identifiy uygulamalarının tasarım ve doğrulama (Şekil 1)
özellikleri kullanılır. Synplicity bu çözümü, tümleşik bir ürün halinde, Synplify Proto tek-
yonga ASIC RTL İlk-Örnek çözümü ismiyle sunmaktadır.
 
Bu akıştaki ilk eleman RTL derleyicisinin yüzeyi instrumentor’ dür. Özelliği ise sezgisel ve
kullanımı kolay hiyerarşik kaynak kodu sunucusudur (Şekil 2). Özel göz-camı sembolleri
sayesinde herhangi bir sinyalin değerleri örneklenebilir veya sistem içerisinde tetikleme için
kullanılabilir. Bu sembolün üzerinde iken fare sol tıklandığında bu sinyalin derleyici
tarafından kullanılma sebebi hakkında bilgilendirici bir not çıkar farenin sağ tuşuna
basıldığında ise kullanıcının bu sinyali örnekleme, tetikleme veya her ikisi olarak nasıl
kullanmak istiyorsa o şekilde kullanmasına izin verir.
 
Benzer  şekilde If-Then-Else ve Case kontrol terimleri ile sembollere kontrol atanabilir. Bu
sembollerden birine tıklandığında tanımlama programı bir kırılma noktası (durdurma)
oluşturmak bu yapının kullanılabileceği hakkında bilgi verir.
 
 

Bir diğer çok kullanışlı özelliği ise herhangi bir aday parçalama işlemi oluşturulduğunda bu
tasarım isimlendirilip saklanabiliyor. Bu sayede kullanıcının farklı bir çok parçalara ayırma
senaryosunu incelemesi sağlanıyor. 
 
İlk olarak Certify aracı kullanılarak parçalama işleminin RTL seviyesinde yapılması sağlandı,
Identify RTL Debugger ise sinyallerin örnekleme veya tetikleme için kullanımını, kesmeler
(Break-points) oluşturulabilmesini , kontrol ve kimliklendirme yapılarının kolayca
oluşturulabilmesini ve tasarımın hızlıca gerçekleştirilebilmesini mümkün kılmıştır. 
 
Identify ürününün daha sonraki enstrümantasyon adımında, farklı FPGA devreleri üzerinde
ortaklaştırılmış kod dizisini sentezlemek amacıyla Certify yazılımı kullanılır. Certify ürünü
Synplify Pro çözümü ile aynı kapasite ve aynı algoritmaları sunar. Örneğin, Certify yazılımı
ASIC merkezli yapıları otomatik olarak FPGA eşdeğeri yapılara çevirir. Benzer  şekilde
Certify yazılımı Synplicity BEST algoritmasını da bütün özellikleri ile kullanabilir, ki bu
bileşen RTL analizi yapar ve yüksek seviyede optimizasyon yapar. Certify uygulamaları
Synplify Pro ürününün sentezleme  kabiliyetleri, kaynak paylaşımı, hafıza ayarlamaları,
yeniden zamanlama, kopyalama ve yeniden sentezleme gibi bütün özelliklerini taşır.
 Certify çözümlerinde temel yaklaşım  şudur: sistemdeki farklı her bir FPGA tasarım
hiyeraşisine eklenmiş bir katman olarak düşünülür. Bunun anlamı Certify ürünü, zamanlama
birimlerinin optimizasyonunu etkili bir biçimde yapacak yetenekte özel bir yapı sunar öyleki
bu alanlar farklı FPGA’lar içerisinde dahi olsa. 
 
Alışıldığı üzere önce kısımlara ayrılmış tasarım İlk-Örnek bordu üzerindeki FPGA’e yüklendi,
Identify RTL Debugger tasarımı donanım hızında derlemek için kullanılabilir. Yeniden
Identify uygulaması FPGA’in kendi JTAG portlarını kullanarak, bu iş için herhangi genel
amaçlı bir I/O pini kullanmadan FPGA ile bağlantı kurar. 
 
Sonuç
ASIC tasarımların gerçek hızda çalışan  İlk-Örneklerinin yapılması gerekliliği günden güne
artmaktadır. Bu iş için kullanılan bir çok etkili yöntem FPGA tabanlı  İlk-Örnekleme
tekniğidir, ve bu günümüz ASIC tasarımcılarının 1/3’ü bu tip bir  İlk-Örnekleme yöntemi
kullanarak tasarımlarını doğrulamaktadırlar. FPGA tabanlı  İlk-Örneklemede tasarımların
2/3’ü tek-FPGA 1/3’ü ise çoklu FPGA kullanılarak gerçekleştirilir. 
 
Synplify Proto yazılımı tek-FPGA  İlk-Örnek tasarımının ihtiyaç duyduğu her  şeyi
sağlamaktadır. Benzer şekilde Certify otomatik parçalama bileşeni ve Identify RTL Debugger
birlikteliği de çoklu-FPGA İlk-Örnek tasarımının ihtiyaç duyduğu her şeyi karşılamaktadır.
 
Her iki durumda da orijinal ASIC HDL kaynak kodu korunur ve “golden” olarak takdim edilir.
Certify ve Synplify Proto uygulamalarında ASIC merkezli yapılar, sentez bileşenleri (engine)
sayesinde otomatik olarak FPGA eşdeğer yapılarına dönüştürülür. Her iki durumda da
Identify RTL Debugger tasarım mühendisinin orijinal HDL kodunu kullanarak tasarımını
analiz etmesine ve derlemesine müsaade eder, bu sayede anlaşılırlık ve verimlilik artar. Sonuç
olarak Certify ve Synplify Proto ürünlerindeki sentez bileşenleri tarafından görev tanımları
yapılan state-of-the-Art sentez  ve optimizasyon algoritmaları, FPGA  İlk-Örnek
gerçeklemelerde optimizasyon ve performans açısından en iyi çözümleri sunmaktadırlar.  

 

                                                                 Ahmet Turan ÖZDEMİR
                                                                                         Erciyes Üniversitesi 

 

Dökümanı pdf olarak indirmek için ;

 http://www.elektrokampus.com/dokumanlar/asic_fpga.pdf

 

Veri Tabanı Yönetim Sistemleri sql Programlama

Veri Tabanı Yönetim Sistemleri sql Programlama

Veri Nedir? ,Veri Tabanı Nedir ?
Veri Modeline Göre Veritabanı Yönetim Sistemleri
Neden Veritabanı Kullanılır?
Veri Tabanı Yönetim Sistemlerinin Sağladığı Yararlar
Bilinen VTYS Programları
Proje ve VTYS arasındaki ilişki
VERİ ve VERİ MODELLERİ
Model Nedir? ,Veri Kavramı
Veri Güvenliği
Veri Tekrarı ve Veri Bütünlüğü
Veri Modeli ,Yapılar
Kısıtlar ,İşlemler
Başlıca Veri Modelleri
Basit Veri Modelleri
Geliştirilmiş Veri Modelleri
VERİ TABANI TEMEL KAVRAMLARI
Tablo ve Elemanları
Veri Tipi (Data Type)
Access Veri Tabanı Veri Tipleri
MySQL Veri Tabanı Veri Tipleri
Oracle Veri Tabanı Veri Tipleri
Zorlayıcı (Constraint)
Anahtar (Key) ,Index (İndeks)
View (Görüntü)
Joining (ilişkilendirme)
VERİ TABANI TASARIMI ve NORMALİZASYONU
Veri Tabanı Tasarımı
Veri Tabanı Normalizasyonu!@#!@...

PAL PLD FPGA ABEL notları pdf

PAL PLD FPGA ABEL notları pdf

Mikro İşlemcilere Giriş - Erciyes Üniversitesi

Mikro İşlemcilere Giriş - Erciyes Üniversitesi

Yazar Kadromuz

Mehmet Çakmak-Yazar Nizam Babayiğit Umut Yılmaz Ahmet Çakır

Pano

Ahmet Çakır sitemizde yazarlığa başlamıştır.

Kendisine başarılar dileriz.  Mehmet Çakmak

-------------------------

Yazar Başvurusu İçin;

cakotr@gmail.com

-------------------------

Organizatör:
Tür:
Ağ:
Küresel
Tarih:
07 Kasım 2009 Cumartesi
Zaman:
10:30 - 16:30
Yer:
erciyes üniversitesi iibf konferans salonu