VHDL UART ve SPI Modülü Kullanan Basit Bir İşlemci

Elimizde M25P128 Flash entegresine bilgisayarın seri portu üzerinden veri yazmak ve okumak amacıyla
tasarlanmış Şekil-1’deki gibi bir kart olduğunu düşünelim. Bu ödevde Şekil-1’de gösterilen SPI Flash
okuma kartı için, bilgisayarın seri portu üzerinden gelen komut ile M25P128 SPI Flash entegresinden
okuma yapabilen bir FPGA tasarımı yapınız. (Yazma yok)
M25P128 Entegresinin veri sayfasını aşağıdaki adresten indirebilirsiniz.
https://www.micron.com/~/media/documents/products/data-sheet/nor-flash/serial-nor/m25p/m25p128.pdf

Bilgisayardan gelen 4 byte okuma komutu şu şekilde olacaktır: |AA + 24 bit address|
Bu komut seri arayüzden gönderildikten sonra okuma işlemi yapılacak ve tek bir byte UART arayüzü
üzerinden bilgisayara gönderilcektir.
a) Ön tasarımı akış diyagramı şu şekildediruart_spi_vhdl

Bize ayrıca M25P128 entegresi gibi sinyal gönderecek bir modül gereklidir.

Modül için testbench kodu

Simülasyon sonucu

HW5S2

b) UART arayüzü üzerinden haberleşme için gerekli kodu yazarak benzetimini yapalım.

UART için testbench kodu

UART Modülü için benzetim sonuçları, burada TX sinyali devreye giriş olarak geri verildiği için RX sinyalinde de doğru oluştuğu gözlenebilmektedir.

HW5S3

c) M25P128 entegresini SPI arayüzü üzerinden okuyan ve diğer modülleri içeren ana modülü yazalım.

d) Projeyi bütün halinde test etmek için bir testbench yazarak XSIM ile benzetimini yapalım.

Benzetim sonuçları

HW5S4CHW5S4HW5S4B