logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Czy X-Board z Xilinx może działać jako programator JTAG dla zewnętrznych układów?

marenc 22 Kwi 2008 23:22 6278 10
REKLAMA
  • #1 5067092
    marenc
    Poziom 24  
    Posty: 881
    Pomógł: 37
    Ocena: 5
    Witam, post jest zarówno pomysłem jak i pytaniem. Posiadam X-Board z Xilinx'a. Chciałbym go wykorzystać do programowania układów zewnętrznych(taki mały JTAG USB ;) ).

    Jeżeli można podłączyć do łańcucha JTAG dowolne układy, a nie takie same w szeregu to istnieje(moim zdaniem tak) możliwość przerobienia płytki X-Board na programator JTAG dla zewnętrznych układów.

    Aby utworzyć łańcuch należało by wylutować rezystory R45 oraz R54. Następnie połączyć fizycznie pin 2 gniazda J14 z pinem 45 układu IC1 korzystając z padów wcześniej wylutowanych elementów.

    Z moich obserwacji program, który dostałem wraz z płytką(ExPort) pozwala na wyłączanie dowolnego układu w łańcuchu co by mogło świadczyć o możliwości programowania dowolnego układu.

    Pytanie jest następujące ... czy ma to prawo działać? Czy jest ktoś z większym doświadczeniem niż ja, który podjął by się tego wyzwania? Czy jestem kompletnym de*****, że wpadłem na taki poroniony pomysł?

    Tak, wiem ... zawsze można zrobić układ pod LPT, tylko ja go niemam ... i większość z was też już nie ma. W ten sposób można by było mieć teraz programałke za niecałe 99,-zł netto(promocja na te płytki).

    Link do schematu(strona 2 i 3): http://www.kamami.pl/dl/hw_crii_sk_g_sch.pdf
  • REKLAMA
  • #2 5079048
    elektryk
    Poziom 42  
    Posty: 11029
    Pomógł: 439
    Ocena: 240
    Moim zdaniem wszystko zależy od firmware układu procesora i programu sterującego do obsługi JTAG. Technicznie nie ma problemu wpiąć się w łańcuch JTAG i to zadziała, ale oprogramowanie dostarczone z płytą może być w jakiś sposób zablokowane do obsługi jednego układu JTAG, albo do obsługi jednego typu układów.
  • REKLAMA
  • #3 5079097
    marenc
    Poziom 24  
    Posty: 881
    Pomógł: 37
    Ocena: 5
    Witam, programator wbudowany w płytkę jest oparty o mikrokontroler CY7C68013. Podejrzewam, że oszukać by się go dało bez problemu, bo pracuje on w operciu o dane WE/WY magistrali z JTAG. Program do obsługi ExPort podczas wykrywania tego układu pozwala na załadowanie plików JED i SVF, ale ogólna lista plików do programowania pozwala jeszcze na dodawanie plików BIT i MCS. Jak już wcześniej wspomniałem program pozwala na "wyłączenie" określonego układu podczas programowania. Ponadto program najprawdopodobniej korzysta z programatora jako pośrednika, ponieważ nie wymaga on konfiguracji, a podczas wykrywania Chain pojawia się napis "Device 1: XC2C256", co może świadczyć o możliwości wykrywania ich większej liczby.

    Chętnie bym się zabrał za przerobienie tego układu, ponieważ w razie niepowodzenia zworka na złączu JTAG tego układu pozwoliła by na normalną pracę płytki. Posiadam niestety tylko lutownicę kolbową, a lutowanie elementów 0603 raczej może mieć różny skutek.

    Może ktoś przynajmniej sprawdzić czy dobrze napisałem sposób modyfikacji?(pierwszy post) Może ktoś się kiedyś zdecyduje ... a może i ja ;)
  • #4 5079207
    elektryk
    Poziom 42  
    Posty: 11029
    Pomógł: 439
    Ocena: 240
    Co do rezystorków i połączenia między nimi to masz rację pod warunkiem że linia TDO ma kierunek przepływu informacji od układu programowalnego do układu programującego (IC1). Ja mam zawsze z tym nazewnictwem problem ;)
  • REKLAMA
  • #5 5079231
    marenc
    Poziom 24  
    Posty: 881
    Pomógł: 37
    Ocena: 5
    No dokładnie... TDO to linia wyjścia z układu programowalnego. Po modyfikacji nie zgadzał by się opis na płytce, ponieważ TDI(w opisie PCB) pełniło by funkcję TDO, ale to jest drobne nieporozumienie, które by nie wpływało na komfort pracy z takim "programatorem".

    Teraz czekam na programator w oparciu o FT2232, ale jak będzie kiepsko się spisywał to chyba zmuszę się do modyfikacji tej płytki.

    Dzięki za sprawdzenie połączenia ... jak coś to dam znać czy działa ;)
  • #7 5083072
    marenc
    Poziom 24  
    Posty: 881
    Pomógł: 37
    Ocena: 5
    Podany przez Ciebie JTAG jest obsługiwany przez ten sam program co X-Board. Podejrzewam, że jest także zbudowany na mikrokontrolerze CY7. Mając kod do tego układu nie było by problemu, bo ktoś z programatorem do niego zawsze by się znalazł. Na zagranicznych stronach widziałem schemat programatora w oparciu o ten układ i jest on w schemacie X-Board'a.

    Cenowo wychodzi na to samo ... nie licząc tego, że z X-Board'em mamy gratis XC2C256 :D
  • REKLAMA
  • #8 5083729
    firefox_PL
    Poziom 17  
    Posty: 235
    Pomógł: 21
    Ocena: 2
    o ile pamiętam to układy Cypressa z tej serii nie potrzebują programatora, program jest do nich wgrywany bezpośrednio po USB przez programik Cypressa podobnie jak w EZ-USB
  • #9 5083838
    marenc
    Poziom 24  
    Posty: 881
    Pomógł: 37
    Ocena: 5
    http://www.triplespark.net/elec/periph/USB-FX2/ - Schemat "programatora"(w zasadzie I/O pełniące tą funkcję).

    http://volodya-project.sourceforge.net/fx2_programmer.php - strona z informacjami jak zaprogramować układ CY7C

    Szukałem programu, aby spróbować odczytać program z CY7C na mojej płytce, ale nie znalazłem.

    Gdzieś rzuciło mi się w oczy oprogramowanie zgodne z iMPACT, co pozwoliło by na korzystanie tylko z software'u Xilinx'a, ale nie mogę teraz znaleźć tej strony.

    I nasuwa się pytanie ... cel, a koszta ... trzeba by było to dobrze przeliczyć, czy nie bardziej opłaca się zrobić układ zgodny z OpenOCD na FT2232.
  • #10 6251440
    rasz
    Poziom 21  
    Posty: 381
    Pomógł: 31
    Ocena: 10
    marenc napisał:
    Szukałem programu, aby spróbować odczytać program z CY7C na mojej płytce, ale nie znalazłem.


    firmware siedzi w szeregowym eepromie, odczytasz np ponyprogiem

    a tutaj masz uniwersalny firmware
    http://www.ixo.de/info/usb_jtag/#xilinx
    zamienia kabel w USB-Blaster, a ten jest obsługiwany przez masę programów
  • #11 6252549
    irutkows
    Poziom 13  
    Posty: 33
    Pomógł: 6
    rasz napisał:
    marenc napisał:
    Szukałem programu, aby spróbować odczytać program z CY7C na mojej płytce, ale nie znalazłem.


    firmware siedzi w szeregowym eepromie, odczytasz np ponyprogiem


    W EEPROMie to siedzą numery identyfikacyjne, firmware jest ściągany z kompa.

