Ada dayalı olması kadar sözdizimi mümkün gerektiren Savunma Bakanlığından dolayı, Ada gelişiminde zaten iyice test edilmiştir yeniden icat kavramlarını önlemek için VHDL gelen ağır ödünç Ada programlama dili kavram ve hem de sözdizimi Için tasarlanmıştır,İlk sürümü IEEE standart 1076-1987 , sayısal (dahil olmak üzere veri türleri geniş bir yelpazede, dahil tamsayıve gerçek ), mantıksal ( bit ve boolean ), karakter ve zaman , artı diziler bir bit olarak adlandırılan bit_vector ve karakter adı verilen dize .
Bu sürümü tarafından çözülmüş bir sorun değil, ancak, bir sinyal sürücü gücü (yok, zayıf veya güçlü) ve bilinmeyen değerleri de kabul edebilir "çok değerli mantık", oldu. Bu gerekli IEEE standardı 1.164 skaler: 9-değeri mantık türleri tanımlanmış, std_logic ve vektör sürümü STD_LOGIC_VECTOR .
Güncellenmiş IEEE 1.076 , 1993 yılında, adlandırma daha fazla esneklik izin, sözdizimi daha tutarlı yapılan genişletilmiş karakter
ISO-8859-1 basılabilir karakterler izin tipi, katma xnor
operatörü, vb operatörleri.
Standardında küçük değişiklikler (2000 ve 2002) korumalı tip fikri eklendi (sınıf kavramına benzer C + +) ve port haritalama kurallardan bazı kısıtlamalar kaldırıldı.
IEEE standardı 1164 olarak ek olarak, birçok çocuk standartları dilin işlevselliğini genişletmesi tanıtıldı. IEEE standart 1076,2 gerçek ve karmaşık veri türleri daha iyi taşıma ekledi. IEEE standart 1076,3 tanıtıldı imzalı ve imzasız vektörler üzerinde aritmetik işlemleri kolaylaştırmak için türleri. IEEE standart 1076,1 (olarak bilinen VHDL-AMS ) analog ve karışık sinyal devre tasarımı uzantıları sağladı.
Diğer bazı standartlar VHDL daha geniş kullanımı, özellikle HAYATİ (ASIC Kütüphaneler Doğru VHDL Girişimi) ve destek mikrodalgadevre tasarımı uzantılarıdır.
Haziran 2006'da, bir VHDL Teknik Komitesi Accellera (standart bir sonraki güncelleme üzerinde çalışmaya IEEE tarafından delege) bu yüzden VHDL-2006 Taslak 3.0 adı verilen onaylanmıştır. Eski sürümleri ile tam uyumluluk korurken, bu önerilen standart daha kolay yazma ve VHDL kodu yönetmek yapmak çok sayıda uzantıları sağlar. Önemli değişiklikler çocuk standartlarına dahil edilmesi (1164, 1076,2, 1076,3) ana 1.076 standart haline, operatörlerin uzun bir dizi, daha esnek sözdizimi içerir durumda ve oluşturmak ifadeleri, VHPI dahil edilmesi (arayüzüne C / C + + dilleri) ve bir alt kümesi PSL ( İşletme Özellikleri Dil ). Bu değişiklikler sentezlenebilir VHDL kod kalitesini artırmak gerektiğini, testbenches daha esnek yapmak ve sistem düzeyinde açıklamalar için VHDL daha geniş kullanımına izin verir.
2008 yılı Şubat ayında, Accellera VHDL 4.0 da gayri resmi sürüm 3.0 için deneme süresi boyunca tespit 90'dan fazla sorunları ele ve geliştirilmiş genel türleri içerir VHDL 2008 olarak bilinen onayladı. 2008 yılında, Accellera IEEE 1076-2008 eklenmek üzere gizli oylama için IEEE VHDL 4.0 yayındı. VHDL standardı IEEE 1076-2008 Ocak 2009'da yayınlanmıştır.
Tasarım
VHDL yaygın olarak, bir mantık devresini tarif metin modelleri yazmak için kullanılır. Böyle bir model, bu mantık tasarımının bir parçası olduğu takdirde, bir sentez programı tarafından işlenmektedir. Bir simülasyon programı tasarım arayüzü mantık devreleri temsil etmek için simülasyon modelleri kullanarak mantık tasarımı test etmek için kullanılır. Simülasyon modelleri Bu koleksiyona genellikle testbench denir.
VHDL işlemek için yapıları vardır paralellik donanım tasarımları doğasında, ancak bu yapıları ( süreçler ) Ada (içinde paralel yapıları gelen sözdizimi farklı görevleri ). Ada gibi, VHDL olduğunu kesinlikle yazılı ve bir küçük harfe duyarlı değildir . Doğrudan donanım yaygındır işlemleri temsil etmek için, bu da dahil olmak üzere Boole operatörleriyle uzun bir dizi olarak Ada bulunmayan VHDL birçok özelliği vardır NAND ve ne de . VHDL de diziler her iki yönde artan veya azalan endeksli izin verir; hem kongre donanım kullanılır, Ada ve en programlama dilleri sadece artan indeksleme kullanılabilir ise.
VHDL dosya giriş ve çıkış yetenekleri vardır, ve metin işleme için genel amaçlı bir dil olarak kullanılabilir, ancak dosyaları daha sık uyaran veya doğrulama verileri için bir simülasyon testbench tarafından kullanılmaktadır. Çalıştırılabilir ikili inşa bazı VHDL derleyiciler vardır. Bu durumda, bir yazmak için VHDL kullanmak mümkün olabilir testbench , uyaranlara tanımlamak için kullanıcı ile etkileşim ve beklenen olanlar ile karşılaştırılması için ana bilgisayarda dosya kullanarak tasarım işlevselliğini doğrulamak için. Ancak, çoğu tasarımcılar simülatörü için bu işi bırakın.
Bu başarıyla simüle ama gerçek bir cihaza sentez olamaz, yada pratik olması çok büyük kod üretmek için deneyimsiz bir geliştirici için nispeten kolaydır. Sıkan özellikle birinin yanlışlıkla üretim şeffaf mandalları yerine D-tipi flip-flop depolama elemanları olarak.
Bir üretmek için VHDL IDE (örneğin Xilinx ISE, Altera Quartus, Synopsys Synplify veya Mentor Graphics HDL Tasarımcı olarak FPGA için) donanım tasarlayabilirsiniz RTL istenen devre şematiktir. Bundan sonra, oluşturulan şematik uygun Testbench oluşturduktan sonra giriş ve devrenin çıkış dalga biçimlerini göstermektedir simülasyon programı kullanılarak doğrulanabilir. Belirli bir devre veya VHDL kodu için uygun bir testbench oluşturmak için, girişleri doğru tanımlanmalıdır. Örneğin, saat girişi, bir döngü işlem veya tekrarlanan bir açıklama için gereklidir.
Son bir nokta, bir VHDL modeli böyle bir gibi bir programlanabilir mantıksal aygıt üzerine eşleştirilir "kapıları ve teller" tercüme zaman olmasıdır CPLD veya FPGA , o zaman gerçek donanım yapılandırılmış olan, yerine VHDL kodu "idam ediliyor "gibi bir işlemci çipi çeşit üzerinde eğer.
Avantajları
Sistem tasarımı için kullanılan VHDL, en önemli avantajı, sentez araçları gerçek donanım (kapılar ve telleri) içine tasarım çevirmek önce gerekli sistem davranışını tarif (modellenmiş) ve (taklit) doğrulanması için izin vermektedir.
Başka bir yararı VHDL açıklamasını izin vermektedir eşzamanlı sistemi . VHDL bir olan veri akışı dil tüm sırayla çalıştırmak usul gibi BASIC, C gibi bilgisayar dilleri, ve montaj kodu, her seferinde bir talimat aksine,.
Bir VHDL proje çok amaçlı. Bir kez oluşturulan, bir hesaplama blok birçok diğer projelerde kullanılabilir. Ancak, birçok oluşum ve fonksiyonel blok parametreleri (kapasite parametreleri, bellek boyutu, taban eleman, blok bileşimi ve ara bağlantı yapısı) ayarlanmış olabilir.
Bir VHDL proje taşınabilir. Bir eleman temel için oluşturulan, bir bilgisayar cihazı proje çeşitli teknolojiler ile örneğin VLSI için, başka bir unsuru baz olarak taşıdık olabilir.
Dezavantajları
Analog desteği (aka VHDL-AMS) ve Verilog-AMS olarak entegre değildir, bir sürü iş kullanıcıların elinde kalır, bu nedenle.