Frequency-Shift Keying Demodulation and Manchester-Bit Decoding Using a Digital Radio and Digital Signal Processing Techniques

Similar documents
CDMA TECHNOLOGY. Brief Working of CDMA

Objectives. Lecture 4. How do computers communicate? How do computers communicate? Local asynchronous communication. How do computers communicate?

AN Application Note: FCC Regulations for ISM Band Devices: MHz. FCC Regulations for ISM Band Devices: MHz

2.0 System Description

Implementation of Digital Signal Processing: Some Background on GFSK Modulation

The front end of the receiver performs the frequency translation, channel selection and amplification of the signal.

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP

Digital Modulation. David Tipper. Department of Information Science and Telecommunications University of Pittsburgh. Typical Communication System

'Possibilities and Limitations in Software Defined Radio Design.

FM DEMODULATION USING A DIGITAL RADIO AND DIGITAL SIGNAL PROCESSING

How To Encode Data From A Signal To A Signal (Wired) To A Bitcode (Wired Or Coaxial)

RF Measurements Using a Modular Digitizer

Manchester Encoder-Decoder for Xilinx CPLDs

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the

PCM Encoding and Decoding:

1 Multi-channel frequency division multiplex frequency modulation (FDM-FM) emissions

Lecture 3: Signaling and Clock Recovery. CSE 123: Computer Networks Stefan Savage

2011, The McGraw-Hill Companies, Inc. Chapter 3

Radio Transmission Performance of EPCglobal Gen-2 RFID System

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN.

Vector Signal Analyzer FSQ-K70

Improved user experiences are possible with enhanced FM radio data system (RDS) reception

Software Defined Radio

THE BASICS OF PLL FREQUENCY SYNTHESIS

Introduction to FM-Stereo-RDS Modulation

Interfacing Analog to Digital Data Converters

Special Topics in Security and Privacy of Medical Information. Reminders. Medical device security. Sujata Garera

Non-Data Aided Carrier Offset Compensation for SDR Implementation

AM Receiver. Prelab. baseband

Implementing Digital Wireless Systems. And an FCC update

DT3: RF On/Off Remote Control Technology. Rodney Singleton Joe Larsen Luis Garcia Rafael Ocampo Mike Moulton Eric Hatch

Lab 5 Getting started with analog-digital conversion

Technical Specifications for KD5HIO Software

QAM Demodulation. Performance Conclusion. o o o o o. (Nyquist shaping, Clock & Carrier Recovery, AGC, Adaptive Equaliser) o o. Wireless Communications

MODULATION Systems (part 1)

Communication Systems

The Phase Modulator In NBFM Voice Communication Systems

A WEB BASED TRAINING MODULE FOR TEACHING DIGITAL COMMUNICATIONS

Counters and Decoders

Appendix D Digital Modulation and GMSK

Implementing an In-Service, Non- Intrusive Measurement Device in Telecommunication Networks Using the TMS320C31

RECOMMENDATION ITU-R F (Question ITU-R 157/9) b) that systems using this mode of propagation are already in service for burst data transmission,

EPL 657 Wireless Networks

Lezione 6 Communications Blockset

GSM/EDGE Output RF Spectrum on the V93000 Joe Kelly and Max Seminario, Verigy

Design Note DN002. Practical Sensitivity Testing By Morten Engjom. Keywords. 1 Introduction. Receiver Testing Sensitivity

DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION

Demonstration of a Software Defined Radio Platform for dynamic spectrum allocation.

Introduction to Receivers

Chap#5 (Data communication)

Whitepaper 4 Level FSK/FDMA 6.25 khz Technology

T1 Networking Made Easy

USB 3.0 CDR Model White Paper Revision 0.5

BROADBAND AND HIGH SPEED NETWORKS

Satellite Telemetry, Tracking and Control Subsystems

SDR Architecture. Introduction. Figure 1.1 SDR Forum High Level Functional Model. Contributed by Lee Pucker, Spectrum Signal Processing

