Tue . 20 Feb 2020
RU | UK | KK | BE | EN |

Donanım tanımlama dili

donanım tanımlama diligent, donanım tanımlama diligence
Donanım tanımlama dili veya DTD, elektronik devrelerin tanımlanması amacıyla kullanılan herhangi bir bilgisayar dilinin sınıfına verilen addır. Donanım tanımlama dili, devrenin yürüttüğü işlemi, tasarımını ve benzetim (simülasyon) yoluyla doğrulamasını gerçekleştirebilir.

Yazılım programlama dilinden farklı olarak, DTD’nin sözdizimi ve semantiği donanımın birinci özelliği olan zaman ve uyumluluk açısından açık ifadelere yer vermektedir. Sadece devre bağlantılarını ifade etmeye yarayan ve bloklar arasındaki hiyerarşiyi tanımlamaya yarayan dillere netlist denmektedir.

DTD önceleri herhangi bir donanım için çalıştırılabilir özelliklerin benzetimini yapmak amacıyla kullanılıyordu. Zamana bağlı işlem yapan benzetim programları sayesinde bir donanım parçası fiziksel olarak üretilmeden önce tasarımcı tarafından test edilebiliyordu. Bu çalıştırılabilirlik DTD’nin bir programlama dili olduğu hissini vermiştir.

Donanım anlamı C++ gibi geleneksel programlama dilleri ile kazanılabilir; fakat, C++ dilinde zamanı açık bir şekilde ifade etmek mümkün olmadığından düzgün bir donanım tanımlama dili değildir.

Herhangi uygun bir donanım tanımlama dili ile yazılmış kod, sentezleyici adı verilen bir yazılım tarafından işlenir. Bu işlem koddan mantıksal işlemlerin çıkarılması ve buna eş değer bir netlist yaratılarak donanımın taslağının oluşturulması işlemidir. Bu işlem koddaki herhangi bir zaman yapısının ihmal edilmesi ile elde edilir. Bir dilin bir altkümesinin sentezlenebilir olması o dilin bir DTD olduğunu temin etmez.

Bir sistemi DTD kullanarak tasarlamak, bir programlama dili ile yapmaktan çoğu zaman daha zor ve daha çok zaman gerektiren bir Çişlemdir. Bu sebeple C programlama dili kodunu otomatik olarak DTD’ye çevrilmesi üzerinde birçok uğraş verilmiştir fakat 2004 yılı itibariyle bu işlemin yüksek bir ticari başarıya ve kullanıma ulaştığı söylenemez.

Konu başlıkları

  • 1 Donanım tanımlama dillerinin tarihçesi
  • 2 DTD kullanarak tasarım
  • 3 DTD kodunun benzetimi ve hata ayıklaması
  • 4 Diller
    • 4.1 Sayısal Devre tasarımı
  • 5 Dış bağlantılar
  • 6 Notlar

Donanım tanımlama dillerinin tarihçesi

İlk donanım tanımlama dilleri olan ISP (Carnegie Mellon üniversitesi) ve KARL (Kaiserslautern Üniversitesi) 1977 yılı civarında bulunmuştur. Bu diller daha çok tasarımın giriş ve çıkışı arasındaki bağlantıları tanımlayan yazılım programlama dilleri gibiydi. Bu sebeple tasarım benzetimi için kullanılabilirken, sentezlenemezlerdi.( kitap bölümü )

İlk modern DTD, Verilog 1985 yılında Gateway Design Automation tarafından bulunmuştur. Daha sonraları Cadence Design Systems gelecek on senenin DTD benzetim standardı haline gelecek olan Verilog-XL’nin haklarını aldı. 1987 yılında Amerika Savunma Dairesi tarafından yapılan bir istek ile VHDL (Very High Speed Integrated Circuit Hardware Description Language) doğdu. DTD benzetimleri mühendislere şematik seviyesinden daha ileri bir seviyede çalışma imkânı vermiş ve tasarım sığasını yüzlerce transistörden binlerceye yükseltmiştir.

