HiSPARC. Pulsgenerator



Vergelijkbare documenten
Klasse B output buffer voor een Flat Panel Display Kolom aansturing

GEÏNTEGREERDE PROEF. VTI Sint-Laurentius. Pakketweegschaal. Industriële informatie & communicatietechnologie SCHOOLJAAR

PIR DC-SWITCH. DC Passive infra-red Detector. Model No. PDS-10 GEBRUIKSAANWIJZING/INSTRUCTION MANUAL

Locobuffer Handleiding

EM2 Microcontroller Project. LED cube

Handleiding HCS VB5248

AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT. Geschreven door: Tom Vocke

Hoofdstuk 5: Signaalverwerking

Inductiemeter via de parallelle poort

Repetitie Elektronica (versie A)

Het is geen open boek tentamen. Wel mag gebruik gemaakt worden van een A4- tje met eigen aantekeningen.

Today s class. Digital Logic. Informationsteknologi. Friday, October 19, 2007 Computer Architecture I - Class 8 1

Module 1: werken met OPAMPS. Project 1 : Elementaire lineaire OPAMP schakelingen.

Combinatorische schakelingen

Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368

Raspberry Pi Interfacing.

Zelf een hoogspanningsgenerator (9 kv gelijkspanning) bouwen

Sensoren Introductie Weerstandtechniek Brug van Wheatstone Basis Opamp schakelingen Opampschakelingen voor gevorderden

Laboratory session 3 Power Electronics

DATA SHEET C2-20. Besturing voor elektrische actuators. DATA SHEET C2-20 A&E Trading b.v. 1

Meten met de multimeter Auteur: Wouter (Flush) [ ]

GEINTEGREERDE PROEF DE COMPUTER ALS TV AFSTANDSBEDIENING

TENTAMEN Versterkerschakelingen en Instrumentatie (EE1C31)

Universiteit Twente EWI. Practicum ElBas. Klasse AB Versterker

Vermogenelectronica labo 2: Gelijkrichters

TENTAMEN MEETTECHNIEK (EE1320) Woensdag 3 juli 2013, 9:00u 12:00u

Inleiding elektronica Presentatie 1

Opgave Tussentijdse Oefeningen Jaarproject I Reeks 4: Lcd Interface & Files

Besturing. 200W eindtrap. 28V Voeding db MHz db 2: MHz db db 4: MHz db. 3:

Tinyserir-RC5. Datasheet. Tinyserir-RC5 Page: 1 of 8

Universele Digi Interface

Handleiding HCS VB5224

Multi Purpose Converter 20A

TENTAMEN Versterkerschakelingen en Instrumentatie (EE1C31)

Mini Handleiding over Elektronica-onderdelen

BEVEILIGING VAN HET STUURSTROOMCIRCUIT

Fig. 5.1: Blokschema van de 555

Spanningsdriver 1 Compensatie van spanningsval

Arduino CURSUS. door Willy - 09-juni-2017

In deze mannual zal ik het voorbeeld van de Led cube gebruiken maar de principes zijn op alles toepasbaar.

Hydrofoon versterker. Een versterker voor de Aquarian H2a. Betreft: Hydrofoon versterker. Door: David Boelee,

7,6. Samenvatting door A woorden 12 april keer beoordeeld. Natuurkunde. Natuurkunde Systemen. Systemen

Handleiding HCS VB5118

Set-Up instructies MULTICONTROLLER _R02

AP80 Display Controller

Bouwbeschrijving UniSAI

TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE

(display1.jpg) Display met 8 leds, geheel links zit de MHz / khz schakelaar, rechts de 8 ledjes met erboven de MHz schaal en eronder de khz schaal.

Vak: Labo elektro Pagina 1 / /

Inhoudsopgave LED dobbelsteen

Klasse B versterkers

ES1 Project 1: Microcontrollers

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie

BOUWBESCHRIJVING RF-INTERFACE

Wat is Arduino? Arduino = microprocessor (Atmel)

ES1 Project 1: Microcontrollers

Afstudeer verslag van Bas van der Heijden Bedrijf:

Handleiding HCS VB5238

S88XPressNetLI v1.0. Installatie- en gebruikershandleiding en naslagwerk KDesign Electronics, PCB ontwerp door RoSoft

Meervoudige Smart-Card Duplicator. Gebruiksaanwijzing

Departement industriële wetenschappen en technologie

vanwege het hoge rendement weinig warmte-ontwikkeling vanwege de steile schakelpulsen genereert de schakeling sterke hf-stoorsignalen

Logo quiz Project Inleiding op de Logo!

Herken de kwaliteit van Leddrivers. Rob Snoek - R&D manager Lumotech B.V. - Heerhugowaard

Voor de bouw van de BITX 20 Tranceiver zijn de volgende stappen handig. Het bordje is in secties ingedeeld (zie de afbeelding).

Labo digitale technieken

Quick start guide. Powerbank MI Mah. Follow Fast All rights reserved. Page 1

Algemene beschrijving van de regelprogramma's

Introductie EMC. Hét EMC Event 2011 DARE!!

Introductie EMC. Hét EMC Event 2011 DARE!!

Een 13,8 volt - 30 ampere voeding

Basisconcept VHDL. Digitaal Ontwerpen Tweede studiejaar. Wim Dolman. Engineering, leerroute Elektrotechniek Faculteit Techniek

Digitale Systeem Engineering 1. Week 4 Toepassing: Pulse Width Modulation Jesse op den Brouw DIGSE1/

LocoServo Handleiding

by illumicon CTCSS encoder Pietershoek XA Veldhoven The Netherlands fax

HANDLEIDING - ACTIEVE MOTORKRAAN

B3C 70cm converter besturing. v PE5PVB bar.net bar.net

Optinet-MX-V2. Ethernet IO-modules. Opticom Engineering B.V.

Hoofdstuk 1: De OPAMP

Trillingen & Golven. Practicum 1 Resonantie. Door: Sam van Leuven Jiri Oen Februari

10 kω stappenverzwakker als audio volumeregelaar

Pagina 1 van 6. ONDERDELENLIJST Hoofdprint Small-Midi 3

Handleiding voor demonstratie multimeter

Inleiding Vermogenversterkers en de Klasse A versterker

Ultrasone snelheidsmeting. Technischverslag Versterker

Practica bij het vak. Inleiding tot de Elektrotechniek: Practicum 2 Analoge versus digitale signalen en hun overdracht

PIC Callgever Door PA1RUM

(energie) meten via Qbus

MC 885 HL CMP Hoog/Laag Brander Thermostaat

Spanningdriver LEDVD5CH20A-V1 Compensatie van spanningsval

Onderzoek werking T-verter.

Elektronica monteur, Technicus Elektronica

LocoServo Handleiding

Introductie in flowcharts

Elementare elektronica schakelingen in de motorvoertuigentechniek (6)

FA23 Aansluitschema Onderdeel nr:

Hoofdstuk 1: De OPAMP

De Arduino-microcontroller in de motorvoertuigentechniek (4)

Onderdelenpakket hf kristal-oscillatoreenheid

Transcriptie:

HiSPARC Pulsgenerator Naam: Jaap Otto Student nummer: 204784 E-mail: jaapotto@hotmail.com Instituut: Hogeschool van Amsterdam Opleiding: E-technologie Major/minor Embedded Systems / Mechatronica Bedrijf: NIKHEF Amsterdam Begeleider: Hans Verkooijen Begeleider opleiding:a.e. van Griethuijsen Datum: 11 Juni 2007

