Faculteit Toegepaste Wetenschappen
Vakgroep INTEC Voorzitter: Prof. Dr. Ir. P. Lagasse
Ontwerp van een Software Defined RF-ontvanger voor Digital Radio Mondiale (DRM)
door Guus Colman en Jasmien Put
Promotor: Prof. Dr. Ir. J. Vandewege Copromotor: Dr. Ir. J. Bauwelinck Begeleider: Ir. C. M´elange
Scriptie ingediend tot het behalen van de academische graad van burgerlijk elektrotechnisch ingenieur
Academiejaar 2006–2007
Faculteit Toegepaste Wetenschappen
Vakgroep INTEC Voorzitter: Prof. Dr. Ir. P. Lagasse
Ontwerp van een Software Defined RF-ontvanger voor Digital Radio Mondiale (DRM)
door Guus Colman en Jasmien Put
Promotor: Prof. Dr. Ir. J. Vandewege Copromotor: Dr. Ir. J. Bauwelinck Begeleider: Ir. C. M´elange
Scriptie ingediend tot het behalen van de academische graad van burgerlijk elektrotechnisch ingenieur
Academiejaar 2006–2007
Voorwoord Hier staan we dan, een jaar later, terugkijkend naar de apotheose van onze opleiding, ons eindwerk. Vele rollen soldeer en desoldeer, net als tientallen Xilinx-projecten komen ons voor de geest, maar verbleken naast de vele fantastische momenten die we hebben mogen beleven. Dit thesisjaar werd vooral gekenmerkt door een enorme groei, zowel op professioneel, maar zeker ook op persoonlijk vlak. Niet enkel werden we op de grenzen van onze kennis en kunde gewezen, maar minstens even vaak werden we vakkundig weer op weg gezet. We zijn dan ook ongelofelijk fier op dit document dat de weerspiegeling is van ons laatste jaar als ingenieursstudent. Vooraleer U zich in de wereld van de DRM-ontvangers gaat verdiepen, wensen we een aantal personen te bedanken voor hun onmisbare steun ter realisatie van dit werk. Eerst en vooral bedanken we professor Lagasse en professor Vandewege voor het ter beschikking stellen van hun infrastructuur zodat deze thesis mogelijk werd. In het bijzonder wensen we onze promotor, Prof. Dr. Ir. J. Vandewege, te bedanken om ons de kans te geven dit onderwerp te bestuderen en uit te werken, alsook voor zijn steun en interesse gedurende het verloop van de thesis. Verder gaat ook een speciaal woordje van dank uit naar onze copromotor, Dr. Ir. J. Bauwelinck, en naar Ir. C. M´elange voor hun steun en raadgevingen gedurende het jaar. Het enthousiasme waarmee zij ons geholpen hebben, blijft een groot voorbeeld voor ons. Ook zijn wij hen bijzonder dankbaar voor het lezen en verbeteren van deze scriptie. Ing. Jan Gillis wensen we te bedanken voor het maken van de bordjes en het solderen van de QFN-chips. Ook hij was een aangename steun, zonder wie deze thesis er compleet anders had uitgezien. Ook Ir. Pieter Demuytere en Ir. Koen Van Renterghem verdienen een speciale vermelding in dit voorwoord. Zij hielpen ons op weg doorheen de wondere wereld van de FPGA. Verder bedanken we ook alle andere personen van INTEC design, voor de hulp en aangename momenten. Ook onze collega-thesisstudenten, die samen met ons, aan dit groot project gewerkt hebben, willen we niet vergeten. Bedankt Guy Torfs en Lieven Tytgat voor de steun, wijze raad en vele aangename momenten in ons “thesiskot”. i
ii En tenslotte wensen we onze ouders, familieleden en vrienden nog te bedanken voor de vele steun gedurende de laatste jaren. Hierbij denken we vooral aan Tom, Sigelinde, Astrid, Katrijn, Jan, de vrienden uit jeugdorkest Forza Muzica en solidariteitskoren Abadabukileyo en Uthokozisa in het bijzonder Jeroen en Elisa en de vele vrienden die we in dit spannende uniefavontuur zijn tegengekomen.
Guus Colman & Jasmien Put, juni 2007
Toelating tot bruikleen “De auteurs geven de toelating deze scriptie voor consultatie beschikbaar te stellen en delen van de scriptie te kopi¨eren voor personlijk gebruik. Elk ander gebruik valt onder de beperkingen van het auteursrecht, in het bijzonder met betrekking tot de verplichting de bron uitdrukkelijk te vermelden bij het aanhalen van resultaten uit deze scriptie.”
Guus Colman & Jasmien Put, juni 2007
iii
iv
Ontwerp van een Software Defined RF-ontvanger voor Digital Radio Mondiale (DRM) door Guus Colman & Jasmien Put Scriptie ingediend tot het behalen van de academische graad van burgerlijk elektrotechnisch ingenieur Academiejaar 2006-2007 Promotor: Prof. Dr. Ir. J. Vandewege Copromotor: Dr. Ir. J. Bauwelinck Begeleider: Ir. C. M´elange Faculteit Toegepaste Wetenschappen Universiteit Gent Vakgroep Informatietechnologie Voorzitter: Prof. Dr. Ir. P. Lagasse
Samenvatting Deze scriptie maakt deel uit van een overkoepelend project waarin een ontvanger voor de DRM-standaard ontworpen wordt. De te ontwerpen front-end krijgt een versterkt RF-signaal van een actieve antenne (INTEC design thesis 1) en geeft een laagfrequent digitaal signaal aan de DRM-demodulatiesoftware (INTEC design thesis 3). In deze scriptie wordt eerst de DRM-standaard onderzocht. In hoofdstuk 4 worden verschillende architecturen van RF-ontvangers vergeleken, waarna er ´e´en wordt uitgekozen die verder in de scriptie volledig uitgewerkt wordt. In de verdere hoofdstukken wordt dieper ingegaan op de verschillende onderdelen van de gekozen architectuur. In hoofdstukken 5 en 7 worden respectievelijk een analoog-naar-digitaal convertor en verschillende automatische versterkingsregelingen uitgewerkt. Tenslotte geven hoofdstukken 9 tot 12 meer informatie over de ge¨ımplementeerde FPGA-software.
Trefwoorden DRM, RF-ontvanger, front-end, architectuurexploratie, digitalisering, FPGA, filters, spiegelonderdrukking, menging, multi-carrier
v
Design of a Software Defined RF-receiver for Digital Radio Mondiale (DRM) Guus Colman, Jasmien Put Supervisor(s): Prof. Dr. Ir. J. Vandewege, Dr. Ir. J. Bauwelinck, Ir. C. M´elange Abstract— This article describes several steps in the design process of a RF-frontend for a DRM-receiver. This design forms part of a project in which a DRM-receiver is fabricated. There are multiple useable architectures presented in this article, each with their advantages and drawbacks. Various analog and digital building blocks, used in these architectures, will be described in-depth. Keywords— DRM, RF-receiver, architectures, digitization, FPGAimplementation, image rejection, mixing
I. I NTRODUCTION
S
INCE the beginning of mankind there has been an evergrowing need for communication. International information gathering was given a huge boost by the rise of the Internet. Several radio broadcasting stations, who were at that time already internationally active, noticed they couldn’t keep up with this informational explosion. These stations soon noticed the main reason for this arrear could be found within the AM-standard. Its shabby reception quality was a big turnoff for the majority of the listening audience. The need for a new standard had dawned. Digital Radio Mondiale (DRM) is the universal, openly standardised, digital radio system for the radio frequencies below 30 MHz. DRM uses the existing AM broadcast frequency bands and is designed to fit in with the existing AM broadcast band plan, based on signals of 9 or 10 kHz bandwidth. The digitization gives DRM, when decodable, FM-sound quality with the AM-reach. With this digital AM-alternative in place, one would expect a rising worldwide demand for DRM-receivers. However, nothing could be further from the truth. With only a couple of receivers acquirable at the present, the expenses stay very high, which demotivate the listening audience to buying a DRM-receiver. With this limited audience, the radio broadcasting stations hesitate to take care of more DRM-transmissions. The only way of leaving this circle is designing an affordable DRM-receiver, which is exactly the purpose of this project. The DRM-project consists of three parts. The part described in this article, receives an amplified RF-signal from an active antenna and sends a digital low-frequency DRM-signal to a DRMdemodulator. II. A RCHITECTURE E XPLORATION There are different architectures possible when designing a DRM-receiver. First of all DRM is a digital standard. Therefore, the architecture has to include a digitizing step. The location of this step in the signal chain has several consequences for the Analog-to-Digital Converter. The same applies to whether the incoming signal is a small- or broadband signal. In the case of a smallband signal the active antenna sends only one DRMchannel to the front-end, which means the channel selection
takes place in the active antenna. In the other case the front-end has to be made variable to allow channel selection. A. Mixed analog-digital superheterodyne receiver A first architecture is the mixed analog-digital superheterodyne receiver. This receiver consists of various mixing steps. Only one, usually the first, is variable and takes care of the channel selection. This architecture makes use of fixed filters to get rid of unwanted signals on the image-frequencies. An example of a mixed analog-digital superheterodyne architecture is shown in figure 1.
Fig. 1. Mixed analog-digital superheterodyne receiver
The channel selection takes place at the active antenna. This antenna provides a signal at a fixed RF-frequency of 5 MHz, with a bandwidth of 30 kHz and a power of approximately 0 dBm. The active antenna is made according to the superheterodyne principle. More details can be found in [1]. The 5 MHz-signal is inserted into the RF-front-end and has to be digitized. There are 3 points of interest when digitizing: the minimal sample rate, the required number of bits and the maximal phase jitter. The sample rate can easily be found when applying Nyquist’s Theorem, keeping a margin for error in mind (ie. relaxing on the anti-aliasingfilter). A minimal sample rate of 100 kHz will be suffici¨ent. The required number of bits can be found by converting the necessary SNR to bits. The incoming signal, because of it’s limited bandwidth, will only contain one radio channel. The demodulation software needs a SNR of 25 dB to function correctly. Keeping in mind imperfections of the ADC-driver the necessary SNR rises. An 8-bit ADC meets these demands. The impact of jitter can be regarded as a decrease in SNR. It is negligible when the SJR (signal-to-jitter ratio) is 6 dB higher than the SNR. When applying (1) the maximal allowed jitter can be found as 1 ns. 1 (1) SJRdB = 20 log 2πfmax ta Once digitized, the signal must be downconverted to a fixed frequency of 12 kHz, on which DRM-signals can be demod-
vi ulated. Therefore a superheterodyne front-end is implemented in an FPGA. It consists of several mixing steps, of which each step is the succession of decimation FIR-filters, decimators, an image rejection FIR-filter and a mixer. The most important drawback for this implementation is the huge consumption of FPGA-resources by the FIR-filters. This consumption can be slightly reduced by increasing the number of mixing steps. This implies the use of more, but cheaper, FIR-filters.
differential amplifier, a crystal oscillator, a 16-bit buffer and the Linear Technology LTC2249, which is a 14-bit ADC-chip. The sample rate is 80 Msps and the clock jitter is limited to 1 ps. The latter won’t cause any decoding problem, even though it is less than required in the second architecture, thus slightly increasing the noise floor. When compared to the Analog Devices AD6645 14-bit ADC Evaluation Board, the presented ADC outruns the evaluation board on several tests.
B. Digital image rejection receiver
B. Analog automatic gain controllers
This architecture is based on an image rejection principle. The front-end acquires a mildly filtered, RF-signal with frequency range from 500 kHz to 27 MHz, from the active antenna. The first step in this architecture is digitization. As the channel selection takes place in the digital frond-end, the analog-todigital converter has to digitize the entire 30 MHz broadband signal. This implies a 80 Msps sample rate, a minimal number of bits of 14 and an allowed phase jitter of 530 fs.
The only way of obtaining a maximal SNR is by boosting the input signal to a level where it uses the entire input range of the ADC, without pushing it into overflow. The driver in this case is an AAGC or analog automatic gain controller. Multiple AAGC-designs, based on active as well as passive peakdetectors and PIN-diodes or integrated AGC-loops, have been developed. Each AAGC has a range of 20 to 30 dB at different minimal gains of -5 to 40 dB, which is more than sufficient. The time constants used in these designs are varying between 10 ms to 40 ms, which won’t cause any information loss. C. Digital automatic gain controllers
Fig. 2. Digital image rejection receiver
Once digitized, the incoming RF-signal will be downconverted to the fixed frequency of 12 kHz, by mixing the RFsignal with a sine and cosine of the same frequency and phase, as shown in figure 2. A preliminary channel selection is implemented by two lowpass CIC-filters. Shifting the phase by another 90 degrees makes sure there’s a 180-degree phase difference at the image frequencies. The addition of the two resulting signals will lead to an image rejection of 60 dB. The phase shift can be carried out by a Hilbert transformation filter (Hartley architecture) or by a second mixing step (Weaver architecture). In the second case, an extra filter is needed for image rejection of the second mixing step. In the end, the sample rate is decreased by decimation and interpolation blocks based on FIR-filters. Although two signal paths are processed by these filters, the FIR-filters will only be implemented once. As CICfilters require little resources, the overall resource consumption remains low. III. P ROTOTYPING Envisioning the creation of a prototype, various subsystems were developed, eg. an analog-to-digital converter and multiple automatic gain controllers. The software has been implemented on a Xilinx Spartan 3E starter kit. In the following, several designed soft- and hardware blocks will be described. A. Analog-to-digital converter Although both architectures have different ADC-requirements, only one ADC has been designed. The convertor consists of a
As lots of digital filters are used, the signal power level steadily decreases when advancing through the digital system. Although the filter data path is optimized to the number of co¨effici¨ents, it takes no account of their value. Next to power loss by filtering, there is consequently a replacement of the most significant bit. This problem can be solved by adding a DAGC or digital automatic gain controller. It will shift the signal bits to the left according to the maximal input sample in a window of about 1.6 s. To reduce the effect of noise, this interval is split into 32 parts, in which the maximum sample value is processed. The running mean of these values is used to calculate the number of shiftable bits. Each 1.6 s the gain can be adapted. As hard boundaries determine the number of shifted bits, noise can alter the gain if the input signal power is approximately on such a boundary. Soft boundaries with hysteresis are added to solve this problem. Multiple DAGC’s are implemented in the FPGA to limit the information loss. The order in which they work is very important when evading saturation. IV. C ONCLUSIONS The prototype is able to process AM-signals, when using an AM- instead of a DRM-demodulator. The resulting SNR is more than suffici¨ent to decode DRM-signals. Overall, the described prototype has been a success. R EFERENCES [1] G. Torfs, Ontwerp van een kortegolf antenne en front-end voor Digital Radio Mondiale (DRM), Afstudeerwerk, Universiteit Gent, 2006-2007. [2] G. Colman, J. Put, Ontwerp van een Software Defined RF-ontvanger voor Digital Radio Mondiale (DRM), Afstudeerwerk, Universiteit Gent, 20062007. [3] L. Tytgat, Ontwerp van Ingebedde Ware-tijd Software voor de ontvangst van Digital Radio Mondiale (DRM), Afstudeerwerk, Universiteit Gent, 20062007.
Inhoudsopgave 1 Inleiding 1.1 Het globale project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Onderwerp van deze thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 1 2
2 Wat is DRM? 2.1 Inleiding . . . . . . . . . . 2.2 COFDM . . . . . . . . . . 2.2.1 Orthogonaliteit . . 2.2.2 Het Guard Interval 2.2.3 Foutcorrectie . . .
. . . . .
3 3 4 4 6 7
RF-ontvanger Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Frequentieverschuiving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Keuze IF-frequentie en spiegelonderdrukking . . . . . . . . . . . . . . . . . .
8 8 9 10
3 De 3.1 3.2 3.3
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
4 Architectuurexploratie 4.1 Analoge superheterodyne ontvanger . . . . . . . 4.1.1 Algemeen principe en werking . . . . . . . 4.1.2 Vrijheidsgraden . . . . . . . . . . . . . . . 4.1.3 Voor- en nadelen . . . . . . . . . . . . . . 4.2 Gemengde homodyne ontvanger aan de hand van 4.2.1 Algemeen principe en werking . . . . . . . 4.2.2 Vrijheidsgraden . . . . . . . . . . . . . . . 4.2.3 Voor- en nadelen . . . . . . . . . . . . . . 4.3 Digitale homodyne of superheterodyne ontvanger 4.3.1 Algemeen principe . . . . . . . . . . . . . 4.3.2 Ontwerp aan de hand van de AD6620 . . 4.3.3 Implementatie met een FPGA . . . . . . 4.3.4 Voor- en nadelen van deze architectuur .
vii
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . de AD9874 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
14 16 16 17 18 19 19 20 20 21 21 22 23 24
Inhoudsopgave 4.3.5 Verdere uitwerking van deze architectuur Spiegelonderdrukkende ontvanger . . . . . . . . . 4.4.1 Hartley architectuur . . . . . . . . . . . . 4.4.2 Weaver architectuur . . . . . . . . . . . . 4.4.3 Correctiemethodes . . . . . . . . . . . . . 4.4.4 Mogelijke aanpassing . . . . . . . . . . . . 4.4.5 Voor- en nadelen . . . . . . . . . . . . . . Demonstratiebordje: gemengde superheterodyne FPGA . . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 Algemeen principe . . . . . . . . . . . . . 4.5.2 Werking . . . . . . . . . . . . . . . . . . . 4.5.3 Vrijheidsgraden en verdere informatie . . 4.5.4 Voor- en nadelen . . . . . . . . . . . . . .
4.4
4.5
5 De 5.1 5.2 5.3 5.4 5.5 5.6
viii
Analoog naar Digitaal Convertor Inleiding . . . . . . . . . . . . . . . . . . Systeemvereisten . . . . . . . . . . . . . Keuze van de componenten . . . . . . . Verdere uitwerking van de schakeling . . Layout van de schakeling . . . . . . . . Testen van de schakeling . . . . . . . . . 5.6.1 Debuggen van de schakeling . . . 5.6.2 Karakterisering van de schakeling
6 Het 6.1 6.2 6.3 6.4 6.5
Anti-Aliasing Filter Filterspecificaties . . . . . . . . . . 5e orde Chebychev filter . . . . . . 7e orde Chebychev filter . . . . . . 7e orde invers Chebychev filter . . 7e orde invers Chebychev filter met
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . afscherming
7 De Automatic Gain Controller 7.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . 7.2 AGC-schakeling met behulp van de AD8368 . . 7.2.1 Probleem met RMS-detectie . . . . . . . 7.2.2 Verdere uitwerking van de schakeling . . 7.2.3 Layout van de schakeling . . . . . . . . 7.2.4 Testen van de schakeling . . . . . . . . . 7.3 AGC-schakeling met behulp van een PIN-diode 7.3.1 Specificaties van de vermogendetector .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ontvanger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . met . . . . . . . . . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . behulp van . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
. . . . . . . .
. . . . .
. . . . . . . .
25 25 25 26 27 28 28 29 29 29 30 30
. . . . . . . .
32 32 32 34 35 40 40 40 41
. . . . .
44 44 45 49 51 54
. . . . . . . .
56 56 57 59 62 64 65 70 70
Inhoudsopgave 7.3.2 7.3.3 7.3.4
ix Ontwerp van de vermogendetector . . . . . . . . . . . . . . . . . . . . Layout van de vermogendetector . . . . . . . . . . . . . . . . . . . . . Meten van de AGC-schakeling . . . . . . . . . . . . . . . . . . . . . .
8 Robuustheid DRM met toepassing op het kristalfilter 8.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2 Simulatiemethode . . . . . . . . . . . . . . . . . . . . . . 8.3 Bepaling H(k.fs ) . . . . . . . . . . . . . . . . . . . . . . 8.4 Resultaten . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Hersampling 9.1 Theorie . . . . . . . . . . . . . . . . . . . . 9.1.1 Decimatie . . . . . . . . . . . . . . . 9.1.2 Interpolatie . . . . . . . . . . . . . . 9.1.3 Interpolatie gevolgd door decimatie . 9.2 Praktische realisatie filters . . . . . . . . . . 9.2.1 FIR-filter . . . . . . . . . . . . . . . 9.2.2 CIC-filter . . . . . . . . . . . . . . . 10 Digitale AGC in een FPGA 10.1 Implementatie aan de hand van 10.1.1 Principe . . . . . . . . . 10.1.2 Stabiliteit . . . . . . . . 10.1.3 Resultaten . . . . . . . 10.1.4 Besluit . . . . . . . . . . 10.2 Implementatie aan de hand van 10.2.1 Principe . . . . . . . . . 10.2.2 Implementatie . . . . . 10.2.3 Robuustheid . . . . . . 10.3 Toepassingen . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
bitselectie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vermenigvuldiging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11 Digitale spiegelonderdrukkingsontvanger 11.1 Doel . . . . . . . . . . . . . . . . . . . . . 11.2 Architectuurexploratie . . . . . . . . . . . 11.2.1 Verwerking van DRM-signalen . . 11.2.2 Verwerking van AM-signalen . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . .
. . . .
72 80 80
. . . .
83 83 83 85 85
. . . . . . .
86 86 86 87 88 88 88 93
. . . . . . . . . .
98 99 99 99 102 104 106 106 107 107 108
. . . .
110 110 111 112 119
12 Digitale heterodyne ontvanger 122 12.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 12.2 Ontwerp 1: 1 mengstap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Inhoudsopgave
x
12.2.1 Principe . . . . . . . . . . . . . . . . 12.2.2 Uitwerking . . . . . . . . . . . . . . 12.3 Tussennoot . . . . . . . . . . . . . . . . . . 12.4 Ontwerp 2: 2 mengstappen . . . . . . . . . 12.4.1 Ontwerp voor IF2 = 1 MHz . . . . . 12.4.2 Besluit . . . . . . . . . . . . . . . . . 12.4.3 Enkele details over de implementatie 12.4.4 Resultaten . . . . . . . . . . . . . . 12.4.5 Besluit . . . . . . . . . . . . . . . . . A Bewijs van de Weavermixer A.1 Ingangssignaal . . . . . . . . . . . . . A.2 Uitgangssignaal . . . . . . . . . . . . . A.2.1 DRM-uitgangssignalen . . . . . A.2.2 AM-uitgangssignalen . . . . . . A.3 Berekeningen . . . . . . . . . . . . . . A.3.1 Berekeningen van AM-signalen Bibliografie
. . . . . .
. . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
. . . . . .
. . . . . . . . .
123 123 124 125 126 128 130 131 132
. . . . . .
134 134 134 134 135 135 135 142
Tabel van gebruikte afkortingen en symbolen Afkorting ADC ADS AGC CIC DA DAC DCM DRM FIR FPGA IF IRR LO LUT LSB MSB MAC RAM RF
Verklaring Analog-to-Digital Converter Agilent Advanced Design System Automatic Gain Controller Cascaded Integrator-Comb Distributed Arithmetic Digital-to-Analog Converter Digital Clock Manager Digital Radio Mondiale Finite Impulse Response Field Programmable Gate Array Intermediate Frequency Image Rejection Ratio Local Oscillator Look-up Table Least Significant Bit Most Significant Bit Multiple Accumulator Random Access Memory Radio Frequency
xi
Hoofdstuk 1
Inleiding 1.1
Het globale project
In deze tijd, waar internationalisering steeds een grotere rol speelt, neemt het belang van lange afstandscommunicatie meer en meer toe. Informatie wordt meer wereldwijd gezocht, zo getuigen de grote groei van het internet en het toenemend aantal internationale televisiezenders. Ook de internationale radio-omroep wenst aan deze informatie-eis te voldoen. De grootste belemmering vormt hierbij de beperkte kwaliteit van de AM-systemen, welke het luisterplezier sterk vermindert. De oplossing hiervoor ligt opnieuw bij Digitalisering”. In 1998 werd het ” DRM Consortium in het leven geroepen om gehoor te geven aan dit probleem. Dit resulteerde in 2003 in de DRM-standaard. Vandaag de dag zijn er maar enkele DRM-ontvangers op de markt. Deze hebben nog steeds verschillende problemen. Zo is er bijvoorbeeld de hoge kostprijs, wegens de beperkte oplage aan ontvangers, die luisteraars ervan weerhoudt een DRM-ontvanger aan te schaffen. Ook de verschillende omroepen aarzelen, wegens het beperkte aantal luisteraars, om in het DRMbootje te stappen. Dit beperkte aanbod maakt luisteraars ook niet warm om zo’n ontvanger aan te schaffen, met een vicieuze cirkel tot gevolg. Deze scriptie kadert in een groter INTEC design project met als doel een waardig alternatief voor de bestaande ontvangers te ontwerpen. Het project wordt onderverdeeld in 3 scripties: • INTEC design thesis 1: Ontwerp van een kortegolf antenne en frond-end voor Digital Radio Mondiale (DRM). [1] • INTEC design thesis 2: Ontwerp van een Software Defined RF-ontvanger voor Digital Radio Mondiale (DRM). • INTEC design thesis 3: Ontwerp van Ingebedde Ware-tijd Software voor de ontvangst van Digital Radio Mondiale (DRM). [2] 1
Hoofdstuk 1. Inleiding
2
Figuur 1.1: Het DRM-project
INTEC design thesis 1 zal hierbij instaan voor het opvangen van de verschillende DRMsignalen en deze te versterken tot een aanzienlijk signaalvermogen, zonder hierbij de SNR zo te laten dalen dat de demodulatie in gevaar komt. INTEC design thesis 2 onderzoekt verschillende architecturen voor RF-ontvangers, die het hoogfrequente RF-signaal van de antenne om zullen zetten naar een laagfrequent digitaal DRM-signaal, dat doorgegeven kan worden aan INTEC design thesis 3. In deze laatste wordt dit DRM-signaal in ware tijd gedemoduleerd.
1.2
Onderwerp van deze thesis
Vooraleer er een RF-ontvanger voor DRM ontworpen kan worden, moeten deze begrippen nader uitgewerkt worden. Hoofdstuk 2 zal dieper ingaan op de DRM-standaard, waarbij vooral de nadruk wordt gelegd op het praktisch nut voor deze scriptie. Hoofdstuk 3 zal de basiswerking van een RF-ontvanger nog eens opfrissen. Nu kan overgegaan worden tot de belangrijkste stap uit deze scriptie: de architectuurexploratie. RF-ontvangers kunnen op verschillende wijzen uitgevoerd worden. Deze hebben uiteraard elk hun voor- en nadelen. De architectuurkeuze zal een bepalende factor zijn op de uiteindelijke kwaliteit van het totale systeem. De keuzemogelijkheden worden dan ook uitvoerig behandeld in hoofdstuk 4. Uiteraard moet een ontwerp met gekozen architectuur ook nog gerealiseerd worden. Hierbij zullen verschillende bouwstenen geconstrueerd moeten worden. Aangezien er gebruik gemaakt wordt van een gemengd analoog-digitaal systeem, zullen de hieropvolgende hoofdstukken ook hierin onderverdeeld worden. Hoofdstukken 5 tot en met 8 zullen het analoge deel van deze scriptie vormen. Hier wordt vooral ingegaan op digitalisering en de verschillende problemen die hierbij kunnen optreden, zoals aliasing en het maximaal uitsturen van een ADC. Nadien zullen de digitale hoofdstukken, namelijk hoofdstuk 9 tot en met hoofdstuk 12, aan bod komen. Hierbij wordt vooral de nadruk gelegd op problemen met hersampling en de digitale realisatie van filters en mixers.
Hoofdstuk 2
Wat is DRM? 2.1
Inleiding
In dit hoofdstuk zullen een paar beginselen van DRM uit de doeken worden gedaan. Dit zal beknopt blijven wegens het beperkte nut voor deze scriptie. Indien de lezer ge¨ınteresseerd is in meer informatie over dit onderwerp verwijzen wij graag door naar gespecialiseerde literatuur, bijvoorbeeld [3] en [4]. Digital Radio Mondiale of kortweg DRM is een systeem dat het gebruik van de radio-omroep beneden de 30 MHz nieuw leven in moet blazen. Om te kunnen concurreren met de AMzenders zal het DRM-systeem een duidelijke meerwaarde moeten bieden waarbij de grote voordelen van AM bewaard blijven. Deze zijn: een grote dekking met weinig zendstructuren en eenvoudige, goedkope ontvangstsystemen. Toch kan DRM heel wat voordelen bieden. De AM-geluidskwaliteit laat immers vaak te wensen over. Uiteraard is ruis een belangrijke oorzaak, maar ook fading en interferentie spelen een grote rol. Vaak wordt ook de bandbreedte van de radiozenders verminderd om interkanaal-interferentie binnen de perken te houden. Ten slotte hebben AM-zenders een variabel frequentieplan te verduren. Al deze beperkingen zorgen voor een beperkt succes van de AM-omroep en vragen om verbeteringen. DRM-signalen bevinden zich tot nu toe in de frequentieband 500kHz - 27MHz, al is er sprake van uitbreiding tot 120MHz, en hebben een bandbreedte van 4.5 tot 20kHz. Hierbij worden 9 en 10kHz het meest gebruikt. In deze scriptie zal nadruk worden gelegd op de 9kHzsignalen aangezien deze dominant zijn in Europa. Bij DRM wordt de informatie, zowel muziek, spraak als randinformatie zoals RDS (Radio Data System), digitaal voorgesteld. Dit zorgt bij correcte demodulatie voor een uitstekende geluidskwaliteit. Ook bestaat de mogelijkheid om bijkomende informatie te versturen naar de DRM ontvangers, zodat deze op elk moment weten welke zender zich op welke frequentie bevindt. Dit is een oplossing voor het variabele frequentieplan in de AM-band. Om de totale verzonden informatie, dus spraak, muziek en randinformatie, binnen een band van 9 kHz te kunnen verzenden, zijn geavanceerde 3
Hoofdstuk 2. Wat is DRM?
4
broncoderingstechnieken noodzakelijk. DRM maakt dan ook gebruik van een combinatie van AAC (Advanced Audio Coding) als SBR (Spectral Band Replication). Aangezien sky-wave propagatie een belangrijke rol speelt in DRM moet de DRM-ontvanger bestand zijn tegen multipadeffecten. De variatie op de vertraging kan aanzienlijk worden (vele milliseconden) wat heel wat groter is dan 1/bandbreedte. Dit vraagt net als DAB en DVBT om een multi-carrier modulatietechniek. COFDM (Coded Orthogonal Frequency-Division Multiplexing)is hiervoor zeker geschikt. Hierbij is wel enige voorzichtigheid vereist aangezien in sommige situaties de Doppler spreiding aanzienlijk kan zijn. Dit maakt DRM enigszins moeilijker dan DAB of DVB-T. [5]
2.2
COFDM
Uit vorige paragraaf bleek al het belang van COFDM, in het vervolg van dit hoofdstuk gaan we daar verder op in. COFDM moduleert de data op een groot aantal carriers met behulp van FDM (Frequency Division Multiplexing). Bij het moduleren wordt deze data gemapt op een 16- of 64-QAM constellatie. Wat COFDM echter anders maakt dan FDM is het gebruik van orthogonaliteit, een guard-interval en foutcorrectie.
2.2.1
Orthogonaliteit
Alvorens orthogonaliteit tussen de carriers te bespreken moet onderzocht worden waarom juist meerdere carriers worden gebruikt. Stel dat dit niet zo zou zijn, met name een signaal wordt gemoduleerd op 1 carrier. Dit wordt ontvangen via 2 paden met een bepaalde onderlinge vertraging. Wanneer de ontvanger een bepaald symbool wil detecteren zal deze gebruik maken van alle informatie die over dit symbool te verkrijgen valt, dus zowel van het rechtstreekse als het vertraagde pad. Wanneer de vertraging meer dan 1 symbool bevat (Figuur 2.1 Links) zal het vertraagde signaal zuiver als ISI (Inter-Symbool-Interferentie) dienst doen. Wanneer deze vertraging minder is dan 1 symbool (Figuur 2.1 Rechts) is enkel een deel van dit vertraagde signaal ISI. De rest van dit signaal bevat inderdaad het juiste symbool maar kan constructief of destructief interageren met het rechtstreekse signaal. De ISI impliceert dus dat de vertraging tussen de beide paden heel klein moet zijn. In een multipadsysteem moet de symbol rate dus voldoende klein worden zodat de vertraging tussen het eerst en laatst ontvangen signaal veel kleiner is dan de symbool periode. Het informatiedebiet dat verzonden kan worden via 1 carrier is dus beperkt. Er zijn dus meer carriers nodig wil een groter datadebiet mogelijk gemaakt worden.
Hoofdstuk 2. Wat is DRM?
5
Figuur 2.1: Invloed van padvertragingen op ISI
Toch rijzen er vragen bij het gebruik van meerdere carriers. Zijn er niet ongelofelijk veel modulatoren en demodulatoren nodig, ´e´en voor elke carrier? Hoe zit het met de bandbreedte? Is ICI (Inter-Carrier-Interference) vermijden mogelijk zonder een reusachtige bandbreedte te gaan gebruiken? Gelukkig is het antwoord op beide vragen ”Neen”, of toch niet indien de carriers goed gekozen worden. Als deze carriers een gelijke tussenafstand hebben van exact fu =1/Tu , met Tu de nuttige periode waarover de ontvanger het gedemoduleerde signaal integreert, verkrijgen we een orthogonale set van carriers.
Figuur 2.2: Orthogonaliteit van de carriers
De k-de carrier kan dan geschreven worden als: 2πt
ψk (t) = ejk Tu
De orthogonaliteitsvoorwaarde leidt dus tot: Z τ +Tu ψk∗ (t)ψl dt = Tu δ(k − l)
(2.1)
(2.2)
τ
Zo kunnen, zonder uitdrukkelijk gebruik te maken van filteren, de carriers onafhankelijk gedemoduleerd worden zonder gevaar voor ICI. Dit heeft ook geen overdreven spectrumgebruik
Hoofdstuk 2. Wat is DRM?
6
tot gevolg. De carriers zijn zo opeengestapeld zodat zij dezelfde bandbreedte hebben als ´e´en carrier zou hebben indien deze met alle data gemoduleerd zou worden en dan onderworpen aan ideaal scherpe filtering. Een voorstelling van een orthogonale set van carriers wordt gegeven door figuur 2.2. [6]
2.2.2
Het Guard Interval
In de praktijk worden onze carriers gemoduleerd met een complex getal dat wijzigt van symbool tot symbool. Als bij demodulatie de integratieperiode 2 symbolen overspant moet er een combinatie van 2 symbolen gedemoduleerd worden. Dit zal niet enkel tot ISI leiden, maar ook ICI tot gevolg hebben. Dit laatste aangezien het binnengekomen signaal van 1 carrier afgebeeld zal worden op meerdere orthogonale basisfuncties in plaats van ´e´en. Dit kan vermeden worden door de timing van het integratie-interval goed te kiezen. Om de vereisten van deze timing wat te laten zakken, kan gebruik gemaakt worden van een guardinterval. Dit zorgt er dus voor dat alle informatie binnen het intergratie-interval, mits redelijke timing, enkel van ´e´en symbool afkomstig is.
Figuur 2.3: Vermijden van ISI door gebruik van het guard-interval
Hoe wordt dit guard-interval gekozen? Het gemoduleerde signaal bestaat binnen 1 symboolperiode nog steeds uit een carrier die gemoduleerd werd met een vast complex getal. Indien dit signaal nu cyclisch uitgebreid wordt verkrijgen we hetzelfde in het guard interval. Het signaal zal dus niet gaan wijzigen over de gewijzigde symboolperiode. Bij multipadsystemen zullen ISI en ICI enkel optreden indien de relatieve vertraging tussen het rechtstreekse pad
Hoofdstuk 2. Wat is DRM?
7
en het vertraagde pad meer bedraagt dan de grootte van het guard-interval. De grootte van het guard-interval zal dus aangepast worden aan de verwachte hoeveelheid multipadeffecten. [7] In DRM wordt gekozen uit verschillende Robustness Modes (zie Tabel 2.1). Kan orthogonaliteitsverlies nu niet meer optreden? Spijtig genoeg wel. Fouten in de lokaleoscillatorfrequenties, faseruis in de lokale oscillator en fouten in de samplefrequenties van de ontvanger zijn maar een paar mogelijke oorzaken die de orthogonaliteit kunnen doorbreken. De verkregen ISI en ICI kunnen echter via zorgvuldig ontwerp beperkt worden. Dit zullen ook in deze scriptie belangrijke aandachtspunten worden.
2.2.3
Foutcorrectie
De BER (Bit Error Rate) is de bepalende factor voor de signaalkwaliteit in een communicatiesysteem. Om een lagere BER te verkrijgen kunnen foutcorrigerende codes gebruikt worden. Dit geldt voor elke modulatietechniek, zo ook voor OFDM. De vraag is echter: Is dit noodzakelijk? Als de SNR (Signal-to-Noise Ratio) hoog genoeg is, is dit niet altijd de moeite waard. Ook dit geldt voor ongecodeerde OFDM, maar enkel in het geval van vlakke kanalen. Bij selectieve kanalen blijkt het gebruik van foutcorrigerende code een noodzaak te zijn. In de DRM-standaard wordt dan ook graag gebruik gemaakt van convolutionele codes gecombineerd met interleaving. [4]
Robustness Mode
Duration Tu
Carrier spacing 1/Tu
A B C D
24 ms 21,33 ms 14,66 ms 9,33 ms
412/3 Hz 467/8 Hz 682/11 Hz 1071/7 Hz
Duration of Guard-interval Tg 2,66 5,33 5,33 7,33
Duration of symbol Tu + Tg
Tg /Tu
26,66 ms 26,66 ms 20 ms 16,66 ms
1/9 1/4 4/11 11/14
ms ms ms ms
Tabel 2.1: De verschillende Robustness Modes
Hoofdstuk 3
De RF-ontvanger 3.1
Inleiding
In mobiele communicatie ontstaat het gevaar dat verschillende signalen elkaar storen. Om overlap van de signalen tegen te gaan, worden speciale technieken toegepast. Voor elke standaard van mobiele communicatie wordt ´e´en van de volgende technieken gebruikt: • FDMA (frequency-division multiple access): Aan elke zender wordt een frequentieband toegekend, die niet overlapt met de frequentieband van andere zenders. De zender kan op elk ogenblik een signaal sturen met verminderde bandbreedte. • TDMA (time-division multiple access): De signalen worden verzonden in verschillende tijdsslots. De niet-overlappende tijdsslots van de verschillende zenders wisselen elkaar af. Elke zender beschikt daarentegen wel over heel de frequentieband, die gebruikt wordt door de betreffende standaard. • CDMA (code-division multiple access): Aan iedere zender wordt een eigen code toegekend. De codes van de verschillende zenders zijn orthogonaal, zodat na decodering van het signaal aan de ontvangerszijde enkel het gewenste signaal overblijft. De zender kan continu een signaal uitsturen, die heel de frequentieband van de standaard mag benutten. De AM- en DRM- standaard hebben de frequentieband van 500 kHz tot 27 MHz tot hun beschikking en maken gebruik van FDMA. De radio-ontvanger moet in staat zijn elk van deze signalen te ontvangen en te verwerken. In het voorbeeld van AM en DRM zal deze verschillende frequentiebanden moeten onderscheiden. De hardware kent echter een beperkte flexibliteit. Een aparte ontvanger maken voor elke zender is veel te complex, mits er heel veel verschillende frequentiebanden verwerkt 8
Hoofdstuk 3. De RF-ontvanger
9
moeten worden. Tevens zou deze architectuur resulteren in een zeer lage flexibiliteit van het frequentieplan. Indien de frequenties van de radiozenders zouden wijzigen, zal de ontvanger niet meer werken. Daarom wordt de volgende klassieke truc toegepast. Een eerste trap in de ontvanger verschuift het signaal naar een vaste frequentie. Dit signaal kan dan met een vast hardwareblok verwerkt worden. De betreffende vaste frequentie wordt het liefst laag gekozen, zodat er geen hoge eisen aan de hardware worden gesteld. Laagfrequente schakelingen zijn immers veel eenvoudiger te realiseren, omdat er zich minder neveneffecten voordoen.
3.2
Frequentieverschuiving
De frequentieverschuiving van het signaal gebeurt aan de hand van menging. Het inkomend signaal ligt gecentreerd rond een frequentie fRF = ωRF /2π. Voor AM- en DRM-signalen kan dit geschreven worden als: xRF (t) =
X
Ai cos ((ωRF + ωi ) t + ϕi )
(3.1)
i
Dit inkomend signaal wordt vermenigvuldigd met een lokaal gesynthetiseerd periodiek signaal met pulsatie ωLO . Dit signaal is bijvoorbeeld sinuso¨ıdaal: xLO (t) = ALO cos (ωLO t + ϕLO )
(3.2)
Na vermenigvuldiging resulteert dit in: y (t) = xLO (t) .xRF (t) X = Ai cos ((ωRF + ωi ) t + ϕi ).ALO cos (ωLO t + ϕLO )
(3.3)
i
=
X Ai .ALO i
2
(cos ((ωRF + ωi + ωLO ) t + ϕi + ϕLO ) + cos ((ωRF + ωi − ωLO ) t + ϕi − ϕLO ))
Figuur 3.1: De mengstap
Hoofdstuk 3. De RF-ontvanger
10
Figuur 3.1 schetst een mengstap. Formule A.6 en figuur 3.1 tonen dat elk inkomend signaal wordt verschoven naar twee frequentiebanden. Deze banden bevinden zich links en rechts op een afstand ωLO van het oorspronkelijk signaal. Beide frequentiebanden bevatten alle informatie: er kan dus op twee verschillende manieren naar een gewenste ωIF gemengd worden, nl. met ωLO = ωRF +ωIF en met ωLO = ωRF −ωIF . Indien de frequentie ωRF wordt afgebeeld op de frequentie ωIF aan de hand van ωLO = ωRF + ωIF , zal ook de frequentie ωRF spiegel = ωRF +2ωIF op deze frequentie worden afgebeeld. Indien daarentegen de frequentie ωRF wordt afgebeeld op de frequentie ωIF aan de hand van ωLO = ωRF − ωIF , zal ook de frequentie ωRF spiegel = ωRF − 2ωIF op deze frequentie worden afgebeeld. Het uitgangssignaal is dus de som van de signalen rond ωRF en ωRF spiegel . Uit deze som kan het gewenste signaal niet meer gereconstueerd worden. Voor elke mengstap moeten de spiegelfrequenties voldoende onderdrukt worden, zodat ze verwaarloosbaar worden in die betreffende som.
3.3
Keuze IF-frequentie en spiegelonderdrukking
In deze scriptie wordt de DRM-band van 500 kHz tot 27 MHz ontvangen en zal er gemengd worden naar een lage frequentie. De spiegelfrequenties liggen in de band van 500 kHz 2fIF tot 27 MHz - 2fIF of van 500 kHz + 2fIF tot 27 MHz + 2fIF . Voor fIF = 10 kHz bijvoorbeeld liggen de spiegelferquenties tussen 480 kHz en 2720 kHz of tussen 520 kHz en 2720 kHz. Deze frequentiebanden overlappen voor een groot deel met de band van 500 kHz tot 27 MHz, waarin het te ontvangen signaal zal liggen. Er bestaat dus geen vast filter dat de spiegelfrequenties zal onderdrukken: de frequenties die doorgelaten moeten worden en deze die onderdrukt moeten worden zijn afhankelijk van de zender die men wil ontvangen. Er bestaan drie oplossing voor dit probleem: • Indien een symmetrisch signaal naar 0 Hz wordt gemengd kan er geen sprake zijn van een spiegelfrequentie, omdat deze zou samenvallen met de nuttige RF-frequentie. Er is dus geen filter noodzakelijk. In deze situatie treedt er echter een probleem op: – Er moet exact naar 0 Hz gemengd worden. Een afwijking is niet toegelaten. Dit wordt ge¨ıllustreerd in figuur 3.2. Indien er sprake is van een frequentieafwijking vallen het linkse en rechtse product niet exact samen en zal het uitgangssignaal vervormd zijn.
Hoofdstuk 3. De RF-ontvanger
11
Figuur 3.2: Een mengstap naar 0 Hz
Aan de ontvangerszijde staat de centrale frequentie van de zender echter niet vast. Deze fluctueert immers door fading. De ontvanger zal dus op elk ogenblik de centrale frequentie moeten detecteren. Het lokaal gesynthetiseerd signaal wordt bijgestuurd aan de hand van de huidige geschatte frequentie. Hoe wordt de centrale frequentie bepaald in AM- en DRM-ontvangers? Een AMsignaal bestaat uit 1 centrale carri¨er, die verhoogd is in amplitude ten opzichte van de signalen rond de carri¨er. Een phase locked loop kan op deze centrale frequentie vergrendelen. DRM-signalen daarentegen zijn opgebouwd uit meerdere carri¨ers. Op welke carri¨er moet er gelockt worden? Drie van de carri¨ers zijn een factor 3 groter dan de andere carri¨ers. De tracking gebeurt hier digitaal: op elk ogenblik wordt de FFT van het signaal berekend, waaruit de plaats in het frequentiedomein van deze drie carri¨ers wordt bepaald. De centrale frequentie van het signaal is dus pas in de software gekend. Indien er naar baseband gemengd wordt, zal er dus een feedbacklus nodig zijn vanuit de software naar de mengstappen. – DRM-signalen kennen echter nog een tweede probleem: de signalen zijn niet symmetrisch rond hun middenfrequentie. Figuur 3.3 toont dat het signaal verloren zal gaan na 1 mengstap en geen enkele reconstructie mogelijk is. Hiervoor bestaat de volgende oplossing. Indien het signaal gemengd wordt door twee verschillende lokale signalen met dezelfde frequentie en een vast gekend faseverschil tussen beiden, kan zowel de linker- als de rechterband van het DRM-signaal gereconstrueerd worden. De reconstructie is het meest eenvoudig indien het faseverschil 90◦ wordt gekozen, de mengproducten zijn dan gelijk aan: X yI (t) = Ai cos ((ωRF + ωi ) t + ϕi ).ALO cos (ωLO t + ϕLO ) (3.4) i
=
X i
Ai cos ((ωRF + ωi ) t + ϕi ).ALO cos (ωLO t + ϕLO )
Hoofdstuk 3. De RF-ontvanger yQ (t) =
X
12 Ai cos ((ωRF + ωi ) t + ϕi ).ALO sin (ωLO t + ϕLO )
(3.5)
i
=
X Ai .ALO i
2
sin (−ωi t − ϕi + ϕLO )
Figuur 3.3: DRM-signalen mengen naar 0 Hz
• Een tweede oplossing zal het signaal eerst naar een vaste hoge frequentie mengen (bijvoorbeeld 45 MHz of hoger). De spiegelfrequenties van heel de band overlappen nu niet met de te ontvangen zender. Voor fIF = 45 MHz liggen de spiegelfrequenties in band van 63 MHz tot 89,5 MHz. Indien het filter de band van 500 kHz tot 27 MHz doorlaat en de band van 63 MHz tot 89,5 MHz voldoende onderdrukt, zal de menging zonder verlies van informatie gebeuren. Daarna zal het signaal naar beneden gemengd worden. Mits de frequentie voor deze mengstap vast is, zal ook het filter vast zijn. Het mengen zal echter opgedeeld worden in verschillende stappen. Mits de IF-frequentie zeer laag is, bijvoorbeeld 12 kHz, liggen de spiegelfrequenties vlakbij de gewenste frequenties. Er is dus een zeer steil filter nodig. Dit filter kan gemakkelijker gerealiseerd worden bij lage frequenties, omdat de nodige orde van het filter zal verlagen. Opdat de eisen voor de spiegelonderdrukkingsfilters realistisch zijn, wordt de mengstap dus opgedeeld in meerdere trappen. • De derde oplossing is een anti-spiegelsysteem, zoals getoond in figuur 11.1. De signalen worden met een signaal in fase gemengd, het resultaat wordt aangeduid met de letter I. Daarnaast wordt het signaal met een lokale mengsinus in kwadratuur vermenigvuldigd, het resultaat wordt aangeduid met de letter Q. Het signaal Q wordt later 90◦ gedraaid. Als laatste stap worden beide signalen opgeteld. Door de tekens in de twee paden goed te kiezen, zullen beide takken hetzelfde teken kennen bij de nuttige frequentieband en een verschillend teken bij de spiegelfrequenties. Na optelling zal dus enkel het nuttig
Hoofdstuk 3. De RF-ontvanger
13
signaal overblijven. Het is belangrijk dat de signalen quasi perfect in kwadratuur en fase worden gemengd en dat de 90◦ graden fasedraaiing voldoende kwalitatief gebeurt. Enige afwijking op deze stappen lijdt tot een beperkte onderdrukking van de spiegelfrequenties, die mogelijks niet meer voldoet aan de vereisten. Omdat perfectie en gelijkheid van verschillende componenten vrij moeilijk te benaderen is in het analoog domein en zeker bij het gebruik van discrete componenten, zijn er speciale technieken ontwikkeld om de imperfectie van het analoge circuit te corrigeren. Dit wordt later in de scriptie besproken.
Figuur 3.4: Spiegelonderdrukkingssysteem
Hoofdstuk 4
Architectuurexploratie Zoals uitgelegd in Hoofdstuk 3 is het doel van de RF-ontvanger het versterken, uitfilteren en naar beneden mengen van het nuttig DRM-signaal. Voor de RF-ontvanger bevindt zich de actieve antenne, die reeds voor een zekere versterking en filtering zorgt. Achter de RF-ontvanger is een digitaal blok geplaatst, dat instaat voor de tracking, de demodulatie en de decodering van de DRM-signalen. De RF-ontvanger moet dus ook zorgen voor de digitalisering van het DRM-signaal. De ontvanger moet heel de band van 500 kHz tot 27 MHz kunnen verwerken. In deze band bevinden zich zowel AM- als DRM-signalen. DRM-signalen zijn, in tegenstelling tot AMsignalen, niet symmetrisch ten opzichte van hun centrale frequentie. Met andere woorden zijn voor de detectie van DRM-signalen zowel de linker- als rechterzijband belangrijk. Een DRM-signaal kent een bandbreedte van 4,5; 9 of 18 kHz. In deze scriptie wordt met het woord bandbreedte steeds de dubbelzijdige RF-bandbreedte bedoeld. Enkel de DRM-signalen met standaardbandbreedte van 9 kHz worden beschouwd. Ook AM-signalen met 9 kHz-breedte worden ontvangen. Het ontwerpen van dit systeem kan op heel wat verschillende manieren. [8] Het spreekt voor zich dat elke aanpak tal van voor- en nadelen met zich meebrengt. De keuze van de architectuur is een afweging tussen kwaliteit, kostprijs en vermogengebruik. In dit hoofdstuk worden enkele architecturen, die in het kader van deze scriptie zijn bestudeerd, besproken. Deze architecturen worden opgedeeld in twee grote klassen: 1. Superheterodyne ontvangers: Deze ontvangers mengen het signaal naar een lage IF-frequentie. Een mogelijk probleem is fading. Door fading fluctueert de centrale frequentie van een signaal immers voortdurend. Deze fluctuatie is zeker kleiner dan 0,5 kHz. Zoals in Hoofdstuk 3 reeds aangebracht werd, is het voor een superheterodyne ontvanger niet noodzakelijk om de juiste frequentie te kennen. De software zal de afwijking immers corrigeren. Om er voor 14
Hoofdstuk 4. Architectuurexploratie
15
te zorgen dat het gewenste signaal niet onderdrukt wordt, wordt de bandbreedte gelijk aan 10 kHz in plaats van 9 kHz beschouwd. De DRM-software zorgt voor een verdere selectie van het signaal. De IF-frequentie moet tussen 5 en 19 kHz liggen. Indien de IF-frequentie lager dan 5 kHz is, zullen de positieve en negatieve spectra van het signaal immers in de buurt van 0 Hz overlappen. De samplerate van de DRM-software bedraagt 48 kSamples/s. Uit deze samplerate volgt - door Nyquist - een bovengrens aan de maximale frequentie, gebruikt door het DRM-signaal, nl. 24 kHz. In praktijk zal de maximale frequentie lager gekozen worden, zodat er een realistisch anti-aliasingfilter bestaat voor de bemonsteringsstap aan 48 kSamples/s. In deze scriptie wordt de IF-frequentie gelijk aan 12 kHz gekozen. 2. Homodyne ontvangers: Deze ontvangers mengen naar baseband. Zoals in Hoofdstuk 3 wordt uitgelegd is het cruciaal dat de centrale frequentie gekend is. In DRM-systemen is deze frequentie echter pas in het softwaregedeelte gekend. Er zal een terugkoppelpad nodig zijn vanuit het trackingsgedeelte van de INTEC design thesis 3, ofwel zal deze tracking eerder in het systeem moeten gebeuren. Mengen naar baseband biedt echter tal van voordelen. Heel wat onderdelen van het trackingsgedeelte kan in RF-ontvanger overgenomen worden. Het deel van INTEC design thesis 3 zal bijvoorbeeld niet meer instaan voor een menging naar baseband. De gewenste samplerate van de gebruikte software bedraagt 48 kSamples/s. Indien goed naar baseband gemengd wordt zal het signaalspectrum zich binnen de band van -4,5 kHz tot 4,5 kHz bevinden en kan de samplerate dus met meer dan een factor 4 verminderd worden. De rekencomplexiteit zal dan ook afnemen. Er zijn 2 opensource softwarepakketten die DRM-signalen verwerken beschikbaar: DIORAMA, geschreven in Matlab en DREAM, geschreven in C. Beide pakketten werken met een inputsamplerate van 48 kSamples/s en een middenfrequentie rond 10 kHz. INTEC design thesis 3 is gebaseerd op de DREAM-software. In die scriptie werd er in eerste instantie gekozen om niet te veel wijzigingen aan te brengen aan het huidige algoritme. Daarom werd er uiteindelijk gekozen voor een architectuur die naar een lage frequentie mengt en een uitgangssamplerate heeft van 48 kSamples/s. De radio kan dan ook getest worden via de DREAM-software op pc. In dit hoofdstuk worden echter ook homodyne ontvangers besproken. In dit hoofdstuk worden de architecturen nog op een tweede manier opgedeeld, namelijk aan de hand van de gebruikte mengstappen. Volgende klassen worden onderscheiden:
Hoofdstuk 4. Architectuurexploratie
16
• Analoge ontvanger: In dit type gebeuren alle mengstappen van de RF-ontvanger in het analoge domein. De DRM-software zorgt eventueel voor een extra digitale mengstap naar baseband. • Digitale ontvanger: Alle mengstappen gebeuren aan de hand van digitale verwerkingseenheden. • Gemengde ontvanger: De betreffende architectuur gebruikt een combinatie van analoge en digitale mengstappen.
4.1
Analoge superheterodyne ontvanger
Figuur 4.1: Analoge superheterodyne ontvanger
4.1.1
Algemeen principe en werking
In figuur 4.1 staat een schema van een analoge superheterodyne ontvanger. De werking is op te delen in drie grote delen. Eerst zal het signaal van een variabele naar een vaste hogere frequentie worden verschoven. Daarna wordt het signaal naar een vaste lage frequentie gemengd. Tenslotte wordt het analoge signaal omgezet in een digitaal signaal. Conversie naar boven Het eerste filter onderdrukt de spiegelfrequenties voor de eerste menging. Daarna wordt het signaal versterkt. Tenslotte wordt de menging naar een vaste hoge frequentie ωIF 1 gemengd.Het blokje dat de lokale mengsinus aanmaakt moet flexibel zijn. Voor elke zender moet dit blokje immers een signaal met een andere frequentie aanmaken. Conversie naar beneden Zoals reeds beschreven in Hoofdstuk 3 kan er niet direct gemengd worden naar een zeer lage IF-frequentie. Daarom bestaat dit deel uit twee of meer mengstappen. Het signaal gaat door een banddoorlaatfilter, dat het gewenste signaal doorlaat en de spiegelfrequenties
Hoofdstuk 4. Architectuurexploratie
17
voor de volgende mengstap onderdrukt. Daarna wordt het signaal versterkt. Uiteindelijk neemt de mengstap naar een lagere frequentie plaats. Deze frequentie ligt tussen de eerste middenfrequentie en de volgende middenfrequentie van het systeem. Na deze mengstap komt er een gelijkaardige mengstap, waarbij de resulterende frequentie laag, bijvoorbeeld rond 12 kHz, zal liggen. Digitalisering Dit onderdeel begint met een anti-aliasingfilter, zodat de digitalisering correct gebeurt. Daarna komt een versterkertrap, die er voor zorgt dat de ADC zo goed als maximaal wordt aangestuurd. Tenslotte neemt de eigenlijke analoog-naar-digitaalconversie plaats.
4.1.2
Vrijheidsgraden
Dit ontwerp brengt tal van vrijheidsgraden met zich mee: • Indien nodig kunnen er meerdere versterkers gebruikt worden. Bij elke versterkertrap wordt de versterking variabel of vast gekozen. Indien er gekozen wordt voor een variabele versterking, houdt deze rekening met het huidige signaal. Achter de variabele versterker komt dan een detectieblokje die de versterking zal bijregelen. Zo een schakeling wordt een AGC (Automatic Gain Controller) genoemd. Hierover vindt u meer informatie in Hoofdstuk 7. De versterking voor elke mengstap wordt zo gekozen dat het signaal voldoende groot is, maar de mengstap voldoende lineair werkt. De versterking voor de ADC wordt gekozen zodat de ADC maximaal wordt aangestuurd, maar niet satureert. • Alle middenfrequenties, behalve de laatste, kunnen vrij gekozen worden. De keuze van de middenfrequentie is steeds een afweging tussen de hardware voor en na de mengstap. Een lage IF-frequentie vereenvoudigt alle hardware achter de mengstap, maar legt strengere eisen op aan het spiegelonderdrukkingsfilter. De IF-frequentie zal steeds zo laag mogelijk gekozen worden, waarbij het spiegelreductiefilter nog op een voldoende kwalitatieve manier kan gemaakt worden. • De lokale mengsinus kan gegenereeerd worden door een VCO (Voltage Controlled Oscillator) of een DDS indien het variabel is. Indien de frequentie vastligt (zoals bijvoorbeeld voor de laatste twee mengstappen), kan ook een kristaloscillator gebruikt worden. • De samplefrequentie wordt zo laag mogelijk gekozen, maar op die manier dat het antialiasingfilter realiseerbaar is. Er kan dan een goedkope, vermogeneffici¨ente en zeer performante ADC gevonden worden. De voorkeur gaat uit naar een samplefrequentie van 48 kSamples/s, omdat de huidige DRM-software met deze samplefrequentie werkt. • Het aantal bits, gegenereerd door de ADC, kan vrij gekozen worden. Het aantal bits begrenst de dynamiek van de ADC. De kostprijs en het vermogengebruik nemen ex-
Hoofdstuk 4. Architectuurexploratie
18
ponentieel toe met het aantal bits. Er zal dus een afweging gemaakt worden tussen kwaliteit en kostprijs/vermogenverbruik. • Tenslotte zijn er verschillende soorten filters die gekozen kunnen worden: filters louter opgebouwd uit capaciteiten en spoelen, kristalfilters en SAW-filters. Van het eerste type filter bestaan er heel wat mogelijke implementaties: een Chebychevfilter, een Butterworthfilter, ... • Daarnaast zijn er verschillende types mixers, zoals een schakelaar, een gebalanceerde mixer en een supergebalanceerde mixer. • Tenslotte is er voor elke component een groot aanbod aan keuzes.
4.1.3
Voor- en nadelen
Voordelen • De analoge superheterodyne ontvanger is een klassiek ontwerp, dat heel vaak wordt toegepast. Er is dus zekerheid tot succes. • Het grootste deel van het ontwerp is een laagfrequentschakeling. Dit maakt het ontwerp relatief eenvoudig. • De schakeling kan op een eenvoudige manier uitgebreid worden naar verwerking van andere frequentiebanden. Dit kan immers opgelost worden door er een trap voor te schakelen. Nadelen • Elke analoge mengstap cre¨eert hogere orde mengproducten. Het is niet altijd mogelijk om deze te onderdrukken. Hierdoor daalt de dynamiek van de ontvanger.
Hoofdstuk 4. Architectuurexploratie
4.2
19
Gemengde homodyne ontvanger aan de hand van de AD9874 AD9874 VDDA
GCP
AD9874 DAC AGC
–16dB
DOUTA
IFIN LNA
GCN
II-2P
IF CRYSTAL OR SAW FILTER
TUNER
II-2N
VXOP
PRESELECT RF FILTER INPUT
VXON
IF2 = fCLK/8
⌬-⌺ ADC
LNA
DECIMATION FILTER
FORMATTING/SSI DOUTB FS
TO DSP
CLKOUT CONTROL LOGIC
VCO SAMPLE CLOCK SYNTHESIZER
LO SYNTH.
LOOP FILTER
VCO
SYNCB
PE
PD
PC
RREF
VREFN
VREFP
CLKN
CLKP
IOUTC
LON
SPI LOP
REFIN
IOUTC
ADF42xx PLL SYN
VOLTAGE REFERENCE
LOOP FILTER VDDC
CRYSTAL OSCILLATOR FROM DSP
Figure 27. Typical Dual Conversion Superheterodyne Application Using the AD9874
4.2.1
This second IF signal is then digitized by the ⌺-⌬ ADC, demodu-ontvanger The selectivity and bandwidth of the IF filter depend on both Figuur 4.2: Gemengde homodyne aan de hand van dewillAD9874 the magnitude and frequency offset(s) of the adjacent channel lated into its quadrature I and Q components, filtered via matching blocker(s) that could overdrive the AD9874’s input or generate decimation filters, and reformatted to enable a synchronous serial in-band intermodulation components. Further suppression is interface to a DSP. In this example, the AD9874’s LO and CLK performed within the AD9874 by its inherent band-pass response synthesizers are both enabled requiring some additional passive and digital decimation filters. Note, some applications will require components (for the synthesizer’s loop filters and CLK oscillator) additional application-specific filtering performed in the DSP and a VCO for the LO synthesizer. Note, not all of the required that follows the AD9874 to remove the adjacent channel and/or decoupling capacitors are shown. Refer to the previous section implement a matched filter for optimum signal detection. and Figure 26 for more information on required external passive components. The output data rate of the AD9874, f , should be chosen to
Algemeen principe en werking
In deze architectuur wordt een AD9874 gebruikt. [9] De chip voorziet onder andere een verbe at least twice the bandwidth or symbol rate of the desired signal The selection of the first IF frequency is often based on the availto ensure that the decimation filters 4.2 provide a flat pass-band ability of low cost standard SAW filters as well as system sterker, een mengstap en crystal eenoranaloog-naar-digitaal omzetter. Figuur toont de architectuur response as well as to allow for post-processing by a DSP. Once frequency planning considerations. In general, crystal filters are is determined, the decimation factor of the digital filters used for narrow-band channel bandwidths die wordt often voorgesteld in radios de having datasheet van below deze fshould chip. be set such that the input clock rate, f , falls between 50 kHz with IFs below 120 MHz, while SAW filters are more OUT
OUT
CLK
suited for channel bandwidths greater than 50 kHz with IFs greater than 70 MHz. The ultimate stop-band rejection required by the IF filter will depend on how much suppression is required at the AD9874’s image band resulting from downconversion to the second IF. This image band is offset from the first IF by twice the second IF frequency (i.e., ± f CLK/4 depending on high or low side injection).
the AD9874’s rated operating range of 13 MHz–26 MHz and no significant spurious products related to fCLK fall within the desired pass band resulting in a reduction in sensitivity performance. If a spurious component is found to limit the sensitivity performance, the decimation factor can often be modified slightly to find a “spurious free” pass band. In general, selecting
Het eerste deel van deze architectuur is equivalent met het deel ”conversie naar boven” van de architectuur besproken in 4.1 VERW. Eerst worden de spiegelfrequenties onderdrukt. Dan wordt het signaal versterkt en gemengd naar een vaste hoge frequentie (bijvoorbeeld 45 MHz). Daarna volgt een spiegelonderdrukkingsfilter voor de eerste mengstap van de AD9874. Vanaf dat punt gebeurt de verdere verwerking in de chip zelf. In de chip wordt het signaal eerst versterkt. Daarna wordt het gemengd naar fclk /8. Aan de hand van een externe VCO en een extern filter wordt een PLL-lus gevormd, die een stabiele –34– REV. 0 LO-frequentie zal genereren. Na de menging wordt het signaal omgezet in een digitaal signaal aan de hand van een Σ∆-omzetter. In het digitale domein gebeurt de verwerking die wordt voorgesteld in figuur 4.3. Het signaal wordt zowel in fase als in kwadratuur naar baseband gemengd. Dit signaal wordt verder gedecimeerd en doorgegeven aan de DRM-software.
Hoofdstuk 4. Architectuurexploratie
20
COS
M
K
DEC2
DEC3
I DEC1 DATA FROM ⌺-⌬ MODULATOR
SIN SINC4 FILTER
12
SINC4 M + 1 FILTER
FIR FILTER
COMPLEX 4 DATA TO OR SSI PORT 5 Q
Figuur 4.3: Digitale verwerking in de AD9874
4.2.2
Vrijheidsgraden
Hier zijn de vrijheidsgraden natuurlijk meer beperkt dan in het vorige ontwerp, omdat een groot deel van het ontwerp vastgelegd wordt door de chip. Deze chip voorziet tal van programmeerbare opties. Voor meer informatie hieromtrent verwijzen we naar de datasheet. Het eerste gedeelte van het ontwerp kent ongeveer dezelfde vrijheidgraden als bij de analoge superheterodyne ontvanger. Er vallen echter twee grote verschillen op te merken: • Het ingangssignaal van de chip moet voldoen aan de specificaties, opgelegd door de datasheet van de AD9874. • De lokale oscillator van de externe mengstap moet gerealiseerd worden met behulp van DDS. Een DDS kent immers een zeer fijne resolutie. Die is nodig, mits de menging naar baseband nauwkeurig moet gebeuren en de LO-frequentie van de chip vastligt. Er zal een feedbacklus nodig zijn vanuit de software, die deze DDS digitaal aanstuurt.
4.2.3
Voor- en nadelen
Voordelen • De AD9874 is vrij gemakkelijk in gebruik en levert al snel een groot deel van het ontwerp op. Het ontwerp zal dus vlugger gerealiseerd kunnen worden. • De chip vervangt een hele reeks van discrete componenten en is geoptimaliseerd op transistorniveau. Dit zal leiden tot een goede performantie van het systeem. Nadelen • De vrijheidsgraden van het systeem worden beperkt door de chip. • Mits deze architectuur naar baseband mengt, is er een feedbacklus nodig vanuit het softwaregedeelte van de DRM-radio. De software zal gewijzigd moeten worden om signalen in baseband te verwerken en de correcte LO-frequentie uit te sturen.
Hoofdstuk 4. Architectuurexploratie
4.3
21
Digitale homodyne of superheterodyne ontvanger
Figuur 4.4: Digitale homodyne of syperheterodyne ontvanger
4.3.1
Algemeen principe
Aangezien de demodulatie van de DRM-signalen digitaal gebeurt leek het een goed idee om ook de mengstappen digitaal uit te voeren. In deze architectuur wordt heel de band van 500 kHz tot 27 MHz gedigitaliseerd. De verdere verwerking gebeurt digitaal. De analoge front-end zorgt voor de digitalisering van het signaal. Dit deel bestaat uit een anti-aliasingfilter, een AGC en de eigenlijke ADC. Hieronder volgt een korte bespreking van deze onderdelen. • de Analoog naar Digitaal omzetter (ADC): Deze component kwantiseert en bemonstert het signaal. De betreffende architectuur legt harde grenzen op aan de vrijheidsgraden van de ADC. Twee belangrijke vrijheidsgrenzen zijn de de samplerate en het aantal bits. De band van 500 kHz tot 27 MHz zal gesampled worden. Een theoretische ondergrens voor de samplefrequentie wordt gegeven door de Nyquistvoorwaarde en is gelijk aan 2 keer de volledige bandbreedte, nl. 54 MSamples/s. Deze samplefrequentie onderstelt een ideaal anti-aliasingfilter. Opdat de eisen ten opzichte van het filter realiseerbaar zijn, zal er in praktijk een grotere grotere samplerate gekozen worden. De samplerate resulteert dus uit een afweging tussen de eisen ten opzichte van het anti-aliasingfilter en de eisen aan de ADC en de digitale verwerking. Naast een vrij hoge samplerate zal de ADC voldoende resolutie moeten leveren, zodat alle signalen in de band van 500 kHz tot 27 MHz gededecteerd kunnen worden. In deze band bevinden zich immers sterke AM-signalen, maar ook zwakke DRM-signalen. Opdat deze DRM-signalen met voldoende SNR gedigitaliseerd kunnen worden, is het belangrijk dat de ADC voldoende bitresolutie bezit.
Hoofdstuk 4. Architectuurexploratie
22
• een Automatic Gain Control Controller (AGC): De maximal ontvangen amplitude varieert in de tijd, onder andere door fadingverschijnselen. Een AGC zal er voor zorgen dat de ADC zo goed als volledig wordt uitgestuurd, om geen dynamiek te verliezen. • een anti-aliasingfilter: Dit zorgt ervoor dat de bemonstering van de band van 500 kHz tot 27 MHz zo accuraat mogelijk gebeurt, zonder interferentie met andere signalen. Het filter zal de signalen, die na sampling op de nuttige signaalfrequentie zouden geprojecteerd worden, voldoende onderdrukken. Daarnaast zal het filter de band van 500 kHz tot 27 MHz met voldoende nauwkeurigheid doorlaten. Het digitale gedeelte zorgt voor alle filterstappen, mengstappen en tussenliggende versterktrappen. Met een minimum aan distorsie wordt het nuttig signaal verschoven naar een lagere frequentie. Daarna zal de samplerate verlaagd worden, zodat de snelheidseisen van het demodulatiegedeelte vereenvoudigd worden. Dit resulterende laagfrequent signaal wordt naar het demodulatiegedeelte van de DRM-radio gestuurd.
4.3.2
Ontwerp aan de hand van de AD6620
De AD6620 is een chip die vaak gebruikt wordt tussen een analoge ontvanger en een DSP die voor de decodering van digitale signalen instaat. [10] De digitale chip neemt de frequentieverschuiving en decimatie voor zich. Een voorbeeld van een mogelijk ontwerp wordt in figuur 4.5 getoond.
Figuur 4.5: Digitale menging aan de hand van de AD6620
De chip bestaat uit twee hoofdonderdelen: • een frequentieomzetter, die het signaal verschuift naar baseband. • een decimatie-eenheid, die de samplerate van het signaal verlaagt. De decimatie zal geen verlies van informatie met zich meebrengen en resulteert in lagere snelheidseisen ten opzichte van de verdere digitale verwerking van de signalen.
Hoofdstuk 4. Architectuurexploratie
23
Daarnaast zijn ook de onderdelen die instaan voor de communicatie met andere componenten en de programmering van chip belangrijk. Frequentieomzetter De chip mengt naar baseband: dit maakt het systeem heel eenvoudig, omdat er geen spiegelonderdrukking nodig is. De frequentieomzetter is op zijn beurt opgedeeld in twee delen: • een NCO (Numerically Controlled Oscillator) die een lokale sinus en cosinus synthetiseert. De frequentie van de NCO heeft een maximale resolutie van 16 mHz, wat dus meer dan voldoende is voor deze toepassing. • de eigenlijke mixers: Dit zijn hardwarevermenigvuldigers die de lokale sinus en cosinus met het ingangssignaal vermenigvuldigen. Decimatie-eenheid De decimatiestap is opgedeeld in drie programmeerbare trappen: • een tweede orde CIC filter, waarvan de decimatiefactor (2 − 16) te programmeren is. • een vijfde orde CIC filter, waarvan de decimatiefactor (1 − 32) te programmeren is. • een FIR filter met een maximum lengte van 256, waarvan de co¨effici¨enten vrij (20bit resolutie) te programmeren zijn. Ook de decimatiefactor (1 − 32) van dit filter is programmeerbaar. Deze verschillende types filters worden meer in detail besproken in hoofdstuk 9
4.3.3
Implementatie met een FPGA
Figuur 4.6: Digitale menging aan de hand van een FPGA
Figuur 4.6 toont een gelijkaardige architectuur als in figuur 4.5. In de plaats van de AD6620, wordt er hier een FPGA gebruikt. [11] Dit heeft 3 belangrijke voordelen:
Hoofdstuk 4. Architectuurexploratie
24
• Het digitale ontwerp kan geoptimaliseerd worden naar deze toepassing. • Deze grotere flexibiliteit van het digitaal deel resulteert ook in een grotere flexibiliteit van de analoge front-end. De samplerate en het aantal bits van de ADC kan vrij gekozen worden, rekeninghoudend met de nodige performantie. De maximale ingangssamplerate van de AD6620 bedraagt 67 MSamples/s. Het anti-aliasingfilter zal hierdoor vrij steil worden (doorlaatband = 500 kHz - 27 MHz, stopband (60 dB) vanaf 40 MHz). Een hogere samplerate resulteert in een minder streng filter. Ook het aantal bits van de ADC kan geoptimaliseerd worden, zodat het DRM-signaal voldoende gedetecteerd wordt (DRM heeft minimum SNR van 20 dB nodig). In deze scriptie werd gekozen voor de LTC2249, dit is een 14-bit ADC met een samplerate van 80 MSamples/s. Later in deze scriptie wordt deze keuze in meer detail toegelicht. • De DRM-software uit INTEC design thesis 3 wordt ook in een FPGA gerealiseerd. De communicatie tussen beide blokken wordt dus vereenvoudigd. In eerste instantie werd er een vrij letterlijke vertaling van de AD6620 in FPGA gemaakt, waarbij de filters hard gecodeerd werden. Aangezien in INTEC design thesis 3 gekozen werd om geen modificaties aan de algoritmes van de DRM-software aan te brengen, werd er gekozen voor een architectuur die naar een lage frequentie (12 kHz) mengt en een uitgangssamplerate heeft van 48 kSamples/s. De ontvanger kan dan ook getest worden via de DREAM-software op pc. Het uiteindelijke digitale systeem wordt later in detail besproken.
4.3.4
Voor- en nadelen van deze architectuur
Voordelen Het systeem is weinig afhankelijk van afwijkingen van discrete componenten en is zeer flexibel. Doordat de berekeningen digitaal gebeuren zijn deze goedkoop en meer lineair. Indien er bijvoorbeeld twee digitale mengproducten (in kwadratuur) nodig zijn in het systeem, zullen in tegenstelling tot analoge mengproducten - minder variatie kennen ten opzichte van elkaar, op een fasedraaiing van 90◦ na. Nadelen De hedendaagse technologie laat toe om breedbandige signalen, zoals heel de DRM-band, te digitaliseren. Dit maakt het ontwerp van breedbandige systemen echter niet evident. In het ontwerp van deze scriptie wordt getracht een prijsdrukkende laagvermogenoplossing te vinden. In een breedbandoplossing is het vinden van goedkope en laagvermogencomponenten
Hoofdstuk 4. Architectuurexploratie
25
zeker geen evidentie. Uit wat onderzoek naar verkrijgbare ADC’s bleek dat zowel de kostprijs als het vermogenverbruik exponentieel stijgt met de samplefrequentie en het aantal bits. DRM-signalen zijn tevens zeer gevoelig aan jitter door de orthogonaliteit van de carri¨ers. De sampling van het signaal moet dus zeer accuraat gebeuren. Hiervoor is een klok nodig met weinig jitter (orde 1ps).
4.3.5
Verdere uitwerking van deze architectuur
Verdere informatie over de verschillende onderdelen vindt u: • Filter: Hoofdstuk 6 • AGC: Hoofdstuk 7 • ADC: Hoofdstuk 5 • FPGA: Hoofdstuk 11
4.4
Spiegelonderdrukkende ontvanger
In deze sectie worden enkele spiegelonderdrukkingssystemen besproken. Het basisidee werd reeds uitgelegd in 3.
4.4.1
Hartley architectuur
Figuur 4.7: Spiegelonderdrukkingssysteem
Figuur 11.1 toont het principe achter een spiegelonderdrukkingssysteem. In figuur 4.8 staat een schets van een traditionele analoge uitvoering, gevolgd door een digitaliseringsstap. Het signaal wordt in fase en kwadratuur gemengd naar een lage middenfrequentie. Voor het gewenste signaal zullen beide signalen I 0 en Q0 een zelfde teken kennen. Voor de spiegelfrequentie zal er tussen I 0 en Q0 een faseverschil van 180 graden bestaan. In de
Hoofdstuk 4. Architectuurexploratie
26
veronderstelling dat er geen misaanpassing is tussen de twee signaalpaden zullen de spiegelfrequenties na optelling volledig onderdrukt worden. Hierna volgt een anti-aliasingfilter, een AGC en een ADC, zoals eerder in dit hoofdstuk besproken.
X
Q
Q’
Sine
+
ADC
I’
I
X
AGC
Cosine
Figuur 4.8: Hartley architectuur
De 90◦ -fasedraaiing wordt uitgevoerd aan de hand van het RC-CR-netwerk. De asymmetrie in deze schakeling brengt een zeker faseverschil tussen beide paden met zich mee. Dit leidt tot een minder goede onderdrukking van de spiegelfrequenties. Ook zal de versterking in beide paden niet gelijk zijn. Deze is immers enkel gelijk bij frequentie f = 1/(2π.RC). Bij breedbandige toepassingen zal de afwijking tussen beide trappen ongeoorloofd groot worden. De 90◦ -fasedraaiing kan ook digitaal worden uitgevoerd. Dit gebeurt bijvoorbeeld aan de hand van een Hilberttransformatie (zie 11). Dit systeem kent echter nog steeds een beperkte spiegelonderdrukking, door de afwijking in fase en versterking van de analoge filters en de mengstappen. Uit de literatuur blijkt de Hartley architectuur een maximale onderdrukking van slechts 30-40 dB te kennen. Een oplossing voor dit probleem wordt in de volgende secties toegelicht.
4.4.2
Weaver architectuur X
Q
X
QQ
Sine
Sine
+ X
I
Cosine
X
II
Cosine
Figuur 4.9: Weaver architectuur
AGC
ADC
Hoofdstuk 4. Architectuurexploratie
27
De Weaver architectuur wordt in figuur 4.9 geschetst. De 90◦ -fasedraaiing wordt hier vervangen door extra mengstappen. De totale mengstap wordt dus opgedeeld in twee mengstappen. Door de juiste keuze van de fases van de lokale mengsinussen zullen de spiegelfrequenties onderdrukt worden en de gewenste frequenties doorgelaten worden. Het bewijs hierover kan gevonden worden in de appendix. Dit ontwerp is natuurlijk ook gevoelig aan misaanpassing tussen de signaalpaden. Dit resulteert in een amplitudeverhouding dA en een extra faseverschil dφ aan de uitgang van de paden. Er is dan geen sprake meer van een volledige onderdrukking. De onderdrukking wordt nu gegeven door: 1 + dA2 + 2dA cos (dϕ) Image Rejecion Ratio (IRR) = 10 log (4.1) 1 + dA2 − 2dA cos (dϕ)
spiegelonderdrukking (dB)
Onderstaande grafiek toont het verloop van de onderdrukking voor verschillende amplitudeverhoudingen in functie van de fasevariatie. De onderdrukking daalt sterk met groter wordende variaties tussen de twee trappen. Een amplitudeverschil van 10 % en een faseverschil van slechts 0,05 graden resulteert in een onderdrukking van amper 32 dB. Deze onderdrukking voldoet niet. In draadloze communicatie is er immers een onderdrukking van 60 dB gewenst. 70 60 50 40 30 20 10 0
°
°
0
0,05
0,1
0,15
0,2
faseverschil (°)
1,001
1,005
1,01
1,05
1,1
Figuur 4.10: Onderdrukking van spiegelfrequenties
4.4.3
Correctiemethodes
Toch is de Weaverarchitectuur een heel interessant concept. Zeker indien de ontvanger op chipniveau gemaakt moet worden. Op dit niveau is het immers moeilijk een superheterodyne ontvanger te ontwerpen. Het is immers niet eenvoudig om filters met een hoge Q-factor te maken. Daarom gebeurt er heel wat onderzoek naar dit type ontvanger. Een goede Weaverarchitectuur maakt gebruik van kalibratie-algoritmes, uitgevoerd in het digitale domein, die het amplitude- en faseverschil berekenen. Het programma zal een signaal
Hoofdstuk 4. Architectuurexploratie
28
naar de tweede trap van mixers sturen, die daaruit een aangepaste lokale mengsinus genereert. De tweede trap mixers kan analoog of digitaal uitgevoerd worden. In de literatuur ([12],[13],[14] en [15]) werden tal van technieken besproken. Het resultaat geboekt met deze kalibratie is noemingswaardig. In [13] is men erin geslaagd een oorspronkelijk onderdrukking van 26 dB op te krikken naar 59 dB.
4.4.4
Mogelijke aanpassing
Er kan ook een homodyne uitvoering van de Weaver architectuur gemaakt worden. De eerste mengtrap mengt het signaal naar een lage IF-frequentie. Door het Weaversysteem heeft deze mengtrap geen anti-spiegelfilter nodig. In de tweede mengtrap, die analoog of digitaal wordt uitgevoerd, wordt het signaal naar baseband gemengd. Voor DRM-signalen zal de tweede mengstap opgesplitst worden in 4 mixers. Figuur 4.11 schetst deze situatie. X
X
Sine
Sine
X Cosine
+
AGC ADC
+
AGC
X
X Cosine
Sine
X Cosine
Figuur 4.11: Homodyne Weaver architectuur voor DRM
4.4.5
Voor- en nadelen
Voordelen De architectuur kent tal van voordelen: • Er moet slechts een relatief smalbandig laagfrequent signaal gedigitaliseerd worden. Dit leidt tot een goedkope en vermogeneffici¨ente ADC. • Vooral op chipniveau kent de Weaverarchitectuur een groot voordeel, aangezien er minder filters nodig zijn. • Ten opzichte van de analoge superheterodyne ontvanger zijn er in deze architectuur slechts 2 mengstappen nodig, waarvan minstens 1 analoog. Dit zal de lineariteit zeker ten goede komen.
Hoofdstuk 4. Architectuurexploratie
29
Nadelen De architectuur kent natuurlijk ook nadelen: • Het systeem is vrij ingewikkeld. De complexiteit ligt hier in de digitale signaalverwerking. Op PCB-niveau zal de superheterodyne ontvanger heel wat eenvoudiger te realiseren zijn.
4.5
Demonstratiebordje: gemengde superheterodyne ontvanger met behulp van FPGA
Met de bagage verkregen uit de studie van vorige architecturen, wordt er een demonstratiebordje gemaakt dat vrij snel te realiseren is. Hiervoor zullen er componenten uit de digitale heterodyne ontvanger worden hergebruikt.
4.5.1
Algemeen principe
Figuur 4.12 toont de uiteindelijke realisatie van de DRM-ontvanger. Het grijze gedeelte behoort tot INTEC design thesis 1, het zwarte gedeelte van de tekening werd in het kader van deze scriptie gemaakt.
Figuur 4.12: Demonstratiebordje
De ontvanger is van het superheterodyne type, waarbij het signaal eerst naar boven wordt gemengd. De menging naar beneden gebeurt voor een deel analoog en voor een deel digitaal. Dit ontwerp kan zowel getest worden met de pc als met het syteem besproken in INTEC design thesis 3.
4.5.2
Werking
Het AM- of DRM-signaal wordt opgevangen door de antenne. Het signaal wordt gemengd naar een hogere frequentie, nl. 45 MHz. Merk op dat er geen filter voor deze mengstap wordt
Hoofdstuk 4. Architectuurexploratie
30
geplaatst. De resonante antenne fungeert immers als banddoorlaatfilter, die de spiegelfrequenties onderdrukt. Het signaal rond 45 MHz wordt versterkt met behulp van een regelbare versterking. Daarna gaat het signaal door een smal kristalfilter. Dit kristalfilter laat het signaal rond 45 MHz door en heeft een 3dB-bandbreedte van 30 kHz. Het kristalfilter werkt veel stoorsignalen voor het vervolg van het systeem weg. Zo filtert het ook de spiegelfrequenties voor de volgende mengstap weg. Na deze filterstap wordt het signaal nog eens versterkt. De tweede mengtrap mengt het signaal naar 5 MHz. Het signaal wordt versterkt aan de hand van een regelbare versterker. Tenslotte wordt het signaal gefilterd aan de hand van een banddoorlaatfilter met een 3dB-bandbreedte van 2 MHz. Dit banddoorlaatfilter fungeert als een anti-aliasfilter. Het signaal kan aan 20 MSamples/s gesampled worden. Na het filter vindt zich de vermogendetectie plaats, die de regelbare versterkers aanstuurt. Daarna volgt de analoog-naar-digitaalconversie. In het digitale domein zal het signaal naar 12 kHz gemengd worden. Tevens vindt er zich een hersampling naar 48 kSamples/s plaats.
4.5.3
Vrijheidsgraden en verdere informatie
In deze architectuur zijn er tal van vrijheidsgraden. Enkele van de vrijheidsgraden zijn al in bovenstaande tekst verwerkt. Mits deze architectuur helemaal is uitgewerkt in het kader van deze scriptie en INTEC design thesis 1, is elke vrijheidsgraad natuurlijk ingevuld. De vrijheidsgraden van het grijze gedeelte uit Figuur 4.12 worden in het kader van INTEC design thesis 1 ingevuld en gemotiveerd. Voor deze scriptie zijn er de volgende vrijheidsgraden: • De keuze van de vermogendetector. Dit wordt toegelicht in hoofdstuk 7. • De ADC. Er werd gekozen om de ADC uit de digitale ontvanger te hergebruiken. Meer informatie valt te vinden in hoofdstuk 5. • De implementatie in FPGA. Deze is uitgewerkt in hoofdstuk 12 In deze scriptie werd onderzocht of het 45-MHz kristalfilter voldoet aan de speficaties voor DRM. Dit is in 8 uitgewerkt.
4.5.4
Voor- en nadelen
Voordelen • Er zijn minder analoge mixers in vergelijking met de volledig analoge ontvanger. De lineariteit van het systeem is dus veel groter. • Het signaal dat gedigitaliseerd moet worden is smalbandig. De samplerate en het aantal bits kan dus lager gekozen worden dan voor de digitale ontvanger. In hoofdstuk 5 wordt hier verder op ingegaan.
Hoofdstuk 4. Architectuurexploratie Nadelen • Het gebruik van een digitaal deel verhoogt de complexiteit.
31
Hoofdstuk 5
De Analoog naar Digitaal Convertor 5.1
Inleiding
Zoals uit het hoofdstuk ’Wat is DRM?’ al bleek, zal een DRM-zender digitale informatie verzenden met behulp van de modulatietechniek COFDM. Het woord digitaal speelt hierbij dus een belangrijke rol. Verwijst het niet naar de gebruikte geavanceerde broncoderingstechnieken als AAC of SBR, dan verwijst het wel naar de foutcorrigerende codes die worden toegepast om de BER te kunnen verhogen. Bij demodulatie van een DRM-signaal is dit zeker niet anders. Het analoge DRM-signaal zal op een bepaald ogenblik tijdens de demodulatie gedigitaliseerd moeten worden. Hiervoor wordt een ADC (Analoog naar Digitaal Convertor) gebruikt. In dit hoofdstuk zal het ontwerp van zo een systeem met oog op een DRM-toepassing uitgebreid besproken worden.
5.2
Systeemvereisten
Wanneer een analoog signaal opgeslagen wordt in digitale vorm, moet dit niet enkel bemonsterd worden. Een bemonsterd analoog signaal heeft nog steeds een oneindig aantal bits nodig om voorgesteld te worden, aangezien een analoog signaal een continu¨ um aan waarden kan aannemen. Het analoog signaal zal dus ook gekwantiseerd moeten worden. Hierbij rijzen uiteraard een paar vragen. Wat is de noodzakelijke samplerate? Welke nauwkeurigheid, uitgedrukt in bps (bit per sample), is noodzakelijk om demodulatie mogelijk te maken? Welke klokoscillator zal gebruikt moeten worden? Bij het beantwoorden van deze vragen speelt het vooropgestelde systeem een grote rol. In het hoofdstuk over architectuurexploratie werden een paar mogelijke alternatieven voorgesteld. Deze kunnen voor de digitalisering grotendeels opgedeeld worden in 2 groepen, namelijk smal- en breedbandsystemen. De naam verwijst naar de bandbreedte die gedigitaliseerd moet worden. Bij een smalbandsysteem mag verondersteld worden dat enkel de gewenste kanaal gedigitaliseerd wordt, waarbij stoorsignalen op een analoge manier sterk onderdrukt 32
Hoofdstuk 5. De Analoog naar Digitaal Convertor
33
worden. Bij breedbandsystemen is dit niet het geval. Dit heeft belangrijke gevolgen voor de digitalisering. In deze paragraaf zullen bovenstaande vragen beantwoord worden voor elk van deze systemen. Een eerste architectuur maakt gebruik van een superheterodyne ontvanger. Hierbij wordt het gewenste DRM-signaal met behulp van een kristalfilter met bandbreedte 30 kHz uit het volledige spectrum gefilterd, waarna het door de ADC gedigitaliseerd wordt. Dit ontwerp kan dus bij de smalbandsystemen ingedeeld worden. Aangezien dit systeem een bandbreedte heeft van 30 kHz, is er volgens Nyquist een samplefrequentie nodig die meer dan 60 kHz bedraagt. Wel moet er een lichte foutmarge in rekening gebracht worden omdat ideale filters in de praktijk niet realiseerbaar zijn. Toch mag de samplerate niet te hoog oplopen. Een hoge samplerate heeft namelijk een hoog vermogenverbruik, een grote kostprijs en een hoge gevoeligheid aan ruis en klokjitter tot gevolg. Een lage samplerate geeft dan weer zware eisen voor het anti-aliasingfilter aangezien dit steiler wordt. Hier lijkt 100 ksps een mooi compromis te zijn. Hiervoor kan gemakkelijk een anti-aliasingfilter geproduceerd worden. Nu reeds een samplerate bepaald werd moet het aantal bits per sample, het dynamisch bereik, ook nog vastgelegd worden. Om dit aantal te bepalen wordt eerst de gewenste SNR (signaal-totruisverhouding) gezocht die nodig is voor de demodulatie van DRM. Hieruit wordt de SNR van de ADC bepaald waarbij de invloed van de ADC verwaarloosbaar moet zijn ten opzichte van de noodzakelijke SNR. Deze SNR wordt dan via onderstaande formule omgezet in een aantal bit n. [16] SN RdB = 6, 02 n + 1, 761 (5.1) Er is 20-25 dB SNR nodig om DRM succesvol te kunnen demoduleren. Stel dat er zich wegens het smalbandsysteem geen stoorsignalen in de doorlaatband bevinden. Wil de SNR van de ADC verwaarloosbaar zijn ten opzichte van de SNR van het te digitaliseren signaal, dan blijkt 6 dB extra meer dan voldoende te zijn. De minimale SNR van de ADC komt dus op 31 dB. De bovenstaande formule zet dit om naar 5 bit. Aangezien 8 bit echter een veel voorkomende waarde is, lijkt dit de beste keuze. Hierbij wordt verondersteld dat de ADC maximaal uitgestuurd wordt. Rekening houdend met de imperfectie van de AGC blijkt 8 bit nog steeds voldoende te zijn. In een tweede architectuur zal de kanaalselectie en demodulatie digitaal gebeuren. Hiervoor wordt de volledige DRM-band, 500 kHz tot 27 MHz, gedigitaliseerd. Dit systeem kan ter hoogte van de digitalisering als een breedbandsysteem geklasseerd worden. Opnieuw kan beroep gedaan worden op Nyquist om de samplefrequentie te bepalen. De informatiebandbreedte wordt hier afgerond op 30 MHz. Bij een samplefrequentie van 80 MHz vallen ADCchips en kristaloscillatoren snel te vinden. In het hoofdstuk filterontwerp zal blijken dat een anti-aliasingfilter hiervoor, dus een filter dat voldoende onderdrukt bij 80-30 = 50 MHz, relatief eenvoudig te produceren valt. In de berekeningen van het dynamische bereik zal deze
Hoofdstuk 5. De Analoog naar Digitaal Convertor
34
keer wel rekening moeten gehouden worden met stoorsignalen. Naast DRM-signalen bevinden zich ook de sterke AM-signalen in de doorlaatband. Er moet dus extra dynamisch bereik voorzien worden om de demodulatie van DRM mogelijk te maken. Er zal namelijk steeds voor worden gezorgd dat het sterkste (stoor)signaal de ADC niet zal oversturen. Indien een veel zwakker signaal gedemoduleerd moet worden zijn dus veel meer bits noodzakelijk om met voldoende nauwkeurigheid het zwakke signaal voor te kunnen stellen, zonder dat de ADC overstuurd wordt door het sterkere signaal. Hiervoor wordt 40 `a 50 dB extra SNR voor voorzien. Dit levert een SNR van 70 `a 80 dB op voor de volledige ADC wat overeenkomt met 14 bit. In het hoofdstuk over architectuurexploratie werd dieper ingegaan op de architectuurkeuze en de keuze van de ADC specifiek. Hoewel een smalband-ADC in veel gevallen beter zou zijn gaat onze keuze voor het prototype uit naar een breedband-ADC. Dit zal toelaten beide systemen uit te testen. De gebruikte ADC-chip zal de monsterwaarden uitsturen op vaste tijdstippen. Een klokoscillator genereert een blokgolf met vaste frequentie. De ADC zal bijvoorbeeld op de stijgende flank het signaal gaan bemonsteren en het daarna digitaal naar buiten brengen. Uiteraard is ook die klokoscillator niet oneindig nauwkeurig. De mogelijke frequentiefouten kunnen onderverdeeld worden in frequentiestabiliteit over een lange tijd en jitter, welke de frequentiestabiliteit op korte termijn is. Aangezien de lange-tijdsfrequentiestabiliteit een heel trage frequentieverschuiving tot gevolg heeft die de software met gemak kan wegwerken, mag deze invloed verwaarloosd worden. De jitter kan in de eerste plaats voorgesteld worden als een random variatie, dus als ruis. Er kan dus ook een SJR (signaal-tot-jitter-verhouding) gedefinieerd worden. Wanneer deze 6 dB groter is dan de totale SNR van de ADC, mag de jitter verwaarloosd worden. De onderstaande formule geeft de relatie tussen de SJR en de maximaal toegelaten faseruis. [16] 1 (5.2) SJRdB = 20 log 2πfmax ta Hierbij worden fmax en ta respectievelijk de maximale ingangsfrequentie en de maximale rmswaarde van de tijdsvariatie van de jitter. In deze scriptie wordt 80 dB SJR als voldoende aangenomen. Wanneer fmax vastgelegd wordt op 30 MHz, wordt ta gelijk aan 530 fs.
5.3
Keuze van de componenten
Nu een lijstje met vereisten opgesteld werd, moet op zoek gegaan worden naar componenten die hieraan kunnen voldoen. In de eerste plaats wordt gezocht naar een ADC-chip en een klokoscillator. In deze scriptie werd gekozen voor de LTC2249 van Linear Technology Corporation. Deze 80 Msps 14-bit-ADC onderscheidt zich vooral van de andere ADC’s door zijn lage vermogenverbruik. Waar dit bij vele ADC’s naar 1,5 W gaat, doet de LTC2249 het
Hoofdstuk 5. De Analoog naar Digitaal Convertor
35
met zijn 222 mW heel wat beter. Verder heeft deze ADC een mooie lineariteit, wat blijkt uit zijn 90 dB SFDR (Spurious Free Dynamic Range) en 73 dB SNR bij een ingangssignaal van 5 MHz en een bandbreedte van 575 MHz. [17] Dit voldoet zeker aan de vereisten. Ook bevat de chip een klok duty-cycle-stabilisator die aangeschakeld kan worden om de invloed van de jitter op het kloksignaal te verminderen. Verder kan deze chip in verschillende modes geschakeld worden. Zo kan gekozen worden tussen een binaire of 2-complementsvoorstelling van de uitgang en kunnen de grenzen van het ingangssignaal aangepast worden. Het maximale AC-ingangsbereik kan gekozen worden tussen 1 Vpp en 2 Vpp. In deze scriptie werd er gekozen voor een 2-complementsvoorstelling en een AC-ingangsbereik van 1 Vpp. Een belangrijk gegeven van de LTC2249 is dat deze een differenti¨ele ingang heeft. Om dit maximaal te benutten wordt het gebruik van een differenti¨ele versterker aangeraden. De ADCchip kan hiervoor zelf het common-mode signaal leveren. In deze scriptie werd er gekozen voor de AD8138. Deze differenti¨ele versterker wordt gekenmerkt door zijn lage distorsie (OIP3 van 35 dBm bij 20 MHz en spanningsversterking 1) en kan net als de chip gevoed worden met een spanning van 3,3V. Ook de slew-rate van 950 V /µs is voldoende voor deze toepassing. [18] Het vinden van een 80 MHz klokoscillator die aan de vereisten voldeed bleek heel wat minder eenvoudig te zijn. Uiteindelijk werd er gekozen voor de CB3LV-3C-80M0000-T. Dit is een kristaloscillator van CTS. Deze klokoscillator wordt ook hier gevoed met een spanning van 3,3 V en heeft een frequentiestabiliteit van 50 ppm. [19] Een 80-MHz klokoscillator met maximale fasejitter kleiner dan 500 fs blijkt moeilijk te vinden. De kwaliteitsvermindering ten gevolge van fasejitter die beperkt blijft tot 1 ps blijkt goed genoeg te zijn ten opzichte van de SNR van de ADC. Verder kan deze kristaloscillator een capacitieve last van 30 pF aansturen. Dit is voldoende voor de 3 pF ingangscapaciteit van de ADC-klokingang. De klokoscillator en de ADC-chip zullen de FPGA moeten aansturen. Er zullen 16 bits doorgegeven worden, namelijk een kloksignaal, een overflowbit en 14 databits. Het lijkt daarom beter een 16-bit buffer toe te voegen die de FPGA zal aansturen. In deze scriptie werd gekozen voor de 74LCX162244 16-bit buffer/line driver met 26 Ω in de uitgang om opslingering ten gevolge van parasitaire impedanties te dempen. [20]
5.4
Verdere uitwerking van de schakeling
Eenmaal de belangrijkste componenten gekozen zijn kan overgegaan worden tot het construeren van een prototype. In figuur 5.1 wordt het schema van een mogelijk ADC-prototype weergegeven. Deze schakeling kan in meerdere delen opgesplitst worden. Uiteraard is er eerst de belangrijke scheiding tussen het analoge en het digitale deel, elk met hun eigen voedingcircuit. Het analoge deel kan dan verder worden ingedeeld in een versterkerblok en een ADC-blok. Het digitale deel bestaat, naast zijn aparte voedingscircuit, uit de 16-bit-buffer en
Hoofdstuk 5. De Analoog naar Digitaal Convertor
36
de databussen die in de figuur voorgesteld worden door de grijze blokken. In deze paragraaf worden al deze deelblokken apart behandeld.
Figuur 5.1: Schema van de ADC-schakeling
Het eerste blok dat het ingangssignaal tegenkomt, is het differenti¨ele versterkerblok. Zoals al eerder werd aangehaald heeft de ADC-chip een differenti¨ele ingang. Aangezien het ingangssignaal single-ended is, moet dit eerst worden omgezet. In de datasheet van de LTC2249 wordt een mogelijke ADC-aansturing voorgesteld, deze wordt weergegeven in figuur 5.2.
Hoofdstuk 5. De Analoog naar Digitaal Convertor
37
Figuur 5.2: Aansturing van de ADC
Hierbij zal het single-ended ingangssignaal omgezet worden in een differentieel signaal waarbij de common mode spanning verkregen wordt uit de LTC2249. De toegevoegde capaciteiten zorgen voor het stabiel blijven van deze spanning. Heel belangrijk in de bovenstaande figuur is het filter gevormd door de capaciteit van 12 pF en de twee 25 Ω weerstanden. Een eenvoudige berekening leert dat de kantelfrequentie zich rond de 500 MHz bevindt. Bijgevolg zal dit filter het ingangssignaal rond 5 MHz niet be¨ınvloeden. Het heeft echter een ander doel. Een ADC-ingangstrap heeft een ingangsimpedantie die snel schakelt tussen hoogimpedant en laagimpedant. Dit filter heeft de bedoeling om de harmonischen van de schakelfrequentie vlak buiten de chip kort te sluiten en deze stoorsignalen dus tot de chip te beperken. [17] In figuur 5.2 wordt een differenti¨ele versterker verondersteld met een welbepaalde constante versterking. Wanneer dit uitgevoerd wordt met de AD8138 differenti¨ele versterker zal feedback rond de versterker noodzakelijk zijn. Figuur 5.3 geeft een voorbeeldschakeling uit de datasheet van de AD8138. [18]
Figuur 5.3: Voorbeeldschakeling differenti¨ele versterker
Verwaarlozen we de capaciteiten CF , dan zullen de weerstanden RF en RG niet enkel de spanningsversterking maar ook de single-ended naar differenti¨ele ingangsimpedantie bepalen.
Hoofdstuk 5. De Analoog naar Digitaal Convertor
38
Deze worden: [18] RF RG
AV = RIN =
RG 1−
RF 2(RF +RG )
(5.3) (5.4)
In deze scriptie wordt de differenti¨ele versterker zuiver als single-ended naar differentieel omzetter gebruikt. Als versterking wordt dus 1 gekozen. Dit ook om een bandbreedte van 40 MHz tot het ADC-bord toe te laten. Wanneer de versterking stijgt zal de bandbreedte omgekeerd evenredig hiermee gaan dalen. Bij een versterking 5 zal de 40 MHz bandbreedte al in het gedrang komen. Bij versterking 1 worden de formules: RF = RG = R
(5.5)
4R (5.6) 3 Vaak wordt de ingangsimpedantie bij HF-elektronische systemen vastgelegd op 50 Ω. Ook hier is dit niet anders. Zowel in het breedband- als in het smalbandsysteem komt voor de ADC een anti-aliasingfilter. Het filter voor het breedbandsysteem wordt afgeleid in het hoofdstuk filterontwerp. Dit filter moet afgesloten worden op 50 Ω. Nu blijkt dat R, dus RF en RG , gelijk moet zijn aan 36 Ω om deze ingangsimpedantie te verkrijgen. Uit tests blijkt dat de AD8138 de nodige stroom niet meer kan leveren om de uitgang hoog te krijgen. Het uitgangssignaal zal dus gaan clippen tegen de massa wat sterke distorsie met zich meebrengt. In de datasheet van de AD8138 wordt vaak een waarde van 499 Ω genomen voor zowel RF als RG . Deze weerstanden werden hier ook vergroot van 36 Ω tot de waarde 470 Ω. Dit heeft een ingangsimpedantie van 626 Ω tot gevolg. Er zal zich dus een mismatch voordoen. Deze kan tegengegaan worden door het filter aan te passen, een weerstand van 56 Ω te plaatsen van de ingang naar de grond of nog een matching circuit toe te voegen. RIN =
Eens het signaal door het differenti¨ele versterkerblok gegaan is komt het in de ADC-chip terecht. Het schema van het ADC-blok was heel eenvoudig te maken. De datasheet van de LTC2249 zegt heel duidelijk wat met welke pinnen verbonden moet worden. Het beste voorbeeld hiervan is de condensatorketen aan de pinnen REFH en REFL. Deze wordt op verschillende plaatsen in de datasheet letterlijk beschreven. Ook moeten de MODE- en SENSE-pin aangestuurd worden. Deze regelen de digitale vorm van uitgangssignaal, het instellen van de duty-cycle-stabilisator en de maximaal te meten amplitude van het ingangssignaal. In figuur 5.1 worden deze ingesteld met behulp van de schakelaars S1 en S2. Ook het plaatsen van de kristaloscillator in het schema blijkt geen enkel probleem te zijn. Na het digitaliseren komt het datasignaal in het digitale blok. De databits, de klok en de overflowbit worden dan busgewijs naar de 16-bit buffer geleid. Deze zal de signalen versterken zodat deze via de hirose 100-pin connector het FPGA-bord kunnen bereiken. De moeilijkheid
Hoofdstuk 5. De Analoog naar Digitaal Convertor
39
zit hierbij in de aansluiting met het FPGA-bord. In deze scriptie werd gebruik gemaakt van het Xilinx UG230 Spartan-3E testbord. Bij het onderzoeken van de user guide van dit bord valt al snel op dat er slechts een beperkt aantal pinnen van de 100-pin connector effectief bruikbaar zijn. Ook zijn veel van deze bruikbare pinnen intern doorverbonden met andere connectoren uit dit testbord. Uiteindelijk is het wel nog gelukt 16 vrije signaalpinnen te verkrijgen. De 14 datapinnen kregen de nummers A26-A39, de overflowpin het nummer A44 en de klok kreeg pin B46 toegewezen. Dit laatste is de klokingang van het FPGA-bord. Een laatste grote moeilijkheid is het aanleggen van de voedingscircuits en scheiden van de grond. Hierover bevinden zich in de literatuur vaak tegenstrijdige meningen. In deze scriptie werd vooral gebruik gemaakt van de informatie gevonden in cursussen van Analog Devices. [16] Hierin staat dat het aangewezen is om 2 gescheiden voedingsnetten te voorzien die ver van de chip samenkomen, zelfs als analoge en digitale voeding op dezelfde spanning staan. Dit om het mooie analoge net niet de vervuilen met pulsen gegenereerd door de digitale chips. Dan zit het probleem natuurlijk in de voedingspinnen te verdelen over de netten. Hierbij worden de klokoscillator, differenti¨ele versterker en de analoge voedingspinnen van de ADC met het analoge net verboden. De digitale voedingspinnen van de ADC en de 16-bit buffer worden verbonden met het digitale voedingsnet. Ook ook zal er een scheiding gemaakt worden tussen de analoge en digitale grond. Aangezien deze 2 grondvlakken niet ten opzichte van elkaar mogen zweven, elk systeem heeft namelijk maar 1 grond, worden deze zo ver mogelijk van de chip samengevoegd. Vaak gebeurt dit in het voedingsdeel van de PCB. Een tekening in de volgende paragraaf zal dit verduidelijken. Ook hier moet er een keuze gemaakt worden welke chip op welk grondvlak terechtkomt. Hierbij moet de ADC-chip compleet op het analoge grondvlak staan. Het grondvlak onder de chip wordt beter niet gescheiden, en ook als sterpunt is dit niet aangewezen aangezien er dan extra stromen onder de chip kunnen vloeien. Bij de andere chips is de toewijzing aan de grondvlakken veel meer intu¨ıtief. Naast de onderverdeling in voedingsnetten en massavlakken is de lokale energievoorziening ook belangrijk. Er worden 2 aparte spanningsregelaars gebruikt, elk van het type LM317, die met de nodige weerstanden worden ingesteld op een uitgangsspanning van 3,3 V. Deze zullen een ingangsspanning moeten krijgen die minimaal 4,5 - 5 V is wil er geen distorsie optreden in het uitgangssignaal. Verder zorgen de regelaars in combinatie met de elco’s en de smoorspoelen dat storingen onderdrukt worden aan de voeding. Aan de voedingspinnen van de chips wordt de voedingsspanning ontstoord met behulp van 100 nF capaciteiten.
Hoofdstuk 5. De Analoog naar Digitaal Convertor
5.5
40
Layout van de schakeling
Figuur 5.4: Layout van de ADC-schakeling
Na het ontwerp van het schema kan overgegaan worden tot het layouten. In figuur 5.4 wordt de layout van het prototype afgebeeld. Deze print is dubbelzijdig waarbij beide vlakken als grondvlak worden gebruikt. De massavlakken worden niet voorgesteld op de figuur maar worden hier aangeduid met behulp van een rand. Dit zal, samen met figuren 5.5(a) en 5.5(b), de situatie van de grondvlakken enigzins verduidelijken. Bemerk dat er in de layout, boven in de figuur onder de 100-pin-connector, een grote connector getekend staat die niet op het schema in figuur 5.1 voorkomt. Die connector staat daar enkel voor testdoeleinden. Wanneer de schakeling uitgemeten moet worden met een logic analyzer blijkt een 100-pin-connector niet erg handig te zijn. Om die reden werd op het prototype een pin-header toegevoegd.
5.6
Testen van de schakeling
5.6.1
Debuggen van de schakeling
Bij het testen van deze schakeling is er een probleem aan het licht gekomen. De klokoscillator bleek heel onstabiel te oscilleren. Blijkbaar is de ene massapin voorzien op de verpakking van de klokoscillator niet voldoende om de klok stabiel te houden. Gelukkig is de metallische verpakking verbonden met deze massapin. Een eenvoudige extra soldeerverbinding van het geleidende omhulsel naar het grondvlak via een draadje lost dit probleem op. Hierna
Hoofdstuk 5. De Analoog naar Digitaal Convertor
41
functioneerde de PCB naar wens. Hieronder wordt de uiteindelijke PCB voorgesteld.
(a) De toplaag van de PCB
(b) De bottomlaag van de PCB
Figuur 5.5: Foto’s van het ADC-prototype
5.6.2
Karakterisering van de schakeling
In dit deel van het hoofdstuk wordt het prototype ge¨evalueerd. Hiervoor worden de resultaten van het prototype vergeleken met deze van het AD6645-evaluatiebord. Dit laatste bord bevat een kant en klare 14-bit ADC met een samplefrequentie van 80 MHz. Hiervan staan de karakteristieken neergeschreven in de datasheet van de AD6645. Dit levert een goed referentiepunt voor de metingen. Bij het kiezen van de metingen werd er gebruik gemaakt van de informatie verkregen uit [16]. Bij deze metingen werd er met dezelfde sinusgenerator een sinus met gelijke frequentie aan de beide ADC-bordjes aangelegd. De amplitude van de sinus werd hierbij zo gekozen dat de beschouwde ADC maximaal uitgestuurd werd. Daarna werd het digitale resultaat gelezen
Hoofdstuk 5. De Analoog naar Digitaal Convertor
42
met de logic analyzer. De Agilent HP 1661A logic analyzer heeft een geheugen van 4096 samplewaarden, een bandbreedte van 100 MHz en meer dan 16 ingangen, wat voldoende is voor de metingen. Nadien werden de samples doorgestuurd naar de PC en ingelezen in Matlab. Wanneer een sinus aan een ADC aangelegd wordt, is het ook de bedoeling om een sinus terug te vinden in het digitale uitgangssignaal. Een eerste visuele inspectie van het tijdssignaal zal dit ook bevestigen. Uiteraard rijst de vraag in hoeverre dit signaal een ideale sinus benadert. Deze informatie kan heel eenvoudig uit het uitgangsspectrum afgelezen worden. Hieronder worden de vermogenspectra na digitalisatie met beide ADC-bordjes van een sinus met frequentie 4,7 MHz weergegeven. Hierbij wordt gebruik gemaakt van een logaritmische schaal. Om leakage-effecten tegen te gaan werd gebruik gemaakt van een Hanningvenster.
(a) Meting met het evaluatiebord
(b) Meting met het prototype
Figuur 5.6: De uitgangsspectra van een gedigitaliseerde sinus
De 2 grote pieken in de spectra wijzen duidelijk op een sinuso¨ıdaal signaal. De SFDR (Spurious Free Dynamic Range) is bij het prototype 130 dB waar dit bij het AD6645-evaluatiebord gelijk is aan 115 dB. Het gefabriceerde prototype heeft dus een betere SFDR dan het evaluatiebord van Analog Devices. Dit zal ook bij de andere meetfrequenties zo blijven. Een veelgebruikte maat voor de kwaliteit van een ADC is ENOB (Effective Number of Bits) of het aantal bits dat foutloos voorgesteld wordt. Er worden in de literatuur verschillende manieren voorgesteld om het ENOB van een ADC te vinden. Hierbij heeft de berekeningswijze vaak een enorme invloed, dus meerdere bits. In deze scriptie wordt om deze reden het prototype opnieuw vergeleken met het evaluatiebord. Om het ENOB te berekenen wordt een sinuso¨ıdaal signaal met maximale amplitude gedigitaliseerd tot het signaal f(k) bestaande uit N samples. Daarna zal hierop in het tijdsdomein een bemonsterde sinus gefit worden met behulp van de Microsoft Excel Oplosser. Als sinus
Hoofdstuk 5. De Analoog naar Digitaal Convertor
43
wordt de volgende functie gebruikt: s(k) = A sin(ωkT + φ) + B
(5.7)
Hierbij stellen A, ω, T, φ en B respectievelijk de amplitude, pulsatie, sampleperiode, beginfase en DC-offset voor. Wanneer de fitting gebeurd is kan de SNR gevonden worden door: ES =
A2 2
(5.8)
PN −1 EN =
(f (k) − s(k))2 N ES = 10 log EN
k=0
SN RdB
(5.9) (5.10)
Deze SNR kan ook in bitvorm geschreven worden door de volgende formule toe te passen: SN RdB = 6, 02 n + 1, 761
(5.11)
Hierbij stelt n het aantal effectieve bits voor. Op deze wijze kan voor beide ADC-bordjes een ENOB bepaald worden. Het evaluatiebord heeft een ENOB van 7,6 bits, waar het prototype het opnieuw beter doet met 8,4 bits. Uit beide tests blijkt dat dat het prototype beter scoort dan het evaluatiebord van de AD6645. Aangezien dit bord aan alle vereisten voldoet, mag met zekerheid gesteld worden dat dit ook zal gelden voor het prototype.
Hoofdstuk 6
Het Anti-Aliasing Filter 6.1
Filterspecificaties
In dit hoofdstuk wordt een anti-aliasing filter ontworpen voor een DRM-toepassing bij samplefrequentie van 80 MHz. De maximale nuttige DRM-frequentie bedraagt hierbij ongeveer 30 MHz. De DRM-band zal dus op digitale wijze reproduceerbaar worden wanneer het antialiasing filter een grote verzwakking heeft bij frequenties groter dan 50 MHz. De actieve antenne geeft een verzwakking van 40 dB buiten de DRM-band, een extra minimale verzwakking van 40 dB vanaf 50 MHz door het anti-aliasing filter zal voldoende zijn om de aliasingeffecten voldoende te onderdrukken. Hieronder worden de frequentie-eisen voorgesteld in een gabariet. [21]
Figuur 6.1: Frequentiegabariet
Een laagdoorlaatfilter is in dit frequentiebereik eenvoudig te maken met behulp van discrete LC-componenten. Zo een realisatie wordt echter niet enkel bepaald door het gewenste fre44
Hoofdstuk 6. Het Anti-Aliasing Filter
45
quentieverloop van het filter, maar ook door de afsluitimpedanties waar het filter op wordt ontworpen. Er zal gebruik gemaakt worden van afsluitimpedanties van 50 Ohm aangezien dit de uitgangsimpedantie van de antenne en de ingangsimpedantie van het AGC-blok vormt. Dit laatste is ook een goede keuze aangezien 50 Ohm een courante waarde is bij hardwareontwerp. In dit hoofdstuk zullen filters besproken worden aan de hand van hun amplitude-, fase- en groepsvertragingskarakteristiek.
6.2
5e orde Chebychev filter
Een eerste mogelijk anti-aliasing filter is een 5e orde Chebychev filter. Een Chebychev filter heeft als voordeel dat het heel steil is in de stopband. Bij vergelijking met bijvoorbeeld een Butterworth filter valt op dat bij beide filters de maximale daalsnelheid in de limiet bepaald zal worden door de filterorde. De wijze waarop deze maximale daalsnelheid wordt bereikt verschilt echter van filter tot filter. Dit wordt duidelijk gemaakt in Figuur 6.2. De weergegeven filters zijn beide van vijfde orde. Hieruit blijkt duidelijk dat om dezelfde daling te bekomen bij een bepaalde frequentie (in het voorbeeld 0,5) het Butterworth filter sneller moet beginnen dalen dan het Chebychev filter. Voor dezelfde eisen zal een Butterworth filter dus een hogere orde moeten bezitten dan een Chebychev filter. De filterorde zal vooral een beperking geven in uitvoerbaarheid. Bij elke stijging in orde worden nieuwe componenten aan het filter toegevoegd, wat meer mogelijkheden tot fouten geeft, bijvoorbeeld door toleranties of Q-factoren van de componenten zelf. Een Chebychevfilter is dus in dit opzicht een geschikte keuze. Dit filter heeft wel als nadeel dat er een rimpel in de doorlaatband optreedt. Deze zal gespreid worden over 30 MHz. Wanneer een frequentieband met een bandbreedte van 10 kHz beschouwd wordt, speelt dit een kleine rol. Toch zal indien mogelijk een rimpel worden vermeden.
Figuur 6.2: Vergelijking amplitudekarakteristiek Butterworth-Chebychev filter
Er bestaan verschillende algoritmes om LC-filters te ontwerpen, hier werd gebruik gemaakt
Hoofdstuk 6. Het Anti-Aliasing Filter
46
van de filter design toolbox van ADS (Agilent Advanced Design System). Zo werd het onderstaande filter verkregen (Figuur 6.3) met bijbehorende karakteristieken (Figuren 6.4 en 6.5).
Figuur 6.3: Ideaal 5e orde Chebychev laagdoorlaatfilter
Figuur 6.4: Ideaal 5e orde Chebychev laagdoorlaatfilter: Amplitudekarakteristiek
Figuur 6.5: Ideaal 5e orde Chebychev laagdoorlaatfilter: Groepsvertragingskarakteristiek
Uit de bovenste figuur blijkt dat het filter inderdaad aan de vereisten voldoet. De groepsvertragingskarakteristiek is zwaar golvend, al blijft dit binnen de DRM-band beperkt tot ongeveer 50 ns. Uit meting blijkt namelijk dat de piek zichtbaar op de figuur buiten de doorlaatband (tot 30 MHz) valt. Maar vooral de helling in de groepsvertragingskarakteristiek is van belang. Deze bepaalt namelijk de distorsie op het ontvangen signaal. Opnieuw moet
Hoofdstuk 6. Het Anti-Aliasing Filter
47
de bedenking gemaakt worden dat dit gaat over een band van ongeveer 30 MHz terwijl de DRM-signalen een bandbreedte bezitten van 10 kHz. De door dit filter toegevoegde distorsie op een DRM-signaal zal dus zeker beperkt blijven. Het eerste probleem bij realisatie van dit filter is het ontbreken van de exacte capaciteit- en spoelwaarden. Deze waarden moeten in het ontwerp dus vervangen worden door verkrijgbare spoel- of capaciteitwaarden, bijvoorbeeld door gebruik te maken van de E6-reeks voor capaciteiten. Uiteraard wordt dan een licht aangepast filter gerealiseerd, waarvan de eisen soms niet meer voldoen. Om dit te vermijden worden de spoelwaarden afgerond op de dichtstbijzijnde verkrijgbare waarde. Nadien worden een aantal filters gesimuleerd met licht gewijzigde capaciteitswaarden. Dit aangezien er veel minder spoelen dan capaciteiten beschikbaar zijn. Bijgevolg heeft een variatie op de zelfinducties een veel groter effect op de filterkarakteristiek dan een variatie op de capaciteitswaarden. Uiteraard wordt er wel rekening gehouden met mogelijke eigenschappen van het filter, bijvoorbeeld symmetrie. Dit heeft het volgende filter (Figuur 6.6) met bijbehorende karakteristieken (Figuren 6.7, 6.8 en 6.9 ) tot gevolg.
Figuur 6.6: Realiseerbaar 5e orde Chebychev laagdoorlaatfilter
Figuur 6.7: Realiseerbaar 5e orde Chebychev laagdoorlaatfilter: Amplitudekarakteristiek
Hoofdstuk 6. Het Anti-Aliasing Filter
48
Figuur 6.8: Realiseerbaar 5e orde Chebychev laagdoorlaatfilter: Fasekarakteristiek
Figuur 6.9: Realiseerbaar 5e orde Chebychev laagdoorlaatfilter: Groepsvertragingskarakteristiek
Na een laatste inspectie van deze filterkarakteristieken werd dit filter gerealiseerd met behulp van een stickersysteem op een geleidende plaat. De onderstaande karakteristieken (Figuren 6.10, 6.11 en 6.12) zijn het resultaat van een netwerkanalyzermeting. Uitmiddeling over 20 metingen zorgt hierbij voor een beter beeld.
Figuur 6.10: Gerealiseerd 5e orde Chebychev laagdoorlaatfilter: Amplitudekarakteristiek
Hoofdstuk 6. Het Anti-Aliasing Filter
49
Figuur 6.11: Gerealiseerd 5e orde Chebychev laagdoorlaatfilter: Fasekarakteristiek
Figuur 6.12: Gerealiseerd 5e orde Chebychev laagdoorlaatfilter: Groepsvertragingskarakteristiek
Wat opvalt in de metingen is het, op basis van de simulaties, onverwachte doorzakken van de doorlaatband bij hogere frequenties. Dit kan worden verklaard doordat er gebruik gemaakt werd van SMD-spoelen met een relatief lage Q-waarde bij 30 MHz, namelijk 50. Vanaf nu zullen deze vervangen worden door ’maxi spring air core’- reeks van Coilcraft. [22] Deze spoelen hebben een Q-factor van 110 bij 30 MHz. Wel zal er rekening gehouden moeten worden met een groot nadeel van luchtspoelen namelijk overspraak. Deze spoelen worden het best loodrecht ten opzichte van mekaar geplaatst om de overspraak te minimaliseren. Om de simulaties beter te matchen aan de realiteit heeft de fabrikant modellen van deze spoelen voorzien. Deze zullen dan ook gebruikt worden tijdens de simulaties in ADS.
6.3
7e orde Chebychev filter
Aangezien er een nieuwe spoelenreeks, met andere zelfinductiewaarden, gebruikt wordt zal de schakeling aangepast moeten worden om aan de filterkarakteristieken te voldoen. Er wordt dus een nieuw filter ontworpen. Waarom dan niet een beter filter uitproberen? Uit simulaties
Hoofdstuk 6. Het Anti-Aliasing Filter
50
blijkt dat een 7e orde Chebychev filter tot 60 dB kan verzwakken bij 50 MHz. Na aanpassen van het door ADS verkregen filter kan het onderstaande filter (Figuur 6.13) gerealiseerd worden. Ook worden de bijhorende filterkarakteristieken afgebeeld in figuren 6.14, 6.15 en 6.16.
Figuur 6.13: Gerealiseerd 7e orde Chebychev laagdoorlaatfilter
Figuur 6.14: Gerealiseerd 7e orde Chebychev laagdoorlaatfilter: Amplitudekarakteristiek
Figuur 6.15: Gerealiseerd 7e orde Chebychev laagdoorlaatfilter: Fasekarakteristiek
Hoofdstuk 6. Het Anti-Aliasing Filter
51
Figuur 6.16: Gerealiseerd 7e Chebychev laagdoorlaatfilter: Groepsvertragingskarakteristiek
De lezer zou zich kunnen afvragen waarom wij de groepsvertraging hier enkel voorstellen tot een frequentie van ongeveer 40 MHz. Als wij veel verder gaan in de stopband, komen wij op de ruisvloer terecht, welke een random fasecomponent bevat. Indien wij die fasesprongen gaan afleiden om de groepsvertraging te verkrijgen, bekomen wij enorme pieken, waardoor via herschaling van onze grafiek het interessante gedeelte tot niets herleid wordt. Opnieuw valt dit filter probleemloos te realiseren waardoor we na meting de gewenste filterkarakteristieken verkrijgen. Probleemloos” aangezien tijdens het fysisch realiseren van de ” filters er geen extra aandacht besteed werd aan het uitzoeken of bijregelen van componenten. Dit geldt voor de constructie van elk filter in dit hoofdstuk. In de amplitudekarakteristiek valt vooral de verminderde doorzakking van de doorlaatband op door het gebruik van betere spoelen. Nu al een mooi anti-aliasingfilter gevonden werd, kunnen er extra eisen aan het filter worden toegevoegd. Een groot nadeel van het Chebychev filter is de rimpel in de doorlaatband.
6.4
7e orde invers Chebychev filter
Een vlakke doorlaatkarakteristiek heeft dit nadeel niet. De fout hierbij blijkt gemakkelijk weg te kalibreren door de helling weg te rekenen. Het invers Chebychev filter is een relatief steil filter met vlakke doorlaatkarakteristiek. Ook de betere groepsvertragingskarakteristiek springt meteen in het oog. Het grote nadeel van dit filter is de rimpel in de stopband. Toch zal dit filter aan de eisen kunnen voldoen als de rimpel in de stopband niet hoger komt dan -40dB. Wordt er 20 dB speelruimte voor de stopbandkarakteristiek in rekening genomen, dan levert dit een 7e orde invers Chebychev filter op. De eerste notch wordt logischerwijs op een frequentie van 50 MHz geplaatst. ADS geeft ons:
Hoofdstuk 6. Het Anti-Aliasing Filter
52
Figuur 6.17: Ideaal 7e orde invers Chebychev laagdoorlaatfilter
Uiteraard is dit filter opnieuw niet realiseerbaar, bijgevolg worden de L- en C- waarden lichtjes aangepast. Mits gebruik te maken van de Coilcraftmodellen worden de volgende simulatieresultaten verkregen:
Figuur 6.18: Realiseerbaar 7e orde invers Chebychev laagdoorlaatfilter
Figuur 6.19: Realiseerbaar 7e orde invers Chebychev laagdoorlaatfilter: Amplitudekarakteristiek
Hoofdstuk 6. Het Anti-Aliasing Filter
53
Figuur 6.20: Realiseerbaar 7e orde invers Chebychev laagdoorlaatfilter: Fasekarakteristiek
Figuur 6.21: Realiseerbaar 7e orde invers Chebychev laagdoorlaatfilter: Groepsvertragingskarakteristiek
Dit filter werd opnieuw gerealiseerd met behulp van een stickersysteem en daarna nagemeten. Hieronder staan de verkregen karakteristieken:
Figuur 6.22: Gerealiseerd 7e orde invers Chebychev laagdoorlaatfilter: Amplitudekarakteristiek
Hoofdstuk 6. Het Anti-Aliasing Filter
54
Figuur 6.23: Gerealiseerd 7e orde invers Chebychev laagdoorlaatfilter: Fasekarakteristiek
Figuur 6.24: Gerealiseerd 7e orde invers Chebychev laagdoorlaatfilter: Groepsvertragingskarakteristiek
Hierbij kan toch een groot verschil tussen de simulaties en de werkelijke meting opgemerkt worden. De oorzaak hiervan ligt aan het gebruik van het stickersysteem. Dit werd ook bevestigd bij latere uitvoering op PCB. Toch voldoet het filter met een minimale stopbandonderdrukking van 46,9 dB aan de eisen vastgelegd in het gabariet. In de doorlaatband blijft de reflectie beperkt tot -20 dB en ligt de groepsvertraging maar liefst een grootteorde lager dan bij het Chebychevfilter wat dit filter enorm mooie eigenschappen geeft.
6.5
7e orde invers Chebychev filter met afscherming
Het gebruik van luchtspoelen kan leiden tot een vermeerdering van overspraak tussen verschillende filterdelen. De invloed hiervan werd onderzocht door schotten te gaan toevoegen tussen de verschillende spoelen. Uit de gemeten karakteristieken kon een extra onderdrukking van 1 `a 2 dB waargenomen worden. Dit is verwaarloosbaar t.o.v. de 46 dB onderdrukking door het filter. In het finale ontwerp zal dit dan ook niet worden toegepast.
Hoofdstuk 6. Het Anti-Aliasing Filter
55
Er werd uiteindelijk gekozen voor het 7e orde invers Chebychev laagdoorlaatfilter aangezien dit een mooie doorlaatkarakteristiek koppelt aan voldoende onderdrukking in de stopband. Om dit hoofdstuk in schoonheid af te sluiten wordt hieronder een foto van de testschakelingen weergegeven (Figuur 6.25).
Figuur 6.25: De testschakelingen
Hoofdstuk 7
De Automatic Gain Controller 7.1
Inleiding
Net als veel communicatiesignalen lijden ook DRM-signalen aan fading. Dit is in de eerste plaats zichtbaar in de positieve en negatieve interferentiepieken in het signaalvermogen. Om de vermogens van deze digitaal te demoduleren signalen constant te houden, moet de frontend over een AGC-functionaliteit (automatic gain control) beschikken. Een AGC bestaat grotendeels uit een regelbare versterker, een vermogendetector en een terugkoppelpad. Dit wordt weergegeven in figuur 7.1. Zo een schakeling valt op verschillende wijzen uit te voeren, toch blijft de werking grotendeels dezelfde. Het uitgangsvermogen wordt met behulp van een detector omgezet naar een signaal dat teruggevoerd wordt naar de regelbare versterker. De regelbare versterker zal een versterking geven die omgekeerd evenredig is met het vermogen van het uitgangssignaal. Wanneer het uitgangssignaal dus sterker wordt zal de versterking dalen wat terug een vermindering van uitgangsvermogen tot gevolg heeft. De omgekeerde evenredigheid kan ofwel uitgevoerd worden in de detector ofwel in de regelbare versterker.
Figuur 7.1: Werking van een AGC
In dit hoofstuk worden een paar mogelijke realisaties van een AGC-schakeling weergegeven.
56
Hoofdstuk 7. De Automatic Gain Controller
7.2
57
AGC-schakeling met behulp van de AD8368
Bij het ontwerp van een AGC-schakeling is het zoeken van een goede regelbare versterker een mooie startpositie. De AD8368 van Analog Devices blijkt met zijn goede lineariteit, 800 MHz bandbreedte, 50 Ohm ingangs- en uitgangsimpedantie en versterkingbereik van -12dB tot 22dB zeker aan de eisen te voldoen. Wat meer is, deze chip heeft als hoofdtoepassing het gebruik in een AGC-schakeling. Dit kan ook afgeleid worden door de aanwezigheid van een ge¨ıntegreerde rms-detector. Wat deze chip grotendeels anders maakt van vele andere on chip regelbare versterkers is dat de versterking analoog en trapvrij ingesteld wordt. [23]
Figuur 7.2: Voorbeeldschakeling AGC
In de datasheet van de AD8368 staat de AGC-voorbeeldschakeling weergegeven in figuur 7.2. Hierbij zal het RF-ingangssignaal via de ingangspin (INPT) met ingangsimpedantie 50 Ohm naar de regelbare versterker worden geleid. Deze zal dit signaal gaan versterken en leiden naar de uitgangspin (OUTP) met dezelfde uitgangsimpedantie. Hier begint het AGC-verhaal uiteraard pas. De ge¨ıntegreerde rms-detector wordt gevormd door de structuur tussen de pinnen DETI (Detector In) en DETO (Detector Out). Een sterk vereenvoudigd model wordt weergegeven in figuur 7.2. Het DETI signaal wordt gekwadrateerd, gaat door een laagdoorlaatfilter en wordt vergeleken met een referentie DC-signaal van 63 mV. Het resulterende verschilsignaal zal na enige bewerking uitgebracht worden aan de DETO-uitgang. Even een illustratie: Stel dat het uitgangssignaal een sinuso¨ıdale vorm heeft en aan de DETIpin wordt aangelegd. DET I = Acos(ωt) (7.1)
Hoofdstuk 7. De Automatic Gain Controller
58
Dit wordt gekwadrateerd: DET I 2 = A2 cos2 (ωt) =
A2 (cos(2ωt) + 1) 2
(7.2)
Na laagdoorlaatfilteren wordt dit: 2 DET ILP =
A2 2
(7.3)
Na vermindering met ref 2 wordt het regelsignaal: A2 − ref 2 (7.4) 2 Dit is een rechtstreekse functie van de rms-waarde van het uitgangssignaal. Wat meer is, is dat dit regelsignaal nul wordt wanneer deze rms-waarde gelijk wordt aan een vooraf ingestelde waarde, strikt positief wordt wanneer de rms-waarde groter wordt dan de gewenste waarde, en negatief wanneer het omgekeerde optreedt. Hieruit kan de versterker dus, mits nog enige verdere bewerking, gemakkelijk aangestuurd worden. Wanneer de MODE-pin laag gehouden wordt, zal de lineair in dB dalende karakteristiek namelijk gehanteerd worden om de versterking te regelen uit de spanning aan de GAIN-pin. De karakteristiek wordt voorgesteld door de sterk dalende curve in figuur 7.3. Wanneer de MODE-pin hoog wordt, zal de sterk stijgende karakteristiek worden gehanteerd. De GAIN-pin zal zo aangestuurd worden dat de rms-waarde van het uitgangssignaal gelijk wordt aan 63 mV. Dit komt overeen met 178 mVpp of -11 dBm bij een impedantie van 50 Ω. Regelsignaal =
Figuur 7.3: Versterking tov. de spanning aan de GAIN-pin
Vaak moet de rms-waarde van het uitgangssignaal vastgelegd worden op een andere waarde dan 63 mV. In deze schakeling wordt gebruik gemaakt van de spanningsdeler voorgesteld door de weerstanden R1 en R2. Aan de DECL-pin wordt opnieuw het referentiesignaal van 63 mV gehangen. Zo zal de rms-waarde van het uitgangssignaal geregeld worden tot (1 +
R1 )63mV R2
(7.5)
Hoofdstuk 7. De Automatic Gain Controller
59
Dit is een van de vele mogelijke wijzen waarop deze rms-waarde ingesteld kan worden. Uiteraard is de snelheid waarop de AGC zal reageren heel belangrijk. Als de AGC te snel gaat reageren kan een deel van de informatie weggeregeld worden, als de AGC echter te traag gaat reageren kunnen iets snellere fadingverschijnselen in het ingangssignaal het oversturen van de versterkeruitgang tot gevolg hebben. De snelheid wordt bepaald met behulp van 3 capaciteiten, namelijk CDECL , CHP F L en CDET O . Meer informatie over de keuze van deze waarden kan de lezer vinden in de datasheet van de beschouwde chip.
7.2.1
Probleem met RMS-detectie
Het doel van een AGC-schakeling is het gemiddelde vermogen constant te houden op een gewenste waarde. Vaak zal zo’n AGC gebruikt worden om een ADC, in het ideale geval, maximaal aan te sturen. Dit laatste is ook het doel van de AGC in deze scriptie. Door het gemiddelde vermogen bij te sturen kan oversturing van de ADC vermeden worden. Uiteraard kan het gebruik van een rms-detector daarbij voor problemen zorgen. Bestaat er namelijk zoiets als ongeveer een vaste verhouding tussen de amplitude en de rms-waarde van een ACsignaal? Spijtiggenoeg niet. Dit laatste wordt hieronder aan de hand van een klein voorbeeldje ge¨ıllustreerd:
Figuur 7.4: Vergelijking RMS-waarde en amplitude
Zoals zichtbaar in figuur 7.4 hebben een blokgolf en een sinuso¨ıdale golf een verschillende verhouding tussen amplitude en rms-waarde. Uit bijkomende simulaties met andere signalen blijkt dat deze waarden ongelofelijk ver uiteen kunnen liggen. Dit heeft dan ook tot gevolg dat de rms-detector niet zonder meer bruikbaar is in deze toepassing. Bij aansturing van een ADC moet de maximale ingangswaarde nog net binnen het bereik vallen. Een piekdetector
Hoofdstuk 7. De Automatic Gain Controller
60
is dus eigenlijk een betere keuze. Dit zal een bijna DC-signaal genereren evenredig met het ingangssignaal van de piekdetector. Toch zal de on-chip rms-detector blijven gebruikt worden aangezien een DC-signaal een identische effectieve waarde en rms-waarde heeft. De schakeling kan dan dankzij het gebruik van deze detector heel wat eenvoudiger worden aangezien deze detector de gain-pin rechtstreeks op een aangepaste wijze kan aansturen.
Figuur 7.5: Een piekdetector
Deze piekdetector heeft een heel eenvoudige werking. Er kunnen 2 blokken onderscheiden worden, een schakelaar, gevormd door de diode, en een ladingsreservoir, gevormd door de weerstand en capaciteit, dat stilaan leegloopt. Wanneer de ingangsspanning VS groter wordt dan de som van de drempelspanning en de spanning over het leeglopende ladingsreservoir, loopt er stroom door de diode. De spanning over het reservoir zal dan gaan stijgen tot deze de ingangsspanning bereikt, op een drempelspanning na. Wanneer echter de ingangsspanning daalt tot onder de som van de drempelspanning en de spanning over het leeglopende ladingsreservoir zal de diode niet geleiden. De capaciteit zal stilaan ontladen worden via de weerstand tot de spanning over dit reservoir opnieuw gelijk wordt aan de ingangsspanning op een drempelspanning na. Deze schakeling blijkt dus enige volger-werking te bezitten. Wanneer de schakeling werkelijk in gebruik genomen wordt, zal VC initieel stijgen tot de maximumwaarde van VS op een drempelspanning na. Hierna zal VS dalen waarbij het reservoir volgens zijn tijdsconstante zal ontladen. Wanneer de tijdsconstante van het ladingsreservoir τ =RC groot genoeg genomen wordt, zal de waarde VC ongeveer constant blijven rond de maximumwaarde. Een tijdsconstante van 44 ms is een goede waarde voor onze toepassing en is gemakkelijk te realiseren met discrete componenten. Hiermee zal in een smalbandsysteem de tragere fading weggewerkt worden en zullen in een breedbandsysteem de grote piekvermogens buiten de uiteindelijk geselecteerde radiozender verhinderd worden de ADC te oversturen. Deze tijdsconstante zal in het uiteindelijke AGC-ontwerp de regelsnelheid gaan bepalen aangezien deze de grootste tijdsconstante zal bevatten. Wel moet er benadrukt worden dat de AGC noodgedwongen traag varieert aangezien gebruik gemaakt wordt van een feedbacksysteem. Dit heeft tot gevolg dat de AGC korte, sterke storingspieken niet zal verhinderen verder door te dringen tot de ADC. Filters of klemschakelingen kunnen echter gebruikt worden om dit tegen te gaan. Bij het ontwerp van een AGC is het belangrijk dat de piekdetector blijft werken binnen de
Hoofdstuk 7. De Automatic Gain Controller
61
gewenste frequentieband. Hiervoor werd een piekdetectorschakeling uitgevoerd met behulp van het stickersysteem. Er werd gebruik gemaakt van een 1N4148-diode en een RC-kring met als tijdconstante 44 ms. Hiervoor werd R en C respectievelijk gelijk gekozen aan 440 kΩ en 100 nF. Zoals zichtbaar is op onderstaande tekening (Figuur 7.6 en ook strookt met onze verwachtigen, blijft de piekdetector werken bij frequenties van 500 kHz tot en met 27 MHz. Dit kan verklaard worden door de keuze van de tijdsconstante. Bij bovenstaande ingangsfrequenties zal de uitgang van de piekdetector een constante waarde aannemen aangezien de tijdsconstante veel groter is dan de periode van het ingangssignaal.
Figuur 7.6: Frequentiekarakteristiek piekdetector
Uiteraard heeft elke piekdetector een andere transferkarakteristiek afhankelijk van de gebruikte componenten. De drempelspanning blijkt onder andere een belangrijke rol te spelen. Vooraleer de piekdetector kan gebruikt worden in een schakeling is het aangewezen om de transferkarakteristiek uit te meten. Zo wordt de uitgangsspanning bij een gewenste ingang bekend. De transferkarakteristiek van de piekdetectorschakeling wordt in figuur 7.7 weergegeven.
Hoofdstuk 7. De Automatic Gain Controller
62
Figuur 7.7: Transfertkarakteristiek piekdetector
7.2.2
Verdere uitwerking van de schakeling
Eenmaal de basisbouwblokken van de schakeling gekozen zijn kan een prototype geconstrueerd worden. In figuur 7.8 wordt het schema van zo een mogelijk AGC-prototype weergegeven.
Figuur 7.8: Schema van de AGC-schakeling
Wat opvalt aan deze figuur is dat dit prototype grotendeels uit 4 delen bestaat. Een antialiasingfilter, dat mogelijke DRM-signalen tot 30 MHz doorlaat, een piekdetector waarmee de rms-werking van de AD8368 omzeild wordt, de AGC-chip zelf met zijn randcomponenten en een deel dat de interne voedingsverdeling voor zich zal nemen. Ook kan dit prototype
Hoofdstuk 7. De Automatic Gain Controller
63
op verschillende wijzen gebruikt worden door de instelling van de schakelaars S1 tot en met S3 te wijzigen. Dit zal dan vooral voor testdoeleinden gebruikt worden. In deze paragraaf wordt de uiteindelijke AGC-werking van dit prototype verder uitgediept. Hiervoor zullen we de schakelaars instellen zodat de MODE-pin met de grond verbonden is via S1, DETO via S2 verbonden is met de GAIN-pin en zodat de weerstand R1 verbonden is met de uitgang van de AD826. Het ingangssignaal komt binnen via het anti-aliasingfilter dat het signaal zuivert van hoogfrequente componenten boven 30 MHz. Dit is niet noodzakelijk voor de correcte werking van de AGC. Toch kan het geen kwaad om dit toe te voegen aangezien dit filter in het uiteindelijke ontwerp vooraan in de front-end zal voorkomen. Het zal er namelijk voor zorgen dat er geen aliasing optreedt bij een analoog naar digitaal conversie met een samplerate van 80 MSPS (mega samples per seconde). Meer informatie wordt gegeven in het het ADC-hoofdstuk. Het helpt dus een goed beeld van de latere AGC-werking te vormen. Ook zal dit scherpe pieken in het ingangsvermogen licht kunnen tegenwerken. Na het anti-aliasingfilter volgen een zenerdiode en een capaciteit naar de 50 Ω-chipingang. De zener-diode zal ervoor zorgen dat de maximaal toegelaten ingangsspanning van de chip niet overschreden wordt ten gevolge van tragere variaties in het ingangsvermogen. De capaciteit zorgt voor de gewenste AC-koppeling van het ingangssignaal. Deze capaciteit wordt gekozen zodat deze geen invloed heeft op de DRM-band. In dit geval wordt dit 10 nF. Het uitgangssignaal is een versterkte versie van het ingangssignaal gesuperponeerd op een DC-spanning met waarde 2,5 V. Dit wordt via een terugkoppelpad naar de GAIN-pin geleid. Dit terugkoppelpad bestaat grotendeels uit de piekdetectorschakeling en de spanningsdeler die eerder in dit hoofdstuk werden besproken. Wat daarentegen wel de aandacht trekt is het gebruik van de bufferschakeling. Om de werking van de piekdetector, in het bijzonder de tijdsconstante, minimaal te be¨ınvloeden mogen we enkel een hoogimpedante last aan deze piekdetector hangen. Een eenvoudige opamp-bufferschakeling is meer dan goed genoeg om de laagfrequente piekdetectoruitgang te versterken. Hier werd gebruik gemaakt van de AD826. Ook zit er een weerstand van 100 Ω tussen de piekdetector en de chipuitgang. Deze zal de lineariteit van het uitgangssignaal zeker ten goede komen omdat de uitgang nu ohms gescheiden wordt van de piekdetector en in het bijzonder van de diode. Aangezien de AD8368 een hoge bandbreedte heeft zouden de enkele hoogfrequente componenten die door de piekdetector geraken en via de GAIN-pin de chip bereiken voor oscillaties kunnen zorgen. Om dit tegen te gaan kunnen verschillende ontkoppelcapaciteiten toegevoegd worden in het terugkeerpad om die hoogfrequente componenten naar de grond te leiden. In ons prototype hebben we dit verwezelijkt door een snelle capaciteit van 68 nF aan de GAIN-pin te hangen. Dit komt in AGC-werking overeen met deze capaciteit parallel te zetten met Cdeto. De uiteindelijke capaciteitswaarden worden dan ook:
Hoofdstuk 7. De Automatic Gain Controller
64
Cdecl = 150nF Chpf l = 820pF Cdeto = 3, 3µF + 68nF Via de spanningsdeler zal het gebufferde regelsignaal de chip bereiken. De AGC-schakeling zal later in dit hoofdstuk getest worden aan de hand van een realistische waarde voor de uitgangsamplitude, namelijk 1,5 V. Hiervoor worden de weerstanden: R1 = 100Ω R2 = 100Ω De chip zal nu het uitgangsvermogen gaan aanpassen tot het gewenste niveau bereikt wordt. Nadien zal het uitgangssignaal van de chip via een koppelcondensator doorgekoppeld worden naar de uitgang van de schakeling. Geen enkele schakeling kan werken zonder dat deze gevoed wordt. Ook deze AGC-schakeling is niet anders. De chip moet gevoed worden met een stabiele gelijkspanning van 5 V. De gebruikte spanningsregelaar, de LN78L05, zal ervoor zorgen dat de voedingsspanning constant blijft op 5 V. Mogelijke storingen zullen door de elco, de regelaar en de gebruikte power inductor tegengewerkt worden. Ook worden er voldoende ontkoppelcondensatoren voorzien aan elke voedingspin van de chips, elk van 100 nF. Deze zullen mogelijke lokale stroompieken opvangen en zo de voedingsspanning lokaal constant houden.
7.2.3
Layout van de schakeling
Eenmaal de schakeling voldoende geanalyseerd werd, kan met PCB-layout aangevangen worden. Er werd gekozen voor een dubbelzijdige PCB. Een afbeelding van de uiteindelijke layout wordt weergegeven in figuur 7.9.
Hoofdstuk 7. De Automatic Gain Controller
65
Figuur 7.9: Layout van de AGC-schakeling
Op deze figuur kunnen 2 grote onderdelen onderscheiden worden: het anti-aliasingfilter met de voedingsvoorzieningen in de onderste helft van de figuur, en het AGC-gedeelte bestaande uit de piekdetector en de AD8368 met bijbehorende passieve componenten. De AD8368 kan hier duidelijk herkend worden aangezien het de enige chip is op deze schakeling die gebruik maakt van een grondvlak. Dit is eigen aan een QFN-package. Om oscillaties te vermijden worden de versterkte signalen zoveel mogelijk gescheiden van de zwakkere ingangssignalen. Ook wordt extra aandacht besteed aan de ontkoppeling van elke voedingspin en aan de stabiliteit van de massa. Dit laatste gebeurt aan de hand van 2 massavlakken die met mekaar verbonden worden met behulp van een 20-tal via’s. Deze via’s worden vooral gelokaliseerd rond de massaverbindingen van de verschillende componenten. De massavlakken worden niet voorgesteld in figuur 7.9. Ze overspannen het gehele bord. Dit wordt ook duidelijker uit figuren 7.10(a) en 7.10(b).
7.2.4
Testen van de schakeling
Debuggen van de schakeling Na het ontwerp van de schakeling begint het eigenlijke werk pas. Doet de schakeling wel wat gevraagd wordt? Indien niet, ligt dit dan aan een ontwerpsfout? Treedt er ergens een slecht
Hoofdstuk 7. De Automatic Gain Controller
66
contact op? Is een component stuk? Bij het testen van dit bord zijn er een paar problemen aan het licht gekomen. Zo bleek het bord pas na het plaatsen van de 3e AD8368-chip vlot te werken. Deze chip is zeker en vast niet de gemakkelijkste om handmatig te solderen. Dit valt te wijten aan het gebruik van de QFNchipverpakking waarbij de kleine pootjes en het grondvlak voor problemen kunnen zorgen. Ook moet extra de nadruk gelegd worden op het gebruik van ESD-bescherming aangezien deze chip daar zeker niet ongevoelig voor is. Het voordeel bij gebruik van de AD8368 is dat de chipuitgangen in de datasheet goed gedocumenteerd staan. Wanneer bijvoorbeeld het DCniveau aan de uitgangspin niet gelijk is aan 2,5 V of wanneer de spanning aan de DETO-pin hoger wordt dan 1 V is er zeker een fout opgetreden. Eerder in dit hoofdstuk werd gesproken over het toevoegen van een snelle capaciteit in het terugkoppelpad. Deze ingreep is het gevolg van het waarnemen van een oscillatie rond 600 MHz aan de uitgang van de schakeling. Na nameten bleek deze oscillatie ook in het terugkeerpad te zitten. Het 600 MHz signaal koppelde dus door de piekdetector heen. Een snelle capaciteit heeft het probleem opgelost. Hierna functioneerde de schakeling zoals gewenst. Hieronder wordt de uiteindelijke PCB voorgesteld.
(a) De toplaag van de PCB
(b) De bottomlaag van de PCB
Figuur 7.10: Foto’s van het AGC-testbord
Meten van de schakeling In dit deel van het hoofdstuk worden de metingen besproken. Eerst zal de transferkarakteristiek worden bepaald. Nadien zullen ruis- en lineariteitsmetingen worden uitgevoerd. De AD8368 heeft mooie ruis- en lineariteitseigenschappen. In deze paragraaf wordt onderzocht of deze sterk gaan lijden onder het gebruik van de chip in onze schakeling.
Hoofdstuk 7. De Automatic Gain Controller
67
In figuur 7.11 wordt de transferkarakteristiek van het systeem weergegeven. Hiervoor werd een sinus aangelegd aan de ingang met een bepaald ingangsvermogen en werd het uitgangsvermogen gemeten met behulp van een spectrumanalyzer. In de karakteristiek vallen vooral 2 gebieden op. Aan de linkerzijde een versterkerwerkingsgebied en aan de rechterzijde een AGC-werkingsgebied. In dit laatste gebied zal het uitgangsvermogen vari¨eren tussen 6,83 dBm en 7,83 dBm bij ingangsvermogens van respectievelijk -9 dBm tot 13 dBm. Er is dus sprake van AGC-werking binnen een ingangsvermogenbereik van 22 dB. Dit is minder dan de 34 dB verschil tussen maximale versterking (22 dB) en maximale verzwakking (-12 dB) die op de datasheet vermeld staan. Dit kan onder andere verklaard worden doordat bij -9 dBm ingangsvermogen de versterker niet maximaal versterkt. De tests werden gestopt bij een ingangsvermogen van 13 dBm, wat minder is dan de som van 7,83 dBm en de maximale verzwakking van 12 dB. Dit om de ingang niet te laten satureren. Ook moet opgemerkt worden dat de uitgangsspanning binnen het AGC-gebied zeker aan de gewenste eisen voldoen. Een uitgangs-peak-to-peak-spanning van 1,5 V en dus een uitgangsamplitude van 0,75 V werd vooropgesteld bij de constructie van de AGC. Bij een uitgangsimpedantie van 50 Ω blijkt de uitgangsamplitude tussen de 0,691 V en de 0,780 V te liggen, wat inderdaad overeenkomt met de verwachtingen.
Figuur 7.11: Transferkarakteristiek van de AGC
Wanneer het ingangsvermogen onder de -9 dBm zakt werkt de AGC in zijn versterkerwerkingsgebied. Ondanks zijn stijgende karakteristiek kan opgemerkt worden dat maximale versterking nooit gehaald wordt, integendeel, bij lagere ingangsvermogens daalt de versterking. Dit kan verklaard worden aangezien de GAIN-pin aangestuurd wordt via de DETO-pin, dus de uitgang van de detector. Indien deze correct wil werken moet de spanning aan de DETI-pin groter zijn dan 2,5 V. Dit wil zeggen dat de maximale spanning aan de ingang van de piekdetector groter moet zijn dan de som van 2,5 V en de drempelspanning over de diode. Bij lagere
Hoofdstuk 7. De Automatic Gain Controller
68
uitgangsvermogens, en dus ook lagere ingangsvermogens, is dit niet het geval. De uitgang van de DETO-pin wordt dan niet gedefinieerd. Verdere tests wijzen uit dat de component steeds zal blijven versterken bij te lage ingangsvermogens. In de datasheet van de AD8368 staat dat bij maximale versterking de ruisvloer gelegen is bij -143 dBm bij een bandbreedte van 1 Hz. Aangezien de gebruikte spectrumanalyzer dezelfde ruisspecificaties vertoont kan dit hiermee niet gemeten worden. Een mogelijke oplossing hiervoor is een vergelijking maken tussen het ruisniveau van de spectrumanalyzer en het ruisniveau met de AGC bij maximale versterking. De resultaten worden voorgesteld in figuur 7.12. Naar alle verwachtingen blijft dit ruisniveau dan ook constant. Onze AGC heeft inderdaad dezelfde ruisvloer als vooropgesteld in de datasheet.
Figuur 7.12: Vergelijking tussen de ruisniveau’s van de spectrumanalyzer en de AGC
Ook heeft de AD8368 een OIP3 van 33 dBm bij maximale versterking. Refereren we dit terug naar de ingang dan verkrijgen we een IIP3 van 11 dBm. Dit is gemeten bij een uitgangssignaal waarbij elke toon een uitgangsvermogen heeft van 0 dBm rond een frequentie van 140 MHz. In deze scriptie werden tests uitgevoerd waarbij een tweetoon werd aangelegd aan de ingang van de AGC. Elk van de twee tonen had een ingangsvermogen van 1 dBm. Er werden twee metingen uitgevoerd, een met de tonen op 5 en 5,1 MHz en een met de tonen op 30 en 30,1 MHz. In figuren 7.13 en 7.14 zullen beide resultaten grafisch voorgesteld worden aan de hand van het uitgangsspectrum.
Hoofdstuk 7. De Automatic Gain Controller
69
Figuur 7.13: Uitgangsspectrum van een tweetoontest bij 5 MHz
Figuur 7.14: Uitgangsspectrum van een tweetoontest bij 30 MHz
We berekenen het IIP3 punt hieruit met behulp van de volgende snelle berekeningsformule: AIP 3,IN,dB =
Aω1,ω2,dB − AIM 3,dB + AIN,dB 2
(7.6)
Hierbij worden AIP 3,IN,dB , Aω1,ω2,dB , AIM 3,dB en AIN,dB respectievelijk de waarde van het IIP3-punt in dB, het uitgangsvermogen van de grondtonen en 3e orde intermodulatieproduct in dB en het ingangsvermogen van de grondtonen in dB. De meting bij 5 MHz levert een IIP3-waarde op van 19,5 dBm waar de meting bij 30 MHz een IIP3-waarde geeft van 22,5 dBm. Dit ligt dus hoger dan de waarden verkregen uit de datasheet. Wel moet benadrukt worden dat dit in deze scriptie bij een groter uitgangsvermogen opgemeten werd.
Hoofdstuk 7. De Automatic Gain Controller
7.3
70
AGC-schakeling met behulp van een PIN-diode
Hoewel het gebruik van een ge¨ıntegreerde AGC-lus zoals de AD8368 vaak de gemakkelijkste oplossing lijkt, is dit zeker en vast niet de enige manier om een AGC te maken. Zoals in het begin van dit hoofdstuk al werd vermeld, bestaat een AGC uit een regelbare versterker en een vermogendetector, waarbij de versterker negatief wordt teruggekoppeld met het uitgangssignaal van de vermogendetector. In INTEC design thesis 1 werd een regelbare versterker ontworpen met behulp van een opamp en een PIN-diode. Aangezien de AGC-schakeling ervoor moet zorgen dat de ADC niet overstuurd wordt, is het logisch dat de vermogendetector vlak voor de ADC-schakeling geplaatst wordt. Het ontwerp van zo een vermogendetector zal dan ook in deze scriptie behandeld worden. De rest van dit hoofdstuk behandelt de bouw van dergelijke vermogendetectoren.
7.3.1
Specificaties van de vermogendetector
Bij het bepalen van de specificaties van een vermogendetector moeten verschillende vragen beantwoord worden. Hoe wordt het vermogen bepaald? Wat is het gewenste ingangsvermogen bij AGC-werking? Wat zal het uitgangssignaal zijn van de vermogendetector? De antwoorden op deze vragen zijn uiteraard afhankelijk van de systemen rond de vermogendetector. Het ingangssignaal van de detector zal worden bepaald door de ingang van de ADC-schakeling. De ingangsimpedantie hiervan werd vastgelegd op 50 Ω. De vermogenbepaling kan hierbij gebeuren door een eenvoudige spanningsmeting. Hierbij moet er wel voor gezorgd worden dat de parallelle ingangsimpedantie van de piekdetector verwaarloosbaar is ten opzichte van deze 50 Ω. De gewenste ingangsspanning wordt bepaald door het ingangsbereik van de ADC-schakeling. Uit het ADC-hoofdstuk blijkt dat deze ingangsspanning beperkt moet blijven tot ± 0,5 V. Aangezien de ingangsspanning in geen geval het ingangsbereik mag overschrijden wordt gebruik gemaakt van een veiligheidsmarge. De maximale ingangsspanning van de ADC wordt hierbij vastgelegd op 0,3 V. Ook het uitgangssignaal moet vastgelegd worden. Hiervoor zal eerst dieper ingegaan worden op de werking van de regelbare versterker. In deze scriptie wordt hiervan enkel de basis uitgelegd, voor meer informatie omtrent deze versterker verwijzen wij graag naar INTEC design thesis 1. Werking van de regelbare versterker In figuur 7.15(a) wordt het schema van de regelbare versterker voorgesteld. In eerste instantie lijkt dit goed op een niet-inverterende versterker. Wanneer de combinatie van spoel, capaciteit, PIN-diode en weerstand R2 vervangen wordt door een weerstand R, zoals in figuur
Hoofdstuk 7. De Automatic Gain Controller
71
7.15(b), wordt de gelijkenis pas helemaal duidelijk. De spanningsversterking zal dan gelijk worden aan R1 + R (7.7) R Hieruit blijkt dat de versterking zal stijgen als de weerstand R daalt. De versterking is dus regelbaar door de weerstand R te wijzigen. Deze formule geldt zowel in DC als AC. Het werkingsprincipe van de regelbare versterker is gelijkaardig. Het kleinsignaalgedrag van een PIN-diode kan beschouwd worden als dat van een weerstand waarvan de waarde bepaald wordt door de DC-stroom die erdoor loopt. Hoe hoger de DC-stroom, hoe lager de weerstand. De AC-versterking zal dus bepaald worden door de DC-stroom die door de PIN-diode loopt. AV =
(a) De regelbare versterker
(b) De niet-inverterende versterker
Figuur 7.15: Werking van de regelbare versterker
Uiteraard is het de bedoeling dat enkel het regelsignaal de versterking zal gaan regelen. Er moet dus een koppelcondensator voorzien worden die de DC-invloed van het uitgangssignaal minimaliseert. De AC-spanning over de PIN-diode moet daarentegen compleet bepaald worden door het uitgangssignaal. Om deze reden zal een smoorspoel toegevoegd worden die de AC-invloed van het regelsignaal op de PIN-diode minimaliseert. De weerstand R2 zal de DC-regelspanning omzetten naar de instelstroom van de PIN-diode. Zo zal de schakeling reageren als een regelbare AC-versterker gestuurd door een DC-spanning. In DC kan de versterker beschouwd worden als volgerschakeling. Uit experimenten blijkt dat de regelspanning het best begrensd blijft tussen 0 en 3 V. Hierbij komt 0 V overeen met een lage versterking en 3 V met een hoge versterking. Dit zal dan ook de specificatie voor het uitgangssignaal van de vermogendetector vormen. Voor meer informatie en karakteristieken van PIN-diode of versterkerschakeling verwijzen wij graag naar INTEC design thesis 1.
Hoofdstuk 7. De Automatic Gain Controller
7.3.2
72
Ontwerp van de vermogendetector
Uit de detectorspecificaties volgt dat de maximale ingangsamplitude op 0,3 V gehouden moet worden. Opnieuw lijkt het gebruik van een piekdetectorschakeling om de spanning te gaan registreren aangewezen. Ook zal negatieve terugkoppeling ingebouwd moeten worden. Hiervoor kan gebruik gemaakt worden van een inverterende versterker. Er zijn 2 verschillende mogelijkheden om zo een piekdetectorschakeling uit te voeren, actief en passief. Deze worden hier verder behandeld. Passieve piekdetector Het schema van de gebruikte passieve vermogendetector wordt weergegeven in figuur 7.16. Dit ontwerp maakt gebruik van de passieve piekdetectorschakeling weergegeven in figuur 7.5, gevolgd door een versterkende buffertrap en een inverterende versterker. Deze laatsten zetten de piekdetectoruitgang om naar een gewenst spanningsverloop. De ingang van de piekdetector wordt afgetakt van het signaal dat door het bordje loopt, zichtbaar bovenaan de figuur. Dit pad vormt de AC-gekoppelde weg tussen een versterker en de ADC.
Figuur 7.16: Schema van de passieve piekdetectorschakeling
Zoals uit de bovenstaande figuur blijkt, heeft de piekdetector een tijdsconstante van 44 ms. Als diode wordt gebruik gemaakt van de BAT-74. Dit is een Schottky-diode met een lage drempelspanning. Dit laatste is belangrijk aangezien de spanning over de RC-keten bij eenzelfde ingangsverloop sterk afhankelijk is van deze drempelspanning. Hoe lager de drempelspanning, hoe hoger de spanningszwaai over de RC-keten en hoe gemakkelijker de versterkerketen in te stellen valt zodat de gewenste uitgangskarakteristiek bereikt wordt. De versterkerketen heeft als eis dat ze de spanning over de RC-kring niet mag be¨ınvloeden, aangezien deze de tijdsconstante van het systeem bepaalt. Er is dus nood aan een hoogimpedante
Hoofdstuk 7. De Automatic Gain Controller
73
ingangstrap. Ook moet de versterkerketen een inverterende werking bezitten om de negatieve terugkoppeling van de vermogendetector mogelijk te maken. Er zou gekozen kunnen worden om enkel een inverterende versterker te gebruiken. Zo een schakeling heeft echter een laagimpedante ingangstrap. Wil deze de RC-kring niet be¨ınvloeden, dan moet de ingangsweerstand veel groter zijn dan 200 kΩ. Wordt hierbij nog een versterking met grootteorde 20 gewenst, dan zal de terugkoppelweerstand onrealistische waarden, orde 20-100 MΩ, aannemen. Het gebruik van een bufferschakeling is dus aangewezen. Er werd in deze scriptie gebruik gemaakt van de TLC271 van Texas Instruments met FETingangen. [24] Deze opamp heeft een typische ingangsimpedantie van 1012 Ω. Een tweede voordeel van deze opamp is zijn lage snelheid. Dit zal de kans op ongewenste oscillaties laag houden. Toch zal de opamp met gain-bandbreedte 500 kHz en slew rate 0,4 V/µs meer dan snel genoeg zijn om de laagfrequente piekdetectoruitgang te versterken. Een laatste belangrijk voordeel van deze opamp is dat de uitgangsspanning tot 0 V kan dalen. Er werd ervoor gekozen om de buffertrap ook te laten versterken. Dit zal de instelling van de inverterende versterker vereenvoudigen. De gebruikte weerstandswaarden werden door simulatie in ADS bepaald. Er kunnen zich vragen gesteld worden bij de aanwezigheid van de 10 kΩ-weerstand van de ingangslijn naar de grond. Het is logisch dat de schakeling onmogelijk kan werken wanneer deze weerstand afwezig is. Dit komt doordat de RC-keten constant opgeladen moet worden. Bij correcte werking van de diode zal een gemiddelde stroom in de doorlaatrichting vloeien. Aangezien de capaciteiten geen DC-stroom doorlaten kan er ook geen DC-stroom door de diode vloeien waardoor de schakeling onmogelijk kan werken. Minder eenvoudig in te zien, is dat de schakeling door het toevoegen van een DC-pad, in dit geval een weerstand, wel zal werken. Dit valt te verklaren met behulp van ladingstransport. Voor de eenvoud van deze uitleg wordt de verbinding tussen de 2 ingangscondensatoren aangeduid met punt P en wordt de beschouwde 10 kΩ-weerstand R0 genoemd. Veronderstel een sinuso¨ıdale ingangsspanning. Op een bepaald ogenblik zal de ingangsspanning stijgen. Aangezien de spanning over een condensator een continu verloop kent, zal de ingangsspanning van de piekdetector op punt P stijgen. De diode zal gaan geleiden waardoor een lading Q de capaciteit C uit de RC-kring zal opladen. Deze lading moet uiteraard ergens vandaan komen. In dit geval wordt punt P negatief opgeladen met dezelfde lading -Q. Dit heeft een lichte spanningsdaling op dit punt tot gevolg. Wanneer de ingangsspanning weer naar beneden gaat zal de diode sperren. De potentiaal op punt P zal nu dieper dalen dan de ingangspotentiaal door de aanwezigheid van de lading -Q. Er is dus sprake van een gemiddelde negatieve spanning over punt P en de massa. Er kan nu een stroom door de weerstand R0 lopen tot de lading Q wordt gecompenseerd. Als de ingangsspanning stijgt zal de diode verder geleiden en de RC-kring verder opladen. Mocht de weerstand R0 er niet zijn, dan zal er in een paar cycli een zo grote negatieve lading op het punt P opgebouwd worden dat de diode nooit meer in
Hoofdstuk 7. De Automatic Gain Controller
74
geleiding kan komen. Dit laatste bewijst nog eens dat een DC-pad naar massa noodzakelijk is. De waarde van de weerstand R0 werd gekozen op basis van 2 tegenstrijdige eisen. De ingangsweerstand van het systeem wordt vastgelegd op 50 Ω. De weerstand R0 moet dus veel groter zijn wil deze verwaarloosbaar blijven ten opzichte van 50 Ω. Ook blijkt uit voorgaande paragraaf dat deze weerstand een grote rol zal spelen bij het opladen van de RC-kring. Deze zal de tijdsconstante bepalen waarmee de capaciteit C uit de RC-kring opgeladen wordt. Deze tijdsconstante wordt ongeveer gegeven door R0 C. De ontlaadtijdsconstante blijft uiteraard gelijk aan RC. Een waarde van 10 kΩ geeft ongeveer een 20 keer zo snelle op- als ontlading. Dit is meer dan voldoende om de piekdetector vlot te laten werken. Een groot nadeel van de passieve piekdetector is dat de diode een heel belangrijke rol speelt. Een piekdetector met een andere diode zal ook als piekdetector fungeren, maar het uitgangsverloop zal licht gewijzigd zijn bij dezelfde ingangssequentie. Dit maakt de instelling van de naversterker, zeker bij grote versterking, heel wat moeilijker. Dit komt doordat het evenwichtspunt aan de ingang van de naversterker, dus de gewenste spanning over de RCkring, sterk afhankelijk is van de diode. De versterking zal dus bewust lager worden gehouden om de instelling te vereenvoudigen. In figuur 7.17 wordt de transferkarakteristiek van de gerealiseerde passieve piekdetector met deze van de gesimuleerde passieve piekdetector vergeleken. Hiervoor wordt een sinuso¨ıdaal signaal van 5 MHz door de vermogendetector gestuurd. Daarna wordt de uitgang van de vermogendetector uitgezet in functie van de ingangsamplitude. Zoals zichtbaar op de figuur, en verwacht, is er een groot verschil merkbaar tussen de gesimuleerde en de gerealiseerde piekdetector. Dit kan bij de instelling van de AGC voor problemen zorgen.
Figuur 7.17: Transferkarakteristiek van de passieve piekdetectorschakeling
Hoofdstuk 7. De Automatic Gain Controller
75
Actieve piekdetector In de voorgaande paragraaf werd het belang van de drempelspanning van de diode duidelijk in de verf gezet. Dit vormt dan ook de grote onbekende in de passieve piekdetectorschakeling. De actieve piekdetectorschakeling zal minder hoge eisen stellen aan de gebruikte diode. Het schema van de gebruikte schakeling wordt weergegeven in figuur 7.18. Dit schema bestaat grotendeels uit 2 delen. Een versterkende actieve piekdetector onmiddellijk gevolgd door een inverterende versterker.
Figuur 7.18: Schema van de actieve piekdetectorschakeling
Vooraleer dieper in te gaan op het bovenstaande schema is het nuttig om het actieve piekdetectordeel van naderbij te bekijken. Dit wordt voorgesteld in figuur 7.19. Hierbij vormt R5 de lastweerstand van de schakeling, dus de ingangsimpedantie van de inverterende versterker die erop zal volgen. Wat opvalt is dat beide dioden zich in een terugkoppelpad bevinden. Dit heeft tot gevolg dat de spanningen over de diodes veel minder bepalend zijn voor het systeem. Niet het type diode, maar de terugkoppeling zal de uiteindelijke werking van het systeem gaan bepalen.
Hoofdstuk 7. De Automatic Gain Controller
76
Figuur 7.19: Werking van de actieve piekdetector
Bij de ontleding van het systeem moet een model gevonden worden voor de dioden in de schakeling. In deze uiteenzetting wordt de spanning op elk punt gezien ten opzichte van de massapotentiaal. Wanneer de spanning V groter is dan Vuit zal diode D1 geleiden. De spanning V − zal bijgevolg ook kleiner zijn dan V aangezien dit punt via passieve componenten met punten met spanningen V , Vuit en massa verbonden is, welke allemaal kleiner of gelijk aan V zijn. De diode D2 zal bijgevolg sperren. Er zou kunnen verwezen worden naar de drempelspanning van een diode en zijn exponenti¨ele karakteristiek. Toch zal het zo blijven dat diode D1 in dit geval veel sterker zal geleiden dan diode D2, waarbij de stroom door de laatste verwaarloosd kan worden. Aangezien V hoger is dan Vuit wordt de condensator C opgeladen. Ook het omgekeerde zal gelden. Wanneer Vuit groter is dan V zal diode D1 sperren en D2 geleiden. De condensator C wordt dan ontladen. Nu er een model voor de dioden gevonden is, namelijk een schakelaar, kan de piekdetector verder ontleed worden. Hiervoor worden 2 werkingsgebieden beschouwd, namelijk opladen en ontladen. Voor deze 2 werkingsgebieden worden de uitgangsspanning en de tijdsconstante hieronder afgeleid. Bij opladen van de schakeling zullen zoals eerder vermeld D1 en D2 vervangen worden door respectievelijk een kortsluiting en een open keten. Weerstand R3 speelt hier niet mee. Er is sprake van negatieve terugkoppeling dus V − wordt gelijk aan Vin . De uitgang zal gaan reageren als deze van een niet-inverterende versterker via de weerstanden R1 en R2. Dit wordt: R1 + R2 Vin (7.8) R1 De tijdsconstante wordt gevonden door de stroomwet van Kirchoff toe te passen in de uitgangsknoop. In het Laplacedomein geeft dit: Vuit =
Hoofdstuk 7. De Automatic Gain Controller
77
V − Vuit Vuit − Vin Vuit − − = s C Vuit R4 R2 R5
(7.9)
Vuit Vuit Vin Vuit V − − + − = s C Vuit R4 R4 R2 R2 R5
(7.10)
Dit herschrijft zich tot:
Wat vereenvoudigd kan worden tot: Vuit =
sC
Vin R2 1 + R2
V + R4 1 + R4 +
1 R5
(7.11)
De tijdsconstante hiervan is: τoplaad = (R2//R4//R5) C
(7.12)
waarbij // de parallelschakeling voorstelt. Aangezien de parallelschakeling van 3 weerstanden kleiner is dan de laagste weerstand is de tijdsconstante van dit geheel kleiner dan de kleinste van de tijdsconstanten R2 C, R4 C en R5 C. In deze scriptie wordt de weerstand R4 klein genoeg genomen zodat deze tijdsconstante bepalend is. De oplaad-tijdsconstante wordt dan gegeven door: τoplaad ≈ R4 C
(7.13)
Bij ontladen van de schakeling zullen D1 en D2 vervangen worden door respectievelijk een een open keten en een kortsluiting. Weerstand R4 speelt hier niet mee. De tegenkoppeling heeft hier slechts als nut de spanning V − stabiel te houden. Door de weerstand R3 groot te maken wordt er slechts licht tegengekoppeld zodat nullatorwerking niet echt hard te maken valt. De capaciteit C zal dan ontladen worden met tijdsconstante: τontlaad = ((R1 + R2) //R5) C
(7.14)
Bijgevolg zal de uitgang het volgende verloop kennen: t ontlaad
−τ
Vuit = Vuit,initieel e
(7.15)
Nu de werking van het piekdetectorgedeelte duidelijk is, kan teruggegrepen worden naar figuur 7.18. In het piekdetectorgedeelte wordt gebruik gemaakt van de AD8042. Dit is een snelle railto-rail opamp met een bandbreedte van 160 MHz, een ingangsimpedantie van 300 kΩ en een slew-rate van 200 V/µs. [25] Er is een snelle opamp nodig omdat deze in het signaalpad voor de piekdetectorwerking komt, en zo een 5 MHz-signaal zal moeten versterken in plaats van een laagfrequent signaal. Het belangrijkste nadeel van de AD8042 is dat de ingangsspanning niet lager mag worden dan de negatieve voedingsspanning, in dit geval massa. In deze thesis werd
Hoofdstuk 7. De Automatic Gain Controller
78
dit opgelost door het geheel te gaan voorpolariseren op 1,5 V met behulp van spanningsdelers. Nadien werden de weerstandswaarden en de capaciteitswaarde bepaald zodat voldaan kon worden aan de vereisten. De spanningsversterking van het piekdetectorgedeelte wordt iets minder dan 5. Die daling komt onder andere door de lage ingangsimpedantie van de AD8042. De oplaad- en ontlaadtijdsconstanten gelijk aan respectievelijk 100 µs en 33 ms. Uiteraard moet ook nog aan de invertorwerking voldaan worden. Ook hier werd gekozen voor het gebruik van een inverterende versterker. Er werd, wegens veel grotere zekerheid omtrent de werkpunten, gekozen voor een grotere versterking dan bij de passieve vermogendetector. Toch zal deze versterking niet te groot worden gekozen om de stabiliteit van de gehele AGC niet teveel in het nauw te drijven. In de inverterende versterkerschakeling wordt opnieuw gebruik gemaakt van de trage TLC271-opamp. De spanning op de plus-klem van de opamp zal het evenwichtspunt vormen van de AGC-schakeling. Dit evenwichtspunt werd door simulatie in ADS (Agilent Advanced Design System) bepaald op 2,5 V en ingesteld via een spanningsdeler. In figuur 7.20 wordt de transferkarakteristiek van de gerealiseerde actieve piekdetector met deze van de gesimuleerde actieve piekdetector vergeleken. Bij deze vergelijking wordt ook deze keer gebruik gemaakt van een sinuso¨ıdaal 5 MHz-ingangssignaal. Opnieuw valt de duidelijke vermogendetectorwerking op. Zoals verwacht is ook de helling steiler dan bij de passieve versterker, maar wat veel belangrijker is: De transferfunctie van de gerealiseerde detector lijkt goed op het simulatieresultaat. Ook valt hierbij op dat de maximale uitgangsspanning 4 V bedraagt. Die kan indien nodig verlaagd worden met behulp van een spanningsdeler.
Figuur 7.20: Transferkarakteristiek van de actieve piekdetectorschakeling
Zo’n transferkarakteristiek zegt natuurlijk weinig over het tijdsgedrag van de piekdetector. Om dit te meten werd gebruik gemaakt van een 100% amplitudegemoduleerde sinus op een draaggolf van 5 MHz. Daarna werd met een oscilloscoop het uitgangssignaal van het piekdetectorgedeelte, dus de spanning over de condensator, opgemeten. Enkele metingen worden
Hoofdstuk 7. De Automatic Gain Controller
79
voorgesteld in figuur 7.21.
(a) Meting bij 5 Hz sinus
(b) Meting bij 20 Hz sinus
(c) Meting bij 100 Hz sinus
(d) Meting bij 500 Hz sinus
Figuur 7.21: Tijdsmetingen van de piekdetector
Zoals opvalt in de bovenstaande figuur zal het piekdetectordeel de amplitude gaan volgen wanneer deze traag varieert. Wanneer deze amplitude sneller varieert, bij hogere frequenties, zal de piekdetector slechter kunnen volgen. Hoe sneller de amplitude varieert, hoe kleiner de uitwijking in de uitgang van het piekdetectordeel. Bij heel hoge frequenties wordt deze uitgang bij benadering DC. Dit valt vooral op doordat de carrierfrequentie nergens in het uitgangssignaal te zien valt. De detector werkt dus naar behoren.
Hoofdstuk 7. De Automatic Gain Controller
7.3.3
80
Layout van de vermogendetector
Figuur 7.22: Layout van de piekdetectorschakeling
Ook hier werd er gekozen voor een dubbelzijdige PCB. Een afbeelding van de uiteindelijke layout wordt weergegeven in figuur 7.22. Er worden 2 grondvlakken gebruikt die de volledige PCB overspannen. De beide piekdetectoren worden hier op ´e´en PCB gerealiseerd. Een jumper zal de keuze tussen de actieve en de passieve piekdetector mogelijk maken. Beide piekdetectoren worden gevoed met dezelfde spanning, namelijk 5 V, wat de integratie op ´e´en PCB vereenvoudigt. Het uiteindelijke bordje wordt weergegeven in figuren 7.23(a) en 7.23(b).
(a) De toplaag van de PCB
(b) De bottomlaag van de PCB
Figuur 7.23: Foto’s van het detectorbordje
7.3.4
Meten van de AGC-schakeling
In het voorgaande deel werd er vooral nadruk gelegd op de werking van de piekdetectoren. Uiteraard zullen deze in een AGC-schakeling ge¨ıntegreerd moeten worden. In deze
Hoofdstuk 7. De Automatic Gain Controller
81
paragraaf worden de meetresultaten van deze AGC-schakeling, die in samenwerking met INTEC design thesis 1 werden opgemeten, beschreven. [1] Hiervoor worden twee AGCschakelingen beschouwd, voor elke detector ´e´en. Voor elke detector wordt de transferkarakteristiek en een uitgangsspectrum weergegeven in figuren 7.24 en 7.25.
(a) Transferkarakteristiek
(b) Uitgangsspectrum
Figuur 7.24: AGC-schakeling met behulp van de passieve detector
Hoofdstuk 7. De Automatic Gain Controller
82
(a) Transferkarakteristiek
(b) Uitgangsspectrum
Figuur 7.25: AGC-schakeling met behulp van de actieve detector
Zoals zichtbaar op beide transferkarakteristieken vertonen beide systemen een duidelijke AGCwerking bij ingangsvermogens van -60 tot -40 dBm. Wel valt op dat het uitgangsvermogen bij de actieve detector bij AGC-werking een kleinere spreiding vertoont. Dit komt doordat de versterking bij de actieve detector veel hoger ligt dan bij de passieve detector. Het uitgangsvermogen wordt daarbij veel beter vastgelegd op een vaste waarde. Die grote versterking in het regelsignaal heeft echter als nadeel dat de lock range wordt beperkt. Dit heeft niet-lineariteiten tot gevolg, welke zichtbaar worden in het uitgangsspectrum van de tweede AGC-schakeling. De versterking wordt dus een compromis tussen lineairiteit en vastleggen van het uitgangsvermogen.
Hoofdstuk 8
Robuustheid DRM met toepassing op het kristalfilter 8.1
Inleiding
De DRM-standaard probeert de beperkte brandbreedte van de signalen (standaard 9 kHz in Europa) zo goed mogelijk te benutten. Hiervoor worden er vrij complexe modulatieen coderingstechnieken gebruikt (zie Hoofdstuk 2). De offici¨ele beschrijving van de DRMstandaard handelt enkel over de zender. Hoe werkt de ontvanger dan? Het antwoord luidt: Op die wijze, zodat hij de signalen van de zenders die voldoen aan de DRM-standaard kan ontvangen. Door de complexiteit van het systeem is het soms moeilijk te bepalen hoe robuust de DRM-software is en aan welke specificaties de front-end moet voldoen. Bij de keuze van de architectuur en componenten rijzen er soms twijfels. Indien een theoretische voorspelling moeilijk valt te bepalen, werd er gekozen om het probleem te simuleren. Hiervoor wordt er gebruik gemaakt van digitale opnames van DRM-signalen, beschikbaar op het internet, en het programma DIORAMA. In de gemengde heterodyne ontvanger (zie hoofdstuk 4) wordt na de eerste mengstap (naar 45 MHz) een kristalfilter gebruikt, zodat bijna uitsluitend het nuttig signaal overblijft. Het filter heeft een 3-dB bandbreedte van 30 kHz en een maximale ripple van 1 dB in de doorlaatband. In dit hoofdstuk wordt nagegaan of de DRM-signalen niet te hard vervormd worden door dit vrij smalle kristalfilter.
8.2
Simulatiemethode
Figuur 8.1 toont het simulatiemodel voor het filter. In de bovenste figuur wordt er een ideaal filter verondersteld. In de onderste figuur wordt dit vervangen door het kristalfilter. De 83
Hoofdstuk 8. Robuustheid DRM met toepassing op het kristalfilter
84
samples x(n), die resulteren uit een werkende DRM-front-end, en de transferfunctie H(f ) zijn gegeven. Hieruit worden de samples y(n) berekend, die dan getest worden met DIORAMA.
Figuur 8.1: Simulatiemethode
Het verband tussen de continue signalen xc (t) en yc (t) in het frequentiedomein wordt gegeven door: Y (f ) = H (f ) .X (f ) (8.1) Indien de eindige opname x(n) periodiek uitgebreid wordt, zullen ook de signalen xc (t) en yc (t) en y(n) periodiek zijn. Er kan aangetoond worden dat het volgende verband bestaat tussen de Discrete Fouriertransformaties van de signalen x(n) en y(n): [21] Yk = Hs (k.fs ) .Xk
(8.2)
Met fs de samplefrequentie van x(n). Hs (f ) is een aangepaste versie van H(f ). H(f ) bevindt zich rond 45 MHz, waar Hs (f ) zich rond de IF-frequentie van x(n) bevindt. Daarnaast werd ervoor gezorgd dat het filter re¨ele ingangssignalen omzet in re¨ele uitgangssignalen. Het negatieve spectrum van Hs (f ) is de complex toegevoegde van het positieve spectrum en bij 0 Hz geeft het filter geeft fasedraaiing. Een inverse fouriergetransformeerde van Yk levert dan de samples y(n) op, die worden getest met DIORAMA. Indien het filter in ware tijd zou worden nagebootst is het ingangssignaal niet meer periodiek. Bovenstaande vergelijking gaat dan niet meer op. Het filter zal dan op een andere manier nagebootst moeten worden. Gepaste technieken staan beschreven in [21].
Hoofdstuk 8. Robuustheid DRM met toepassing op het kristalfilter
8.3
85
Bepaling H(k.fs )
Figuur 8.2: Fitting amplitudekarakteristiek
Figuur 8.3: Fitting fasekarakteristiek
De filterkarakteristiek H(f ) is gekend op een eindig aantal meetpunten. Deze punten komen niet overeen met k.fs . Daarom zullen de meetresultaten ge¨ınterpoleerd worden. Hiervoor wordt het curvefittingprogramma Origin gebruikt. Dit levert de benaderingen in Figuren 8.2 en 8.3 op. De amplitudekarakteristiek wordt benaderd met een Gaussiaanse curve, de fasekarakteristiek met een Boltzmann curve.
8.4
Resultaten
De simulaties werden uitgevoerd voor verschillende fittings. Het spectrum werd verschoven met 500 Hz in beide richtingen om een fadingsverschijnsel in rekening te brengen. DIORAMA kan de signalen verwerken zonder een hoorbaar verschil. De waretijdsvoorstelling van de SNR geeft gelijkaardige resultaten als bij het oorspronkelijk sample. Het filter zal de correcte werking van de DRM-ontvanger dus niet verstoren.
Hoofdstuk 9
Hersampling In het eerste deel van dit hoofdstuk wordt de theorie over decimatie en interpolatie kort herhaald. Het tweede deel handelt over enkele praktische implementaties van de filters in een FPGA.
9.1
Theorie
Een digitaal signaal bestaat uit gekwantiseerde monsterwaarden. Om de Ts seconden wordt een nieuwe waarde aan het signaal toegekend. Opdat het signaal correct kan gereconstrueerd worden moet de samplerate fs = 1/Ts groter zijn dan twee keer de bandbreedte van het signaal. Bij hersampling wordt de initi¨ele samplerate fs1 van een signaal omgezet naar een samplerate fs2 . Er zijn drie klasses hersampling te onderscheiden: decimatie, interpolatie en een cascade van interpolatie en decimatie.
9.1.1
Decimatie
Indien fs1 een geheel veelvoud is van fs2 wordt decimatie toegepast. Een decimatiestap bestaat steeds uit een anti-aliasingfilter gevolgd door de eigenlijke decimatie (het selecteren van waarden om de R = fs1 /fs2 samples).
-fs1/2
-fs2
-fs2/2
fs2/2
fs2
fs1/2
Figuur 9.1: Decimatie aan de hand van een laagdoorlaatfilter
Het filter zorgt er voor dat er geen frequentieoverlap ontstaat in het nuttig frequentiebereik. Dit wordt toegelicht in Figuur 9.1. In de lichtgrijze band bevindt zich het nuttig signaal. Bij 86
Hoofdstuk 9. Hersampling
87
decimatie zonder filterstap van fs1 naar fs2 zullen alle signalen in de donkergrijze banden bij de lichtgrijze band worden opgeteld. Het nuttig signaal is dan niet meer te onderscheiden van de stoorsignalen. Daarom is er voor de decimatiestap een filter nodig, die de donkergrijze banden onderdrukt. De stippellijn in Figuur 9.1 toont een ideaal laagdoorlaatfilter dat de betreffende stoorsignalen onderdrukt. Een praktisch filter kent een beperkte onderdrukking (bijvoorbeeld 0,1 dB) in de doorlaatband (lichtgrijze band) en de donkergrijze banden worden voldoende verzwakt (bijvoorbeeld 60 dB). De overige signalen kennen een willekeurige onderdrukkig tussen 0,1 dB en 60 dB en zijn niet van belang. Met andere woorden: indien het nuttig frequentiebereik tot frequentie f reikt en de nieuwe samplerate fs2 bedraagt, zal f moeten doorgelaten worden met een beperkte ripple en fs2 -f zal voldoende verzwakt moeten worden.
Figuur 9.2: Decimatie aan de hand van een banddoorlaatfilter
Het is echter niet noodzakelijke dat het nuttig signaal rond 0 Hz gecentreerd ligt. Indien het signaal gecentreerd is rond een andere middenfrequentie gelden dezelfde regels, maar dan met het gebruik van een banddoorlaatfilter. Dit is toegelicht in Figuur 9.2.
9.1.2
Interpolatie
Indien fs1 een gehele deler is van fs2 wordt interpolatie gebruikt. Een interpolatiestap bestaat steeds uit de tussenvoeging van R − 1 = fs2 /fs1 − 1 nullen, gevolgd door een filter.
-fs2/2
-fs1
-fs1/2
fs1/2
fs1
fs2/2
Figuur 9.3: Interpolatie aan de hand van een laagdoorlaatfilter
Dit filter (zie Figuur 9.10) onderdrukt de kopies van het signaal in de band -fs2 /2,fs2 /2. Indien het nuttig frequentiebereik tot f reikt en de oude samplerate fs1 bedraagt, zal f moeten doorgelaten worden met minimum ripple en fs1 /2 zal voldoende verzwakt moeten worden. Een analoge redenering geldt voor signalen rond een andere middenfrequentie.
Hoofdstuk 9. Hersampling
88
Het filter zorgt voor reconstructie van de tussenliggende waarden: de ingevoegde nullen worden vervangen door correcte monsterwaarden. Hierbij wordt verondersteld dat er geen signalen in de band (f ,fs1 ) liggen. Met andere woorden het filter dient niet om te beletten dat er informatie verloren gaat. Zolang de correct gereconstrueerde monsterwaarden in het tijdsdomein nog niet nodig zijn voor verdere verwerking van het signaal, moet het filter nog niet toegepast worden. Wanneer de correcte waarden nodig zijn, mag enkel de frequentieband van het nuttig signaal bezet zijn.
9.1.3
Interpolatie gevolgd door decimatie
Indien de verhouding fs1 op fs2 een rationaal getal voorstelt, kan de hersampling gebeuren door een opeenvolging van een interpolatie en een decimatie. De cascade van het interpolatieen decimatiefilter kan gecombineerd worden tot ´e´en filter. De doorlaatband is gelijk aan de doorlaatband van de decimatie- en interpolatiefilter, de stopband wordt gegeven door de unie van van de stopbanden van beide filters. In een laagdoorlaatsysteem, waarbij het nuttig signaal tot f reikt, komt dit overeen met een stopband die begint vanaf minimum(fs1 /2,fs2 -f ). Indien de verhouding van fs1 op fs2 geen rationaal getal is, wordt die benaderd door een rationaal getal.
9.2 9.2.1
Praktische realisatie filters FIR-filter
Het FIR(Finitie Impulse Response)-filter is een veelgebruikt filter, waarvan de berekening bestaat uit een convolutie van het ingangssignaal en een reeks co¨effici¨enten ci : y (n) =
N −1 X
ci x (n − i)
(9.1)
i=0
In Matlab bestaat er een tool (FDAtool) die een 64-bitvoorstelling van de filterco¨effici¨enten uit opgegeven specificaties berekent. De coregenerator van Xilinx levert twee mogelijke implementaties van de FIR-filter: een MAC (Multiple Accumulator) implementatie en een DA (Distributed Arithmetic) implementatie. De filterco¨effici¨enten van deze implementaties zijn maximum 32 bit lang. Het aantal slices ingenomen door een filter neemt toe met de lengte van de filterco¨effici¨enten. Daarom wordt er gekozen voor een 16bit-voorstelling van de filterco¨effici¨enten. MAC-implementatie De MAC-implementatie is een letterlijke implementatie van de FIR-filter aan de hand van vermenigvuldigers en een accumulator. In Figuur 9.4 wordt een conventionele parallelle implementatie weergegeven. Voor 0 < i < N − 1 wordt de met i tijdseenheden vertraagde
Hoofdstuk 9. Hersampling
89
ingang met de ie co¨effici¨ent vermenigvuldigd. De som van al deze resultaten levert het huidig uitgangssignaal. Figure Top x-ref 1
x(n)
z-1
z-1
z-1
z-1
z-1
a(0)
a(1)
a(2)
a(3)
a(4)
a(N-1)
y(n) XIP161
Figuur 9.4: Conventionele MAC-implementatie
Figure 1: Conventional Tapped-delay Line FIR Filter Figure Top x-ref 2
In deze implementatie is het aantal gebruikte vermenigvuldigers gelijk aan de lengte van het filter. Ook het aantal slices ingenomen door het filter stijgt snel met het aantal co¨effici¨enten. Control
RDY FD -1 -1 -1 -1 -1 RFD z z z x(n) Indien de samplerate voldoende laag isz ten opzichte van de zklok kan het filter op een seri¨ele ND a(1) a(0) a(2) a(3) a(4) a(N-1) manier worden uitgevoerd. Figuur Data 9.5 toont een vereenvoudigd schema. Op elk moment zal er Storagedit resultaat wordt bij de voorlopige maar 1 vermenigvuldiging gebeuren, som van resultaten y(n) DIN geteld, na N stappen wordt het resultaat naar de uitgang gebracht en Q wordt de som terug op Figure Top x-ref 1
XIP161
Figure 1: Conventional Tapped-delay Line FIR Filter 0 gezet. Daarna kunnen deCoefficient berekingen herbeginnen.
Register
Storage
Figure Top x-ref 2
Control
XIP162
RDY RFD
FD ND Data Storage
Figure DIN 2: Single MAC Engine Block Diagram Q
Theory of Operation
Coefficient Storage
Register XIP162
The MAC FIR core performs a sum-of-products operation to compute the convolution sum. The convoThe 2:core supports filter functions: single-rate, polyphase lution sum is defined by Equation 1. Figure Single MAC Engine three Block Diagram Figuur 9.5: Seri¨ele MAC-implementatie decimation, and polyphase interpolation. Theory of Operation
Single-Rate
The MAC FIR core performs a sum-of-products operation to compute the convolution sum. The convo-
In praktijk seri¨eby le Equation aanpak 1.met aanpak gecombineerd opdat het filter lutionwordt sum is de defined The de coreparallelle supports three filter functions: single-rate, polyphase decimation, and polyphase interpolation. In a single-rate filter,werkt the output ratemogelijk is equal to the input sample rate.Het Theaantal filternodige output y(k) is snel genoeg en toch result zo weinig oppervlakte in beslag neemt. computedvermenigvuldigers according to Equation where N is the number filter coefficients i = 0,...,enNde- 1 are the Single-Rate hangt af1 van de ingangsklok fclk , deofsamplerate fsIN van a(i) de ingang filter coefficients and x(n) represents the result input In a het single-rate filter, ratetime-series. is equal to the input sample rate. The filter output y(k) is lengte van filter N : the output computed according to Equation 1 where N is the number of filter coefficients a(i) i = 0,..., N - 1 are the N–1 Equation 1 y (and k) = n )x the ( k –input n ) time-series. filter coefficients x(n) represents fsIN ∑ a (vermenigvuldigers .N (9.2) aantal = N–1 n=0 Equation 1 fclk y ( k ) = ∑ a ( n )x ( k – n ) n=0
Polyphase Decimator Polyphase Decimator
De MAC-implementatie van Xilinx kent nog andere optimalisaties, die bijvoorbeeld rekening
A polyphase decimation filterhet provides a single output resultufor every M input where M is where M is A polyphase decimation filter provides afilter. single output result for every M input sample, houden met de symmetrie van Hierover vindt meer uitleg insample, de datasheet. referred to as the decimation rate or rate change. Note that the output rate is 1/M'th of the input rate. referred to as theThe decimation rate or rate change. Note that the output rate is 1/M'th of the input rate. filter implementation exploits the low output sample rate by not starting a computation until a The filter implementation exploits low output sample rate by not starting a computation until a new set of M input samplesthe is available. new set of M input samplesInterpolator is available. Polyphase A polyphase interpolator filter provides L output results for each new input sample, where L is referred
Polyphase Interpolator to as the interpolation rate or rate change. Note that the output rate is L times the input rate. The filter is implemented as a computationally efficient polyphase architecture.
A polyphase interpolator filter provides L output results for each new input sample, where L is referred
Hoofdstuk 9. Hersampling
90
Een aantal interessante opties voor het DRM-ontwerp behandeld in deze scriptie zijn: • Het filter kan meerdere kanalen tegelijkertijd verwerken. De ingangssignalen van deze kanalen worden afwisselend aangebracht. • Naast filterwerking voorziet het filter een decimatie- en een interpolatiefunctionaliteit met frequentieverhoudingen van 2 tot en met 256. Deze functionaliteit werkt ook met meerdere kanalen.
Figuur 9.6: Bitvoorstelling van een 7-bitsignaal met een 5-bitresolutie
Het filter genereert een uitgang met een maximaal aantal bits, opdat er geen verlies van informatie is. Dit leidt tot een relatief groot aantal bits (bijvoorbeeld 35). Om de oppervlakte van de volgende blokken van het systeem (waaronder filters, die trouwens slechts een ingang met maximum 32 bits aanvaarden) te beperken, zullen er steeds 16 bits uit de uitgang van elk blok worden geselecteerd, die fungeren als ingang van het volgend blok. Traditioneel zullen de meest beduidende 16 bits worden doorgelaten, de anderen worden afgekapt, met andere woorden: het signaal wordt verder gekwantiseerd. Simulaties in ModelSim toonden al gauw dat - onafhankelijk van het ingangssignaal - enkele van de meest beduidende bits van de uitgang van het filter steeds aan elkaar gelijk zijn en dus enkel het tekenbit voorstellen. Deze situatie is geschetst in Figuur 9.6: het signaal bestaat uit 7 bits, waarvan de meest beduidende (bit 4, 5 en 6) aan elkaar gelijk zijn. Dit kan tot problemen leiden: Indien bijvoorbeeld de eerste (meest beduidende) 5 bits van het signaal in Figuur 9.6 geselecteerd worden, kent het signaal een resolutie van 3 bits in plaats van de verwachte 5 bits. Er wordt onnodig oppervlakte verbruikt voor deze beperkte resolutie. Na een cascade van enkele blokken kent het 5-bit uitgangssignaal mogelijks een eigenlijke resolutie van 1 bit. Op het tekenbit na is heel het signaal verloren. Het is dus belangrijk dat de juiste bits worden geselecteerd. Na onderzoek blijkt de MAC-implementatie bij het toekennen van het aantal bits aan de uitgang geen rekening te houden met de filterco¨effici¨enten. De lengte van de uitgang wordt steeds gegeven door: BU IT = log2 2BIN −1 .N.2BCOEF F −1 + 1 (9.3) met BU IT het aantal bits van de ingang, BIN het aantal bits van de ingang en BCOEF F het aantal bits van de co¨effici¨enten. Het maximum aantal bits dat effectief nodig voor een uitgang
Hoofdstuk 9. Hersampling
91
met volledige Distributed Arithmetic FIR resolutie, Filter v9.0
kan gevonden worden aan de hand van de maximale waarde die het filter moet kunnen genereren. De positieve co¨effici¨enten worden met de maximale ingang (2BIN −1 − 1) vermenigvuldigd, de negatieve co¨effici¨enten met de minimum ingang (−2BIN ). De som hiervan is de maximale waarde aan de uitgang van het filter. Het aantal nodige bits wordt gegeven door: x(n) z-1 z-1 z-1 z-1 z-1 &a(0) !' a(N-1) a(1) a(2) a(3) a(4) N −1 X BIN −1 BIN −1 BU IT,N U T T IG = log2 ci .if sign (ci ) = −1, −2 ,2 −1 +1 (9.4) .
y(n)
i=0
Figure 1: Conventional Tapped-Delay Line FIR Filter Mechanization
Bij het selecteren van de bits worden de eerste BU IT −BU IT,N U T T IG en de laatste BU IT,N U T T IG − Realization: Distributed Arithmetic 16 Filter weggekapt. Dit kan hard gecodeerd worden, mits dit niet afhangt van het variabel inA simplified view of a DA FIR is shown in Figure 2. In its most and direct form, DA-based computations gangssignaal. Indien men rekening wil houden metobvious het ingangssignaal kan men een digitale are bit-serial in nature—serial distributed arithmetic (SDA) FIR. Extensions to the basic algorithm remove this AGC implementeren, die gedurende een zekere tijd dearithmetic maximale uitgang bijhoudt en daaruit potential throughput limitation [2]. The advantage of a distributed approach is its efficiency of mechade nization. te selecteren bits bepaalt. The basic operations required are a sequence of table look-ups, additions, subtractions and shifts of the input data sequence. All of these functions efficiently map to FPGAs. Input samples are presented to the input parallel-to-serial shift register (PSC) at the input signal sample rate. As the new sample is serialized, the bit-wide outDA-implementatie put is presented to a bit-serial shift register or time-skew buffer (TSB). The TSB stores the input sample history in a bit-serial format and is used in forming the required inner-product computation. The TSB is itself constructed De DA-implementatie is een effici¨ente realisatie van het FIR-filter zonder het gebruik using a cascade of shorter bit–serial shift registers. The nodes in the cascade connection of TSBs are used as hardware vermenigvuldigers. Figuur 9.7 all toont eenpartial vereenvoudigd schema. address inputs to a look-up table. This LUT stores possible products [2] over the filter coefficient space.
van
Figure Top x-ref 2
DA LUT Address Sequence
Partial Products
Scaling Accumulator 2-1
2N Word LUT
x(n)
B
y(n)
Time Skew Buffer (TSB) PSC
Parallel-to-Serial Converter
N-1 Add/Sub Shift Registers subtract on last bit of DA procesing B-bit Shift Registers sequence
Figure 2: Serial Distributed Arithmetic FIR Filter
Figuur 9.7: Distributed Arithmetic FIR-Filter Several observations provide valuable insight into the operation of a DA FIR filter. In a conventional multiply-accumulate (MAC)-based FIR realization, the sample throughput is coupled to the filter length. With a DA architecture, the system sample rate is related to the bit precision of the input data samples. Each bit of an input e bit van Eerst worden bits van de ingang in een serieel buffersample geplaatst. De idee is dat de ninput sample must bedeindexed and processed in turn before a new output is available. For B-bit precision cycles are required to formvan a new output sample for aup nonsymmetrical filter, and B+1 clock de de samples, laatste BNclock ingangen aan de ingang een LUT (Look table) wordt gelegd, waaruit cycles are needed for a symmetrical filter. The rate at which data bits are indexed occurs at the bit-clock rate. The overeenkomstige uitgangsbit wordt gegenereerd. De uitgangsbit wordt dan met behulp van bit-clock frequency is greater than the filter sample rate (fs) and is equal to Bfs for a nonsymmetrical filter and shifting juiste manier bija het voorlopige resultaat opgeteld. Per keer dit gebeurt, (B+1)fsop foreen a symmetrical filter. In conventional instruction-set (processor) approach to thedat problem, the required de number operations are implemented usingera time-shared or scheduled MAC unit. Na schuiven bitsofinmultiply-accumulate het register een plaatstje op en wordt een nieuwe bit ingeschoven. The filter sample throughput is inversely proportional to the number of filter taps. As the filter length is increased, BIN stappen is een uitgangswaarde gekend. Intussen is er een nieuwe volledige ingangswaarde the system sample rate is proportionately decreased. This is not the case with DA-based architectures. The filter ingeschoven kunnenfrom de the berekeningen herbegonnen worden. sample rate isendecoupled filter length. The trade off introduced here is one of silicon area (FPGA logic resources) for time. As the filter length is increased in a DA FIR filter, more logic resources are consumed, but De throughput snelheidisvan deze implementatie hangt dus af van de bitresolutie aan de ingang en niet maintained.
van de lengte van het filter zoals bij de seri¨ele MAC-implementatie. Indien een hogere outputsamplerate dan fclk /BIN wordt verwacht, kan het filter worden gerealiseerd aan de hand 2
www.xilinx.com
DS240 May 21, 2004 Product Specification
Hoofdstuk 9. Hersampling
92
van een parallelle aanpak, waarbij de ingangswoorden worden opgedeeld in deelwoorden. Een ingangswoord van 16 bit wordt bijvoorbeeld opgedeeld in subwoorden van 4 bit. Er zijn dan 4 seri¨ele eenheden, die elk instaan voor het verwerken van 4 ingangsbits. Het aantal nodige realisaties van een serieel onderdeel van het filter hangt af van de ingangsklok, de samplerate aan de uitgang en het aantal bits aan de ingang. Dit aantal wordt op dezelfde manier bepaald als het aantal vermenigvuldigers van de MAC-implementatie, behalve dat het aantal eenheden een deler moet zijn van BIN (de vertraging van de seri¨ele implementatie) en dus niet gelijk is aan een decimaal getal tussen 1 en N − 1.
Figuur 9.8: Hardwareimplementatie LUT
In een FPGA bevat elke slice 2 LUTs met 4 ingangsbits en 1 uitgangsbit. Grotere LUTs worden gemaakt door een combinatie van deze kleinere LUTs. Figuur 9.8 toont een realisatie van een LUT met 10 ingangsbits. In de eerste trap zijn er 10 4 = 3 LUTs nodig, de volgende 3 en laatste trap bestaat uit 4 = 1 LUT. Indien het aantal basisLUTs (met 4 ingangen) gekend is, kan een grove schatting van het aantal slices ingenomen door het DA-filter gegeven door: #basisLU T s #slices ≈ (9.5) 2. min BIN , f fclk s,U IT Voor filters met 16-bit co¨effici¨enten en ingangssignalen, geeft deze formule een vrij goede benadering voor de oppervlakte ingenomen door het filter. De oppervlakte zal 1 `a 1,5 keer zo groot zijn als de schatting. Indien er weinig parallelle componenten nodig zijn, zal de schatting minder nauwkeurig zijn, omdat de controle-eenheden relatief meer oppervlakte innemen. De DA-implementatie kent talrijke optimalisaties voor verschillende types filters (zie datasheet). De optimalisatie voor een symmetrisch filter, wat in dit ontwerp gebruikt werd, leidt er toe dat slechts om de BIN + 1 klokperiodes een uitgang gecre¨eerd kan worden in plaats van om de BIN tikken. Indien de ingangswaarden een resolutie van 16 bits hebben, kan het filter dus bestaan uit 1,3,5,9 of 17 in plaats van 1,2,4,8 of 16 seri¨ele eenheden. Een aantal interessante opties van het filter voor het ontwerp zijn:
Hoofdstuk 9. Hersampling
93
• Het filter kan meerdere kanalen tegelijkertijd verwerken. De ingangssignalen van deze kanalen worden afwisselend aangebracht. • Naast de filterwerking voorziet het filter een decimatie- en een interpolatiefunctionaliteit met frequentieverhoudingen van 2 tot 8. Deze functionaliteit werkt echter niet voor meerdere kanalen. De MAC-implementatie kan deze functionaliteiten wel combineren en kent een maximale frequentieverhouding van 256. • Men kan er voor kiezen het filter te laten optimaliseren naar de betreffende filterco¨effici¨enten. Het probleem in verband met de overbodige bits aan de uitgang van het FIR-filter wordt hier ook aangepakt. Xilinx genereert echter vaak 1 bit meer aan de uitgang dan nodig, een theoretische bepaling van het aantal nodige bits is dus nog steeds van belang.
9.2.2
CIC-filter
Het CIC(Cascade Intergrator Comb)-filter is een effici¨ent decimatie- of interpolatiefilter, dat gebruikt wordt indien de nuttige frequentieband klein is ten opzichte van de helft van de samplerate (voor de decimatie of na de interpolatie). Figuur 9.9 toont een 2-traps decimatiefilter met als uitgangssamplerate ´e´en vijfde van de ingangssamplerate. Het CIC-filter bestaat enkel uit integratorstappen en combstappen en bevat geen vermenigvuldigingsstappen, wat de hardwarevereisten versoepelt.
Figuur 9.9: Tweetraps CIC-filter
Figuur 9.10: Een integratorstap met decimatiefactor 5
Figuur 9.10 toont een integratorstap. Het ingangssignaal wordt opgeteld bij het vorige uitgangssignaal. Het verband tussen de ingang en de uitgang wordt als volgt geschreven: y (n) = y (n − 1) + x (n)
(9.6)
Hoofdstuk 9. Hersampling
94
In het z-domein vertaalt dit zich als: HI (z) =
1 1 − z −1
(9.7)
Figuur 9.11: Een combstap
Figuur 9.11 toont een combstap . Het ingangssignaal wordt M tijdseenheden vertraagd en bij het huidige ingangssignaal opgeteld. Met andere woorden: y (n) = x (n) − x (n − M )
(9.8)
In het z-domein vertaalt zich dit als: HC (z) = 1 − z −RM
(9.9)
Een CIC-decimatiefilter (zoals getoond in Figuur 9.9) bestaat uit een reeks integratortrappen, gevolgd door een frequentieverlaging en een reeks decimatietrappen. Een reeks combstappen gevolgd door een frequentieverhoging (tussenvoeging van nullen) gevolgd door een reeks integratorstappen is een CIC-interpolatiefilter. De transfertfunctie van het geheel wordt gegeven door: !N RM −1 −RM N X 1 − z = z −k H (z) = HI (z)N HC (z)N = (9.10) 1 − z −1 k=0
Met N de orde van het filter (= het aantal integrator/comb stappen), R de decimatiefactor (fs1 /fs2 ) of de interpolatiefactor (fs2 /fs1 ) en M de vertragingsfactor van de comb. De bijhorende amplitudekarakteristiek is gelijk aan: N sin (πM f ) (9.11) |H (f )| = sin πf R Deze formule zal gebruikt worden voor het ontwerp van het filter. Het CIC-filter kent dus de volgende vrijheidsgraden: • De decimatiefactor R • De orde N van het filter
Hoofdstuk 9. Hersampling
95
• De vertraging van de combstappen, uitgedrukt in M tijdseenheden. M wordt meestal gelijk aan 1 of 2 gekozen. De invloed van deze factoren wordt aangetoond in onderstaande figuren. In Figuur 9.12 is een CIC-filter getoond met parameters R = 8, M = 1enN = 4. De horizontale as duidt de Cascaded Integrator-Comb (CIC) Filter V3.0 relatieve frequentie aan ten opzichte van fs1 voor decimatie en fs2 voor interpolatie. 0 0 DB
-50 -100
DB
R = 48 M= 1 N= 3
-50
-150 0
-100
100
R=8 M=1 R= N 48 =4
-50
M= 1 N= 8
0.1
0.2 0.3 Frequency
2
0.2 0.3 Frequency
0.4
0.5
-150 0
DB
DB
-2 0
R = 48 M= 1 N= 3
0
0
2
2
-100 0.4
-150 0
0.5
0.005
0
0.1
0.2 0.3 Frequency
0.4
2
R=8 0.2 0.3 0.4 M=1 Frequency N=4
0.1
R = 48 M=1 N=1
-50
0.5 DB
0.1
DB
150 0
DB
0
0
R = 48 0.015 0.01 M= 1 Frequency N= 8
R = 48 M=1 N=1
0
-2 0
0.5
1
Figure 7: CIC filter frequency response for N = 4, M = 1, R = 8.
1.5 2 Frequency
2.5
Figuur 9.12: Amplitude antwoord van een CIC-filter met R = 8, MFigure = 1enN =4 9: CIC filter frequency response for N = 1, -2 0
0.5
1
1.5 2 Frequency
2.5
-2 0
3 x 10
0.5
-3
1
0
1.5 2 Frequency
2.5
M = 1, R = 48.
3 x 10
-3
DB
DB
R =for 8N Figure 13: CICfilter filter frequency response N == 8, 8 in plaats van 4. Figuur 9.13 toont een gelijkaardig maar met orde 0 Zoals verwacht M=2 M = 1, R = 48.-50 ure 11: CIC filter frequency response for N = 3, = 4 een grotere verzwakking ten opzichte 1, R = 48. uit de formule van de amplitudekarakteristiek toontN dit -50 -100 van 0 Hz. Dit geldt zowel voor de doorlaatband als voor de stopband. -100 -150 0
0
R = 48 M=1 N =4
150 0
-150 0
0.1
0.2 0.3 Frequency
0.4
0.5
0.1
2
4 6 0.2 Frequency 0.3
0.4
8
DB
0
0.2 0.3 Frequency
0.4
R = 48 M= 1 N= 2
0
0.5 -3
x 10
-2 0
R=8 M=1 N=8
1
-1 -2 0
-1 -2 0
0.1
2
2 Figure 8: CIC Filter Frequency Response for N = 4, M = 2, R = 8.
R = 48 M=1 N =4
0
-150 0
Frequency
2 1
0
R = 48 M= 1 N= 2
0.5
RR = =8 8 MM = =1 2 NN = =8 4
1 DB
-100
DB
100
0.4
2
-50 DB
-50
0.2 0.3 Frequency
DB
0
0.1
x
0.5
1
1.5 2 Frequency
2.5 x
Figure 10: CIC filter frequency response for N = 2, M = 1, R = 48.
-1 0.5
1
1.5 2 Frequency
2.5
3 x 10
-3
ure 12: CIC filter frequency response for NFiguur = 4, 1, R = 48.
rch 14, 2002
-2 0
0.005
0.01 Frequency
0.015
Figure 14: CIC filter frequency response for N = 8,
9.13: Amplitude M = 1, R = 8. antwoord van een CIC-filter met R = 8, M = 1enN = 8
In Figuur 9.14 wordt een gelijkaardig filter als in Figuur 9.12 weergegeven, maar met M = 2 in plaats van M = 1. De amplitudekarakteristiek is bij wijze van spreken samengedrukt, waardoor er 8 steilere lobes in de band [0, fsIN /2] zijn te onderscheiden en er dus een sterkere 4 verzwakking plaatsvindt.
5
March
DB
2
R=8 M=1 N=4 DB
0
-2 0
0.005
0.01 Frequency
R = 48 M=1 N=1
0
0.015
-2 0
0.5
1
Figure 7: CIC filter frequency response for N = 4, M = 1, R = 8.
Hoofdstuk 9. Hersampling
1.5 2 Frequency 96
2.5
Figure 9: CIC filter frequency response for N = 1, M = 1, R = 48. 0
R=8 M=2 N=4
DB
-50
0
-100 0.1
0.2 0.3 Frequency
-1000
DB
2
0.1
0.2 0.3 Frequency 4 6 Frequency
2
0.5
1
1.5 2 Frequency
0.4
-100
0.4
0.5
-150 0 0
8
0.1
0.2 0.3 Frequency
R = 48 M= 1 0.4 N= 2
0.
2
x 10
-3
R = 48 Figure 8: CIC Filter Frequency Response M = 1 for N = 4, M = 2, R0=antwoord 8. N= 3 Amplitude van een CIC-filter met
-2 0
48 0.2 R = 0.3 M= 1 Frequency N= 8
0.1
-50
N=4
DB
Figuur 9.14:
0
-150 0
DB
-1 -150 0 -2 0 2
0.5
R = 48 M == 81 R N= = 23 M
-50 1
DB
DB
0 2
0.4
2.5
-2 0
DB
-150 0
R = 48 M= 1 N= 2
-50
DB
-100
0.5
0
R = 8, M = 2enN = 8
3 -3
1
R = 48 1.5 M= 12 Frequency N= 8
2.5
-2 Figure 0 10:0.5CIC filter 1 frequency 1.5 2response 2.5 for N3 = -3 M = 1, R = 48. Frequency x 10
Figuur 9.15 toont een gelijkaardig filter als in Figuur 9.15,x 10maar met R = 48 in plaats van Figure 13: CIC filter frequency response for N = 8, M = 1, R = 48. CIC filterlobes frequency for N =[0, 3, f R = 8. Er valt op dat er 6 Figure keer11:zoveel inresponse de band sIN /2] zijn en dat de lobes ook M = 1, R = 48. steiler zijn. 0
0
R = 48 M=1 N =4
-100 -150 0
-100
0.1
0.2 0.3 Frequency
0.4
0.5
-150 0
2 1
R = 48 M=1 N =4
0.2 0.3 Frequency
0.4
0 -1
0 -1
0.5
1
1.5 2 Frequency
2.5
3 x 10
Figure 12: CIC filter frequency response for N = 4,
-3
-2 0
0.005
0.01 Frequency
Voorgaande grafieken werden herschaald, opdat er geen DC-versterking is. Bij een echte implementatie neemt het aantal bits steeds toe naarmate men vordert in het filter. Er zal dus altijd sprake zijn van een offset gegeneereerd door het filter. Uit de amplitudekarakteristiek wordt de totale DC-versterking bepaald door: (9.12)
March 14, 2002
Het aantal bits aan de uitgang wordt dus gegeven door: BU IT = dN log2 (RM ) + BIN e
0.015
Figure 14: CIC filter frequency response for N = 8,
= 1,= R =1enN 8. Figuur 9.15: Amplitude antwoord van een CIC-filter met R = 48,MM =8 M = 1, R = 48.
G = (RM )N
0.5
Mar R=8 M=1 N=8
1 DB
DB
0.1
2
4
-2 0
R=8 M=1 N=8
-50 DB
DB
-50
(9.13)
Hoofdstuk 9. Hersampling
97
met N de orde van het filter, R de decimatie/interpolatiefactor, M de vertraging van de combstappen, BU IT het aantal bits aan de uitgang en BIN het aantal bits aan de ingang. Er kan gekozen worden om de eerste 16 bits van het filter te selecteren. In het filter zelf mogen er geen bits verwijderd worden: door de integratorstappen zouden kleine quantisatiefouten resulteren in zeer grote fouten aan de uitgang.
Hoofdstuk 10
Digitale AGC in een FPGA Bij het ontwerp behandeld in deze scriptie werd gebruik gemaakt van een SPARTAN-3E starter kit, waarop de SPARTAN 3-E XC3S500E FPGA staat. Deze FPGA volstaat voor deze thesis en biedt tal van mogelijkheden. Door de vrij beperkte hoeveelheid aan slices (4656) zal het ontwerp zorgvuldig moeten worden uitgevoerd. Een van de voornaamste gevolgen van het beperkt aantal slices, is dat de digitale signalen in het systeem een beperkte resolutie zullen kennen. Waar in meer geavanceerde FPGA’s 64-bit woorden kunnen gebruikt worden, zal er in dit ontwerp gekozen worden voor maximaal 16-bit woorden. Dit zal de nodige oppervlakte met ongeveer een factor 4 verkleinen. Het beperkte aantal bits heeft natuurlijk een effect op de nauwkeurigheid van de signalen. Per bit stijgt de maximale SNR met 6 dB. Waar 64-bit woorden een maximale SNR (Signal to noise ratio) van 384 dB kennen, zal dit bij 16-bit woorden maximaal 96 dB zijn. In het kader van deze scriptie kan dit echter geen kwaad, aangezien de beperking op de SNR door de analoge front-end opgelegd wordt. Er wordt bijvoorbeeld een ADC van 14 bit gebruikt. De SNR zal dan ook niet hoger kunnen zijn dan 84 dB. Het is echter niet evident dat elk blok in de FPGA maximaal wordt aangestuurd. Dit kan tot een drastische verlaging van de SNR leiden, waardoor het signaal gaat degraderen. Hier werd reeds een eerste indicatie over gegeven in hoofdstuk 9. Na elk verwerkingsblok worden de eerste 16 bits uit de uitgang geselecteerd. Indien het verwerkingsblok echter niet maximaal werd aangestuurd, zullen ook niet alle bits aan de uitgang benut worden. Een 16-bit signaal, waarvan de 12 laatste bits effectief informatie bevatten, wordt bijvoorbeeld gekwadrateerd. Dit resulteert in een uitgang van 32 bits, waarvan de 24 laatste informatie bevatten. Indien de eerste 16 bits worden geselecteerd, zullen er nog maar 8 bits informatie bevatten. De SNR is dus 48 dB lager dan bij volledige aansturing van het kwadrateerblokje. Na een cascade van heel wat verwerkingsblokken, die op deze manier worden uitgevoerd, stapelt het verlies aan SNR zich op. 98
Hoofdstuk 10. Digitale AGC in een FPGA
99
Het is dus belangrijk dat elk van deze blokken maximaal worden aangestuurd. Met andere woorden, het systeem heeft een digitale versterking nodig. Mits de versterking afhangt van de onbekende signalen, zal er een Autamic Gain Controller nodig zijn. Dit hoofdstuk behandelt de implementatie van de AGC in een FPGA.
10.1
Implementatie aan de hand van bitselectie
10.1.1
Principe
De AGC zorgt ervoor dat daarop het volgende blokje in de cascade maximaal wordt aangestuurd. Daarvoor houdt de AGC gedurende een zekere tijd de maximale ingangswaarde bij. Hieruit bepaalt hij hoeveel bits het signaal naar links mag worden opgeschoven. Indien het signaal x bits naar links wordt verschoven, wordt het eigenlijk met 2x vermenigvuldigd. De versterking is dus niet evenredig met de maximale absolute waarde. De grafiek, die de versterking uitzet ten opzichte van de maximale ingansamplitude, is een trapvorm. Voor 2-complements 6-bitwoorden in deze grafiek getoond in Figuur 10.1(a). De bijhorende uitgangsamplitude is geschetst in Figuur 10.1(b).
(a) Versterking
(b) Maximale absolute waarde aan uitgang
Figuur 10.1: Grafieken Digitale AGC
De tijd, waarin de AGC zijn maximale waarde bijhoudt is bijvoorbeeld 50 ms. Dit komt overeen met 20 Hz. In de band 0-20 Hz bevindt er zich immers geen informatie. Een AGC onderdrukt dus de laagfrequente variaties van de signaalamplitude.
10.1.2
Stabiliteit
Figuur 10.1(b) vertoont sterke sprongen. Dit komt omdat er enkel met een macht van 2 vermenigvuldigd kan worden. Door ruis zal de maximale absolute waarde van het ingangssignaal lichtjes fluctueren. Indien deze fluctueert rond een macht van 2, zal de versterking aan een snel tempo vari¨eren. Dit is een ongewenst gedrag. Bij AM-signalen leidt dit tot een vari¨erend volume van de audiosignalen. DRM-signalen kunnen helemaal niet meer gedecodeerd worden.
Hoofdstuk 10. Digitale AGC in een FPGA
100
In de DRM-software is bijvoorbeeld een DFT nodig van een 200-tal waarden. Indien de ingangswaarden van de DFT niet allemaal een gelijkaardige versterking kennen zal het signaal oncodeerbaar zijn. Het is gewenst dat het systeem zich op een stabiele manier in ´e´en van de werkingsgebieden bevindt, zodat de versterking constant is. Hiervoor wordt de AGC uitgebreid met de volgende opties: • Een hysterislus • Uitmiddeling van de maximale amplitude Deze twee opties zullen in dit onderdeel besproken worden. Hysteresislus De hysterislus houdt rekening met een licht fluctuerend verloop van de maximale absolute waarde rond een beslissingsiveau uit figuur 10.1(a). Hierbij wordt vooropgesteld dat deze waarde maximaal 10 % fluctueert rond zijn nominale waarde. Elk beslissingsniveau wordt opgedeeld in twee beslissingsniveaus: een ondergrens voor een stijgende en een bovengrens voor een dalende maximale absolute waarde. De oorspronkelijke grenzen worden ”harde grenzen” genoemd, de twee resulterende grenzen ”zachte grenzen”. Figuur 10.2 zal de werking van de hysteresis verduidelijken. De harde grenzen worden aangeduid met volle lijnen, de zachte ondergrenzen met gestreepte lijnen en de zachte bovengrenzen met gestippelde lijnen. De golfvormen stellen de opgeslagen maximale absolute waarde per eenheidstijd (bijvoorbeeld 44 ms) over de tijd voor. x2
x4
x8 (a)
(b)
(c)
(d)
Figuur 10.2: Hysteresislus
Figuur 10.2 toont 4 mogelijke situaties: • situatie a: De maximale absolute waarde bevindt zich niet rond een macht van 2. Er is dus geen
Hoofdstuk 10. Digitale AGC in een FPGA
101
sprake van fluctuatie in de versterking. De versterking is gelijk aan 4. In deze situatie treedt er geen probleem op. • situatie b: De maximale absolute waarde bevindt zich rond een harde grens. Indien er geen hysteresislus wordt voorzien, zal de versterking verspringen tussen 2 en 4. • situatie c: Dit is dezelfde situatie als situatie b. Deze keer worden er zachte in de plaats van harde grenzen gebruikt. De maximale absolute waarde bevindt zich steeds tussen de onder-en bovengrenzen. De versterking zal constant blijven. Indien de absolute waarde toch groter zou worden als de zachte ondergrens, zou een versterking gelijk aan 2 gekozen worden. Daarna zal de maximale absolute waarde moeten dalen tot onder de zachte bovengrens voor dalende curves (stippellijn), alvorens een versterking van 4 gekozen wordt. • situatie d: Het kan geen kwaad dat de maximale absolute waarde rond een zachte grens fluctueert. In de situatie geschetst in situatie d komt de maximale waarde onder de zachte bovengrens terecht: er wordt beslist om te versterken met een factor 4. De maximale waarde komt echter nooit meer boven de zachte ondergrens. De versterking zal dus niet wijzigen De zachte grenzen worden gekozen op 10% afwijking van de harde grenzen. Indien nodig kan er ook een hoger percentage gekozen worden. De grenzen moeten natuurlijk opgeschoven worden, zodat de bovenste zachte grenzen (de ondergrenzen) gelijk aan of lager dan de harde grenzen worden gekozen. Wordt dit niet gedaan, zal het signaal overstuurd worden.
Uitmiddeling In eerste instantie werd de marge van de hysteresislus op 10 % gezet. Bij het testen aan de hand van een sinus versprong de amplitude vrij regelmatig. 20 % instellen bood echter geen oplossing. De versterking van de AGC wordt bepaald aan de hand van een maximum, bijgehouden over een zeker tijdseenheid. De beslissing in verband met de versterking is dus slechts gebaseerd op 1 waarde. Wanneer er net een stoorpiek door het systeem vloeit, zal de controlelus zich daar op baseren. Daarom werd er gekozen om een aantal (bijvoorbeeld 128) maximale waarden uit te middelen, alvorens de versterking aan te passen. Bij implementatie van enkele AGC’s in een volledig systeem, zoals in hoofdstuk 12, viel af en toe (bijvoorbeeld om de minuut) een korte tijd (1 sec) oversturing van de signalen op. Dit valt
Hoofdstuk 10. Digitale AGC in een FPGA
102
te wijten aan stoorsignalen. Om oversturing te vermijden, werd gekozen om een bit minder op te schuiven. Dit heeft tot gevolg dat de aansturing niet maximaal is. Er zal 6 dB verloren gaan. Het systeem zal nog steeds voldoende bits gebruiken, zodat dit verlies is toegestaan.
10.1.3
Resultaten
Verificatie en optimalisatie De werking van de AGC werd getest door middel van een simulatie in Modelsim. Deze simulatie houdt echter maar in beperkte mate rekening met ruis. De ruisinvloed van het systeem is moeilijk na te bootsen. Daarom werd er gekozen om meteen het systeem in hardware te testen. De eerste meting maakt gebruik van een sinusbron, de ADC uit 5, de FPGA en een oscilloscoop. De ADC bemonstert het signaal uit de sinusbron aan 80 Msamples/s. Deze monsterwaarden worden door de FPGA ingelezen. Daar worden ze door een AGC gestuurd en gedecimeerd naar 50 kSamples/s. Mits het signaal enkel bestaat uit een sinus en een beperkte hoeveelheid ruis, wordt er geen decimatiefilter gebruikt. Deze digitale waarden worden naar de 12-bit DAC van de SPARTAN starter kit gestuurd. De communicatie tussen de FPGA en de DAC maakt gebruik van het SPI (System Packet Interface) protocol. Dit gebeurt aan de hand van een kleine processor, een picoblaze, die in de FPGA wordt ge¨emuleerd en geprogrammeerd. De DAC heeft een maximale uitgangsspanning van 3,3 V. In eerste instantie werd geen gebruik gemaakt van de uitmiddelingsfunctie en de extra bit om oversturing tegen te houden. De metingen toonden aan dat de AGC-schakeling werkt: de amplitude van het uitgangssignaal ligt tussen 1,65 V en 3,3 V. De schakeling is echter gevoelig aan ruis. Af en toe (bijvoorbeeld om de minuut, gedurende 1 seconde) verspringt de versterking van de AGC, waardoor de amplitude bijvoorbeeld tussen 825 mV en 1,65 ligt. Dit ligt aan stoorsignalen, die de versterking van de AGC bepalen. De stoorsignalen interfereren immers met het nuttig signaal, waardoor de maximale waarde verandert. De schakeling werd aangepast door de uitmiddelingsfunctie toe te voegen. Het testen van de AGC-schakeling bracht een tweede imperfectie aan het licht. Bij lagere ingangsvermogens (bijvoorbeeld -20 dBm) vertoont het circuit een DC-offset. Er is dus een kleine DC-offset aan de ingang van de FPGA, die versterkt wordt in de FPGA. De kleine DC-offset, ontstaan in de cascade van sinusbron en ADC, is onvermijdelijk. Om toch de volledige signaalresolutie te benutten zal er voor de AGC een hoogdoorlaatfilter voorzien moeten worden.
Hoofdstuk 10. Digitale AGC in een FPGA
103
Kwalitatieve meting Er werd aangetoond dat de AGC werkt. Nu wordt er overgegaan naar een kwalitatieve meting. Het systeem in de FPGA wordt lichtjes aangepast. De AGC is nu wel voorzien van een uitmiddelingsfunctie. Om de invloed van ruis te beperken wordt eerst een banddoorlaatfilter geplaatst. Hierop volgt de AGCschakeling. Daarna wordt het signaal hersampled naar 48 kSamples/s. Eerst wordt het signaal, zonder een decimatiefilter, gedecimeerd naar 8 kSamples/s. Tenslotte wordt het ge¨ınterpoleerd naar 48 kSamples/s. De interpolatie wordt gevolgd door een interpolatiefilter. De uitgang van de DAC wordt in de microfooningang van de computer gestoken. De DREAM-software bemonstert dit signaal aan 48 kSamples/s en geeft het spectrum van dit signaal weer. Het ingangssignaal is een sinus met frequentie 5,001 MHz, waarvan het vermogen wordt verlaagd in stappen van 3 dB. Het spectrum in DREAM wordt uitgedrukt in dB. Er wordt nagegaan of de uitgangsamplitude zich steeds rond dezelfde waarde situeert. Figuur 10.3(a) toont de uitgang ten opzichte van het ingangsvermogen. Wanneer het ingangsvermogen 4 dBm bedraagt wordt de ADC maximaal aangestuurd. Er wordt verondersteld dat de AGC geen versterking uitvoert bij een ingangsvermogen van 3 dBm. De versterking wordt dan in functie van het ingangsvermogen getoond in figuur 10.3(b).
(a) Uitgang
(b) Versterking
Figuur 10.3: Metingen Digitale AGC
Bovenstaande grafieken tonen een gelijkaardig verloop als in figuur 10.1. Indien het ingangsvermogen 6 dB verandert, wijzigt de versterking. De versterking toont eenzelfde trapverloop als in figuur 10.1. Bij lage ingangsamplitude valt er echter een verschil op te merken. De uitgang zal niet meer stijgen. De oorzaak hiervan ligt bij de implementatie van de AGC in de FPGA. Er werd immers een beperking op de versterking opgelegd.
Hoofdstuk 10. Digitale AGC in een FPGA
10.1.4
104
Besluit
De versterking wordt gerealiseerd met een LUT, die aan de hand van een schuifwaarde de juiste ingangsbits selecteert. Dit is een zeer effici¨ente manier om een versterking uit te voeren. Het berekenen van de schuifwaarde vraagt echter heel wat logica: het maximum moet bijgehouden worden, er moet uitgemiddeld worden en de schuifwaarde moet bepaald worden aan de hand van een hysteresislus. Een 14-bit AGC neemt ongeveer 8% van het totaal aantal slices van de FPGA in beslag. De robuustheid van de AGC is sterk afhankelijk van de ruis. Indien er geen wisseling van versterking mag voorkomen en de hysteresislus op 20 % wordt ingesteld, moet de SNR minimum gelijk zijn aan 14 dB (= 20 log (100/20)). Simulaties met DIORAMA wijzen er echter op dat de versterking wel mag verspringen. De DRM-software is immers voorzien van een kanaalestimatie-eenheid. Indien een tijdsconstante van 1 seconde gebruikt wordt, mag de √ versterking met een factor 5 fluctueren. In deze implementatie mag de huidige versterking dus een factor 2 afwijken van de gemiddelde versterking. Met andere woorden: er mag 1 zachte grens van de hysteresislus overschreden worden. Signalen met SNR groter of gelijk aan 4,4 dB zullen hieraan voldoen. De DRM-software werkt met signalen bemonsterd aan 48 kSamples/s. De SNR van deze signalen moet minstens gelijk zijn aan 20-25 dB. De DRM-software legt dus een eis op de SNR voor de band van 24 kHz, die wordt verwerkt. De AGC stelt ook een eis op de SNR voor de band, waarin hij werkt. Deze band kan breder zijn dan de 24-kHz band gebruikt door de DRM-software. In deze paragraaf wordt de invloed van de bandbreedte op de ruis en dus op de AGC nagegaan.
Figuur 10.4: Voorbeeld ter verduidelijking van de ruisinvloed op de AGC
Figuur 10.4 toont een mogelijke situatie. De eerste AGC (a) in het systeem wordt gebruikt bij 2 Msamples/s, wat overeenkomt met een bandbreedte van 1 MHz. Op het einde van het systeem leest de DRM-software (b) het signaal binnen aan 48 kSamples/s. Tussen deze twee stappen gebeuren er andere verwerkingen, zoals decimatie en interpolatie. Er wordt verondersteld dat alle decimatiestappen met behulp van een perfect decimatiefilter gebeuren. Dit filter laat dus alle signalen tot fsnieuw /2 door en onderdrukt alle signalen boven fsnieuw /2 volledig.
Hoofdstuk 10. Digitale AGC in een FPGA
105
Figuur 10.5: Voorbeeld ter verduidelijking van de ruisinvloed op de AGC
Figuur 10.5 toont het spectrum op plaats (a) en (b) van het systeem. Er wordt verondersteld dat de ruis uniform verdeeld is. Mits de decimatiefilters ideaal worden ondersteld, is de spectrale hoogte van de ruis op plaats (a) gelijk aan deze op plaats (b). Indien de spectrale ruisdichtheid gelijk is aan N0 /2 en de bandbreedte gelijk aan W, wordt de totale ruisenergie gegeven door W.N0 /2. De SNR is dus omgekeerd evenredig met de samplefrequentie. Dit wil zeggen dat de SNR op plaats (a) 32 dB (= 20 log (1 M Hz/24 kHz)) lager is dan op plaats (b). De DRM-software verwacht een SNR van 20 dB op plaats (b). De SNR op plaats (a) moet dus gelijk zijn aan -12 dB. De AGC verwacht een SNR van 4,4 dB op plaats (a), wat overeenkomt met een SNR van 36,4 dB op plaats (b). In het geval van uniforme ruis, zal de AGC een (met 16 dB) strengere eis opleggen aan de SNR dan de DRM-software.
Figuur 10.6: De invloed van de smalbandige ruis
In praktijk zal blijken dat er vrij gemakkelijk aan deze strengere eis zal voldaan worden. De beperkende factor van de DRM-ontvanger zal echter niet de ruisvloer zijn, maar een smalbandige ruis rond het nuttig signaal. In de analoge front-end wordt de breedbandruis bijvoorbeeld weggefilterd door een kristalfilter. Figuur 10.6 toont het spectrum in deze situatie, waarbij een ideaal filter wordt ondersteld. De DRM-software zal dan een voorwaarde op deze smalbandige ruis opleggen, waar de AGC een voorwaarde op de breedbandige ruis legt. Veronderstel dat de smalbandige ruis uniform verdeeld is over een breedte van 60 kHz en er net voldaan is aan de voorwaarde opgelegd door de DRM-software. De ruisvloer zal x aantal
Hoofdstuk 10. Digitale AGC in een FPGA
106
dB lager moeten liggen dan de smalbandruis, met x gegeven door: x = 20 log
1000 kHz − 60 kHz − 20 dB + 4, 4 dB = 16 dB 24 kHz
(10.1)
Dit is een zeer realistische ondergrens. De AGC, uitgevoerd aan de hand van shifting, zal geen beperkende factor vormen. In de FPGA wordt dus liefst zoveel mogelijk ruis voor de eerste AGC weggefilterd. Omdat de filters in het begin van het systeem worden geplaatst, zullen ze werken aan een hoge samplerate. Dit wil zeggen dat het filter veel plaats zal innemen. De mogelijkheid om op deze manier de verwachte SNR van de analoge front-end te verlagen is dus beperkt. Indien er meerdere AGC’s nodig zijn, moeten ze na elkaar schakelen. De maximale waarde moeten op niet overlappende tijdseenheden worden bijgehouden. Indien hier niet aan voldaan is, zal een sprong in de eerste AGC meerdere sprongen in verdere AGC’s tot gevolg hebben. Dit resulteert in heel hoge versterkingssprongen aan de uitgang. Het blokje dat de maximale waarde bijhoudt, uitmiddelt en de schuifwaarde bepaalt, kan nu door de verschillende AGCs hergebruikt worden.
10.2
Implementatie aan de hand van vermenigvuldiging
10.2.1
Principe
In een tweede implementatie van de AGC worden grote sprongen vermeden door een meer nauwkeurige vermenigvuldiging uit te voeren. In eerste instantie werd gedacht aan een vermenigvuldiging met alle natuurlijke getallen. Dit levert echter geen oplossing voor de grote fluctuaties van de maximale absolute waarde aan de uitgang. Figuur 10.1(b) toont immers dat de grootste sprong in de maximale absolute waarde aan de uitgang voorkomt tussen de vermenigvuldiging met 2 of 1. De vermenigvuldiging zal dus moeten gebeuren aan de hand van vaste kommagetallen. Voor de komma zullen er N-1 bits plaatsvinden. Het aantal bits na de komma bepaalt de grootte van de grootste sprong. De grafiek op figuur 10.7 toont de maximale afwijking van de maximale absolute waarde aan de uitgang voor 14-bit signalen.
Hoofdstuk 10. Digitale AGC in een FPGA
107
Figuur 10.7: Hysteresislus
Vanaf 13 bits na de komma, levert een extra bit niets meer op. De maximale absolute waarde aan de uitgang is gelijk aan 2N −1 − 1 of 2N −1 − 2.
10.2.2
Implementatie
Een 14-bit AGC werd gerealiseerd in FPGA. Er werden 13 bits na de komma gekozen. Er is dan geen hysteresislus nodig. De maximale absolute waarde wordt bijgehouden gedurende een zekere tijd en uitgemiddeld over 128 waarden. Daarna wordt de maximaal mogelijke absolute waarde gedeeld door deze waarde. Dit bepaalt de versterking. Na versterking worden de bits na de komma weggelaten. Deze implementatie neemt 12 procent van het totaal aantal slices in beslag.
10.2.3
Robuustheid
Door ruis zal de maximale waarde altijd fluctueren. Dit wil zeggen dat de versterking elke seconde verandert. De variatie in versterking hangt af van de hoeveelheid ruis. Hoeveel ruis is er in deze implementatie toegelaten? √ Een maximale variatie van 5 in de versterking is toegelaten. In de signaalamplitude gelijk aan 1 is, wordt de maximale toegelaten ruis gegeven door sqrt(5) − 1. De minimale SNR is dus gelijk aan 20 log(1/(sqrt(5) − 1)) = −1, 84 dB. De ruisvloer mag dus 6 dB stijgen ten opzichte van de AGC aan de hand van shifting. Ook in deze implementatie moeten de verschillende AGCs afwisselend schakelen. De versterker, die hier uitgevoerd wordt door de uitgebreide vermenigvuldiging, kan niet hergebruikt worden. Dit ontwerp zal minder effici¨ent in oppervlakteverbruik zijn dan de vorige implementatie.
Hoofdstuk 10. Digitale AGC in een FPGA
10.3
108
Toepassingen
Waar is zo een versterking in het systeem nodig? In deze thesis worden drie toepassingen onderscheiden: • Vooraan (na de ADC): In het ideale geval zal een analoge AGC ervoor zorgen dat de analoog-naar-digitaal omzetter maximaal wordt aangestuurd. In de praktijk is dit echter niet zo evident. Er is dus een AGC nodig vlak na digitalisering. Er werd reeds vastgesteld dat de AGC gevoelig is aan ruis en aan een kleine DC-offset. Daarom zal de AGC voorafgegaan worden door een banddoorlaatfilter. • Achteraan: Het resulterende signaal moet naar buiten gebracht worden. Het gewenste uitgangssignaal is digitaal of analoog. In beide gevallen zal een AGC nodig zijn. Indien het volgende blok digitaal is, zal bij het gebruik van een AGC zijn volledige bitresolutie worden benut. Wanneer een analoog uitgangssignaal gewenst is, zal de FPGA een DAC aansturen. Maximale aansturing van de DAC verhoogt de SNR van het analoge uitgangssignaal. • Middenin: Ondanks dat het verwerkingsblok volledig wordt aangestuurd, kan het signaal toch verloren gaan. Dit valt te wijten aan de beperkte 14- of 16-bit resolutie. Er zijn tal van bewerkingen, waarbij dit probleem kan voorkomen. In dit onderdeel bespreken we enkele problemen die kunnen optreden bij filters. Indien sterke signalen aanwezig zijn in de stopband van het filter en er zich in de doorlaatband enkel zwakke signalen bevinden, zal de maximale absolute waarde aan de uitgang van het filter beperkt zijn. Het is dus belangrijk dat de juiste 16 bits aan de uitgang worden geselecteerd. Met andere woorden een AGC is onontbeerlijk. Er kan ook een probleem optreden indien er bijvoorbeeld een zuivere sinus in de doorlaatband wordt aangelegd. Dit heeft te maken met interferentie. Het berekende maximale aantal bits aan de uitgang van een filter houdt immers rekening met de maximale constructieve interferentie, die kan optreden aan de uitgang. Indien bijvoorbeeld een zuivere sinus aan het filter wordt gelegd treedt er geen interferentie op. Er zullen minder bits dan het maximum nodig zijn aan de uitgang. Ook kan het voorkomen dat het signaal destructieve interferentie aan de uitgang van het filter ondergaat. Hoe kan een filter het interferentiepatroon van een signaal wijzigen? Dit wordt aan de hand van een klein voorbeeldje uitgelegd. Aan de ingang van het filter wordt een som
Hoofdstuk 10. Digitale AGC in een FPGA
109
van twee sinussen aangelegd: y (t) = A cos (ωt + φ) + B cos (2ωt)
(10.2)
ω en 2ω bevinden zich in de doorlaatband van het filter. De maximale waarde is gelijk aan A cos (φ) + B of A + B cos (φ). Aan de uitgang van het filter is het signaal bijvoorbeeld gelijk aan: y (t) = A cos (ωt) + B cos (2ωt) (10.3) Dit is mogelijk, mits het filter een lineaire faseverandering kent en het signaal geen onderdrukking ondergaat. Het maximum van het uitgangssignaal is dan gelijk aan A + B. Dit is groter dan het maximum aan de ingang. Er is echter geen versterking van beide frequentiepieken. Bij het testen van de betreffende filters aan de hand van een sinus met maximale amplitude blijkt er steeds 1 of 2 bits van het 30-tal bits overbodig te zijn. Indien de eerste 16 bits van de uitgang van het filter aan een volgend filter wordt gelegd, is er eigenlijk sprake van informatieverlies. Het tweede filter wordt immers niet maximaal aangestuurd. Na een cascade van enkele filters zullen er te veel bits verloren gaan, waardoor de SNR te laag wordt.
Hoofdstuk 11
Digitale spiegelonderdrukkingsontvanger Dit hoofdstuk handelt over de implementatie van de digitale ontvanger in een FPGA (zie hoofdstuk 4). Deze implementatie kan ook gebruikt worden voor de gemengde superheterodyne ontvanger.
11.1
Doel
INTEC design thesis 3 zal het programma DREAM implementeren op een mobiele verwerkingseenheid. Deze software verwerkt DRM-signalen rond 12 kHz aan een samplerate van 48 kSamples/s. Het gedeelte in de FPGA leest de signalen in de band 0 tot 30 MHz aan 80 Msamples/s in. De bandbreedte van de signalen is 9 kHz, maar om rekening te houden met frequentiefading wordt een bandbreedte van 10 kHz beschouwd. Dit deel staat dus in voor een menging naar beneden, een verdere filtering en een samplerateconversie. Het programma DREAM demoduleert ook AM-signalen. De demodulatie van AM-signalen kan echter effeci¨enter indien het rechtstreeks in een FPGA gebeurt. Tevens kan dit AMgedeelte ook als een eerste testcircuit voor het systeem gebruikt worden. Daarom zal naast een deel van de verwerking voor DRM-signalen ook de volledige demodulatie voor AM-signalen gebeuren in dit gedeelte. Een groot deel van de hardware kan gemeenschappelijk worden gebouwd voor AM en DRM. Bij het ontwerp is er gekozen voor een maximale verzwakking in de doorlaatband van 0,1 dB over het hele systeem en 60 dB spiegel- en aliasingonderdrukking. De bandbreedte is 9 kHz, maar om rekening te houden met frequentiefading wordt een bandbreedte van 10 kHz beschouwd. In onderstaande tekst zal de verzwakking in de doorlaatband aangeduid worden met ADB en de verzwakking in de stopband met ASB .
110
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
11.2
111
Architectuurexploratie
Het gewenste signaal uit de band van 500 kHz tot 27 MHz wordt gemengd naar een vaste frequentie van 12 kHz. Hiervoor kan een spiegelonderdrukkende mixer gebruikt worden. Rechtstreekse menging naar 12 kHz, menging naar baseband of upconversie is omwille van de volgende redenen niet mogelijk of veel complexer: • Rechtstreekse downconversie: Zoals reeds aangetoond in hoofstuk 3 kan het signaal niet rechstreeks naar 12 kHz gemengd worden, omdat de spiegels van het signaal in de band van 0 tot 30 MHz liggen. Er bestaat dus geen vast spiegelonderdrukkingsfilter dat de mengstap vooraf kan gaan. • Menging naar baseband: Er kan gekozen worden om het signaal eerst naar baseband (in fase en kwadratuur) en daarna naar boven (12 kHz) te mengen. Zoals vermeld in hoofdstuk 3 is ook dit geen optie binnen het kader van deze scriptie, mits de exacte middenfrequentie van het DRM-signaal niet gekend is. • Upconversie gevolgd door downconversie: Bovenstaande problemen worden traditioneel opgelost door eerst een conversie naar boven toe te passen. Er kan dan typisch een vast spiegelonderdrukkingsfilter gebruikt worden. In het digitale domein is dit geen sinecure. Stel dat de samplerate 80 MSamples/s bedraagt en het signaal naar 35 MHz wordt gemengd. Het nuttige signaal bevindt zich bijvoorbeeld rond 10 MHz. De lokale mengsinus kent een frequentie van 25 MHz. Het signaal rond 20 MHz zal na vermenigvuldiging geprojecteerd worden op 45 MHz. De frequentie 45 MHz valt samen met -35 MHz, doordat de samplefrequentie gelijk is aan 80 MSamples/s. Aangezien het signaal re¨eel is, zal de informatie op positieve en negatieve frequenties gelijk moeten zijn. Bijgevolg is 20 MHz een spiegelfrequentie van 10 MHz. Er bestaat dus geen vast spiegelonderdrukkingsfilter voor deze upconversie. Bestaat er een IF-frequentie waarbij upconversie aan de hand van een vast filter wel mogelijk is? Veronderstel dat de band van 0 Hz tot fband verwerkt moet worden. Indien 0 Hz geprojecteerd wordt op fIF , zal fs − 2fIF ook geprojecteerd worden op fIF . fs − 2fIF moet dus groter zijn dan fband , zodat een vast spiegelonderdrukkingsfilter gebruikt kan worden. De voorwaarde fs − 2fIF > fband kan vertaald worden naar fIF < (fs − fband )/2. Tevens moet fIF groter zijn dan fband , zodat er sprake is van upconversie. Samengevat geeft dit: fband < fIF < (fs − fband )/2
(11.1)
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
112
Dit levert een ondergrens op voor fs , namelijk: fs > 3fband
(11.2)
Dit is een strengere eis dan de Nyquistvoorwaarde. Die stelt dat de samplerate groter moet zijn dan twee maal de bandbreedte. Een gelijkaardige redenering kan afgeleid worden voor de band van 500 kHz naar 27 kHz. Hieruit wordt geconcludeerd dat er in deze toepassing geen IF-frequentie bestaat, die aan de voorwaarden voldoet. Er kan eventueel hersampled worden naar 160 MSamples/s. De klokfrequentie zal aan de hand van een DCM-blok (Digital Clock Manager) tot 160 MHz verhoogd worden. Dit ontwerp wordt heel complex door de hoge snelheid en het grote aantal filters, nodig voor de spiegelonderdrukking. De reden waarom er zoveel filters nodig zijn wordt in hoofdstuk 12 ge¨ıllustreerd. Hier wordt een signaal, gesampled aan 80 MSamples/s, rond een vaste middenfrequentie van 5 MHz, ingelezen en gemengd naar 12 kHz. Het spiegelonderdrukkingssysteem werd reeds in hoofdstuk 3 en 4 uitvoerig besproken. Figuur 11.1 toont het principe nog eens. Door een 180◦ -graden verschil tussen beide signalenpaden bij de spiegelfrequenties zullen deze onderdrukt worden.
Figuur 11.1: Spiegelonderdrukkingssyteem
De 90◦ -fasedraaiing kan door een Hilberttransformatie (Hartley architectuur) of een tweede mengstap (Weaver architectuur) uitgevoerd worden.
11.2.1
Verwerking van DRM-signalen
Doel Het gewenste DRM-kanaal moet uit de band van 500 kHz tot 27 MHz worden geselecteerd en naar beneden (12 kHz) worden gemengd. Het DRM-signaal is niet symmetrisch rond zijn middenfrequentie. De DRM-software kan niet detecteren of het spectrum gespiegeld is of niet. De DREAM-software voorziet wel een optie om het spectrum te spiegelen. In deze scriptie werd er gekozen om het spectrum niet te spiegelen. De spiegelfunctie kan dan weggelaten
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
113
worden uit de implementatie van de DREAM-software. Het spectrum mag natuurlijk wel twee maal gespiegeld worden. Het nuttige signaal, gecentreerd rond een middenfrequentie X
ωc 2π ,
wordt geschreven als:
Ai cos (ωi t + ϕi )
(11.3)
i
Voor de (niet-symmetrische) DRM-signalen geldt: ω−i = −ωi
(11.4)
A−i 6= Ai ϕ−i 6= −ϕ−i Het gewenste uitgangssignaal zal zich rond de lage IF-frequentie van 12 kHz bevinden. Dit wordt uitgeschreven als: UitgangDRM =
X Ai i
2
cos ((ωIF + ωi ) t + ϕi + ϕIF )
Er volgt nu een bespreking van de verwerking aan de hand van een Weaver architectuur en een Hartley architectuur. De berekeningen van de ingangs- naar de uitgangssignalen worden in de appendix uitgevoerd. Weaver architectuur
Figuur 11.2: De Weaver architectuur voor de verwerking van DRM-signalen naar een lage IF
Figuur 11.2 toont het principe. Het signaal wordt in fase- en kwadratuur gemengd. Voor deze mengstap is er geen spiegelonderdrukkingsfilter nodig. Daarna volgt een cascade van filters, die bestaat uit decimatie-, interpolatie- en spiegelonderdrukkingsfilters. Het eerste filter in de cascade is een CIC-decimatiefilter. Verdere decimatiestappen zullen moeten gebeuren aan de hand van FIR-filters. Dan worden beide signalen voor een tweede keer gemengd. Voor de tweede menging is er wel een spiegelonderdrukkingsfilter nodig. Nu zullen (zie Appendix) de paden bij de spiegelfrequenties een 180◦ -faseverschil kennen. Bij de gewenste frequenties is
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
114
er geen faseverschil tussen beide paden. Uiteindelijk worden de signalen opgeteld, met een onderdrukking van de spiegelfilters als resultaat. De belangrijkste ontwerpskeuze is de eerste middenfrequentie. Deze kan lager of hoger dan 12 kHz worden gekozen. Er kan met of zonder spiegeling van het signaal gemengd worden. In totaal worden er dus 4 mogelijkheden onderscheiden. Figuur 11.3 toont voor elk van deze mogelijkheden de laatste mengstap.
Figuur 11.3: De 4 mengmogelijkheden voor de Weaver architectuur
• situatie a: De eerste middenfrequentie is hoger dan 12 kHz en het spectrum wordt niet gespiegeld. De middenfrequentie moet hoger dan 17 kHz zijn. Indien hier niet aan voldaan is, zullen de spiegelfrequenties in de nuttige frequentieband liggen. Er bestaat ook een bovengrens op de gekozen middenfrequentie. Deze hangt af van de samplerate bij de tweede mengstap, maar dit zal hier geen probleem vormen. Indien de middenfrequentie zo laag mogelijk (bijvoorbeeld 18 kHz) wordt gekozen, zal het signaal snel naar beneden gedecimeerd kunnen worden. Dit vereenvoudigt de overige bewerkingen van het signaal. Deze kunnen serieel uitgevoerd worden, waardoor het noodzakelijke aantal slices ingrijpend vermindert. Ook is de orde van de FIR-filters, voor een vaste absolute bandbreedte, evenredig met de samplefrequentie. Een middenfrequentie van 24 kHz resulteert daarentegen in het meest eenvoudige spiegelreductiefilter, mits de spiegelfrequenties dan het verst van de nuttige frequenties verwijderd liggen. Om een goede afweging te kunnen maken wordt het systeem voor de middenfrequenties 18 en 24 kHz uitgewerkt.
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
115
Eerst worden de filters voor de middenfrequentie gelijk aan 24 kHz ontworpen. Het eerste filter is een CIC-decimatiefilter. Het filter wordt zo gekozen, zodat de resulterende samplerate zo laag mogelijk is en de conversie naar 48 kSamples/s zo eenvoudig mogelijk kan gebeuren. In dit voorbeeld voldoet een decimatiefilter met decimatiefactor 160 nog net aan de vooropgelegde specificaties. Dit resulteert in een samplerate van 500 kSamples/s. Het signaal zal met een factor 12 ge¨ınterpoleerd en met een factor 125 gedecimeerd moeten worden om een samplerate van 48 kSamples/s te bekomen. Indien de decimatiefactor van het CIC filter gelijk aan 100 gekozen wordt, zal het signaal slechts met 3 ge¨ınterpoleerd en met 50 gedecimeerd moeten worden. Na dit CIC-filter wordt een FIR-filter geplaatst, die de samplerate verder decimeert naar 80 kHz. Daarna worden de spiegelfrequenties door een FIR-filter onderdrukt. Dit filter is van het hoogdoorlaattype. De menging zal het signaal op de band van 7 kHz tot 17 kHz en de band 31 tot 41 kHz projecteren. Na de mengtrap volgt een interpolatiestap naar 240 kSamples/s, gevolgd door een decimatiestap naar 48 kSamples/s. Dit laatste wordt uitgevoerd met een decimatiefilter. De lezer kan opmerken dat dit decimatiefilter niet nodig is, wanneer de middenfrequentie exact gelijk is aan 12 kHz en het signaal symmetrisch rond is middenfrequentie. De band 31 tot 41 kHz wordt immers door de laatste decimatiestap geprojecteerd op 7 tot 17 kHz. Het decimatiefilter is in deze toepassing dus wel noodzakelijk. De filters worden nog eens samengevat in de volgende tabel:
fs
orde
−ADB
−ASB
CIC
80 MSamples/s
5
71,3
0,05
FIR 1
800 kSamples/s
5
60
0,01
FIR 2
400 kSamples/s
63
60
0,01
FIR 3
80 kSamples/s
19
60
0,01
FIR 4
240 kSamples/s
60
60
0,01
Voor een middenfrequentie van 18 kHz ziet de situatie er anders uit. Het CIC-filter decimeert het signaal naar 400 kSamples/s. Daarna volgt ook een FIR decimatiefilter naar 80 kSamples/s. Dit filter wordt gevolgd door een interpolatiestap naar 240 kSamples/s, die op zijn beurt gevolgd wordt door een decimatiefilter, die het signaal naar 48 kSamples/s decimeert. In deze situatie is de samplerate voor de tweede mengstap reeds gelijk aan 48 kSamples/s. De menging zal deze keer niet resulteren in een spectrale overlap van het signaal met zichzelf. Na de decimatiestap volgt een spiegelonderdrukkingsfilter. Daarna wordt het signaal gemengd naar de frequenties van 7 kHz tot 17 kHz en van 19 kHz tot 29 kHz (dit is 19 tot 24 kHz en 0 tot 5kHz). In de DREAM-software kan de nuttige frequentieband aangeduid worden. Indien de DREAM-software toch hinder zou ondervinden bij het detecteren van de signalen, kan er een extra hoogdoorlaatfilter
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
116
worden toegepast. Dit filter zou de signalen tot en met 5 kHz onderdrukken. De filters worden samengevat in de volgende tabel:
fs
orde
−ADB
−ASB
CIC
80 MSamples/s
5
60,8
0,08 *
FIR 1
400 kSamples/s
63
60
0,01
FIR 2
80 kSamples/s
19
60
0,01
FIR 3
240 kSamples/s
38
60
0,01
FIR 4
48 kSamples/s
83
60
0,01
FIR 5
48 kSamples/s
83
60
0,01
* Dit is het maximale verschil in onderdrukking in de nuttige frequentieband. • situatie b: De middenfrequentie is alweer groter dan 12 kHz. Deze keer wordt het spectrum door de mengstappen gespiegeld. Er wordt een bovengrens op de frequentie opgelegd, zodat er na menging geen overlap van het signaalspectrum voorkomt. De bovengrens hangt af van de samplerate en wordt gegeven door fRF + fIF = 2fIF + 12kHz < fs − 17kHz of fIF < (fs − 29kHz)/2. Voor een samplefrequentie van 48 kSamples/s moet fIF kleiner zijn 12 kHz. Voor een samplerate van 80 kSamples/s wordt de bovengrens gegeven door 25,5 kHz. Bij 25,5 kHz zullen de spiegelfrequenties net naast de nuttige frequentieband liggen. Indien een lagere frequentie wordt gekozen, zullen de spiegelfrequenties verder uit elkaar liggen. De middenfrequentie wordt dus best zo laag mogelijk gekozen. Stel de middenfrequentie gelijk aan 13 kHz. Het beste CIC-filter kan decimeren naar 400 kSamples/s. Daarna wordt gedecimeerd naar 80 kSamples/s. In de band van 38 tot 40 kHz liggen er spiegelfrequenties. Het spiegelfilter is dus van het laagdoorlaattype. De mengstap zal het signaal op de band van 7 tot 17 kHz en de band van 33 tot 40 kHz en van 0 tot 3 kHz projecteren. Achter de menging staat een interpolatie- en decimatietrap. Het decimatiefilter onderdrukt de stoorsignalen bij hoge frequenties. De stoorsignalen van 0 tot 3 kHz kunnen eventueel worden weggefilterd door een extra hoogdoorlaatfilter. Volgende tabel vat de filters nog eens samen:
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
117
fs
orde
−ADB
−ASB
CIC
80 Msamples/s
5
66,4
0,06 *
FIR 1
400 kSamples/s
63
60
0,01
FIR 2
80 kSamples/s
12
60
0,01
FIR 3
240 kSamples/s
38
60
0,01
FIR 4
48 kSamples/s
41
60
0,01
* Dit is het maximale verschil in onderdrukking in de nuttige frequentieband. • situatie c: Indien de eerste middenfrequentie onder 12 kHz ligt en er geen sprake is van spiegeling, moet deze tussen 5 en 7 kHz liggen. Wanneer de frequentie kleiner is dan 5 kHz, zal het signaal na de eerste mengstap spectraal overlappen rond 0 Hz. Er zal een distorsie van het signaal optreden, waardoor de informatie verloren gaat. Wanneer een frequentie hoger dan 7 kHz wordt gekozen, zullen de spiegelfrequenties van de tweede mengtrap samenvallen met de gewenste frequenties. Zoals voorheen, wordt er steeds getracht zo snel mogelijk te decimeren. De IF-frequentie kan echter niet gelijk aan 5 kHz gekozen worden, omdat de 2 mengproducten van de DRM-signalen na spiegeling net naast elkaar zullen liggen. De DRM-software zal deze keer zeker moeilijkheden ondervinden met het selecteren van het DRM-signaal. Indien de middenfrequentie gelijk is aan 6 kHz, is het spiegelonderdrukkingsfilter het meest eenvoudig. Daarom zal de middenfrequentie gelijk aan 6 kHz gekozen worden. Het DRM-signaal zal dan op -5 tot 5 kHz en 7 tot 17 kHz worden geprojecteerd. Op het einde van het systeem wordt een filter toegevoegd, die de signalen tot 5 kHz onderdrukt. De uiteindelijke filters en samplerates worden gegeven in de volgende tabel: fs
orde
−ADB
−ASB
CIC
80 MSamples/s
5
72,5
0,042
FIR 1
320 kSamples/s
23
60
0,01
FIR 2
240 kSamples/s
38
60
0,01
FIR 3
48 kSamples/s
83
60
0,01
FIR 4
48 kSamples/s
83
60
0,01
• situatie d: De middenfrequentie is lager dan 12 kHz en er wordt gebruik gemaakt van spiegeling. Indien de samplerate bij de tweede mengstap 48 kSamples/s bedraagt, zal de middenfrequentie tussen 5 en 9.5 kHz moeten liggen. De frequentie wordt opnieuw gelijk aan 6 kHz gekozen. De mengstap projecteert het signaal naar de band van 7 tot 17 kHz en van 19 tot 24 kHz. De filters worden gegeven door:
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
118
fs
orde
−ADB
−ASB
CIC
80 MSamples/s
5
72,5
0,042
FIR 1
320 kSamples/s
23
60
0,01
FIR 2
240 kSamples/s
38
60
0,01
FIR 3
48 kSamples/s
83
60
0,01
FIR 4
48 kSamples/s
83
60
0,01
Eerst werd er gedacht om de klokfrequentie van elk blok gelijk aan ingangssamplerate van het blok te kiezen, zodat elk blok continu kan rekenen en er geen controlesignalen nodig zijn. Het vermogengebruik zal dan beperkt worden. Dit resulteert echter in een te complex kloknetwerk en alle blokken moeten parallel uitgevoerd worden, wat leidt tot een te groot oppervlakteverbruik. Om een goede klokdistributie te waarborgen, moet in een FPGA het logisch netwerk steeds gescheiden blijven van het kloknetwerk. Een FPGA is voorzien van een aantal DCMblokjes (Digital Clock Manager), die een ingangsklok kunnen omzetten naar een klok met een andere frequentie. Het ontwerp werkt uiteindelijk op twee klokfrequenties, die afgeleid worden uit de 80 MHz ingangsklok: een klok van 80 MHz en ´e´en van 48 MHz. Dit kan gerealiseerd worden met 1 DCM-blok. Er wordt gebruik gemaakt van een communicatieprotocol, dat zal bepalen wanneer een blokje zijn berekening moet uitvoeren en naar buiten brengen. De coregenerator filters van Xilinx zijn bijvoorbeeld voorzien van ND (New Data), RFD (Ready For Data), RDY (Ready), Channel select in en Channel select out signalen. Mits er een klok van 80 MHz gebruikt wordt en de samplerate na het CIC-filter maximaal 800 kSamples/s bedraagt, kunnen alle filters (met minder dan 1000 co¨effici¨enten) serieel worden uitgevoerd. Met andere woorden, indien de filters worden ge¨ımplementeerd met een MAC-implementatie zal elk filter slechts 1 vermenigvuldiger nodig hebben. Het aantal gebruikte slices voor die filters zal beperkt blijven. Ook de mixers kunnen - indien nodig - hergebruikt worden. Deze ontwerpsstijl maakt de keuze van de IF-frequentie minder kritisch. Er werd gekozen voor het kleinste aantal filters met het kleinste aantal co¨effici¨enten. De IF-frequentie wordt gelijk aan 24 kHz gekozen en er wordt geen gebruik gemaakt van spiegeling. De maximale verzwakking in de doorlaatband is gelijk aan 0,09 dB, wat aan de specificaties voldoet. Figuur 11.4 toont het uiteindelijke systeem.
Figuur 11.4: Weaver DRM-ontvanger in een FPGA
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
119
Het Weaversysteem zorgt voor een sterke onderdrukking van de spiegelfrequenties. De signaalpaden zijn op elkaar afgestemd. De beperkende factor is de kwantisatieruis. Indien alle signalen een resolutie hebben van 16 bits, zal het vermogen van de kwantisatieruis meer dan 90 dB kleiner zijn dan het nuttige signaal (de sinus, de fase, ...). De spiegelfrequenties zullen dus voldoende (meer dan 60 dB) onderdrukt worden. Hartley architectuur
Figuur 11.5: Hartley DRM-ontvanger
Figuur 11.5 toont de Hartley architectuur. De 90◦ -fasedraaiing wordt gerealiseerd door de Hilberttransformatie, die uitgevoerd wordt met behulp van een FIR-filter. Het signaal in de andere trap wordt vertraagd, zodat de signalen van beide paden gesynchroniseerd worden. De ideale Hilberttransformatie vermenigvuldigt negatieve frequenties met -i en positieve frequenties met i. Dit is dus een perfecte 90◦ -fasedraaiing. De Hilberttransformatie wordt hier dus benaderd door een FIR-filter. Indien een rechthoekig venster wordt gebruikt zijn de co¨effici¨enten voor een filter met orde N gelijk aan: [21] N −1
2 2 X 2π h (n) = sin kn N N
(11.5)
k=1
In praktijk moeten deze co¨effici¨enten aangepast worden met een beter venster. Meer informatie over het benaderen van een continu filter is te vinden in [26]. De kwaliteit van de 90◦ -fasedraaiing zal sterk afhangen van de lengte van het filter en het gebruikte venster.
11.2.2
Verwerking van AM-signalen
De verwerking, waaronder de demodulatie, van AM-signalen is een ander verhaal. AMsignalen kunnen op dezelfde manier geschreven worden als DRM-signalen: X i
Ai cos (ωi t + ϕi )
(11.6)
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
120
Maar AM-signalen zijn symmetrisch, met andere woorden: ω−i = −ωi
(11.7)
A−i 6= Ai ϕ−i 6= −ϕ−i Het AM-signaal kan dus ook als volgt geschreven worden: X IngangAM = 2Ai cos (ωi t + ϕi ) cos (ωc t)
(11.8)
i>0
Het is de bedoeling de amplitude van het signaal te detecteren, de gewenste uitgang is dus: X U itgangAM = Ai cos (ωi t + ϕi ) (11.9) i
Deze uitgang wordt bekomen indien het signaal naar basisband gemengd wordt. Het is dan echter noodzakelijk dat de exacte frequentie en fase gekend zijn. Wanneer de frequentie niet gekend is, zullen de linker- en rechterzijbanden overlappen, met distorsie tot gevolg. Indien de fase incorrect is, zal de signaal-tot-ruisverhouding sterk dalen en in het slechtste geval zal het signaal volledig onderdrukt worden. In een analoge ontvanger gebeurt de frequentie- en fasetracking aan de hand van een PLL. Het vergrendelen op de juiste frequentie gebeurt aan de hand van de carri¨er, die verhoogd is in amplitude ten opzichte van het eigenlijke AMsignaal. In programmeerbare hardware zou dit aan de hand van een FFT kunnen gebeuren, die de sterkste piek uit het spectrum haalt. De lengte van de FFT bepaalt dan de resolutie, maar ook de vertraging van de feedbacklus. De fasedetectie kan ook op verschillende manieren gebeuren. Indien er een fase en kwadratuurcomponent wordt gegenereerd, bepaalt de deling van beide termen de tangens. Ook kan er gekozen worden voor een feedbacklus, die de DDS aanstuurt, zodat de kwadratuur- of fasecomponent 0 wordt, de andere component is dan de gewenste uitgang.
Figuur 11.6: Digitale demodulatie van AM-signalen
De meest eenvoudige analoge AM-radio, bestaande uit een capaciteit en een diode, maakt echter geen gebruik van fase- en frequentietracking. Ook in digitale wereld is dit niet noodzakelijk en kan AM-demodulatie veel gemakkelijker gebeuren. Figuur 11.6 toont een mogelijke
Hoofdstuk 11. Digitale spiegelonderdrukkingsontvanger
121
implementatie. Indien er in fase en in kwadratuur wordt gemengd, kan de amplitude rechtstreeks berekend worden. Beide signalen worden gekwadrateerd, opgeteld en uiteindelijk geeft de wortel van dit resultaat de amplitude. Hierbij wordt zowel de frequentie- als de faseoffset gecorrigeerd met eenzelfde hoge kwaliteit als de vorige oplossing. Deze oplossing zal heel wat minder logica in beslag nemen.
Figuur 11.7: Digitale demodulatie van AM-signalen in de Weaver architectuur
Figuur 11.7 toont hoe de AM-demodulatie op een effici¨ente manier in de Weaver architectuur kan ge¨ıntegreerd worden. Elk filter wordt slechts 1 maal ge¨ımplementeerd. De mixers kunnen ook hergebruikt worden.
Hoofdstuk 12
Digitale heterodyne ontvanger 12.1
Inleiding
De FPGA ontvangt een bemonsterd signaal aan 80 MSamples/s, waarbij het nuttig signaal zich rond 5 MHz bevindt. De doelstelling van dit ontwerp is hetzelfde als in hoofdstuk 11, zij het dan voor een vaste RF-frequentie. Het ontwerp uit hoofdstuk 11 kan hier worden toegepast, maar er bestaat mogelijks een veel eenvoudiger ontwerp, mits er maar 1 RFfrequentie verwerkt moet worden. Mits de centrale frequentie ongeveer gekend is (er is nog steeds sprake van een variabele offset door fading, die wordt opgevangen door de software), bestaat er een vast spiegelonderdrukkingsfilter en is een antispiegelsysteem overbodig. Er kan dus in principe gemengd worden in ´e´en stap. De eindtrap van dit ontwerp zal gelijkaardig zijn aan deze van het vorige ontwerp. In dit hoofdstuk wordt echter enkel de verwerking van DRM-signalen beschouwd. In realiteit zal blijken dat dit ontwerp niet kan uitgevoerd worden met slechts 1 mengstap. Hieronder staat de keuze van het uiteindelijke ontwerp chronologisch beschreven. De uitgang van het signaal is een 16-bit signaal met een samplefrequentie gelijk aan 48 kSamples/s, waarvan de centrale frequentie zich rond 12 kHz bevindt. Voor het testen van de hardware wordt het signaal naar een DAC gestuurd, zoals beschreven in 10.
122
Hoofdstuk 12. Digitale heterodyne ontvanger
12.2
Ontwerp 1: 1 mengstap
12.2.1
Principe
123
Figuur 12.1: Ontwerp met 1 mengstap
Figuur 12.1 toont een eerste ontwerp. Dit zou bestaan uit de volgende stappen: • een decimatiefilter: Mits het signaal zich rond 5 MHz bevindt, kan er direct gedecimeerd worden zonder verlies van informatie. Daarom zal de eerste stap een decimatiefilter (CIC filter en/of FIR filter) zijn. Het signaal wordt gedecimeerd naar bijvoorbeeld 16 MSamples/s. • een anti-spiegelfilter: Het tweede filter onderdrukt de spiegels voor de mengstap. Dit filter wordt uitgevoerd door een FIR filter. • een mengtap: Deze mengstap mengt het signaal naar 12 kHz. De frequentie van de lokale mengsinus bedraagt dus 4,988 MHz of 5,012 MHz. De bijhorende spiegelfrequenties liggen in het gebied van 4,971 MHz tot 4,981 MHz of van 5,019 MHz tot 5,028 MHz. • verdere decimatie en interpolatie: Dit blok zorgt ervoor dat de uitgangssamplerate gelijk is 48 kSamples/s.
12.2.2
Uitwerking
Eerste filter: decimatiefilter Dit filter fungeert als decimatiefilter. De meest effici¨ente implementatie is het CIC filter. Daarom zal er steeds getracht worden dit filter te gebruiken. In deze toepassing kan dit filter helaas niet gebruikt worden. Er is immers geen enkel CIC filter dat voldoet aan de specificaties. Dit is snel aangetoond. Indien er bijvoorbeeld gedecimeerd wordt naar 40 MSamples/s, moet de band van 0 tot 5,005 MHz doorgelaten worden en de band van 34,005 MHz tot 80 MHz moet onderdrukt worden. Een CIC filter van orde 5 levert volgende waarden: ADB = −0, 42dB en ASB = −35, 5dB. Beide waarden voldoen niet aan de vooropgegeven specificaties. Verhoging van de orde resulteert in een verlaging van beide waarden: er zal geen enkel CIC filter voldoen aan de opgegeven specificaties. Mits R = 2 de laagste mogelijke decimatiewaarde is, zal er in deze fase geen CIC filter gebruikt kunnen worden.
Hoofdstuk 12. Digitale heterodyne ontvanger
124
In principe maakt de verzwakking in de band 0 tot 4,995 MHz niet zo veel uit. Indien er ge¨eist wordt dat het punt 5,005 MHz maximaal 0,1 dB verzwakt wordt ten opzichte van 4,995 MHz, zal de demodulatie van het DRM-signaal zeker correct kunnen gebeuren. De stoorsignalen in de band 0 tot 4,995 MHz worden immers later onderdrukt. De signaal-totruisverhouding zal op dat punt wel toenemen, omdat het nuttig signaal (4,995 MHz tot 5,005 MHz) sterker wordt verzwakt dan een deel van de stoorsignalen (0 tot 4,995 MHz). Kan er toch een CIC filter gebruikt worden? Nee, ook in dit geval voldoet er geen enkel CIC filter aan de specificaties. De relatieve verzwakking in de doorlaatband bedraagt minimum 0,27 dB. De eerste decimatiestap zal dus moeten gebeuren met een FIR filter. Het is belangrijk dat dit eerste FIR filter een decimatiefilter is. Indien het eerste filter direct gebruikt wordt als een anti-spiegelfilter voor de mengstap zal de orde onrealistisch groot zijn. Het filter is een hoogdoorlaatfilter, dat de frequenties tot 4,981 MHz onderdrukt en de frequenties vanaf 4,995 MHz doorlaat. Dit filter is echter ook onrealiseerbaar. Indien ADB,min = −5dB en ASP,max = −10dB, wat heel ver van de vooropgegeven specificaties ligt, bedraagt de orde al meer dan 850. Het eerste FIR filter zal dus enkel dienen als een decimatiefilter. Indien de decimatiefactor gelijk aan 5 wordt gekozen, is de orde gelijk aan 46. Dit is een realiseerbaar filter. Tweede filter: spiegelonderdrukkingsfilter Indien er gedecimeerd wordt met een factor 5 zal de orde van het decimatiefilter met een factor 5 gedeeld worden. Dit resulteert in een orde 173 voor de eisen ADB,min = −5dB en ASP,max = −10dB. Indien deze eisen vervangen worden door de werkelijke eisen ADB,min = −0.05dB en ASP,max = −60dB is de orde groter dan 3000! Dit is niet realiseerbaar. Ten eerste ondersteunt Xilinx slechts filters met maximaal 1024 co¨effici¨enten. Ten tweede zou een MAC-implementatie meer dan 600 vermenigvuldigers nodig hebben (van de 20) en de geschatte oppervlakte voor een DA-implementatie zou 6 `a 10 keer de oppervlakte van de betreffende FPGA bedragen. Een implementatie volgens deze methode is dus niet mogelijk. Het syteem moet opgesplitst worden in 2 mengstappen.
12.3
Tussennoot
De voornaamste les die uit de vorige paragraaf getrokken kan worden is dat er steeds zo snel mogelijk moet gedecimeerd worden. Dit verlaagt de orde van de daarop volgende filters. Tevens kunnen er delen van het filter herbruikt worden in de tijd, waardoor er minder oppervlakte gebruikt wordt.
Hoofdstuk 12. Digitale heterodyne ontvanger
125
Kan er geen onderbemonstering worden toegepast, zoals uitgelegd in 9? Op die manier wordt de centrale frequentie op 0 Hz geprojecteerd. Dit is echter ontoelaatbaar bij DRM-signalen. Dit werd reeds toegelicht in 3 Indien het signaal eerst gemengd wordt naar bijvoorbeeld 2,512 MHz en dan gedecimeerd wordt aan 100 kSamples/s zal het signaal naar 12 kHz geprojecteerd worden. Er zit echter een addertje onder het gras. De signalen rond 1,488 MHz zullen ook op 12 kHz geprojecteerd worden. Indien deze weggefilterd moeten worden is een zeer steil filter nodig, dat niet realiseerbaar is. De decimatie- en mengstappen moeten dus apart uitgevoerd worden. Deze stelling is algemeen geldig voor alle sample- en middenfrequenties.
12.4
Ontwerp 2: 2 mengstappen
Het ontwerp aan de hand van twee mengstappen zou uit de volgende componenten bestaan: • Een decimatiestap • Een spiegelfilter voor de eerste mengstap • Een mengstap naar bijvoorbeeld 1 MHz • Een decimatiestap • Een spiegelfilter voor de tweede mengstap • Een mengstap naar 12 kHz Dit systeem werd geschetst in figuur 12.2
Figuur 12.2: Ontwerp met 2 mengstappen
Het signaal wordt uiteindelijk hersampled naar 48 kSamples/s. 80 MSamples/s kan geschreven worden als: 23 .54 80 M Samples/s = 48 kSamples/s. (12.1) 3
Hoofdstuk 12. Digitale heterodyne ontvanger
126
Helemaal op het einde van het systeem gebeurt de interpolatie, gevolgd door een decimatie. Een ondergrens op de samplefrequentie na de twee mengstappen wordt gegeven door 2.(12 + 5kHz) = 34 kHz. Zolang het belangrijkere optimalisaties niet in de weg staat, wordt er getracht om te decimeren naar 80 kHz. Dit is gelijk aan de kleinste gehele deler van 80 MHz, die kan geschreven worden als 80M Samples/s/2x /5y met x < 4 en y < 5 en die groter of gelijk is aan 34 kHz. Hierna gebeurt nog een laatste interpolatie- en decimatiestap. Het eerste decimatiefilter wordt zodanig gekozen, dat er zo vlug mogelijk naar beneden wordt gedecimeerd. Er zal ten minste een bandbreedte van 10,010 MHz nodig zijn. Er wordt gekozen voor 16 MHz, omdat dit de kleinste gehele deler van 80 MHz is die groter is dan 10 MHz. De decimatiefactor bedraagt 5. Nu volgt het eerste spiegelfilter. De keuze van de eerste middenfrequentie is zeer belangrijk, omdat het de complexiteit van het filter bepaalt. Het is de bedoeling dat er naar beneden gemengd wordt, zodat de mengstap gevolgd kan worden door een decimatiestap. Het spiegelfilter is het minst steil indien de IF-frequentie 2,5 MHz bedraagt. De overige filters in het ontwerp zijn echter eenvoudiger indien er naar een lagere IF-frequentie wordt gemengd. De grootste reden hiervoor is dat er na de mengstap sterker gedecimeerd kan worden. Er moet dus een doordachte afweging gemaakt worden tussen de mogelijke IF-frequenties. In de volgende paragraaf worden de decimatiestappen en filters voor IF = 1 MHz ontworpen. Tevens wordt het aantal vermenigvuldigers voor een MAC-implementatie en het geschatte aantal slices voor de DA-implementatie gegeven. Op een gelijkaardige manier worden de stappen voor IF = 200, 400, 800 en 1500 kHz gekozen. De resultaten worden weergegeven in figuur 12.3. Hier wordt verder op ingegaan. Elk filter kent een 16-bit ingang en 16-bit co¨effici¨enten. Omdat er hier twee mengstappen worden gebruikt kan er gekozen worden om twee keer het signaal in het frequentiedomein te spiegelen. In de praktijk is er weinig verschil tussen de orde van het hoogdoorlaatfilter nodig voor niet-spiegelde of een laagdoorlaatfilter nodig voor een spiegelende menging, met een klein voordeel voor het eerste geval. Daarom zal er nog steeds niet gespiegeld worden.
12.4.1
Ontwerp voor IF2 = 1 MHz
Eerste spiegelfilter Dit filter gaat de mengstap, die het signaal naar 1 MHz mengt, vooraf. Het betreft hier een hoogdoorlaatfilter. Onderstaande tabel toont de eigenschappen van het filter.
Hoofdstuk 12. Digitale heterodyne ontvanger
127
doorlaatband
4,995 MHz - 5,005 MHz
stopband
2,995 MHz - 3,005 MHz
samplefrequentie
16 MSamples/s
orde
29
aantal vermenigvuldigers
6
aantal slices
7 `a 8 %
Decimatiefilter Het signaal wordt naar een zo laag mogelijke samplerate gedecimeerd. De ondergrens, opgelegd door Nyquist, bedraagt 2,010 MHz. De dichtsbijzijnde samplefrequentie, die een gehele deler is van 16 MSamples/s, is gelijk aan 3,2 MHz.
doorlaatband
0,995 MHz - 1,005 MHz
stopband
2,195 MHz - 2,105 MHz
samplefrequentie
16 MSamples/s
orde
47
aantal vermenigvuldigers
10
aantal slices
9 `a 13 %
Tweede spiegelfilter Het tweede spiegelfilter onderdrukt de spiegels voor de menging van 1 MHz naar 12 kHz. Het is een hoogdoorlaatfilter.
doorlaatband
995 kHz - 1,005 kHz
stopband
971 kHz - 981 kHz
samplefrequentie
3,2 MSamples/s
orde
981
aantal vermenigvuldigers
40
aantal slices
45 `a 70 %
De orde van dit filter is heel hoog. Het aantal vermenigvuldigers en het geschatte aantal slices is dan ook erg groot. Dit kan eventueel problemen leveren bij de implementatie. Decimatiefilter De band reikt tot 17 kHz. De ondergrens op de resulterende samplefrequentie wordt gegeven door 34 kSamples/s. Er zal gedecimeerd worden naar 80 kSamples/s. De decimatiestap
Hoofdstuk 12. Digitale heterodyne ontvanger
128
wordt opgedeeld in twee stappen. Op die manier zullen de filters minder oppervlakte in beslag nemen.
doorlaatband
7 kHz - 17 kHz
stopband
383 kHz - 393 kHz
samplefrequentie
3,2 MSamples/s
orde
30
aantal vermenigvuldigers
2
aantal slices
<5%
doorlaatband
7 kHz - 17 kHz
stopband
38 kHz - 48 kHz
samplefrequentie
400 kSamples/s
orde
30
aantal vermenigvuldigers
1
aantal slices
<5 %
Interpolatie- en decimatiefilter Er wordt ge¨ınterpoleerd naar 240 kSamples/s. Daarna wordt er gedecimeerd naar 48 kSamples/s. Tussen beide stappen staat het interpolatie- en decimatiefilter, uitgevoerd door ´e´en enkel filter.
12.4.2
doorlaatband
7 kHz - 17 kHz
stopband
31 kHz - 41 kHz
samplefrequentie
240 kSamples/s
orde
60
aantal vermenigvuldigers
1
aantal slices
<5 %
Besluit
Een te hoge IF zorgt voor problemen bij het tweede anti-spiegelfilter. Een te lage IF zal heel strenge eisen op het smalbandig filter leggen. De afweging zal gemaakt worden op basis van het aantal vermenigvuldigers nodig voor een MACimplementatie. In onderstaande tabel wordt het aantal vermenigvuldigers berekend voor IF = 200, 400, 800, 1000 en 1500 kHz. Alle frequenties zijn uitgedrukt in kHz, de samplerates zijn uitgedrukt in kSamples/s.
Hoofdstuk 12. Digitale heterodyne ontvanger
129
Figuur 12.3: Filters voor verschillende IF-frequenties
Een IF-frequentie rond 800 kHz blijkt de beste keuze te zijn. In het ontwerp wordt uiteindelijk ook deze frequentie als middenfrequentie gekozen. Bij implementatie waren er moeilijkheden bij het maken van het eerste filter. Zowel de simulatie als de realisatie in hardware faalden. Een decimatiefilter kan blijkbaar niet worden toegepast wanneer de klokfrequentie gelijk is aan de ingangssamplerate. Het eerste decimatiefilter is echter te groot om volledig parallel uit te voeren, waarbij de decimatie achteraf zou gebeuren. Daarom zal deze decimatiestap opgesplitst worden. Een decimatie met factor 5 kan echter niet opgedeeld worden. Er zal gedecimeerd worden naar 20 MSamples/s in plaats van 16 MSamples/s. De rest van het systeem blijft hetzelfde. Indien deze implementatie in realiteit toch te veel slices nodig heeft, kan er gekozen worden om in drie stappen te mengen. Verdere opsplitsing in mengstappen zal echter niet voordelig blijven. Het uiteindelijke systeem (zonder AGC’s) wordt getoond in onderstaande figuur:
Hoofdstuk 12. Digitale heterodyne ontvanger
130
Figuur 12.4: Uitgewerkt ontwerp met 2 mengstappen
Het binnenkomende signaal is echter smalbandig. Tevens wordt in de analoge front-end een banddoorlaatfilter rond 5 MHz gemaakt. De eerste 2 filters zullen weggelaten worden.
12.4.3
Enkele details over de implementatie
Zoals in het vorige hoofdstuk wordt er gebruik gemaakt van twee klokdomeinen: ´e´en van 80 MHz en ´e´en van 48 MHz. De filters kunnen uitgevoerd worden aan de hand van een DA-implementatie of een MAC-implementatie. De MAC-implementatie voorziet een keuze om RAM-geheugen te gebruiken of niet. Door het beperkte aantal vermenigvuldigers, slices en beperkt RAM-geheugen in combinatie met een groot aantal filters, is de keuze van de implementatie van de filters in dit ontwerp vrij kritisch. Daarom werden alle mogelijke implementaties voor alle filters apart gesynthetiseerd, waaruit de beste keuze wordt gehaald. Indien dit niet gedaan werd, zouden er mogelijks 23 % slices meer nodig zijn. De kritische spiegelonderdrukkingsfilter FIR 6 is hier de hoofdreden toe: een MAC-implementatie met RAM-geheugen neemt 18 % van de slices in, ´e´en zonder RAM-geheugen 38 %. De RAMgeheugeneenheden worden helaas niet gecombineerd voor de verschillende filters. Ook zijn er te veel vermenigvuldigers nodig om alle filters aan de hand van een MAC-implementatie uit te voeren. Waar en hoeveel AGC’s zijn er nodig in het systeem? De snelste methode om dit te achterhalen is een simulatie in Matlab. Het systeem uit figuur 12.4, waarbij de eerste twee filters werden weggelaten, is geprogrammeerd in Matlab. In deze simulatie wordt natuurlijk ook de selectie van een beperkt aantal bits aan de uitgang van ieder blok, zoals in de FPGA gebeurt,
Hoofdstuk 12. Digitale heterodyne ontvanger
131
nagebootst. Het ingangssignaal van de simulatie is een AM-gemoduleerde sinusgolf rond 5 MHz, die overeenkomt met een maximale aansturing van de ADC. Op verschillende plaatsen in het circuit werd de uitgang bijgehouden, waaruit berekend werd hoeveel bits het signaal reeds verloren heeft. Het resultaat staat in de volgende tabel:
blok
aantal verloren bits
FIR 3
1
FIR 4
2
FIR 5
5
FIR 6
7
FIR 7
9
FIR 8
10
FIR 9
13
De DRM-software heeft een 5-tal bits nodig om de signalen te kunnen decoderen. Er is dus niet alleen in het begin en op het einde een AGC nodig, maar ook in het midden van het systeem. In eerste instantie werd er een AGC achter FIR 5 en FIR 7 geplaatst.
12.4.4
Resultaten
Na talrijke simulaties moet het systeem natuurlijk ook hardwarematig getest worden. Hierbij wordt gebruik gemaakt van het ADC-bordje uit hoofdstuk 5 en een DAC van het SPARTANbord. Het ingangssignaal is een AM-gemoduleerde sinusgolf. De centrale frequentie is 5 MHz en de signaalfrequentie 2,5 kHz. Het ingangsvermogen van de carri¨er is -10 dBm. Het spectrum van de sinusgenerator wordt nagemeten met en spectrum analyzer en het uitgangsspectrum wordt weergegeven door de DREAM-software op de pc. Het vermogen van de signaalsinus wordt ingesteld aan de hand van een percentage ten opzichte van de carri¨er. Figuur 12.5 toont de meting voor een percentage van 20 %, in figuur 12.6 staat de meting voor een percentage van 50 %. De lineariteit van de sinusbron daalt met een stijgend percentage. Dit valt ook op te merken aan de uitgang van het systeem. Mogelijke niet-lineariteiten, te wijten aan het systeem, zijn verwaarloosbaar. De meting toont ook aan dat de centrale frequentie van 5 MHz inderdaad wordt opgeschoven naar 12 kHz.
Hoofdstuk 12. Digitale heterodyne ontvanger
(a) Spectrum van de ingang
132
(b) Spectrum van de uitgang
Figuur 12.5: Test totale systeem met een AM-percentage van 20 %
(a) Spectrum van de ingang
(b) Spectrum van de uitgang
Figuur 12.6: Test totale systeem met een AM-percentage van 50%
12.4.5
Besluit
Het gehele systeem vanaf de ADC tot de DREAM-software op pc werkt goed. De SNR en lineariteit voldoen zeker aan de vooropgelegde specificaties. Niettegenstaande dit ontwerp specifiek is ontworpen voor de verwerking van een signaal rond 5 MHz blijkt de architectuur uit hoofdstuk 11 toch effici¨enter. Deze laatst vernoemde implementatie kan geoptimaliseerd worden voor deze toepassing. Zo zullen de AGC’s een kleinere dynamisch bereik nodig hebben. Indien de volledige band van 500 kHz tot 27 MHz wordt gedigitaliseerd, zullen er immers stoorsignalen zijn die groter dan het nuttige signaal. Ook de eerste DDS zal nu een vaste uitgangsfrequentie genereren. Dit geoptimaliseerd ontwerp neemt - zonder de AGC’s - 25 % van de slices in. Alle filters worden uitgevoerd aan de hand van een MAC-implementatie. Ook de mixers worden uitgevoerd met hardware vermenigvuldigers. Het ontwerp van dit hoofdstuk neemt - zonder de AGC’s - echter 60 % in.
Besluit Het doel van deze sriptie was het bouwen van een RF-ontvanger voor DRM. Naast een uitgebreide studie over mogelijke architecturen, hebben we ´e´en architectuur volledig uitgewerkt. In samenwerking met INTEC design thesis 1 zijn we er in geslaagd om AM-signalen te ontvangen. De meta-informatie van DRM-signalen werd correct gedecodeerd. Dit toont aan dat we DRM-signalen kunnen ontvangen. Het belangrijkste doel van deze scriptie was echter het vergroten en verbreden van onze kennis. Ook dit doel werd bereikt. Niet alleen werden de grenzen van deze kennis verlegd wat betreft analoog en digitaal ontwerp, ook leerden we werken met gespecialiseerde software voor simulatie, layout, FPGA-programmeren en debuggen. De praktische ervaringen, opgedaan door in team aan een overkoepelend project te werken, zullen ons in de toekomst heel wat verderhelpen. Kort samengevat kunnen we, gewapend met een pak nieuwe kennis en vaardigheden, terugblikken op een geslaagd thesisjaar.
133
Bijlage A
Bewijs van de Weavermixer Deze appendix levert een wiskundig bewijs van het Weaversysteem in het kader van het systeem uit hoofdstuk 11. Er volgt eerst een herhaling van het ingangssignaal en het gewenste uitgangssignaal. Daarna volgt een bespreking van de bewerkingen.
A.1
Ingangssignaal
Het ingangssignaal wordt geschreven als: X Ai cos (ωi t + ϕi )
(A.1)
i
DRM-signalen zijn niet symmetisch in het frequentiedomein, daarvoor geldt: ω−i = −ωi
(A.2)
A−i 6= Ai ϕ−i 6= −ϕ−i AM-signalen zijn dit wel, met andere woorden: ω−i = −ωi
(A.3)
A−i 6= Ai ϕ−i 6= −ϕ−i
A.2 A.2.1
Uitgangssignaal DRM-uitgangssignalen
De uitgangssignalen zijn van de vorm: X Ai UitgangDRM = cos ((ωIF + ωi ) t + ϕi + ϕIF ) 2 i
134
(A.4)
Bijlage A. Bewijs van de Weavermixer
A.2.2
135
AM-uitgangssignalen
De uitgangssignalen is de amplitude van het ingangssignaal: X U itgangAM = Ai cos (ωi t + ϕi )
(A.5)
i
A.3
Berekeningen
Er wordt gebruik gemaakt van de Weaverarchitectuur, zoals uitgelegd in hoofdstuk 11.
A.3.1
Berekeningen van AM-signalen
• Herschrijven ingangssignaal: Door de symmetrie kan het ingangssignaal als volgt geschreven worden:
IngangAM =
X
=
X
Ai (cos ((ωc + ωi ) t + ϕi ) + cos ((ωc − ωi ) t − ϕi ))
(A.6)
i>0
2Ai cos (ωi t + ϕi ) cos (ωc t)
i>0
• Menging naar een lagere IF: De menging naar een lagere IFfrequentie ziet er in het frequentiedomein wordt afgebeeld in Figuur A.1.
Figuur A.1: Weaver1
Wiskundig wordt dit door de volgende formules beschreven:
Bijlage A. Bewijs van de Weavermixer
I = IngangAM cos (ωLO1 t + ϕLO1 ) ! X I= 2Ai cos (ωi t + ϕi ) cos (ωc t) cos (ωLO1 t + ϕLO1 )
136
(A.7)
i>0
! I=
X
Ai cos (ωi t + ϕi ) (cos ((ωc − ωLO1 ) t − ϕLO1 ) + cos ((ωc + ωLO1 ) t + ϕLO1 ))
i>0
Q = IngangAM sin (ωLO1 t + ϕLO1 ) ! X Q= 2Ai cos (ωi t + ϕi ) cos (ωc t) sin (ωLO1 t + ϕLO1 )
(A.8)
i>0
! Q=
X
Ai cos (ωi t + ϕi ) (− sin ((ωc − ωLO1 ) t − ϕLO1 ) + sin ((ωc + ωLO1 ) t + ϕLO1 ))
i>0
• Spiegelreductiefilter tweede menging (banddoorlaatfilter): Het spiegelreductiefilter zal het nuttig signaal doorlaten. Dit is te zien op Figuur A.2 en A.2. Wiskundig blijven de volgende signalen over:
Figuur A.2: Weaver2
Bijlage A. Bewijs van de Weavermixer
137
Figuur A.3: Weaver3
IBP =
X
Ai cos (ωi t + ϕi ) cos ((ωc − ωLO1 ) t − ϕLO1 )
(A.9)
i>0
QBP = −
X
Ai cos (ωi t + ϕi ) sin ((ωc − ωLO1 ) t − ϕLO1 )
i>0
• Tweede menging: De tweede menging mengt het signaal verder naar beneden (naar ongeveer) 12 kHz. Dit is geschetst in Figuur A.2 en A.2. De bijhorende formules staan hieronder.
II = IBP cos (ωLO2 t + ϕLO2 ) X II = Ai cos (ωi t + ϕi ) cos (ωIF 1 t − ϕLO1 ) cos (ωLO2 t + ϕLO2 )
(A.10)
i>0
II =
X Ai i>0
2
! cos (ωi t + ϕi )
cos ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) + cos ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 )
!
Bijlage A. Bewijs van de Weavermixer
138
QQ = −QBP sin (ωLO2 t + ϕLO2 )
(A.11) (A.12)
QQ =
X
Ai cos (ωi t + ϕi ) sin (ωIF 1 t − ϕLO1 ) sin (ωLO2 t + ϕLO2 )
i>0
QQ =
X Ai i>0
2
! cos (ωi t + ϕi )
cos ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) − cos ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 )
IQ = −IBP sin (ωLO2 t + ϕLO2 ) X IQ = − Ai cos (ωi t + ϕi ) cos (ωIF 1 t − ϕLO1 ) sin (ωLO2 t + ϕLO2 )
!
(A.13)
i>0
IQ =
X Ai i>0
2
! cos (ωi t + ϕi )
+ sin ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) − sin ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 )
QI = QBP cos (ωLO2 t + ϕLO2 ) X QI = Ai cos (ωi t + ϕi ) sin (ωIF 1 t − ϕLO1 ) cos (ωLO2 t + ϕLO2 )
!
(A.14)
i>0
QI =
X Ai i>0
2
! cos (ωi t + ϕi )
sin ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) + sin ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 )
!
• Optellen: Tenslotte worden de signalen op een juiste manier opgeteld, opdat de spiegelfrequenties onderdrukt worden en het nuttig signaal doorgelaten wordt (zie Figuur A.4 en A.5).
Figuur A.4: Weaver4
Bijlage A. Bewijs van de Weavermixer
139
Figuur A.5: Weaver5
De wiskundige uitwerking wordt gegeven door: I 0 = II + QQ
(A.15)
0
I =
i>0
I0 =
! cos ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) + cos ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 ) cos (ωi t + ϕi ) + cos ((ω 2 IF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) − cos ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 ) !
X Ai
X
Ai cos (ωi t + ϕi ) cos ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 )
i>0
Q0 = IQ + QI
0
Q =
Q0 =
! + sin ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) − sin ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 ) cos (ωi t + ϕi ) sin ((ω 2 IF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) i>0 + sin ((ωIF 1 + ωLO2 ) t + ϕLO1 + ϕLO2 ) ! X Ai cos (ωi t + ϕi ) sin ((ωIF 1 − ωLO2 ) t − ϕLO1 − ϕLO2 ) 2 X Ai
(A.16)
i>0
• Kwadrateren, optellen, vierkantswortel nemen: De eigenlijke demodulatie van het AMsignaal bestaat er in het AMsignaal naar baseband
Bijlage A. Bewijs van de Weavermixer
140
te mengen en de amplitude te bepalen. Dit wordt uitgevoerd door een kwadrateerstap, een optelling en het nemen van een vierkantswortel: U itgangAM =
p
I 02 + Q02
X Ai
U itgangAM =
2
i>0
X Ai
U itgangAM =
2
i>0
(A.17) !q
cos (ωi t + ϕi )
(cos (ωIF 2 t − ϕIF 2 ))2 + (sin (ωIF 2 t − ϕIF 2 ))2
! cos (ωi t + ϕi )
Berekeningen van DRM-signalen • Mengen naar een eerste middenfrequentie:
I = IngangDRM cos (ωLO1 t + ϕLO1 ) ! X I= Ai cos ((ωc + ωi ) t + ϕi ) cos (ωLO1 t + ϕLO1 )
(A.18)
i
I=
X Ai 2
i
cos ((ωc + ωi − ωLO1 ) t + ϕi − ϕLO1 ) +
X Ai 2
i
cos ((ωc + ωi + ωLO1 ) t + ϕi + ϕLO1 )
Q = IngangDRM sin (ωLO1 t + ϕLO1 ) ! X Q= Ai cos ((ωc + ωi ) t + ϕi ) sin (ωLO1 t + ϕLO1 )
(A.19)
i
Q=−
X Ai i
2
sin ((ωc + ωi − ωLO1 ) t + ϕi − ϕLO1 ) +
X Ai i
2
sin ((ωc + ωi + ωLO1 ) t + ϕi + ϕLO1 )
• Bandpassfiltering: spiegelonderdrukking voor tweede mengstap: X Ai
cos ((ωc + ωi − ωLO1 ) t + ϕi − ϕLO1 ) 2 X Ai =− sin ((ωc + ωi − ωLO1 ) t + ϕi − ϕLO1 ) 2
IBP =
(A.20)
i
QBP
i
• Downconverting naar 12 kHz: II =
P Ai 2
i
P Ai
cos ((ωIF 1 + ωi ) t + ϕi − ϕLO1 ) cos (ωLO2 t + ϕLO2 )
4 cos ((ωIF 1 − ωLO2 + ωi ) t + ϕi − ϕLO1 − ϕLO2 ) P Ai + 4 cos ((ωIF 1 + ωLO2 + ωi ) t + ϕi − ϕLO1 + ϕLO2 )
II =
i
i
(A.21)
Bijlage A. Bewijs van de Weavermixer
141
P QQ = − A2i sin ((ωIF 1 + ωi ) t + ϕi − ϕLO1 ) (− sin (ωLO2 t + ϕLO2 )) i PA i QQ = 4 cos ((ωIF 1 − ωLO2 + ωi ) t + ϕi − ϕLO1 − ϕLO2 ) i P − A4i cos ((ωIF 1 + ωLO2 + ωi ) t + ϕi − ϕLO1 + ϕLO2 )
(A.22)
i
• Optellen: U itgangDRM = II + QQ =
X Ai i
2
cos ((ωIF 2 + ωi ) t + ϕi − ϕIF 2 )
(A.23)
Bibliografie [1] G. Torfs. Ontwerp van een kortegolf antenne en frond-end voor digital radio mondiale (drm). Afstudeerwerk, Universiteit Gent, 2006–2007. [2] L. Tytgat. Ontwerp van ingebedde ware-tijd software voor de ontvangst van digital radio mondiale (drm). Afstudeerwerk, Universiteit Gent, 2006–2007. [3] J.H. Stott. Drm. EBU Technical Review, (286), march 1998. [4] Digital radio mondiale (drm): System specification. ETSI, (ES 201 980), 2001. V2.1.1. [5] J.H. Stott. The how and why of cofdm. EBU Technical Review, (278), winter 1998. [6] B. J. Choi T. Keller L. Hanzo, M. M¨ unster. OFDM and MC-CDMA for Broadband Multi-User Communications, WLANs and Broadcasting. Number ISBN 0-470-85879-6. John Wiley & Sons, 2004. [7] Prof. M. Moeneclaey. Modulatie en detectie. gedoceerd aan de universiteit Gent, 2006– 2007. [8] Prof. J. Vandewege. Hogesnelheidselektronica. gedoceerd aan de universiteit Gent, 2005– 2006. [9] Analog Devices. Ad9874: Low power if digitizing subsystem. datasheet, 2003. [10] Analog Devices. Ad6620: 65msps digital receive signal processor. datasheet, 2001. [11] Xilinx. Spartan 3e-fpga family. datasheet, 2006. [12] J. Chow. Rf image-reject receivers, november 2002. [13] S.H.K. Embabi M.A.I. Elmala. Calibration of phase and gain mismatches in weaver image-reject receiver. IEEE JOURNAL OF SOLID-STATE CIRCUITS, 39(2), february 2004. [14] V. Prodanov P. Kiss. One-tap wideband i/q compensation for zero-if filters. IEEE Transactions on Circuits and Systems, 51(6), june 2004. 142
Bibliografie
143
[15] I. Sever. Adaptive calibration methods for an image-reject mixer. Afstudeerwerk, University of California at Berkeley,. [16] Walt Kester. Analog-Digital Conversion. Number ISBN 0-916550-27-3. Analog Devices, 2004. [17] Linear Technology Corporation. Ltc2249: 14-bit, 80msps low power 3v adc. datasheet, 2004. [18] Analog Devices. Ad8138: Low distortion differential adc driver. datasheet, 2006. [19] CTS Electronic Components. Model cb3 & cb3lv: Hcmos/ttl clock oscillator. datasheet 008-0256-0. [20] Fairchild Semiconductor Corporation. 74lcx162244: Low voltage 16-bit buffer/line driver with 26 ohm series resistors in outputs. datasheet, 2005. [21] Prof. J.-P. Martens. Signaalverwerking. gedoceerd aan de universiteit Gent, 2004–2005. [22] Coilcraft. Maxi spring air coils. datasheet, 2007. [23] Analog Devices. Ad8368: 800 mhz, linear-in-db vga with agc-detector. datasheet, 2007. [24] Texas Instruments. Tlc271: Lincmos programmable low-power operational amplifier. datasheet, 1996. [25] Analog Devices. Ad8042: Dual 160 mhz rail-to-rail amplifier. datasheet, 2004. [26] M. Johansson. The hilbert transform. Afstudeerwerk, Vaxjo University.