Podsumowanie tematu

✨ Dyskusja dotyczy możliwości wykorzystania płytki X-Board firmy Xilinx jako programatora JTAG do zewnętrznych układów. Technicznie jest to możliwe poprzez modyfikację sprzętową, polegającą na usunięciu rezystorów R45 i R54 oraz odpowiednim połączeniu pinów JTAG, jednak kluczową rolę odgrywa firmware mikrokontrolera CY7C68013, który steruje interfejsem JTAG. Program ExPort dostarczony z płytką pozwala na wyłączanie poszczególnych układów w łańcuchu JTAG oraz obsługuje różne pliki programujące (JED, SVF, BIT, MCS), co sugeruje możliwość programowania wielu układów. Wskazano, że linia TDO powinna być poprawnie skierowana od układu programowalnego do programatora, a modyfikacja może wymagać zmiany oznaczeń na PCB. Alternatywnie rozważano użycie programatora opartego na układzie FT2232 lub gotowych rozwiązań, takich jak kabel JTAG firmy Digilent, który korzysta z oprogramowania Adept Suite. Firmware mikrokontrolera jest przechowywany w EEPROM, a jego modyfikacja lub zastąpienie uniwersalnym firmwarem (np. USB-Blaster) może umożliwić szerszą kompatybilność z narzędziami programistycznymi. Podsumowując, przeróbka X-Board na programator JTAG jest możliwa, ale wymaga znajomości sprzętu, firmware i oprogramowania, a także precyzyjnego lutowania i testów.
Wygenerowane przez model językowy.
REKLAMA