Samenvatting (summary english below) In dit verslag zal ik mijn afstudeeropdracht beschrijven. Deze heb ik gemaakt tijdens mijn afstudeerstage gedurende vijf maanden bij het NIKHEF in Amsterdam. Voor het afregelen van eerder ontworpen elektronica,het HiSPARC project, is er een speciale pulsgenerator nodig. Deze moet een puls kunnen maken met een stijgtijd van 10ns en een amplitude van maximaal -12V instelbaar in stapjes van 0,01V. Tevens moet de pulsduur en de pulshoogte in te stellen zijn met een PC over USB. Het eerste gedeelte van dit verslag behandelt het doel van de pulsgenerator. Waar gaat deze gebruikt worden?, waarom is deze nodig? Het tweede en grootste gedeelte richt zich op het ontwerpen van de hardware. Dit bleek lastiger dan gedacht en koste daardoor meer tijd. Met name de grote spanningzwaai en de snelle stijgtijd is lastig te realiseren. Veel van de problemen worden veroorzaakt doordat de gebruikte componenten niet ideaal zijn. Hierdoor kan het plaatsen van een component het ene probleem oplossen en een ander probleem veroorzaken. In de hardware wordt de ontwikkeling stap voor stap besproken zodat alle gemaakte keuzes duidelijk worden. Het laatste stuk behandelt de software. Er zijn twee stukken software die besproken worden. LabView is de interface die gemaakt is tussen de gebruiker en de PC. Hiermee worden de waardes ingesteld en verstuurd naar de FPGA. De FPGA bevat VHDL code. Deze leest de binnenkomende data van de PC en verstuurt deze naar de pulsgenerator. Summary In this report I will describe the assignment I performed during a five month internship at NIKHEF in Amsterdam. To adjust previous build electronics called HiSPARC a special pulse generator is needed. It must make a pulse with a rise time of 10ns and a maximum amplitude of -12V which is adjustable in 0,01V steps. The pulse width and the amplitude must be adjustable with the use of a PC and USB. In the first part of this report the purpose of the pulse generator will be explained. Questions will be answered like: Where will it be used? and why is it needed?. The second and largest part of the report will describe the design of the hardware. This was more difficult then expected and therefore took more time. Especially the large voltage swing and fast rise time was difficult to realise. Many of the encountered problems were caused by not idealistic electronic components. Knowing this, placing a component can solve one problem and introduce a new one. In chapter 7, the design of the hardware will be explained piece by piece so every decision will become clear. The last part explains the software. There are two parts of software that will be described. LabView is the interface between the user and the PC. With this the pulse generator can be operated and the data will be sent to a FPGA. The FPGA is programmed with VHDL-code. It will read all the incoming data and send it to the pulse generator. 2

Inhoudsopgave Samenvatting 2 Voorwoord 4 Verklarende woordenlijst 5 1. Inleiding 6 2. Opdracht omschrijving 7 3. Kosmische straling 9 4. HiSPARC 10 4.1 HiSPARC II elektronica 10 5. Ontwerpen 11 6. Simulatie 12 7. Hardware 14 7.1 Puls 14 7.2 Op-amp 15 7.3 FET driver 18 7.4 Amplitude 22 7.5 Offset 23 7.6 Overige hardware 24 7.6.1 FPGA 24 7.6.2 USB interface 24 7.6.3 Voeding 24 7.6.4 Buffer 24 8. Software 25 8.1 LabView 25 8.2 VHDL code 26 8.2.1 CLOCK_DIV 26 8.2.2 USB_RDCLK 26 8.2.3 USB_ENCODER 27 8.2.4 DAC_ENCODER 27 8.2.5 PULSE_GEN 27 9 Resultaat 28 10 Conclusie 31 Nabeschouwing 32 Literatuurlijst 33 Bijlage A Totaal schema. 36 Bijlage B Aansluitschema FT245R USB to FIFO I.C. 37 Bijlage C LabView user interface 39 Bijlage D LabView code. 40 Bijlage E VHDL source code. 41 3

Voorwoord Ik heb mijn afstudeerstage gelopen bij het Nationaal Instituut voor Kernfysica en Hoge- EnergieFysica (NIKHEF). Het NIKHEF is een collaboratie tussen het Fundamenteel Onderzoek der Materie (FOM), de Vrije Universiteit Amsterdam, de Universiteit van Amsterdam, de Radboud Universiteit Nijmegen en de Universiteit Utrecht. Gezamenlijk voeren zij verschillende experimenten uit in subatomaire en hoge energie fysica. Het NIKHEF is tevens actief betrokken bij verschillende internationale experimenten over de gehele wereld. Het NIKHEF ontwerpt en bouwt zowel elektronica, software als mechanische onderdelen voor de complexe detectoren die nodig zijn bij de studie naar de kleinste deeltjes in het universum. Ten slotte wil ik het NIKHEF en in het bijzonder Hans Verkooijen bedanken om mijn afstuderen hier mogelijk te maken en de begeleiding tijdens het afstuderen. Bij het lezen van dit verslag is enige kennis van elektronica noodzakelijk. 4

Verklarende woordenlijst Afkortingen ADC DAC DC EEPROM FET FIFO FOM GBW HiSPARC IC NIKHEF PMT SMD USB VHDL VHSIC Analog Digital Converter Digital Analog Converter Direct Current Electrical Erasable Programmable Read Only Memory Field Effect Transistor First In First Out Fundementeel Onderzoek der Materie Gain Bandwidth product High School project on Astrophysics Research with Cosmics Integrated Circuit Nationaal Instituut voor Kernfysica en Hoge-EnergieFysica Photo Multiplier Tube Surface Mounted Device Universal Serial Bus VHSIC Hardware Description Language Very High Speed Integrated Circuit Woorden Airshower Laagenergetisch Lineariteit Superponeren Regen van deeltjes Deeltje dat zeer weinig energie bevat. De mate waarin iets lineair verloopt (volgens een rechte lijn) Er bij optellen. 5

1. Inleiding Dit verslag beschrijft mijn afstudeerstage bij het Nationaal Instituut voor Kernfysica en Hoge- EnergieFysica (NIKHEF). Hier heb ik gedurende vijf maanden gewerkt aan het ontwerpen van een pulsgenerator. Deze zal worden gebruikt voor het testen en afregelen van een eerder ontwikkeld experiment genaamd: High School project on Astrophysics Research with Cosmics (HiSPARC) zie verdere informatie hoofdstuk 4 bladzijde 10. Een standaard pulsgenerator kan niet voldoen aan de gestelde eisen (zie hoofdstuk 2 bladzijde 7). De pulsen moeten snel zijn (10ns) en een amplitude van -12V hebben. Het ontwikkelen van de pulsgenerator bestaat uit een aantal stappen welke in chronologische volgorde beschreven zullen worden: Ontwerpen Simuleren Hardware Labview VHDL schrijven print ontwerpen 6

2. Opdracht Omschrijving De elektronica van een nieuw project genaamd HiSPARC II moet getest worden op lineariteit. Deze elektronica moet de binnenkomende signalen analyseren. Deze signalen komen uit een Photo Multiplier Tube (PMT). Doormiddel van een 12 bits analoog naar digitaal converter (ADC) kunnen de gegevens worden opgeslagen, dit komt overeen met 4095 stapjes. De ADC heeft een bereik van 0V tot -2V. Er zijn dus stapjes mogelijk van ~0,5mV. Bij grote uitzondering kan er ook een evenement optreden met een amplitude groter dan -2V. Deze kan oplopen tot meer dan -10V. Deze waardes worden niet precies opgeslagen, wel worden ze geregistreerd met een tijdstempel. Dit wordt gedaan doormiddel van twee comparatoren die met een programmeerbare drempelspanning (threshold) op -5V en op -10V zijn afgeregeld. Als de amplitude van de PMT de -5V of de -10V passeert, klapt deze om en wordt dit moment geregistreerd met een nauwkeurig tijdstempel. Met behulp van de pulsgenerator kan deze drempelspanning opgezocht worden en vervolgens bekeken worden in hoe verre deze afhankelijk is van de pulsduur. Voor de te maken opdracht moeten de signalen die uit een PMT komen nagebootst worden. Deze signalen hebben geen vaste waardes, wel een bereik waar de meeste invallen. Met de uiteindelijke pulsgenerator moet dit gehele bereik instelbaar zijn zodat de HiSPARC II Elektronica zo goed mogelijk is in te stellen en te testen. Het PTM signaal Figuur 1 Plot van een PMT signaal. In figuur 1 is een plot te zien van de verschillende waardes van het PMT signaal. Door de oscilloscoop in persistence mode te zetten is het mogelijk ieder gemeten signaal weer te geven. De kleur in de plot veranderd geleidelijk van paars naar rood naarmate er meer signalen op het zelfde punt gemeten worden. 7

Uit de plot is te halen dat de pulsduur varieert tussen 20ns tot 70ns. Deze kan echter op lopen tot enkele μs. De eerste flank ligt rond de 10ns. De amplitude varieert tussen 0 en -2,5 Volt. Dit is niet goed uit de grafiek te halen omdat de trigger is afgesteld 600mV. Tevens treedt er soms een bijzondere gebeurtenis op waarbij de amplitude kan oplopen tot -10 Volt, dit is ook niet uit de plot af te lezen. Hiermee zijn er een aantal eisen die gesteld kunnen worden aan de te maken puls. - De eerste flank moet ± 10ns zijn. - De pulsduur moet instelbaar zijn tussen 20ns en 5μs. - De amplitude moet instelbaar zijn tussen 0V en -12V in stapjes van ongeveer 10mV Hier komen een aantal andere voorwaarden bij. De pulsgenerator moet zijn uitgangsspanning kunnen leveren aan de 50 ohm ingang van de HiSPARC II Elektronica. Bij een uitgangspanning van 10V moet er 200mA (gepulseerd) geleverd kunnen worden. Dit moet dus geleverd kunnen worden door de generator. Een van de te testen functies is in hoe verre de ADC in de HiSPARC II Elektronica lineair is, hiervoor moet de amplitude nauwkeurig in gelijke stapjes in te stellen zijn. Het geheel moet met behulp van een PC te bedienen zijn over USB. De generator haalt zijn voeding uit de USB vandaan waardoor hij niet meer als 500mA mag opnemen. 8

3. Kosmische straling Van de constante regen van kosmische deeltjes bezitten er een aantal zeer veel energie. Van een groot deel van deze straling weten we waar het vandaan komt. Zo zenden sterren en de zon continu laagenergetische deeltjes uit. Zware sterren die aan het eind van hun leven uiteen spatten, een zogenaamde supernova, zendt een golf van hoogenergetische deeltjes uit. Maar een aantal deeltjes die de aarde bereiken blijken nog veel meer energie te bezitten. De oorsprong van deze deeltjes is nog steeds onbekend en moet van buiten de Melkweg komen. Doordat zo n deeltje zeer veel energie bezit zal het bij het passeren van de dampkring botsen op andere secundaire deeltjes (zuurstofatomen en stikstofatomen) welke op hun beurt weer op andere deeltjes botsten. Gevolg hiervan is een zogenaamde airshower (regen van deeltjes). Blauw: elektronen/positronen Cyaan: fotonen Rood: neutronen Oranje: protonen grijs: mesonen groen: muonen Figuur 2 Een gesimuleerde airshower. De meeste van deze secundaire deeltjes bereiken de aarde niet. Ze vervallen, worden verstrooid of ze worden opgenomen in de dampkring. Alleen de deeltjes met zeer veel energie, of een lange levensduur zullen de grond bereiken. Dit zijn meestal muonen. Hoe meer energie het primaire deeltje had hoe groter het oppervlak op de aarde dat gebombardeerd wordt met deeltjes. Het belangrijkste doel van het HiSPARC is het zoeken naar het antwoord op de vraag: Waar komen deze deeltjes vandaan? Om deze vraag te beantwoorden moeten deze airshowers gedetecteerd worden over een groot oppervlak. Het is echter niet noodzakelijk het gehele oppervlak te voorzien van meetpunten. Om een gebied van 100 KM 2 te bedekken zijn 10 tot 15 meetpunten, met een onderlinge afstand van 1 KM genoeg. Door alle data om te zetten in modellen zoals te zien is in figuur 2 kan de richting van het primaire deeltje achterhaald worden. 9

4. HiSPARC High School project on Astrophysics Research with Cosmics (HiSPARC) is een project waarbij middelbare scholen samen met wetenschappelijke instellingen een netwerk vormen om kosmische straling met extreem hoge energie te kunnen meten. Door dit onderzoek probeert men meer te weten te komen over de kosmische deeltjes regen waaraan onze aarde wordt blootgesteld. Tevens is het mogelijk voor scholieren actief hieraan mee te werken en hierover profiel werkstukken maken voor het eindexamen. Op de daken van de hogescholen die mee doen wordt een meetopstelling geplaatst welke bestaat uit drie scintillatoren en fotomultipliers tubes (PMT). De scintillator zal de kosmische deeltjeslading omzetten in een lichtsignaal welke door de PMT wordt omgezet in een elektrisch signaal. De verschillende elektrische signalen worden verwerkt door HiSPARC II Elektronica welke het zal doorsturen naar een PC. De verschillende gemeten waardes van de verschillende scholen worden verzameld en verder uitgewerkt. Muon Foto multiplier Scintillator Figuur 3: Een PMT (Photo Multiplier Tube) met scintillator. 4.1 HiSPARC II Elektronika Hisparc II Elektronica is eigenlijk twee kanaals 400MHz digitale oscilloscoop. Deze unit zal de elektrische signalen digitaliseren doormiddel van een ADC voorzien van een zeer nauwkeurig tijdstempel. Deze gegevens worden door gezonden naar een PC. Omdat de aarde constant gebombardeerd wordt met deeltjes moet er een onderscheid gemaakt worden tussen gewone deeltjes en deeltjes afkomstig uit een airshower. Om dat onderscheid te kunnen maken zijn er drie detectoren bij elkaar geplaatst met een bekende afstand tot elkaar. Mocht er een airshower optreden dan worden alle detectoren nagenoeg tegelijk geraakt. Door te kijken naar de tijdverschillen van de detectoren onderling kan er een richting bepaald worden. De deeltjes bewegen zich voort met de lichtsnelheid, de tijdverschillen zitten dus in de nanoseconden. HiSPARC II Elektronica voorziet deze events van een zeer nauwkeurig tijdstempel. De grote van de airshower is ook afhankelijk van de energie van het deeltje. Hoe groter de energie hoe groter de amplitude die uit de photomultiplier komt. Tevens zegt de grootte van de amplitude iets over het soort deeltje. Om de lading van de deeltjes precies te bepalen wordt de amplitude van de binnen komende pulsen op 0,5mV nauwkeurig gemeten. Hiervoor wordt een 12 bits ADC gebruikt met een meetbereik van 0V tot 2V. Hierin vallen de meeste deeltjes. Grotere pulsen worden geregistreerd met behulp van comparatoren. 10

5. Ontwerpen Als eerste ontwerp is er uitgegaan van een simpele schakeling. De pulsduur wordt ingesteld met een FPGA. De FPGA heeft drie verschillende uitgangen waarmee 0 2V, 5V en 10V geselecteerd kunnen worden. Deze worden aangesloten op de inverterende ingang van een opamp. Door meerdere uitgangen tegelijk aan te sturen kunnen de verschillende spanning en gemaakt worden. De uitgang van de op-amp gaat naar een multiplexer waarmee de puls gemaakt kan worden. De op-amp heeft maar een beperkte uitgang stroom, vandaar dat hiervoor een transistor gebruikt wordt voor het leveren van de 200mA. FPGA U1 FPGA U2 FPGA DAC _ + Op-amp _ + Op-amp FPGA Multiplexer _ + Op-amp 1 Uitgang Figuur 4 Eerste globale ontwerp. 11

6. Simulatie Voor het simuleren van de schakeling is het programma Multisim gebruikt. Hiermee is het mogelijk een schakeling op te bouwen en de werking ervan te testen. De componenten worden omschreven in Spicemodellen. Hierin staan alle eigenschappen, zoals onder andere de slewrate, offset en bias stroom van de componenten zodat er een realistische simulatie ontstaat. Ook kunnen er realistische modellen van oscilloscopen worden gebruikt Bij het simuleren kwamen er een aantal zaken aan het licht. Zo bleken niet alle componenten in de componenten bibliotheek te zijn opgenomen. Het zelf ontwerpen van spicemodellen bleek niet naar behoren te werken. Omdat we niet precies wisten of de fout in ons zelf ontworpen model zat of in het schema is er gekozen voor een soortgelijk vervangend component. De fout bleef, alleen door het veranderen van de instellingen was de fout te onderdrukken. Het probleem was dat door het veranderen van de instellingen er met een aantal zaken geen rekening gehouden wordt. Hierdoor werd het resultaat van de simulatie minder betrouwbaar. Door een timestep error bleek het gezamenlijk testen van de verschillende delen van de hardware ook niet te werken, waardoor alles in delen getest moest worden. Vermoedelijk zat het probleem bij het berekenen van de potentialen van de verschillende knooppunten. Deze waardes moeten steeds opnieuw berekend worden totdat er bijna geen verandering meer optreed. De schakeling is dan stabiel. Omdat dit met grote stappen niet mogelijk was hebben we zeer kleine stapjes genomen. Hierdoor duurde het erg lang totdat er een eind situatie gevonden was, als deze al gevonden werd. Voor het rekenen aan condensatoren wordt er een lekweerstand overgeplaatst, deze is zeer hoog-ohmig. Dit vergt veel rekentijd en kan leiden tot een timestep error. Dit is op te lossen door de lekweerstanden te verkleinen, dit leidt echter weer tot verkeerde resultaten. Zo ook bij ons, de resultaten die we in de praktijk vonden bleken niet overeen te komen met de simulatie. Meer hierover kunt u lezen verder in dit verslag. 12

