FPGA, taktovi i I/O domene
ECP5 obitelj
ULX3S koristi Lattice ECP5 FPGA-e u 381-ball kućištu. Upstream hardver podržava 12F, 25F, 45F i 85F populacije, a Hazard3-Doom trenutačno ima potpune wrappere za 85F i 12F.
Gustoća mijenja dostupne LUT, EBR i routing resurse, ali sama ne određuje PCB reviziju.
25 MHz oscilator
Izvorni ULX3S dizajn ima ugrađeni oscilator od 25 MHz. Hazard3-Doom koristi tu referencu za generiranje taktova potrebnih procesoru, SDRAM-u i video logici.
Trenutačne osnovne postavke profila pločica su:
Cilj |
Hazard3 takt |
Namjena |
|---|---|---|
ULX3S 85F |
50 MHz |
CPU, AHB/SoC logika, strana SDRAM kontrolera, monitor i platformska logika. |
ULX3S 12F |
40 MHz |
CPU/SoC i SDRAM cilj sa smanjenim resursima. |
Video koristi vlastite izvedene taktove, pa zatvaranje timinga mora obuhvatiti više od samog CPU takta. Točne vrijednosti routanih taktova rezultat su izgradnje, a ne trajne specifikacije pločice.
SDRAM i timing
Vanjska memorija je sinkroni SDR SDRAM. Wrapper i kontroler održavaju potreban
fazni odnos sustava i fizičkog SDRAM takta. Promjena HAZARD3_SYS_CLK_HZ zato
utječe i na memorijski podsustav i timing ograničenja.
Zadane nextpnr postavke centralizirane su u
scripts/build-ecp5-bitstream-common.sh i sažete u
Profili pločica. Seed koji prolazi na 85F nije dokaz za
12F i mora se ponovno kvalificirati nakon synthesis-visible promjene. Vidi
ECP5 timing i seed sweepovi.
Zatvaranje timinga ovisi o cilju
Hazard3-Doom centralizira zadane nextpnr postavke routinga u
scripts/build-ecp5-bitstream-common.sh. Trenutačne referentne postavke
izdanja također su sažete u Profili pločica.
Seed koji prolazi na ULX3S 85F nije dokaz da će proći na 12F, a ranije dobar seed ne treba smatrati valjanim nakon promjene RTL-a vidljive sintezi, predučitavanja monitora, lanca alata ili ograničenja. Projektni postupak sweepa opisan je u ECP5 timing i seed sweepovi.
I/O standardi
LPF opisuje i pinove i električno ponašanje. GPIO, SDRAM i mnogi periferni signali koriste 3,3 V LVCMOS, dok GPDI video koristi uparene izlaze i routing koji moraju odgovarati odabranom wrapperu i ograničenjima.