Skip to main content

kategori: Kod Üretimi

GPU Coder ürün sayfası başlık görseli

GPU Coder

GPU Coder, MATLAB kodundan ve Simulink modellerinden NVIDIA GPU’lar için optimize edilmiş CUDA kodu üretir.

GPU Coder, MATLAB kodunuzdan ve Simulink modellerinizden NVIDIA GPU’lar için CUDA kodu üreten bir araç kutusudur. Algoritmanın paralelleştirilebilir bölümlerini ayırır, bunlar için CUDA kernel’ları çıkarır. Üretilen kodu masaüstü RTX kartlarından veri merkezi GPU’larına ve gömülü platformlara kadar farklı donanımlarda derleyip çalıştırırsınız. Ayrıca ticari dağıtımda telif bedeli doğmaz. Desteklenen fonksiyonları MathWorks dokümantasyonunda bulursunuz.

Kod üretimi otomatik optimizasyonlarla birlikte gelir: bellek yönetimi, kernel birleştirme ve otomatik ayarlama devreye girer. Ayrıca INT8 ve bfloat16 nicemlemesini kullanır, NVIDIA TensorRT tümleştirmesiyle çıkarım başarımını artırırsınız. Stencil işleme ve indirgeme gibi tasarım desenleri otomatik uygulanır; dilerseniz pragma ile elle çağırırsınız. Jetson ve DRIVE platformlarına dağıtım otomatiktir, çevre birimlerine erişir ve sensör verisi toplarsınız. Son olarak Performance Analyzer aracıyla üretilen kodu profillendirir, hangi kernel’ın süreyi yediğini görürsünüz.

GPU Coder Temel Yetenekleri

MATLAB’dan CUDA Kodu

Algoritmanın paralelleştirilebilir bölümleri için CUDA kernel’ları çıkarırsınız. Ardından üretilen kodu masaüstü RTX kartından veri merkezi GPU’suna kadar farklı donanımda derlersiniz.

Ayrıca ticari dağıtımda telif bedeli doğmaz, dolayısıyla ürünü serbestçe teslim edersiniz.

Jetson ve DRIVE’a Dağıtım

Ayrıca gömülü platformlara dağıtım otomatik yürür. Ayrıca çevre birimlerine erişir, sensör verisi toplar ve kartı bağımsız çalıştırırsınız.

Böylece algoritmayı laboratuvardan araca ya da robota aynı akışla taşırsınız.

Derin Öğrenme İçin Kod

Hazır ya da özel derin öğrenme ağlarını dağıtırsınız; dolayısıyla eğitim ortamını değiştirmezsiniz. Ayrıca ağın yanında ön işleme ve son işleme kodunu da çıkarırsınız.

Örneğin şerit ve araç algılama zincirini tek çıktıda toplarsınız.

TensorRT ile Hızlandırma

NVIDIA TensorRT tümleştirmesiyle çıkarım başarımını artırırsınız. Üstelik INT8 ve bfloat16 nicemlemesini de kullanırsınız.

Dolayısıyla saniyedeki görüntü sayısını belirgin biçimde yükseltirsiniz.

Performance Analyzer

GPU Coder Performance Analyzer üretilen CUDA kodunu profillendirir. Böylece hangi kernel’ın süreyi yediğini ve nerede iyileştirme fırsatı olduğunu görürsünüz.

Üstelik bellek aktarımı kaynaklı darboğazları da raporda ayırt edersiniz.

İzlenebilirlik ve Doğrulama

Embedded Coder ile MATLAB kodu ve üretilen CUDA arasında çift yönlü izleme kurarsınız. Böylece yazılım döngüde testi de yürütürsünüz.

Ayrıca Simulink Coder ile parametreleri gerçek zamanlı ayarlar, sinyalleri kaydedersiniz.

GPU Coder Nasıl Çalışır?

  1. Algoritmayı hazırlayın Öncelikle kod üretimine uygun MATLAB kodunu ya da Simulink modelini kurun.
  2. GPU hedefini seçin Ardından masaüstü, veri merkezi ya da gömülü NVIDIA platformunu belirleyin.
  3. CUDA kodunu üretin Otomatik optimizasyonlarla kernel’ları çıkarın, gerekiyorsa TensorRT’yi açın.
  4. Profillendirin ve dağıtın Son olarak Performance Analyzer ile ölçüm yapıp kodu karta indirin.

Kullanım Alanları

Gömülü Yapay Zekâ

Derin öğrenme çıkarımını Jetson gibi gömülü GPU’lara taşır, TensorRT ile hızlandırırsınız.

Otonom Sürüş

Şerit ve araç algılama zincirini DRIVE platformuna dağıtır, ardından gerçek zamanlı çalıştırırsınız.

Görüntü İşleme ve Bilgisayarlı Görü

Görü algoritmalarını GPU üzerinde paralelleştirir, böylece kare hızını yükseltirsiniz.

Sinyal İşleme

Yoğun dönüşüm ve filtre zincirlerini GPU’ya taşır, böylece gerçek zamanlı işlemeye geçersiniz.

Gömülü Sistemler

GPU hızlandırmalı algoritmayı gömülü kartta bağımsız çalışan uygulama hâline getirirsiniz.

Sıkça Sorulan Sorular

Hangi GPU’lar destekleniyor?

Masaüstü RTX kartları, veri merkezi GPU’ları ile Jetson, DRIVE ve Clara gömülü platformları desteklenir. Ancak CUDA araç zinciri ve uygun sürücü kurulu olmalıdır.

TensorRT zorunlu mu?

Hayır, isteğe bağlıdır. Ancak çıkarım başarımını artırmak isterseniz TensorRT tümleştirmesini açarsınız. Ayrıca INT8 ve bfloat16 nicemlemesi kullanılabilir; bu da bellek ve süre kazandırır.

Simulink modellerinden CUDA üretebilir miyim?

Evet, ancak bunun için Simulink Coder gerekir. Modelin hesap yoğun bölümlerini GPU’da hızlandırır, simülasyon süresini kısaltırsınız.

