Eksperimentinių tyrimų stendo schema

Download Report

Transcript Eksperimentinių tyrimų stendo schema

Skaitmeninių sistemų
projektavimas
Derinimo priemonės (debugging)
(modulis T170M012)
2012
Kauno technologijos universitetas
Elektroninių ir matavimo sistemų katedra
Doc. dr. Žilvinas Nakutis
FPGA projektavimo procesas
Kūrimo fazės:

Projektavimas:




Derinimas ir
verifikavimas:


viso 40
Įvedimas
Simuliavimas
Sintezė
Veikimo patikrinimas
Klaidų aptikimas ir
taisymas
2
Padiskutuokime
Ką reikėtų įvertinti ar nuspręsti, prieš
pradedant projektavimą, galvojant apie
derinimo uždavinius?
viso 40
3
Derinimo numatymas projekto
pradžioje
Kokio “dydžio” FPGA naudosime
Kiek prievadų paskirsime derinimo/verifikavimo
tikslams
 Kokius matavimus atliksime derinimo metu
 Kaip prijungsime derinimo priemones (prie BGA
neprisijungsime net su adata)
 Kokias priemones naudosime (tik multipleksorius
signalų nukreipimui į derinimo taškus, derinimo
šerdis, kurios galės buferizuoti istoriją)


(Šaltinis:Steve Warntjes , 2003, Plan-up front for FPGA debugging )
viso 40
4
Kokio “dydžio” FPGA naudoti
Nerašyta taisyklė – dvigubai “didesnę”, negu
prognozuojamas poreikis realizuoti
projektuojamam įrenginiui:


Papildomi resursai – greitesnis kompiliavimas
ir lengviau patenkinti laikinius reikalavimus
Galimybė realizuoti vidines derinimo šerdis
(angl. on-chip debug IP )
viso 40
5
Kiek prievadų paskirsime
– mažiausiai tiek linijų,
kokio pločio yra plačiausia vidinė
magistralė, kurią ruošiamės matuoti.
 Rekomendacija
Tinka, kai planuojame naudoti išorinį loginį
analizatorių. (Ž.N.)
viso 40
6
Kokius matavimus atliksime
derinimo metu
Simuliavimas leidžia aptikti sinchronines
problemas
 Įvairioms kraštinėms sąlygoms, problemoms
susijusioms su signalų parametrais (reikšmėmis)
bei problemoms dėl sąveikos su išoriniais
sistemos komponentais geriausiai tinka išoriniai
loginiai analizatoriai arba mišrių signalų
osciloskopai.
 Galbūt aktualu vertinti suvartojamą galią – tada
verta numatyti šunto varžos įjungimą šerdies ir
periferinių įrenginių maitinimo linijose. Kai
matuoti nereikia, galima įlituoti nulines varžas.

viso 40
7
FPGA derinimo ir verifikavimo
metodologijos
 Įterptinių
loginių analizatorių naudojimas
 Išorinių testavimo įrenginių naudojimas
 Metodų



palyginimo kriterijai:
Prievadų ar vidinių resursų naudojimas
Prisijungimas ir sąveika su išoriniais signalais
Kaina ir universalumas (lankstumas)
viso 40
8
Įterptiniai loginiai analizatoriai (1)
Naudoja vidinius FPGA resursus – loginius
elementus, atmintį (norisi ne daugiau 5 %)
 Nenaudoja išorinių prievadų (išskyrus JTAG
sąsajos linijas)

Išorinio analizatoriaus prijungimo problemos
nėra, nes naudoja JTAG sąsajos linijas
 “Matomi” tik vidiniai signalai. Išoriniai FPGA
signalai nematomi, o sudėtingesniuose
uždaviniuose tai aktualu

viso 40
9
Įterptiniai loginiai analizatoriai (2)
 Kaina
mažesnė (arba jos nėra) lyginant su
išoriniais loginiais analizatoriais
 Funkcionalumas paprastesnis: taktuojama
tik iš impulsų šaltinio, kuris paduodamas į
matricą; atminties gylis ribotas (signalų
istorija trumpa);
loginiai analizatoriai turi savo
nepriklausomus taktinių impulsų šaltinius ir
daug didesnį funkcionalumą.
viso 40
10
Išoriniai testavimo įrenginiai


Beveik nenaudoja vidinių FPGA resursų
Naudoja šiek tiek išorinių FPGA prievadų

