09.07.2015 Views

Design and Realization of a Prototype Hardware Platform for ...

Design and Realization of a Prototype Hardware Platform for ...

Design and Realization of a Prototype Hardware Platform for ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The MegaWatch Wireless <strong>Plat<strong>for</strong>m</strong>Master's Thesis - Emanuel Corthay8 The S<strong>of</strong>twareRF_bus State machinewait1stop2(si=1)stop1(si=1)clearstart=1busy_out=0write_status=1readD0si=from_dataout_regshift_dataout_reg=1writeD0idleclock_en=0(si=1)en=1readD1readD2writeD1writeD2if start =0if start=1readD3writeD3enablebusy_out=1write_status=1en=0clock_en=0readD4readD5readD6writeD4writeD5writeD6readD7writeD7if rw=1(clock_en=1)writeshift_datain_reg=1init3wiresi=0startdefaults:si=1en=0clock_en=0to_datain_reg=soclearstart=0busy_out=1write_status_reg=0shift_addr_reg=0shift_dataout_Reg=0to_datain_reg=0writeshift_datain_reg=0sendaddr0sendaddr1sendaddr2sendaddr3sendaddr4if rw=0si=from_ctrl_reg[3](read or write)si=from_addr_regshift_addr_reg=1readwriteFigure 34 The 3-wire Finite State MachineIdle:Enable:Init3wire:Start:Readwrite:Sendaddress4 to 0:ReadD7 to D0:WriteD7 to D0:Stop:Wait to start a 3-wire transmissionSend the enable signal on the 3-wire busStart transmitting the clock signal on the busSend the start bitSend 1 to read <strong>and</strong> 0 to write on the 3-wire bus depending on the read/writebit in the control registerSequentially send the address stored in the address registerRead from the 3-wire into the data in registerWrite to the 3-wire the content <strong>of</strong> the data out registerSend the stop bits8.3 Other CoresOther cores can be implemented as well on the FPGA, as long as there is enough space on it to fitall <strong>of</strong> them, <strong>and</strong> as long as the PINs that each <strong>of</strong> them access are not the same.60 / 83

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!