Üretilen kodu nasıl profillendiririm?

GPU Coder Performance Analyzer üretilen CUDA kodunu ölçer. Hangi kernel’ın süreyi yediğini, bellek aktarımının nerede darboğaz yarattığını görür ve iyileştirme fırsatlarını belirlersiniz.

Kodu elle optimize etmem gerekir mi?

Genelde gerekmez, çünkü optimizasyonlar kendiliğinden uygulanır. Bellek yönetimi, kernel birleştirme ve otomatik ayarlama kendiliğinden uygulanır. Stencil işleme ve indirgeme desenleri de otomatik seçilir; dilerseniz pragma ile elle yönlendirirsiniz.

Telif bedeli var mı?

Hayır. Üretilen CUDA kodunu müşterilerinize telif bedeli ödemeden dağıtırsınız.

okumaya devam et

MATLAB Coder ürün sayfası başlık görseli

MATLAB Coder

MATLAB Coder, MATLAB kodundan masaüstünden gömülü donanıma kadar farklı platformlar için C ve C++ kodu üretir.

MATLAB Coder, MATLAB tarafında yazdığınız algoritmayı okunabilir C ve C++ koduna çeviren bir araç kutusudur. Üretilen kodu herhangi bir C ya da C++ derleyicisiyle derler; masaüstü, mobil ve gömülü donanımda çalıştırırsınız. Ticari dağıtımda telif bedeli doğmaz, dolayısıyla ürününüzü serbestçe paylaşırsınız. Sinyal işleme, bilgisayarlı görü, derin öğrenme ve kontrol sistemleri araç kutularındaki fonksiyonların önemli bir bölümü desteklenir. Desteklenen fonksiyon listesini MathWorks dokümantasyonunda bulursunuz.

Üretilen kodu birkaç biçimde teslim edersiniz: kaynak kod, statik kitaplık ya da dinamik kitaplık. MATLAB değer sınıflarından, handle class’larından ve System nesnelerinden C++ sınıfları çıkarırsınız. Optimizasyon tarafında SIMD komutları, OpenMP ile çok çekirdekli paralelleştirme ve LAPACK, BLAS ile FFTW gibi optimize edilmiş kitaplık çağrıları devreye girer. Ayrıca ResNet-50 ve MobileNet-v2 gibi ağlar ile destek vektör makinesi ve karar ağacı modellerini Intel ve ARM Cortex işlemcilere taşırsınız. Son olarak mevcut MATLAB birim testlerinizi üretilen kod üzerinde yeniden koşturarak gerileme kontrolü yaparsınız.

MATLAB Coder Temel Yetenekleri

Her Yerde Çalışan Kod

Üretilen kodu herhangi bir C ya da C++ derleyicisiyle derlersiniz. Masaüstü, mobil ve gömülü donanımda aynı algoritma koşar.

Ayrıca ticari dağıtımda telif bedeli doğmaz, dolayısıyla ürünü serbestçe paylaşırsınız.

Gömülü Donanımda Prototip

Algoritmayı otomatik olarak C ve C++ koduna çevirir, ardından karta indirirsiniz. Raspberry Pi için ayrı bir destek paketi otomatik dağıtım sağlar.

Böylece fikirden çalışan prototipe kısa sürede geçersiniz.

C++ Sınıfı Üretimi

MATLAB değer sınıflarından, handle class’larından ve System nesnelerinden C++ sınıfları üretirsiniz. Çıktıyı kitaplık ya da çalıştırılabilir dosya olarak derlersiniz.

Dolayısıyla nesne yönelimli bir kod tabanına doğrudan tümleşirsiniz.

Kodu Optimize Edin

SIMD komutları ve OpenMP ile çok çekirdekli paralelleştirme kullanırsınız. Ayrıca LAPACK, BLAS ve FFTW gibi optimize edilmiş kitaplıkları çağırırsınız.

İşlemciye özgü intrinsic komutlar için Embedded Coder gerekir.

MATLAB Kodu ile İzlenebilirlik

Etkileşimli raporlarla MATLAB satırından üretilen koda, koddan MATLAB satırına geçersiniz. Böylece incelemede hangi satırın nereden geldiğini gösterirsiniz.

Ayrıca mevcut MATLAB birim testlerinizi üretilen kod üzerinde yeniden koşturursunuz.

MEX ile Hızlandırma

Üretilen kodu MEX fonksiyonu olarak MATLAB içinden çağırır, yoğun hesapları hızlandırırsınız. Profil çıktısı darboğazı gösterir.

Böylece hangi fonksiyonun süreyi yediğini ölçerek görürsünüz.

MATLAB Coder Nasıl Çalışır?

  1. Kodu hazırlayın Öncelikle algoritmayı kod üretimine uygun MATLAB alt kümesiyle yazın.
  2. Giriş tiplerini tanımlayın Ardından MATLAB Coder uygulamasında giriş boyut ve tiplerini belirtin.
  3. Kodu üretin Kaynak kod, statik kitaplık ya da dinamik kitaplık biçiminde çıktı alın.
  4. Doğrulayın ve tümleştirin Son olarak MATLAB testlerini kod üzerinde koşturup projenize tümleştirin.

Kullanım Alanları

Gömülü Sistemler

MATLAB algoritmasını doğrudan gömülü işlemcide çalışan koda çevirir, ardından karta dağıtırsınız.

Gömülü Yapay Zekâ

Sinir ağı ve makine öğrenmesi modellerini Intel ile ARM Cortex işlemcilere taşırsınız.

Sinyal İşleme

Filtre ve dönüşüm algoritmalarını C koduna çevirir, böylece gerçek zamanlı işlemeye geçersiniz.

Görüntü İşleme ve Bilgisayarlı Görü

Görü algoritmalarını taşınabilir koda çevirir, ardından mevcut C++ projenize tümleştirirsiniz.

Kontrol Sistemleri

Denetleyici algoritmasını koda çevirir, ardından gerçek zamanlı hedefte koşturursunuz.

