SystemVerilog, Verilog ve VHDL için 4 durumlu simülasyon, tek koşuda.
Lumina Sim tasarımınızı ve testbench'inizi tek komutla derler, elaborate eder ve çalıştırır; diğer simülatörlerin kabul ettiği dosya listelerini ve seçenekleri kullanır. Sınıf tabanlı UVM testbench'leri, dokuz mantık değeriyle VHDL, SDF zamanlamalı kapı seviyesi netlist'ler ve analog bloklar aynı simülasyonda çalışır.
Lumina Sim kılavuzundaki komutlar
- IEEE 1800-2023
- SystemVerilog, tasarım ve testbench
- VHDL-2008
- std_logic'in dokuz değeriyle
- UVM 1.2 · 1800.2 · 2.0
- Accellera kaynaklarından
- Yerel kod
- arka planda derlenir
Lumina Sim neleri çalıştırır
Standardın tanımladığı gibi 4 durum
Her SystemVerilog biti 0, 1, X ya da Z'dir. Reset almamış bir register ya da iki sürücüsü olan bir bus tahmin edilmiş bir değer değil, X olarak görünür; reset ve çakışma hataları laboratuvarda değil, simülasyonda ortaya çıkar.
Dokuz değerli VHDL
std_ulogic U X 0 1 Z W L H ve - değerlerini korur, çözümleme standardın tablosuna uyar; VHDL'in indis, aralık ve uzunluk için tanımladığı çalışma zamanı denetimleri yapılır. --vhdl-one-bit, hız için dokuz değerden vazgeçer.
Sarmalayıcısız karma dil
Bir VHDL component'i bir SystemVerilog modülünü adıyla örnekler, bir SystemVerilog tasarımı da bir VHDL entity'sini. Integer, std_ulogic ve std_logic_vector portları iki dil arasında geçer.
Elinizdeki testbench
UVM 1.2, IEEE 1800.2-2020 ve 2.0, OSVVM, UVVM, VPI üzerinden cocotb, DPI-C ile C ve C++ modelleri ve bir koşuyu yönetmek için Python modülü.
Zamanlamalı kapı seviyesi
Specify blokları, yol gecikmeleri, notifier'lı ve negatif limitli zamanlama denetimleri, kullanıcı tanımlı ve anahtar seviyesi primitifler ve örnek bazında SDF back-annotation.
İlk andan itibaren hızlı
Koşu, derlenmiş kodla hemen başlar ve arka planda üretilen yerel makine koduna geçer. Checkpoint'ler sayesinde her test uzun bir reset ya da açılış sürecinin sonundan başlayabilir.
Aynı zaman çizgisinde analog
SPICE alt devreleri ve Verilog-A modülleri Lumina Spice'ta çalışır; Verilog-AMS'teki gibi connect modülleriyle dijital net'lere bağlanır.
SystemC, VHDL-2019 ve PSL
Aynı çekirdek üzerinde sinyal portları ve TLM-2.0 soketleriyle SystemC modelleri, VHDL-2019 eklemeleri ve PSL assertion'ları.
Diller ve standartlar
- IEEE 1800-2023 SystemVerilogMevcut
Sınıflar, arayüzler, clocking blokları, program'lar, kısıtlar, covergroup'lar, eşzamanlı assertion'lar
- VerilogMevcut
Tasarımlar ve netlist'ler, kullanıcı tanımlı primitifler, sürüş güçleriyle anahtar seviyesi primitifler
- IEEE 1076-2008 VHDLMevcut
Konfigürasyonlar, paket generic'leri, protected tipler, external name'ler, force ve release, std.textio
- IEEE 1800.2 UVMMevcut
Register modelleriyle Accellera UVM 1.2, 1800.2-2020 ve 2.0
- OSVVM · UVVMMevcut
OSVVM'in tamamı; UVVM'in utility kütüphanesi, VVC çatısı ve doğrulama IP'leri
- IEEE 1497 SDFMevcut
IOPATH, INTERCONNECT, PORT ve NETDELAY gecikmeleri ve zamanlama denetimleri
- IEEE 1735Mevcut
Şifreli IP; mesajlarda, dalga formlarında, VPI'da, hata ayıklayıcıda ve kapsamda gizli kalır
- IEEE 1666 SystemCPlanlanıyor
Sinyal portları ve TLM-2.0 soketleri, tek zamanlayıcı
- IEEE 1076-2019 VHDLPlanlanıyor
2019 eklemeleri
Sık sorulan sorular
4 durumlu simülasyon ne demek?
Her bit 0, 1, X (bilinmeyen) ya da Z (yüksek empedans) olabilir. İlk değeri verilmemiş bir register ya da iki sürücüsü olan bir net, tahmin edilmiş bir 0 ya da 1 yerine X olarak görünür; böylece reset ve çakışma hataları silikonda değil, simülasyonda ortaya çıkar. VHDL tasarımları varsayılan olarak std_logic'in dokuz değerini korur.
VHDL ve SystemVerilog'u birlikte simüle edebilir miyim?
Evet. Aynı adda bir VHDL entity'si olmayan bir VHDL component'i, o adı taşıyan SystemVerilog modülünün bir örneğidir; SystemVerilog de bir VHDL entity'sini küçük harfli adıyla örnekler. Integer, std_ulogic ve std_logic_vector portları iki dil arasında geçer.
Mevcut UVM testbench'im çalışır mı?
UVM 1.2, 1800.2-2020 ve 2.0, UVM'in C kütüphanesiyle ya da onsuz, Accellera kaynaklarından çalışır. Başka bir simülatörün göz yumduğu kurallara dayanan testbench'ler, en sık çiğnenen kuralları gevşeten --compat all seçeneğini kullanabilir.
Lumina Sim cocotb'yi destekliyor mu?
Evet, VPI üzerinden. cocotb'nin Python runner'ıyla da makefile akışıyla da çalışır.
Hangi platformlarda çalışıyor?
Bugün Linux x86-64. Windows x86-64 ve Apple silicon üzerinde macOS planlanıyor.
Kendi tasarımınızı Lumina'da ilk siz çalıştırın.
Lansmandan önce küçük bir grup tasarım ekibiyle çalışıyoruz. Siz gerçek tasarımlarınızı çalıştırırsınız, bulduğunuz sorunları biz düzeltiriz; test senaryolarınız da her derlemenin geçmesi gereken testlerin parçası olur.