Quartus üzerinde MATLAB Simulink projeleri çalıştırmak

Giriş

Simulink, çok-disiplinli sistemlerin simülasyonunu gerçekleştiren ve model tabanlı tasarım için blok diyagramlarına dayalı bir ortamdır. Simulink ortamında; sistem seviyesinde tasarım, simülasyon, otomatik, kod oluşturma, sürekli test ve gömülü sistemlerin doğrulanması sağlanır. Simulink, dinamik sistemlerin modellenebilmesi ve simülasyonu için grafiksel editör, özelleştirilebilen blok kütüphanesi ve çözücüler sunmaktadır. MATLAB ile entegre olarak çalışan Simulink sayesinde, model içerisinde MATLAB algoritmalarını kullanabilir ve daha ileri analizler için simülasyon sonuçlarınızı MATLAB ortamına taşıyabilirsiniz.

MATLAB Simulink özellikleri;

  1. Hiyerarşik blok diyagramlarının oluşturulması ve yönetilmesi için grafiksel bir ortam sağlamaktadır. 
  2. Sürekli sistem ve ayrık sistemlerin modellenebilmesi için öntanımlı bloklar, ilgili Simulink kütüphanesinde bulunmaktadır. 
  3. Sabit adımlı (Fixed-step) ve değişken adımlı (variable-step) adi diferansiyel denklem (ordinarydifferentialequation-ODE) çözücüleri barındırır. 
  4. Simulasyon sonuçlarını görüntülemek için osiloskop (scope) ve data görüntüleyicileri mevcuttur. 
  5. Model dosyaları ve datalarının yönetilebilmesi için proje ve data yönetimi araçları bulunmaktadır. 
  6. Model mimarisi düzenlenmesi ve simülasyon hızını arttırabilmek için model analiz araçları bulunmaktadır. 
  7. MATLAB algoritmalarının model içerisine alınması için  MATLAB fonksiyon blokları bulunmaktadır. 
  8. C ve C++ kodlarının model içerisine alınması için LegancyCodeTool bulunmaktadır. MATLAB 

Simulink üzerinde genellikle kullanılan elemanlar ve açıklamaları;

  • Constant:Sabit bir giriş değeri vermek için kullanılır. 
  • D Flip-Flop:Bir adet hazır oluşturulmuş D Flip Flop için kullanılır. 
  • J-K Flip-Flop:Bir adet hazır oluşturulmuş JK Flip-Flop için kullanılır. 
  • Display:Sistem sonuçlarını çıkış olarak ekran şeklinde göstermek için kullanılır. 
  • Scope:Sistem sonuçlarının MATLAB üzerinde simülasyon sonucu olarak göstermek için kullanılır. 
  • Delay:Devrelerde bekleme süresi vermek için kullanılır. Üzerine iki defa tıklanarak delay length değiştirilebilir veya sağ tuş tıklayarak block parameters(delay) seçilerek değiştirilebilir. 
  • Mux:Bir adet çoklayıcı için kullanılır. Üzerine iki kere tıklayarak number of inputs kısmı değiştirilir. Veya aynı şekilde sağ tuş tıklayarak block parameters(mux) seçilerek değiştirilebilir. 
  • Clock:Sisteme clock sinyali vermek için kullanılır. Üzerine iki kere tıklayarak period değiştirilir. 
  • Logical Operatör Sisteme mantık elemanlarını eklemek için kullanılır.(AND-OR-XOR-NOT vb.) Bir adet eleman eklendikten sonra üzerine iki kere tıklanır ve operatör tipi seçilir. 
  • In: Vhdl kodlama için giriş değerleri vermek için kullanılır. 
  • Out: Vhdl kodlama için çıkış değerleri vermek için kullanılır. 


Operatör tipi seçimi;

Altera Quartus Altera Quartus II, Altera'nın Intel tarafından satın alınmasından önce, Altera tarafından üretilen programlanabilir mantıksal cihaz tasarım yazılımıdır ve araç Intel Quartus Prime'a yeniden adlandırılmıştır. Quartus II, geliştiricilerin tasarımlarını derlemelerini, zamanlama analizlerini gerçekleştirmelerini, RTL diyagramlarını incelemelerini, farklı uyaranlara tepki vermek için bir tasarımı simüle etmelerini ve hedef cihazı programlayıcı ile konfigüre etmelerini sağlayan HDL tasarımlarının analizini ve sentezini sağlar. Quartus, donanım tanımlaması, mantık devrelerinin görsel olarak düzenlenmesi ve vektör dalga biçimi simülasyonu için VHDL ve Verilog'un bir uygulamasını içerir

PROJE YAPIM AŞAMALARI; 

Kullanılan yazılım ve donanımlar; 