Donanım tanımlama dillerinin mantık kapıları seviyesinde sentezlenebilmesi sayısal tasarım alanında DTD’leri ön plana çıkarmıştır. Sentezleme araçları DTD kaynak dosyalarını (yazmaç aktarımı seviyesi adı verilen bir biçimde yazılmış olan) derleyerek kapı/transistor seviyesinde üretime hazır netlist tanımlamaları yaratmaktadır.

Verilog ve VHDL senelerdir sayısal tasarımın en önde gelen iki donanım tanımlama dilidir fakat ikisi de hemen hemen aynı sınırlamalara sahiptir. Örneğin iki DTD analog veya karışık-sinyal devrelerinin benzetimleri için uygun değillerdir. Özyinelemeli kurulan mantık yapıları için gerekli tanımlamalara sahip değillerdir. Bu amaçla ortaya çıkan özelleşmiş DTD’ler olsa dahi hiç biri VHDL/Verilog’un yerini tutamamıştır.

Uzun bir süredir DTD’leri geliştirmek için büyük bir emek harcanmaktadır. Verilog’un IEEE 1800-2005 Systemverilog olarak bilenen son sürümü daha iyi rastgele hale getirilmiş test, tasarım hiyerarşisi ve tekrar kullanım adına birçok yenilik (sınıflar, rastgele değişkenler vs.) içermektedir. Böylece hem VHDL hem de Verilog sahip oldukları yeniliklerle gelecek senelerde de aktif olarak kullanılacaktır.

DTD kullanarak tasarım

Modern sayısal devre tasarımlarının büyük bir çoğunluğu istenilen devrenin, aygıtın ve sistemin donanım tanımlama dili ile gerçekleştirilmiş hali ile yürümektedir.

Çoğu tasarıma geleneksel olarak kâğıt ve kalem ile istenilenlerin bir özeti ve mimari düzeyinde şemalarla başlanır. Donanım tanımlama dili ile tanımlama işlemi genel olarak devrenin yapısına ve kodu yazanın geçmişine bağlıdır. Kontrol ve karar verme yapıları genel olarak akış diyagramları veya durum diyagramları ile modellenir. Tasarımcılar kendi kendini otomatik olarak tekrarlayan devre yapıları için DTD içerisinde komut dizisi dillerini (PERL gibi) dahi kullanabilir.

Tasarımın ana hatları gerçekleşmeye başlayınca, yazılan kod bir gözden geçirmeye tabi tutmalıdır. Sentezlemeye hazırlanırken DTD otomatik kontrol edicilerden geçer. Bu kontrol ediciler genel olarak yapılan mantıksal hataları (kısa devre veya bağlanmamış bağlantı noktaları gibi) saptama amacıyla kullanılır.

Endüstriyel bir deyişle, DTD tasarımı sentezlemeden sonra sona erer. Sentezleme aracı DTD tanımlamasını kapıların netlisti şeklinde haritaladıktan sonra, netlist son kısma gönderilir. Fiziksel teknolojiye göre (FPGA veya çeşitli ASIC türleri olabilir) donanım tanımlama dilinin görevi devam edebilir veya etmeyebilir. Eğer sonuçta silikon bir yonga üretilecekse tasarım veritabanı daha çok üretim teknolojisi ile ilgili verilerle yüklü olur.jhghjkhk

DTD kodunun benzetimi ve hata ayıklaması

DTD kodunun benzetimi, tasarımın amacı ile ilgili doğrulamayı geçmesini sağlamasının yanında tasarımın gerekli işlemi doğru yaptığını gösteren önemli bir basamaktır. Aynı zamanda farklı tasarım seçenekleri bu basamakta denenerek mimari açısından da gelişmeyi sağlayabilecek yararlar edinilebilir. Bu sebeplerden dolayı benzetim basamağı başarılı bir DTD tasarımı için çok önemlidir.

Modern DTD benzeticilerinin birçok hata ayıklama aracıyla birlikte grafiksel ara yüzü bulunmaktadır. Bu araçlar tasarımcıya benzetimi herhangi bir zamanda durdurup yeniden başlatma koddan bağımsız bir şekilde kesme noktası koyabilme gibi avantajlar sağlamaktadır.

