CARME
CARME · Lumina entegrasyonu
Önizleme

RTL'in ilk satırından ilk açılışa tek akış.

Lumina donanımı kontrol eder ve simüle eder. CARME yazılımı onun üzerinde çalıştırır. Dosya listelerini, zaman çizgisini, dalga biçimlerini ve kapsamı paylaşırlar; bir bloğu testbench'ten sisteme taşımak bir proje değil, komut satırında tek bir seçenektir.

rtl/dma.f → firmwarerunning
  1. 01
    Lint
    lumlint
  2. 02
    Formal
    lumformal
  3. 03
    Sim
    lumsim
  4. 04
    CARME
    carme
  5. 05
    Debug
    waves + trace
  6. 06
    Coverage
    merged
-f rtl/dma.f · tek zaman ekseni
Akış

Altı adım, tek dosya seti.

  • RTL'i yazın ve kontrol edin

    AraçLumina Lint, Lumina CDC

    Ne elde edersinizSaat alanı geçişleri kontrol edilmiş, temiz ve sentezlenebilir RTL

  • Zor kısımları kanıtlayın

    AraçLumina Formal

    Ne elde edersinizBlok üzerinde kanıtlanmış özellikler

  • Bloğu doğrulayın

    AraçLumina Sim, UVM ya da cocotb

    Ne elde edersinizBlok düzeyinde kapanmış kapsam

  • Firmware'i üzerinde açın

    AraçCARME ve Lumina Sim

    Ne elde edersinizGerçek RTL üzerinde gerçek sürücü ve işletim sistemi

  • İki tarafta hata ayıklayın

    AraçDebug

    Ne elde edersinizFirmware izi ve RTL dalga biçimleri tek zaman ekseninde

  • Kapsamı kapatın

    AraçCoverage

    Ne elde edersinizFirmware çalıştırmalarından gelen RTL kapsamı, bloğun kendi kapsamıyla birleşik

Aynı dosyalar, aynı seçenekler

Lumina'nın okuduğu dosya listesi, CARME'nin okuduğu listedir.

Tanımlar, include yolları, kütüphaneler ve üst modül adı da onunla birlikte gelir.

soc.cmsoc
# DMA motoru RTL'i ile
dma0:
rtl:
files: -f rtl/dma.f
top: lm_dma
bus: { axi4: sysbus, at: 0x4002_0000, size: 0x1000 }
irq: plic@23
shell
$ lumlint -f rtl/dma.f --top lm_dma
$ lumsim -f rtl/dma.f -f tb/dma_tb.f --top dma_tb +UVM_TESTNAME=burst
$ carme boards/my_soc.cmboard --firmware build/linux/Image --waves dma.fst
Birlikte çalışma

Veri yolundan kapsam raporuna, tam uyum içinde.

01

Tam uyum içinde

CARME ve Lumina Sim tek saati paylaşır. Emüle edilen CPU'dan gelen bir veri yolu aktarımı, RTL'in portlarında AXI, AHB, APB, Wishbone ya da TileLink çevrimlerine dönüşür; kesmeler ve DMA da diğer yönde, gerçekleştikleri çevrimde geri gelir. RTL, Lumina Sim'in 4 durumlu değerlerini korur; böylece resetlenmemiş bir yazmaçtan gelen X, firmware'e şans eseri bir sıfır olarak değil, hata olarak ulaşır.

02

Uyaran olarak firmware

Boot kodunuz, sürücüleriniz ve işletim sisteminiz, bloğun karşılaşacağı en gerçekçi testbench'tir. CARME onları RTL'e karşı çalıştırır, Lumina Coverage da ulaştıkları yerleri bloğun kendi regresyonuyla birleştirerek kaydeder. Geriye kalan boşluklar hiçbir firmware'in sürmeyeceği yerlerdir; kısıtlı rastgele testleri nereye yönelteceğinizi bilirsiniz.

03

Hata ayıklamak için tek görünüm

Veri yolundaki bir takılma; onu başlatan komut, veri yolundaki işlem ve onu tutan RTL sinyalleri olarak aynı anda görünür. Firmware satırından dalga biçimine ve geri tıklayın.

04

Açılışı kaydedin, gerisini test edin

Linux'u RTL yerindeyken bir kez açın, sistemi Lumina Sim'in checkpoint'iyle birlikte .cmsnap olarak kaydedin ve her testi oradan başlatın. 30 saniyelik açılışı her test için değil, bir kez ödersiniz.

Lumina Blocks ilk gün CARME'de çalışır

Önce model, tek seçenekle RTL.

Her Lumina Blocks IP'si, yazmaç düzeyinde birebir bir CARME modeli ve RTL'iyle gelir. Sürücüyü modelde tam hızda geliştirin, ardından tek seçenekle RTL'e geçin ve aynı testleri çalıştırın.

  • LM-AES-GCM, LM-AES-XTS

    CARME'deModel ve RTL

  • LM-SHA3, LM-DRBG, LM-TRNG

    CARME'deModel ve RTL

  • LM-PQC-KEM, LM-PQC-DSA

    CARME'deModel ve RTL

  • LM-LZS-E, LM-LZS-D

    CARME'deModel ve RTL

Sorular

Sık sorulan sorular.

CARME'yi kullanmak için Lumina Sim gerekir mi?

Hayır. CARME kendi modelleriyle çalışır. Lumina Sim, bir bloğun RTL olması gerektiğinde devreye girer.

CPU'nun kendisi RTL olabilir mi?

Evet. Çekirdeğinizi Lumina Sim'e koyun; belleği, çevre birimlerini ve sistemin geri kalanını CARME sağlasın. Ya da tersi: emüle edilen bir CPU, bir RTL alt sistemini sürsün.

Başka bir simülatördeki RTL'i çalıştırabilir miyim?

Evet, CARME'nin DPI köprüsüyle; paylaşımlı kütüphane olarak ya da soket üzerinden. Lumina Sim buna 4 durumlu değerleri, kapsamı, checkpoint'leri ve ortak hata ayıklama görünümünü ekler.

Döngüde RTL varken ne kadar hızlı?

RTL'in simülasyon hızı kadar. Yalnızca RTL olan bloklar çevrim çevrim çalışır; sistemin geri kalanı emülasyon hızında kalır.

Bloğu ve onu süren firmware'i getirin.

Eş simülasyonu sizin RTL'iniz ve imajınızla, sizinle birlikte kuralım.

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ı