UPROG 7 System ISP

background image

1

System ISP - JTAG

System ISP (In-system programming - ISP™) zapewnia szybką
rekonfigurację układu PLD (bez demontażu) za pośrednictwem
programatora oraz specjalnego kabla łączącego system z komputerem.
Ten system jest szczególnie przydatny dla układów produkowanych w
obudowach przeznaczonych do montażu powierzchniowego SMD, gdzie
nie ma możliwości wyjęcia układu z podstawki. Są to takie typy obudów
jak:

• Thin Quad Flat Pack (TQFP),

• Ball Grid Array (BGA),

background image

2

System ISP - JTAG

W pierwszym etapie projektowania
układu PLD należy stworzyć opis układu
bądź w języku VHDL, bądź w postaci
równań Boole’a, równań stanu lub
tablicy prawdy. Specjalizowane systemy
CAD pozwalają na generację pliku
standardowego JEDEC z każdego
poziomu abstrakcji zastosowanego do
opisu układu.
Programowanie polega na konwersji
danych z pliku JEDEC z macierzowej do
szeregowej i przesłaniu ich w takiej
postaci do programowanego układu.
System wspomagający CAD wykonuje tę
operację automatycznie. Obecnie do
programowania układów CPLD stosuje
się standard IEEE 1149.1-1990
(Boundary Scan Test Access Port - TAP).

background image

3

System ISP - JTAG

• Pierwszym krokiem jest
opracowanie układu
(architektura), do czego
służą odpowiednie
narzędzia
wspomagające
CAD.

• Drugim krokiem jest
kompilacja
opracowanego
układu.

• Trzecim generacja
standardowego pliku
JEDEC, zawierającego
mapę tzw.
bezpieczników.

• Ostatnim, czwartym
krokiem jest
programowanie układu.

background image

4

System ISP - JTAG

JTAG

1149.1

1532 ISP

Standard ten dla niektórych układów Xilinx’a obsługuje system J Drive™,
umożliwiając programowanie układów w systemie ISP (ISC). System ten
wykorzystuje język BSDL (Boundary Scan Description Language). Producenci
układów PLD załączają pliki napisane w języku BSDL standardu IEEE1532 dla
każdego typu układu PLD.

background image

5

System ISP - JTAG

background image

6

System ISP - JTAG

background image

7

System ISP - JTAG

Testowanie z ograniczonym
skanowaniem (krawędziowe) –
(Boundary Scan Testing)

W 1980r. grupa zajmująca się testowaniem
układów (Joint Test Action Group - JTAG)
opracowała sposób testowania, który później
stał się standardem - IEEE Std. 1149.1-
1990.
Sposób ten (BST) pozwala na testowanie
poszczególnych wyprowadzeń układu bez
użycia jakichkolwiek próbników czy sond,
pozwalając na sprawdzenie funkcjonalnej
poprawności działania układu w czasie jego
normalnej pracy. Specjalne komórki układu
(Boundary Scan Cells) mogą przesunąć dane do
wyprowadzenia lub przechwycić dane z
wyprowadzenia układu. Dane te są szeregowo
przesuwane wzdłuż połączonych specjalnych
komórek skanujących. W ten sposób
przechwycona dana jest w końcu szeregowo
przesuwana na zewnątrz systemu, gdzie może
być porównana w trakcie testu.

background image

8

System ISP - JTAG

Układy ISP zapewniają redukcję czasu wprowadzenia nowego produktu
na rynek o około 33% w stosunku do innych układów CPLD i około 83%
w porównaniu z implementacją w tradycyjnych układach
matrycowych (gate array).

background image

9

System ISP - JTAG

Układy ISP nie tylko zrewolucjonizowały sposób projektowania
systemów cyfrowych, ale także wpłynęły na proces ich wytwarzania.
Układy ISP mogą realizować wiele funkcji. Układy ISP mogą być
specjalnie rekonfigurowane dla testów, co upraszcza proces ich
wytwarzania, wpływa pozytywnie na ich jakość oraz redukuje koszty.

Niektóre układy ISP mogą być
skonfigurowane jako testery do
testowania układów znajdujących
się w innej części systemu.
Takie testy mogą być
realizowane już na etapie
produkcji systemu w części cyklu
produkcyjnego, redukując
całkowite koszty wytwarzania.
Po przejściu cyklu testów z
wynikiem pozytywnym układy
ISP mogą być reprogramowane
do swojej normalnej konfiguracji.