Figuur 5 Simulatie van een deel van de schakeling. Op de oscilloscoop is de ingang (geel: 5ns/div 5V/div) en de uitgang (blauw: 5ns/div 5V/div) te zien. In het schema is een multiplexer, een op-amp en een transistor opgenomen. Met de multiplexer is de achter flank in te stellen. De op-amp zorgt voor drie maal versterking. De transistor levert de benodigde stroom. 13

7. HARDWARE 7.1 Puls Het lastige van de opdracht zit in het feit dat er een enorme spanningszwaai gegenereerd moet worden in een vrij korte tijd. Deze ook nog eens in te stellen is in stapjes van 3mV. Er zijn een aantal mogelijkheden om dit te realiseren. Het is een kwestie van uitproberen, aanpassen en afstellen voor het maken van de juiste schakeling. De schakeling is op te delen in een aantal delen. Elk deel kan afzonderlijk ontworpen worden, het is echter verstandig met het moeilijkste gedeelte te nen. Het andere kan hier dan op aangepast worden zodat de schakeling zo ideaal mogelijk wordt. We nen daarom met het maken van de grote spanningszwaai en letten daarbij op de snelheid van de flanken. De uiteindelijk gebruikte schakeling is te vinden als bijlage A. Voor het maken van de grote spanningszwaai kan een op-amp gebruikt worden. Door een juist gekozen gain kan met een relatieve lage ingangsspanning op de uitgang een grote zwaai gemaakt worden. Aan de uitgang wordt een transistor geplaatst voor het leveren van de gewenste stroom. R2 50 ohm load 10K 0V-4V in R1 3K3 _ V+ B E + V- C -15V Figuur 6 Eerste ontwerp. In figuur 5 Is de gain: R2 10K Vout Vin 4V 12V R1 3K3 Formule 1 Hiermee kan er met een regelbare spanning van 0 tot 4V en een gain van 3 een zwaai van 0V tot -12V gemaakt worden. Transistor De PNP transistor op de uitgang is een emittervolger. Dat wil zeggen: De spanning op de emitter zal hetzelfde zijn als op de basis min een junctie van ~0,7V. De op-amp zal de inverterende ingang proberen gelijk te houden aan de niet-inverterende ingang, in dit geval 0V. Bij een spanning op de inverterende ingang zal de op-amp zijn uitgang negatief maken om de stroom door R1 te compenseren. Om dit te realiseren zal de uitgang een stroom moeten gaan leveren waardoor de transistor in geleiding komt. Er zal nu ook een stroom door de collector, emitter en load gaan lopen. 14

7.2 Op-amp Het mag duidelijk zijn dat positieve voedingsspanning V+ hoger dan 0V en de negatieve voedingsspanning V- minstens -12V moet zijn. Sommige op-amps zijn echter niet rail to rail. Dit houdt in dat de uitgangsspanning niet tot aan de voedingsspanning kan komen maar enkele volts lager, waardoor bij een V- van -12V de uitgang nooit -12V kan worden. Er dient hier rekening mee gehouden te worden. De op-amp moet zeer snel zijn omdat deze van 0V naar -12V moet in 10 nsec. Dit houdt in dat hij een slew-rate van 1200V/μsec moet hebben. De bandbreedte van een puls afkomstig uit een photomultiplier is 100MHz. De bandbreedte van de op-amp moet dus ook minstens 100MHz zijn. De op-amp wordt later ook gebruikt in het definitieve ontwerp en om alles zo klein mogelijk te maken willen we een SMD behuizing (Surface Mounted Device). Er zijn niet veel op-amps die aan al deze eisen kunnen voldoen. Vooral de hoge slewrate en hoge voedingsspanning combinatie is lastig te vinden. Echter de LM7171 van National Semiconductors heeft een slewrate van 4100V/µsec (Figuur 7 en 8) een ±15V voedingsspanning en GBW (Gain BandWidth product) van 200Mhz (Figuur 9). Figuur 7 Slewrate Figuur 8 Slewrate Figuur 9 GBW Het grote nadeel van deze schakeling is dat er een stroom geleverd moet worden aan de transistor om deze in geleiding te brengen en voordat de transistor uit gaat moet de opgebouwde lading in de transistor eerst wegvloeien door de 50ohm load. Dit alles kost tijd, waardoor de flanken niet snel genoeg zijn. De schakeling moet dus anders. 15

In plaats van een spanningsvolger (emittervolger) kan er ook een schakelaar gebruikt worden. Deze schakelaar schakelt een instelbare stroom voor een bepaalde tijd op de load-weerstand. Als schakelaar wordt er een N-channel FET toegepast. Een P-channel FET is wel mogelijk maar niet verstandig. Bij gebruik van een P-channel FET zit de source aan de load-weerstand. Omdat er een grote capaciteit tussen de gate en de source zit, ontstaat er een grote doorspraak van gate naar source (de uitgang). De capaciteit tussen de gate en drain is velen malen kleiner. Het schema verandert dan wel enigszins, omdat de FET hier geschakeld wordt, waardoor hij niet op genomen is in de terugkoppelkring van de op-amp. 50 ohm load D Uitgang Puls in R2 10K G S 0V...-12V 0V-4V in R1 3K3 _ V+ + V- Figuur 10 Transistor is vervangen voor FET. In figuur 10 is er een N-channel FET gebruikt voor het schakelen van de load. Deze wordt direct met een puls aan gestuurd. Met de op-amp kan de gewenste amplitude worden ingesteld. Om de FET aan te sturen hoeft er niet eerst stroom in gestopt te worden, maar er moet wel lading opgebouwd worden. De schakeling is erg snel. Er treed nu echter wel een ander probleem op. Met de formule: Q C U I T is te berekenen hoeveel stroom er geleverd moet worden om de FET binnen een gestelde tijd open te krijgen. De lading is te halen uit de datasheet 1 : Figuur 11 Gate lading. 1 De gebruikte FET is SPP04N80C3 van Infineon 16

De spanning is in ons geval 15,3V (12V + 3,3V puls). Uit figuur 11 Is te halen dat de Q dan ongeveer 30nC is. Een van de eisen van de pulsgenerator is dat de puls in 10ns omlaag moet. De tijd is dus 10nsec. Nu is uit te rekenen: Q T I Formule 2. 30nC 10nsec 3A Dit houdt in dat er 3A geleverd moet worden om de FET binnen 10ns open te krijgen. Dit is erg lastig en is vaak niet te leveren. Ten gevolge hiervan ontstaat er een lelijke deuk op de uitgang en dit kost wederom tijd. Een tweede effect wat optreedt, is zogenaamde doorspraak, wederom veroorzaakt door de kleine capaciteit tussen gate en drain, de reverse transfer capacitance. Zie ook onderstaande schema s. C D Ingang Uitgang G S Figuur 12 Schema FET met gate-drain capaciteit. Figuur 13 Vervangschema FET met doorspraak. Op het moment dat de puls t en als de puls stopt ontstaat er een piekspanning die door de FET heen gaat, door de gate-drain capaciteit. Deze pieken worden gesuperponeerd op de al aanwezige spanning op de uitgang en verstoren het uitgangssignaal. 17