Sıkça Sorulan Sorular

Üretilen kod için telif bedeli ödenir mi?

Hayır. Üretilen kod ticari dağıtımda telif bedeli gerektirmez. Dolayısıyla ürününüzü müşterilere serbestçe teslim edersiniz.

Hangi araç kutusu fonksiyonları destekleniyor?

Sinyal işleme, bilgisayarlı görü, derin öğrenme ve kontrol sistemleri araç kutularının önemli bir bölümü desteklenir. Ancak her fonksiyon kod üretimine uygun değildir; listeyi MathWorks dokümantasyonundan doğrulayın.

MATLAB Coder ile Embedded Coder farkı nedir?

MATLAB Coder taşınabilir C ve C++ kodu üretir. Embedded Coder ise bunun üzerine işlemciye özgü optimizasyon, kod arayüzü denetimi, SIL ve PIL testi ile MISRA uyumu ekler. Seri üretimde emodlar ikisini birlikte kullanır.

Derin öğrenme modeli dağıtabilir miyim?

Evet. ResNet-50 ve MobileNet-v2 gibi ağlar ile destek vektör makinesi ve karar ağacı modelleri desteklenir. Hedef olarak Intel ve ARM Cortex işlemcileri seçersiniz; ancak bunun için Deep Learning Toolbox gerekir.

Kodu mevcut projeme nasıl eklerim?

Çıktıyı kaynak kod, statik kitaplık ya da dinamik kitaplık olarak alırsınız. Ayrıca C++ tarafında sınıf da çıkarırsınız, böylece nesne yönelimli kod tabanına doğrudan tümleşirsiniz.

MATLAB testlerimi tekrar kullanabilir miyim?

Evet. Mevcut MATLAB birim testlerinizi üretilen kod üzerinde yeniden koşturursunuz. Böylece gerileme kontrolünü otomatikleştirir, kodun modelle aynı sonucu verdiğini gösterirsiniz.

okumaya devam et

Embedded Coder ürün sayfası başlık görseli

Embedded Coder

Embedded Coder, seri üretimde kullanılan gömülü işlemciler için okunabilir, derli toplu ve hızlı C ile C++ kodu üretir.

Embedded Coder, MATLAB ve Simulink tasarımlarınızdan seri üretime uygun gömülü kod üreten bir araç kutusudur. MATLAB Coder ile Simulink Coder’ın ürettiği kodu alır, ardından ileri optimizasyonlerle keskinleştirir. Üretilen fonksiyonların adını, dosya düzenini ve veri yapısını tek tek belirlersiniz; böylece kod mevcut yazılım mimarinize uyar. Quick Start aracı ise ilk yapılandırmayı adım adım kurar. Seçeneklerin tamamını MathWorks dokümantasyonunda bulursunuz.

Optimizasyon tarafında iki yol vardır. Taşınabilir C ve C++ kodu üretebilir ya da işlemciye özgü optimizasyonları açabilirsiniz; örneğin ARM işlemcilerde tek komutla çok veri işleyen SIMD kodu üretilir. Ayrıca donanım destek paketleriyle kodu doğrudan karta indirir, servis odaklı mimarilere uygulama olarak dağıtırsınız. Doğrulama tarafında ise yazılım döngüde ve işlemci döngüde testlerle sonuçları karşılaştırır, kod kapsamını ölçersiniz. Son olarak çift yönlü izleme sayesinde her kod satırından modele ve gereksinime geri dönersiniz.

Embedded Coder Temel Yetenekleri

Hızlı Başlangıç

Quick Start aracı, üretim kodu yapılandırmasını adım adım kurar. Ayrıca uygulamalar, şablonlar ve komut satırı arayüzüyle derleme betiklerini otomatikleştirirsiniz.

Böylece ilk kod üretimine saatler yerine dakikalar içinde ulaşırsınız.

İşlemciye Özgü Optimizasyon

Taşınabilir kod üretir ya da işlemciye özgü optimizasyonları açarsınız. Örneğin ARM işlemcilerde tek komutla çok veri işleyen SIMD kodu üretirsiniz.

Dolayısıyla aynı modelden hem genel hem hedefe özel çıktı alırsınız.

Kod Arayüzünü Uyarlayın

Embedded Coder Dictionary ile veri, bellek ve fonksiyon tanımlarını belirlersiniz. Ardından modelin üretilen koda nasıl yansıyacağını denetlersiniz.

Böylece kod hem mevcut yazılım mimarinize hem kodlama standardınıza uyar.

Donanıma Dağıtım

Donanım destek paketleriyle kodu doğrudan karta indirir, giriş çıkışlarıyla birlikte çalıştırırsınız. Ayrıca üretilen kodu kendi geliştirme ortamınıza tümleştirirsiniz.

Üstelik gömülü Linux paketleriyle C++ uygulamalarını da dağıtırsınız.

SIL ve PIL Testleri

Yazılım döngüde ve işlemci döngüde testlerle model ile kod sonuçlarını karşılaştırırsınız. Ayrıca Code Profile Analyzer ile yürütme süresini ölçersiniz.

Böylece koddaki sapmayı donanıma çıkmadan yakalarsınız.

Çift Yönlü İzlenebilirlik

Etkileşimli kod raporlarıyla her satırdan modele, modelden koda geçersiniz. Ayrıca kod boyutu ve karmaşıklık ölçütlerini aynı raporda görürsünüz.

Dolayısıyla sertifikasyon incelemelerinde kanıtı hazır tutarsınız.

Embedded Coder Nasıl Çalışır?

  1. Yapılandırmayı kurun Öncelikle Quick Start ile hedef donanımı ve kod arayüzünü tanımlayın.
  2. Kod arayüzünü uyarlayın Ardından Embedded Coder Dictionary ile veri ve fonksiyon adlarını belirleyin.
  3. Kodu üretin Optimizasyon seçeneklerini açıp taşınabilir ya da işlemciye özgü kodu çıkarın.
  4. Doğrulayın ve dağıtın Son olarak SIL ve PIL testleriyle sonuçları karşılaştırıp kodu karta indirin.

