+ All Categories
Home > Documents > Proiectarea, verificarea, implementarea şi testarea ASIC...

Proiectarea, verificarea, implementarea şi testarea ASIC...

Date post: 29-Feb-2020
Category:
Upload: others
View: 24 times
Download: 0 times
Share this document with a friend
4
Proiectarea, verificarea, implementarea şi testarea ASIC-ului Read Out Controller (ROC) Popa Ștefan 1 Coordonator ştiinţific: Prof. dr. ing. Mihai Ivanovici Rezumat Noi Circuite Integrate cu Aplicaţie Specifică (ASIC-uri) vor fi folosite pentru a citi şi filtra datele de la detectorii experimentului ATLAS (A Toroidal LHC ApparatuS, LHC este Large Hadron Collider), de la CERN, Geneva. ASIC-ul Read Out Controller (ROC), prezentat în această lucrare, concentrează fluxurile de date de la 8 circuite VMM din amonte, filtrează datele pe baza trigger-ului Level-1 şi le transmite prin 4 legături seriale, fiecare cu viteză configurabilă. ROC-ul este implementat în tehnologie IBM CMOS 130nm, este lipit pe un PCB (Printed Circuit Board) folosind “wirebonding” şi este testat utilizând un FPGA (Field Programmable Gate Array) Xilinx. Cuvinte cheie: Read Out Controller; ASIC; FPGA; PCB; ATLAS 1. Introducere Acceleratorul de particule de la CERN (Conseil Européen pour la Recherche Nucléaire), Geneva, va începe să funcţioneze din 2018 cu o luminozitate ridicată de la 10 34 cm −2 s –1 la 5·10 34 cm −2 s –1 [3][4]. Pentru a face faţă luminozităţii ridicate, sistemele de detecţie a miuonilor de la capetele detectorului ATLAS, numite Small Wheel, vor fi înlocuite cu New Small Wheel (NSW) [1][2]. Două tehnologii diferite pentru detecţie vor fi folosite, sTGC (small-strip Thin Gap Chambers) şi MM (Micromegas), amândouă capabile de măsurare şi determinare cu precizie a traiectoriei şi vitezei miuonilor [1]. Pentru a face faţă noilor constrângeri de lăţime de bandă, latenţă şi toleranţă la radiaţie, electronica de front-end a experimentului ATLAS va include patru noi ASIC-uri pentru digitalizarea şi amortizarea ratelor datelor de la detectori: TDS (Trigger Data Serializer), ART (Address in Real Time), VMM şi ROC (Read Out Controller). În Figura 1 este ilustrat contextul în care va funcţiona ROC-ul [1]. VMM-ul este ASIC-ul de front-end care recepţionează semnalele analogice de la detectori şi pe care le digitalizează. Datele, etichetate de BCID (Bunch Crossing IDentity), sunt stocate în VMM până când semnalul de trigger Level-0 selectează ce trebuie transferat către ROC [1]. ROC-ul va agrega şi împacheta datele venite de la până la 8 VMM-uri şi le va trimite fie nefiltrate (Faza 1 de Upgrade a detectorului ATLAS) fie filtrate pe baza unui semnal de trigger Level-1 (Faza 2) [1][2]. Datele de la ROC sunt recepţionate de GBTx (GigaBit Transceiver) care le va trimite mai departe prin fibră optică către o reţea de calculatoare numită FELIX (Front End Link eXchande) [1]. VMM-urile şi ROC-ul sunt configurate de ASIC-ul SCA (Slow Control Adaptter), care dispune de legăturile SPI (Serial Peripheral Interface) şi I 2 C (Inter-Integrated Circuit) necesare [1]. Totodată ROC-ul generează semnalele de ceas şi de control necesare funcţionării şi sincronizării celor 8 VMM-uri şi a TDS-ului (vezi Figura 1). Toate aceste semnale pot fi întârziate individual cu câte maxim 12,5 ns în paşi de câte 200 ps pentru sincronizarea tuturor ASIC-urilor. 1 SECI-SI (Sisteme Electronice și de Comunicaţii Integrate – Sisteme Integrate)
Transcript
Page 1: Proiectarea, verificarea, implementarea şi testarea ASIC ...old.unitbv.ro/Portals/5/Stiri/Documente/SCSS2017... · Puterea totală raportată de uneltele de implementare este de