background image

10

System ISP -

JTAG

Wielofukcyjność systemów
wykorzystujących układy ISP
(Multi-Function Hardware)
Układy ISP, zapewniając możliwość
reprogramowania układu umieszczonego w
systemie, pozwalają na realizację fizyczną
cyfrowych systemów wielofunkcyjnych.
Wytwarzanie układów wielofunkcyjnych,
pozwala wytwórcy zredukować liczbę różnych
wersji systemu, upraszczając tym samym
proces wytwarzania. Poprzez wielofunkcyjność
systemu zmniejsza się nie tylko liczbę różnych
wersji, ale także liczbę różnych elementów
stosowanych w procesie produkcji, co obniża
całkowite koszty wytwarzania. Przykład
systemu zawierającego dwa procesory,
współdziałającego z interfejsami różnych typów
najlepiej ilustruje ten problem.
Rozwiązanie tradycyjne wymaga
dedykowanych układów logicznych dla każdego
interfejsu oddzielnie, co zwykle prowadzi do
realizacji wielu wersji układowych. Stosowanie
układów ISP umożliwia projektantowi
zaprojektowanie jednego specjalnego
interfejsu, który może być rekonfigurowany
bezpośrednio w systemie tworząc potrzebny w
danej chwili standard interfejsu, oszczędzając
liczbę wykorzystywanych elementów i
redukując koszty.

background image

11

System ISP - JTAG

Programowanie układów firmy
Xilinx

background image

12

System ISP - JTAG

Konfigurowanie układów firmy
Xilinx

background image

13

System ISP - JTAG

Interfejs JTAG – iMPACT
Dla układów ISP XILINX.

Wysyła pliki JTAG
w różnych formatach –
także w formacie SVF
(Serial Vector Format)

background image

14

System ISP -

JTAG

Architektura
JTAG

Sterownik TAP
Reaguje na sekwencje
przekazywane przez port kontrolny
(Test Access Port) generując także
sygnał zegarowy i sygnały
kontrolne potrzebne dla innych
bloków.
Rejestr Instrukcji
Jest to rejestr przesuwny
odpowiedzialny za wybór
wykonywanej kolejno operacji.
Rejestr Danych
Rejestr ten stanowi grupę
rejestrów przesuwnych,
wybieranych przez rejestr
instrukcji.

background image

15

System ISP - JTAG

Podstawowa
komórka rejestru
skanującego BSC
dla układów:
Stratix, Stratix GX,
Cyclone & APEX II
firmy Altera.

background image

16

System ISP - JTAG

Podstawowa
komórka rejestru
skanującego BSC
dla układów FPGA
firmy Xilinx.

background image

17

System ISP - JTAG

• Instrukcje i dane są przesyłane do wejścia TDI, i na zewnątrz przez TDO
• Stany sterownika TAP są zdeterminowane przez sekwencję na linii TMS
• Sygnał TCK taktuje FSM i inne elementy systemu testującego

• Sygnał TRST stanowi asynchroniczne zerowanie - reset

Standard IEEE 1149.1

background image

18

System ISP - JTAG

TDI – (Test Data Input) – wejście szeregowe

(dane są przesuwane narastającym
zboczem
TCK),

• TDO – (Test Data Output) – wyjście
szeregowe
(dane są przesuwane opadającym zboczem
sygnału TCK),

• TMS – (Test Mode Select) – wejście
sterujące
(musi być ustawione przed narastającym
zboczem sygnału TCK),

• TCK – (Test Clock Input) – wejście zegarowe
układu testującego,

TRST – (Test Reset Input) – wejście
zerowania
układu testującego (stan aktywny niski) –
sygnał
ten nie musi być wykorzystywany.

Sterownik TAP

Zwykle stosuje się
rezystory podciągające dla
linii TMS i TDI oraz
ściągający dla linii TCK.

background image

19

System ISP - JTAG

background image

20

System ISP - JTAG

Rejestr identyfikacyjny jest
dodatkowym rejestrem
zawierającym 32 bitowy
identyfikator o nastepującej
strukturze:
• Bit 0 (LSB) ma zawsze wartość
1
• Bity 1 do 11 określają
producenta • Bity 12 to 27
zawierają 16 bitowy numer
układu
• Bity 28 do 31 pozwalają na
identyfikację typu układu.

background image

21

System ISP - JTAG

