Skip to main content

FPGA, ASIC ve SoC Üretim Tasarımı ve Doğrulaması için MATLAB

Algoritmalarınızı donanım mimarisiyle uyumlu hâle getirin; MATLAB ve Simulink kullanarak kod ve doğrulama modelleri oluşturun.
FPGA, ASIC veya SoC projelerinde görev alan ekipler, yüksek soyutlama seviyesinde kritik tasarım kararları üzerinde birlikte çalışabilir; ardından uygulama sürecini hızlandırmak için kod ve modeller oluşturabilir.

MATLAB ve Simulink ile şunları yapabilirsiniz:

  • Farklı donanım mimarisi seçeneklerini modelleyin ve simüle edin.
  • Algoritmalarınızı yukarıdan aşağıya (top-down) yaklaşımla uygulamaya doğru geliştirin.
  • Sabit nokta (fixed-point) nicemlemesini (quantization) optimize edin.
  • Üretim kalitesinde RTL ve gömülü C kodu oluşturun.
  • Dijital veya analog simülasyon ortamlarında kullanılmak üzere doğrulama modelleri oluşturun.
  • Fonksiyonel güvenlik sertifikasyon iş akışlarına uyum sağlayın.

“Simulink, sistem mimarları ve donanım tasarımcılarının iletişim kurmasına yardımcı oluyor. Bilgi, fikir ve tasarımlarımızı paylaşmamızı sağlayan ortak bir dil gibi çalışıyor. Simulink ve HDL Coder sayesinde VHDL sözdizimini ve kodlama kurallarını kontrol etmek yerine, algoritmalarımızı geliştirmeye ve tasarımımızı simülasyon yoluyla iyileştirmeye odaklanabiliyoruz.”

Marcel van Bakel
Philips Healthcare

SoC Mimarisi ve Yukarıdan Aşağıya Tasarım

Algoritma geliştiricileri; sistem mimarları, dijital, analog/karma sinyalli ve doğrulama mühendisleriyle birlikte, yüksek soyutlama seviyesinde mimari seçeneklerini değerlendirebilir. Bu sayede siz ve ekibiniz, bölümleme (partitioning) stratejilerini deneyebilir; ardından donanım mikro mimarisi ve sabit nokta (fixed-point) nicemlemesi gibi uygulama ayrıntılarını ekleyerek bu bölümleri kademeli olarak iyileştirebilirsiniz. 300’den fazla blok, SystemVerilog , Verilog ve VHDL üretimini destekleyerek matematiksel işlemlerden üretimde kanıtlanmış donanım IP bloklarına ve alt sistemlere kadar geniş bir kapsam sunar.

Bu yukarıdan aşağıya (top-down) tasarım süreci boyunca, sistem bağlamında simülasyon gerçekleştirmek için daha ayrıntılı modelleri sürekli olarak entegre ederek işlevsel ve performansla ilgili sorunları erken aşamada ortadan kaldırabilirsiniz. Ayrıca bu süreç, sistem seviyesindeki test senaryolarını oluşturmanıza ve yönetmenize, model kapsamını (coverage) ölçmenize ve uygulamanızın başarıyla gerçekleştirildiğinden emin olmanıza olanak tanır.

Yüksek soyutlama seviyesinde uygulama alternatiflerini değerlendirin ve her iyileştirme adımını, daha önce doğrulanmış sürüme karşı doğrulayın.
Generate SystemVerilog DPI or UVM components to speed verification environment creation.

Doğrulama Modeli Oluşturma

ASIC Testbench for HDL Verifier eklentisi ile doğrulama bileşenlerini Verilog veya VHDL test ortamlarını (testbench) elle yazmak yerine doğrudan MATLAB ve Simulink’ten dışa aktarabilirsiniz. C kodu üretimini destekleyen MATLAB fonksiyonları veya Simulink modellerinden, RTL doğrulama ortamının oluşturulmasını hızlandıran modeller üretebilirsiniz. Böylece referans modellerinin ve RTL simülasyonunda kullanılan test girdilerinin (stimuli) üst düzey davranışları doğru şekilde temsil edilir. Üst düzey tasarım değiştiğinde ise bu modelleri yeniden oluşturabilirsiniz.

Bu doğrulama bileşenleri, Verilog testbench veya VHDL testbench yazmaya gerek kalmadan oluşturulur ve SystemVerilog Direct Programming Interface (DPI) kullandıkları için SystemVerilog’u destekleyen tüm simülatörlerde kullanılabilir. Ayrıca RTL doğrulama ortamınız UVM kullanıyorsa, Simulink’ten isteğe bağlı olarak Universal Verification Methodology (UVM) bileşeni de oluşturabilirsiniz.

Üretim Kodu Oluşturma

Geleneksel tasarım süreçlerinde, gereksinim dokümanının hazırlanması ve bu dokümana dayanarak kod yazılması sırasında hatalar oluşabilir. MATLAB ve Simulink ile sistem seviyesinde doğrulama gerçekleştirdikten sonra, ASIC tasarımları ve FPGA tasarımları için HDL ve C kodunu, doğrulanmış uygulama modellerinden doğrudan oluşturabilirsiniz.

Oluşturulan HDL kodu okunabilir, kaynak modeline kadar izlenebilir (traceable) ve hedef platformdan bağımsızdır. Hız optimizasyonları kapsamında boru hattı (pipeline) ekleme, alan optimizasyonları kapsamında ise kaynak paylaşımı (resource sharing) gibi seçenekleri; ayrıca farklı kodlama stillerini ve yapılandırma seçeneklerini kontrol edebilirsiniz. Bunun yanında, SoC tasarımlarında işlemci görevlerini hızlandırmak için yeniden hedeflenebilir IP çekirdekleri (IP Cores) oluşturabilirsiniz. AMD® ve Altera® sentez araçları kod oluşturma menüsünden doğrudan çalıştırılabilirken, herhangi bir FPGA veya ASIC sentez aracını çalıştırmak için de betikler (scripts) oluşturabilirsiniz.

Model yorumlarını da içeren, kod ile model arasında satır düzeyinde izlenebilirlik sağlayan okunabilir HDL kodu.
Bir donanım alt sisteminin DO-254 modelleme standartlarına uygunluğunun denetlenmesi

Fonksiyonel Güvenlik

Projeniz bir fonksiyonel güvenlik standardına uyumluluk gerektiriyorsa, DO-254 , ISO 26262 ve IEC 61508 için hazırlanan kitlerde FPGA, ASIC ve SoC geliştirme iş akışları yer alır. Bu iş akışları, modelinizin ilgili standardın gereksinimlerine uygunluğunu doğrulamak için yerleşik denetimler (built-in checks) içeren Model Advisor’ın çalıştırılmasını da kapsar.

Oluşturulan HDL ve C kodu okunabilir yapıdadır ve model ile gereksinimlere kadar izlenebilirlik sağlayarak kod inceleme sürecini kolaylaştırır. Doğrulama gereksinimlerini karşılamaya yardımcı olmak için birlikte simülasyon (cosimulation) ile back-to-back testleri veya FPGA-in-the-loop (FIL) gibi çeşitli doğrulama tekniklerinden yararlanabilirsiniz.

© FİGES A.Ş. Tüm hakları saklıdır.