Bluetooth Audio Data Transfer between Bluetooth chipset (PMB6752&PMB6625) and TriCore Host TC1920

Physical Layer, Part 2 Digital Transmissions and Multiplexing

Web Streamed SDR s in Service at GB2RHQ Hack Green Bunker

DigiPoints Volume 1. Student Workbook. Module 4 Bandwidth Management

Modification Details.

TUTORIAL FOR CHAPTER 8

VMR6512 Hi-Fi Audio FM Transmitter Module

What s The Difference Between Bit Rate And Baud Rate?

Experiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa

INTERNATIONAL TELECOMMUNICATION UNION

Achieving New Levels of Channel Density in Downstream Cable Transmitter Systems: RF DACs Deliver Smaller Size and Lower Power Consumption

Chapter 6: From Digital-to-Analog and Back Again

Data Communications & Networks. Session 3 Main Theme Data Encoding and Transmission. Dr. Jean-Claude Franchitti

Sampling Theorem Notes. Recall: That a time sampled signal is like taking a snap shot or picture of signal periodically.

INTRODUCTION TO COMMUNICATION SYSTEMS AND TRANSMISSION MEDIA

Digital Baseband Modulation

Elettronica dei Sistemi Digitali Costantino Giaconia SERIAL I/O COMMON PROTOCOLS

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

Information Paper. FDMA and TDMA Narrowband Digital Systems

Application Note 83 Fundamentals of RS 232 Serial Communications

Time and Frequency Domain Equalization

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC Microprocessor & Microcontroller Year/Sem : II/IV

Serial Communications

A new radio system for the German coast

Solution. (Chapters ) Dr. Hasan Qunoo. The Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department

INTERNATIONAL TELECOMMUNICATION UNION

Switch Fabric Implementation Using Shared Memory

Multiplexing on Wireline Telephone Systems

Design and Verification of Nine port Network Router

Serial Communications

Impedance Matching and Matching Networks. Valentin Todorow, December, 2009

Base Station Adjacent Time Slot Rejection Measurement with CMD and SME

Microprocessor & Assembly Language

Example/ an analog signal f ( t) ) is sample by f s = 5000 Hz draw the sampling signal spectrum. Calculate min. sampling frequency.

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs)

SIGNAL PROCESSING & SIMULATION NEWSLETTER

From baseband to bitstream and back again: What security researchers really want to do with SDR. Andy Davis, Research Director NCC Group

Computers Are Your Future Prentice-Hall, Inc.

From Concept to Production in Secure Voice Communications

FAST TUTORIALS FOR TIME-CHALLENGED TECHNICIANS

Timing Errors and Jitter

Transcription:

Frequency-Shift Keying Demodulation and Manchester-Bit Decoding Using a Digital Radio and Digital Signal Processing Techniques Author: James M. Shima INTRODUCTION This paper discusses a method of frequency-shift keying (FSK) demodulation and Manchester-bit decoding using a digital signal processing (DSP) approach. The demodulator is implemented on a single-channel high-speed digital radio board. The board architecture contains a high-speed A/D converter, a digital receiver chip, a host DSP processing chip, and a back-end D/A converter [2]. The demodulator software is booted off an on-board EPROM and run on the DSP chip [3]. The algorithm accepts complex digital baseband data available from the front-end digital receiver chip [2]. The target FSK modulation is assumed to be in the RF range (VHF or UHF signals). A block diagram of the single-channel digital radio is shown in Figure 1 [2]. Single channel digital radio block diagram high-speed A/D converter Gray GC1011 digital receiver chip Host DSP DAC RF input Figure 1 Analog output BACKGROUND FSK Frequency-shift keying is a type of digital binary communication technique. It is identical to FM modulation using a digital binary signal as the message m(t) [1]. Thus, a binary 1 represents one frequency, and a binary 0 represents another frequency. The FSK signal deviates from the carrier frequency depending on the binary message m(t). For example,