Format 32-bitowego identyfikatora
- ID

Fairchild

Układy
nieprogramowal
ne

Altera

Układy
programowaln
e

background image

22

System ISP - JTAG

Sterownik TAP stanowi 16
stanową maszynę stanów
FSM.

Kabel programatora (ispDOWNLOAD
cable) powinien być jak najkrótszy i
nie powinien być dłuższy niż 2m
.
Zaleca się stosowanie buforów: 74LS244 i
74LS367. Bufor nie może być zbyt szybki z
uwagi na możliwość pojawienia się odbić
sygnału. Tradycyjnie układy PLD są
programowane za pomocą specjalnych
programatorów, które same generują
wszystkie niezbędne sygnały a także,
wytwarzają wymagane wysokie napięcie
(typowo 12-14 V). Układy ISP posiadają
zdolność wytwarzania tego napięcia z
napięcia 3.3 V lub 5 V. Ta zdolność pozwala
na programowanie układów ISP przez
prosty interfejs.

background image

23

System ISP - JTAG

Sterownik TAP

background image

24

System ISP - JTAG

background image

25

System ISP - JTAG

Parametry portu TAP dla układów Virtex - Xilinx

background image

26

System ISP - JTAG

Zastosowanie
interfejsu JTAG
dla układów
programowalny
ch

background image

27

System ISP - JTAG

Interfejs JTAG dla
układów
programowalnych
firmy Xilinx

background image

28

System ISP - JTAG

Sterownik TAP

background image

29

System ISP - JTAG

Sygnały sterownika
TAP

background image

30

System ISP - JTAG

Wówczas, kiedy sterownik TAP jest w
trybie TEST_LOGIC/RESET, pozostała
część układu wykonuje normalne
operacje a system skanowania
krawędziowego pozostaje wyłączony.
Po włączeniu zasilania sterownik TAP
ustawia się w tryb
TEST_LOGIC/RESET. Tryb ten może
być również wymuszony utrzymując
stan wysoki na linii TMS przez pięć
kolejnych cykli zegara TCK lub
asynchronicznie - poprzez sygnał
TRST jeżeli taki jest doprowadzony.
Przechodząc do procedury IEEE Std.
1149.1 należy wprowadzić kod
operacji do rejestru instrukcji
(SHIFT_IR). Linia TMS jest wówczas
taktowana przy stanach 01100.

Rejestr danych Rejestr
instrukcji

background image

31

System ISP - JTAG

Format SVF jest wykorzystywany do realizacji operacji szeregowej
transmisji bitów konfiguracyjnych poprzez interfejs JTAG. Operacji tej dla
układów firmy Xilinx dokonuje program iMPACT lub specjalny
programator JTAG. Pliki w formacie SVF są plikami tekstowymi ASCII, co
ułatwia ich modyfikację i odczyt. Mogą być one pisane za pomocą
dowolnego edytora tekstowego.
Format XSVF jest formatem specjalnym wprowadzonym przez firmę
Xilinx dla plików SVF o bardziej zwartej binarnej postaci. Pliki XSVF maja
postać optymalna z punktu widzenia operacji wykonywanych przez
sprzęg JTAG.
Pliki XSVF są generowane przy pomocy translatora plików SVF2XSVF,
który wykorzystuje pliki SVF napisane przy pomocy edytora iMPACT lub
programatora JTAG jako pliki wejściowe.

Fragment pliku
XSVF

background image

32

System ISP - JTAG

Podstawowe instrukcje dla formatu SVF
Przesuwanie informacji do rejestru Instrukcji i rejestru danych odbywa się przy
użyciu dwóch instrukcji:
1. Skanowanie rejestru instrukcji (Scan Instruction Register - SIR)

SIR długość TDI (wejście) TDO (wyjście) SMASK (maska skanująca);

gdzie:
długość – oznacza liczbę bitów wprowadzanych do rejestru w stanie Shift-IR.
TDI – oznacza wprowadzany w stanie Shift-IR ciąg bitów.
SMASK – oznacza nieistotne bity “don’t care” w ciagu bitowym.
2. Skanowanie rejestru danych (Scan Data Register - SDR)

SDR długość TDI (wejście) SMASK (maska skanująca) [TDO (wyjście)
MASK (maska)
];

gdzie:

długość – oznacza liczbę bitów wprowadzanych do rejestru w stanie Shift-DR.
TDI – oznacza wprowadzany w stanie Shift-DR ciąg bitów.
SMASK – oznacza nieistotne bity “don’t care” w ciagu bitowym (1 = istotny, 0
= nieistotny).
TDO – oznacza wyprowadzany przez TDO ciąg bitów w stanie Shift-DR.
MASK – oznacza nieistotne bity “don’t care” w ciagu bitowym na wyjściu TDO
(1 = istotny, 0 = nieistotny).
3. Instrukcja RUNTEST – określa jak długo sterownik TAP musi pozostać w
stanie Run-Test-Idle, dla wykonania algorytmu programowania określonych
układów programowalnych.

RUNTEST run_count TCK

; gdzie: run_count TCK – oznacza liczbę cykli

zegara.

background image

33

System ISP - JTAG

1. SIR 8 TDI (fe) ;
Przesuwa ciąg bitów “11111110” do rejestru instrukcji.
2. SDR 32 TDI (00000000)
Przesuwa 32 zera poprzez rejestr danych, wyprowadzając 32-bitowy kod identyfikacyjny
- IDCODE.
Dla układu XC9572XL na wyjściu TDO powinien pojawić się kod identyfikacyjny o
postaci - 0xf9604093.

Uwaga! - Instrukcje SVF SIR i SDR nie pokazują w jaki sposób zmusić sterownik TAP do
przejścia w stan Shift-IR lub Shift-DR. Ta informacja jest zawarta w standardzie SVF, i
musi być rozumiana przez program odczytujący plik SVF.

background image

34

System ISP - JTAG

Kiedy łańcuch JTAG liczy kilka układów, wówczas operacje są zwykle wykonywane
na poszczególnych układach w oddzielnych przedziałach czasowych. Jednakże,
ponieważ sygnały TMS i TCK są doprowadzone do wszystkich układów równolegle
nie można zmieniać stanów sterowników TAP poszczególnych układów niezależnie.
Jeżeli jakaś instrukcja jest wprowadzana (przesuwana) do jednego układu z
łańcucha inne instrukcje muszą być wprowadzone do pozostałych układów
(ponieważ każdy sterownik TAP będzie jednocześnie w stanie Shift-IR).

background image

35

System ISP - JTAG

W celu wyprowadzenia 32-bitowego identyfikatora z jednego z rejestrów
instrukcji oraz przejścia dwóch jednobitowych rejestrów obejściowych należy
34 razy powtórzyć operację przesuwania. Na wyjściu pojawi się 40 bitów,
ponieważ 6 dodatkowych bitów potrzebnych jest do ustawienia sterownika TAP
w określonym stanie.

background image

36

System ISP - JTAG

Podczas przesyłania instrukcji do określonego układu wysyłana jest do
pozostałych układów instrukcja obejścia (Bypass). Norma IEEE 1149.1
wymaga aby wypełnienie wszystkich bitów rejestru instrukcji jedynkami
było traktowane jako instrukcja obejścia. Instrukcja ta ma zatem różną
długość zależną od długości rejestru instrukcji dla różnych układów.

background image

37

System ISP - JTAG

Wybrany został układ XC9572XL, a w pozostałych układach
pomiędzy wejście TDI i wyjście TDO wstawiony został
jednobitowy rejestr obejściowy.

background image

38

System ISP - JTAG

1) Instrukcja przesuń 0x1fffdf (1_1111_1111_1111_1101_1111) do
połączonych włąńcuch rejestrów instrukcji oznacza:

XC18V02 IR <= “11111111” (Bypass)
XC9572XL IR <= “11111110” (IDCODE)
V150 IR <= “11111” (Bypass)

Długość rejestru IR układu V150 wynosi 5 bitów, a rejestru IR układów
XC18V02 i
XC9572XL po 8 bitów. Wartość maski SMASK wskazuje, że wszystkie 21
bitów doprowadzonych do TDI ma istotne znaczenie.

background image

39

System ISP - JTAG

2) Ustawia sterownik TAP na odczyt rejestru danych i poprzez 34
takty zegara wyprowadza zawartość dwóch rejestrów obejściowych
i 32-bitowego rejestru identyfikacyjnego ID. Wyjściowy ciąg bitowy
składa się z 34 bitów pobranych z rejestrów danych i 6-ciu
dodatkowych bitów potrzebnych dla ustawienia sterownika TAP, co
daje razem 40 bitów wyprowadzonych poprzez TDO.

background image

40