Kullanım Alanları

Gömülü Sistemler

Modelden üretilen kodu doğrudan seri üretim işlemcisine taşır, ayrıca bellek ve çevrim bütçesini denetlersiniz.

Model Tabanlı Tasarım

Gereksinimden koda uzanan zinciri çift yönlü izleme raporlarıyla kesintisiz tutarsınız.

Kontrol Sistemleri

Denetleyici algoritmasını gerçek zamanlı kısıtlara uygun kod hâline getirir, ardından işlemci döngüde sınarsınız.

Otonom Sürüş

AUTOSAR uyumlu kod üretir, böylece sürüş yazılımını araç elektroniği mimarisine tümleştirirsiniz.

Gömülü Yapay Zekâ

Sinir ağı çıkarımını gömülü işlemcide çalışacak koda çevirir, ayrıca yürütme süresini ölçersiniz.

Sıkça Sorulan Sorular

Embedded Coder tek başına çalışır mı?

Hayır. MATLAB Coder ya da Simulink Coder üzerine kurulur ve onların çıktısını ileri optimizasyonlerle genişletir. Ayrıca model tabanlı akış için Simulink gerekir.

Üretilen kod okunabilir mi?

Evet, kod okunabilirlik gözetilerek üretilir. Ayrıca fonksiyon adlarını, dosya düzenini ve veri yapısını Embedded Coder Dictionary ile siz belirlersiniz. Dolayısıyla kod mevcut yazılım mimarinize uyar.

Hangi standartlar destekleniyor?

AUTOSAR, MISRA C ve ASAP2 için yerleşik destek bulunur. Ayrıca ek ürünlerle ISO 26262, DO-178 ve IEC 61508 süreçlerine uyum sağlarsınız. Niteliklendirme kanıtlarını IEC Certification Kit ve DO Qualification Kit sunar.

Kod ile model arasındaki bağı nasıl kurarım?

Etkileşimli kod raporları çift yönlü izleme sağlar; her satırdan modele, modelden koda geçersiniz. Ayrıca gereksinim bağlantıları da rapora işlenir, böylece inceleme kanıtı hazır olur.

İşlemciye özgü optimizasyon ne kazandırır?

Örneğin ARM işlemcilerde SIMD kodu üretilir; tek komut birden çok veriyi işler. Böylece aynı algoritma daha az çevrimde tamamlanır. Buna karşın taşınabilirlik azalır, dolayısıyla seçimi hedefe göre yaparsınız.

Kodu nasıl doğrularım?

Yazılım döngüde ve işlemci döngüde testlerle model ile kod sonuçlarını karşılaştırırsınız. Ayrıca Code Profile Analyzer yürütme süresini ölçer ve kod kapsamını raporlar.

okumaya devam et

Raspberry Pi Blockset ürün sayfası başlık görseli

Raspberry Pi Blockset

Raspberry Pi Blockset, MATLAB algoritmalarını ve Simulink modellerini Raspberry Pi donanımına tasarlayıp simüle ettikten sonra doğrudan dağıtmanızı sağlar.

Raspberry Pi Blockset, MATLAB ve Simulink tarafında geliştirdiğiniz algoritmayı Raspberry Pi kartına taşımak için kullanılan bir destek paketidir. Windows, macOS ve Linux üzerinde çalışır; kurulum sonrasında kart doğrudan modelin hedefi hâline gelir. Aygıt sürücü blokları, haberleşme protokolleri ve donanım kitaplıkları gibi karta özgü özelliklere erişmenizi sağlar. Desteklenen kart listesi ve kurulum adımları MathWorks dokümantasyonunda yer alır.

Kullanım alanı yalnızca basit denemelerle sınırlı değildir. Örneğin makine öğrenmesi algoritmalarıyla ekipman sağlığını izler, verileri ThingSpeak üzerinden buluta taşırsınız. Ayrıca ROS ağından iki boyutlu lidar taraması okur, canlı kamera görüntüsünden kenar tespiti yapar ya da ResNet-50 gibi bir sinir ağını kart üzerinde koştururursunuz. Bağımsız çalışan C ve C++ uygulaması üretmek için Embedded Coder gerekir; dolayısıyla prototipten ürüne uzanan yol aynı model üzerinden ilerler.

Raspberry Pi Blockset Temel Yetenekleri

Karta Doğrudan Dağıtım

Modeli kurduktan sonra tek adımda karta indirir, çalışmasını bilgisayardan izlersiniz. Ayrıca kurulum Windows, macOS ve Linux üzerinde aynı biçimde ilerler.

Böylece derleme zincirini elle kurmakla uğraşmadan prototipe geçersiniz.

Aygıt Sürücü Blokları

Karta özgü çevre birimlerine hazır bloklarla erişirsiniz. Böylece haberleşme protokollerini ve donanım kitaplıklarını model içinden çağırırsınız.

Dolayısıyla GPIO, kamera ve sensör bağlantıları için ayrı sürücü yazmanız gerekmez.

Öngörülü Bakım Uygulamaları

Makine öğrenmesi algoritmalarıyla ekipman sağlığını kart üzerinde izlersiniz. Ardından ölçümleri ThingSpeak üzerinden buluta taşırsınız.

Böylece düşük maliyetli bir donanımla saha denemesi kurabilirsiniz.

ROS ile Lidar Verisi

ROS ağından iki boyutlu lidar tarama verisini okur, engelleri MATLAB tarafında görselleştirirsiniz. Üstelik veri akışı kart üzerinden gerçek zamanlı ilerler.

Üstelik aynı model robotik uygulamalara temel oluşturur.

Derin Öğrenme Uygulamaları

ResNet-50 gibi önceden eğitilmiş ağların kodunu üretip kart üzerinde çalıştırırsınız. Böylece görüntü sınıflandırmayı komut satırından tetiklersiniz.

Ayrıca kamera ve çevre birimleriyle uçtan uca bir algılama zinciri kurarsınız.

Kod Üretim Raporu