assume m(t) can take on the values 1 or -1. When m(t) = 1, the FSK signal would deviate on the high side of the carrier frequency. When m(t) = -1, the FSK signal would deviate to the low side of the carrier frequency. The frequency deviation of the FSK signal is given by the FM equation: F V D p f = 2π In this example, V p = 1 and -1. So, the deviation of the FSK signal is ± D f about the 2π carrier. The modulation parameter D f is chosen to give the desired amount of deviation in the FSK modulated signal. Manchester bit format In Manchester binary signaling, each binary digit is represented by a positive half-bit period and a negative half-bit period [1]. The bit period is split in two, therefore guaranteeing a zero crossing during each bit time. For example, a binary 1 is represented by a positive half-bit interval followed by a negative half-bit interval. Likewise, a binary 0 is represented by a negative half-bit interval followed by a positive half-bit interval [1]. An example of a Manchester encoded bit stream of 110001 is demonstrated in Figure 2. Manchester bit format 1 1 0 0 0 1 A 0 -A Figure 2 bit interval By examining the Manchester code, it satisfies the self-synchronization property of line codes [1]. The advantage of Manchester encoding is that a zero crossing always occurs in a bit interval, so bit synchronizers are able to extract the data without timing errors. For example, in standard RS-232 digital communication protocols, a long stream of 1's or 0's 2

might cause bit errors because the receiver clock may migrate due to sampling the binary signal at a non-integer rate. With Manchester coding, a long stream of 1's or 0's always guarantees two zero crossings (one at the half-bit interval and one at the start of the next bit interval). Alternating 1's and 0's guarantee one zero crossing (at the half-bit interval), thus allowing the receiver clock to resynchronize on this edge to correctly extract the bits. A Manchester bit synchronizer utilizes these facts to correctly synchronize to the guaranteed half-interval bit edge and decode the original information bits. The disadvantage of Manchester coding is that the bandwidth of the signal doubles since one piece of information (each original bit) is represented by two levels in the communication channel. ALGORITHM DEVELOPMENT FSK demodulation Using the background information on FSK and Manchester coding, a demodulator is developed to demodulate a FSK signal, with the binary message m(t) Manchester encoded before it is modulated onto the carrier. In other words, the binary message m(t) is Manchester encoded and then FM modulated onto a carrier frequency. The frequency deviation of the resulting FSK signal is assumed to be 10kHz. Thus, a negative Manchester pulse causes the FSK signal to deviate -10kHz from the carrier frequency. Likewise, a positive Manchester pulse causes the FSK signal to deviate +10kHz from the carrier frequency. The demodulator was developed using the complex data mode on the digital radio board [2]. This results in a complex quadrature down conversion of the sampled RF signal. Thus, the DSP retrieves real and imaginary data from the digital receiver chip. The DSP uses the complex data to demodulate the FSK signal. A polar discriminator was utilized to retrieve the phase difference between consecutive complex samples of the RF signal [2]. Recall, the polar discriminator multiplies the new sample by the conjugate of the old sample. The complex resultant vector gives the phase difference of the two samples through the relation tan -1 (Im / Re). Also, the sampling rate governs the maximum deviation a vector can rotate between samples. Note, the polar discriminator vector resides at the origin for zero phase difference (constant sinusoid, no phase modulation). When the FSK signal deviates from the carrier, the polar discriminator 3

vector will migrate to its corresponding quadrant. For example, if the incoming FSK signal is 4x oversampled, we know the polar discriminator vector is constrained to rotate in quadrants I and IV [2]. Thus, if the polar discriminator vector is in quadrant I, the FSK signal deviates to the high side of the carrier. This corresponds to a positive Manchester pulse. Likewise, if the polar discriminator vector is in quadrant IV, the FSK signal deviates to the low side of the carrier. This corresponds to a negative Manchester pulse. Thus, by checking the imaginary part of the polar discriminator result we can determine what quadrant the polar discriminator vector is in. This in turn determines whether we have a positive or negative Manchester pulse. Note, using the above concept we can determine the zero crossings of the Manchester bit stream by observing the polar discriminator results. If the polar discriminator vector changes polarity (i.e., it migrates from quadrant I to quadrant IV), we know a zero crossing occurs. This is because the FSK signal switches frequencies when the Manchester code changes polarity. The polar discriminator detects this switch by passing through the origin (of the complex plane) and rotating quadrants. Therefore, this quadrant switch by the polar discriminator vector corresponds to a zero crossing in the Manchester code. Figure 3 demonstrates this concept of FSK demodulation using the polar discriminator resultant vector. Manchester encoded "1" Use of polar discriminator to demodulate FSK Polar discriminator result t Im(z) f1 freq vector (positive Manchester pulse) FSK signal t Re(z) origin f2 freq vector (negative Manchester pulse) f1 f2 Figure 3 4

