Ga a e Añiba o, Jose Ignacio
1
Resumen Labu pena Abs ac
El p esen e abajo desc ibe la implemen ación, pues a en ma cha y alidación del
Ki de Con ol de Ins umen ación Cuán ica QICK sob e la pla a o ma de desa ollo
RFSoC 4x2 pa a su pos e io u ilización en expe imen os de aplicación en abajos de
in es igación. Se desc ibe la a qui ec u a QICK, que combina un p ocesado empo al
con canales de gene ación de señales y de lec u a con olados a pa i de Py hon/PYNQ
a a és de Jupy e No ebook. El abajo documen a un lujo pa a la ins alación de PYNQ
y QICK en la RFSoC 4x2, la gene ación del bi s eam median e Vi ado y la ejecución de
p og amas de usua io. Se implemen a una con igu ación loopback que pe mi e gene a
y adqui i pulsos I/Q, analiza la cohe encia de ase y aplica una calib ación de ase
dependien e de la ecuencia. Los esul ados demues an la capacidad del sis ema pa a
ope a con de e minismo en iempo eal, educi la encias y o ece un en o no de
p o o ipado ápido.
Palab as Cla e: QICK, RFSoC 4x2, Radio ecuencia, Jupy e No ebook, PYNQ.
Lan honek desk iba zen du QICK Ins umen azio Kuan ikoa en Kon ol Ki a in-
plemen azioa, ma xan ja zea e a balidazioa RFSoC 4x2 ga apen-pla a o man, ge-
oago e abile a egi eko ike ke a-lane ako aplikazio-espe imen ue an. QICKen a ki-
ek u a desk iba zen da, denbo a-p ozesado e ba seinale-so kun za e a i aku ke a
kanalekin konbina zen duena, guz iak Py hon/PYNQ- ik kon ola uak Jupy e No e-
book bidez. Lanak dokumen a zen du PYNQ e a QICK RFSoC 4x2-an ins ala zeko lu-
xua, Vi ado bidez bi s eam so zea e a e abil zaile-p og amen exekuzioa. Loopback
kon igu azio ba inplemen a zen da, I/Q pul suak so u e a esku a zeko auke a ema-
en duena, ase-kohe en zia az e zea e a maiz asuna en a abe ako ase-kalib azioa
aplika zea. Emai zek e akus en du e sis ema en gai asuna denbo a e ealean de e -
minismoz ja du eko, la en ziak mu iz eko e a p o o ipa ze azka eko ingu une ba
eskain zeko.
Gako-hi zak: QICK, RFSoC 4x2, I a i-maiz asuna, Jupy e No ebook, PYNQ.
This wo k desc ibes he implemen a ion, s a -up, and alida ion o he Quan um
Ins umen a ion Con ol Ki QICK on he RFSoC 4x2 de elopmen pla o m, o i s
la e u iliza ion in applica ion expe imen s in esea ch wo ks. The QICK a chi ec u e
is desc ibed, which combines a ime p ocesso wi h signal gene a ion and eadou
channelscon olled omPy hon/PYNQ h oughJupy e No ebook.Thewo kdocumen s
a low o he ins alla ion o PYNQ and QICK on he RFSoC 4x2, he gene a ion o he
bi s eam using Vi ado, and he execu ion o use p og ams. A loopback con igu a ion
is implemen ed ha makes i possible o gene a e and acqui e I/Q pulses, analyze phase
cohe ence, andapplya equency-dependen phasecalib a ion.The esul s demons a e
he capaci y o he sys em o ope a e wi h de e minism in eal ime, o educe la encies,
and o p o ide a as p o o yping en i onmen .
0
Keywo ds: QICK, RFSoC 4x2, Radio equency, Jupy e No ebook, PYNQ.
1
Índice
Resumen Labu pena Abs ac 0
Lis a de igu as 4
Lis a de ablas 6
Lis a de ac ónimos 7
1. In oducción 8
2. Con ex o 11
3. Obje i os y alcance 12
3.1. Obje i os ........................................ 12
3.2. Alcance ......................................... 13
4. Bene icios 14
4.1. Obje i os de Desa ollo Sos enible . . . . . . . . . . . . . . . . . . . . . . . . . 15
5. Diseño del sis ema 16
5.1. Sección lógica p og amable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.1.1. Bloque Time P ocesso . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.2. Bloque Signal Gene a o . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.1.3. BloqueReadou ................................ 24
5.2. SecciónRF ....................................... 25
5.3. A qui ec u aSo wa e ................................ 27
5.4. Ha dwa e........................................ 28
6. Pasos pa a es ablece el en o no 30
2
6.1. PYNQ .......................................... 30
6.2. Ins alaciónQICK.................................... 33
6.3. Vi ado.......................................... 33
6.4. En o no Jupy e No ebook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6.5. P og ama gené ico de QICK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.5.1. Inicialización.................................. 37
6.5.2. P og amagené ico.............................. 39
7. Desc ipción de a eas 41
8. Desc ipción de los esul ados 43
8.1. T ansmisión y ecepción de pulsos . . . . . . . . . . . . . . . . . . . . . . . . . 43
8.2. Calib aciónde ase .................................. 46
8.3. Sinc onizacióndepulsos............................... 49
8.4. Ba idode ecuencias ................................ 53
9. Desc ipción del p esupues o 56
10.Conclusiones 58
Bibliog a ía 59
3
Lis a de igu as
1. Ta je aRFSoC4x2,[3]................................. 10
2. A qui ec u a del sis ema QICK [2] . . . . . . . . . . . . . . . . . . . . . . . . . 17
3. Fi mwa e gené ico de QICK [2] . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4. BloqueTimeP ocesso [2].............................. 19
5. Ins uccionesI- ype[4]................................ 21
6. Ins uccionesJ- ype[4]................................ 21
7. Ins uccionesR- ype[4] ............................... 22
8. Bloque Signal Gene a o [2] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
9. Ins ucción p ocesada po el Signal Gene a o [4] . . . . . . . . . . . . . . . . 24
10. BloqueReadou [2] .................................. 24
11. ADCs y DACs del RFSoC 4x2 [3] . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
12. A qui ec u a So wa e de PYNQ [2] . . . . . . . . . . . . . . . . . . . . . . . . 27
13. Ha dwa e de la RFSoC 4x2 [3] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
14. In e up o dea anque ............................... 32
15. In e azE he ne .................................... 32
16. MainPowe Swi ch .................................. 32
17. Te minalTCLdeVi ado ............................... 34
18. En o no Vi ado con el i mwa e de QICK . . . . . . . . . . . . . . . . . . . . . 35
19. Explo ado de a chi os de Jupy e No ebook . . . . . . . . . . . . . . . . . . . 36
20. No ebooks y e minales ejecu ándose . . . . . . . . . . . . . . . . . . . . . . 36
21. RFSoC4x2enloopback................................ 40
22. Diag ama de Gan del desa ollo del TFM . . . . . . . . . . . . . . . . . . . . 42
23. Pulso espe ado de LoopbackP og am . . . . . . . . . . . . . . . . . . . . . . . 45
24. Pulso ecibido de LoopbackP og am . . . . . . . . . . . . . . . . . . . . . . . . 46
25. Des ase dependien e de la ecuencia . . . . . . . . . . . . . . . . . . . . . . . 48
4
26. Pulso calib ado de LoopbackP og am . . . . . . . . . . . . . . . . . . . . . . . 49
27. QICK pa a el expe imen o de con ol cohe en e de cen os NV- . . . . . . . 50
28. Secuencia de sinc onización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
29. Salida de pulsos del PMOD sinc onizados . . . . . . . . . . . . . . . . . . . . . 52
30. Tiempodesubida................................... 53
31. Espec o de pulso ec angula a 2 GHz . . . . . . . . . . . . . . . . . . . . . . . 54
32. Espec o de pulso ec angula a 2.2 GHz . . . . . . . . . . . . . . . . . . . . . . 54
33. Ejemplo de il ado analógico pa a elimina espu ias, [5] . . . . . . . . . . . . 55
34. Espec o de pulso ec angula a 2.6 GHz . . . . . . . . . . . . . . . . . . . . . . 55
5
Lis a de ablas
1. Ve sionesdePYNQ[8] ................................ 31
2. Des ase dependien e de la ecuencia . . . . . . . . . . . . . . . . . . . . . . . 48
3. P esupues o es imado del sis ema . . . . . . . . . . . . . . . . . . . . . . . . . 57
6
Lis a de ac ónimos
DAC Digi al Analog Con e e
ADC Analog Digi al Con e e
PLL Phase-Locked Loop
PS P ocessing Sys em
PL P og ammable Logic
DDS Di ec Digi al Syn esis
NCO Nume ically Con olled Oscilla o s
SDR So wa e De ined Radio
AXI Ad anced eX ensible In e ace
IP In ellec ual P ope y
QICK Quan um Ins umen a ion Con ol Ki
RFSoC Radio F equency Sys em-on-Chip
SoC Sys em-on-Chip
API Applica ion P og amming In e ace
DMA Di ec Memo y Access
BRAM Block Random Access Memo y
FIFO Fi s In, Fi s Ou
DUC Digi al Up-Con e sion
DDC Digi al Down-Con e sion
GSPS Giga Samples Pe Second
MSPS Mega Samples Pe Second
SMA SubMinia u e e sion A
PMOD Pe iphe al Module
NV– Ni ogen-Vacancy cen e
ODS Obje i os de Desa ollo Sos enible
7
4. Bene icios
El sis ema QICK es una he amien a muy po en e que acili a la gene ación y lec u a
de cúbi s. Es e abajo con ibuye a su comp ensión y uso po pa e de quienes deseen
inicia se en sis emas de ins umen ación cuán ica.
La elección de la pla a o ma RFSoC 4x2 es necesa ia po que in eg a en un único chip
un SoC de adio a anzado y una FPGA de al as p es aciones, lo que p opo ciona po encia
y lexibilidad únicas en e a o as soluciones. Una al e na i a equi alen e eque i ía
combina un on -end de adio, ADC/DAC ex e nos y una FPGA independien e, con
mayo complejidad y cos e. Además, es a pla a o ma es á especialmen e o ien ada a
la in es igación, ya que pe mi e emplea se an o como elemen o de con ol como de
medida y gene ación de pa ones de p ueba en un único disposi i o.
Se p esen a una guía de allada pa a la con igu ación y e i icación del sis ema QICK
sob e la pla a o ma RFSoC 4x2. El uso de es a pla a o ma monolí ica pe mi e educi
la encias, mejo a la sinc onización y simpli ica la a qui ec u a gene al del sis ema,
e i ando la necesidad de múl iples disposi i os y educiendo an o el consumo como
el cos e. Al in eg a DACs, ADCs, lógica p og amable y p ocesado es embedidos en un
chip, se consigue un sis ema compac o y de baja la encia capaz de gene a y cap u a
pulsos con esolución del o den de nanosegundos. Además, acili a u u as a eas de
in es igación y desa ollo.
Al a a se de un sis ema de código abie o y comple amen e modi icable, QICK
o ece un ecosis ema de ins umen ación cuán ica más accesible en compa ación con
soluciones p opie a ias, que suelen se cos osas y con escasa lexibilidad.
Es e p oyec o iene un alo o ma i o, ya que p opo ciona casos p ác icos eales
de in eg ación ha dwa e-so wa e en sis emas econ igu ables pa a ins umen ación
cuán ica. Es o lo con ie e en un ecu so alioso pa a es udian es e ingenie os que
quie an ap ende sob e FPGAs, SoCs y con ol de señales median e so wa e.
La posibilidad de modi ica el i mwa e y los con olado es del sis ema QICK omen a
la capacidad de ediseña el sis ema, pe mi iendo c ea nue as a qui ec u as de con ol
cuán ico.
Aunque el sis ema es á o ien ado a la ins umen ación cuán ica, su a qui ec u a y ca-
pacidad pa a gene a y adqui i señales con al a p ecisión lo hacen ambién aplicable a
o os campos que equie en ins umen ación de p ecisión, como ada es, comunicacio-
nes de al a ecuencia o con ol expe imen al.
Es e abajo sien a las bases pa a u u as ampliaciones del sis ema QICK, como la
in eg ación de edes de e minis as, lo que pe mi i ía ealiza expe imen os dis ibuidos
y escalables.
14
4.1. Obje i os de Desa ollo Sos enible
A con inuación, se especi ican los Obje i os de Desa ollo Sos enible (ODS) que
cumple es e abajo:
ODS 4: Educación de calidad
Es e abajo explica y acili a el acceso a he amien as a anzadas como QICK,
Vi ado y RFSoC, con ibuyendo a la o mación écnica de u u os ingenie os e
in es igado es. Es o p omue e una educación de calidad en á eas eme gen es
como la compu ación cuán ica y la elec ónica econ igu able.
ODS 7: Ene gía asequible y no con aminan e
El QICK sob e RFSoC es mucho más e icien e que mon a equipos de ins umen a-
ción sepa ados. Al in eg a odo en un único chip, se educe el consumo ene gé ico
global del sis ema. Además, el a ance en ecnologías cuán icas es á muy ligado a
la búsqueda de soluciones más e icien es en compu ación y comunicaciones, que
a la go plazo impac an en el uso sos enible de ecu sos ene gé icos.
ODS 9: Indus ia, inno ación e in aes uc u a
El abajo con ibuye al desa ollo de in aes uc u a cien í ica median e el uso de
una pla a o ma abie a y modi icable. Es o impulsa la inno ación en ecnologías
cuán icas y a o ece el uso de soluciones e icien es y escalables.
ODS 10: Reducción de las desigualdades
El uso de un sis ema de código abie o y accesible como QICK acili a la pa icipa-
ción de ins i uciones que no pueden pe mi i se soluciones come ciales p opie a-
ias, educiendo así las ba e as de en ada a la in es igación en ecnologías a an-
zadas.
ODS 17: Alianzas pa a log a los obje i os
QICK es un p oyec o colabo a i o cuya con ibución e ue za el ecosis ema abie o
de desa ollo cien í ico, omen ando la coope ación en e uni e sidades, labo a o-
ios y desa ollado es.
15
5. Diseño del sis ema
En es e apa ado se desc ibe el diseño del sis ema QICK pa a implemen a lo en la a -
je a RFSoC 4x2. QICK es un sis ema de código abie o c eado po openquan umha dwa-
e, diseñado pa a con ola y lee sis emas cuán icos, basado en FPGAs RFSoC. El sis ema
combina i mwa e especializado pa a el p ocesamien o de señales en iempo eal con
una in e az en Py hon, a a és de la pla a o ma de desa ollo PYNQ. Su capacidad de
sín esis digi al di ec a y sus con e ido es de al a elocidad in eg ados pe mi en la gene-
ación y adquisición p ecisa de señales de mic oondas con esoluciones empo ales del
o den de nanosegundos. El sis ema de ansmisión y ecepción de señales de adio es á
diseñado pa a se complemen ado con elec ónica ex e na, lo que pe mi e abaja con
señales de ecuencias más al as que las que admi e de o ma na i a. La a qui ec u a de
QICK se o ganiza en los siguien es ni eles según se de alla en [2] y se ilus a en la Figu a
2:
1. Ni el de usua io: Es el ni el donde el usua io esc ibe código Py hon u ilizando las
APIs de QICK pa a de ini p og amas capaces de c ea secuencias de pulsos, ba i-
dosdepa áme oso adquisiciónde señales.El p og ama puedeinclui condiciones,
buclesylógicape sonalizadaqueseaplica áalmic ocon olado c eadoenlaFPGA.
2. Ni el de con ol: Es el ni el donde las ins ucciones del usua io esc i as en Py hon
son aducidasaunlenguajeensamblado queejecu aelmic ocon olado deQICK
en la FPGA, llamado P oc. El i mwa e maneja la empo ización de o ma p ecisa,
el con ol de los gene ado es y la adquisición de da os en iempo eal.
3. Ni el de señal: Es el ni el donde los DACs y ADCs in eg ados se u ilizan pa a ge-
ne a señales de mic oondas y adqui i señales p o enien es del sis ema cuán ico.
También se ealiza la con e sión descenden e digi al pa a ex ae las componen es
I/Q.
4. Ni el ísico: Es el ni el donde las señales gene adas se ampli ican y son ansmi i-
dasalosdisposi i oscuán icos,ylasseñalesde espues asedigi alizanyseanalizan.
16
Figu a 2: A qui ec u a del sis ema QICK [2]
5.1. Sección lógica p og amable
Es a sección desc ibe el i mwa e que se ejecu a en la FPGA del sis ema RFSoC
den o de la a qui ec u a QICK, según de alla [2]. Su p incipal obje i o es p opo ciona
p ocesamien o de e minis a de señales en iempo eal, lo cual es esencial pa a el con ol
y la lec u a de sis emas cuán icos. En la Figu a 3 se obse a el diseño de la con igu ación
básicade QICK,que sedi ideenelsis emade p ocesamien o(PS)ylalógicap og amable
(PL).
El PS es el enca gado de con ola el sis ema in e p e ando y en iando las ins uc-
ciones del usua io al p ocesado de iempo P oc, con igu ando los bloques lógicos del
sis ema median e la in e az AXI, y ecibiendo los da os de adquisición. También acili a
la in e acción en e el usua io y el sis ema median e código en Py hon. Es a a qui ec u a
pe mi e sepa a el con ol (a ca go del PS) de la ejecución en iempo eal (a ca go del PL),
op imizando así el endimien o del sis ema.
El PL es al amen e econ igu able median e bloques IP, lo que o ece lexibilidad
pa a adap a el sis ema a dis in as si uaciones. Además, pe mi e la ejecución p ecisa de
secuencias expe imen ales, ga an izando una medición y manipulación iel de los cúbi s.
Su es uc u a se di ide en es bloques p incipales:
Time P ocesso ,P ocesado de Tiempos o P oc: El P oc es un mic op ocesa-
do con igu ableden odel sis ema QICK queejecu a un conjun ode ins ucciones
en un lenguaje ensamblado especializado. Es e lenguaje pe mi e implemen a es-
uc u as de con ol como bucles, sal os condicionales, acceso a egis os, gene a-
cióndeseñalesy ecupe acióndeda os, odoellosinc onizadoconun elojmaes o.
Cuen a con una al a p ecisión empo al de has a 1.8 ns.
Signal Gene a o ,Gene ado de Señales obloque gene ado : El Signal Gene-
a o es el bloque esponsable de emi i pulsos digi ales que luego son con e idos
17
en señales analógicas. Es os pulsos se gene an a pa i de o mas de onda de inidas
po el usua io.
Readou Block,Bloque de Lec u a obloque de lec u a: El bloque Readou
del sis ema QICK se enca ga de la adquisición y p ocesamien o de las señales
digi ales p o enien es del ADC, pe mi iendo ealiza mediciones en iempo eal y
con posibilidad de e oalimen ación inmedia a.
La comunicación en e odos los bloques se ealiza median e AXI-S eam pa a
ans e i da os de o ma e icien e, pe mi iendo la ansmisión de lujos de da os sin
di eccionamien o. Es e p o ocolo es ideal pa a la gene ación y adquisición de señales,
ga an izando la sinc onización y e i ando pé didas. En la Figu a 3 se obse a el i mwa e
gené ico de QICK.
Figu a 3: Fi mwa e gené ico de QICK [2]
QICKemplea unsis emade empo izacióndual pa ages iona laejecuciónp ecisade
e en os: la línea de iempo de P oc y la línea de iempo del eloj maes o.
Línea de iempo de P oc. Es a línea de iempo ige la lógica de con ol y la oma de
decisiones. El P oc se sinc oniza con el eloj maes o y ealiza las siguien es ope aciones:
Compila y almacena en memo ia las ins ucciones de inidas po el usua io.
Decodi ica y ejecu a dichas ins ucciones de o ma secuencial.
Puede ealiza espe as condicionales, como agua da la llegada de un e en o
ex e no o el esul ado de una lec u a an es de con inua ejecu ando.
Línea de iempo del eloj maes o. Es el sis ema de empo ización global que
sinc oniza odaslasope acionesdeha dwa e.Su unciónesasegu a laalineaciónp ecisa
en e la emisión de pulsos y las ope aciones de lec u a:
Cada Signal Gene a o man iene una cola de e en os con ma cas empo ales,
sinc onizadas con el eloj maes o.
18
Losgene ado espuedenemi i pulsosenpa aleloo consolapamien os empo ales,
en dis in os canales.
Cuando el P oc ac i a un canal de lec u a, es e ambién se sinc oniza con el eloj
maes o pa a adqui i la señal en el ins an e exac o eque ido.
A con inuación, se a a p o undiza en los bloques P oc, Signal Gene a o y Readou .
5.1.1. Bloque Time P ocesso
El Time P ocesso o P oc es un mic ocon olado con igu able den o del sis ema
QICK que ejecu a un conjun o de ins ucciones en un lenguaje ensamblado especializa-
do. Es e lenguaje pe mi e implemen a es uc u as de con ol como bucles, sal os con-
dicionales, acceso a egis os, gene ación de señales y ecupe ación de da os, odo ello
sinc onizado con un eloj maes o. En la Figu a 4 se obse a el bloque P oc
Figu a 4: Bloque Time P ocesso [2]
El P oc es á sinc onizado con un eloj maes o median e un con ado de 48 bi s. Es e
eloj ac úa como e e encia pa a la empo ización p ecisa de e en os, con ando con una
esolución empo al de has a 1,6 nanosegundos po ciclos de eloj. La decodi icación de
ins ucciones y su ejecución es án desacopladas, lo que mejo a el endimien o y pe mi e
una ejecución de ins ucciones más e icien e. El P oc dis ingue en e ins ucciones no
empo izadas, que se ejecu an de o ma inmedia a, y empo izadas, se colocan en una
colaFIFOespecí icadelcanalco espondien e,dondesonp og amadaspa asuejecución
en un iempo de e minado. Si la cola de un canal es á llena, el p ocesado en a en espe a
has a que haya espacio disponible, ga an izando sinc onización sin pé dida de e en os.
Las salidas que an hacia el gene ado de señal son comple amen e pa alelas,
pe mi iendo que di e en es canales ejecu en ins ucciones independien es de mane a
simul ánea, disponiendo de 2 DAC in eg ados pa a su emisión. Es a a qui ec u a pe mi e
p ocesa múl iples cúbi s y o os e en os.
El P oc hace uso de 2 memo ias y 4 egis os pa a pode lle a a cabo ins ucciones y
almacena da os. A con inuación, se desc iben las siguien es memo ias y egis os:
19
Memo ia de p og ama: Has a 8K ins ucciones de 64 bi s. Almacena las ins uccio-
nes que P oc ejecu a.
Memo ia de da os: Has a 4096 mues as de 32 bi s. Es a memo ia es independien e
de la memo ia de p og ama del p ocesado . Se puede accede a ella desde el
sis ema de p ocesamien o, usando lec u as/esc i u as simples o po DMA.
S ack:Has a256mues asde32bi s,accesiblemedian eins uccionespush/pop.El
s ack puede u iliza se como memo ia empo al, pa a implemen a bucles o mo e
da os en e páginas de memo ia. Es esponsabilidad del usua io e i a es ados de
desbo damien o( ull)o aciado(emp y),yaquep o oca ánunsal oaunadi ección
de e o y einicio del P oc.
Regis e ile: Pe mi e lee has a 7 egis os y esc ibi en uno en un solo ciclo de eloj.
Regis osAXIdecon ol:Son egis osespecí icosden oquepuedense accedidos
y modi icados pa a selecciona el uncionamien o del P oc.
• Regis o 0: selecciona inicio in e no (0) o ex e no (1).
• Regis o 1: con ola el inicio (esc ibi 1 pa a a anca , 0 pa a einicia ).
• 4 egis os adicionales es án disponibles pa a almacenamien o de da os in e -
nos o señales auxilia es.
Regis o o se : Pa a educi el núme o de bi s necesa ios pa a codi ica ins uccio-
nes de iempo, se inicializa a ce o y puede se manejado median e ins ucciones
especí icas.
Pa a pode ealiza ope aciones con las ins ucciones que son en iadas, el P oc
cuen a con bloques de lógica condicional (Cond. Logic), y pa a a i mé ica y lógica se
u iliza el bloque a i mé ico-lógico (Ma h/Bi wise). El bloque de lógica condicional iene
una la encia de un ciclo y sopo a sal os basados en condiciones y puede expandi se pa a
ealiza compa aciones más complejas. El bloque a i mé ico y lógico puede hace po
pa e a i mé ica sumas, es as y mul iplicaciones, y po pa e de lógica and, o , xo , no
y desplazamien os.
La memo ia del P oc es accesible desde el p ocesado del sis ema u ilizando buses
AXI o DMA, lo que pe mi e el in e cambio de da os con el ex e io . La ejecución comienza
en la di ección de memo ia 0 as un einicio o as ecibi una señal de a anque.
5.1.1.1. Ins ucciones del lenguaje ensamblado
Hay es ipos de ins ucciones pa a la memo ia de ins ucciones, según [4], I- ype,
J- ype y R- ype.
I- ypes:
Es e ipo de ins ucción se llama ins ucción inmedia a, ep esen ado en la Figu a
5. Es a llama a un alo inmedia o que se á usado pa a ejecu a una ins ucción. Las
ins ucciones que se implemen an son:
pushi: Pone un alo en el s ack.
popi: Saca un alo del s ack.
20
ma hi: Añade, sus ae o mul iplica alo es a egis o.
se i: Es ablece un pue o de salida.
synci: Sinc oniza con el iempo in e no o se .
wai i: Espe a a que el eloj maes o llegue a un iempo especí ico.
bi wi: Realiza ope aciones bi a bi en egis o.
mem i: Lee da os de memo ia.
memwi: Esc ibe da os de memo ia.
egwi: Esc ibe alo es en egis os.
Fo ma o:
Figu a 5: Ins ucciones I- ype [4]
opcode: 8 bi s de opcode.
page: 3 bi s de página pe mi iendo especi ica has a 8 páginas de egis o.
ch: 3 bi s pa a especi ica el canal de salida.
ope : 4 bi s pa a especi ica la ope ación.
a, b, c: 5 bi s pa a cada di ección de egis o pe mi iendo especi ica 32 egis os
po página.
imm: 31 bi s pa a especi ica alo es inmedia os.
J- ypes:
Es e ipo de ins ucción se llama ins ucción de sal o, el cual cambia la di ección que
con iene el con ado de p og ama, ep esen ado en la Figu a 6. J- ype implemen a las
siguien es ins ucciones:
loopnz: sal a y dec emen a si el egis o no es á a ce o.
condj: sal a si la condición es e dade a.
end: Te mina la ejecución y sal a al es ado inal.
Fo ma o:
Figu a 6: Ins ucciones J- ype [4]
21
opcode: 8 bi s de opcode.
page: 3 bi s de página pe mi iendo especi ica has a 8 páginas de egis o.
ch: 3 bi s pa a especi ica el canal de salida.
ope : 4 bi s pa a especi ica la ope ación.
a, b, c: 5 bi s pa a cada di ección de egis o pe mi iendo especi ica 32 egis os
po página.
add : 16 bi s pa a especi ica la di ección a la que sal a .
R- ypes:
Sonins uccionesbasadasen egis os,donde abajacon egis osynodi ec amen e
con alo es, ep esen ado en la Figu a 7. R- ype implemen a las siguien es ins ucciones:
ma h: Añade, sus ae o mul iplica alo es de dos egis os, esc ibiendo el esul ado
en un e ce egis o.
se : Es ablece un pue o de salida usando 5 egis os como uen e, y o o egis o
po iempo.
sync: Sinc oniza el iempo in e no o se .
ead: Lee el alo de pue o de en ada en un egis o.
wai : espe a has a que el eloj maes o llega a un iempo especi icado en egis o.
bi w: Hace ope aciones bi a bi en egis o.
mem : Lee da os de memo ia.
memw: Esc ibe da os de memo ia.
Fo ma o:
Figu a 7: Ins ucciones R- ype [4]
opcode: 8 bi s de opcode.
page: 3 bi s de página pe mi iendo especi ica has a 8 páginas de egis o.
ch: 3 bi s pa a especi ica el canal de salida.
ope : 4 bi s pa a especi ica la ope ación.
a, b, c, d, e, , g, h:5bi s pa acadadi ecciónde egis ope mi iendoespeci ica
32 egis os po página.
22
5.1.2. Bloque Signal Gene a o
El Signal Gene a o es el bloque, que se mues a en la Figu a 8, esponsable de
emi i pulsos digi ales que luego son con e idos en señales analógicas. Es os pulsos
son gene ados a pa i de o mas de onda de inidas po el usua io median e las APIs
de Py hon. Las o mas de onda p o ienen de una lib e ía de pulsos pe sonalizada, que el
usua io de ine y ca ga desde Py hon en la Zynq. Cada señal gene ada co esponde a una
secuencia digi al p eca gada, que puede ep esen a , po ejemplo, un pulso ec angula
o un pulso de o ma Gaussiana. El bloque ope a como un bloque escla o que pe manece
siemp e lis o pa a ecibi ins ucciones. Si no ecibe ninguna ins ucción su salida se á
ce o o la úl ima mues a, dependiendo de la con igu ación del gene ado .
Figu a 8: Bloque Signal Gene a o [2]
La in e acción en e el P oc y el Signal Gene a o se ealiza median e una in e az
AXI S eam, que pe mi e una comunicación e icien e y sinc onizada. La ejecución de los
pulsos es á coo dinada po el P oc, que indica el momen o que deben ep oduci se,
asegu ando la cohe encia de ase y la sinc onización en e di e en es canales. Si se
especi ica un iempo igual a ce o, la señal se ep oduce de inmedia o. Cuando la cola
de e en os del gene ado es á acía y ecibe una nue a ins ucción, se in oduce una
la encia mínima de 20 ciclos de eloj pa a que el sis ema p epa e y ac i e el pulso
co ec amen e.
El Signal Gene a o almacena las o mas de onda en ol en e u ilizadas pa a modula
la señal po ado a, las cuales deben se de inidas an es de se ejecu adas. U iliza una
BRAM in e na de la FPGA, lo que pe mi e un acceso ápido y e icien e a los da os
du an e la gene ación del pulso. Cada mues a I y Q es codi icada en palab as de 16 bi s,
cumpliendo con los equisi os de al a elocidad.
Den o delSignalGene a o ,el sin e izado digi aldi ec ope mi e gene a lapo ado-
a digi al u ilizada en la con e sión ascenden e digi al. Es e bloque cuen a con una eso-
lución de 32 bi s y se ejecu a en pa alelo con la lec u a de la memo ia de en ol en es, lo
que le pe mi e ope a a la ecuencia máxima del DAC. El DDS o ece con ol de ecuen-
cia y ase, man eniendo la cohe encia en e pulsos a la misma ecuencia. La o ma de
onda I/Q almacenada en memo ia se mul iplica complejamen e con la po ado a gene-
ada po el DDS y, as es a ope ación, la señal pasa po un bloque de ganancia que ajus a
dinámicamen e la ampli ud an es de en ia la al DAC.
Una única ins ucción en iada al Signal Gene a o puede con igu a simul áneamen-
e, según [4] y ep esen ado en la Figu a 9:
La posición en la memo ia donde comienza la o ma de onda.
La ecuencia de la po ado a, con igu ando el DDS.
23
6. Pasospa aes ablece elen o no
Pa a pode ope a con el sis ema QICK en la placa RFSoC 4x2, hay que ins ala y
con igu a el sis ema PYNQ, que cuen a con la aplicación de Jupy e No ebook. Po
o o lado, si se quie e hace alguna modi icación del i mwa e pa a alguna aplicación
especí ica, es necesa io el uso del p og ama de Vi ado. Asimismo, se debe ins ala el
so wa edeQICK,pa a pode u iliza lasAPIs yel sis ema.Pa a odoloan e io se equie e
la placa RFSoC 4x2 y un o denado pa a pode u iliza los p og amas. A con inuación, se
de alla el p oceso pa a cada uno.
6.1. PYNQ
Elsis emaQICKseejecu asob ePYNQ,queesunapla a o madedesa ollobasadaen
Linuxconlaslib e íasdePy honnecesa ias.Es apla a o mape mi ecomunica seconlas
IP del bi s eam desde código de al o ni el como Py hon. Se deben segui los siguien es
pasos pa a pode ejecu a PYNQ:
1. Se desca ga la Imagen de PYNQ: I a la web o icial de PYNQ www.pynq.io/-
boa ds.h ml y desca ga la e sión co espondien e a la RFSoC 4x2. Se ecomienda
u iliza la e sión 3.0.1 que se indica en la Tabla 1.
30
Tabla 1: Ve siones de PYNQ [8]
2. Se esc ibe la Imagen en la Ta je a mic oSD:
a) Se in oduce una a je a mic oSD en un o denado .
b) Se u iliza un so wa e comoWin32DiskImage o balenaE che en el o denado
donde se encuen a la mic oSD pa a g aba la imagen .img que se ha desca -
gado en la a je a mic oSD.
3. Se a anca la RFSoC 4x2:
a) Se in oduce la a je a mic oSD ecién g abada en la anu a de la RFSoC.
b) Se asegu a de que los in e up o es de a anque es én con igu ados pa a
inicia desde la a je a SD, como indica la Figu a 14.
31
Figu a 14: In e up o de a anque
c) Seconec aun cableE he ne desdela placa a un ou e dondees é conec ado
el o denado , o conec a di ec amen e la placa al o denado median e E he -
ne . La Figu a 15 indica donde se encuen a.
Figu a 15: In e az E he ne
d) Se conec a el cable de alimen ación y encende la placa poniendo el in e up-
o de encendido gene al (main powe swi ch) en posición ON. La Figu a 16
indica donde se encuen a.
Figu a 16: Main Powe Swi ch
4. Se ob iene la di ección IP:
Conexión po un ou e : La pan alla in eg ada en la placa RFSoC mos a á la
di ección IP asignada au omá icamen e a la a je a.
Conexión di ec a al o denado : Si se conec ó di ec amen e al o denado , la
di ección IP po de ec o se á 192.168.2.99.
Exis en dos mé odos p incipales pa a comunica se con la placa:
32
Se ido Jupy e : Es la in e az p incipal pa a ejecu a p og amas de QICK.
1. Se ab e un na egado web (Google Ch ome, Fi e ox o Edge) en el o denado .
2. Se in oduce la di ección IP de la a je a en la ba a de búsqueda. Ejemplo:
h p://192.168.2.99.
3. Se in oduce el usua io y la con aseña, que po de ec o ambos son ”xilinx”
SSH y SCP: Ú il pa a pode ans e i a chi os y accede a la e minal de Linux pa a
ope aciones que no engan elación con QICK.
1. Seusa un clien ecomoPuTTY. Selecciona el ipo de conexiónSSH ein oduce
la di ección IP.
2. El usua io y la con aseña que pedi á son “xilinx”.
6.2. Ins alación QICK
Una ez que se enga acceso a la a je a y a Jupy e No ebook, se debe ans e i e
ins ala el so wa e QICK.
Se clona el eposi o io de QICK, h ps://gi hub.com/openquan umha dwa e/qick, en
la a je a. Pa a ello, se pueden u iliza los siguien es comandos en el e minal de la a je a.
cd jupy e _no ebooks /
gi clone h ps :// gi hub .com/ openquan umha dwa e / qick .gi
Se ins ala el so wa e de QICK. Exis e un no ebook den o del eposi o io de QICK
pa a pode ins ala el so wa e de QICK, llamado 000_Ins all_qick_package.ipynb, que se
encuen a en la ca pe a qick_demos del eposi o io.
La celda siguien e ins ala el so wa e de QICK:
!pip3 ins all -e ../
Es e comando ins ala á la úl ima e sión de QICK. Aunque es más ecomendable
ins ala la e sión 0.2.317, debido a que iene mayo compa ibilidad con P oc 2. Pa a
ello hay que ejecu a el siguien e comando en ez del an e io :
!pip ins all qick ==0.2.317
6.3. Vi ado
Pa a pe sonaliza y compila el i mwa e, se necesi a el so wa e Xilinx Vi ado.
1. Ve i ica la e sión de Vi ado:
a) Den o del eposi o io de QICK desca gado, se debe comp oba la e sión que
se debe u iliza pa a la a je a y el P oc especí ico. Pa a ello hay que na ega a
la di ección qick/ i mwa e/p ojec s/.
33
b) Se busca el di ec o io que co esponda a la a je a que se a a u iliza ,
RFSoC 4x2, y con la e sión de P oc que se desea u iliza . Po ejemplo,
qick_ p oc 2_4x2_s anda d.
c) En la ca pe a, se encon a á un a chi o cl que comienza con bd y a seguido
de la e sión de Vi ado que hay que u iliza . Po ejemplo, bd_2023-1. cl indica
que hay que u iliza Vi ado 2023.1. U iliza o a e sión di e en e puede causa
e o es.
2. Ins ala Vi ado:
Se desca ga e ins ala la e sión co ec a de Vi ado desde la web de AMD/Xilinx,
h ps://www.xilinx.com/suppo /download/index.h ml/con en /xilinx/en/downloadNa / i ado-
design- ools/a chi e.h ml.Du an e la ins alaciónse debe asegu a inclui el sopo e
pa a la amilia de disposi i os Zynq Ul aScale+ RFSoC. Pa a segui es os pasos se
debe ene desca gado el eposi o io de QICK.
3. C ea el p oyec o en Vi ado:
a) Se ab e Vi ado.
b) En la consola TCL, como la que apa ece en la Figu a 17, se na ega has a el
di ec o io i mwa e median e el comando:
cd qick / i mwa e / p ojec s / qick_ p oc 2_4x2_s anda d
c) Se ejecu a el siguien e comando pa a gene a el p oyec o au omá icamen e:
sou ce ./p oj. cl
Figu a 17: Te minal TCL de Vi ado
d) Es esc ip c ea áelp oyec odeVi adocon odoeldiseñodebloqueslis opa a
se modi icado, como en la Figu a 18.
34
Figu a 18: En o no Vi ado con el i mwa e de QICK
35
4. Gene a bi s eam
Pa a gene a el bi s eam hay que pulsa en el gui de Vi ado donde pone ”Gene a e
Bi s eam”. Es o lanza á la sín esis e implemen ación del p oyec o pa a gene a el
bi s eam que apa ece á en la ca pe a ou , jun o a la del p oyec o.
6.4. En o no Jupy e No ebook
Pa a con ola el sis ema QICK, es necesa io accede a la aplicación Jupy e No ebook
en la RFSoC 4x2. Pa a ello, hay que ing esa la di ección IP que apa ece en la a je a
en el na egado de un o denado conec ado a la misma ed local o si es á conec ado
di ec amen e al o denado , po la di ección h p://192.168.2.99. Jupy e No ebook se á
ejecu ado di ec amen e en la p opia RFSoC 4x2, la cual ac ua á como un se ido con
in e az web, a la espe a de ecibi ó denes desde un o denado conec ado a la misma
ed.
Una ez abie o apa ece á las u as y los a chi os de /jupy e _no ebooks/, con una
in e az como la que apa ece en la Figu a 19. Se abaja á con a chi os .ipynb, donde se
documen a án los comandos a ejecu a en código Py hon y se mues an los esul ados
de cada comando.
Figu a 19: Explo ado de a chi os de Jupy e No ebook
En la pes aña Running apa ece án los e minales y los no ebooks que se es án
ejecu ando, como apa ece en la Figu a 20. Desde es a pes aña, se pueden de ene an o
los e minales como los no ebooks haciendo clic en Shu down.
Figu a 20: No ebooks y e minales ejecu ándose
Apa e del p og ama qick ambién se an a u iliza o as lib e ías como:
36
Numpy se u iliza pa a unciones ma emá icas y ope ación de ma ices de al o ni el.
Pandas se u iliza pa a la manipulación de da os y análisis de lib e ía.
SciPy con iene a ios módulos pa a ealiza cálculos cien í icos aplicables a discipli-
nas de ingenie ía.
Ma plo Lib si e pa a gene a g á icos en Py hon.
Plo ly p o ee clases y mé odos pa a c ea igu as y g á icos ápidamen e.
Ipywidge s pe mi e c ea in e aces g á icas en so wa e.
6.5. P og ama gené ico de QICK
En es e apa ado se explica qué pasos hay que oma pa a pode ejecu a la mayo ía
de No ebooks de QICK.
6.5.1. Inicialización
El sis ema QICK se comunica median e Py hon. Una ez ins alado QICK u ilizando la
demo000_Ins all_qick_package.ipynb,sedebeimpo a lalib e íaqickencadano ebook
en el que se desee u iliza el sis ema QICK:
om qick impo *
Pa a u iliza el sis ema, es necesa io ca ga el bi s eam con el in de p og ama la
FPGA y con igu a el ha dwa e que se u iliza á. Es o se log a ejecu ando el siguien e
comando:
soc = QickSoc (' Di ección_del_bi s eam . bi ')
Pa a obse a un esumen de la con igu ación y dis ingui los canales del ha dwa e:
p in (soc)
De ol iendo la siguien e salida:
37
QICK unning on RFSoC4x2, so wa e e sion 0.2.317
Fi mwa e con igu a ion (buil F i Ap 11 13:17:19 2025):
Global clocks (MHz): P ocesso 614.400, RF e e ence 491.520
2 signal gene a o channels:
0: axis_signal_gen_ 6 - en elope memo y 65536 samples (6.667 us)
s=9830.400 MHz, ab ic=614.400 MHz, 32-bi DDS, ange=9830.400 MHz
DAC ile 0, blk 0 is DAC_B
1: axis_signal_gen_ 6 - en elope memo y 65536 samples (6.667 us)
s=9830.400 MHz, ab ic=614.400 MHz, 32-bi DDS, ange=9830.400 MHz
DAC ile 2, blk 0 is DAC_A
2 eadou channels:
0: axis_dyn_ eadou _ 1 - con igu ed by P oc ou pu 2
s=4423.680 MHz, decima ed=552.960 MHz, 32-bi DDS, ange=4423.680
MHz
axis_a g_bu e 1.1 (has edge coun e )
maxlen 16384 accumula ed, 16384 decima ed (29.630 us)
igge ed by po 0, pin 0, eedback o P oc inpu 0
ADC ile 0, blk 0 is ADC_D
1: axis_dyn_ eadou _ 1 - con igu ed by P oc ou pu 3
s=4423.680 MHz, decima ed=552.960 MHz, 32-bi DDS, ange=4423.680
MHz
axis_a g_bu e 1.1 (has edge coun e )
maxlen 16384 accumula ed, 16384 decima ed (29.630 us)
igge ed by po 1, pin 0, eedback o P oc inpu 1
ADC ile 0, blk 2 is ADC_C
8 digi al ou pu pins:
0: PMOD0_0
1: PMOD0_1
2: PMOD0_2
3: PMOD0_3
4: PMOD0_4
5: PMOD0_5
6: PMOD0_6
7: PMOD0_7
P oc qick_p ocesso (" 2") e 21: p og am memo y 4096 wo ds, da a memo y
16384 wo ds
ex e nal s a pin: None
DDR4 memo y bu e : 1073741824 samples (1.942 sec), 256 samples/ ans e
wi ed o eadou s [0, 1]
MR bu e : 8192 samples (1.852 us), wi ed o eadou s [0, 1]
La celda de ol e á odos los de alles del i mwa e. Po ejemplo, los canales gene ado-
es, canales de lec u a y los pmods con sus iden i icado es y con odos los da os, como la
asa de mues eo. También mues a la e sión del P oc y su eloj.
38
6.5.2. P og ama gené ico
Pa a p og ama con QICK, hay que ene en cuen a qué e sión de P oc, si se es á
usando P oc 1 o P oc 2. En es e caso se a a u iliza P oc 2, debido a que au oma iza
mucho la ges ión de egis os y pe mi e abaja con unidades de iempo en ez de
icks. Pa a c ea un p og ama gené ico, es necesa io de ini una clase que he ede de
A e age P og amV2. Es a clase oma á los siguien es pa áme os:
La clase QickSoc gene ada
eps: El núme o de epe iciones que que emos hace
inal_delay: El iempo en mic osegundos (µs) que se añade al inal de la línea de
iempo de dispa o después del úl imo pulso
c g: El dicciona io de con igu ación
p og = LoopbackP og am ( socc g , eps = con ig [ ' eps '],
inal_delay = con ig [ ' inal_delay '], c g = con ig )
iq_lis = p og . acqui e_decima ed ( soc , con ig [ ' so _a g '])
Es a clase debe inclui dos mé odos: _ini ialize y _body. El mé odo _ini ialize es el
mé odo donde se ealizan las a eas de inicialización, con igu ando los canales a u iliza ,
de iniendo los bucles y es ableciendo las en ol en es que se almacena án en la memo ia
de abla del Signal Gene a o . El mé odo _body ejecu a las acciones p og amadas,
p incipalmen e la ansmisión o ecepción de pulsos. Pa a pode p og ama con QICK,
se ecomienda es udia de alladamen e las APIs documen adas en [6].
En la Figu a 21 se puede obse a la a je a en una con igu ación Loopback, que es la
con igu ación que se u iliza á pa a la mayo ía de medidas. El sis ema ansmi i á pulsos y
ecibi á los mismos pulsos.
39
Figu a 24: Pulso ecibido de LoopbackP og am
8.2. Calib ación de ase
Como se ha is o an e io men e, el des ase alea o io que in oduce el NCO puede
esul a un incon enien e, pe o se puede soluciona median e el so wa e de QICK. En el
siguien ecódigosemues acómose ealizaunba idopa aob ene eldes asep oducido
encada ecuenciaque se ejecu a el p og ama.Luego, se p ocedea gene a nue amen e
los pulsos, es ándoles el des ase ob enido a la ase aplicada p e iamen e, pa a que es én
en ase.
46
sweep_c g ={ "s a " :500 , "s ep" :0.0006 , " exp s " :40}
gp s =( sweep_c g [" s a "] +
sweep_c g [" s ep "]* np. a ange ( sweep_c g [" exp s " ]))
esul si=[]
esul sq=[]
o gin gp s:
ime .sleep (0.1)
con ig [" eq "]=g
p og = LoopbackP og am ( socc g , eps=con ig[' eps '],
inal_delay = con ig [' inal_delay '], c g = con ig )
(iq0 ,) = p og. acqui e_decima ed (soc , p og ess = False )
di0 = iq0 [:, 0]. mean ()
dq0 = iq0 [:, 1]. mean ()
esul si . append ( di0 )
esul sq . append ( dq0 )
esul si =np . a ay ( esul si )
esul sq =np . a ay ( esul sq )
sig = esul si + 1j * esul sq
amp_a ay = np.abs(sig)
phase_a ay = np. angle(sig ,deg= T ue)
phase_a ay = ( phase_a ay + 360) % 360
Ela ayde phase_a aycon ienelos alo esde las ecuenciasde gp s,comosepuede
e en la Tabla 2.
47
Figu a 25: Des ase dependien e de la ecuencia
i gp s (MHz) phase_a ay (deg)
0 500.000000 114.56
1 500.000600 125.03
2 500.001200 133.25
3 500.001800 142.38
4 500.002400 151.54
5 500.003000 160.90
6 500.003600 170.76
7 500.004200 179.78
8 500.004800 190.11
9 500.005400 199.15
10 500.006000 207.82
11 500.006600 217.15
12 500.007200 226.81
13 500.007800 235.54
14 500.008400 245.65
15 500.009000 254.85
16 500.009600 264.53
17 500.010200 273.96
18 500.010800 283.21
19 500.011400 292.39
20 500.012000 302.09
21 500.012600 311.06
22 500.013200 320.61
23 500.013800 330.06
24 500.014400 339.38
25 500.015000 349.57
26 500.015600 357.85
27 500.016200 7.20
28 500.016800 16.18
29 500.017400 26.88
30 500.018000 35.91
31 500.018600 44.95
32 500.019200 54.48
33 500.019800 63.86
34 500.020400 74.16
35 500.021000 82.12
36 500.021600 91.75
37 500.022200 100.98
38 500.022800 109.67
39 500.023400 119.88
Tabla 2: Des ase dependien e de la ecuencia
48
En la Figu a 26 se obse a que, al aplica la co ección de ase calculada, el pulso
ecibido coincide en ase con el pulso espe ado.
Figu a 26: Pulso calib ado de LoopbackP og am
8.3. Sinc onización de pulsos
En es a sección se p e ende mos a que el sis ema QICK o ece una al a capacidad
de sinc onización, y que pe mi e u iliza an o los PMODs como el sis ema RF con una
p ecisión del o den de nanosegundos. Po ejemplo, el con ol cohe en e de cen os NV–,
comosede allaen[7],esunexpe imen odecon oldecúbi squesedi ideendospa es:
una elec ónica y o a óp ica. El obje i o del expe imen o es inicializa y lee el es ado de
espín de los cen os NV–en diaman e, median e exci ación óp ica con un láse y con ol
deespínconmic oondas.Pa aello,p ime oseinicializaelespínmedian eelláse ,luegose
aplicaun pulso de mic oondaspa a manipula elespín,y inalmen ese uel e a encende
el láse pa a pe mi i la lec u a.
La emp esa Quan ia enca gó la pa e elec ónica del expe imen o pa a que el
expe imen o pueda se ejecu ado median e QICK. Se u iliza un Pulse Blas e pa a
con ola un Lock-In Ampli ie (enca gado de ecibi la señal del láse ), una High-Speed
Cu en Sou ce pa a encende el láse , y un Mic owa e Sou ce & Ampli ie pa a gene a
el pulso de mic oondas.
En la Figu a 27 se p opone u iliza QICK pa a con ola la pa e elec ónica, pudiendo
gene a lospulsos mic oondasy en ia pulsos po losPMODs de la a je a RFSoC 4x2 pa a
ac i a el láse y el Lock-In, cen alizando el sis ema y sinc onizando los pulsos de mane a
p ecisa.
49
Figu a 27: QICK pa a el expe imen o de con ol cohe en e de cen os NV-
En la Figu a 28 se mues a cómo debe ía se la secuencia empo al pa a ealiza el
expe imen o, donde lase _ini_delay es el iempo du an e el cual se enciende el láse
pa a inicializa los espines, mw_delay es el in e alo en el que se gene a el pulso de
mic oondas, y lase _ eadou _delay es el iempo en el que se exci a nue amen e el láse
pa a pe mi i su de ección median e el Lock-In Ampli ie .
Figu a 28: Secuencia de sinc onización
Pa aello,se aau iliza el p og amaSequenceP og ampa asegui lasecuenciaque
se mues a en la Figu a 28, pe mi iendo es ablece los iempos de cada in e alo.
50
class SequenceP og am(A e age P og amV2):
de _ini ialize(sel , c g):
o_ch = c g[' o_ch']
gen_ch = c g['gen_ch']
# Decla a bloque gene ado
sel .decla e_gen(ch=gen_ch, nqz=1)
# Decla a bloque lec o
sel .decla e_ eadou (ch= o_ch, leng h=c g[' o_len'])
# Se esc ibe en la able memo y
# el pulso cons an e que se quie e ansmi i
sel .add_pulse(
ch=gen_ch, name="mypulse", o_ch= o_ch,
s yle="cons ",
leng h=c g['leng h'],
eq=c g[' eq'],
phase=c g['phase'],
gain=c g['gain'],)
# Se es ablece la con igu ación del bloque lec o
sel .add_ eadou con ig(ch= o_ch, name="my o",
eq=c g[' eq'], gen_ch=c g['gen_ch'])
sel .send_ eadou con ig(ch= o_ch, name='my o', =0)
de _body(sel , c g):
# Se ac i a pmod pa a el láse
#en el ins an e 0 con du ación lase _ini _delay
sel . igge (pins=[0], =0, wid h=c g['lase _ini _delay'])
# Pulso de mic oondas jus o después de apaga se el láse
sel .pulse(ch=c g['gen_ch'], name='mypulse',
=c g['lase _ini _delay'])
# Ac i a bloque lec o pa a moni o ea el pulso gene ado
sel . igge ( os=[c g[' o_ch']],
=c g['lase _ini _delay']+c g[' ig_ ime'])
# Ac i a láse y Lock-in cuando acaba el pulso de mic oondas
sel . igge (pins=[0],
=c g['mw_delay']+c g['lase _ini _delay'],
wid h=c g['lase _ eadou _delay'])
sel . igge (pins=[1],
=c g['mw_delay']+c g['lase _ini _delay'],
wid h=c g['lase _ eadou _delay'])
# Tiempo pa a que el sis ema elaje
sel .delay(c g[' elax_delay'])
# Dicciona io de con igu ación
con ig = {
' o_ch': 0, # Canal lec o
'gen_ch': 0, # Canal gene ado
' o_len': o_len, # Tiempo de lec u a
'leng h': 0.5, # Du ación del pulso
' eq': _s a , # F ecuencia po ado a
'gain': 1, # Ganancia
'phase': 0, # Fase
' ig_ ime': ig_ ime,
'lase _ini _delay': 1,
'mw_delay': mw_delay,
'lase _ eadou _delay': 0.5,
' elax_delay': 1
}
51
En la Figu a 29 se puede obse a cómo se cumplen los iempos de los pulsos y la al a
p ecisión con la que se ejecu a en los PMODs. El canal 1 co esponde al pulso de con ol
pa a el sis ema del láse , donde el p ime pulso iene una du ación de 1 µs y el segundo de
0.5µs. El canal 2 gene a el pulso de ac i ación pa a el Lock-In Ampli ie , el cual se ac i a
simul áneamen e con la segunda ac i ación del láse y iene la misma du ación.
Figu a 29: Salida de pulsos del PMOD sinc onizados
En la Figu a 30 se puede obse a que los pulsos p esen an un iempo de subida de
ap oximadamen e74nanosegundos.Es e alo co espondeal iempoque a dalaseñal
en pasa del ni el bajo al ni el al o en la salida digi al del PMOD, y es á in luenciado po
ac o es como la capaci ancia de ca ga, la impedancia de salida del pin, la longi ud del
cable y la espues a del osciloscopio.
52
Figu a 30: Tiempo de subida
8.4. Ba ido de ecuencias
En la Figu a 31, la Figu a 32 y la Figu a 34 se mues an el espec o del ba ido de 2 a
4GHz de los pulsos ec angula es que han pasado po el bloque de lec u a, co espon-
dien es a las ecuencias po ado as de 2GHz, 2.2GHz y 2.6 GHz, espec i amen e. En la
igu a 31, se obse a que la o ma del espec o co esponde a la de un pulso ec angula ,
es deci , un seno ca dinal. No se ap ecia ninguna componen e espu ia, ya que odas han
sido il adas co ec amen e.
53
Figu a 31: Espec o de pulso ec angula a 2 GHz
En la Figu a 32, en cambio, se obse a una componen e espu ia cen ada en 24MHz.
Es o se debe a que la po ado a es á muy ce ca del lími e de la p ime a zona de Nyquis
del ADC, cuya ecuencia de mues eo es de 4423.680 MHz, lo que p o oca aliasing, como
se ilus a en la Figu a 33 de [5].
Endicha igu asemues acómosepueden il a ácilmen elaimagen,losa mónicos
y las imágenes de los a mónicos median e un il o paso-banda, dejando solo la señal de
in e és. El p oblema su ge cuando la imagen es á demasiado ce ca de dicha señal, en
cuyo caso no pod á se eliminada median e el con e ido descenden e digi al.
Un caso aún peo se ía aquel en el que la componen e espu ia se supe pone
exac amen e con la señal deseada, haciendo imposible su il ado.
Figu a 32: Espec o de pulso ec angula a 2.2 GHz
54
Figu a 33: Ejemplo de il ado analógico pa a elimina espu ias, [5]
En la Figu a 34 ocu e algo simila al caso an e io , donde el DAC, con una ecuencia
de mues eo de 9830.400MHz, gene a un pulso imagen y, al llega al ADC, se c ea o a
imagen de la gene ada po el DAC muy ce cana al pulso de in e és, lo que impide su
il ado.
Figu a 34: Espec o de pulso ec angula a 2.6 GHz
Pa a esol e es e ipo de p oblemas, [5] p opone u iliza ADCs con una mayo
ecuencia de mues eo o ealiza una mejo plani icación de ecuencias, alejándose lo
máximo posible de los lími es de las zonas de Nyquis .
55