Dağıtım sırasında üretilen dosyaları ve ayarları özet raporda görürsünüz. Böylece karta neyin indiğini adım adım izlersiniz.

Dolayısıyla sorun çıktığında hangi aşamada durulduğunu görür, ayıklamayı kısaltırsınız.

Raspberry Pi Blockset Nasıl Çalışır?

  1. Destek paketini kurun Öncelikle MATLAB içinden destek paketini kurup kartı ağa tanıtın.
  2. Modeli hazırlayın Ardından algoritmayı kurup aygıt sürücü bloklarıyla çevre birimlerine bağlayın.
  3. Kartta çalıştırın Modeli karta indirip davranışını bilgisayardan canlı izleyin.
  4. Bağımsız uygulamaya geçin Son olarak Embedded Coder ile bağımsız çalışan C uygulaması üretin.

Kullanım Alanları

Nesnelerin İnterneti

Sensör verisini kart üzerinde işler, ardından ThingSpeak üzerinden buluta taşıyıp izlersiniz.

Kestirimci Bakım

Titreşim ve sıcaklık ölçümlerinden ekipman sağlığını, üstelik düşük maliyetli donanımda kestirirsiniz.

Robotik Çözümler

ROS ağına bağlanır, lidar ve kamera verisini kart üzerinde işleyerek robot davranışını sürersiniz.

Gömülü Yapay Zekâ

Önceden eğitilmiş sinir ağlarını karta indirip görüntü sınıflandırmayı yerinde çalıştırırsınız.

Gömülü Sistemler

Model tabanlı tasarımı düşük maliyetli tek kart bilgisayarda uçtan uca denersiniz.

Sıkça Sorulan Sorular

Hangi Raspberry Pi kartları destekleniyor?

Raspberry Pi 5, 4 Model B, 3 Model B ve B+, 2 Model B, Zero W, Zero 2 W ile Compute Module 4 ve 5 desteklenir. Ayrıca hem 32 bit hem 64 bit Raspberry Pi işletim sistemi kullanılabilir.

Simulink olmadan kullanabilir miyim?

Evet, MATLAB tarafındaki algoritmaları da karta taşıyabilirsiniz. Ancak blok tabanlı tasarım, aygıt sürücü blokları ve harici mod ile canlı izleme için Simulink gerekir.

Bağımsız çalışan uygulama üretebilir miyim?

Evet, bunun için Embedded Coder gerekir. Üretilen C ve C++ uygulaması kart üzerinde bilgisayara bağlı kalmadan çalışır. Dolayısıyla prototipten saha denemesine aynı model üzerinden geçersiniz.

Derin öğrenme modeli çalıştırabilir miyim?

Evet. ResNet-50 gibi önceden eğitilmiş ağların kodunu üretip kart üzerinde koşturabilirsiniz. Bunun için Deep Learning Toolbox gerekir; görüntü kaynağı olarak kart kamerası ya da USB kamera kullanılır.

Buluta veri gönderebilir miyim?

Evet, ThingSpeak üzerinden ölçümleri buluta taşır ve orada görselleştirirsiniz. Böylece öngörülü bakım gibi uygulamalarda saha verisini uzaktan izlersiniz.

Eğitim amaçlı kullanıma uygun mu?

Evet, düşük donanım maliyeti nedeniyle üniversite laboratuvarlarında sık tercih edilir. Öğrenciler model tabanlı tasarımı gerçek donanım üzerinde deneyimler; ayrıca kampüs lisansı kapsamında erişebilirler.

okumaya devam et

HDL Verifier ürün sayfası başlık görseli

HDL Verifier

HDL Verifier, RTL tasarımlarını MATLAB ve Simulink test ortamınıza karşı sınar; ASIC ile FPGA’lar için test düzenekleri ve doğrulama IP’si üretir.

HDL Verifier, yazılmış RTL kodunu MATLAB ve Simulink modellerinize karşı doğrulamak için kullanılan bir araç kutusudur. Referans modeli test düzeneği olarak kullanır, böylece donanım tanımlama dilinde ayrı bir test ortamı yazmak zorunda kalmazsınız. Cadence Xcelium, Synopsys VCS, Siemens Questa ve AMD Vivado simülatörleriyle eş simülasyon yürütür. Ayrıntılı kullanım örnekleri MathWorks dokümantasyonunda yer alır.

Araç kutusu yalnızca simülasyonla sınırlı değildir. AMD, Altera ve Microchip FPGA kartlarına otomatik bağlanarak uygulamayı donanım üzerinde doğrular, ayrıca iç sinyalleri yakalayıp MATLAB’a taşır. Doğrulama emodları için SystemVerilog DPI bileşenleri ve eksiksiz UVM test ortamları üretir. Dolayısıyla sistem mühendisliği tarafındaki model, doğrulama tarafında yeniden kullanılabilir bir varlığa dönüşür.

HDL Verifier Temel Yetenekleri

Simülatörlerle Eş Simülasyon

MATLAB ve Simulink modellerinizi test düzeneği olarak kullanır, RTL’i Xcelium, VCS, Questa ve Vivado üzerinde koşturursunuz. Ayrıca mevcut HDL kodunu sistem simülasyonuna dahil edersiniz.

Böylece referans model ile uygulamayı aynı koşumda karşılaştırırsınız.

Karma Sinyal Doğrulama

Simscape, SerDes Toolbox ya da Mixed-Signal Blockset modellerinden SystemVerilog DPI-C kodu üretirsiniz. Böylece sayısal tasarımın analog devrelerle etkileşimini değerlendirirsiniz.

Üstelik davranışsal modeller doğrulama ortamına doğrudan girer.

SystemC TLM 2.0 Üretimi

ASIC Testbench ile TLM 2.0 arayüzlü SystemC sanal prototip modelleri üretirsiniz. Ayrıca araç, eşleme bilgisi taşıyan IP-XACT dosyalarını da çıkarır.

Dolayısıyla sanal platform simülasyonlarına donanım hazır olmadan başlarsınız.

