-
X-Received: by 10.50.30.197 with SMTP id u5mr27426igh.5.1442658527629; Sat, 19 Sep
2015 03:28:47 -0700 (PDT)
X-Received: by 10.50.30.197 with SMTP id u5mr27426igh.5.1442658527629; Sat, 19 Sep
2015 03:28:47 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
kq10no5074260igb.0!news-out.google.com!n2ni5532igy.0!nntp.google.com!kq10no5074
257igb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.misc.elektronika
Date: Sat, 19 Sep 2015 03:28:46 -0700 (PDT)
In-Reply-To: <f...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=185.53.155.195;
posting-account=67yd9woAAAAHUu8VHyA7Js47M98NE3m3
NNTP-Posting-Host: 185.53.155.195
References: <55fc85be$0$602$65785112@news.neostrada.pl>
<f...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <7...@g...com>
Subject: Re: Xilinx Spartan 3, "komponent" BSCAN i komunikacja przez JTAG
From: s...@g...com
Injection-Date: Sat, 19 Sep 2015 10:28:47 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.misc.elektronika:686163
[ ukryj nagłówki ]W dniu sobota, 19 września 2015 12:16:59 UTC+2 użytkownik s...@g...com napisał:
> W dniu piątek, 18 września 2015 23:44:32 UTC+2 użytkownik Grzegorz Kurczyk napisał:
> > Witam.
> > Mam pytanie do Kolegów rzeźbiących w FPGA Xilinxa. Próbuję wykombinować
> > loader umożliwiający mi za pośrednictwem JTAG-a wrzucenie danych do
> > wewnętrznej pamieci BlockRAM w FPGA. Poniżej fragment opisujący obsługę
> > sygnałów z BSCAN
> >
> > reg [31:0] JTAG_SR;
> > reg [31:0] JTAG_OUT;
> >
> > BSCAN_SPARTAN3 BSCAN_SPARTAN3_inst (
> > .CAPTURE(BS_CAPTURE), // CAPTURE output from TAP controller
> > .DRCK2(BS_DRCK2), // Data register output for USER2 functions
> > .SEL2(BS_SEL2), // USER2 active output
> > .SHIFT(BS_SHIFT), // SHIFT output from TAP controller
> > .TDI(BS_TDI), // TDI output from TAP controller
> > .UPDATE(BS_UPDATE), // UPDATE output from TAP controller
> > .TDO2(JTAG_SR[0]) // Data input for USER2 function
> > );
> >
> > always @(posedge BS_DRCK2) begin
> > if(BS_SHIFT) begin
> > JTAG_SR <= {BS_TDI, JTAG_SR[31:1]};
> > end
> > end
> >
> > always @(posedge BS_UPDATE) begin
> > if(BS_SEL2) begin
> > JTAG_OUT <= JTAG_SR;
> > end
> > end
> >
> > =====
> >
> > Próbuję to potraktować za pośrednictwem programu iMPACT w trybie
> > wsadowym. Wsad wygląda tak (w łańcuchu JTAG mam jeszcze pamięć
> > konfiguracyjną)
> >
> > setMode -bs
> > setCable -port auto
> >
> > bsdebug -start
> > bsdebug -reset
> >
> > # pamięć na BYPASS, FPGA na USER2
> > bsdebug -scanir 11111111000011 -irlength 14
> >
> > # dane do przeslania, pierwszy bit to BYPASS pamieci konfiguracyjnej
> > bsdebug -scandr 000000000000000000000111100001111 -drlength 33
> > bsdebug -scandr 000000000000000010000011111101100 -drlength 33
> > bsdebug -scandr 000000000000000100000111100001111 -drlength 33
> > bsdebug -scandr 000000000000000110000011001101010 -drlength 33
> > bsdebug -scandr 000000000000001000000111100001111 -drlength 33
> > bsdebug -scandr 000000000000001010000011010000001 -drlength 33
> > bsdebug -scandr 000000000000001100000111100001111 -drlength 33
> > bsdebug -scandr 000000000000001110000011010000110 -drlength 33
> > bsdebug -scandr 000000000000010000000111100001111 -drlength 33
> > bsdebug -scandr 000000000000010010000011010001011 -drlength 33
> > bsdebug -scandr 000000000000010100000111100001111 -drlength 33
> > bsdebug -scandr 000000000000010110000011010010000 -drlength 33
> > bsdebug -scandr 000000000000011000000111100001111 -drlength 33
> > bsdebug -scandr 000000000000011010000011010011000 -drlength 33
> > bsdebug -scandr 000000000000011100000111100001111 -drlength 33
> > bsdebug -scandr 000000000000011110000011011011111 -drlength 33
> > bsdebug -scandr 000000000000100001010000111111111 -drlength 33
> > bsdebug -scandr 000000000000100011101000100010000 -drlength 33
> > bsdebug -scandr 000000000000100100111000000110000 -drlength 33
> > bsdebug -scandr 000000000000100111100000100000001 -drlength 33
> > ... duuuuuuużo linijek z scandr
> > bsdebug -scandr 000001111111110110000000000000000 -drlength 33
> > bsdebug -scandr 000001111111111000000000000000000 -drlength 33
> > bsdebug -scandr 000001111111111010000000000000000 -drlength 33
> > bsdebug -scandr 000001111111111100000000000000000 -drlength 33
> > bsdebug -scandr 000001111111111110000000000000000 -drlength 33
> >
> > bsdebug -stop
> > closeCable
> > quit
> >
> > =======
> >
> > Programator USB DLC9G. Robię kilka prób z tym samym plikiem wsadowym.
> > Czasem to zadziała (zwłaszcza jak jest niewiele linii bsdebug -scandr),
> > ale najczęściej przejdzie kilkadziesiąt pierwszych słów 32-bitowych i
> > przestają się pojawiać sygnały DRCK2 i UPDATE. Często dochodzi do resetu
> > układu lub niekiedy nawet jego przeprogramowania.
> >
> >
> > P.S. Na tym samym sprzęcie (komputer/programator/Xilinx) układ FPGA
> > poprawnie przyjmuje "wsad" przez JTAG-a.
> >
> > --
>
> Najupierdliwsze tematy są właśnie takie jak opisałeś. Nie wiem, czy pomogę w
czymkolwiek pomóc, ale podzielę się własnymi spostrzeżeniami/doświadczeniami.
>
> Jeżeli działa to w sposób losowy, to podejrzewam :
>
> 1) Błąd na Twoim HW, źle dobrane wartości rezystorów/kondziorów/brak terminacji
TCK. Zwróć też uwagę na BUSY/CCLK/PROGRAM_B/DONE/INIT_B. Ja robię na S6 i wygląda to
tak:
>
> http://www.fotosik.pl/zdjecie/pelne/3dce84ab70177997
>
> 2) Przetwornice vs. PCB. Jeżeli masz na iluśtam warstwowej PCB "splitted power
planes'y" i sygnały konfiguracyjne przebiegają nad/pod zmianą GND/VCC, to też może
robić chocki-klocki.
>
> 3) iMPACT - w najnowszej i chyba ostatniej wersji 14.7 są problemy. Nawkurwiałem
się przy tym chyba z tydzień, gdzie jest "bug". Nie wiem i nie chcę wiedzieć. Po
wygenerowaniu bitstreama, używam do wstrzyknięcia iMPACT'a v12.1 i jest OK.
>
> Tyle mogę doradzić... Dej znać staremu chłopu (50+), czy coś sensownego
doradziłem.
=======================
Ooopsss... "czy pomogę w czymkolwiek pomóc" - takie "piękne zdania" wychodzą, jak mi
baba gitarę zawraca w tematach kuchennych podczas odpowiedzi na tematy zdecydowania
niekuchenne :)))
Następne wpisy z tego wątku
- 20.09.15 12:32 Grzegorz Kurczyk
- 25.09.15 01:35 s...@g...com
- 30.09.15 08:31 Grzegorz Kurczyk
Najnowsze wątki z tej grupy
- Czy cos fi przechodzi przez trafo separujące?
- śrubka masy
- Ciekawostka na dziś lock bity
- [OT] napisy w YT
- Było 83V
- Stare komputery
- Odbiornik ADS-B i wzmacniacze
- Thunderbird i dysk...
- opornosc falowa
- Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- Tani zakup z ali?
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML