Major Report
Major Report
Submitted in partial fulfillment of the requirements for the award of the degree
of
BACHELOR OF TECHNOLOGY
in
by
Guided by
Prakhar Priyadarshi
Asst. Professor
1
CANDIDATE’S DECLARATION
It is hereby certified that the work which is being presented in the B. Tech Major Project Report
entitled "Implementation of Digital Up Convertor for Software defined family radio
service"in partial fulfilment of the requirements for the award of the degree of Bachelor of
Technology and submitted in the Department of Electronics and Communication Engineering of
Bharati VidyaPeeth College of Engineering, New Delhi (Affiliated to Guru Gobind Singh
Indraprastha University, Delhi) is an authentic record of our own work carried out during a
period from January 2017 to May 2017 under the guidance of Prakhar Priyadarshi, Asst.
Professor, Dept. of Electronics and Communication Engineering, Bharati VidyaPeeth
College of Engineering, New Delhi.
This is to certify that the above statement made by the candidate is correct to the best of my
knowledge. They are permitted to appear in the External Major Project Examination.
(Prakhar Priyadarshi)
Asst. Professor,
Dept. of ECE,
BVCOE, New Delhi
2
ABSTRACT
As information tools have move off the desktop and into people pockets, the rate of wireless communication is
accelerating. We need wireless components that can be reconfigured to support a range of standards. High-
speed instruction set processors are increasing in speed and decreasing in feature size and improving low
power operations. As new radio standards are deployed with substantially supplanting existing ones the need
for multimode multiband handsets and infrastructure increases. Our project describes how emerging FPGA
technology’s unique combination of size and power efficiency plus field programmability offers a transition of
FPGA’s from ASIC prototyping to embedded products. Software defined transmitter suggests an enlarged role
for FPGA’s in pragmatic path towards the productization of software radio technology. Previously, we created
a Software-Defined Radio (SDR) implementation of FRS transmitter. The SDR approach requires the usage of
Digital Up Converter (DUC). The function of the DUC is to translate one or more channels of data from
baseband to a passband signal comprising modulated carriers at a set of one or more specified radio or
intermediate frequencies (RF or IF). It is an essential component of SDR applications. Hence, we implemented
a DUC with specifications that suited FRS systems. We logically segregated the DUC implementation into
clearly defined stages. We completed the design and modeling based on Simulink with appropriate
specifications and signals. The overall approach that we adopted was the MBD (Model Based Design).
Accordingly, we created blocks that serve the advantage that the blocks can be easily interchanged, interfaced
and upgraded. The functional simulation output of DUC showed a successful sample rate conversion by a
factor of 40 as expected by the specification. Using this DUC block of the MBD design, we successfully
obtained the power spectrum of FRS. After the Simulink DUC implementation, we have now designed the
same using system generator Xilinx block set and generated a HDL code for its application on FPGA.
ACKNOWLEDGEMENT
We express our deep gratitude to Prakhar Priyadarshi, Asst. Professor, Dept. of Electronics
and Communication Engineering, Bharati VidyaPeeth College of Engineering, New Delhi for
his valuable guidance and suggestion throughout my project work.
We would like to extend our most sincere thanks to Dr. Anuradha Basu, Head of Department,
Dept. of Electronics and Communication Engineering for her time to time and invaluable
suggestions to complete our project work.
We are also thankful to Dr. Dharmender Saini, Principal, Bharati Vidyapeeth College of
Engineering, New Delhi for providing us with the facilities to carry out our project work.
CANDIDATE’S 1
DECLARATION
ABSTRACT 2
ACKNOWLEDGEMENT 3
TABLE OF CONTENTS 4
LIST OF FIGURES 7
LIST OF TABLES 8
LIST OF 9
ABBREVIATIONS
CHAPTER 1: INTRODUCTION 10
1.0 Introduction 10
1.0.0 Introduction to FRS 10
1.0.1 Introduction to SDR 11
1.0.2 Introduction to DUC 11
1.0.3 Introduction to Block- 11
based Design
1.1 Motivation 12
1.2 Objective 13
1.3 Summary 14
CHAPTER 2: DESCRIPTION 15
CHAPTER 3 IMPLEMENTATION 29
AND OUTPUT
4.1 45
LIST OF FIGURES
1.0 INTRODUCTION
The Family Radio Service (FRS) is an improved walkie-talkie radio system authorized in the
United States since 1996. This personal radio service uses channelized frequencies around 462 and
467 MHz in the ultra high frequency (UHF) band. It does not suffer the interference effects found on
citizens' band (CB) at 27 MHz, or the 49 MHz band also used by cordless telephones, toys, and baby
monitors. FRS uses frequency modulation (FM) instead of amplitude modulation (AM). Since the
UHF band has different radio propagation characteristics, short-range use of FRS may be more
predictable than the more powerful license-free radios operating in the HF CB band.
Worldwide, a number of similar personal radio services exist; these share the characteristics
of low power, operation in the UHF (or upper VHF) band using FM, and simplified or no end-user
licenses. Exact frequency allocations differ, so equipment legal to operate in one country may cause
unacceptable interference in another.
SDR technology is defined as radios that provide software control of a variety of modulation
techniques, wide-band or narrow-band operation, communications security functions (such as
hopping), and waveform requirements of current & evolving standards over a broad frequency range.
In short, software modules running on a generic hardware platform of DSPs ( Digital Signal
processor ) and general purpose microprocessors can implement radio functions such as
modulation/demodulation, signal generation, coding and link-layer protocols. This helps in building
reconfigurable software radio systems where dynamic selection of parameters is possible. The
communication flow of today is very high. The evolution and growth of telecommunication systems
and services run in parallel to Integrated Circuit (IC) design techniques evolution. New fabrication
process allows a new functionalities and higher performance. Many applications are operating at high
speed and a fixed connection is often preferred.
Figure 1.1: SDR Concept
The design of the transmission side of a digital communication modem based on the use of
specialized Digital Up Converters (DUC). A DUC is a key component of digital front-end (DFE)
circuits for RF systems in communications, sensing, and imaging. The function of the DUC is to
translate one or more channels of data from baseband to a passband signal comprising modulated
carriers at a set of one or more specified radio or intermediate frequencies (RF or IF). It achieves this
by performing: interpolation to increase the sample rate, filtering to provide spectral shaping and
rejection of interpolation images, and mixing to shift the signal spectrum to the desired carrier
frequencies. The sample rate at the input to the DUC is relatively low; for example, the symbol rate of
a digital communications system, while the output is a much higher rate, generally the input sample
rate to a Digital-to-Analog Converter (DAC), which converts the digital samples to an analog
waveform for further analog processing and frequency conversion.
1.0.3 Introduction to Block-Based Design
In the MBD, a system model is at the center of the development process, from requirements
development, through design, implementation, and testing. The development flow by MBD is shown
in Figure 1.2. Through the establishment of floating point model, the fixed-point model and the
system-level model for presenting a complete system design requirements, all aspects of the design
can be tested and verified according to the model of the system level and the demand.
1.2 MOTIVATION
Wayne H. Wolf (1994), who is a senior Member of IEEE, surveyed the embedded computer systems
that use software running on programmable computers to implement system functions. He asserted that with
the rapid and continuous development of embedded systems, there is an increasing demand for real-time or
comparable to real-time electronic products. However, these kinds of systems are complicated and drastically
increase the complexity and difficulty of embedded systems development and design process.
In his paper titled, Hardware-Software Co-Design of Embedded Systems [1], Wolf infers that the traditional
development flow is not conducive to the development of efficient, high-quality products for the rapidly
proliferating technological systems. Different departments are responsible for different processes and the
intercommunication between departments can easily lead to ambiguity - leading to catastrophic errors. Errors
that are transferred can influence the progress of the development of the entire project/system. Also, in the
absence of abstraction, If an error occurs at the beginning of the design, the whole design cycle and cost bring
great negative effects that could lead to a cascaded rollback of the entire process. Such a condition is only
aggravated if the error goes undetected up till the later stages.
Because of the existing problems and shortcomings, an approach known as Modular Development is
becoming increasingly popular amongst system designs and developers. Modular development is a design
technique that emphasizes separating the functionality of a system into independent, interchangeable modules
or blocks, such that each contains everything necessary to execute only one aspect of the desired functionality.
This approach has been advocated by a number of scholars including Oliver Schoett (1986) of the University
of Edinburgh in his paper titled “Data Abstraction and the Correctness of Modular Programming“[2].
With modular development, the functionality is separated such that modules perform logically discrete
functions, interacting through well-defined interfaces. Instead of creating a monolithic system (where the
smallest component is the whole), several smaller modules are written separately so that, when composed
together, they construct the system. This makes modular designed systems, if built correctly, far more reusable
than a traditional monolithic design, since these modules may then be reused without change in other projects.
This also facilitates the "breaking down" of projects into several smaller projects. Dr. A. Govardhan and Nabil
Mohammed Ali Munassar (2011) add that theoretically, a modularized project is more easily assembled by
large teams, since no team members are creating the whole system, or even need to know about the system as a
whole[3]. They can focus just on the assigned smaller task.
Hence, through the project, we have understood and applied the concepts of Modular Development.
We have used a block-based system to implement the Digital-Up Converter (DUC) in a process that can be
broken down into separate stages to corroborate the modularity of the development process. This is in
accordance of the study conducted by Nie Yang et al (2011) in which they worked on Simulink to implement a
model-based design of a Software-Defined Radio[4]. Following this, a DUC block is obtained that can be used
as an interface for a number of Software-Defined Radio applications in accordance with the principles of
Modular Development. The entire design and implementation is based on a block-based design so that the
individual blocks can be interchangeable for multiple purposes and can be easily upgraded and interfaced with
other blocks/systems.
1.3 OBJECTIVE
1.4 SUMMARY
The first chapter of the report provides a brief introduction to FSR systems, SDR, DUC and MBD. It
also enlists the literature survey, motivation and bulleted objectives of the project. The second chapter goes on
to provide a detailed description of SDR and DUC. It provides a detailed explanation of the components/blocks
of DUC and its critical design parameters with a description of the various filters used in the conversion
process. Following this, it gives a detailed description of the technical specifications of FRS. Finally, chapter
two ends with an explanation of the application of DUC in a FRS system. Chapter three provides the
description of the implementation of the project on Simulink. It provides the Simulink models for DUC and
FSR and a description of the blocks used to implement it. It also enlists the input specifications used for each
model and the waveform of each stage of implementation. Following this, the output waveform and the result
is explained. Chapter four contains the conclusion of the project. Lastly, the references are mentioned.
CHAPTER 2: DESCRIPTION
2.0.0 Overview
A basic SDR system may consist of a personal computer equipped with a sound card, other
analog-to-digital-convertors, preceded by some form of RF front end. Significant amounts of signal
processing are handed over to the general-purpose processor, rather than being done in special-
purpose hardware (electronic devices). Such a design produces a radio which can receive and transmit
widely different radio protocols (sometimes referred to as waveforms) based solely on the software
used.
Software radios have significant utility for the military and cell phone services, both of which must
serve a wide variety of changing radio protocols in real time.
In the long term, software-defined radios are expected by proponents like the SDRForum (now The
Wireless Innovative) to become the dominant technology in radio communications. SDRs, along with
software defined antennas are the enablers of the cognitive radios.
2.0.1 Applications
A software-defined radio can be flexible enough to avoid the "limited spectrum"[5] assumptions
of designers of previous kinds of radios, in one or more ways including:
Spread spectrum and several transmitters to transmit in the same place on the same frequency
with very little interference, typically combined with one or more error detection and corrections
techniques to fix all the errors caused by that interference.
Software defined antennas adaptively "lock onto" a directional signal, so that receivers can better
reject interference from other directions, allowing it to detect fainter transmissions.
Cognitive techniques: each radio measures the spectrum in use and communicates that
information to other cooperating radios, so that transmitters can avoid mutual interference by
selecting unused frequencies. Alternatively, each radio connects to a geological database to obtain
information about the spectrum occupancy in its location and, flexibly, adjusts its operating
frequency and/or transmit power not to cause interference to other wireless services.
Dynamic transmitter power adjustment, based on information communicated from the receivers,
lowering transmit power to the minimum necessary, reducing the near far problem and reducing
interference to others, and extending battery life in portable equipment.
Wireless mesh networks that every added radio increases total capacity and reduces the power
required at any one node. Each node only transmits loudly enough for the message to hop to the
nearest node in that direction, reducing near far problem and reducing interference to others.
2.1 Description of DUC
2.1.0 Overview
The DUC receives two baseband signals like in-phase and Quadrature phase signals and
modulates these signals into a single real band-pass signal. The Quadrature demodulation is performed
by the multiplication of the in-phase and Quadrature signal with the digital local oscillator. The
addition of these two resulting signals gives a real band pass signal centered on the digital local
oscillator’s frequency with an amplitude and phase offset associated with the complex weight assigned
to that specific channel.
A generic architecture for a DUC is shown in Figure 2.1. A modulator (or other digital
channel signal source) feeds into a set of filters for pulse-shaping and interpolation, and the filter
output is then mixed with a vector of one or more carrier frequencies. Optionally, in advanced
systems, further filtering (interpolation), RF processing (for example, Crest Factor Reduction (CFR),
Digital Pre-Distortion (DPD), Modulation Correction, etc), and frequency[6] translation (to shift to a
passband center frequency) may be performed. Finally, the up-converted signal is converted to an
analog signal for further processing and up-conversion to the RF band.
0 1 2∗
1 Equation 1.1
= ∅
Equation 1.2
Equation 1.3
Where, Br and Bi are the in-phase and quadrature components of the baseband signal
(normally a filtered and up-sampled version of the modulator output for a DUC, or the ADC
sample inputs for a DDC).
Where there is sufficient over-sampling (that is, the clock frequency is an integer
multiple of the sample frequency), these operations can be folded onto the same hardware
resources. In the multi-carrier case, the sinusoidal vector and the baseband data vector can be
multiplied sequentially in element pairs in a TDM fashion, with each result being
accumulated until all carriers have been summed to produce the final combined carrier signal.
This multi-cycle operation can be generalized as a complex multiply-accumulate, or in vector
terminology, a complex vector dot product.
CIC filters use only delays and summation units and do not require multiplication
operations as in an FIR filter. The filters are constructed from Integrator and Comb filter
stages. A rate change is always involved in CIC filtering [8], and the filter response exhibits
linear phase.
CIC filters can efficiently perform either decimation or interpolation, with two
complementary structures being employed to implement these functions. Decimation requires
a cascade of a number of integrator units, followed by a down-sampling stage and finally a
cascade of the comb filter units. Conversely, interpolation cascades several comb filters with
an up-sampler and several integrators.
The frequency response of a CIC filter exhibits a sinc -like function. Nulls appear at
fixed intervals, with lobes of decreasing magnitude as the frequency increases. It is a general
rule-of-thumb that the passband should never be more than 25% of the span of the main lobe
of the CIC response; the main reason for this is the fact that the nulls in the frequency
response only have a finite width, and if a wide passband is used, then a detrimental level of
aliasing or imaging can occur. The frequency response of CIC filters is affected by several
parameters: the rate change, R, the number of stages, N, which is the same for both
integrators and combs, and the differential delay of the comb unit, M. Differential delay, M,
affects the location of nulls at any given rate change value and increases attenuation levels
generally at all lobes in the response. Varying the rate change value, R, adjusts the null
positions up or down accordingly without having much effect on the attenuation of each lobe.
Increasing the number of stages increases attenuation of the lobes without shifting null
positions; this is usually the main method used to increase attenuation to the desired level by
any design algorithm.
One important consideration in the use of CIC filters is the problem of “passband
droop.” In almost all systems, a flat passband in the magnitude frequency response is
desirable to prevent signal distortion. However, as described earlier, CIC filters exhibit a sinc-
like frequency response[9], which can decay appreciably even within the passband when
there are many stages or a high rate change. Therefore, it is necessary to cascade the CIC
filter with an FIR filter which compensates for this droop with an inverse-sinc frequency
response.
The total rate change through the DUC/DDC system is almost certainly the most important
parameter to be considered. Where the total rate change is low (e.g., less than 32), the interpolation or
decimation stages may be achieved effectively with a cascade of FIR filters; where the total rate
change is high, FIR filters would not be the most efficient choice and CIC filters should be considered
(in combination with FIR filters) as a more efficient alternative. This scenario is described in the
examples in this application note.
The clock rate of the circuit determines how many operations can be performed in a single
sample period, which in turn affects how much hardware folding can be achieved by each function.
This ratio alters as the signals proceed down the processing chain; at the highest sample rates, multiple
modules may be required to process the data samples.
Although it is often the case, the number of channels required is not necessarily directly
related to the same as the number of carriers. For instance, in MRI systems, the center frequencies are
the same for each channel; therefore, a single sinusoid can be used to mix with multiple channels of
sample data.
The passband width refers to the spread of possible frequencies to which the user may wish to
up-convert the modulated data signals. For instance, this might refer to the entire GSM transmission
band, or the spectral range of an MRI machine. In multi-carrier systems, this parameter determines the
minimum sample rate that can be used for mixing channel data, as the sample rate must be sufficient
to cover the frequency spread. The passband width also has a bearing on digital pre-distortion
algorithm implementations, which usually operate at a sample rate which is at least an integer multiple
(4x or 5x) above the passband width.
One important implication of this parameter for this application note relates to the bulk rate
change of the CIC filters which are used in the narrowband system examples. As stated above, mixing
must occur at a sample rate which is greater than the passband width; however, with CIC filters, the
input sample frequency may be too low while, due to the large rate change, the output sample rate
may be higher than required and, therefore, utilizes more resources than are strictly necessary for the
mixer implementation, due to a low number of clocks per sample period.
The modulation scheme can have an effect upon the input rate of the DUC and the output rate
of the DDC. Some modulators are over-sampled by nature of their implementation (see the GMSK
example, later) and this reduces the overall rate change of the DUC. Some demodulation schemes
require an over-sampled version of the data to provide[10] effective demodulation of the symbol or to
allow the possibility of timing recovery, which again reduces overall rate change.
Another issue with modulation schemes is the supported symbol rates. Where multiple
symbol rates are to be supported, a greater degree of flexibility is required in the processing chain (to
match up sample rates), and therefore the bulk rate changes of a CIC filter can be a disadvantage. FIR
filters are more suitable for such complex DUC applications.
2.2.6 Supported Standards
For wireless communications systems where multiple air standards are to be supported in the
same DUC system, the system needs greater flexibility to match up sample rates to a common rate for
combination. Fractional re-sampling may provide a suitable solution for rate matching in such
complex systems. This application note addresses only single air standard solutions.
After May 18, 2017, FRS radios are limited to 2 Watts on channel 1-7 and channels
15-22. Previously, FRS radios were limited to 500 milliwatts. Channels 1 to 7 are
shared with low-power interstitial channels of General Mobile Radio Services
(GMRS).
FRS radios frequently have provisions for using sub-audible tone squelch ( CTSS and
DTS) codes, filtering out unwanted chatter from other users on the same frequency.
Although these codes are sometimes called "privacy codes" or "private line codes"
(PL codes), they offer no protection from eavesdropping and are only intended to
help share busy channels
All equipment used on FRS must be type accepted according to FCC regulations.
Radios are not type-accepted for use in this service if they exceed limits on power
output, have a detachable antenna or for other reasons.
FRS radios must use only permanently attached antennas, such as walkie-talkies;
there are also table-top FRS "base station" radios that have whip antennas. This
limitation intentionally restricts the range of communications, allowing greatest use
of the available channels. The use of duplex radio repeaters and interconnects to the
telephone networks are prohibited under FRS rules, unlike other radio services.
Channel
Frequency (MHz) FRS EIRP Restriction GMRS EIRP Restriction
`
2.4 Application of DUC in FRS systems (Transmitter)
2.4.0 Introduction
DUC forms an integral component of the FRS implementation. For the purpose of the project,
DUC has been first implemented using Simulink blocks. Following this, the DUC functionality is used
to implement a FRS transmitter.
The DUC SIMULINK implementation consists of a FIR interpolator, a CIC compensator, and
a CIC interpolator. FIR interpolator can be bypassed depending on how DUC block parameters are
set.
The setup for Family Radio Service shown above can be modeled in Simulink as follows.
Library: Sources
Symbol:
Description: The Sine Wave block generates a multichannel real or complex sinusoidal
signal, with independent amplitude, frequency, and phase in each output channel. A real
sinusoidal signal is generated when the Output complexity parameter is set to Real, and is
defined by an expression of the type
Description: The Upsample block resamples each channel of the Mi-by-N input at a rate L
times higher than the input sample rate by inserting L-1 zeros between consecutive samples.
You specify the integer L in the Upsample factor parameter. The Sample offset parameter, D,
allows you to delay the output samples by an integer number of sample periods. Doing so
enables you to select any of the L possible output phases. The value you specify for the
Sample offset parameter must be in the range 0≤D<(L−1).
Description: The FIR Halfband Interpolator block performs interpolation of the input signal
by a factor of two. The block uses an FIR equiripple design to construct the halfband filters.
To filter the input, the block uses an efficient polyphase implementation. The implementation
takes advantage of the zero-valued coefficients of the FIR halfband filter, making one of the
polyphase branches a delay. You can also use the block to implement the synthesis portion of
a two-band filter bank to synthesize a signal from lowpass and highpasssubbands.
Description: The CIC Compensation Interpolator block uses an FIR polyphase interpolator as
the compensation filter. CIC compensation interpolators are multirate FIR filters that can be
cascaded with CIC interpolators to mitigate the drawbacks of the CIC filters.
CIC interpolation filters are used in areas that require high interpolation. These filters are
popular in ASICs and FPGAs, since they do not have any multipliers. CIC filters have two
drawbacks:
CIC filters have a magnitude response that causes a droop in the passband region. This
magnitude response is:
abssin(Mω2)sin(ω2)n
o M — Differential delay
o n — Number of stages
o ω — Normalized angular frequency
CIC filters have a wide transition region.
Description: The CIC Interpolation block performs a sample rate increase (interpolation) on
an input signal by an integer factor. Cascaded Integrator-Comb (CIC) filters are a class of
linear phase FIR filters that consist of a comb part and an integrator part.
H(z)=HIN(z)HCN(z)=(1−z−RM)N(1−z−1)N=[RM−1k=0z−k]NEquation 3.2
Where,
Description: The Normalization block independently normalizes each row, column, or vector
of the specified dimension of the input. The block accepts both fixed- and floating-point
signals in the squared 2-norm mode, but only floating-point signals in the 2-norm mode. The
output always has the same dimensions as the input.
This block treats an arbitrarily dimensioned input U as a collection of vectors oriented along
the specified dimension. The block normalizes these vectors by either their norm or the
square of their norm.
For example, consider a 3-dimensional input U(i,j,k) and assume that you want to normalize
along the second dimension. First, define the 2-dimensional intermediate quantity V(i,k) such
that each element of V is the norm of one of the vectors in U:
Y(i,j,k)=U(i,j,k)V(i,k)+b
Y(i,j,k)=U(i,j,k)V(i,k)2+b
The normalization bias, b, is typically chosen to be a small positive constant (for example, 1e-
10) that prevents potential division by zero.
Description: The Real-Imag to Complex block converts real and/or imaginary inputs to a
complex-valued output signal.
The inputs can both be arrays (vectors or matrices) of equal dimensions, or one input can be
an array and the other a scalar. If the block has an array input, the output is a complex array of
the same dimensions. The elements of the real input map to the real parts of the
corresponding complex output elements. The imaginary input similarly maps to the imaginary
parts of the complex output signals. If one input is a scalar, it maps to the corresponding
component (real or imaginary) of all the complex output signals.
Description: The Simulink Scope block and DSP System Toolbox Time Scope block display
time domain signals.
3.0.2 Implementation
3.0.2.1.0 Input
SPECIFICATIONS: -
OUTPUT: -
OUTPUT:-
3.1.0 Principle
The transmitter section of FRS can be implemented in Simulink using DUC. For the
complete FRS system, it is necessary to couple the transmitter with a receiver that employs a Digital
Down Convertor. The design of the implementation has been previously listed.
3.1.1 Implementation
3.1.1.0 Specifications
42
3.1.1.3 Output Spectrum
HDL or Hardware Description Languages are specialized programming languages used to describe the
structure and behavior of electronic circuits. They are an integral part of the Electronic Design
Automation (EDA) and are used for complex systems such as ASIC’s, PLD’s, FPGA’s etc.
A hardware description language looks much like a programming language such as C; it is a textual
description consisting of expressions, statements and control structures. One important difference
between most programming languages and HDLs is that HDLs explicitly include the notion of time.
Due to the exploding complexity of digital electronic circuits since the 1970s, circuit designers
needed digital logic descriptions to be performed at a high level without being tied to a specific
electronic technology, such as CMOS or BJT. HDLs were created to implement register-transfer
level abstraction, a model of the data flow and timing of a circuit.
There are two major hardware description languages: VHDL and Verilog. There are different types of
description in them "dataflow, behavioral and structural".
Using the library shown above an HDL compatible design for DUC was constructed.
The following is the HDL compatible Simulink design for the Digital-up Convertor.
Figure 4.2 Simulink design for DUC using HDL code generator
After constructing the HDL compatible design using HDL code generator, the HDL code can
be easily generated. The code is generated in the form of three VHDL files
A VHDL module- It comprises of the general functioning and input-output
definitions of the system.
A VHDL package- This contains all the I/O definitions, subprograms and
constraints.
A VHDL terminal-count file- This file comprises of all the timing constraints
pertaining to the system.
These are the VHDL files which were generated for the DUC designed using Simulink.
Additionally, it provides automatic generation of a HDL testbench, which enables design verification upon
implementation.
Develop highly parallel systems with the industry’s most advanced FPGAs
Provide system modeling and automatic code generation from Simulink® and MATLAB® (The
Mathworks, Inc.)
Integrates RTL, embedded, IP, MATLAB and hardware components of a DSP system
A key component of the Xilinx DSP Targeted Design Platform
The system generator blocks do not automatically convert the Simulink floating-point numbers to fixed-point.
Unlike the HDL Coder, where the floating-point numbers are automatically converted to fixed-point, the
System Generator utilizes the Gateway In and Gateway Out Blocks to convert from floating-point to fixed-
point and vice-versa, respectively, as shown in Fig. 3. The downside to having to use Gateway In and Gateway
Out blocks is the potential to make mistakes during this conversion. For example, the designer has to be
careful when selecting the number of fixed-point bits, whether the fixed-point number is signed or unsigned as
well as the placement of binary point. Additionally, it is also time consuming, for example, when connecting
Simulink scopes for design verification, as shown in Fig. 3, each input to the scope has to be passed through
the Gateway Out block in order to convert from fixed-point back to the floating point
Figure 5.1:
Once the design results have been verified through simulations, the next step is to generate the HDL codes,
which is done through Workflow Advisor, which comes with HDL coder. Through the Workflow Advisor, one
can select different parameters for the design, including the Target workflow, the targeted platform, the
targeted FPGA, declaring the external ports for the design, etc. In context of SDRs, the targeted workflow
gives the option to select a customizable SDR platform, as shown in the Fig. 1 below, while the target platform
gives the option to select the specific SDR platform, provided that the platform is supported by HDL coder.
Lastly, HDL Coder can also generate VHDL and Verilog test benches for verifying the HDL design.
Fig 5.3 : Final implementation of HDL Compatible Simulink Design on Xilinx System Generator.
Fig 5.4 Analysis of DUC implementation on Xilinx System Generator
CHAPTER 6: CONCLUSION
After completing the project, we have drawn the following conclusions. DUC has a successful sample rate
conversion by a factor of 40 as expected by the specification. DUC has to be used in SDR application of
FRS system transmitters to for the up-conversion of speech signal at a bandwidth of 12.5e3 Hz. For FRS,
DUC Stopband frequency is 18.75e3 Hz and Stopband Attenuation of Cascade Response is 60 dB. The
DUC objects designed in project operate with double-precision filter coefficients.
Passband Ripple of Cascade Response of DUC is 0.05 dB. CIC filters are the best suited filters for DUC
related applications - compared to FIR Filters. They consume less computational power due to their
addition/subtraction complexity instead of multiplication/division. They also employ lesser area. Model-
based modular design approach has a significant number of advantages compared to traditional
approaches. Individual blocks can be interchangeable for multiple purposes and can be easily upgraded
and interfaced with other blocks/systems.
MATLAB HDL Coder and Xilinx System Generator both enable rapid prototyping of the FPGA design by
utilizing MATLAB and Simulink environment. Both of these packages come with their associated pros and
cons. The HDL Coder provides a complete integrated environment for the design flow. It supports a larger
number of MATLAB Functions and Simulink Blocks. It also automatically converts the floating point
numbers to fixed-point. Furthermore, HDL coder provides the means to generating target-independent
Verilog and VHDL codes, which can then be synthesized for various FPGA platforms. On the downside,
the HDL Coder alone is insufficient for synthesizing, simulating and verifying the HDL codes. Additional
MATLAB toolboxes and third-party software are required to achieve these goals. The Xilinx System
Generator comes as part of Xilinx design suits and is specifically tailored for Xilinx products. It also
supports a sufficiently large number of DSP blocks, including those that support mcode, HDL codes, and
floating-point DSP. Other than MATLAB itself, no third party software is needed, neither for generating
HDL codes from Simulink blocks, nor for synthesizing and verifying the generated codes. On the
downside, it is only limited to Xilinx products and requires manual conversion of Simulink floating-point
numbers to fixed-point, which can be a time consuming and error-prone process.
REFERENCES
[1]W. Wolf, "Hardware-software co-design of embedded systems", Proceedings of the IEEE, vol. 82, no.
7, pp. 967-989, 1994.
[2]O. Schoett, Data Abstraction and the Correctness of Modular Programming. Edinburgh:
Department of Computer Science, University of Edinburgh, 1987.
[3]N. Ali Munassar and A. A. Govardhan, "Comparison between Traditional Approach and Object-
Oriented Approach in Software Engineering Development", International Journal of Advanced
Computer Science and Applications, vol. 2, 2011.
[4]N. Yang, G. Hua, J. Li and Z. Peng-yu, "Model-Based Design Methodology for Digital Up and
Down Conversion of Software Defined Radio", International Journal of Multimedia and Ubiquitous
Engineering, vol. 11, no. 4, 2016.
[5]G. Staple and K. Werbach, "The End of Spectrum Scarcity", IEEE Spectrum, vol. 41, no. 3, pp. 48-52,
2004.
[6]P. Chandrashekara Reddy &Sreerama Reddy G.M, “Design and FPGA Implementation of High
Speed, Low Power Digital Up Converter for Power Line Communication Systems”. European Journal of
Scientific Research, ISSN 1450-216X Vol.25 No.2 (2009), pp.234-249.
[7]Ronald E Crochiere, “Interpolation and Decimation of Digital Signal” – tutorial review proceedings
of IEEE, vol. 69, no. 3, march-1981.
[8]R. Lyons, “Understanding cascaded integratorcomb filters,” Embed Syst Program, vol. 18, no. 4, pp.
14– 27, 2005.
[9]A. Singh, P. Singhal, and R. Ratan, “Multistage implementation of multiratecic filters,” Indian
Journal of Science and Technology, vol. 4, no. 8, 2011.
[10]H. Tarn, K. Neilson, R. Uribe, and D. Hawke, “Designing efficient wireless digital up and
down converters leveraging core generator and system generator,” Xilinx, XAPP1018 (v1. 0), 2007.