7.3 FET driver Omdat er veel stroom nodig is om de FET te besturen wordt er een FET driver gebruikt. De gebruikte driver 2 kan 1.5A leveren en is tevens erg snel. 50 ohm load Puls in 3V3 FET driver G D Uitgang S -15V R2 10K 0V...-12V 0V-4V in R1 3K3 _ V+ + V- Figuur 14 FET driver. Om de FET aan te krijgen moet de gate spanning ongeveer 2V hoger zijn ten opzichte van de source spanning. De source spanning is in dit geval regelbaar van 0V tot -12V. Dit houdt in dat als de source spanning heel klein is en dit is mogelijk omdat er ook pulsen zijn van 3mV, de gate een positieve spanning moet hebben. We hebben 5V uit de USB en 3V3 van een spannings regulator tot onze beschikking. Omdat we de spanningszwaai niet te groot willen maken gebruiken we de 3V3. Om de FET uit te krijgen moet de gate spanning gelijk, liefst lager zijn ten opzichte van de source. De source kan -12V zijn dit houdt in dat de uitgang van de buffer minstens -12V moet worden. Een spanning -15V is hiervoor ideaal. Dit alles heeft tot gevolg dat het mogelijk is dat er 15V3 (-12V + 3V3) over de gate source staat. De eerder gebruikte FET met zeer lage capaciteit is hier niet tegen bestand. Alleen de zwaardere types kunnen deze spanning verdragen, maar hebben als nadeel dat de reverse transfer capacitance aanzienlijk groter is. Voor spanningen boven de 1V lijkt dit goed te werken, maar de grote spanningzwaai en hoge gate-drain capaciteit hebben een groot nadeel. Op de inschakel en uitschakel momenten ontstaat er een piekspanning van ± 100mV boven op het originele signaal. Dit zijn de eerder genoemde doorspraak pieken die nu door het gebruik van de FET driver zijn toegenomen, omdat deze een snelle stuurflank geeft. Deze pieken zijn gedeeltelijk te onderdrukken door het plaatsen van een low-pass fiter tussen de uitgang van de driver en de gate van de FET, maar heeft als gevolg dat de pulsduur toeneemt en er niet mooi meer uitzien. Het schema moet dus wederom anders. 2 TC4426 van Microship 18

R2 10K 0V - 4V in R1 3K3 _ + 15V + 15V V+ R3 100 ohm Buffer + V- -15V -15V 50 ohm load Figuur 15 Uitgang buffer. Er bleek ook een buffer 3 te bestaan die continu 300mA kan leveren met een hoge slewrate van 1800 V/μs en tevens kan hij een grote capacitieve belasting aansturen. Omdat de slewrate afhangt van de voedingsspanning, zie figuur 7 en 8 op bladzijde 15, is de voeding van de op-amp en de buffer verhoogt naar -15V en +15V. Al bij de eerste keer inschakelen van de voeding blijkt dat de schakeling oscilleerde. Dit komt doordat de terugkoppeling weerstand (R2) 10K ohm is in plaats van de aanbevolen 560 ohm uit de datasheet van de op-amp. Deze zou dus kleiner moeten. Als deze kleiner wordt moet R1 mee veranderd worden om de juiste versterking te behouden. Hierdoor wordt de ingangsimpedantie van de schakeling te laag. Een andere optie is de puls op de niet-inverterende ingang aan te sluiten en de op-amp met een versterking van een maal aan te sluiten. De terugkoppeling kan nu 560 ohm worden waardoor de schakeling stabieler wordt. Om tevens uit te sluiten dat de oscillatie ontstaat door de voedingsspanning is er in de -15V en +15 lijn voor de op-amp en de buffer een ferroxcube geplaatst. Samen met de al aanwezige 100nF en 10 μf vormt dit een zogenaamde pi-filter. Zie ook figuur 16 hieronder. + 15V 10uF Ferroxcube + 15V R2 10K 100nF 10uF Ferroxcube _ V+ R3 100 ohm Buffer 100nF 0V - -12V in + V- 100nF 100nF 50 ohm load Ferroxcube Ferroxcube 10uF 10uF -15V -15V Figuur 16 Uitgang buffer met phi-filter. Dit alles leek te helpen, echter gaat het wederom mis bij hogere voltages. Vooral rond de 12V is het instabiel en t de schakeling te oscilleren. Ook het verlagen van de voedingsspanning naar -15V en +5V heeft geen invloed op de ontstane oscillatie. 3 LMH6321 High speed buffer van National Semiconductors 19

Echter kwamen we onze eerste meevaller tegen. Doordat we zoveel verschillende mogelijkheden hebben bekeken en uitgeprobeerd, hebben we ons niet gerealiseerd dat de op-amp nu eigenlijk overbodig is. Deze was immers eerst gebruikt voor het maken van -12V Deze kan dus zonder probleem nu verwijderd worden. De puls komt dan direct op de buffer te staan. Er moet nu wel een regelbare puls gemaakt worden van 0V tot -12V. Voor het maken van deze puls gebruiken we weer een N-channel FET, in combinatie met twee condensatoren. + 15V 10uF Ferroxcube 0V -12V 100nF N-c hannel FET D Puls in G S 100pF 100nF C1 C2 3 K 3 R2 100 ohm Buffer R1 100nF Ferroxcube 50 ohm load 10uF -15V Figuur 17 maken van de regelbare puls Om de puls zo snel mogelijk te maken is het verstandig zo min mogelijk elektronica te gebruiken en om storingen tegen te gaan moeten de afstanden zo kort mogelijk zijn. Het gaat hierbij om de afstand van de ingang van de FET tot de ingang van de buffer. Om deze reden zijn er zo veel mogelijk SMD componenten gebruikt. In figuur16 is te zien dat er op de drain van de FET en dus ook over de condensator C1, een regelbare spanning staat van 0V tot 12V. De condensator C2 laat geen gelijkspanning door, de spanning op de ingang van de buffer hangt dus via 3,3K ohm (R1) aan de ground. Op het moment dat er een puls op de gate van de FET wordt gezet, wordt C1 kort gesloten naar de ground en zal de spanning heel snel dalen, de weerstand tussen drain en source is immers erg klein. Deze spanningsdaling laat C2 wel door echter loopt deze nu van 0V naar -12V. Ook nu hebben we last van de verschillende capaciteiten van de FET. De gebruikte FET 4 heeft een extreem lage reverse transfer capacitance. Deze is 1.3pF, vergeleken met 6pF van een gemiddelde FET is dit een hele verbetering tevens passen we enkele trucs toe. Om eventuele nadelige effecten van deze capaciteit als nog te verkleinen en daarmee de puls die de buffer in gaat zo mooi mogelijk te maken, zetten we op de gate een zogenaamde biasspanning. Hiermee wordt de spanningzwaai op de gate verkleind, door de onderkant van de puls aan te passen. De gate van deze FET t te geleiden op ongeveer 0,7V. Door op de gate van de FET een kleine biasspanning aan te sluiten net onder deze 0,7V zal deze net niet geleiden. De capaciteit is echter al voor een deel opgeladen, hierdoor zal de uitgang er beter uitzien. De biasspanning wordt gemaakt met de weerstanden: R6, R7, R8. 4 FDV301N N-channel FET van Fairchild 20

Een ander probleem was de doorspraak van de puls van de gate naar de drain. Om dit tegen te gaan hebben we de schakeling uitgebreid met nog een FET 5, dit maal een P-channel. De FET zorgt ervoor dat de puls op de N-channel FET zo klein mogelijk is, de doorspraak is dan ook klein. Om dit te realiseren moet de grote van de puls op een minimum afgeregeld worden. De FET veranderd nu de bovenkant van de puls. In het onderstaande figuur 18, is het eerder uitgelegde gedeelte over de buffer weggelaten. 0V - 12V 3 K 3 8 K 2 R1 R2 + 5V Puls in C B NPN transistor E R3 P-c hannel D 100nF C1 1 5 K R4 1 0 K G S R5 3 3 R6 R7 + 5V 4 K 7 8 2 0 100nF C2 R8 100K N-channel FET D G S 100nF Naar buffer C3 C4 100pF -15V Figuur 18 Schema van puls gedeelte. De condensatoren C1 en C2 scheiden de DC instelspanning van de verschillende circuits. De puls wordt aangesloten op de gate van de FET. De drain van de P-channel FET is in rust via R5 aangesloten aan de ground. De source is doormiddel van R1, R2 en de transistor afgeregeld op ~3V. Een simpele spanningsafdeling is hier niet mogelijk omdat er 100mA geleverd moet worden tijdens de puls en als er geen puls is niet onnodig veel stroom moet wegvloeien. Bij 3V zal de FET nog net naar behoren werken en dus de doorspraak tot een minimum beperkt zijn. 5 IRLML6302 P-channel FET van International Rectifier 21