Altera, programlanabilir mantık devrelerinin önde gelen üreticilerinden biridir.
Altera, geçmişte yarıiletken üretiminde pazar payına sahip olan Signetics ve MMI şirketlerinin ardından programlanabilir mantık devrelerinin yaratılmasına öncülük etmiştir. Altera bugün ürünlerinde programlanabilir devrelerin üzerinde bir sistem yaratmaya olanak sağlayan pek çok yetenek sunmaktadır. Bu ürünlerin arasında gömülü bellekler, gömülü işlemciler ve yüksek hızlı alıcı/verici devreleri sayılabilir. Altera yakın geçmişte 130nm ve 90nm teknolojilerini kullanarak oldukça başarılı ürünleri piyasaya sürmüştür. Pazardaki başlıca rakipleri Xilinx, Lattice Semiconductor, Actel, Quicklogic ve Atmel firmalarıdır. 
Altera aynı zamanda mantık devrelerinin tasarlanması ve benzetilmesi amacıyla kullanılan Quartus II adlı yazılım araçlarını geliştirmektedir. Altera`nın yazılım araçları güncel donanım tanımlama dilleri olan VHDL ve Verilog`u desteklemesine karşın, Altera, AHDL olarak bilinen kendi donanım tanımlama dilini geliştirmiştir.

VHDL Dili

VHDL en çok kullanılan donanım tanımlama dillerinden biridir. Bu programlama dili 1980'lerden beri kullanılmakta olup sürekli geliştirilmiş ve IEEE tarafından da standart olarak kabul edilmiştir.
VHDL'in açılımı Very High-Speed Integrated Circuit Hardware Description Language şeklindedir.
VHDL iki amaç için kullanılır.
Sentezleme: FPGA'e yüklenecek kodu oluşturmak için.
Simülasyon: FPGA'e yüklenecek kodun simülasyonunu yapmak için. 

MATLAB Simulink Proje Oluşturma;

MATLAB Simulink'in başlatılması; 

Matlab penceresinde New sekmesinden Simulink Model uzantısına tıklanır. Yada Matlab penceresinde komut satırına 'simulink' yazılır.



 

Yeni bir proje oluşturmak;

Simulink komutu yazıldıktan veya Simulink ikonu tıklandıktan sonra aşağıdaki Simulink Kütüphane Tarayıcısı (Simulink Library Browser) açılır. Yeni bir Simulink modeli, Simulink Kütüphane Tarayıcısı'ndaki bloklar kullanılarak oluşturulabilir. Yeni bir Simulink modeli oluşturmak için aşağıdaki resimde kırmızı okla gösterilen boş sayfa resmi tıklanır veya Simulink Kütüphane Tarayıcısı'nda \\
File>New>Model yolu takip edilir.


Yeni bir proje oluşturulduktan sonra gelen ekran;

Proje oluşturulduktan sonra gelen ekran şekil 6'da gösterilmiştir. İsterseniz Ctrl+N kombinasyonuyla bu ekrana ulaşabilirsiniz.



Library Browser;

Library browser'dan devre için gerekli elemanlara ulaşabileceğiniz yer. Buradan istediğiniz devre elemanını ekleyip ayarlama yapabilirsiniz.



Library Browser'dan devre şematiği oluşmuş hali Bu bölümde, Library browser'dan seçilen elemanlar eklendikten sonra oluşturulmuş bir adet basit bir devre şematiği verilmiştir.


 

Şematiği hdl'e çevirmek

Oluşturulan devrenin şematikten HDL kodlama çevrilmesi ile görsel eklenmiştir.


 

Command Windowda oluşturulan dosyanın nereye gittiğini görmek

Bu bölümde, Generate HDL tool'una tıklandıktan sonra Matlab Command Window ekranında işlem aşamalarını gösteren görsel eklenmiştir.



Oluşturulan Dosyalar

HDL kodlama oluşturulduktan sonra, \textbf{hdlsrc} ve \textbf{slprj} olmak üzere program kendiliğinden oluşturmaktır. Hdlsrc içerisinde bizim projemizin vhdl'e dönüştürülmüş hali bulunmaktadır.



Quartus üzerinde yapılan işlemler 

Quartus proje açılımı İlk olarak File bölümünden Open Project diyerek projenin bulunduğu klasör bulunur.



Projeyi seçme;

Girilen klasör içerisinde oluşturulmuş, hdl uzantılı dosya seçilir ve açılır.


 

Projeye isim vermek;

Proje seçimi gerçekleştirildikten sonra, Quartus projesinin hangi klasör içerisine ve hangi isimle kaydedileceği seçilir ve devam edilir.


VHDL Seçimi

HDL projesi seçildiğinde File kısmına otomatik olarak gelir.


FPGA Kart seçimi

Bu bölümde kullanılan FPGA De2-70 kartı seçilir.


Ve bu işlemlerden sonra, kod derlenir ve pin atamaları yapılır ve çalıştırılır..

Yorumlar

Bu blogdaki popüler yayınlar

VirtualBox'ta Ubuntu Server Kurulumu

PHP CRUD İşlemleri(Tasarım Bootstrap yardımıyla)

Jmeter ile belirtilen site üzerinde performans testi gerçekleştirilmesi