System ISP - JTAG

Interfejs JTAG – VM

Dla układów ISP
Lattice.

background image

41

System ISP - JTAG

Lattice

Sygnały JTAG/ISP
TDO/SDO – Szeregowe wyjście
danych,
TDI/SDI - Szeregowe wejście danych,
TCK/SCLK – Wejście zegara,
TMS/MODE – Wejście sterujące
(tryb),
TRST/RESET – Wejście zerujące
asynchroniczne,
ispEN/BSCAN – Wejście kontrolne

background image

42

System ISP - JTAG

background image

43

System ISP - JTAG

Podstawowe instrukcje JTAG:

SAMPLE/PRELOAD – Umożliwia przechwytywanie stanów na
wyprowadzeniach układu i testowanie podczas normalnej pracy układu.
EXTEST – Umożliwia testowanie poprzez wymuszanie stanów testowych na
wyjściach układu i przechwytywanie wyników testu na wejściach.
BYPASS – Umieszcza jednobitowy rejestr obejściowy pomiędzy
wyprowadzeniami TDI i TDO, co umożliwia synchroniczny przepływ danych
poprzez wybrany układ do układu sąsiedniego podczas normalnej pracy
układu.
IDCODE – Wybiera rejestr IDCODE i umieszcza go miedzy wyprowadzeniami
TDI i TDO, umożliwiając szeregowy odczyt rejestru IDCODE poprzez TDO.
USERCODE – Wybiera rejestr USERCODE i umieszcza go miedzy
wyprowadzeniami TDI i TDO, co umożliwia szeregowy odczyt rejestru
USERCODE poprzez TDO.
CLAMP - Umieszcza 1-bitowy rejestr obejściowy między wyprowadzeniami
TDI i TDO, co umożliwia synchroniczny przepływ danych przez układ do
układu sąsiedniego podczas normalnej pracy w czasie kiedy stany na
wejściach i wyjściach układu są określone poprzez rejestr skanujący.
HIGHZ - Umieszcza 1-bitowy rejestr obejściowy między wyprowadzeniami
TDI i TDO, co umożliwia synchroniczny przepływ danych przez układ do
układu sąsiedniego podczas normalnej pracy w czasie kiedy wszystkie
wyprowadzenia układu przyjmują trzeci stan.

background image

44

System ISP - JTAG

Wprowadzenie danych do rejestru
instrukcji

Po pierwszym
opadającym zboczu
zegara koniec
trzeciego stanu na
TDO.

Po poprawnym wprowadzeniu kodu do
rejestru instrukcji i ustawieniu linii TMS w
stan wysoki sterownik przechodzi w stan
EXIT1_IR a linia TDO zostaje ustawiona w
stan trzeci.

background image

45

System ISP - JTAG

Instrukcja – Sample
/ Preload

background image

46

System ISP - JTAG

W trybie SAMPLE/PRELOAD kod instrukcji jest wprowadzany poprzez wyprowadzenie
TDI. Sterownik TAP przechodzi do stanu CAPTURE_DR a potem do stanu SHIFT_DR, w
którym pozostaje w czasie kiedy linia TMS jest w stanie niskim. Dane przesuwane na
zewnątrz poprzez wyprowadzenie TDO składają się z danych, które były w rejestrach
przechwytujących po fazie przechwytywania. Rysunek pokazuje, że kod instrukcji z
wejścia TDI nie pojawia się na wyjściu TDO dopóki dane z rejestru przechwytującego
nie zostaną wyprowadzone na zewnątrz. Kiedy linia TMS jest w stanie wysokim w
czasie kolejnych dwóch cykli zegara TCK, sterownik TAP przechodzi w fazę
uaktualniania , czyli do stanu UPDATE_DR.

background image

47

System ISP - JTAG

W fazie
przechwytywania -
Capture Phase:

Dane z wejść OEJ i OUTJ
są wpisywane do rejestru
przechwytującego.

Sygnał zegara dla
rejestru - CLOCK jest
pobierany z wyjścia
CLOCKDR sterownika TAP.

Dane pozostające w tym
rejestrze są pozyskiwane
podczas normalnej pracy
układu.

background image

48

System ISP - JTAG

W fazie przesuwania i
uaktualniania - Shift &
Update:

Wcześniej przechwycone
sygnały z wejść OEJ i OUTJ są
przesuwane na zewnątrz
przez TDO w takt zegara
CLOCK.