HDL Verifier Nasıl Çalışır?

  1. Referans modeli hazırlayın Öncelikle doğrulanacak davranışın MATLAB ya da Simulink modelini kurun.
  2. Doğrulama yolunu seçin Ardından eş simülasyon, kart üstü doğrulama ya da test düzeneği üretimi arasında karar verin.
  3. RTL’i koşturun Simülatörü ya da FPGA kartını bağlayıp tasarımı referans modele karşı sınayın.
  4. Sonuçları inceleyin Son olarak yakalanan sinyalleri MATLAB’a alıp farkları görselleştirerek ayıklayın.

Kullanım Alanları

FPGA- ASIC, SoC Geliştirme

RTL tasarımını sistem modeline karşı doğrular, ayrıca kart üstü sınamayı otomatikleştirirsiniz.

Karışık Sinyalli Sistemler

Sayısal tasarımın analog devrelerle etkileşimini davranışsal modeller üzerinden değerlendirirsiniz.

Kablosuz Haberleşme

Alıcı verici zincirlerinin RTL uygulamasını referans model karşısında sınar, böylece hataları erken bulursunuz.

Sinyal İşleme

Filtre ve dönüşüm bloklarının donanım uygulamasını MATLAB test verisiyle doğrularsınız.

Sıkça Sorulan Sorular

Hangi HDL simülatörleri destekleniyor?

Cadence Xcelium, Synopsys VCS, Siemens Questa ve AMD Vivado simülatörleri desteklenir. Eş simülasyon sırasında MATLAB ya da Simulink modeliniz test düzeneği olarak çalışır. Böylece ayrı bir HDL test ortamı yazmanız gerekmez.

FPGA kartı üzerinde doğrulama yapabilir miyim?

Evet. AMD, Altera ve Microchip kartlarına otomatik bağlanır, uygulamayı donanım üzerinde sınarsınız. Ayrıca iç sinyalleri yakalayıp MATLAB’a aktarır, mantık analizörü yazılımıyla görselleştirirsiniz.

UVM test ortamı üretebilir miyim?

Evet. MATLAB ve Simulink tarafından eksiksiz UVM test ortamları çıkarabilirsiniz; ayrıca UVM Framework desteği vardır. Dolayısıyla doğrulama ekibi sistem modelini yeniden kullanabilir.

HDL Coder ile birlikte mi kullanılır?

Zorunlu değildir, ancak emodlar ikisini sık sık birlikte kullanır. HDL Coder modelden RTL üretir, HDL Verifier bu kodu referans modele karşı doğrular. Elle yazılmış eski HDL kodunu da sistem simülasyonuna dahil edebilirsiniz.

Sanal prototip modeli üretilebilir mi?

Evet. ASIC Testbench ile TLM 2.0 arayüzlü SystemC modelleri çıkarırsınız. Ayrıca eşleme bilgisi taşıyan IP-XACT dosyaları da elde edersiniz; böylece sanal platform simülasyonuna donanım hazır olmadan başlarsınız.

Analog etkileşimi nasıl değerlendiririm?

Simscape, SerDes Toolbox veya Mixed-Signal Blockset modellerinden SystemVerilog DPI-C kodu üretirsiniz. Böylece sayısal tasarımın analog devrelerle birlikte davranışını doğrulama ortamında görürsünüz.

okumaya devam et

HDL Coder ürün sayfası başlık görseli

HDL Coder

HDL Coder, MATLAB fonksiyonlarından ve Simulink modellerinden FPGA ile ASIC tasarımları için sentezlenebilir Verilog, SystemVerilog ve VHDL kodu üretir.

HDL Coder, MATLAB ve Simulink tarafında geliştirdiğiniz algoritmayı sentezlenebilir donanım koduna çeviren bir araç kutusudur. Üç yüzü aşkın HDL uyumlu blok, Stateflow çizelgeleri ve Simscape modelleriyle alt sistemi kurar, ardından davranışını simüle edersiniz. Kod üretimi sabit noktalı, kayan noktalı ya da karma veri tipleriyle çalışır. Blok listesinin tamamı MathWorks dokümantasyonunda yer alır.

Üretilen RTL belirli bir üreticiye bağlı değildir; dolayısıyla prototip ile üretim kodunu farklı platformlar arasında yeniden kullanırsınız. Ayrıca yüksek seviyeli sentez seçenekleri kaynak paylaşımı, boru hattı ekleme ve gecikme dengeleme gibi dönüşümleri uygular. Böylece sentez aşamasına gelmeden önce hız ile alan arasındaki dengeyi ölçer, kaynak kullanım tahminini görürsünüz. ASIC tarafında ise güç, başarım ve alan farkındalığı olan RTL ya da Cadence Stratus HLS ile kullanılacak sentezlenebilir SystemC üretilir.

HDL Coder Temel Yetenekleri

Yüksek Seviyeli Donanım Tasarımı

Üç yüzü aşkın HDL uyumlu blok, MATLAB fonksiyonu ve Stateflow çizelgesiyle alt sistemi kurarsınız. Ardından donanım davranışını simüle eder, sentezlenebilir kodu üretirsiniz.

Böylece RTL’i elle yazmadan mimari kararları model üzerinde denersiniz.

Hız ve Alan Dengesini Deneyin

Kaynak paylaşımı, boru hattı ekleme ve gecikme dengeleme gibi dönüşümleri model üzerinde uygularsınız. Ayrıca kaynak kullanım tahminini sentezden önce görürsünüz.

Dolayısıyla tam paralel ile seri uygulama arasındaki seçimi ölçerek yaparsınız.

Üreticiden Bağımsız Hedefleme

AMD, Altera ve Microchip FPGA ile SoC’leri için RTL üretirsiniz. Donanım destek paketleri giriş çıkışları kart düzeyindeki bacaklara ve AXI yazmaçlarına eşler.

Üstelik aynı tasarımı farklı üreticilerin kartlarında yeniden kullanabilirsiniz.

ASIC İş Akışları