Dažnai rekomenduotina papildoma jungtis plokštėje
analizatoriaus prijungimui
Į šią jungtį galima paduoti ir išorinius FPGA signalus,
kuriuos vizualizuos išorinis analizatorius



Brangūs
Didelis funkcionalumas: Daug trigerių, analoginių ir
skaitmeninių signalų įvedimas, didelė skiriamoji laikinė
geba, ilgi duomenų buferiai (“gali įsiminti daug istorijos”)
viso 40
11
Išoriniai loginiai analizatoriai
Tektronix TLA 5000 serijos analizatoriai
Agilent 16801A serijos analizatoriai
(kaina apie 10.000 USD)
viso 40
12
USB loginiai analizatoriai
Acquitek firmos
analizatoriai –
vienas iš daugybės
pasirinkimų.
viso 40
13
USB loginių analizatorių gamintojai
 Acquitek
 Link
instruments
(http://www.linkinstruments.com/ )
 kiti
viso 40
14
Išorinių loginių analizatorių
parametrai
500 MHz sampling rate
• 8 Channels
• 1Meg Samples/Channel data buffer
• 8-bit Pattern generator
• Flexible trigger options
• Extended capture time function
• Variable input threshold
• Variable pre-/post trigger buffer sizes
Number of input channels 8 digital
Voltage range 0 to 7V
Impedance 270 kOhm / 8 pF
Bandwidth 50 MHz min
Threshold voltage 1.2V - 2.2V, in 0.1V steps
Data buffer Size 1 Meg samples per channel
Pre/post-trigger buffer Data buffer is divided in pre- and post trigger section,
sizes can be set in 1000 samples steps
Internal sampling clock
Rates 500MHz, 200MHz, 100MHz, 50MHz, 25 MHz, 10MHz, 5MHz, 2.5MHz,
1MHz,
500kHz, 250 kHz, 100kHz, 50kHz, 25 kHz, 10kHz, 5kHz, 2.5kHz
Stability 100 ppm
viso 40
15
MSO – Mišrių signalų osciloskopai
Tektronix MSO 2000 serijos
osciloskopai
viso 40
16
Išorinio analizatoriaus prijungimas
Bendros paskirties jungtukai
Didelio tankio, daugiakanaliai
zondai
Bejungčiai zondai (conectorless
probes)
viso 40
17
Agilent firmos soft touch
technologija
Pažiūrėkime video
SoftTouchVideo.wmv
viso 40
18
Metodologijos pasirinkimas
Lentelė, kurią naudinga užpildyti renkantis
derinimo ir verifikavimo metodą:
viso 40
19
Signalų kaupimo gylis
(angl. capture depth)
 Altera
SignalTap įterptinis analizatorius –
128 Kb
 Išorinis MSO (Mixed Sigal Osciloscope) –
10M imčių
 Loginis analizatorius – iki 256M imčių
viso 40
20
Darbo su loginiais analizatoriais
nepatogumai

Norint nukreipti kitą stebimą signalą į išorinį
analizatoriaus prisijungimo tašką, reikia
perkompiliuoti projektą. Tai reikalauja laiko
sąnaudų. Tiesa, kai kada naudojamas
inkrementuojantis kompiliavimas (ar žinote kas
tai yra?)

Paprastai vienas signalas išvedamas į vieną
išorinį prievadą. Tai riboja stebimų signalų
skaičių.
viso 40
21
Mišrūs sprendimai (1)
Tektronix FPGAView platforma
Privalumai:
 Vidinių ir išorinių signalų vienalaikė stebėsena
 Greitas FPGA zondavimo taškų pakeitimas, nereikalaujantis
projekto perkompiliavimo
 Daugelio FPGA signalų stebėsena, panaudojant vieną prievadą
(liniją)
viso 40
22
Mišrūs sprendimai (2)
Agilent FPGA Dynamic Probe + MSO
viso 40
23
Agilent FPGA Dynamic Probe +
MSO derinimo sprendimas
 Derinimo
šerdis (angl. measurement core)
įterpiama į FPGA projektą
 Programavimas vyksta per JTAG sąsają
 MSO arba PK paleidžiama Agilent
programinė įranga (Dynamic Probe)
 Konfigūruojama kokius signalus
atvaizduoti (gali būti ir išoriniai signalai, žr.
prieš buvusios skaidrės pav.)
viso 40
24
Altera Quartus derinimo priemonės
Įterptiniai analizatoriai:
 Signal Tap II Logic Analyzer
 Signal Probe
 In-system Memory Content Editor
 In-system Sources and Probe Editor
viso 40
25
Apie SignalTap II Logic Analyzer





Leidžia atlikti sistemos veikimo verifikavimą, jam veikiant
realiuoju laiku
Nurodytų signalų imtys parsiunčiamos per JTAG sąsają į
failą kompiuteryje
Suformuotas failas gali būti analizuojamas Quartus
aplinkoje (SignalTap Logic Analyzer lange)
Naudojami konfigūruojami trigeriai (įvykiai, pažymintys
nurodytų sąlygų tenkinimą)
Matavimo duomenys gali būti nukreipti į FPGA atmintį
arba į išorinius prievadus, prie kurių bus jungiamas
išorinis loginis analizatorius
viso 40
26
Darbo eigos su SignalTap II
Analyzer diagrama
viso 40
27
Darbo žingsniai
Konfigūravimas
Stebimų mazgų nustatymas
Trigerio sąlygų nustatymas
Projekto, kuriame yra įterptas Signal Tap II
Analyzer kompiliavimas
 Signal Tap II Analyzer paleidimas iš Quartus
aplinkos (Tools/ Signal Tap II Analyzer )
 Duomenų analizė programos lange




viso 40
28
Demonstracinis projektas – Signal
Tap II Logic Analizer naudojimas


Panaudosime Altera DE2 maketą
Žemiau pateikta paprasto įrenginio schema:
SW[0],SW[1] – jungikliai, KEY[0] mygtukas, HEX0[0] –
LED diodas
viso 40
29
SignalTap II Analyzer
konfigūravimo sąsajos langas
viso 40
30
SignalTap II Analyzer sąsajos langas
viso 40
31
SignalProbe priemonė
 Leidžia
nukreipti signalus į derinimo
prievadus, nemodifikuojant surinkimo
(angl. fitting) rezultatų
 Todėl galima stebėti vidinius signalus,
kiekvieną kartą neperkompiliuojant
projekto
viso 40
32
In-system Memory Content Editor

Leidžia nuskaityti duomenis iš arba įrašyti juos į
atmintį, nepristabdant skaitmeninio įrenginio
funkcionavimo

Gali būti naudojamas įterpti klaidingus bitus arba
jų sekas į atmintį, skaitmeniniam įrenginiui
funkcionuojant pilnu greičiu (t.y., kai jis
taktuojamas uždavinio taktiniu dažniu) arba
keičiant koeficientų reikšmes atmintyje DSP
uždaviniuose
viso 40
33
Darbas su In-System Sources and
Probes Editor

Skirta stimulų generavimui ir duomenų matavimui bei
vizualizavimui pasirinktuose taškuose
viso 40
34
Demonstracinis projektas:
In-System Sources and Probes Editor
naudojimas
viso 40
35
In-System Sources and Probes
Editor sąsaja
• Source (žr. pavyzdžio schemą ir sąsajos langą) leidžia keisti stimulą
(du kartus spragtelėjus, Data grafoje)
• Probes leidžia stebėti pasikeitimus stebimuose taškuose
• Atkreipkite dėmesį į tai, kad probes taktuojamas išoriniu 50 MHz signalu (schema praeitoje
skaidrėje)
viso 40
36
Demonstracinis projektas – dviejų
derinimo priemonių naudojimas
 Signal
Tap II Logic Analyzer ir
 In-System Sources and Probes
viso 40
37
Tcl skriptų kalbos panaudojimas

Tcl (Tool Command Language tariama [tickle])
yra skriptų rašymo kalba

Tcl yra EDA pramonės standartas, naudojamas
Synopsys, Mentor Graphics ir Altera
programinėje įrangoje

Galima panaudoti automatizuojant projektavimo
žingsnius rašant Tcl komandas, vartotojo
apibrėžtas procedūras ir Quartus II API funkcijas
viso 40
38
Tcl komandų pavyzdžiai
 Ateityje
viso 40
39
Išvados
In-System Sources and Probes gali generuoti stimulus ir
stebėti reakcijas vykdymo metu (run-time)
Stimulai generuojami virtualiuose įėjimuose be papildomos
išorinės aparatinės įrangos (pvz., generatoriaus)
Naudojant kartu SignalTap II ir In-System Sources and
Probes atsiranda patogios galimybės valdyti signalus
projekte ir taip sutrumpinti verifikavimo etapą.
Panaudojant virtualius įėjimus galima sukurti įvairius
skaitmeninius įrenginius (TestBench), komunikuojančius
su derinamu projektu
viso 40
40