Kiedy dane są przesuwane
na zewnątrz, następne dane
testowe są wprowadzane
poprzez TDI.

W tej fazie dane są
transferowane z rejestru
przechwytującego do
uaktualnionego z
wykorzystaniem linii zegara
UPDATE.

Dane z rejestru UPDATE
mogą być wykorzystane w
czasie wykonywania instrukcji
EXTEST.

background image

49

System ISP - JTAG

Instrukcja - Extest

background image

50

System ISP - JTAG

W trybie EXTEST dane są pobierane inaczej niż w trybie SAMPLE/PRELOAD. Dane z
rejestru uaktualnionego są wybierane jako źródło dla wyjścia INJ i sygnału
udostępnienia wyjścia. Kiedy układ realizuje instrukcję EXTEST multipleksery
wybierają dane z rejestru uaktualnionego, zawierającego dane wpisane podczas
realizacji poprzednich cykli EXTEST lub SAMPLE/PRELOAD. W fazie przechwytywania
dane wpisywane są do rejestru przechwytującego po czym są przesuwane poprzez
TDO w fazie przesuwania. Nowe dane testowe są wpisywane do rejestru
uaktualnianego w fazie uaktualniania.

background image

51

System ISP - JTAG

W fazie
przechwytywania -
Capture Phase:

Dane z wejść OEJ i OUTJ
są wpisywane do rejestru
przechwytującego.

Sygnał zegara dla
rejestru - CLOCK jest
pobierany z wyjścia
CLOCKDR sterownika TAP.

Wcześniej zapisane dane
w rejestrze uaktualnionym
sterują komórkami IO, INJ i
przy stanie “1” na wejściu
OEJ rejestr „update”
ustawi bufor w stan trzeci.

background image

52

System ISP - JTAG

W fazie przesuwania i
uaktualniania - Shift &
Update:

Wcześniej przechwycone
sygnały z wejść OEJ i OUTJ są
przesuwane na zewnątrz
przez TDO w takt zegara
CLOCK.

Kiedy dane są przesuwane
na zewnątrz, następne dane
testowe są wprowadzane
poprzez TDI.

W tej fazie dane są
transferowane z rejestru
przechwytującego do
uaktualnionego z
wykorzystaniem linii zegara
UPDATE.

Rejestr uaktualniony steruje
komórkami IO, INJ i pozwala
na wymuszenie trzeciego
stanu na wyprowadzeniu I/O.

background image

53

System ISP - JTAG

Instrukcja - Intest

background image

54

System ISP - JTAG

Instrukcja - Bypass

background image

55

System ISP - JTAG

W trybie BYPASS dane wejściowe z wejścia TDI są przesuwane dodatnim zboczem
zegara TCK poprzez rejestr obejściowy, po czym są przesuwane do wyjścia TDO
opadającym zboczem tego samego impulsu zegarowego.

background image

56

System ISP - JTAG

Instrukcja - Clamp

background image

57

System ISP - JTAG

Instrukcja - Higz

background image

58

System ISP - JTAG

Instrukcja - Runbist

background image

59

System ISP - JTAG

Instrukcja - Idcode

background image

60

System ISP - JTAG

Instrukcja -
Usercode

background image

61

System ISP - JTAG

Program iMPACT
firmy Xilinx
wykorzystuje
format SVF (Serial
Vector Format).

background image

62

System ISP - JTAG

AG – Generator
adresu
PSC – Programowalny
sterownik
PDS –
Programowalny
multiplekser
DATA – Rejestr danych
PFSM –
Programowalna
FSM

Szybki sterownik FAC
(Fast Access Controller)
dla systemu IEEE 1149.1
(Zegar – 3MHz)

background image

63

System ISP - JTAG

Kody instrukcji dla języka
BSDL (Boundary Scan
Description Language).

background image

64

System ISP - JTAG

Instrukcje BS realizowane przez układy
firmy Lattice Semiconductor.

background image

65

System ISP - JTAG

background image

66

System ISP - JTAG

Kody identyfikacyjne ID, dla układów
Virtex firmy Xilinx

background image

67

System ISP - JTAG

System ACE (Advanced
Configuration Environment) firmy
Xilinx wykorzystujący interfejs
JTAG.

background image

68

System ISP - JTAG

Interfejs
równoległy ISP-
JTAG

background image

69

System ISP - JTAG

background image

70

System ISP - JTAG

Byte
Blaster
II Altera