Güç, başarım ve alan farkındalığı olan RTL ya da Cadence Stratus HLS ile kullanılacak sentezlenebilir SystemC üretirsiniz. Böylece karma analog ve sayısal sistemleri birlikte doğrularsınız.

Ayrıca MATLAB ve Simulink algoritmalarını ASIC hedefine taşıyan adımlar tanımlıdır.

Akan Veri İçin Tasarım

Otomatik frame-to-sample dönüşümüyle akan veri algoritmalarını donanıma uygun hâle getirirsiniz. Görüntü ve video işleme zincirleri bu akışla kurulur.

Üstelik donanım mimarisi ayrıntılarını modelin içine gömerek benzetim ile uygulamayı hizalarsınız.

Gerçek Zamanlı Prototipleme

HDL Workflow Advisor üzerinden Speedgoat programlanabilir FPGA giriş çıkış modüllerini hedeflersiniz. Ayrıca prototipleme doğruluğu için kayan noktalı HDL üretimi desteklenir.

Böylece tasarımı gerçek zamanlı çevrim içinde sınarsınız.

HDL Coder Nasıl Çalışır?

  1. Algoritmayı modelleyin Öncelikle algoritmayı HDL uyumlu bloklarla ya da MATLAB fonksiyonlarıyla kurun.
  2. Veri tiplerini belirleyin Ardından Fixed-Point Designer ile sabit noktalı gösterimi ve ölçeklemeyi ayarlayın.
  3. Optimizasyonleri deneyin Kaynak paylaşımı ve boru hattı seçenekleriyle hız-alan dengesini karşılaştırın.
  4. RTL üretin ve doğrulayın Son olarak kodu üretip HDL Verifier ile eş simülasyon ve kart üstü doğrulama yapın.

Kullanım Alanları

FPGA- ASIC, SoC Geliştirme

Algoritmadan sentezlenebilir RTL’e uzanan akışı tek ortamda yürütür, üreticiden bağımsız kod üretirsiniz.

Sinyal İşleme

Filtre ve dönüşüm zincirlerini donanıma taşır, böylece akan veriyi gerçek zamanlı işlersiniz.

Kablosuz Haberleşme

Alıcı verici zincirlerini Wireless HDL Toolbox ile birlikte kurar, ardından FPGA üzerinde doğrularsınız.

Görüntü İşleme ve Bilgisayarlı Görü

Kareden örneğe dönüşümle video işleme zincirlerini donanım verimli biçimde uygularsınız.

Radar Sistemleri

Darbe tespiti gibi algoritmaların donanım mimarisini model üzerinde tasarlar, sonra RTL’e çevirirsiniz.

Sıkça Sorulan Sorular

HDL Coder hangi dillerde kod üretir?

Verilog, SystemVerilog ve VHDL desteklenir. Ayrıca ASIC akışları için sentezlenebilir SystemC üretilebilir. Üretilen RTL belirli bir üreticiye bağlı değildir, dolayısıyla farklı platformlarda yeniden kullanılır.

Hangi FPGA üreticileri destekleniyor?

AMD, Altera ve Microchip FPGA ile SoC aileleri desteklenir. Donanım destek paketleri yaygın geliştirme kartları için giriş çıkışları kart bacaklarına ve AXI yazmaçlarına eşler. Böylece kart üstü doğrulamaya hızlı geçersiniz.

Sabit noktaya çevirmek zorunda mıyım?

Hayır, kayan noktalı HDL üretimi de desteklenir ve prototipleme doğruluğu için kullanışlıdır. Ancak alan ile güç açısından verimli sonuç için sabit noktalı gösterim tercih edilir; bunun için Fixed-Point Designer gerekir.

Hız ve alan dengesini nasıl ayarlarım?

Kaynak paylaşımı, boru hattı ekleme ve gecikme dengeleme seçeneklerini model üzerinde uygularsınız. Ayrıca kaynak kullanım tahminini sentezden önce görür, tam paralel ile seri uygulama arasındaki farkı ölçersiniz.

Üretilen kodu nasıl doğrularım?

HDL Verifier ile önde gelen HDL simülatörlerinde eş simülasyon yapar, ayrıca FPGA kart üstü doğrulama yürütürsünüz. Böylece RTL davranışını MATLAB ve Simulink test ortamınıza karşı sınarsınız.

Gerçek zamanlı prototipleme mümkün mü?

Evet. HDL Workflow Advisor üzerinden Speedgoat programlanabilir FPGA giriş çıkış modülleri hedeflenir. Böylece tasarımı gerçek zamanlı çevrim içinde, gerçek sinyallerle sınarsınız.

okumaya devam et

Fixed-Point Designer ürün sayfası başlık görseli

Fixed-Point Designer

Fixed-Point Designer, sabit ve kayan noktalı algoritmaları gömülü donanıma taşımadan önce modellemenizi, sayısal davranışını ölçmenizi ve veri tiplerini otomatik olarak optimizasyonnizi sağlar.

Fixed-Point Designer, algoritmaları gömülü donanımın sayısal kısıtlarına uyarlamak için kullanılan bir araç kutusudur. Kelime uzunluğu, ikilik nokta konumu ve keyfi eğim-kaydırma ölçeklemesiyle sabit noktalı davranışı simüle eder; yuvarlama ve taşma modlarını ayrı ayrı denetlersiniz. Böylece duyarlık ile kaynak kullanımı arasındaki dengeyi donanıma çıkmadan ölçersiniz. Veri tipi fonksiyonlarının tamamı MathWorks dokümantasyonunda yer alır.

Araç kutusu yalnızca modelleme yapmaz, dönüşümü de üstlenir. Guided workflow adımları çift duyarlıklı tasarımı sabit noktalıya ya da tek ve yarım duyarlıklı kayan noktaya çevirir; önerilen veri tiplerini simülasyon aralıklarına bakarak belirler. Ayrıca makine öğrenmesi ve derin öğrenme modellerinin öğrenilebilir parametrelerini nicemleyerek kısıtlı cihazlara hazırlar. Üretilen kod ile simülasyon arasındaki bit-true eşleşme korunduğu için, donanımda gördüğünüz davranış masaüstünde doğruladığınız davranışla aynıdır.