Again, we are assuming a 4x oversampling rate. In this figure, a binary 1 is Manchester encoded and then FSK modulated. Figure 3 shows how the quadrants relate to the FSK frequencies. These FSK frequencies are directly related to the Manchester code since they modulate the FSK signal. In other words, if the polar discriminator detects frequency f1, we have a Manchester positive pulse. If the polar discriminator detects frequency f2, we have a Manchester negative pulse. The Manchester encoded "1" causes the polar discriminator to rotate from quadrant I to IV when the zero crossing occurs. This concept essentially demodulates the FSK signal. Using the polar discriminator, we can determine the zero crossings and the polarity of the Manchester pulses. Notice, if a simple binary scheme was used in the FSK modulation, then the message bits are already recovered. Effectively, a binary 1 would be assigned when the polar discriminator vector resided in quadrant I, and a binary 0 would be assigned when the polar discriminator resided in quadrant IV. This type of FSK signal is called binary FSK [1]. Since this FSK signal is modulated with a Manchester bit code, the Manchester bit stream must now be decoded so the original binary message can be extracted. Bit rate and sampling rate considerations In this paper, the bit rate of the original binary message is assumed to be 10kbits/sec., or a 10kHz bit rate. Note, the bit rate is the same as the frequency deviation of the FSK signal. This corresponds to a 20kHz Manchester bit rate, since the Manchester code doubles the bandwidth of the original message. Thus, we must sample the FSK signal so there are a sufficient number of samples in between zero crossings of the Manchester bits. The sampling rate is chosen to be 5x the 20kHz Manchester bandwidth, or 100kHz. Recall, since we get complex data from the digital receiver chip, the sampling rate is actually 50kHz [2]. This sampling rate guarantees 5 samples for each Manchester bit. This also guarantees that the polar discriminator vectors lie in quadrants I and IV [2]. Manchester bit synchronizer and decoder The bit synchronizer is responsible for detecting the beginning of a Manchester bit and keeping synchronization so accurate retrieval of the original message is possible. The Manchester decoder simply extracts the binary signal from the Manchester code. In this case, the Manchester decoder is simple. By looking at Figure 2, notice the original binary 5