background image

71

System ISP - JTAG

Byte
Blaster
II Altera

background image

72

System ISP - JTAG

Sterownik
JTAG portu
równoległego
Corelis

background image

73

System ISP - JTAG

Lattice

Sygnały wykorzystywane w łańcuchu skanującym (TCK, TMS, TDI, oraz TDO)
są przesyłane z taką prędkością jak dane w układzie realizowanym.
Jakkolwiek muszą być spełnione warunki terminowania i buforowania
przedstawione wcześniej. Niektóre układy mają specjalne wyprowadzenia
które ułatwiają programowanie.
Do programowania układów wykorzystuje się komputer klasy PC, specjalny
kabel oraz program CAD (np. ispVM). W systemie łańcucha skanującego
wykorzystywany jest czteroprzewodowy interfejs TAP. Linie TCK i TMS są
wspólne dla wszystkich programowanych układów w łańcuchu. Sygnały TDI
i TDO są przekazywane łańcuchowo z jednego układu do następnego.
Wejście łańcucha stanowi wyprowadzenie TDI a wyjście wyprowadzenie
TDO.

background image

74

System ISP - JTAG

Programowanie układów CPLD jest podobne do programowania
układów pamięci typu EPROM lub FLASH. Układ jest traktowany jako
matryca, która ma być zaprogramowana wiersz po wierszu.

Lattice

background image

75

System ISP - JTAG

Xilin
x

background image

76

System ISP - JTAG

Xilin
x

background image

77

System ISP - JTAG

Alter
a

background image

78

System ISP - JTAG

Alter
a

background image

79

System ISP - JTAG

Programowanie „jednoprzewodowe” (one-wire ISP)
Stowarzyszenie Infrared Data Association (IrDA), opracowało standard ISP-IrDA dostosowując
system ISP do standardów komunikacyjnych IrDA, dotyczących przesyłania sygnałów w
zakresie podczerwieni. Standard ten umożliwia zastąpienie tradycyjnych cztero lub
pięcioprzewodowych interfejsów, interfejsem jednoprzewodowym dostosowanym do
standardu IrDA.
W wielu przypadkach, a w szczególności dotyczy to układów ISP wykorzystywanych w
telekomunikacji, stosowanie interfejsów cztero lub pięcioprzewodowych nie jest praktyczne.
Firmy telekomunikacyjne chcą mieć możliwość reprogramowania układów poprzez
standardowe łącza telefoniczne.

background image

80

System ISP - JTAG

W przypadku połączenia sygnałów ISP w jeden bajt, nie ma między nimi
żadnego konfliktu. Każdy bit ISP, zajmuje określoną pozycję w przesyłanym
szeregowo bajcie ISP. Metoda ta wprawdzie uniemożliwia szybką transmisję
danych, ponieważ wymaga przesłania całego bajtu w celu zmiany jednego
sygnału ISP, ale umożliwia łatwe dekodowanie sygnałów ISP. Po przypisaniu
wszystkich sygnałów ISP konieczna jest konwersja danych z postaci
równoległej do szeregowej i na odwrót. Odpowiedni układ sterujący
(controller) musi znaleźć się także po stronie układu programowalnego ISP
aby zapewnić kontrolę nad układem interfejsu oraz możliwość ponownej
konwersji danych do postaci równoległej. Podczas programowania układów
ISP sposób komunikacji między komputerem a układem zmienia się, z
komunikacji równoległej dwukierunkowej, stosowanej w metodzie
tradycyjnej na szeregową w trybie pół duplexu, co zabezpiecza
transmisję przed ewentualnym konfliktem.

background image

81

System ISP - JTAG

Należy podkreślić, że w przypadku programowania układów ISP
większość sygnałów jest skierowana do układu
programowanego
. Sygnał wyjściowy SDO jest
wykorzystywany do odczytu numeru identyfikacyjnego ID
układu, w celu weryfikacji przesłanych do układu danych oraz
do połączenia układów w łąńcuch (daisy chain). Sterowanie
transmisją w trybie pół duplexu jest dość skomplikowane. Dla
uproszczenia sterowania transmisją wykorzystuje się wolny Bit
7
w celu żądania dostępu do linii SDO.

background image

82

System ISP - JTAG