7.4 Amplitude Voor het maken van de regelbare 12V spanning is een simpele op-amp schakeling gebruikt in combinatie met een DAC 6 en een twee afregel weerstanden. R6 33K + 15V 5 0 0 K -15V R1 R2 150K 1 0 K 3 3 0 R3 R4 R5 6K8 0V - 4V from DAC 100nF 4 3 C1 C2 100nF _ + + 15V 5 LMH6640 2-15V 1 R7 100ohm 10uF C3 100nF C4 6 8 R8 100nF N-c hannel Puls in G D S 100pF C5 C6 Naar Buffer Figuur 19 Schema regelbare 0 tot 12V spanning. In het bovenstaande figuur 19 zijn de eerder uitgelegde gedeeltes weggelaten. De condensatoren C1, C3 en C4 dienen als ontkoppeling. C2 zorgt voor stabiliteit. De op-amp moet condensator C3 opladen. Dit zou de regeling verstoren als C2 en R7 er niet in zaten. Het duurt vrij lang voordat de maximale uitgangsstroom van de op-amp condencator C3 geladen heeft. Hierdoor kan de op-amp niet goed meer regelen. Door de uitgang van de op-amp met een weerstand (R7) aan C3 te koppelen, kan er een snelle regeling gemaakt worden via C2. rondom de op-amp zijn er nu twee tegenkoppelingen: een langzame via R6 en een snelle via C2. Over weerstand R8 komt de regelbare spanning te staan. Door deze waarde te veranderen of door C5 te veranderen kan de achterflank enigszins geregeld worden. Het was de bedoeling de achterflank te regelen. Hiervoor zou een digitale weerstand of condensator gebruikt moeten worden. Deze zijn helaas niet beschikbaar voor deze snelle signalen (ze zijn te capacitief). Het regelen van de achterflank is komen te vervalen. Uit de DAC komt een spanning van 0 tot 4V. Dit wordt drie maal versterkt door de op-amp tot 12V. Met de weerstanden combinatie R3, R5 en R6 is de versterking af te regelen zodat de uitgangsspanning 12V is. De uitgang van de DAC heeft een kleine offset. Dit houdt in dat deze niet helemaal 0V kan worden. Er is dus altijd een kleine puls aanwezig. Het is de bedoeling de puls in stapjes van 3mV te kunnen regelen en voornamelijk in het gebied 0 tot 2 V, willen we dit zo nauwkeurig mogelijk doen. Dan is een offset van enkele millivolts niet gewenst. Met R1, R2 en R4 kan er een offset weggeregeld worden van ±33mV. 6 Texas Instruments, TLV5638 Dual 12-bit digital analog converter. 22

7.5 Offset Op de uitgang van de schakeling ontstaat een offset spanning als gevolg van biasstromen en offsetspanning van het gebruikte buffer. Deze offset verschilt per schakeling/buffer en is temperatuur afhankelijk. Zie ook tabel 1 en figuur. Tabel 1buffer input offset spanning en input offset stroom Figuur 20 de buffer offset is afhankelijk van meerdere factoren Om de offset weg te kunnen regelen hebben we een tweede DAC gebruikt die via labview is in te stellen. Hierdoor kan de offset altijd aangepast worden aan de omstandigheden. In het schema is er slechts een kleine aanvulling nodig. Wederom is er een gedeelte van het schema weggelaten. N-c hannel Puls in G 0-12V D S 100p F 100nF C1 C2 4 5 7 R1 6 R2 0 R3 K k 3 K 3 Naar buffer 0-4V from DAC C3-15V 100nF Figuur 21 Schema offset. Met de weerstanden R1 en R3 wordt de spanningzwaai (0 tot 4V) uit de DAC gereduceerd tot 0 tot 200mV (nog steeds in 4095 stapjes). De offset kan ook negatief zijn, om dit te compenseren moet de offset dus regelbaar zijn tussen ongeveer -100mV en +100mV. De weerstand R2 zorgt voor deze verschuiving. Condensator C3 dient als ontkoppel condensator 23

7.6 Overige hardware 7.6.1 FPGA FPGA staat voor: Field Programmable Gate Array. De gebruikte FPGA is een Altera Acex. Bij het ontwerpen van het echte definitieve schema zal er een Altera Cyclone I 7 met bijbehorende EEPROM 8 voor het opslaan van het programma code worden gebruikt, deze is op dit moment nog niet beschikbaar op een testbord. De gebruikte Altera Acex is gemonteerd op een oude print die gebruikt werd bij een test opstelling. Het grote voordeel hiervan is dat bijna alle uitgangen van de FPGA naar buiten zijn gevoerd en er dus eenvoudig wat op aan gesloten kan worden. Tevens zijn er een aantal schema s van het bord beschikbaar. De Altera Acex is, enkele jaren geleden voor dit test bord gekozen omdat deze beschikte over voldoende aansluitingen voor de toenmalige test. Er hoefde niet veel VHDL (code) in, dus de FPGA hoefde niet veel opslag ruimte te bevatten. De prijs wordt voornamelijk bepaald door de hoeveelheid opslagruimte, de gebruikte FPGA is dus goedkoop. Een andere belangrijke reden is de goede ervaringen met Altera. 7.6.2 USB interface De communicatie tussen PC en de pulsgenerator verloopt over USB. Om met de FPGA te kunnen communiceren, moeten de USB signalen omgezet worden naar 8 bits data woorden. Hiervoor is er een chip beschikbaar, de FT245R USB FIFO I.C.. De laatste versie bestaat uit een enkel IC waar alle benodigde weerstanden, condensatoren en oscillator al zijn in geplaatst. Het bevat 4 aansluitingen voor de USB, waaronder 5V voor zijn eigen voeding. Verder heeft het 12 aansluitingen voor de besturing(4) en data(8) van de inwenige FIFO. Omdat de pulsgenerator vanuit de USB gevoed gaat worden moet de USB 5V voedingslijn door de computer uit te zetten zijn, in verband met eventuele overbelasting. Hiervoor moet er een externe FET geplaatst worden welke door de USB-FIFO chip uit geschakeld kan worden. Zie bijlage B voor het aansluitschema. 7.6.3 Voeding De gehele schakeling wordt door USB gevoed. Deze levert 5V. Er is echter ook +3V, +15V en -15V nodig. De 3V kan gemaakt worden met een regulator. De +15V en -15V wordt gemaakt door twee DC-DC 9 converters. 7.6.4 Buffer De gebruikte FPGA geeft een uitgangsspanning van 2,5V. De FPGA die gebruikt gaat worden heeft 3,3V als uitgangsspanning. De schakeling is op 3,3V berekend. Dit heeft tot gevolg dat bij 2,5V de achterliggende elektronica (DAC s) niet goed reageert. De verstuurde data komt niet goed aan. Dit komt doordat er een minimale spanning van 2,4V gebruikt wordt als logische 1. De 2,5V uit de FPGA ligt net op de grens hiervan. Om data verlies te voorkomen is er een buffer 10 geplaatst tussen de uitgangen van de FPGA en de ingangen van de DAC s. 7 Altera Cyclone I, EP1C3T100C7N. 8 EEPROM (Electrically Erasable Programmable Read-Only Memory), EPCS1SI8N. 9 DC-DC converter IE0515S van xppower. 10 74LV07A van Philips 24