Proiectarea, verificarea, implementarea şi testarea

ASIC-ului Read Out Controller (ROC)

Popa Ștefan1

Coordonator ştiinţific: Prof. dr. ing. Mihai Ivanovici

Rezumat

Noi Circuite Integrate cu Aplicaţie Specifică (ASIC-uri) vor fi folosite pentru a citi şi filtra

datele de la detectorii experimentului ATLAS (A Toroidal LHC ApparatuS, LHC este Large

Hadron Collider), de la CERN, Geneva. ASIC-ul Read Out Controller (ROC), prezentat în

această lucrare, concentrează fluxurile de date de la 8 circuite VMM din amonte, filtrează

datele pe baza trigger-ului Level-1 şi le transmite prin 4 legături seriale, fiecare cu viteză

configurabilă. ROC-ul este implementat în tehnologie IBM CMOS 130nm, este lipit pe un

PCB (Printed Circuit Board) folosind “wirebonding” şi este testat utilizând un FPGA (Field

Programmable Gate Array) Xilinx.

Cuvinte cheie: Read Out Controller; ASIC; FPGA; PCB; ATLAS

1. Introducere

Acceleratorul de particule de la CERN (Conseil Européen pour la Recherche Nucléaire), Geneva, va începe să funcţioneze din 2018 cu o luminozitate ridicată de la 1034 cm−2s–1 la 5·1034 cm−2s–1 [3][4]. Pentru a face faţă luminozităţii ridicate, sistemele de detecţie a miuonilor de la capetele detectorului ATLAS, numite Small Wheel, vor fi înlocuite cu New Small Wheel (NSW) [1][2]. Două tehnologii diferite pentru detecţie vor fi folosite, sTGC (small-strip Thin Gap Chambers) şi MM (Micromegas), amândouă capabile de măsurare şi determinare cu precizie a traiectoriei şi vitezei miuonilor [1].

Pentru a face faţă noilor constrângeri de lăţime de bandă, latenţă şi toleranţă la radiaţie, electronica de front-end a experimentului ATLAS va include patru noi ASIC-uri pentru digitalizarea şi amortizarea ratelor datelor de la detectori: TDS (Trigger Data Serializer), ART (Address in Real Time), VMM şi ROC (Read Out Controller). În Figura 1 este ilustrat contextul în care va funcţiona ROC-ul [1]. VMM-ul este ASIC-ul de front-end care recepţionează semnalele analogice de la detectori şi pe care le digitalizează. Datele, etichetate de BCID (Bunch Crossing IDentity), sunt stocate în VMM până când semnalul de trigger Level-0 selectează ce trebuie transferat către ROC [1]. ROC-ul va agrega şi împacheta datele venite de la până la 8 VMM-uri şi le va trimite fie nefiltrate (Faza 1 de Upgrade a detectorului ATLAS) fie filtrate pe baza unui semnal de trigger Level-1 (Faza 2) [1][2]. Datele de la ROC sunt recepţionate de GBTx (GigaBit Transceiver) care le va trimite mai departe prin fibră optică către o reţea de calculatoare numită FELIX (Front End Link eXchande) [1]. VMM-urile şi ROC-ul sunt configurate de ASIC-ul SCA (Slow Control Adaptter), care dispune de legăturile SPI (Serial Peripheral Interface) şi I2C (Inter-Integrated Circuit) necesare [1]. Totodată ROC-ul generează semnalele de ceas şi de control necesare funcţionării şi sincronizării celor 8 VMM-uri şi a TDS-ului (vezi Figura 1). Toate aceste semnale pot fi întârziate individual cu câte maxim 12,5 ns în paşi de câte 200 ps pentru sincronizarea tuturor ASIC-urilor.

