Full text
Treball de Fi de Màster Màster Universitari en Enginyeria Industrial Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware MEMÒRIA Autora: Maitane Serrano Carranco Directors: Daniel Arumí Delgado i Rosa Rodríguez Montañés Convocatòria: Juny 2017 Escola Tècnica Superior d’Enginyeria Industrial de Barcelona
Pàg. 2 Memòria RESUM Aquest treball té com a objectiu l’anàlisi experimental del comportament elèctric de memristors. El memristor és el quart element fonamental dels circuits, predit al 1971 per Leon Chua i posteriorment implementant al 2008 per Stanley Williams i el seu equip als laboratoris HP. A més, en aquest projecte també s’analitza el comportament de dos memristors en sèrie i la possibilitat de generar bits aleatoris amb aquesta configuració, la qual pot tenir aplicació en seguretat hardware, en concret, en la generació de claus de seguretat. Per realitzar el assajos al laboratori de manera rigorosa i disposar de repetibilitat, es defineix i es posa a punt un set-up experimental, les interfícies necessàries, els bancs de proves, programes, etc. per als diferents tipus d’experiments realitzats. Una vegada aquests s’han dut a terme, s’observa que tot i que els memristors solen patir una ràpida degradació per la falta de maduresa de la tecnologia –quedant-se bloquejats a un dels seus estats resistius–, el seu comportament és l’esperat i, quan s’associa en sèrie amb un altre memristor, sempre commuta un i és sempre el mateix per a tots els cicles. A més, també es comprova com afecta la temperatura a les corbes característiques dels memristors, augmentant la aquest paràmetre a l’hora de realitzar-les i s’observa que no interfereix en el comportament dels dispositius. Finalment, es proposa uns procediments de millora tant per a l’alliberament dels memristors que s’han quedat bloquejats tant de forma independent (un únic memristor), com a la configuració sèrie (dos memristors).
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 3
Pàg. 4 Memòria SUMARI RESUM ________________________________________________________2 SUMARI _______________________________________________________4 INTRODUCCIÓ ________________________________________________6 3.1. Objectius del projecte .................................................................................................... 6 3.2. Abast del projecte .......................................................................................................... 7 MEMRISTORS _________________________________________________8 4.1. Conceptes generals ........................................................................................................ 8 4.2. Tecnologia dels memristors emprats .......................................................................... 12 INTRODUCCIÓ A LA SEGURETAT HARDWARE _________________14 CARACTERITZACIÓ DE MEMRISTORS ________________________16 6.1. Banc de treball ............................................................................................................. 18 6.2. Resultats de l’experimentació ..................................................................................... 21 6.2.1. Cas habitual: memristors amb una ràpida degradació ......................................... 22 6.3. Propostes de millora per als problemes trobats .......................................................... 25 CONFIGURACIÓ EN SÈRIE DE DOS MEMRISTORS_______________27 7.1. Banc de treball ............................................................................................................. 30 7.2. Resultats de l’experimentació ..................................................................................... 33 7.2.1. Degradació dels memristors ................................................................................ 34 7.2.2. Memristors amb alta resistència a la degradació ................................................. 40 7.3. Propostes de millora per als problemes trobats .......................................................... 57 VARIACIÓ DE LA TEMPERATURA DE TREBALL ________________63 8.1. Banc de treball ............................................................................................................. 63 8.2. Resultats de l’experimentació ..................................................................................... 65 PLANIFICACIÓ I PROGRAMACIÓ ______________________________68 ESTUDI ECONÒMIC ___________________________________________71 10.1. Costs associats als equips, llicències i components .................................................... 71 10.2. Costs associats als recursos humans ........................................................................... 73
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 5 10.3. Costs totals .................................................................................................................. 74 CONCLUSIONS _______________________________________________ 75 AGRAÏMENTS ________________________________________________ 77 13. BIBLIOGRAFIA ________________________________________________ 78
Pàg. 6 Memòria INTRODUCCIÓ El continu desenvolupament de la tecnologia i les comunicacions ha provocat una transformació global de la societat, augmentat la quantitat la informació intercanviada tant de forma local com a través de la xarxa. En aquest context, usuaris de tota mena han de poder confiar en què tota la transmissió d’informació es realitza de forma segura. Tot i que aquesta problemàtica no és nova, les amenaces i els atacs han augmentant al mateix ritme que evoluciona la societat de la informació. No obstant, les tècniques per preservar la seguretat de dita informació evoluciona a un ritme més lent. Un dels causants principals és l’ús massiu de dispositius portàtils, que poden fer múltiples tasques, moltes de les quals requereixen d’algun tipus d’autentificació. Per aquest motiu, és de vital importància protegir la informació emmagatzemada en aquests dispositius enfront qualsevol tipus d’amenaça o atac malintencionat. Actualment, la forma més comuna de fer-ho és a través d’una clau secreta, emmagatzemada en una memòria no volàtil. Tanmateix, aquesta tècnica és cara i s’ha demostrat que és vulnerable. Per aquesta raó, és necessari trobar i desenvolupar alternatives que millorin la seguretat dels circuits que contenen les claus. Els camps de recerca per trobar noves solucions exploren camins tant a nivell tecnològic com a nivell de circuit. Els memristors són una alternativa viable, no només per memòries, sinó també per aplicacions en seguretat. A nivell de circuit, s’investiga el desenvolupament d’un que generi internament una clau, sense necessitat d’utilitzar una memòria per aquesta finalitat. En aquest projecte s’investiga la utilització de memristors per a la generació de bits aleatoris, que es puguin utilitzar posteriorment com a primitiva de seguretat en un circuit capaç de generar una clau de seguretat. 3.1. OBJECTIUS DEL PROJECTE Els objectius principals d’aquest treball són: 1. Desenvolupar i validar un banc de treball per realitzar mesures experimentals per memristors, amb flexibilitat per modificar paràmetres dels experiments i facilitat per capturar i processar les dades obtingudes.
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 7 2. Analitzar i caracteritzar el comportament elèctric de memristors, a partir de la realització d’assajos experimentals, així com verificar l’efecte de la temperatura sobre el seu funcionament. 3. Analitzar experimentalment la configuració en sèrie de dos memristors per a la generació de bits aleatoris i la seva potencial aplicació en seguretat hardware. Per últim, també es busca posar en pràctica els coneixements adquirits al llarg del màster i en particular a l’especialitat d’electrònica, com per exemple caracteritzar i analitzar components electrònics, ús d’aparells de mesura i d’assaig sofisticats, en l’anàlisi de dades, resoldre problemes que puguin aparèixer a nivell de circuit, etc. 3.2. ABAST DEL PROJECTE Pel que fa a l’abast del projecte, primerament, i per tal d’emmarcar el treball en el context actual, es buscarà informació sobre els memristors i la tecnologia utilitzada per produir-los, tenint present les diferents tècniques que s’utilitzen per fabricar-los, ja que segons aquesta els dispositius presentaran unes característiques o d’altres. A més, també s’estudiaran les tecnologies emergents amb possible aplicació en seguretat hardware a l’actualitat així com les que són més adients per a tal fi. A continuació, es realitzaran assajos que serveixin per caracteritzar els memristors de forma individual i s’analitzarà la seva durabilitat i robustesa. Tot seguit es faran associacions de diversos memristors i s’estudiarà com es comporten per tal de determinar si tenen actuacions que puguin ser interessants per a seguretat hardware i la generació de bits aleatoris. Finalment, s’analitzarà el comportament dels components en un entorn d’atacs malintencionats per tal de definir si realment són adients per a la protecció de dades, sent la situació testejada un entorn amb altes temperatures.
Pàg. 8 Memòria MEMRISTORS Al llarg d’aquest apartat es presenten els diferents conceptes lligats als memristors, les tecnologies més utilitzades per fabricar-los així com l’emprada per als memristors en particular que s’utilitzen per al desenvolupament del projecte. 4.1. CONCEPTES GENERALS Un memristor és [1] [2] qualsevol dispositiu amb dos terminals que presenti un bucle d’histèresi pessigat en el pla V-I quan és accionat per qualsevol forma d’ona periòdica bipolar de tensió o corrent, independentment de les seves condicions inicials, tal i com es mostra a l’exemple de la Figura 4.1. [3] [4]. Figura 4.1. Corba ideal d'un memristor bipolar [4] La principal característica dels memristors és que es comporten com una resistència amb memòria, la qual depèn de les accions elèctriques aplicades anteriorment al dispositiu. Aquests tenen com a mínim dos estats resistius ben diferenciats: l’estat de resistència alta (HRS, per les seves sigles en anglès “high resistance state”) i el de resistència baixa (LRS, provinent de “low resistance state”), dels quals el rati entre ells sol estar entre 103 i 106 [4], conegut com a “finestra del memristor”. Per tal d’iniciar aquest comportament resistiu, en diversos tipus de memristors cal fer un procés de formació (conegut com forming, del seu nom en anglès), consistent en l’aplicació d’un voltatge diferent al de SET –que és aquell que provoca el pas de HRS a LRS– i RESET –el que provoca el pas de HRS a LRS– i així inicialitzar-lo a LRS; fent que el dispositiu passi de tenir un comportament resistiu lineal al de commutació típic dels
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 15 alimentació continua en cas de les RAMs. A més, el fet que el “secret” s’obtingui a partir de les característiques del circuit integrat, en comptes d’estar emmagatzemat directament a la memòria, fa que el xip hagi d’estar alimentat per que el secret estigui en aquesta (la qual cosa només es fa quan és necessari). Això comporta que els atacs s’han de donar només quan aquest està alimentat perquè n’aconsegueixin la informació. D’altra banda, també cal afegir que els atacs que no modifiquen les característiques físiques del circuit de les quals s’obtenen el secret són més difícils de realitzar. Pel que fa als usos que se’ls poden donar als PUFs, hi ha bàsicament dos: Autentificació a baix cost i generació i emmagatzematge de claus de seguretat. I en base a aquestes dues aplicacions, es donen dos classes de dispositius: “strong” PUFs, o PUFs forts, i “weak” PUFs, o PUFs febles. Els primers s’utilitzen per autentificació i els segons per a emmagatzematge de claus de seguretat. En aquest context, podria ser interessant l’ús de memristors com a cel·la bàsica per al desenvolupament de PUFs.
Pàg. 16 Memòria CARACTERITZACIÓ DE MEMRISTORS La caracterització elèctrica de memristors consisteix a mesurar el corrent que circula a través d’ell –o la resistència que té– quan se li apliquen diferents valors de voltatge per representar, posteriorment, els valors trobats d’intensitat per a cada voltatge. Un exemple de característica és el que s’ha mostrat a la Figura 4.1. Amb aquesta corba es pot observar el rati que hi ha entre els estats d’alta i baixa resistència (la finestra del memristor) i alhora permet verificar si el memristor té un funcionament correcte. No obstant això, quan el memristor no s’ha utilitzat prèviament cal formar-lo i amb l’objectiu de que s’obtinguin els millors resultats, se segueix el procediment indicat pel fabricant [10], consistent a aplicar una rampa de 0 V a +1 V (Figura 6.2 a) i amb una limitació de corrent d’un microamper al punt VAP de la Figura 6.1 a), en la que s’observa l’esquema elèctric utilitzat per fer el forming i que coincideix amb la utilitzada per a la caracterització. Figura 6.1. a) Esquema elèctric pel forming i la caracterització b) Muntatge físic de l’esquema elèctric Tal i com es pot veure a la figura, les connexions i voltatges necessaris per formar-lo i caracteritzar-lo no són complexes, simplement cal una font de tensió, que ha de poder ser controlada tant a nivell de voltatge com de limitació de corrent, i la referència de zero volts per a l’alimentació. a) b) VAP VREF
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 17 Figura 6.2. a) Rampa de voltatge aplicada pel forming b) Rampes de voltatge per les corbes de papallona Cal afegir que al fer el forming, si aquest es realitza correctament, el corrent a través del memristor arribarà a la limitació del corrent abans de tenir +1 V aplicat a ell, fent que s’apliqui el voltatge màxim sense superar el compliance i donant lloc a una corba V-I similar a la mostrada a la Figura 6.3. Figura 6.3.Corba experimental V-I al fer el forming Una vegada el filament conductor del memristor ja s’ha format, per caracteritzar-lo s’aplica al punt indicat com VAP a la Figura 6.1 a), una ona sinusoïdal o triangular que variï entre dos voltatges límit (Figura 6.2 b)), amb els quals el memristor ja ha commutat i s’ha estabilitzat el seu comportament, tot afegint una limitació del corrent –per exemple 1 mA– per evitar que el a) b)
Pàg. 18 Memòria memristor es faci malbé per un gran pas de corrent. Tot i que aquests voltatges poden variar una mica en funció del memristor, s’ha observat que en general un V+ (voltatge límit positiu o de SET, el màxim de la corba en blau a la Figura 6.2 b)) de 0,8 V és suficient perquè commuti a LRS, i un voltatge V- (voltatge límit negatiu o de RESET, el mínim de la corba en vermell a la Figura 6.2 b)) de -0,6 V és suficient perquè commuti a HRS, ja que uns voltatges més alts en mòdul solen ser una aportació d’energia al memristor que no l’ajuda a acabar el canvi d’estat (n’hi ha prou amb menys voltatge) però sí provoca que cada vegada es carregui més un dels dos estats, provocant que a la llarga el memristor es desequilibri i es bloquegi a un dels dos, tal i com es comenta més endavant a l’apartat 6.3. A la Figura 6.4 es mostren vint cicles de la resposta d’un memristor amb les corbes característiques (o DC) que indiquen un bon funcionament del memristor, entre els valors de tensió +0,8 V i -0,6 V. Cal notar, d’una banda, que a la branca positiva (en blau), el corrent arriba a la limitació d’1 mA abans d’arribar a VSET, raó per la qual el voltatge no passa de +0,6 V i de l’altra, que l’eix d’ordenades és logarítmic. Figura 6.4. Vint cicles de papallona d'un memristor. Corbes esperades 6.1. BANC DE TREBALL Per tal de dur a terme el forming i la caracterització d’un memristor es necessiten una sèrie d’eines de les que cal disposar: Una protoboard on muntar el circuit indicat a la Figura 6.1. A la Figura 6.5 es mostra una imatge del suport utilitzat.
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 19 Figura 6.5. Protoboard on es munta el circuit Un memristor o, en funció de com ho produeixi el proveïdor, un xip amb un seguit de memristors del qual només s’utilitzarà un per a aquest test individual de cada dispositiu. A la Figura 6.6 es veu un xip de 8 memristors de la marca Knowm utilitzat per al projecte. Figura 6.6. Xip de 8 memristors Knowm Una font de tensió variable, que permeti realitzar les corbes de voltatge comentades anteriorment. En aquest projecte s’utilitza el Precision Source/measure Unit (o SMU) B2912A d’Agilent [13], que es controla a través d’un ordinador, i que es pot veure a la Figura 6.7. Figura 6.7. Vista frontal de l'SMU
Pàg. 20 Memòria A la Figura 6.8 es mostra l’SMU connectat a la protoboard de la forma indicada a la Figura 6.1 b), per enviar els senyals adients al memristor. Figura 6.8. Connexió de l'SMU al circuit de la caracterització i forming Un ordinador per controlar l’SMU, connectat a aquest a través del port GPIB [14], ja que l’USB no permet el control simultani dels dos canals de l’aparell, la qual cosa és necessària per futures configuracions en què s’envien dos senyals alhora, una per cada canal. Aquest ordinador ha de tenir instal·lat el programa MATLAB, ja que serà l’utilitzat per controlar l’aparell. A més, per tal que el programa sigui capaç de controlar i comunicar-se amb l’SMU cal instal·lar una llibreria que permet fer-ho, anomenada Control Instrument ToolboxTM [15] i un controlador de l’aparell per a MATLAB [16]. Un programa per a l’ordinador que controli l’SMU [17]. Donat que el programa facilitat pel fabricant (Quick IV Measurement Software) és massa limitat –no permetent per exemple repetir més d’un cert nombre de vegades una ona, la qual cosa dificulta futurs assajos, com la configuració sèrie, on interessa fer el màxim nombre de cicles seguits possible– es decideix utilitzar un programa desenvolupat en MATLAB a través del qual
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 21 es fa el forming i les corbes característiques, enviant comandes en llenguatge SCPI (de les sigles en anglès Standard Commands for Programmable Instruments), que permet controlar aparells de test i mesura [18]. A grans trets, primer es fa el forming aplicant a VAP (Figura 6.3) una rampa de tensió des de 0 fins a +1 V –com es mostra a la Figura 6.2 a)–, limitant el corrent a 1 µA guardant les dades a un fitxer i generant un gràfic V-I. A continuació es fan tants cicles com l’usuari del programa indiqui de corbes característiques: fent una ona triangular que va des de 0 V fins al voltatge triat com a VSET i de VSET fins a 0 V i després una de 0 V fins a VRST i de VRST a 0 V, per tot seguit guardar cada cicle en dos fitxers de text (un inclou la part positiva de l’ona triangular i l’altre la part negativa). Es pot veure un cicle d’aquest tipus de corba a la Figura 6.2 b). Per últim, cal destacar que en el programa es poden habilitar i deshabilitar ambdues opcions de forma separada, per si es vol fer només el forming o les corbes característiques i que ambdues coses es fan per als dos canals de l’SMU, podent formar i caracteritzar alhora dos memristors. A l’annex A es pot veure el codi complet del programa. Un altre programa desenvolupat en MATLAB [17] [18] que a partir de les dades guardades pel programa anterior d’assajos passats, dibuixa el gràfic V-I dels cicles desitjats de l’experiment (tot i que per defecte es dibuixen tots els cicles de l’experiment). Als annexos A5 i A6 es pot veure el codi complet del programa. 6.2. RESULTATS DE L’EXPERIMENTACIÓ Amb l’objectiu de trobar les corbes característiques dels memristors i estudiar el seu comportament, s’ha utilitzat totes les eines abans esmentades en diversos memristors. El que s’ha pogut observar és que es troben principalment dos tipus de comportament: 1. Ràpida degradació del memristor: després de fer el forming i aplicar pocs cicles de corba característica, el memristor es queda bloquejat en un dels estats, no sent capaç de commutar. Tot i que el nombre de cicles que suporten aquest tipus de memristors depèn molt del dispositiu que s’està provant, sempre és inferior a l’indicat pel fabricant (cinquanta milions de cicles [10]), i en general va entre no funcionar bé en el forming – havent de repetir-lo unes quants vegades– i suportar poc més d’un centenar de cicles (ja
Pàg. 22 Memòria siguin cicles per trobar les corbes característiques o d’altres tipus, com el que es veurà a l’apartat 7). Aquest és el comportament més habitual trobat experimentalment en els memristors utilitzats en aquest projecte. 2. Alta resistència a la degradació: el memristor suporta molts cicles de corba característica sense quedar-se bloquejat en un dels estats. El cas extrem observat en aquest projecte ha estat el de dos memristors que han suportat al voltant de deu mil cicles de funcionament en configuració sèrie, que es comentarà a l’apartat 7. En aquest cas, tot i que els memristors no es degraden, sí poden presentar canvis en les corbes de papallona a mesura que se’ls apliquen cicles de corba característica. 6.2.1. CAS HABITUAL: MEMRISTORS AMB UNA RÀPIDA DEGRADACIÓ Pel que fa al primer tipus de memristors i com a cas il·lustratiu, a continuació s’exemplifica el fenomen de la degradació ràpida amb un dels memristors testejats, comentant tot el procés seguit i les diferents actuacions sobre el memristor. Primerament, se li fa el forming (Figura 6.9), el qual és el característic d’un memristor que s’ha inicialitzat correctament. Figura 6.9. forming del memristor Tot seguit, es fan vint cicles de corba de papallona mostrats a la Figura 6.10.
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 23 Figura 6.10. Vint cicles de corba característica Tal i com es pot observar, hi ha uns quants cicles en els que el memristor es comporta de forma adequada –que com mostra la Figura 6.11, un detall dels primers cinc cicles, és durant els primersperò arriba un punt que la característica es va deteriorant i reduint la seva finestra fins arribar a ser pràcticament una recta, quedant-se bloquejat amb un corrent molt petit i, per tant, a HRS. Aquest degradat es pot veure amb detall a la Figura 6.12, on es mostren els últims cinc cicles. Figura 6.11. Detall dels primers cinc cicles
Pàg. 24 Memòria Figura 6.12. Detall dels últims cinc cicles Tot i que pot resultar sorprenent la diferència en la durabilitat entre el que especifica el fabricant i el mostrat en l’exemple anterior, cal destacar que és un fet molt habitual i la majoria dels memristors testejats pateixen aquest tipus de comportament. És per això que a l’apartat 6.3 es proposa un procediment per intentar evitar aquesta fallida prematura, aconseguint desbloquejarlos de l’estat en què s’han quedat.
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 31 Una font de tensió variable, que permeti realitzar les corbes de voltatge comentades anteriorment. Igual que pel cas de l’anàlisi d’un memristors, s’utilitza el Precision Source/measure Unit (o SMU) B2912A d’Agilent [13] que es controla a través d’un ordinador, i que es pot veure a la Figura 6.7 (cara frontal). Per realitzar aquest experiment s’utilitzaran els dos canals de l’aparell: A la part del davant es pot accedir al canal 1 i a la part del darrere al canal 2. A la Figura 7.4 es mostra l’SMU connectat a la protoboard per tal d’enviar els senyals pertinents als punts adients del circuit mostrat a la Figura 7.1 b). Figura 7.4. Connexions de la SMU al circuit de la configuració sèrie Un ordinador per controlar l’SMU, connectat a aquest a través del port GPIB [14], ja que l’USB no permet el control simultani dels dos canals de l’aparell, la qual cosa és necessària per poder enviar els polsos de tensió i llegir el corrent de la branca per un canal i alhora llegir la tensió del punt M per l’altre. Aquest ordinador ha de tenir instal·lat el programa MATLAB, ja que serà l’utilitzat per controlar l’aparell. A més, per tal que el
Pàg. 32 Memòria programa sigui capaç de controlar i comunicar-se amb l’SMU cal instal·lar d’una banda una llibreria que permet fer-ho, anomenada Control Instrument Toolbox TM [15], i de l’altra un controlador de l’aparell [16]. Un programa per a l’ordinador que controli l’SMU [17] per realitzar els trens de polsos. Donat que el programa facilitat pel fabricant (Quick IV Measurement Software) és massa limitat, s’ha programat un script que envia els polsos de tensió característics a la configuració sèrie i fa les lectures de corrent i tensió adients, enviant les comandes en llenguatge SCPI, que permet controlar aparells de test i mesura [18]. A grans trets, primer es configuren els dos canals de l’SMU (un com a font de tensió, que serà el voltatge VAP i un altre com a font de corrent constant de 0 A, per tal de captar el voltatge del punt M sense influir a la configuració). Tot seguit, s’aplica un pols d’escriptura del SET i es fa una lectura del corrent que passa pels memristors i el voltatge del punt M, guardant la informació en un fitxer per canal (un fitxer conté la informació de VM i l’altre del corrent de la branca). A continuació s’aplica el pols de lectura del SET i es guarda la informació del corrent i voltatge en els fitxers comentats. Finalment es fa el mateix pels polsos d’escriptura i lectura del RESET. Aquest procés es repeteix tantes vegades com cicles hagi indicat l’usuari que vol realitzar la configuració. Una vegada realitzats tots els cicles, es procedeix a dibuixar les gràfiques amb les dades guardades a partir del programa comentat a continuació. A la Figura 7.2 s’il·lustra el voltatge VAP al llarg d’un cicle i a l’annex B es pot veure el codi complet del programa. Un altre programa [17] [18] de MATLAB que a partir de les dades guardades d’assajos passats pel programa anterior, dibuixi gràfics de tensió, corrent i resistència dels cicles desitjats. Entrant una mica en detall, l’usuari indica quants cicles es volen mostrar i amb quin nombre s’ha de començar (és a dir, si el primer cicle és per exemple el 0 o un altre valor diferent, per tal de facilitar la lectura de les gràfiques). Consultant els fitxers amb les dades del punt M i VAP, es guarda el voltatge VM i el corrent en variables diferents segons si és un valor de SET o RESET i si és de lectura o escriptura. A més, també es calcula la resistència dels dos memristors –tot i que només es fa per a les lectures de l’estat, ja que durant l’escriptura és possible que la mesura es faci quan encara no s’ha estabilitzat el valor i pot donar lloc a lectures incorrectes–. Una vegada ja es té corrent, tensió i resistència emmagatzemats en variables per a tots els cicles, es procedeix a representar el corrent en funció del cicle, la resistència també en
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 33 funció del cicle (amb l’eix de resistència com a logarítmic), el voltatge VM en funció del cicle i el pols que s’està representant) i la resistència en SET i RESET d’un memristor en funció de l’altre. Aquest programa, un cop generats els fitxers de l’assaig amb l’altre script, genera els gràfics que es desitgin i que permetin analitzar els resultats. A l’annex B8 es pot veure el codi complet del programa. 7.2. RESULTATS DE L’EXPERIMENTACIÓ Posant en pràctica la configuració sèrie mitjançant les eines comentades anteriorment, s’han observat dos tipus de comportament ben diferenciats en aquesta que són coherents amb els casos prèviament obtinguts en la caracterització dels memristors de forma individual: 1. Ràpida degradació dels memristors. En aquest cas, els memristors no suporten molts cicles en la configuració sèrie, sinó que al cap d’uns pocs cicles –màxim uns pocs centenars– algun d’ells es bloqueja a un dels dos estats, no podent-se alliberar sense fer modificacions a la configuració o sense tractar-lo per separat. Aquest és el cas més habitual trobat al llarg de l’experimentació, i els resultats van des de casos en què els memristors per separat funcionen i al posar-los en configuració sèrie ja no commuten fins a d’altres situacions en què aguanten uns quants cicles però acaben bloquejant-se ràpidament, en cap cas aguantant l’especificat pel fabricant (50 milions de cicles [10]). 2. Alta resistència a la degradació. Els memristors suporten molts cicles en sèrie seguits, anant des d’uns quants centenars a diversos milers de cicles. No obstant això, al final algun dels memristors acaba bloquejant-se a un dels dos estats resistius. L’experiment en què els memristors han suportat més cicles ha estat el cas en què van funcionar pràcticament 9000 cicles, el qual es comentarà en detall més endavant. Cal afegir que per tal d’afavorir que els memristors es mantinguin en bon estat al llarg de la configuració sèrie durant molts cicles, cal anar analitzant la tendència de les resistències d’aquests de forma periòdica cada un cert nombre de cicles, per anar modificant els voltatges de SET i RESET i així evitar que s’acabin bloquejant, tal i com es comenta en detall a l’apartat 7.3, on es proposen millores per als problemes trobats. A continuació es comenten els dos tipus de comportament observats en detall, juntament amb
Pàg. 34 Memòria uns exemples d’assaig per il·lustrar-los. 7.2.1. DEGRADACIÓ DELS MEMRISTORS Amb l’objectiu de posar en pràctica la configuració sèrie i observar la degradació que pateixen s’han realitzat diversos experiments, consistents en caracteritzar els memristors de forma independent per després fer uns quants cicles en sèrie i tornar a observar les corbes de papallona. A continuació es presenta un exemple dels assajos realitzats. Primerament, es fa el forming dels memristors per tal de poder fer-los funcionar, seguint el procediment indicat pel fabricant [10] consistent a aplicar una rampa de 0 V a +1 V i amb una limitació de corrent d’un microamper. A la Figura 7.5 es veu la corba obtinguda. Figura 7.5. Forming dels memristors. S’ha realitzat correctament Una vegada els memristors ja estan formats, es caracteritzen per veure si estan operatius. Després, es fan un seguit de cicles amb la configuració sèrie. Tot seguit es comprova l’estat dels memristors per separat, realitzant les seves corbes de papallona per veure si segueixen en bon estat o bé s’han deteriorat. A continuació, s’inverteix l’ordre dels memristors, posant més proper a la font el que estava més proper al terra i a l’inrevés i es torna a fer un seguit de cicles en aquesta configuració, per tal d’observar si influeix d’alguna forma la posició dels memristors. I per últim es torna a comprovar si s’han deteriorat o no. Aquest procés es repeteix fins que els memristors es fan malbé. Per a la caracterització dels memristors, s’utilitza el programa de MATLAB que duu a terme les corbes DC amb l’SMU, aplicant un voltatge de a SET de fins a +0.8V i un de RESET de fins a -0.6
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 35 V. No obstant, per tal de protegir el dispositiu, s’estableix una limitació de corrent màxim a 1 mA. A la Figura 7.6 es poden veure els resultats obtinguts després de fer 20 cicles, els quals permeten veure que tots dos memristors commuten correctament, tot i que el memristor 2 té una finestra més petita que el memristor 1 i per tant la diferència entre HRS i LRS és inferior per aquest. Figura 7.6. Corbes característiques dels memristors. Els dos commuten correctament A continuació, es posen els dos memristors en sèrie i se’ls aplica el tren de polsos comentat anteriorment. Cal destacar que cada cicle del gràfic està format per un tren de polsos, de manera que al realitzar 20 cicles, s’aplica 20 vegades seguides el tren de polsos. A la Figura 7.7 s’observa el voltatge del punt M al fer el SET, la lectura posterior, el RESET i una altra lectura per als cinquanta cicles, així com el corrent que passa pels dos memristors al llarg d’aquests. Els voltatges aplicats en cada un dels polsos que formen un cicle han estat els següents: VWSET= +1 V VRSET= +0,1 V VWRST= -1 V VRRST = -0,1 V A la Figura 7.7 a) es pot observar que al llarg dels 20 cicles que durant les lectures del SET i RESET es té un voltatge al punt M que indica que hi ha un memristor que commuta i és sempre el de dalt:
Pàg. 36 Memòria Figura 7.7. Resultats dels vint cicles de configuració sèrie, sempre commuta un únic memristor: el memristor de dalt. a) Valors de tensió del punt M b) Corrent de la branca al llarg dels cicles Durant les lectures després del SET s’observa un VM al voltant de +0,06 V, que es correspon amb aproximadament la meitat de VRSET. Això permet interpretar que els dos memristors tenen una resistència similar i consultant els valors de corrent a la Figura 7.7 b) –on es veu que passa al voltant de 90 µA, un valor força alt–, es confirma que aquesta és baixa i per tant els dos memristors estan en LRS. En canvi, durant les lectures després del RESET es té un valor VM d’aproximadament 0,001 V, i per tant pràcticament de 0 V. Això permet intuir que és el memristor de dalt el que ha commutat a HRS, fet que es confirma a l’observar els corrents al tenir uns valors al voltant de -5 µA: un valor molt petit en comparació a quan els dos estaven en LRS. Tot seguit, es tornen a caracteritzar (vint cicles) per comprovar que segueixen funcionant correctament, tal i com es veu a la Figura 7.8. En aquesta, es pot veure que el memristor 1 parteix de l’estat HRS, ja que és qui ha commutat en l’últim cicle per després passar a tenir una corba de papallona que indica un bon funcionament, igual que el memristor 2. b) a)
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 37 Figura 7.8. Caracterització dels memristors després de la configuració sèrie. Els dos commuten correctament A continuació, es torna a repetir la configuració sèrie intercanviant les posicions dels memristors, fent 20 cicles més. Els voltatges obtinguts en el punt M es mostren a la Figura 7.9 a). Figura 7.9. Vint cicles més de configuració sèrie. Inicialment no està commutant cap memristor, però a partit del cicle 23 ho fa sempre el memristor de sota. a) Valors de tensió del punt M al llarg dels vint cicles b) Corrent de la branca al llarg dels cicles En aquesta es por veure que durant els tres primers cicles s’observen uns valor de tensió intermedis (tant per la lectura després del SET com després del RESET, està al voltant dels 0,4 V en valor absolut), la qual cosa indica que en aquells cicles cap memristor està commutant, però a partir de llavors ja sí que es produeix la commutació d’un dels memristors ja que es mesura un VM de +0,4 V en la lectura del SET amb una intensitat al voltant dels 100 µA Figura 7.9 b)) –és a dir els dos estan a LRS– i un VM de -0,9 V durant la lectura del RESET amb una intensitat al voltant 2,5 µA –fet que permet observar que és el memristor de sota qui ha passat a HRS, el qual abans estava a dalt. Això permet concloure que a les dues situacions sempre ha estat el mateix memristor el que ha commutat en els dos experiments. No obstant, no necessàriament això ha de succeir, ja que entre els dos a) b)
Pàg. 38 Memòria assajos de configuració sèrie els memristors han estat excitats de forma independent (corba de papallona). El que sí és interessant que passi de cara a utilitzar els memristors per aplicacions de seguretat és que, una vegada muntada la configuració sèrie, sempre commuti el mateix. Per tal de verificar que segueixen treballant correctament es tornen a realitzar les corbes característiques (vint cicles), obtenint els resultats mostrats a la Figura 7.10, en la que es pot veure que els memristors segueixen funcionant correctament. Figura 7.10. Papallones després de la configuració sèrie. Ambdós funcionen correctament Aquest procediment format per vint cicles de configuració sèrie, caracterització durant vint cicles, canvi d’ordre dels memristors i configuració sèrie dels memristors durant vint cicles i caracterització durant vint cicles més, es repeteix fins que un dels dos es queda bloquejat a un dels dos estats. En concret, li succeeix al memristor 2 després d’aplicar 120 cicles de la configuració sèrie (seguint el procediment de vint cicles en sèrie i vint de caracterització). Les característiques observades es troben a la Figura 7.11 a continuació. Figura 7.11. Característiques dels memristors. El memristor 2 ha deixat de funcionar
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 39 Tal i com es pot observar, el memristor 2 es queda bloquejat en HRS, ja que sempre presenta una intensitat molt baixa, independentment del valor de tensió (de l’ordre de 0,01 µA). Després d’aplicar una sèrie de vint cicles de papallona amb un voltatge de SET més alt que de RESET, perquè commuti cap a l’LRS s’aconsegueix que torni a presentar la corba característica d’un memristor amb bon funcionament. A la Figura 7.12 s’observa aquesta juntament amb la del memristor 1, que si es compara amb les característiques anteriors, es veu que aquest últim ha disminuït la seva finestra. Figura 7.12. Recuperació del memristor 2. El memristor torna a commutar i el memristor 1 ha disminuït la seva finestra Tot seguit es torna a fer la configuració sèrie amb les posicions inicials (memristor 1 a dalt i memristor 2 avall) però en cap moment els memristors commuten, tal i com s’observa a la Figura 7.13 a). Figura 7.13. Configuració sèrie després de la recuperació del memristor 2. En cap moment commuta cap memristor. a) Valors de tensió del punt M al llarg dels vint cicles b) Corrent de la branca al llarg dels cicles b) a)
Pàg. 40 Memòria Es pot veure que en cap moment commuta cap memristor a causa de tenir tant en la lectura del SET com del RESET uns voltatges al voltant de 0,5·VAP al punt M i amb uns corrents d’entre 20 i 30 µA, independent de si es fa el SET o el RESET, tal i com es veu a la Figura 7.13 b). Finalment, es repeteixen les característiques, que es mostren a la Figura 7.14, i com es veu el memristor 2 cada vegada està més deteriorat i torna a quedar-se bloquejat a HRS, donant per acabat l’assaig. Figura 7.14. Repetició de les papallones després de la configuració sèrie. El memristor 2 està molt deteriorat, fins el punt de quedar-se bloquejat a HRS 7.2.2. MEMRISTORS AMB ALTA RESISTÈNCIA A LA DEGRADACIÓ Tot i ser un cas poc comú, s’han trobat alguns casos en què els memristors han aguantat més d’unes desenes de cicles, permetent observar que sempre commuta el mateix memristor de la parella (quan no se’ls altera de forma separada fent-los les corbes característiques). A continuació es mostra l’experiment en què dos memristors en configuració sèrie van suportar més cicles d’aquesta sense quedar-se bloquejats de forma permanent a un estat. L’assaig es va dur a terme durant diversos moments i en cas de bloqueig d’algun memristor, es procedeix a utilitzar el procediment proposat en l’apartat 7.3. A continuació es comenta el procediment seguit i els resultats obtinguts. Primerament, es fan corbes de papallona per verificar el funcionament dels memristors per separat, ja que eren memristors ja formats i utilitzats anteriorment i donat que, una vegada fet el forming, si no s’utilitzen durant un temps poden deixar de funcionar –quedant-se de forma permanent a un dels estats– es vol assegurar un correcte funcionament abans de realitzar la
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 47 És per això que es fan vint cicles més amb VSET de 1 V i VRST -0,3 V de i els resultats que s’obtenen es troben a la Figura 7.25, veient-se que el memristor es torna a recuperar. Figura 7.25.Vint cicles de papallona amb més SET i menys RESET de l'habitual. El memristor es torna a recuperar A continuació es procedeix a fer la configuració sèrie, començant per un procés de calibratge dels voltatges de SET i RESET, ja que el memristor 2 sembla necessitar més SET del normal i fixar-los a uns valors que no propiciïn el bloqueig d’algun dels memristors cap a un dels estats. Quan es queden bloquejats s’aplica la metodologia proposada en l’apartat 7.3. Sabent que el memristor 2 necessita més SET, es comença aplicant un VWSET d’1,1 V i un VWRST de -0,6 V, veient-se els resultats a la Figura 7.26. Figura 7.26. Vint cicles de configuració per calibrar. Període inicial de transició. A partir del cicle 14 sembla que comença a estabilitzar-se el comportament En aquesta es veu que inicialment els dos memristors pateixen un període de transició que, a
Pàg. 48 Memòria partir del cicle 14, es comença a estabilitzar però no es pot concloure res. Per això es fan 100 cicles més amb els mateixos valors de tensió per veure com es comporten (Figura 7.27). Figura 7.27. Cent cicles de configuració sèrie. Els memristors no sembla que facin bé el SET Donat que sembla que el memristor 2 no acaba de commutar correctament a l’estat de baixa resistència, es fan cinquanta cicles més però pujant una mica més el VWSET fins a 1,2 V i baixant el VWRST a -0,5 V (Figura 7.28). Figura 7.28. Cinquanta cicles més de configuració sèrie amb més SET i menys RESET. El memristor 1 es queda en LRS i el 2 en HRS a partir del cicle 155 En aquests, s’observa que a partir del cicle 155 el memristor 2 es queda bloquejat a HRS, fent que el memristor 1 no sigui capaç de commutar, quedant-se a LRS. És per això que es fan trenta cicles més baixant més el RESET (VWRST =-0,3 V) per intentar alliberar al memristor 2, tot i que tal i com es pot veure a la Figura 7.29, en cap cas
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 49 s’aconsegueix. Figura 7.29. Trenta cicles més de configuració sèrie. Els memristor 2 segueix bloquejat Com s’ha trobat que no és possible alliberar-lo en configuració sèrie es procedeix a fer papallones per tal d’intentar fer-ho de forma separada. Figura 7.30. Vint cicles de papallona. Els dos memristors funcionen correctament Tal i com es mostra a la Figura 7.30 el memristor 2 inicialment es trobava a HRS, però amb el pas dels cicles torna a recuperar la forma de la papallona i a estar en bon funcionament. Pel que fa al memristor 1, en tot moment presenta una corba característica correcta. Havent desbloquejat el memristor 2, es torna a fer la configuració sèrie començant amb VWSET = 1 V i VWRST = -0,65 V durant cent cicles per tornar a fer la calibratge, mostrats a la Figura 7.31.
Pàg. 50 Memòria Figura 7.31. Cent cicles de configuració sèrie per repetir el calibratge. Hi ha un període de transició per després ser el memristor 1 qui sempre commuta En aquesta es pot observar que durant els primers 50 cicles hi ha una transició, fins que a partir del 253 comença a commutar únicament el memristor 1, que ho fa fins al final d’aquest set. Per aquesta raó els valors de tensió emprats es donen per vàlids i es comença a aplicar quantitats més grans de cicles a cada set. Així doncs, es procedeix a fer tres-cents cicles més (Figura 7.32), observant que segueix commutant sempre el memristor 1. Figura 7.32. Tres-cents cicles de configuració sèrie. Sempre commuta únicament el memristor 1 Com els resultats del test anterior han estat correctes es procedeix a fer 500 cicles amb els mateixos valors de tensió (Figura 7.33).
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 51 Figura 7.33. Cinc-cents cicles de configuració sèrie. Els resultats són correctes En aquests es veu que sempre commuta el memristor 1, tot i que durant els primers cicles, en algun no es dóna bé el pas a LRS. No obstant això com només succeeix durant tres o quatre cicles dels cinc-cents, no es considera un problema. Com els resultats han estat satisfactoris es produeix a fer 1000 cicles més en aquesta configuració i mantenint els valors de tensió d’escriptura, que es poden observar a la Figura 7.34. Figura 7.34. Mil cicles de configuració sèrie. Tendència del memristor 1 a augmentar la seva resistència en HRS amb el temps Tot i que aquests mil cicles han estat satisfactoris perquè sempre commuta el mateix memristor després d’haver fet les corbes de papallona (memristor 1), s’observa que a partir del cicle mil tres-cents existeix una lleugera tendència a augmentar la resistència. Per aquest motiu, en el següent set de cicles de configuració sèrie es disminuirà aquest.
Pàg. 52 Memòria Així doncs, el test continua realitzant-se mil cicles més de configuració sèrie, baixant el RESET de -0,65 V a -0,6 V, que es poden veure a la Figura 7.35. Figura 7.35. Mil cicles de configuració sèrie. Sempre commuta el memristor 1 Al llarg d’aquests es veu que és sempre el memristor 1 el que commuta sempre. Cal afegir que durant els primers cinquanta cicles el memristor 2 pateix una petita transició en la què la seva resistència en LRS disminueix una mica. Veient que els resultats són satisfactoris, es realitzen tres sets més de mil cicles cadascun i un de dos mil, en aquest ordre. A la Figura 7.36 es mostren els cinc mil de forma conjunta. Figura 7.36. Cinc mil cicles de configuració sèrie. Fins el cicle 6700 tot funciona correctament, però a partir de llavors la resistència del memristor 1 en HRS va disminuint
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 53 Al llarg d’aquests es por veure com sempre commuta únicament el memristor 1. Cal destacar, a més, que la dispersió observada en el valor de resistència del memristor 2 quan el memristor 1 està en HRS (en negre a la imatge) és deguda, no a la variació real d’aquesta resistència, sinó a que donat que passa molt poc corrent pels dispositius a causa de l’alt valor resistiu del memristor 1, la sonda que mesura el corrent (valor amb què es calcula les resistències) pot estar perdent precisió, fent que els valors oscil·lin més del que realment ho fan. A més, durant els últims cicles (a partir del 6700 aproximadament) s’observa com la resistència del memristor 1 en HRS va disminuint de forma bastant sobtada. És per això que no es continua realitzant un nombre tan gran de cicles, sinó que es fan només cinc-cents per veure millor què està succeint. Aquests cicles es mostren a continuació a la Figura 7.37. Figura 7.37. Cinc-cents cicles de configuració sèrie. Funcionament correcte fins el 7252 però després els dos es queden bloquejats a HRS. a) Valors de resistència dels dos memristors b)Valors de corrent al llarg dels cicles Al llarg d’aquests (Figura 7.37 a)) es pot veure que durant els primers 250 cicles la commutació del memristor 1 és correcta i a més només ho fa ell. No obstant això, a partir del cicle 7252 el memristor 1 comença a augmentar a la seva resistència en HRS fins el punt que deixa de commutar, quedant-se bloquejat en HRS. Això provoca que el memristor 2 passi també a HRS i no sigui capaç de tornar a commutar. Cal afegir que si s’observen els corrents (Figura 7.37 b)) aquest fet es podria detectar, ja que hi ha una caiguda brusca d’aquest en el SET, passant de ser de l’ordre de 10 µA a pràcticament 0 µA en cinc cicles. Per aquesta raó es procedeix a donar aquesta part de l’assaig de configuració sèrie per acabada i es realitzen corbes de papallona per verificar l’estat en què s’han quedat els memristors i, si algun s’ha quedat bloquejat, alliberar-lo. A la Figura 7.38 es mostren les vint corbes característiques realitzades. a) b)
Pàg. 54 Memòria Figura 7.38. Vint cicles de papallona després de la configuració sèrie. El memristor 2 inicialment estava bloquejat a HRS. La papallona del memristor 1 ha canviat força En aquesta es pot veure que el memristor 2 inicialment es trobava bloquejat a HRS, però al cap d’uns quants cicles de corba característica aquest torna a poder commutar bé. A més, cal afegir que les papallones d’aquest s’han mantingut força semblants. Pel que fa al memristor 1, ha commutat des del principi però després de fer un parell de cicles amb la corba semblant al de la Figura 7.30, canvia augmentant la resistència dels dos estats entre els que commuta. A més, la finestra de la corba amb voltatges negatius (en color verd a la figura) presenta una finestra molt petita. Donat que l’experiment es continua en un temps diferent a les proves anteriors, es repeteixen les papallones per comprovar si segueixen funcionant (Figura 7.39). Figura 7.39. Vint cicles de papallona per comprovar l'estat dels memristors. Els dos commuten, però el memristor 2 sembla inestable i el memristor 1 no té quasi finestra a la part negativa (en verd) Tot seguit es procedeix a fer la configuració sèrie dels dos memristors, començant per pocs cicles per tal de fer un calibratge dels voltatges a aplicar. Per aquesta raó es fan cent cicles de configuració sèrie amb els valors aplicats en els últims assajos de configuració sèrie. A la Figura 7.40 es mostren les resistències dels dos memristors durant aquests cicles.
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 55 Figura 7.40. Cent cicles de configuració sèrie per calibrar. En tot moment els memristors es troben en HRS, no sent capaços de fer el SET En aquesta es pot veure que els dos memristors es troben sempre a HRS (al voltant de 10 kΩ pel memristor 1 i de 0,3 MΩ pel memristor 2) i en cap moment són capaços de fer el SET. És per això que es fan cinquanta cicles més potenciant el voltatge que els fa passar a LRS: durant els primers vint cicles es puja VWSET a 1,2 V i es baixa el VWRST a -0,5 V (Figura 7.41 a)) i durant els darrers trenta es baixa encara més el VWRST fins a -0,3 V (Figura 7.41 b)). Figura 7.41. Vint (a) i trenta (b) cicles de configuració sèrie afavorint el SET. En cap cas els memristor s’alliberen de l’HRS No obstant això, en cap dels dos casos s’aconsegueix que els memristors commutin a l’estat de baixa resistència. Per això es procedeix a realitzar vint cicles de corbes característiques per veure si algun dels dos s’ha bloquejat a HRS no permetent commutar a l’altre, o bé han estat els dos els que s’han quedat a HRS. A la Figura 7.42 es poder observar els resultats d’aplicar-los amb uns voltatges de VSET de +0,8 V i de VRST de -0,6 V (els valors utilitzats per defecte). a) b)
Pàg. 56 Memòria Figura 7.42. Vint cicles de papallona per comprovar si algun memristor s'ha bloquejat. El memristor 2 s'ha quedat fix a HRS i el memristor 1 ha recuperat la forma de papallona que tenia en un principi Tal i com es pot observar, el memristor 2 està bloquejat a HRS i en cap moment torna a commutar i pel que fa al memristor 1, aquest sí funciona correctament i, a més, ha recuperat la forma de la corba que presentava inicialment. Sabent que el memristor 2 s’ha bloquejat, s’ha d’alliberar abans de tornar a fer la configuració sèrie. Així doncs, es procedeix a fer corbes de papallona que afavoreixin el desbloqueig del memristor 2. En total es realitzen 60 cicles d’aquestes, seguint el procediment indicat a l’apartat 6.3, però no és possible alliberar-lo i donant, per tant, el test per acabat. A mode de resum, aquesta parella de memristors ha estat capaç de treballar durant pràcticament 7000 cicles de configuració sèrie de forma correcta (i gairebé 8000 en total). Al llarg d’aquests s’han trobat situacions en què la configuració deixava de funcionar, perquè algun dels memristors patia un bloqueig en algun dels estats. No obstant, si aquests bloqueigs es donessin en un circuit en què s’utilitzés una parella de memristors podrien haver-se detectat observant els canvis bruscos en el corrent i en la resistència del memristor que commuta.
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 63 VARIACIÓ DE LA TEMPERATURA DE TREBALL Per tal de posar a prova els dispositius davant de possibles atacs maliciosos, ja sigui buscant destruir el circuit o per extreure informació, s’ha realitzat un assaig consistent en la caracterització de memristors, tal i com s’ha fet a l’apartat 6 però afegint el factor de la temperatura. Així doncs, s’han realitzat corbes de papallona a diferents temperatures per caracteritzar el seu efecte sobre el comportament dels memristors. S’ha fet l’assaig a tres temperatures diferents: 298 K (25 ºC) 350 K (77 ºC) 400 K (127 ºC) 8.1. BANC DE TREBALL Donat que l’assaig és el mateix que l’indicat a l’apartat 6 però variant la temperatura, els instruments necessaris per fer aquest test són els mateixos, però afegint una cambra climàtica (Dycometal CET-40/81) [19] que és la que permet variar temperatura i fixar-la als valors desitjats. A la Figura 8.1 es mostra una imatge d’aquesta. Figura 8.1. Vista exterior de la cambra climàtica
Pàg. 64 Memòria La cambra climàtica té un recinte en el qual es col·loca la protoboard (Figura 8.2) i té dos accessos a l’interior d’aquesta: un pel sostre i un altre per una de les parets. A la Figura 8.1 es veu com surten dos cables per l’accés de la paret de la dreta, que es corresponen als que surten de la cambra en la Figura 8.2. Figura 8.2. Recinte interior de la cambra amb la protoboard disposada en aquest A més, aquesta es controla a través del panell que té en la part frontal i que es pot veure a la Figura 8.3. Figura 8.3. Panell de control de la cambra climàtica
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 65 8.2. RESULTATS DE L’EXPERIMENTACIÓ Amb l’objectiu de posar a prova el funcionament dels memristors a altes temperatures, el procediment seguit ha estat el que es comenta a continuació a l’hora que es mostren els resultats d’un dels memristors provats. Primerament, es munta el memristor a la protoboard, se situa dins la cambra climàtica i es connecten els cables que surten de la cambra climàtica i van a parar a la SMU, que és controlada per un ordinador. Tot seguit, es forma el memristor abans de posar en marxa la cambra, ja que una vegada es posa en funcionament no és possible treure ni canviar el memristor sense haver d’esperar a que es torni a estabilitzar la temperatura. És per això que es forma i es verifica que funciona correctament abans de fixar un valor de temperatura. El forming es mostra a la Figura 8.4. Figura 8.4. forming del memristor. S'ha format molt ràpid: als 0,2 V ja ho ha fet Tal i com es pot veure, aquest memristor es forma molt ràpid, ja que arriba al límit de corrent (un microamper) als 0,2 V. A continuació es fan vint cicles de papallona per confirmar aquest que funciona bé amb els voltatges predefinits (Figura 8.5).
Pàg. 66 Memòria Figura 8.5. Vint cicles de papallona per determinar si el memristor funciona correctament Donat que el memristor funciona correctament, es procedeix a activar la cambra i es fixa la temperatura de la cambra climàtica a 25 ºC, esperant fins que tot el recinte estigui a aquesta temperatura. Això es pot veure gràcies a la temperatura mostrada per la pantalla del panel de control de la cambra climàtica, en què una vegada s’ha estabilitzat indica que ja es pot fer el test perquè tot el recinte es troba a la mateixa temperatura. Una vegada la temperatura és la desitjada, es fan cent cicles de corba característica, que es mostren a la Figura 8.6. Figura 8.6. Cent cicles de papallona a 298 K. El memristor commuta bé però cada vegada té una finestra més petita En aquesta es pot veure que el memristor commuta bé. No obstant això, a mesura que van passant els cicles la finestra va disminuint (tot i que inclús al final segueix commutant).
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 67 Tot seguit es puja la temperatura de la cambra a 350 K i s’espera fins que aquesta s’estabilitza per procedir a realitzar cent cicles més de papallona (Figura 8.7). Figura 8.7. Cent cicles de papallona a 350 K. El memristor commuta però la finestra ha disminuït molt Com es pot veure, el memristor segueix commutant, tot i que la finestra s’ha reduït encara més. A continuació es torna a pujar la temperatura fins a 395 K i s’espera fins que estigui estabilitzada. Una vegada la temperatura de la cambra és homogènia i té el valor fixat, es fan cent cicles més de corba característica, que es mostren a la Figura 8.8. Figura 8.8. Cent cicles de papallona a 395 K. La finestra s'ha recuperat Tal i com es pot veure en els cicles, les papallones s’han recuperat una mica respecte a les de l’assaig a 350 K i tornant a semblar-se a les inicials (Figura 8.5) i augmentant la finestra. Com a conclusió, aquest assaig permet veure que la corba característica del memristor és, en general, inestable i va canviant al llarg del temps –com ja s’ha observat en altres experiments a temperatura ambient– i que la temperatura no és un paràmetre que acceleri o ralenteixi aquesta degradació, sinó que no afecta al comportament d’aquest.
Pàg. 68 Memòria PLANIFICACIÓ I PROGRAMACIÓ Per tal de dur a terme aquest projecte, s’han realitzat diverses tasques. Primerament, s’ha buscat informació i s’han llegit articles relacionats amb els memristors i la seguretat hardware, per tal de definir l’estat de l’art. Una vegada s’han tingut els coneixements necessaris sobre el tema, s’ha procedit a la realització dels assajos per observar i analitzar el comportament dels memristors. S’ha començat definint el banc de treball necessari per realitzar les corbes característiques: s’han preparat els programes de MATLAB (Annex A) i s’ha definit el circuit a muntar. A continuació s’han dut a terme els assajos amb els diferents memristors i s’han analitzat els resultats, per posteriorment documentar les conclusions extretes d’aquests. Finalment, s’ha establert un procediment de millora per desbloquejar els memristors que s’hagin quedat bloquejats a un estat resistiu i s’ha posat en pràctica amb els memristors que s’han utilitzat a posteriori. Una vegada s’han analitzat suficients corbes característiques de memristors com per poder definir el procediment de recuperació, s’ha passat a realitzar la configuració sèrie. Primer definint el banc de treball –programant el codi per a la configuració sèrie (Annex B) i definint el circuit a realitzar– i després realitzant els assajos i analitzant els resultats per cada parella de memristors. Una vegada fets uns quants tests de configuració sèrie, s’ha definit una metodologia per realitzar la configuració sèrie i intentar desbloquejar els memristors en cas que s’hagin quedat bloquejats. Aquesta s’ha posat en pràctica des dels moment que s’ha definit. Una vegada realitzades totes les proves, s’ha procedit a la documentació dels resultats observats i les conclusions extretes d’aquesta part. Per últim s’ha preparat el banc de treball i s’han realitzat els assajos amb la cambra climàtica, realitzant les cobres característiques de memristors afegint el factor de la temperatura. A mesura que s’ha fet un assaig a una determinada temperatura s’han anat analitzat els resultats. Quan
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 69 aquests s’han donat per finalitzats, s’ha documentat aquesta part del treball. Amb aquests últims tests s’ha donat per acabada la part d’experimentació i s’ha procedit a calcular el cost del treball i acabar la redacció de les diferents parts del treball per acabar (planificació, conclusions, resum, etc.). A la Figura 9.1 es mostra un cronograma amb la duració de les diferents accions dutes a terme per a la realització d’aquest treball. Aquestes accions s’han classificat en quatre tipus: Aquelles relacionades amb les corbes característiques (en verd), amb la configuració sèrie (en verd), amb la cambra climàtica (en taronja) i altres tasques de cerca d’informació i documentació (en groc), com la cerca d’informació i documentació de l’estat de l’art, els costs, la planificació, etc. Per últim, cal afegir que s’ha indicat com “BT” l’acció de definir el banc de treball i l’acció de “Millora” fa referència a la proposta de millora desenvolupada, ja sigui per les corbes de papallona o la configuració sèrie, segons el color de la cel·la.
Pàg. 70 Memòria Figura 9.1. Cronograma amb la dedicació dedicada a cada tasca Temps (h) Tasques relacionades amb les corbes característiques Tasques relacionades amb la configuració sèrie Tasques relacionades amb la cambra climàtica BT Altres tasques de documentació Tests BT Estat de l'art Test Test BT Millora Documentació Anàlisi resultats Anàlisi resultats Documentació Altres (cost...) Anàlisi resultats Documentació Millora 300 280 260 60 20 40 400 380 360 340 320 240 100 120 200 180 220 80 140 160
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 71 ESTUDI ECONÒMIC En aquest apartat es detallen els aspectes econòmics relacionats amb el projecte. D’una banda es tindrà en compte els costs associats a l’equipament, programes i els components utilitzats i de l’altra el dels recursos humans. 10.1. COSTS ASSOCIATS ALS EQUIPS, LLICÈNCIES I COMPONENTS Pel que fa als equips utilitzats s’ha utilitzat: L’SMU L’ordinador que controla l’SMU La cambra climàtica L’ordinador amb què es feia la documentació del treball No obstant això, aquests no s’han adquirit especialment pel projecte de manera que només s’ha comptabilitzat la part proporcional associada al temps d’ús. A més, pel que fa a la cambra climàtica, donat que es va adquirir fa més de 15 anys, es considera que està totalment amortitzada, no suposant un cost a computar. Respecte a programes informàtics i llicències només s’ha fet servir la llicència acadèmica de MATLAB. Per últim, pel que fa als components utilitzats, s’han utilitzat els següents: Protoboards. De les quals una es va fer malbé en les proves de la cambra climàtica Memristors Cables Així doncs, si s’agrupen totes les eines utilitzades per al projecte amb els costos associats, es veu que aquesta partida comporta una despesa de 1911 €, tal i com es mostra a la Taula 10.1.
Pàg. 72 Memòria COSTOS ASSOCIATS ALS EQUIPS, LLICÈNCIES I COMPONENTS Concepte Cost unitari (€) Unitats emprades Ús dedicat al projecte (%) Període d’ús (mesos) Període de depreciació (mesos) Import (€) SMU 12000 1 100 4 120 400 Ordinador SMU 2000 1 100 4 60 133,33 Ordinador documentació 2000 1 100 5 60 166,67 Llicència de MATLAB 500 1 100 5 12 208,33 Protoboard 35,21 2 100 4 12 46,95 Memristors 27,5 33 100 4 N/A 907,5 Cables (1 m) 2 1 100 4 N/A 2 Adaptador GPIB-USB 693,33 1 100 4 60 46,22 SUBTOTAL (€) 1911 Taula 10.1 Costos associats a equipament, llicències i components
Anàlisi d'associacions de memristors per a la generació de bits aleatoris per aplicacions de seguretat hardware Pàg. 79 2016. [12] Herder et al. , «Physical Unclonable Functions and Applications: A Tutorial,» Proceedings of the IEEE, vol. 102, núm. 8, pàg. 1126-1141, agost 2014. [13] Keysight Technologies, «Keysight Technologies B2900 Series Precision Source/Measure Unit. User’s Guide,» desembre 2016. [En línia]. Diponible a: http://literature.cdn.keysight.com/litweb/pdf/B2910-90010.pdf. [Últim accés: 8 febrer 2017]. [14] M. Serrano Borrero, «Herramienta software para el control remoto de una fuente de alimentación mediante una interfaz gráfica,» [En línia]. Disponible a: http://bibing.us.es/proyectos/abreproy/11986/fichero/CAP%C3%8DTULO+2%252FCAP% C3%8DTULO+2.pdf. [Últim accés: 24 febrer 2017]. [15] MathWorks, «Instrument Control Toolbox,» 2 març 2017. [En línia]. Disponible a: https://es.mathworks.com/products/instrument.html. [16] Keysight Technologies, «B2900A Precision Source Measure Unit IVI and MATLAB Instrument Drivers,» desembre 2016. [En línia]. Disponible a: http://www.keysight.com/main/software.jspx?cc=US&lc=eng&ckey=2056761&nid=- 11143.0.00&id=2056761. [Últim accés: 27 març 2017]. [17] Keysight Technologies, «Keysight Technologies B2900 Series Precision Source/Measure Unit. Programming Guide,» desembre 2016. [En línia]. Disponible a: http://literature.cdn.keysight.com/litweb/pdf/B2910-90020.pdf. [Últim accés: 17 març 2017]. [18] Keysight Technologies, «Keysight Technologies B2900 Series Precision Source/Measure Unit. SCPI Command Reference,» desembre 2016. [En línia]. Disponible a: http://literature.cdn.keysight.com/litweb/pdf/B2910-90030.pdf. [Últim accés: 17 març 2017]. [19] Dycometal, «Especificaciones técnicas de la cámara de ensayos térmicos mod. CET-40/81 mediante regulador electronico digital de la temperatura».
Pàg. 80 Memòria