HDL Coder

Ana Özellikleri;

  • Simulik modelleri, MATLAB kodları ve Stateflow diyagramlarından hedef bağımsız, sentezlenebilir HDL kod üretimi
  • Mealy, Moore sonlu durum makineleri ve kontrol devrelerini destekler
  • Eş zamanlı simülasyon modeli için test verilerinin oluşturulması
  • Alan-hız önceliğine göre kaynak paylaşımı ve alt sistem seviyesi zamanlama ayarları
  • DO-254 için Code-Model ve Model-Code izlenebilirliği
  • Zaman kısıtlama bilgisi ile HDL sentez araçları kullanılarak Simulink Model Optimizasyonu
  • Kod entegrasyonu

HDL Coder Kullanım Alanları

HDL Coder ürünü aşağıdaki alanlarda yaygın olarak kullanılmaktadır.

  • MATLAB  ve Simulink ortamından okunabilirliği yüksek, optimize edilmiş kod oluşturmak ve bu kodun var olan bir VHDL ya da Verilog yapısının içerisine entegre edilmesi
  • “HDL Verifier” ürünü ile “FPGA in the loop” simülasyonları ile hızlı prototipleme
  • “HDL Verifier” ürünü ile birlikte kodun Modelsim gibi bir HDL simülatörü ile eş zamanlı simülasyonunun yapılması
  • FPGA paralel yapısı sayesinde simülasyonların hızlandırılması

Kod oluşturma


HDL Coder ürünü ile tasarladığınız yapı, FPGA üzerinde gerçeklenebilir hale gelmektedir. Böylece bu kodu MATLAB  ve Simulink ortamlarında oluşturduğunuz yapının yerine geçecek şekilde FPGA’ler üzerinde kullanabilir, kendi yazdığınız koda entegre ederek ekstra bir işlem yapmaya gerek duymadan projelerinizi tamamlayabilirsiniz. Ayrıca otomatik kodlama ürünü, kod ile tasarladığınız model arasında linkler yardımı ile bir bağ kurarak daha okunabilir bir sonuç üretmekte ve böylece ürettiği çıktılar daha anlaşılır ve kullanışlı olmaktadır.

Kod üretiminden önce, tasarlanan yapılar üzerinde HDL kod üretimine yönelik, paralelleştirme, serileştirme ve optimize boru hattı oluşturma gibi seçenekler kullanıcıya sunulmaktadır. Böylece tasarım üzerinde kod oluşturmaya yönelik optimizasyonlar kullanıcı tarafından sisteme bildirilebilir. HDL kod oluşturma işleminden sonra kullanıcıya tahmini kaynak kullanımı bildirilmektedir. Bunun yanında sertifikasyon araçları kullanılarak üretilen kodun istenen sertifikasyon özelliklerine sahip olup olmadığı ve bu özellikleri karşılaması için neler yapılması gerektiği kullanıcıya bildirilmektedir.

Kullanıcıya sağlanan dizayn tavsiye birimi sayesinde kod üzerindeki kritik yol, model üzerinde işaretlenerek kullanıcıya bildirilmekte ve böylece kullanıcı performans iyileştirmesi için hangi alana yoğunlaşması gerektiğini kolayca bulmaktadır.

FPGA in the loop simülasyonu

 

Bu simülasyon türü ile kullanıcılara bir takım doğrulama imkanları sağlanmaktadır. 2012a sürümü ile “FPGA in the loop” simülasyon özelliği “HDL Verifier” ürünü ile sağlanmaktadır. FPGA in the loop simülasyonu ile yaptığınız tasarımı hızlı prototipleyerek son ürün oluşturmadan nasıl çalıştığını gözlemleyebilir, dizayn hatalarını olabilecek en erken şekilde tespit ederek düzeltebilirsiniz. Bu çalışma mantığı hata ayıklamada size oldukça fazla zaman kazandıracaktır.

FPGA in the loop kısaca FIL simülasyonunda gerçeklemek istediğiniz dizayn gerçek zamanlı olarak donanım üzerinde çalışırken siz istediğiniz girişleri sisteme uygulayarak, FPGA yapısının girdilere tepkilerini ölçebilirsiniz. Bu sistem, kullandığınız FPGA modülün geliştirme ortamını arka planda çalıştırarak kod sentezleme, gerçekleme ve yükleme, işlemi dahil tüm işlemlerin MATLAB ve Simulink ortamından ayrılmadan tamamlanmasına olanak tanır. Desteklenen kitlerde tasarladığınız yapı içerisine bir Ethernet modülü eklenerek derlendikten sonra FIL bloğu üretilmektedir. Böylece gigabit ethernet üzerinden FPGA ile veri transferi sağlanmaktadır.

FIL simülasyonu için desteklenen Xilinx firmasının ürettiği kartların listesi aşağıdadır:

HDL Cosimulation

Bir diğer doğrulama seçeneği de “HDL Verifier” ürünü sayesinde sahip olduğunuz HDL simülatör programı ile MATLAB ve Simulink ortamının eş zamanlı çalışması sağlanmaktır. Böylece donanıma ihtiyaç duymadan üretilen kodun simülatör yardımı ile sınanarak tasarlanan model ile davranışsal olarak aynı olup olmadığı doğrulanmış olmaktadır. Başka bir kullanım alanı da, elle yazılmış VHDL ya da Verilog kodlarının MATLAB ve Simulink ortamına aktarılmasıdır. Bu ortamlarda geliştirilen algoritma ile yazılan kodun aynı davranışları gösterip göstermediği bu araç ile eş zamanlı simule edilerek doğrulanmaktadır.