1 SECI-SI (Sisteme Electronice și de Comunicaţii Integrate – Sisteme Integrate)

Page 2: Proiectarea, verificarea, implementarea şi testarea ASIC ...old.unitbv.ro/Portals/5/Stiri/Documente/SCSS2017... · Puterea totală raportată de uneltele de implementare este de

Figura 1 Contextul ROC [1].

2. Proiectare. Verificare. Implementare. Testare

ROC-ul conţine 8 module VMM Capture, un crossbar, 4 module sROC (sub-ROC), 1 modul de recepţie a triggerelor (TTC Capture – Time, Trigger and Control), 1 PLL (Phase Locked Loop) pentru generarea semnalelor de ceas interne [1], alte 2 PLL-uri cu linii de întârziere pentru generarea şi întârzierea pulsurilor şi semnalelor de ceas trimise în exterior şi 2 sclavi I2C cu interfeţe Wishbone către două bancuri de registri de configurare. Schema bloc a ROC-ului este ilustrată în Figura 2.

Modulele VMM Capture recepţionează pachetele de date de la VMM-uri prin legături seriale, fiecare de 640 Mbps, le decodează 8b10b şi le stochează în FIFO-uri (First In First Out) pentru a fi citite de modulele sROC [1][2]. Modulul xBar (crossbar) interconectează cele 8 module VMM Capture la cele 4 sROC-uri într-o manieră configurabilă [1]. Blocul sROC agreghează, filtrează, reîmpachetează, codifică 8b10b şi serializează datele de la VMM-urile corespunzătoare [1]. Datele de la ieşirea unui sROC pot avea următoarele viteze: 80, 160, 320 sau 640 (implicit) Mbps. Configuraţia chip-ului şi semnalarea erorilor este realizată cu ajutorul blocului Config, care comunică cu ASIC-ul SCA prin intermediul unei interfeţe I2C.

Figura 2 Structura Internă a ROC-ului [1].

Page 3: Proiectarea, verificarea, implementarea şi testarea ASIC ...old.unitbv.ro/Portals/5/Stiri/Documente/SCSS2017... · Puterea totală raportată de uneltele de implementare este de

Informaţia TTC de la FELIX este deserializată, procesată şi furnizată celorlalte module de blocul TTC Decode [1]. Semnalele de ceas şi de sincronizare sunt generate de blocul ePLL care conţine un modul propriu de configurare tot printr-o interfaţă I2C .

Pentru a valida ROC-ul, fiecare submodul a fost simulat şi verificat înainte de integrare în modulul de top [1]. După integrare, datele de intrare de la VMM-uri si informaţia TTC au fost emulate şi două tipuri de teste au fost rulate: (i) Teste cu date de intrare corecte, pentru verificarea caracteristicilor funcţionale ale ROC-ului; (ii) Teste cu date care conţin diverse erori, pentru simularea diverselor scenarii (fluxuri de date dezaliniate, erori de codare 8b10b, pachete incomplete, erori de paritate, pauze lungi în fluxul de date, ceasuri defazate etc.) şi testarea robusteţii ROC-ului [1]. Traficul de intrare a fost generat utilizând o distribuţie Poisson, generatoarele de date fiind complet configurabile (rata medie a pachetelor, dimensiunea medie a pachetelor etc.) [1]. Design-ul nu a avut pierderi de date nici la rate peste cele din specificaţii.

ROC-ul este implementat în tehnologie IBM CMOS 130 nm, are 232 de pad-uri, o arie de 22,5 mm2 (4744 µm × 4744 µm) şi conţine 112.478 de porţi logice şi bistabile (neconsiderând memoriile SRAM). Toate bistabilele au fost triplicate şi ieşirea lor corectă este determinată de circuite de vot majoritar, pentru toleranţă la SEU (Single Event Upset). Puterea totală raportată de uneltele de implementare este de 68 mW (neconsiderând pad-urile). În Figura 3 este prezentat layout-ul ROC-ului, precum şi fotografia circuitului implementat în Siliciu, lipit cu wirebonding de PCB-ul de testare.

a) b)