Tasarım doğrulaması genelde tasarım işleminin en çok zaman alan kısmıdır. Bunun nedeni tasarımın işlevsel gerekliliğin tasarımcı tarafından farklı yorumlanması olabileceği gibi DTD dilinin net olmayan ifadelerinden de kaynaklanabilir. Bir DTD tanımlaması aynı zamanda bir donanımda da ilk örnek (prototip) haline getirilip test edilebilir. Programlanabilir mantık aygıtı ile gerçekleştirilen bu işlem benzetime göre pahalı olsa da, tasarımın gerçek çalışan halinin elde edilmesi daha tutarlı sonuçlar vermektedir. İlk örnekleme, eldeki tasarımı, yavaş çalışan FPGA’lerde gerçekleştirilse dahi, en hızlı test/benzetim şeklidir.

Diller

Sayısal Devre tasarımı

En çok bilinen, kullanılan ve desteklenen DTD dilleri:

  • VHDL
  • Verilog

Diğerleri:

  • Advanced Boolean Expression Language (ABEL)
  • AHDL (Altera HDL, Altera’nın tescilli dili)
  • Atom (Haskell üzerine kurulmuş yüksek seviyeli bir DTD)
  • Bluespec (Haskell üzerine kurulmuş bir DTD. Şu anda SystemVerilog sözdizimine sahiptir.)
  • Confluence (Fonksiyonel bir DTD fakat devamı gelmemiştir.)
  • CUPL ( Logical Devices, Inc. firmasının tescilli dili)
  • HDCaml (Objective Caml temelli)
  • Hardware Join Java(404 Error) (Join Java temelli)
  • HML ( SML temelli)
  • Hydra ( Haskell temelli)
  • JHDL (Java temelli)
  • Lava (Haskell temelli)
  • Lola (eğitim amaçlı basit bir dil)
  • MyHDL (Python temelli)
  • PALASM (Programmable Array Logic (PAL) aygıtları için)
  • Ruby (donanım tanımlama dili)
  • RHDL ( Ruby programlama dili temelli)
  • CoWareC, CoWare tarafından yaratılmış C-temelli DTD. SystemC kullanımı amacıyla kullanılmamaktadır.
  • SystemVerilog, sistem seviyesi tasarım ve doğrulama iyileştirmeleriyle Verilog’un bir üst kümesi gibi görülmektedir.
  • SystemC, C++ kütüphanelerinin bir sistem tanımlama dili şeklinde standartlaşmış hali.

Dış bağlantılar

  • Research labs değişik üniversitelerde.
  • Açık Dizin Projesi'nde Donanım tanımlama dilleri kategorisi
  • Lava
  • Verilog-AMS Technical Subcommittee

Notlar

  1. ^ J. Mermet (editor): Fundamentals and Standards in Hardware Description Languages (Springer Verlag, 1993)

donanım tanımlama dilidili, donanım tanımlama diligence, donanım tanımlama diligent, donanım tanımlama dilip


Donanım tanımlama dili Hakkında Bilgi

Donanım tanımlama dili


  • user icon

    Donanım tanımlama dili beatiful post thanks!

    29.10.2014


Donanım tanımlama dili
Donanım tanımlama dili
Donanım tanımlama dili konusunu görüntülemektesiniz.
Donanım tanımlama dili nedir, Donanım tanımlama dili kimdir, Donanım tanımlama dili açıklaması

There are excerpts from wikipedia on this article and video

Rastgele Yazılar

NGC 64

NGC 64

DoğrulukGörüldü Atla: kullan, ara Koordinat: 00s 17d 30,30sn...
Hüseyin Faruk Karadoğan

Hüseyin Faruk Karadoğan

Hüseyin Faruk Karadoğan, İstanbul Teknik Üniversitesi'nden 1966 yılında İnşaat Fakültesinden mezun o...
Yağmur kuşları

Yağmur kuşları

Yağmur kuşları (Latince: Charadriiformes), kuşlar sınıfına ait bir takımdır. Çok değişik yaşam alanl...
Kubrat

Kubrat

Kubrat ya da Kurt (Bulgarca: Кубрат) (d. 584 - ö. 638), 632-638 yılları arasında hüküm süren Büyük B...