Skip to main content

FPGA Prototipleme için MATLAB

MATLAB ve Simulink ile prototiplerinizi geliştirin, hedef donanıma dağıtın ve hata ayıklama süreçlerini yönetin.

MATLAB ve Simulink ile FPGA Tabanlı Prototipleme

MATLAB ve Simulink , FPGA tasarım deneyiminiz ne olursa olsun algoritmalarınızı FPGA tabanlı donanımlar üzerinde hızlıca prototiplemenize olanak tanır. Model tabanlı geliştirme yaklaşımıyla tasarımlarınızı oluşturabilir, doğrulayabilir ve donanıma aktarabilirsiniz.

  • Kanıtlanmış IP blokları ve alt sistemleri kullanarak donanıma hazır tasarımlar oluşturun.
  • FPGA’ya dağıtımdan önce sistem seviyesinde donanım davranışını simüle ederek hataları erkenden tespit edin.
  • Herhangi bir FPGA veya SoC platformunu hedefleyebilen HDL ve C kodlarını otomatik olarak oluşturun.
  • AMD® ve Altera® FPGA ve SoC kartlarına otomatik dağıtım gerçekleştirin.
  • Donanım üzerinde çalışan sinyalleri gerçek zamanlı olarak izleyin ve yakalayın.

“Kendi uzmanlık alanımızda geniş bir deneyime sahibiz, ancak FPGA entegrasyonu konusunda sınırlı bilgiye sahiptik. Simulink ve HDL Coder sayesinde belirli bir FPGA üzerinde algoritmalarımızı nasıl çalıştıracağımıza odaklanmak yerine, ürünümüz için akıllı algoritmalar geliştirmeye odaklanabildik.”

Boris Van Amerongen
Safran

Kablosuz Haberleşme Uygulamaları

Canlı donanım bileşenlerini tasarımınıza kademeli olarak entegre edebilir; algoritmanızı gerçek zamanlı kablosuz giriş/çıkış (over-the-air) ile simüle etmekten, FPGA veya SoC tabanlı yazılım tanımlı radyo (SDR) platformlarına ya da özel donanım kartlarına tam dağıtıma kadar tüm geliştirme sürecini yönetebilirsiniz.Wireless HDL Toolbox içinde yer alan donanım üzerinde doğrulanmış kablosuz haberleşme IP blokları ve alt sistemleri, geliştirme sürecine hızlı bir başlangıç yapmanızı sağlar. Bu IP’ler, MATLAB ile algoritma tasarımından başlayarak Simulink’te kablosuz haberleşme sistemi uygulama modellerine kademeli geçişi gösteren örnekler içerir. Tüm IP’ler sabit nokta (fixed-point) aritmetiğine dönüştürülmüş olarak sunulur. Tasarımınıza eklediğiniz özel mantık bloklarının nicemlenmesini (quantization) ise Fixed-Point Designer ile yönetebilir, ardından HDL Coder kullanarak hedef donanıma dağıtabilirsiniz.
Sistem seviyesinde tasarım ve simülasyon gerçekleştirin; ardından gerçek donanım bileşenlerini kademeli olarak ekleyerek saha testleri için tam dağıtıma geçin.
Motor ve güç elektroniği kontrol algoritmalarını FPGA donanımına dağıtın; Speedgoat G/Ç (I/O) modülleri gibi FPGA hızlandırıcıları üzerinde çalışan Hardware-in-the-Loop (HIL) sistem modellerini hızlandırın.

Motor ve Güç Elektroniği Kontrol Uygulamaları

FPGA tabanlı donanımlar üzerinde çalışan kontrol algoritmalarının performansını değerlendirebilir veya FPGA tabanlı Hardware-in-the-Loop (HIL) yöntemleriyle sistem (plant) modellerini hızlandırabilirsiniz. HDL Coder , sabit nokta (fixed-point) veya yerel kayan nokta (native floating-point) (9:19) aritmetiğinde matematiksel ve trigonometrik fonksiyonlar için sunduğu kapsamlı HDL kod üretim desteği sayesinde, Simulink modelinizden hedef donanıma kolay ve doğrudan geçiş yapmanızı sağlar.

