Lumina sistemi
Kapsam analizi · Lumina Sim

Testlerinizin neye ulaştığını ve neye hiç dokunmadığını bilin.

Kapsam, koşu sırasında Lumina Sim tarafından toplanır ve koşular arasında birleştirilen bir veritabanına yazılır; bin farklı seed'le koşan bir regresyon tek bir yanıt verir. Fonksiyonel, assertion ve kod kapsamı aynı simülasyondan çıkar; kapsanmayan her şeyin raporuyla birlikte.

lumsim · coverageCONNECTED
$ lumsim tb.sv --code-coverage line,toggle \
--coverage-report cov.txt --coverage-db run1.json
# regresyonun tüm koşularından tek yanıt
$ tools/lumcov.py merge run1.json run2.json run3.json -o all.json
$ tools/lumcov.py report all.json --details

Kapsam kılavuzundaki komutlar

Fonksiyonel
covergroup'lar ve cross'lar
Satır · dal · toggle
kod kapsamı
Birleştirilir
koşular arasında
IEEE 1800 madde 40
testbench'ten kapsam kontrolü
Yetenekler

Neler ölçülür

Fonksiyonel kapsam

Değer, geçiş, wildcard, ignore ve illegal bin'leri, seçenekleri ve örnek bazında birleştirmesiyle covergroup'lar, coverpoint'ler ve cross'lar. $get_coverage aynı sayıları koşu sırasında verir.

Assertion kapsamı

Her eşzamanlı assertion, assume ve cover için: denemeler, başarılar, boş geçişler (vacuous pass), başarısızlıklar ve cover isabetleri.

Satır ve dal

Deyimler ile her if ve case'in her kolu; else ya da default olmayan yerlerde "hiçbiri seçilmedi" için ayrı bir kol.

Toggle

Her değişkenin ve net'in her biti; hem yükselip hem düştüğünde kapsanmış sayılır. Tek bir zaman adımı içindeki glitch'ler toggle sayılmaz.

Koşular arasında birleştirilir

Aynı tasarımın koşuları tek bir veritabanında toplanır. Rapor kapsananları ve ayrıntı seçeneğiyle kapsanmayan her şeyi listeler.

Testbench'ten kontrol

$coverage_control, $coverage_get ve $coverage_get_max ile kapsamı kapsam bazında başlatın, durdurun, sıfırlayın ve okuyun.

Planlanıyor

İfade ve koşul kapsamı

Bir karardaki her terimin, sonucu tek başına her iki yönde değiştirdiğinin gösterilmesi: emniyet kritik akışların istediği ölçüt.

Planlanıyor

FSM kapsamı ve test sıralaması

Tasarımda bulunan her durum makinesi için ulaşılan durumlar ve gerçekleşen geçişler; testler de ekledikleri kapsama göre sıralanır.

Teknik ayrıntılar

Kapsam türleri

  • FonksiyonelMevcut

    Covergroup'lar, coverpoint'ler, cross'lar ve her tür bin

  • AssertionMevcut

    Denemeler, başarılar, boş geçişler, başarısızlıklar, cover isabetleri

  • SatırMevcut

    Deyimler, satırları ve her dal kolu

  • ToggleMevcut

    Her değişkenin ve net'in her biti, yükselen ve düşen

  • İfade · koşulPlanlanıyor

    Bir karardaki her terim, tek başına ve kararı veren terim olarak

  • FSMPlanlanıyor

    Ulaşılan durumlar ve gerçekleşen geçişler

  • SıralamaPlanlanıyor

    En çok kapsam ekleyen testler

Sorular

Sık sorulan sorular

Fonksiyonel kapsam ile kod kapsamı arasındaki fark nedir?

Kod kapsamı RTL'in hangi bölümlerinin çalıştırıldığını ölçer: satırlar, dallar, toggle'lar. Fonksiyonel kapsam ise doğrulama planınızdaki senaryoların, covergroup'larda yazıldığı biçimiyle gerçekleşip gerçekleşmediğini ölçer. Bir tasarım ikisine de ihtiyaç duyar: kod kapsamı hiçbir testin ulaşmadığı RTL'i, fonksiyonel kapsam da kimsenin test etmediği özellikleri bulur.

Çok sayıda simülasyon koşusunun kapsamını birleştirebilir miyim?

Evet. Her koşu bir veritabanı yazar; merge aynı tasarımın koşularındaki sayıları toplar, report da özeti ve hâlâ kapsanmayan her şeyi yazdırır.

MC/DC benzeri kapsam destekleniyor mu?

Bir karardaki her terimin sonucu hem 0 hem 1 olarak belirlediğinin gösterilmesini isteyen ifade kapsamı planlanıyor. Bu, DO-254 ve ISO 26262 projeleri gibi emniyet kritik akışların istediği kapsam ölçütüdür.

Şifreli IP'nin kapsamı ölçülür mü?

Hayır. IEEE 1735 ile korunan IP'nin deyimleri ve sinyalleri ölçülmez; böylece içindeki hiçbir şey açığa çıkmaz.

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.

Gizlilik ayarları

Bu sitenin neleri kullanabileceğini seçin. Kararınızı her sayfanın altındaki Gizlilik ayarları bağlantısından dilediğiniz zaman değiştirebilirsiniz.

Sitenin çalışması için gerekenler ve burada yaptığınız seçimin kaydı. Kayıt tarayıcınızda tutulur; çerez kullanılmaz.

Her zaman açık

Ziyaretleri saymamıza ve hangi sayfaların işe yaradığını görmemize olanak tanır; reklam ya da siteler arası takip içermez. Şu anda hiçbir analitik aracı kullanmıyoruz, yani seçiminiz ne olursa olsun hiçbir şey yüklenmez.

Çerez politikası · Gizlilik politikası