Figura 3 Layout-ul ROC-ului a) şi circuitul lipit cu wirebonding pe PCB-ul de testare b).

Pentru testarea ROC-ului, am folosit o placă de dezvoltare cu FPGA Xilinx Kintex UltraScale KCU105. De asemenea, a fost proiectat şi realizat un PCB, ilustrat în Figura 4, cu conector FMC (FPGA Mezzanine Card) de 400 de pini pentru conectarea la placa cu FPGA, headere cu pini pentru măsurarea semnalelor de ceas şi a pulsurilor trimise de ROC, wirebonding pentru prototipul ROC-ului şi alimentare separată pentru pad-uri şi pentru nucleu ajustabilă în valoare (1,1; 1,2 sau 1,3 V) şi selectabilă ca sursă (din exterior sau din conectorul FMC). Am realizat o portare a mediului de testare nesintetizabil utilizat la verificare pe FPGA-ul plăcii de dezvoltare.

Chip-ul prototip a fost testat utlizând aceste plăci la o rată maximă a datelor de intrare pentru perioade îndelungate de timp şi nu au fost semnalate erori iar datele de la ieşire au fost verificate şi corespund întru totul modelului RTL (Register Transfer Logic).

Page 4: Proiectarea, verificarea, implementarea şi testarea ASIC ...old.unitbv.ro/Portals/5/Stiri/Documente/SCSS2017... · Puterea totală raportată de uneltele de implementare este de

Figura 4 PCB-ul de testare a ROC-ului cu wirebonding.

3. Concluzie

ASIC-ul ROC agreghează şi filtrează datele citite de la mai multe VMM-uri, date care vin cu o rată de 40 MHz de la detectorii de miuoni ai NSW din experimentul ATLAS, CERN. Simulările au dovedit proiectarea corectă. Chipul poate face faţă la rate mai mari decât cele necesare în perioada 2018-2019 de funcţionare a acceleratorului de particule LHC. ROC-ul a fost implementat în tehnologie CMOS IBM 130 nm şi prototipul său a fost testat utilizând un PCB cu wirebonding şi o placă de dezvoltare cu FGPA Xilinx. Testele au dovedit implementarea şi proiectarea corectă. În continuare se vor realiza teste cu scenarii mai complexe, inclusiv sub influenţa radiaţiilor şi pe plăci cu ASIC-urile din context. ROC-ul va fi produs într-un număr de 7000 de exemplare ce vor fi încapsulate BGA (Ball Grid Array). Lista autorilor ROC-ului şi ai PCB-ului aferent este: Ştefan Popa1, Radu Coliban1, Traian Tulbure1, Dan Nicula1, Mihai Ivanovici1, Marius Carp1, Luchian Mihai1, Sorin Mărtoiu2, Lorne Levinson3, Jos Vermeulen4. 1 Departamentul de Electronică şi Calculatore, Facultatea de Inginerie Electrică şi Știinţa Calculatoarelor, Univeristatea Transilvania din Braşov, Romania 2 Institutul Naţional de Cercetare-Dezvoltare pentru Fizică şi Inginerie Nucleară Horia Hulubei, Măgurele, România. 3 Weizmann Institute of Science, Rehovot, Israel. 4 National Institute for Subatomic Physics Nikhef, Amsterdam, Olanda.

Bibliografie

1. Coliban, R.M., Popa, Ș., Tulbure, T., Nicula, D., Ivanovici, M., Mărtoiu, S., Levinson, L., Vermeulen, J. The Read Out Controller for the ATLAS New Small Wheel. Journal of Instrumentation, 11:C02069, 2016.

2. The NSW Readout Working Group. Requirements for the NSW VMM3 readout ASIC the NSW

Readout Controller ASIC, April 2015. Design Review Report, unpublished 3. BT Human. Plans for the phase II upgrade to the ATLAS detector. Journal of Instrumentation,

9(02):C02033, 2014. 4. Georgios Iakovidis. The micromegas project for the ATLAS upgrade. Journal of

Instrumentation, 8(12):C12007, 2013.


Recommended