Algoritmanızı SoC platformuna dağıtırken en uygun bölümleme (partitioning) stratejisini belirlemek istiyorsanız, farklı bölümleme senaryolarını arayabilir, simüle edebilir ve performanslarını prototip donanıma dağıtımdan önce değerlendirebilirsiniz. Ardından önceden yapılandırılmış geliştirme kitlerini , Speedgoat donanımlarını (7:53) veya kendi özel geliştirdiğiniz kartları hedef platform olarak kullanabilirsiniz.

Video ve Görüntü İşleme Uygulamaları

Görüntü işleme algoritmalarının prototiplerini FPGA tabanlı platformlarda MATLAB ve Simulink ile geliştirerek HDL ve C kodlarını otomatik olarak oluşturabilirsiniz. Ayrıca, donanım üzerinde doğrulanmış görüntü işleme bloklarını kullanarak piksel akışı, komşuluk tabanlı algoritmalar, harici bellek erişimi ve kontrol sinyalleri gibi donanım davranışlarını simüle eden uygulama modelleri oluşturabilirsiniz.

Kamera içeren FPGA değerlendirme kitlerine modellerinizi dağıtmanız desteklenmektedir. Alternatif olarak, donanım ekibiniz platformunuza yönelik desteği geliştirerek prototiplerinizi doğrudan MATLAB ve Simulink üzerinden hedef donanıma dağıtabilir.

FPGA prototip kartı üzerinde çalışan bir sis giderme algoritması.
FPGA tabanlı derin öğrenme çıkarımını prototip donanım üzerinde doğrudan MATLAB’dan çalıştırın; ardından herhangi bir FPGA veya ASIC’e dağıtılabilecek bir derin öğrenme HDL IP çekirdeği (IP Core) oluşturun.

Derin Öğrenme Çıkarımı

Yalnızca birkaç MATLAB komutuyla, ağlarınızı FPGA ve SoC kartları üzerinde prototipleyerek derin öğrenme çıkarımını hızlandırabilirsiniz. Ardından, FPGA üzerinde gerçekleştirilen çıkarımın performansını analiz ederek, ağınızı iyileştirerek, sabit nokta (fixed-point) aritmetiğine dönüştürerek ve yeniden hedef donanıma dağıtarak geliştirme sürecinizi doğrudan MATLAB ortamında sürdürebilirsiniz.

Son olarak, donanım ekibine uygulama için teslim edebileceğiniz hedef platformdan bağımsız bir HDL IP çekirdeği (IP Core) oluşturabilirsiniz.

FPGA Prototip Hata Ayıklama

Gerçek dünya girişleriyle FPGA prototipleme yaparak, erken aşamadaki simülasyonlarda tespit edilemeyen hataları ortaya çıkarabilirsiniz. FPGA veya SoC prototipinize ekleyeceğiniz mantık sayesinde, MATLAB komutlarını kullanarak AXI üzerinden erişilebilen yazmaçları (register) etkileşimli olarak okuyabilir ve yazabilir ya da FPGA yapısı (fabric) içerisindeki test noktalarından veri yakalayabilirsiniz.

FPGA prototipinizi MATLAB veya Simulink test ortamınız (testbench) ile çalıştırmayı tercih ediyorsanız, FPGA-in-the-Loop (FIL) iş akışı kurulum sürecini otomatikleştirir ve FPGA’ya veri gönderip test ortamınıza geri okumak için gerekli simülasyon arayüzünü yönetir.

Bu teknikler, AMD , Altera ve Microsemi tabanlı kartlar için hazır destek sunar. Ayrıca kendi özel geliştirdiğiniz kartları da tanımlayarak aynı iş akışından yararlanabilirsiniz.

FPGA prototipinizi MATLAB üzerinden hata ayıklamak ve etkileşimli olarak kontrol etmek için gerekli mantığı otomatik olarak ekleyin.

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