8. Software 8.1 LabView Om de pulsgenerator via de computer te kunnen besturen is er een eenvoudige interface gemaakt met LabView. De definitieve software moet uiteindelijk van de HiSPARC website te downloaden zijn als executable file. De software bevat een aantal tekstvelden waar de gewenste waardes in gevuld kunnen worden, de pulsduur kan doormiddel van een slider ingesteld worden. Doormiddel van een dropdown menu kan de juiste USB poort geselecteerd worden. LabView zorgt voor een conversie tussen de ingevulde waardes en de te versturen data. Zo kan de amplitude opgegeven worden in Volt in stapjes van 3mV van 0V tot 12V. Dit wordt gedeeld zodat het overeen komt met de 4095 stapjes van de DAC. Het zelfde gebeurd met de offset waardes. Deze varieert van -100mV tot +100mV en wordt wederom omgezet in 4095 stappen. De pulsduur bevat 255 stappen van 20nsec dit komt overeen met 0 tot 5,1μs pulsbreedte. Er vind geen foutcontrole plaats omdat er elke 250μs de data opnieuw wordt verzonden. Een eventuele fout wordt dus na 250μs vervangen door een nieuwe waarde. Tevens komt er geen communicatie terug van de pulsgenerator, hierdoor blijft het besturen eenvoudig. Elke ingevulde waarde wordt omgezet in een 16-bit hexadecimale string welke weer wordt omgezet in twee datablokken van 1 Byte. De drie instelbare waardes worden in een array gezet en voorzien van een start-, Identifier- en een stopbyte. Start Identifier Data Data Stop 99 11 0F FF 66 Figuur 22 Opbouw van een data blok voor instellen van de amplitude. Het start (hex99) en stop (hex66) byte zijn steeds het zelfde. De identifier verteld of de volgende 2 bytes iets zeggen over de offset (hex10), amplitude (hex11) of pulsduur (hex12). In voorbeeld figuur 22 wordt de amplitude op zijn maximale waarde gezet (hex0f FF). De data in de array wordt elke 250μs in zijn geheel verstuurd. Dit houdt in dat zowel de waardes van de twee DAC s (offset en amplitude) als de pulsduur steeds opnieuw verstuurd worden. De 15 Bytes (3x5 Bytes) die zijn opgeslagen in de array worden, voordat ze verzonden worden, omgezet in een string. Doormiddel van drie communicatie blokken (visa genaamd) wordt de data naar een USB poort gestuurt. Het eerst blok, Visa Open, opent de connectie en bevat de mogelijkheid een USB poort te selecteren. Het volgende blok, Visa Write, schrijft de eerder gemaakte data string naar de geselecteerde USB poort. Het laatste blok, Visa Close, sluit de connectie. Het visa Open en Visa Close kunnen allebei een foutbericht geven als er iets mis gaat in de communicatie. Zie bijlage C voor de user interface en bijlage D voor de volledige code. 25

8.2 VHDL code De VHDL code is geschreven is het programma Ease. Hiermee is het mogelijk de software op te delen in blokken en in deze blokken de benodigde code te schrijven. Groot voordeel hiervan is dat het geheel overzichtelijk blijft. De gehele code is te vinden in bijlage E Hieronder volgt een korte beschrijving wat elk blok doet. Figuur 23 Blokschema VHDL code 8.2.1 CLOCK_DIV In het blok CLOCK_DIV wordt doormiddel van delen de 50MHz die binnen komt opgedeeld tot ongeveer 6MHz voor de USB en 0,75Hz voor het maken van de puls. De 6MHz wordt gemaakt door deze 50MHz 8 maal te delen. Vervolgens wordt deze verder gedeeld tot 0,75Hz. 8.2.2 USB_RDCLK Zolang er data is in de USB FIFO, dit wordt aan gegeven met RXFn, wisselt USB_RD steeds van laag naar hoog. 26

8.2.3 USB_ENCODER Hierin wordt de binnenkomende USB data in stukken bekeken en de bijbehorende acties ondernomen. De data wordt eerst op nul gezet vervolgens wordt er gewacht op een kloksignaal en een startbyte (Hex99). Als deze aanwezig is dan wordt er een teller opgehoogd en gekeken of er een geldige identifier aanwezig is. Is dit het geval dan wordt de volgende databyte opgeslagen in de bijbehorende tijdelijke variabele (offset, amplitude, pulsbreedte) het eerste databyte wordt higherbyte genoemd. De volgende databyte heet lowerbyte en wordt ook opgeslagen. De eerder gestarte teller heeft nu de waarde vier bereikt, bij elke ingelezen byte wordt deze één opgehoogd. Er wordt nu dus een stopbyte verwacht (Hex66). Is deze er, dan wordt de ingelezen data doorgestuurd naar het volgende blok en worden de tellers weer op nul gezet. Ook als er geen geldige waardes worden ingelezen worden de tellers gereset. 8.2.4 DAC_ENCODER Eerst worden de databytes uit het USB_ENCODER ingelezen. Dan wordt de 0,75Hz klok gesynchroniseerd met de 6MHz klok. Vervolgens wordt de data op de achterflank van elke klokpuls omgezet van parallel naar serieel en naar buiten gestuurd op de lijnen: SDA_OUT, SCL_OUT en CSn_OUT. 8.2.5 PULS_GEN Als eerste wordt de 0,75Hz klok gesynchroniseerd met de 50MHz klok. Er wordt gewacht tot een voorflank van de 0,75Hz klok is geweest welke de puls start. Dan wordt de waarde die is gekozen voor de pulsbreedte vergeleken met een teller. Zijn deze gelijk dat wordt de puls gestopt. Zijn deze verschillend, dat wordt de teller opgehoogd en wordt er opnieuw vergeleken. 27

9. Resultaat Met de gemaakte puls generator is het volgende mogelijk: Er kan een puls gegenereerd worden waarvan de pulsduur is in te stellen van 0 tot 5100ns in stapjes van 20ns. De amplitude van de puls kan ingesteld worden van 0V tot -12V in stapjes van 0,01V. De stijgtijd is ongeveer 10ns (zie ook figuur 24, 25 en 26 hieronder). De offset op de uitgang van de pulsgenerator kan zeer nauwkeurig worden weggeregeld. De uitgang is berekend op een belasting van 50ohm. De pulsduur, amplitude en offset zijn in te stellen met behulp van een PC met LabView. De communicatie verloopt via USB. De gehele schakeling kan gevoed worden door USB er is dus geen externe voeding nodig. Doordat er gekozen is voor snelheid is het regelen van de achterflank komen te vervallen. Figuur 24 Uitgangspuls 0V naar -90mV. 28

Figuur 25 Uitgangspuls 0V naar -2V. Figuur 26 Uitgangspuls 0V naar -12V. 29

De huidige test opstelling werkt, maar zijn nog een aantal stappen die nog ondernomen moeten worden. Het schema moet officieel getekend worden zodat deze als print gemaakt kan worden. Vervolgens moet deze print geassembleerd worden en ingebouwd in een behuizing. De software moet een executable file worden zodat deze eenvoudig is te installeren. 30

10. Conclusie Het ontwerpen van de hardware bleek moeilijker dan gedacht. Bij het simuleren van de schakeling, zo ver dat mogelijk was, leek alles prima te werken. Later bleek dat de simulatie niet nauwkeurig was waardoor er in het echte ontwerp een aantal hardnekkige problemen zich voor deden. Zo bleek de combinatie van een hoge spanning en een snelle stijgtijd lastiger dan gedacht. De capaciteit tussen gate en drain speelde hierin een grote rol. Het opladen hiervan kost energie wat niet snel genoeg geleverd kan worden. Tevens zorgt deze capaciteit voor een doorspraak die op de uitgang zichtbaar is. Om dit op te lossen is de schakeling meerdere malen veranderd. Uiteindelijk is het beoogde resultaat wel gehaald. 31

Nabeschouwing Tijdens mijn afstuderen heb ik veel geleerd en heb ik dingen die ik al wist toegepast in de praktijk. Twee voorbeelden hiervan zijn de FET en de op-amp. Beide zijn uitgebreid behandelt op de MTS en HTS. Een van de eerste dingen die je leert over deze componenten is dat ze niet ideaal zijn. Voor het gemak, bij het maken van rekensommen en schema s, ga je hier echter wel vanuit. In een van de eerste ontwerpen van de pulsgenerator had ik een zeer snelle op-amp nodig en een FET. En volgens de datasheets leken de gekozen op-amp en FET een prima keuze. Pas na het solderen bleek hoeveel invloed de kleine gate-drain capaciteit kan hebben. De waardes die gegeven worden in de datasheets zijn vaak de best gemeten waardes. Pas na het goed bekijken van de grafieken blijkt welke waardes van toepassing zijn op je eigen situatie. Zo zijn zij vaak afhankelijk van de frequentie, spanning of manier van aansluiten. Ook het simulatie programma Multisim is verre van ideaal. In mijn geval heeft het simuleren bijna niet geholpen. Voor zo ver het mogelijk was het schema te testen leek het goed te werken, maar wederom was het in de praktijk anders. Waarschijnlijk komt dit doordat het programma geen stabiel punt kon vinden waardoor er een hoop fouten gegenereerd werden. Door het veranderen van een aantal parameters werkte het programma wel, maar werden er een aantal belangrijke punten niet meegenomen in het berekenen van de schakeling. Verder heb ik gewerkt met LabView. Dit is een mooi programma met zeer veel mogelijkheden. Het is voornamelijk bedoeld voor het maken van grafische interfaces. Hiermee is het mogelijk hardware te bedienen en uit te lezen. De binnen komende data kan dan verder verwerkt worden. Een ander aspect die maar zeer weinig wordt behandeld op school is het fout zoeken. Waarom doet de schakeling het niet? Klopt het wat er gebeurd? Wat zie ik op mijn oscilloscoop? Klopt het wat ik zie op mijn oscilloscoop? En natuurlijk de belangrijkste vraag: Hoe los ik het op? Sommige van deze vragen zijn op te lossen door te meten. Andere zijn ingewikkelder en vaak een kwestie van ervaring. Van dit laatste heb ik aardig wat opgedaan. Leren is één ding, het in de praktijk toepassen is iets anders. 32

