A JTAG -t (közös teszt akciócsoport) nemcsak a memória olvasására és a hardver hibakeresésére használják, hanem az adatok chipekhez történő írására is. Ez magában foglalja a villogó firmware -t, a programozási memóriát és az FPGA -k konfigurálását. Ez az oktatóanyag végigvezeti Önt a JTAG használatával, beleértve a beállítást, az eszközöket és a bevált gyakorlatokat, az írás folyamatát.
Mit ír a JTAG?
A JTAG írása a JTAG interfészén keresztül az integrált áramkörre (IC) az adatok programozására vagy villogására utal. Ezt a folyamatot általában használják:
- Villogó firmware vagy bootloaders
- Konfigurációs fájlok írása az FPGA -ra
- A nem felejtő memória programozása (például EEPROM, FLAS)
- A szoftver vagy firmware frissítése beágyazott rendszerekben
A JTAG interfész közvetlen hozzáférést biztosít a chiphez, lehetővé téve a memória és a konfiguráció pontos irányítását.
Mire lesz szüksége
- JTAG adapter: Hardver interfész a JTAG kommunikációhoz (például Segger J-Link, Xilinx platformkábel, OpenOCD által támogatott adapterek).
- Célkészülék: A programozni kívánt chip vagy rendszer.
- Szoftver eszközök: Olyan eszközök, mint az OpenOCD, az Urjtag, a Vivado (a Xilinx-hez) vagy a Segger J-Link szoftvere.
-
Firmware/konfigurációs fájl: A chipre írandó fájl (például
.bin
,.hex
,.svf
). - JTAG pinout dokumentáció: Pinout diagram a cél eszközhöz.
- Csatlakozási kiegészítők: Vezetékek, fejlécek és kenyérlemez (ha szükséges).
1. lépés: A JTAG hardver beállítása
1. Határozza meg a JTAG csapokat
- Olvassa el a chip adatlapját vagy PCB -sémáját a JTAG csapok megtalálásához.
- A közönséges JTAG PIN címkék között szerepel
TDI
,TDO
,TCK
, ésTMS
. - Egyes táblák előre konfiguráltak a JTAG fejléceket (10 és 20 tűs csatlakozók).
2. Csatlakoztassa a JTAG adaptert
- Vezesse be a JTAG adaptert a céleszközre, biztosítva a PIN -kódok helyes csatlakozásait:
-
TDI
(Tesztelési adatok)TDI
-
TDO
(Tesztelje ki az adatokat)TDO
-
TCK
(Teszt óra)TCK
-
TMS
(Teszt módot válassza)TMS
- Föld (
GND
) csatlakoztatni kell.
-
3. Ellenőrizze a feszültségszintet
- Ellenőrizze, hogy a JTAG adapter megegyezik -e a cél eszköz feszültségszintjével (például 3,3 V, 1,8 V).
- Egyes adapterek lehetővé teszik a konfigurálható feszültségbeállításokat.
2. lépés: JTAG szoftveres eszközök telepítése
1. Openocd
Az OpenOCD (Open On-Chip Debugger) egy népszerű nyílt forráskódú eszköz a programozáshoz és a hibakereséshez.
- Telepítse a csomagkezelőn keresztül (pl.
apt install openocd
a linuxon). - Győződjön meg arról, hogy a JTAG adapterét az OpenOCD támogatja.
2. eladó-specifikus eszközök
- Segger J-link: Használja a Segger J-Link szoftvert a JTAG műveletekhez.
- Xilinx Vivado: Ideális a XILINX FPGAS és CPLDS programozásához.
- Intel Quartus: Az Intel/Altera eszközök programozásához.
3. Urjtag
Könnyű eszköz az alapvető JTAG műveletekhez, például firmware írásához.
- Beszerel Urjtag weboldala.
3. lépés: Adatok írása chipre
1. Konfigurálja a JTAG szoftvert
Állítsa be a JTAG konfigurációs fájlt az adapter és a cél eszköz megadásához.
- Példa az OpenOCD konfiguráció egy STM32 chiphez:
source [find interface/jlink.cfg] transport select jtag source [find target/stm32f4x.cfg] init halt
2. Detektálja a céleszközt
Futtasson egy parancsot a JTAG lánc beolvasásához, és ellenőrizze, hogy a céleszköz észlelhető -e.
- Az OpenOCD -hez:
Ellenőrizze az észlelt eszközök kimeneti naplóját.openocd -f interface/jlink.cfg -f target/stm32f4x.cfg
3. Flash firmware
Írja be a firmware fájlt a chipre a JTAG parancsok segítségével.
- Példa az OpenOCD parancsra:
program firmware.bin verify reset exit 0x08000000
-
firmware.bin
: A bináris fájl írni. -
verify
: Biztosítja, hogy az adatok helyesen íródjanak. -
reset
: Visszaállítja az eszközt a programozás után. -
0x08000000
: Indítsa el a címet a memóriában.
-
4. Írja be a konfigurációt egy FPGA -ra
Az FPGA -khoz használja .bit
vagy .svf
fájlok.
- Példa Urjtag parancsok:
cable jtagkey detect svf configure.svf
5. Törölje a memóriát írás előtt
Egyes eszközök villogása előtt szükség van a memória törlésére.
- Példa az OpenOCD parancsra:
flash erase_address 0x08000000 0x10000
4. lépés: A JTAG írásának legjobb gyakorlatai
- Biztonsági másolat a meglévő firmware -t: Az új adatok írása előtt mindig olvassa el és mentse a meglévő firmware -t.
-
Ellenőrizze az adatok integritását: Használja a
verify
parancs a sikeres programozás biztosítása érdekében. - Használjon megbízható kapcsolatokat: Biztosítsa az összes vezetéket az adatok korrupciójának megakadályozása érdekében az írás során.
- Méréses feszültségszintek: Gondoskodjon arról, hogy a JTAG adapter és a céleszköz kompatibilis feszültségszinteket használjon.
- Ellenőrizze az írási védelmet: A programozás előtt letiltja az írásvédelem (ha alkalmazható).
JTAG írás alkalmazásai
- Villogó firmware vagy bootloaders
- FPGA -k vagy CPLD -k programozása
- A beágyazott rendszerszoftver frissítése
- Konfigurációs adatok írása a memóriába
- A firmware valós időben történő fejlesztése és tesztelése
Hibaelhárítás
-
Az eszközt nem észlelték:
- Ellenőrizze a vezetékeket és a pinout -ot.
- Győződjön meg arról, hogy az eszköz táplálkozik és megfelelően földelhető -e.
-
Hibák írása:
- Gondoskodjon arról, hogy a memória régió ne írjon be.
- Ellenőrizze duplán a kezdőcím és a fájl formátumát.
-
Az ellenőrzés kudarcot vall:
- Ellenőrizze, hogy vannak -e megbízható kapcsolatok.
- Használjon lassabb JTAG órasebességet a stabilitás javításához.
Következtetés
A JTAG sokoldalú eszköz firmware írására, a memória és a programozó eszközök alacsony szintű konfigurálására. Az útmutató követésével magabiztosan használhatja a JTAG -t a Flash firmware -hez, frissítheti a szoftvert és konfigurálhatja a hardveret. A JTAG -írás elsajátítása lehetővé teszi a beágyazott rendszerek hatékony fejlesztését és karbantartását!