Steeds meer zenders en ontvangers gebruiken all-digital phase-locked loops (adpll’s) om het rf-signaal te genereren. Een belangrijk onderdeel van een adpll is de time-to-digital-converter (tdc). Arjan van der Beek van Itom beschrijft wat een tdc precies doet en wat de uitdagingen zijn bij het ontwerp.
Een phase-locked loop (pll) is een regelsysteem waarbij het gegenereerde uitgangssignaal een functie is van het faseverschil (en daarmee het frequentieverschil) van de ingangssignalen. Pll’s zijn belangrijke bouwblokken in zenders en ontvangers. De traditionele analoge varianten bestaan uit een fasedetector, een analoog loopfilter van weerstanden en capaciteiten, een spanningsgestuurde oscillator en eventueel een deler (Figuur 1).

Bij Itom zijn we al in 2013 gestart om pll’s op te bouwen in het digitale (discrete) domein – in de literatuur vaak aangeduid als all-digital pll’s (adpll’s). Deze benaming is wat misleidend, omdat er nog steeds analoge componenten in zitten. De aansturing is echter digitaal, of de output is een digitale code. Zo wordt de frequentie van de digitally controlled oscillator (dco) bepaald door een digitaal aangestuurde capaciteitenbank.
Voor veel toepassingen bieden adpll’s voordelen in stroomverbruik, benodigd chipoppervlak en functionaliteit. Digitale loopfilters hebben geen last van externe invloeden zoals temperatuur, spanningen en procesvariaties. Daarnaast zijn ze flexibel instelbaar, om bijvoorbeeld de bandbreedte van de pll te kunnen veranderen. Ook is het relatief eenvoudig om fasemodulatie toe te voegen.
Om het stroomverbruik te minimaliseren, is het zaak de voedingsspanning zo laag mogelijk te houden, in modernere procesnodes vaak tussen de 0,5 en 1 V. Voor veel analoge circuits is dat nadelig, omdat met de voedingsspanning ook de signaal-ruisverhouding afneemt: het signaal en dynamische bereik worden kleiner, terwijl de thermische ruisvloer ongeveer gelijk blijft. Door het veelvuldige gebruik van digitale bouwblokken kunnen adpll’s echter goed overweg met lage voedingsspanningen, waardoor hun voordeel steeds groter wordt naarmate de procesnodes kleiner worden.
Tdc’s
Om fasevoorspelling en -modulatie te kunnen toepassen, moet de absolute fasefout bekend zijn. Met een traditionele fasedetector is die niet te bepalen. In plaats daarvan gebruikt een adpll een fasedetector die bestaat uit een teller en een circuit dat het faseverschil kan meten (Figuur 2). Dit circuit heet een time-to-digital-converter (tdc). Door het gebruik van een teller is een deler niet meer nodig.

De uitgangscode van een tdc is lineair afhankelijk van het faseverschil tussen twee signalen: de referentieklok uit een kristaloscillator en de gesynthetiseerde uitgangsklok. Het verschil tussen de aldus verkregen output van de fasedetector en de ingestelde frequentie geeft de totale fasefout. Eerst stelt de adpll de frequentie grof in, om deze vervolgens bij te regelen naar de gewenste waarde op basis van de resterende fasefout die de tdc meet (Figuur 3).
De meest simpele tdc’s zijn gebaseerd op een keten van kleine tijdvertragingscellen. Deze cellen kunnen we maken met een cmos-inverter, waarbij de resolutie van de tdc gelijk is aan de tijdvertraging van die inverter. Met een latch is het mogelijk om te detecteren welke van de twee klokken eerder is (Figuur 4).


Designuitdagingen
De beperkte resolutie van een tijdvertragingscel zorgt voor een kwantificatiefout. Hoewel te onderdrukken met het loopfilter van de pll, zal deze fout laagfrequent dominant zijn in het faseruisspectrum. Het minimale tijdbereik van de tdc moet even groot zijn als de periode van de hoogste ingangsfrequentie. Door fasevoorspelling toe te passen en een circuit toe te voegen dat de fase opschuift (in het referentie- of feedbackpad) kunnen we dat bereik verkleinen.
Een andere designuitdaging is de timing. Het gebruik van asynchrone circuits maakt dat die zeer nauw luistert. Er is een kans op metastabiliteit, bijvoorbeeld omdat data en de klok van een flipflop op hetzelfde moment veranderen.
Verder moet in het digitale circuit bekend zijn wat het gemeten faseverschil is van een tdc-code. Dit vereist een kalibratiealgoritme. Omdat veel tdc-architecturen een temperatuurafhankelijke code hebben, is een fabriekskalibratie niet altijd genoeg. Het absolute faseverschil kunnen we bepalen met een online kalibratiealgoritme, of met een kalibratie terwijl de pll zich nog grof instelt op de gewenste frequentie.
Een nadeel van het gebruik van een cmos-inverter is de sterke gevoeligheid voor veranderingen in temperatuur en voedingsspanning. Met een low dropout regulator (ldo) kunnen we overspraak minimaliseren. Een andere optie is om de tdc differentieel uit te voeren, waardoor variaties in de voedingsspanning geen invloed hebben op de lineariteit van de converter.
Mogelijkheden
De omzetting van een faseverschil in een code is bruikbaar in vele andere toepassingen, zoals time-of-flight-bepaling, temperatuursensoren en het meten van tijdverschillen in het verval van deeltjes. Veel principes uit analoog-naar-digitaal-converters (adc’s) zijn ook toepasbaar in een tdc. Een voorbeeld is onderdrukking van laagfrequente ruis door chopping.
Door de voordelen van kleinere procesnodes, nieuwe circuits en de toepassing van kennis uit adc’s zullen de fasedetectoren steeds beter worden. Dit biedt mogelijkheden om adpll’s in te zetten in high-performance zendontvangers en in timingapplicaties waar een jitter in de orde van 100 fs belangrijk is. Itom werkt aan een tape-out van een low-jitter adpll, die een hooglineaire tdc gebruikt met een resolutie van 500 fs.