Literatuurlijst Datasheets: Analog Divices 1. AD8184-4 to 1 video multiplexer 2. ADG1204-4 to 1 multiplexer 3. ADG1236 - Dual SPST Switch 4. ADG2111 - Quad SPST Switches 5. AD5337-10 Bit DAC Fairchild 1. BC856 - PNP Epitaxial Silicon Transistor 2. FDV301N - Digital FET, N-channel FTDI 1. FT245R - USB FIFO I.C. Infineon 1. SPP04N80C3 - Cool MOS power Transistor International Rectifier 1. IRLML2502 - HEXFET power MOSFET 2. IRLML6302 - power MOSFET Microchip 1. TC4426-1.5A Dual Hight-speed Power MOSFET Drivers National Semiconductor 1. LM7171 - Very high-speed, hight current, Voltage Feedback amplifier 2. LM8261 - Single high output current and unlimited cap load Op-amp 3. LM8262 - Dual high output current and unlimited cap load Op-amp 4. LMH6321-300mA High-speed buffer 5. LMH6640 Single 16V rail to rail hight output Op-amp Phillips 1. BB147 - VHF variable capacitance diode 2. BC817-500mA NPN general purpose transistor 3. 74LVC07A - Hex buffer with open-drain outputs Siemens 1. BC639 - NPN Silicon AF Transistor Texas Instruments 1. SN74LVC07A - Hex buffers/drivers with open drain outputs 2. TLV5638 - Low power Dual 12 Bit DAC with internal reference XP 1. IE0515S - 5V to 15V DC-DC converter 33

Websites Componenten leveranciers http://www.rs-components.nl http://www.farnell.com/ Informatie over het HiSPARC project http://www.hisparc.nl/ http://www.hisparc.nl/docs/hermanawater.pdf Hoofdsite van NIKHEF www.nikhef.nl informatie over het maken van Spicemodellen. http://zone.ni.com/devzone/cda/tut/p/id/3173 http://vlsilab.fiu.edu/projects/electronic_work_bench_tutorial/work_bench.pdf Boeken LabVIEW 7 Express student edition, R.H. Bishop, United States of America, 2006 Software Multisim Simulatie programma voor het simuleren van schakelingen. LabView Programma voor het maken van een gebruiksvriendelijke interface tussen PC en de elektronica. Ease Een programma waarmee VHDL geschreven kan worden. Door het werken met blokken blijft de code overzichtelijk. Altera Quartus II 5.0 Programma dat de geschreven VHDL code omzet naar poorten en flip-flops (synthetiseren). Als de code is omgezet wordt deze zo efficiënt mogelijk in de gekozen FPGA gepast. Er kan een voorkeur gegeven worden op snelheid of op grootte. Als alles is omgezet en past wordt het naar de FPGA gestuurd worden. 34

Overzicht Bijlagen Bijlage A Totaal schema. Blz. 36 Bijlage B aansluitschema FT245R USB to FIFO I.C. Blz. 37 Bijlage C LabView user interface Blz. 39 Bijlage D LabView code. Blz. 40 Bijlage E VHDL source code. Blz. 41 35

Bijlage A Totaal schema To FPGA (Din) To FPGA (sclk) To FPGA (CS) To FPGA (puls) + 2.5V 14 1A 1Y 2A 2Y 3A 3Y 4A 4Y 5A 5Y 6A 6Y 7 GND + 5V 4 7 0 4 7 0 74LVC07A buffer 1 0 0 1 2 3 VDD Din Sclk CS + 15V 5 0 0 K -15V 4 7 0 DAC OUTA 4 OUTA 5 To puls input + 5V 8 OUTB REF GND TLV5638 DAC DAC OUTB 7 6 150K 1 0 K 3 3 0 33K 100nF + 15V 4 6K8 _ 5 LMH6640 To DAC OUTB 3 + 2 100nF -15V + 5V 3 K 10uF 3 B 8 K 2 C E 100nF Bc639 NPN Philips 1 5 K + 3V 1 0 K Puls input -15V G S 100nF IRLML6302 P-channel D 3 3 1 100ohm 10uF 100nF 6 8 100nF FDV301N N-channel D G S + 5V 4 K 7 100K 8 2 0 100nF 100pF To DAC OUTA 5 6 K 4 7 0 k -15V 100nF 3 K 3 100 ohm 56pF + 15V 2 2 K 10uF + 15V Fe roxcube 10uF 2 3 CL V+ Vin Vout GND V- 5 7 4 6 100nF LMH6321 100nF Fe roxcube -15V 5 0 LOAD 36

Bijlage B aansluitschema FT245R USB FIFO I.C. 7.3 USB Bus Powered with Power Switching Configuration Figure 15 - Bus Powered with Power Switching Configuration USB Bus powered circuits need to be able to power down in USB suspend mode in order to meet the <= 500μA total USB suspend current requirement (including external logic). Some external logic can power itself down into a low current state by monitoring the PWREN# signal. For external logic that cannot power itself down in this way, the FT245R provides a simple but effective way of turning off power to external circuitry during USB suspend. Figure 15 shows how to use a discrete P-Channel Logic Level MOSFET to control the power to external logic circuits. A suitable device would be an International Rectifier (www.irf.com) IRLML6402, or equivalent. It is recommended that a soft start circuit consisting of a 1kΩ series resistor and a 0.1μF capacitor are used to limit the current surge when the MOSFET turns on. Without the soft start circuit there is a danger that the transient power surge of the MOSFET turning on will reset the FT245R, or the USB host / hub controller. The values used here allow attached circuitry to power up with a slew rate of ~12.5V per millisecond, in other words the output voltage will transition from GND to 5V in approximately 400 microseconds. Alternatively, a dedicated power switch I.C. with inbuilt soft-start can be used instead of a MOSFET. A suitable power switch I.C. for such an application would be a Micrel (www.micrel.com) MIC2025-2BM or equivalent. 37

Please note the following points in connection with power controlled designs i) The logic to be controlled must have its own reset circuitry so that it will automatically reset itself when power is re-applied on coming out of suspend. ii) Set the Pull-down on Suspend option in the internal EEPROM. iii) The PWREN# pin should be used to switch the power to the external circuitry. iv) For USB high-power bus powered device (one that consumes greater than 100mA, and up to 500mA of current from the USB bus), the power consumption of the device should be set in the max power field in the internal EEPROM. A high-power bus powered device must use this descriptor in the internal EEPROM to inform the system of its power requirements. v) For 3.3V power controlled circuits the VCCIO pin must not be powered down with the external circuitry (the PWREN# signal gets its VCC supply from VCCIO). Either connect the power switch between the output of the 3.3V regulator and the external 3.3V logic or power VCCIO from the 3V3OUT pin of the FT245R. 38

Bijlage C LabView user interface. Met VISA resource name kan de gebruikte USB poort geselecteerd worden. dac value en dac value 2 geven de waarde van de DAC weer in stapjes van 0 tot 4095. hi byte en low byte geven de twee data bytes weer. In string komt de volledige hexadecimale string te staan die verzonden wordt. Error in en Error out geven eventuele fout meldingen door die ontstaan zijn bij de communicatie. Met stop wordt het programma gestopt. De uiteindelijke software zal alleen de instelvakjes bevatten. 39