Fixed-Point Designer Temel Yetenekleri

Sabit Noktalı Modelleme

Uygulamaya özel kelime uzunluğu, ikilik nokta ve eğim-kaydırma ölçeklemesiyle algoritmayı simüle edersiniz. Ayrıca yuvarlama ve taşma davranışını ayrıntı düzeyinde belirlersiniz.

Böylece sayısal duyarlığın performansa etkisini donanım maliyeti doğmadan ölçersiniz.

Bit-True Kod Üretimi

Azaltılmış duyarlıklı tasarımlarda simülasyon ile üretilen kod arasındaki bit-true eşleşme korunur. Dolayısıyla masaüstünde doğruladığınız davranışı donanımda da görürsünüz.

Dolayısıyla doğrulama adımlarını tekrar etmeniz gerekmez.

Hataları Erken Yakalayın

Taşma, duyarlık kaybı ve boşa harcanan aralık kaynaklarını hızla bulur ve ayıklarsınız. Çünkü simülasyon sırasında sinyal aralıkları histogram olarak toplanır.

Sayısal davranış sorunları tasarımın erken aşamasında çözülür; geliştirme maliyeti düşer.

Otomatik Veri Tipi Seçimi

Fixed-Point Tool, yönlendirilmiş dönüşüm akışlarıyla uygun veri tiplerini önerir. Böylece nicemlemenin sayısal davranışa etkisini adım adım incelersiniz.

Ayrıca kayan noktalı bir tasarımı sabit noktalıya çevirirken karşılaştırma raporları da üretirsiniz.

Gömülü Kayan Nokta

Çift duyarlıklı tasarımları tek ve yarım duyarlığa otomatik çevirir, gömülü ortamda verimliliği artırırsınız. Üstelik subnormal sayılar için sıfıra düşürme davranışını da taklit edersiniz.

Böylece kayan nokta gerektiren algoritmaları küçük bellekli hedeflere sığdırırsınız.

Arama Tablosu Sıkıştırma

Karmaşık fonksiyonları ve alt sistemleri en uygun arama tablolarıyla yaklaşık olarak temsil edersiniz. Ayrıca mevcut tabloları veri noktası ve veri tipi açısından optimize ederek bellek kullanımını düşürürsünüz.

Böylece yakıt kontrolü gibi tablo ağırlıklı modeller gömülü belleğe rahatça sığar.

Fixed-Point Designer Nasıl Çalışır?

  1. Aralıkları toplayın Öncelikle modeli çalıştırıp sinyal aralıklarını simülasyon ya da türetme yoluyla toplayın.
  2. Veri tiplerini önertin Ardından Fixed-Point Tool ile uygun kelime uzunluğu ve ölçekleme önerilerini alın.
  3. Sayısal davranışı karşılaştırın Dönüşüm sonrası sonuçları özgün tasarımla karşılaştırıp taşma ve duyarlık kaybını inceleyin.
  4. Kodu üretin Son olarak bit-true eşleşen kodu üretip gömülü hedefe ya da FPGA’ya taşıyın.

Kullanım Alanları

Gömülü Sistemler

Algoritmayı hedef işlemcinin sayısal kısıtlarına uyarlar, böylece bellek ve çevrim bütçesine sığdırırsınız.

FPGA- ASIC, SoC Geliştirme

HDL için optimize edilmiş matris bloklarıyla QR ayrıştırma gibi işlemleri donanım verimli biçimde kurarsınız.

Sinyal İşleme

Filtre ve dönüşüm zincirlerinde sabit noktalı davranışı simüle eder, böylece duyarlık kaybını erken görürsünüz.

Gömülü Yapay Zekâ

Sinir ağı parametrelerini nicemleyerek modeli kısıtlı bellekli cihazlara hazırlarsınız.

Kontrol Sistemleri

Denetleyici katsayılarının sabit noktalı gösterimini sınar, ardından kararlılığı sayısal etkilerle birlikte değerlendirirsiniz.

Sıkça Sorulan Sorular

Fixed-Point Designer için Simulink gerekli mi?

Hayır, MATLAB tarafındaki sabit noktalı veri tipleri ve dönüşüm akışları Simulink olmadan da çalışır. Ancak model tabanlı dönüşüm ve blok düzeyinde ayar için Simulink gerekir.

Sabit noktaya geçmek neden gerekli?

Gömülü işlemcilerin çoğu kayan nokta birimi taşımaz ya da sınırlı taşır. Bu nedenle sabit noktalı gösterim bellek ve çevrim maliyetini düşürür. Buna karşın duyarlık kaybı riski doğar; araç kutusu bu dengeyi ölçmenizi sağlar.

Yapay zeka modellerini nicemleyebilir miyim?

Evet. Derin sinir ağlarının ve makine öğrenmesi modellerinin öğrenilebilir parametrelerini sabit noktaya çevirirsiniz. Ancak bunun için Deep Learning Toolbox ya da Statistics and Machine Learning Toolbox gerekir.

Üretilen kod simülasyonla aynı sonucu verir mi?

Evet, azaltılmış duyarlıklı tasarımlarda bit-true eşleşme korunur. Dolayısıyla donanımdaki sayısal davranış masaüstünde doğruladığınızla aynı olur ve doğrulamayı tekrarlamanız gerekmez.

Kayan nokta gereken durumlarda ne yaparım?

Çift duyarlıklı tasarımı tek ya da yarım duyarlığa otomatik çevirebilirsiniz. Ayrıca subnormal sayılar için sıfıra düşürme davranışını taklit ederek hedef donanımın gerçek davranışını simüle edersiniz.

FPGA tarafında nasıl kullanılır?

Fixed-Point HDL kitaplığı, doğrusal denklem sistemleri ve QR ayrıştırma gibi matris işlemleri için donanım verimli blok desenleri sunar. Ancak HDL kodu üretimi için HDL Coder gerekir.

okumaya devam et

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