Kiedy Bit 7 jest w stanie ‘1’, wówczas jeden bit z wyjścia SDO
jest odczytywany i wysyłany przez interfejs. Dla przykładu, gdy
komputer odczytuje bajty identyfikacyjne układu ID, zaczynając
od pierwszego bitu ID, wysyła sygnał żądania dostępu do linii
SDO. Następnie komputer czeka na bit wysłany z linii SDO
poprzez interfejs. Następny łańcuch szeregowo przesyłanych
bajtów przesuwa następny bit identyfikatora ID na linię SDO.
Komputer znowu żąda dostępu do linii SDO i czeka na
odpowiedź. Ten proces jest kontynuowany aż do całkowitego
odczytania identyfikatora.

background image

83

System ISP - JTAG

Schemat systemu ISP-
IrDA

Dla umożliwienia dokonania operacji programowania układów
ISP za pośrednictwem specjalnych układów sterujących
wykorzystuje się program (ispCODE™) napisany w języku C dla
systemu operacyjnego DOS. Program ten służy do
programowania układów ISP poprzez port równoległy
komputera. Stosowanie tego programu wymaga specyfikacji
pliku (w linii poleceń) zawierającego mapę bitową w formacie
ispSTREAM™ dla każdego programowanego układu.

background image

84

System ISP - JTAG

Schemat systemu ISP-
IrDA

Format pliku ispSTREAM jest specjalnym formatem firmy Lattice
zawierającym mapę bitową w formacie JEDEC (po kompresji) oraz
specjalne instrukcje wykorzystywane przez program w celu
zaprogramowania układów połączonych w łańcuch. Użytkownik musi
napisać także krótki plik tekstowy zwany DLD, wskazujący na numer
układu (typ), jego miejsce w łańcuchu, typ operacji do wykonania.
Większość nowych lap-top’ów posiada wbudowany interfejs IrDA
jako drugi port szeregowy. To upraszcza cały proces, ponieważ
interfejs IrDA jest automatycznie inicjalizowany po wyborze
odpowiedniego adresu portu. Stosując wersję programu ispCODE
3.05 lub późniejszą konieczne są tylko drobne modyfikacje.

background image

85

System ISP - JTAG

Programowanie przez
internet

background image

86

System ISP - JTAG

USB
Blast
er
Alter
a

MAX 7000
CPLD

background image

87

System ISP - JTAG

Sterowni
k USB
firmy
Corelis

background image

88

System ISP - JTAG

Wyniki testowania
połączenia między układami
U1 i U2

background image

89

System ISP - JTAG

Architektura systemu do testowania układów CASCON-
GALAXY® firmy Goepel

background image

90

System ISP - JTAG

Sterownik
skanera
krawędziowego
z magistralą
PCI
PSC 1149.1-B

background image

91

System ISP - JTAG

System skanera
krawędziowego
firmy Intelltech

background image

92

System ISP - JTAG

System BIST
firmy Intelltech
przeznaczony
dla układów
firm: Altera i
Xilinx

background image

93

System ISP - JTAG

Sterownik JTAG - SCANSTA 101 firmy National Instruments

background image

94

System ISP - JTAG

JTAG multiplekser SCANSTA 112 firmy National
Instruments

background image

95

System ISP - JTAG

Schemat ideowy
multipleksera JTAG
SCANSTA 112 firmy National
Instruments

background image

96

System ISP - JTAG

Sterowni
k PCI
firmy
Corelis

background image

97

System ISP - JTAG

ScanPlus
Flash™
System ISP-
JTAG firmy
Corelis

background image

98

System ISP - JTAG

Architektura SPACE firmy Goepel
Electronic

background image

99

System ISP - JTAG

Kontrolery firmy Goepel Electronic


Document Outline


Wyszukiwarka

Podobne podstrony:
System finansowy w Polsce 2
Systemy operacyjne
Systemy Baz Danych (cz 1 2)
Współczesne systemy polityczne X
System Warset na GPW w Warszawie
003 zmienne systemowe
elektryczna implementacja systemu binarnego
09 Architektura systemow rozproszonychid 8084 ppt
SYSTEMY EMERYTALNE
3 SYSTEMY LOGISTYCZNE
modelowanie systemow
16 Metody fotodetekcji Detektory światła systematyka
ZINTEGROWANY SYSTEM RATOWNICTWA MEDYCZNEGO(1)
01 Pomoc i wsparcie rodziny patologicznej polski system pomocy ofiarom przemocy w rodzinieid 2637 p
Powstanie systemu Unix

więcej podobnych podstron