Software Defined Radio Testbed Team may11-18 Members: Alex Dolan, Mohammad Khan, Ahmet Unsal Adviser: Dr. Aditya Ramamoorthy Presentation Overview Background Information Requirements Deliverables System Design Implementation Testing & Analysis/ Error Calculations Image File Transfer Conclusion Background Information Problem • MATLAB Simulink is a relatively new platform for Software Defined Radio. • Very little work has been done to build a communication system of SDR using this platform. Solution • Build a Digital Communication System using MATLAB Simulink and USRP2. • Implement the Physical Layer in MATLAB Simulink environment. • Utilize the Universal Software Radio Peripheral-2 (USRP2) to send and receive the physical packet over the air. • Test the communication System using data packets. Functional Requirements Use of Universal Software Radio Peripheral 2 (USRP2) & MATLAB Simulink Non Coherent schemes like FSK, DBPSK modulation schemes must be implemented Build point to point digital communication system Maximum bandwidth utilization Transmission rate of 100-125 kbits/sec Test limitations of MATLAB & Simulink as a platform for SDR System must be reusable for academic purposes and further research Resource Requirements • USRP2 Daughter boards (RFX2400, RFX400 etc.) (80 MHz-2.9 GHz) Connection Cables (Ethernet cable) Data transmission and reception A/D and D/A conversion Up Conversion and Down Conversion • Computers MATLAB/ Simulink Data generation, digital modulation, demodulation, filtering, error control, synchronization etc. to make data usable. Very High speed computers needed to process data (e.g. Intel i7) Windows Operating System Deliverables • Functional Digital Communication System Using USRP2 and MATLAB / Simulink Simulink will be used to generate and process signals on transmitter side. USRP2s on both sides will transmit and receive signals Simulink on the receiver side will process received signals Data packets should be transferrable using the system • Complete documentation Reports (Weekly + Final) Commented Models & Code Build instructions Repository Access Schedule System Design Process Build & test models in Simulink environment Simulate with/without white Gaussian noise Use simulation results to create models for over the air transmission Test models and document results System Decomposition • CPU1 generates data from MATLAB & passes to USRP2 • USRP2 on the transmitter side transmits the data over the air • USRP2 on the receiver side receives the data & passes to MATLAB on CPU2 • MATLAB receives the data from USRP2 & analyzes it to make it usable CPU1 / MATLAB USRP2 / Data TX USRP2 / Data RX CPU2 / MATLAB System Decomposition PHY RF Daughterboard (USRP2) Rx / Tx Testing & Logging • Physical layer: • MATLAB Simulink • FSK, DBPSK modulation / demodulation, signal processing • Synchronization and packetization • USRP-2 • Ethernet interface with 100 MSamples/s, A/D & D/A conversion • Testing and Logging: • Tools used to test the system • Tracks progress and success Implementation Built models of physical layers inside MATLAB environment Focused on two schemes: DBPSK (Differential Binary Phase Shift Keying) FSK (Frequency Shift Keying) Tested models with/without noise induced environment Next phase: Built over the air models using USRP2s MATLAB Simulation MATLAB models of DBPSK & FSK Simulated with and without noise Fig: A preliminary binary FSK model for MATLAB Over the Air Physical Layer Design FSK & DBPSK models, fit for over the air transmission Sampling time, center frequency becomes important Sampling time has to be consistent throughout the whole system Over the Air Physical Layer More signal processing needed to be added Timing recovery, filters, etc. There was no synchronization between USRP2s, so recovery of data had to be designed Testing & Analysis • Tested primarily in three phases. Single bit Transmission Reception Known Binary Sequence Transmission Reception Image File Transfer • Single Bit Transmission Continuously transmitting one bit over the air Looking at the scope on the receiver end to verify Testing & Analysis • Known Binary sequence transmission Encoded data to add headers and footers, creating a frame ready for transmission Receiver side, sent the data to MATLAB workspace for analysis Created a script file to analyze the workspace data using autocorrelation techniques Fig: FSK transmitter with known binary sequence Error Rate Calculation • Transmitted 128-bit sequence (including header, data, footer) & calculated bit errors • Exported data from Simulink model to Workspace and processed the data from there • The xcorr function was used to determine the location of frames, headers and footers • Plotted this function to observe trends Fig: Plot of xcorr function on received data Testing & Analysis • Tested both systems for continuous single bit & known sequence • FSK showed better performance • DBPSK had errors not suitable for data transmission • Proceeded to image file transfer for FSK Image File Transfer Transmitter Side • Image files needed to be encoded to packets for use on the system • Encoded the image files to become a binary matrix, utilizing a colormap that is known on both sides • A typical frame would include: Header CRC (Cycling Redundancy Check) bits Position indicating bits Payload data Footer • Once encoded, the image file is ready for transmission Image File Transfer Receiver Architecture • Received data is sent to workspace • Each frame is defined, and analyzed • CRC bits are used to check for accuracy If CRC check passes, the payload data of the frame is placed where the position indicating bits indicate If CRC check fails, the program moves on to the next frame • When all the frames pass CRC checks, and are assembled, image transfer is complete Image File Transfer • Started with small binary images • Finally worked with .gif format • Each pixel is composed of 8 bits, then converted to an integrer. • Successfully transferred small image Conclusion Lessons Learned How to manage our time requirements How to manage focus in a research based project. Gained experience working on an application of our area of study. Results Achieved Discovered capabilities and shortcomings of a point to point data communication system in Simulink. Application Image file transfer successful Potential for more applications Thank you for your patience. Questions?