Fasmodulering med en FPGA

Det finns två radiomoduleringsscheman som alla borde veta. Amplitudmodulering ändrar amplituden – eller “volymen”, om du vill – av en bärarfrekvens och vänder all radio till kanaler som ägs och drivs av en kyrka. Frekvensmodulering ändrar tonhöjden av en bärfrekvens och körs helt med klar kanal. Amatörradiooperatörer är bekanta med dussintals andra moduleringsscheman, men det är knappast någon som berör. Fasmodulering är konstig och praktiskt taget oerhört, men det innebär inte att du inte kan exekvera den på en FPGA. [NCKM] sänder ljud med hjälp av fasmodulering på en FPGA (Ryska, här är Google Transatrix).

Denna maskinvara är bara en Altera Max10-kort, med en enda ingång som används för seriella data för ljudet som ska överföras och två utgångar, var och en anslutna till några bitar av tråd för en kvartvågantenn. Nej, det finns inget utgångsfilter eller något annat förutom några bitar av tråd. Det är ett experiment, Chillax.

Verilog för detta projekt får en ljudsignal som seriell data i Mono, 22050 bps, 8-bitars unsigned prover. Dessa prover matas in i en dynamisk PLL med fasskift i FPGA. Att skifta faserna ändrar också frekvensen, så [NCKM] kan ta emot den här ljudsignalen med FM-sändaren på sin telefon.

Är den här fasmoduleringen om den mottas av en FM-radio? Eh, kanske. PM och FM är nära besläktade, men säkert särskiljbara som moduleringsscheman i sig själv. Du kan få [Nckm] s kod över på gitsen, eller kolla in videodemo nedan.