mikrocontroller.net

Forum: FPGA, VHDL & Co. JTAG Boundary Scan - BSDL-File Aufbau - BS-Cell Beschreibung


Autor: Sabine (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich würde gern mittels BSDL-File sowie JTAG-Interface PortPins
verschiedener Bausteine (rück-)setzen/lesen. Das JTAG Interface steht
soweit. Der ID-Code kann beispielsweise ausglesen werden.

Momentan bin ich auf der Suche nach Dokumentation/Beipsielen, wie ich
BSD(L)-Files interpretieren muss (welche Shift-Befehle müssen generiert
werden, aufgrund der Boundary Scan Register Beschreibung).

die BSDL-Files im Detail beschreiben.
http://downloads.sourceforge.net/jtagpack/libjtag-...

>Vielleicht kennt ihr ja interessante links...
UNIVERSAL SCAN
Youtube-Video "JTAG Training Video: "SPI Flash Programming""
http://www.xilinx.com/support/documentation/applic...
Im Video wird mit dem EXTEST der Pin über Tristate =0 und Pin-BitAddr
geschaltet.
Also ist es möglich die Logik mit dem JTAG-Tab via
der Derivat-Info via BSD-File Deskriptor zu schalten und debuggen .
>Das Interpretieren der BSDLs ist da schon komplexer -verschiedene BS-Cells,
>wo Stehen die "Adressen" der Zellen in BSDL-File, ...)
z.B der physische Pin Pad PAD30 von einem XC3S50_PQ208 ist Bit-Zelle 0
z.B Zeile 2 des BSDL-Files
                                Bit Zelle
" 1 (BC_2, IO_P161, output3, X, (=0=), 1, PULL0)," & -- PAD30


http://www.xilinx.com/support/documentation/applic...
Example (from the xc3s50_pq208.bsd file):

attribute BOUNDARY_REGISTER of XC3S50_PQ208 : entity is
" 0 (BC_2, *, controlr, 1)," &
" 1 (BC_2, IO_P161, output3, X, 0, 1, PULL0)," & -- PAD30
" 2 (BC_2, IO_P161, input, X)," & -- PAD30
Lese mal den XC9536.BSD File der ist nicht so lang.
mfrname,XILINX mfrcode,049 device, XC9536_44VQ bsreg_len, 108 ir_len, 8 
ir_cap, 000XXX01 idcode, 9502
(bsreg_len, 108)  also 108 Register.
Jetz lese ich aber in einem C-Source code für ein
Altera Derivat EP1S10F780 das Beispiel
Parameter : dev_seq, jtag_seq_num, bsc_type */
/* dev_seq: */
/* -device sequence in JTAG chain, starts from 1 */
/* -for the first device in JTAG chain */
/* jtag_seq_num: */
/* -You need to check the jtag_seq_num for the */
/* -targeted IO pin from the targeted device BSDL */
/* -file, which can be downloaded from */
/* -www.altera.com */
/* -For an example, for EP1S10F780, its INIT_DONE */
/* -pin is pin W11. From the EP1S10F780 BSDL file, */
/* -I/O pin W11 is BSC Group 262, so the */
/* -jtag_seq_num for pin W11 is */
/* - jtag_seq_num = max_seq_num - BSC Group number */
/* - jtag_seq_num = 439 - 262 = 177 */ /* -Thus, the jtag_seq_num for 
I/O pin W11 in */
/* -EP1S10F780 is 177
Muss ich jetzt analog zum XC9536
108 - 0 also = 108  um an Bitzelle 0 zu kommen.
Ist somit 108 der index zur Zelle 0 ???
Ich suche über Google CodeSearch
Mit den Stichworten
blackfin BDSL
lang:c IDCODE BSDL
Leider ist das sehr Abstrakt gehalten.
Die Strukturen werden da gefüllt aber ich habe noch keinen Source
File gefunden womit die Gefüllte Struktur an das JTAG-TAP Port geht.

Autor: Sabine (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einfach ist das also nicht.
Der Deskriptor ist in der bsdl_local.h hinterlegt.

z.B

struct cell_info { /* basic cell spec entries */
int bit_num;
char *port_name;
 int cell_function;
char *basic_safe_value;
 /* the disable spec entries */
int ctrl_bit_num;
int disable_safe_value;


Zitat:
Für Boundary Scan benötigst du eine spezielle Software, die meist recht
teuer ist. Dann kannst du deine Netzliste einlesen und ein Testprogramm
generieren lassen, dass dein Board auf Kurzschlüsse usw testet, alle
BS-ICs prüft usw.
Spezielle Hardware brauchst du natürlich auch, muss ja von der Software
unterstützt werden.

Wir verwenden dazu die Software von Göpel Electronic, mit dem
USB-Scanbooster. Ist die einfachste Ausführung, kostete uns allerdingsc
schon ca 25.000 EUR.

Autor: WEIF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ist ein anstrengendes Thema, oder ;o)

Das Setzen und Rücklesen von Portpins ist ja die Idee hinter BST.

Als Literatur hab ich von Parker "The Boundary Scan Handbook". Da gibts 
etwa 50 Seiten über BSDL. Aber auch der "Rest" ist gut beschrieben. Ist 
leider nicht ganz billig.

In welche Richtung willst du : PLD programmieren, Schaltungen testen 
oder Software debuggen ?

Schau mal bei Altera nach STAPL - ist ein Basic mit JTAG (JEDEC JEDS71), 
ein Interpreter ist im Sourcecode verfügbar - JAMPLAYER

Von Goepel gibts einen Boundary Scan Coach zum Runterladen, da kann man 
dem TAP und den Schieberegistern im Single-Step bei der Arbeit zuschauen

Bei asset-intertech.com gibts ein BS Tutorial, hat auch ein paar Seiten 
über BSDL

Links zum Thema BSDL :
jtagtools.sourceforge.net/index.html

Links zum BS
www.jscan.com/jscan_product.htm
www.simtec.co.uk/products/EB675001DIP/files/playxsvf-book/index.html
www.scanseer.com
www.ricreations.com/index.html
fjtag.sourceforge.net

Das sollte fürs erste reichn..

ciao

WEIF

Autor: Chris S. (schris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tolles Thema.
Vielen Dank für die Stapl infos, werde mir einen USB Stapl programmierer
machen, der auch xsvf abspielen kann.

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Handbook gibts in drei Versionen:
ISBN 1402074964 (2003)  77 ... 183 € laut http://de.bookbutler.com
ISBN 0792382773 (1998)
ISBN 0792392701 (1992)

STAPL-Startseite:
http://www.altera.com/support/devices/tools/jam/tls-jam.html

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier kann man etwas mehr blättern als bei Amazon:
http://books.google.de/books?id=aUCgNOpyUbgC&output=html

Bibliotheksbestand laut http://swb.bsz-bw.de/ und 
https://webpac4.bsz-bw.de/WP.mafh.html nur zweimal in Karlsruhe 
Präsenzbestand, die ältere in fünf Städten - schade, das hätte ich mal 
ausgeliehen.

Autor: WEIF (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

von TI gibts auch interessante Literatur

http://focus.ti.com/lit/an/ssya002d/ssya002d.pdf

ciao

WEIF

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.