8. vaja: RedPitaya
8.1 Testna struktura
Preizkusi delovanje komponente za skaliranje signala iz prejšnje vaje s testno strukturo: TestProc.vhd. V testni strukturi je koda, ki vpiše preko vodila v register varednost 5, po 1us pa vrednost 9, na vhod adc_i pa pripelje vzorce sinusnega signala amplitude 1540. Amplituda je izbrana tako, da ostanejo vrednosti po množenju s 5 znotraj območja (-8192, 8191), po množenju z 9 pa so nekatere izven območja in na simulaciji lahko opazujemo učinek množenja z nasičenjem. Simulator nastavimo tako, da prikatuje adc_i in adc_o kot analogne signale:
8.2 Izdelava in prevajanje projekta
Naloži in odpakiraj datoteke projekta RedPitayaDIV (RedPitayaDIV.zip). Projekt je sestavljen iz izvornih datotek sistema v jeziku Verilog, ki se nahajajo v mapi rtl.
- V mapo rtl kopiraj VHDL datoteko iz prejšnje vaje in jo dodaj v projekt (Add Sources). Preglej opis v red_pitaya_top.v, kjer je datoteka vključena in po potrebi spremeni ime entitete ali imena priključkov.
- V TCL konzoli se premakni v trenutno mapo:, npr: cd d:/designs/RedPitayaDIV/
nato pa izvedi skripto, ki naredi blokovni diagram in sistemski wrapper: source naredi_sistem.tcl
- Preveri sintakso in če ni napak, prevedi sistem s skripto: source prevedi.tcl, nato pa še skripto za oblikovanje izhodne datoteke:
write_cfgmem -format bin -loadbit "up 0x0 out/red_pitaya.bit" -file out/rp.bin -size 128 -force -interface SMAPx32 -disablebitswap
Izhodna datoteka rp.bin se nahaja v mapi out. Na razvojno ploščo RedPitaya jo prenesi preko klienta za varno kopiranje (npr. pscp) ali pa z vpisom datoteke na kartico SD (v mapo redpitaya). Ustrezne programe za okolje Windows dobimo na: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
- Če smo kopirali datoteko na kartico v mapo redpitaya, jo v linuxu vidimo v mapi: /opt/redpitaya.
Programiranje izvedemo z ukazom: cat rp.bin > /dev/xdevcfg
Registra nastavljamo s programom monitor, ki mu podamo naslov in vrednost registra, npr: /opt/redpitaya/bin/monitor 0x40600000 0x05
- Prenos datoteke iz računalnika na RedPitayo, ki je npr. na naslovu: 192.168.1.100 izvedemo takole: pscp rp.bin root@192.168.1.100:/tmp