message is stored in the first half-bit interval of the Manchester code. The first message bit shown is a binary 1. This encodes to a Manchester bit alternating positive to negative. Thus, by assigning a binary 1 to the positive pulses and a binary 0 to the negative pulses, the binary message is extracted by taking the first half-bit interval of the Manchester code. So, if the first pulse of the Manchester bit is positive, the original binary value is a 1. Likewise, if the first pulse of the Manchester bit is negative, the original binary value is a 0. Thus, this scheme effectively decodes, or "breaks out" the binary message from the Manchester encoded bit stream. The bit synchronizer delineates the beginning of the Manchester bits so the decoder is located at the correct bit interval when extracting the binary message. Once the synchronizer detects the beginning of a Manchester bit, it continually resynchronizes on the guaranteed zero crossing found in each Manchester bit. One-shot strobe for initial bit synchronization. The one-shot strobe is the first step of the bit synchronizer. The one-shot strobe waits until the beginning of a Manchester bit is detected. Recall, the polar discriminator result is used to detect zero crossings and to assign 1's and 0's to the Manchester pulses. The start of the Manchester bit is detected by waiting for an alternating Manchester bit polarity (i.e., a Manchester 1 and then a Manchester 0, or vice versa). Since the chosen sampling rate gives 5 samples for each Manchester bit, we can count how many samples pass after a zero crossing is detected. Recall Figure 2. The only time 5 samples pass without a zero crossing occurring is when alternating polarity Manchester bits are transmitted. When this event happens, a start of a bit has been detected. This event triggers the one-shot strobe and passes control to the bit decoder. Zero crossing detection and bit decoder. The next step is for the bit synchronizer to wait for the guaranteed zero crossing at the half-bit interval of the Manchester bit. When this event happens, the synchronizer knows it is in the middle of the bit. For our case, we are guaranteed 5 samples per Manchester bit, or 2.5 samples for each half-bit interval. When the synchronizer is at the middle of the Manchester bit, it waits 2 samples and then takes the 3rd sample. This sample is guaranteed to be in the 1st half-bit interval of the next Manchester bit. The Manchester decoder takes this value as the binary message bit. This procedure breaks out a single bit from the Manchester code. The synchronizer repeats the above procedure to decode successive message bits. In other words, the 6

synchronizer waits for the next zero crossing in the middle of the current Manchester bit and takes the next 3rd sample as the binary message bit. This process of resynchronizing and extracting bits is done in a looping structure. Figure 4 demonstrates this procedure. Demonstration of Manchester decoding using bit synchronizer and decoder sample points (assigned 1's and 0's) 3) take 3rd sample as bit value, goto step 2) 1 0 0 1 1) start of Manchester bit detected 2) wait for zero crossing (one-shot strobe triggered) Figure 4 The steps listed in Figure 4 sum up the Manchester decoding process. Once the message bits are decoded, they are stored for post-processing or processed in real time. For clarity, the complete FSK/Manchester demodulator algorithm is summarized below: Initialization 1. Acquire 2 complex samples, calculate phase differences using polar discriminator. 2. If polar discriminator result is in quadrant I, assign bit value = 1. If polar discriminator result is in quadrant IV, assign bit value = 0. Algorithm execution 3. Acquire next sample and perform step 2 to obtain a new bit value. 7

4. Check previous bit value in order to detect a zero crossing. If successive bit values are opposite polarity, a zero crossing is detected, goto 5. If no zero crossing detected, goto 3. 5. Begin counting samples. If 5 samples pass without a zero crossing occurring, goto 6. Otherwise, goto 3. 6. Wait for the half-bit interval zero crossing by examining bit values using step 4. 7. When zero crossing detected, wait for 2 samples to pass and take the 3rd sample. Assign it a bit value using step 2 and store it as the binary message bit. This is the decoded message bit. Goto 6 to decode successive message bits. ALGORITHM IMPLEMENTATION This algorithm was implemented in ADSP-2101 DSP assembly language [3] and stored in the digital radio's onboard EPROM [2]. The demodulator software ran on powerup. The software was responsible for tuning up the Gray chip to the target FSK tune frequency and invoking the FSK demodulator [2]. The Manchester bits were decoded when the bit synchronizer's one-shot strobe was triggered. Output bits were able to be viewed through a serial port link to a PC. The demodulator software was also responsible for sending the decoded message bits out the digital radio's UART so they could be received by the PC. CONCLUSION This paper discussed a method of FSK demodulation and Manchester decoding using DSP techniques and a digital radio. The demodulator was implemented in software, which allows the digital radio to perform custom tasks by simply changing DSP code. This one demodulator demonstrates the flexibility of the digital radio concept. Finally, the demodulator software was realized on a single-channel digital radio board. The original message bits were viewed on a PC that was serially linked to the digital radio. This type of demodulator proves very worthy as many wireless binary communication systems use the FSK modulation along with Manchester bit encoding for transmission. Thus, this custom demodulator demonstrates one of many tasks the digital radio can perform via software. This exemplifies how the digital radio dwarfs the restricted abilities of conventional analog receivers to date. 8