Konfiguracija, SPI flash, USB DFU i JTAG
ULX4M ima više putova za programiranje i boot. Oni imaju različite uloge.
Tri odvojena sloja
DFU bootloader pločiceTrajna FPGA konfiguracija/firmware pri početku SPI flasha. Omogućuje USB DFU i normalno predaje kontrolu user bitstreamu.
Hazard3-Doom user bitstreamECP5 konfiguracija s Hazard3 SoC-om, memorijom, videom i resident monitorom.
Hazard3 resident monitor / Doom slikaRISC-V softver koji se izvršava nakon FPGA konfiguracije. Njegov rebuild ne znači da DFU bootloader treba zamijeniti.
Pogledajte Rad DFU bootloadera i oporavak i Programiranje i trajno pokretanje.
Organizacija flasha
Upstream dokumentacija opisuje prva 2 MiB (0x000000 do 0x1fffff) kao
bootloader/protected područje, a normalni user bitstream počinje na
0x200000. Većina FPGA eksperimenata zato treba koristiti FPGA SRAM ili
normalno user područje, a ne bootloader prostor.
USB DFU
Upstream bootloader enumerira kao VID:PID 1d50:614b; projekt koristi DFU
altsetting 0 za user bitstream. Repo također sadrži
scripts/ulx4m-bootloader.sh za rijetke slučajeve izgradnje, provjere i
oporavka samog bootloadera.
Upozorenje
Ne zamjenjujte ispravan DFU bootloader samo zato što se promijenio Hazard3-Doom bitstream, memorijski profil ili resident monitor.
JTAG
ULX4M nudi vanjski JTAG i JTAG-over-GPIO mogućnosti. Hazard3-Doom koristi JTAG
za pristup ECP5 uređaju i za Hazard3 RISC-V Debug Module preko ECP5 JTAG
infrastrukture. Trenutačna ULX4M-LD 85F meta koristi IDCODE 0x01113043.
Za novu rutu ili rizičnu izmjenu poželjno je privremeno učitati bitstream u FPGA SRAM kada programator to omogućuje; power cycle tada vraća trajni boot put.
Testiranje u SRAM-u ili flashu
Pri provjeri novog routinga, memorijskog profila ili rizične FPGA promjene, poželjno je učitati bitstream u FPGA SRAM kada to dostupni programator podržava. Nakon ciklusa napajanja vraća se trajni konfiguracijski put. Korisničku sliku zapišite u flash tek nakon što bitstream prođe predviđene testove pokretanja.