Rdzeń technologii mikrochipów JTAG Podręcznik użytkownika procesorów debugowania
Wstęp
Rdzeń JTAG Debug v4.0 ułatwia połączenie Joint Test Action Group (JTAG) kompatybilne procesory miękkie z rdzeniem JTAG TAP lub piny wejścia/wyjścia ogólnego przeznaczenia (GPIO) do debugowania. Ten rdzeń IP ułatwia debugowanie maksymalnie 16 procesorów soft core w jednym urządzeniu, a także zapewnia obsługę debugowania procesorów na czterech oddzielnych urządzeniach przez GPIO.
Cechy
Rdzeń JTAGDebugowanie ma następujące kluczowe funkcje:
- Zapewnia dostęp do sieci JTAG interfejs poprzez JTAG UZYSKIWAĆ.
- Zapewnia dostęp do sieci JTAG interfejs poprzez piny GPIO.
- Konfiguruje obsługę kodu IR dla JTAG tunelowanie.
- Obsługuje łączenie wielu urządzeń poprzez złącze JTAG UZYSKIWAĆ.
- Obsługuje debugowanie wieloprocesorowe.
- Promuje oddzielne sygnały zegara i resetowania dla zasobów routingu o niskim skosie.
- Obsługuje resetowanie wartości docelowych typu aktywny-niski i aktywny-wysoki.
- Wspiera jTAG Interfejs monitora bezpieczeństwa (UJTAG_SEC) dla urządzeń PolarFire.
Wersja podstawowa
Ten dokument dotyczy CoreJTAGDebuguj wersję 4.0
Obsługiwane rodziny
- PolarFire®
- RTG4™
- IGLOO® 2
- SmartFusion® 2
- Inteligentna Fuzja
- ProASIC3/3E/3L
- IGLOO
- IGLOOe/+
Wykorzystanie i wydajność urządzenia
Dane dotyczące użytkowania i wydajności są wymienione w poniższej tabeli dla obsługiwanych rodzin urządzeń. Dane wymienione w tej tabeli mają charakter wyłącznie orientacyjny. Ogólne wykorzystanie urządzenia i wydajność rdzenia zależą od systemu.
Tabela 1. Wykorzystanie i wydajność urządzenia
Rodzina | Płytki sekwencyjne | Kombinatoryczny | Całkowity | Wykorzystanie Urządzenie | Całkowity % | Wydajność (MHz) |
PolarFire | 17 | 116 | 299554 | MPF300TS | 0.04 | 111.111 |
RTG4 | 19 | 121 | 151824 | RT4G150 | 0.09 | 50 |
SmartFusion2 | 17 | 120 | 56340 | M2S050 | 0.24 | 69.47 |
IGLOO2 | 17 | 120 | 56340 | M2GL050 | 0.24 | 68.76 |
Inteligentna Fuzja | 17 | 151 | 4608 | A2F200M3F | 3.65 | 63.53 |
IGLOO | 17 | 172 | 3072 | AFL125V5 | 6.15 | 69.34 |
ProASIC3 | 17 | 157 | 13824 | A3P600 | 1.26 | 50 |
Notatka: Dane w tej tabeli uzyskano przy użyciu Verilog RTL z typowymi ustawieniami syntezy i układu na częściach -1. Parametry najwyższego poziomu lub parametry generyczne pozostawiono w ustawieniach domyślnych.
Opis funkcjonalny
Rdzeń JTAGDebugowanie używa UJTAG twarde makro zapewniające dostęp do JTAG interfejs z tkaniny FPGA. UJTAG twarde makro ułatwia podłączenie do wyjścia sterownika MSS lub ASIC TAP z poziomu tkaniny. Tylko jedna instancja UJTAG makro jest dozwolone w tkaninie.
Rysunek 1-1. RdzeńJTAGDiagram blokowy debugowania
Rdzeń JTAGDebugowanie zawiera instancję uj_jtag kontroler tunelu, który implementuje technologię JTAG kontroler tunelu ułatwiający JTAG tunelowanie pomiędzy programistą FlashPro a docelowym procesorem softcore. Procesor softcore jest podłączony poprzez dedykowane złącze JTAG piny interfejsu. Skany w podczerwieni z JTAG interfejsy są niedostępne w strukturze FPGA. Dlatego też protokół tunelowy jest wymagany w celu ułatwienia skanowania w podczerwieni i DR do celu debugowania, który obsługuje standard branżowy JTAG interfejs. Kontroler tunelu dekoduje pakiet tunelowy przesłany jako skan DR i generuje wynikowy skan IR lub DR w oparciu o zawartość pakietu tunelowego i zawartość rejestru IR dostarczonego przez UIREG. Kontroler tunelu dekoduje również pakiet tunelu, gdy zawartość rejestru IR odpowiada jego kodowi IR.
Rysunek 1-2. Protokół pakietów tunelowych
Parametr konfiguracyjny zapewnia konfigurację kodu IR używanego przez kontroler tunelu. Aby ułatwić debugowanie wielu procesorów softcore w ramach jednego projektu, liczbę utworzonych instancji kontrolerów tunelu można konfigurować w zakresie od 1 do 16, co zapewnia JTAG zgodny interfejs dla każdego docelowego procesora. Każdy z tych docelowych procesorów można adresować za pomocą unikalnego kodu IR ustawionego w momencie tworzenia instancji.
Bufor CLKINT lub BFR jest tworzony w linii TGT_TCK każdego interfejsu debugowania procesora docelowego.
Linia URSTB z UJTAG makro (TRSTB) zostało awansowane do rangi zasobu globalnego w CoreJTAGOdpluskwić. Opcjonalny falownik jest umieszczony na linii TGT_TRST w CoreJTAGDebuguj w celu połączenia z celem debugowania, który następnie oczekuje się połączenia ze źródłem aktywnego resetu o wysokim poziomie. Jest konfigurowany, gdy zakłada się, że przychodzący sygnał TRRSTB z gniazda JTAG TAP jest aktywny na niskim poziomie. Jeśli ta konfiguracja wymaga jednego lub większej liczby celów debugowania, zostanie zużyty dodatkowy globalny zasób routingu.
Linia URSTB z UJTAG makro (TRSTB) zostało awansowane do rangi zasobu globalnego w CoreJTAGOdpluskwić. Opcjonalny falownik jest umieszczony na linii TGT_TRST w CoreJTAGDebuguj w celu połączenia z celem debugowania, który następnie oczekuje się połączenia ze źródłem aktywnego resetu o wysokim poziomie. Jest konfigurowany, gdy zakłada się, że przychodzący sygnał TRRSTB z gniazda JTAG TAP jest aktywny na niskim poziomie. TGT_TRSTN jest domyślnym aktywnym niskim wyjściem dla celu debugowania. Jeśli ta konfiguracja wymaga jednego lub większej liczby celów debugowania, zostanie zużyty dodatkowy globalny zasób routingu.
Rysunek 1-3. RdzeńJTAGDebuguj dane szeregowe i taktowanie
Łańcuch urządzeń
Informacje na temat konkretnej płytki rozwojowej lub rodziny można znaleźć w Podręcznikach użytkownika programowania FPGA. Każda płytka rozwojowa może działać przy innej głośnościtages i możesz sprawdzić, czy jest to możliwe na ich platformach programistycznych. Ponadto, jeśli używasz wielu płytek rozwojowych, upewnij się, że mają one wspólną płaszczyznę.
Przez nagłówek FlashPro
Aby obsługiwać łączenie wielu urządzeń w sieci szkieletowej przy użyciu nagłówka FlashPro, należy zastosować wiele instancji uj_jtag są wymagane. Ta wersja rdzenia zapewnia dostęp do maksymalnie 16 rdzeni bez konieczności ręcznego tworzenia instancji uj_jtag. Każdy rdzeń ma unikalny kod IR (od 0x55 do 0x64), który zapewni dostęp do konkretnego rdzenia odpowiadającego kodowi identyfikacyjnemu.
Rysunek 1-4. Wiele procesorów w jednym urządzeniu Pojedyncze urządzenie
Aby korzystać z CoreJTAGDebuguj na wielu urządzeniach, jedno z urządzeń musi zostać urządzeniem głównym. To urządzenie zawiera procesor CoreJTAGRdzeń debugowania. Każdy procesor jest następnie podłączany w następujący sposób:
Rysunek 1-5. Wiele procesorów na dwóch urządzeniach
Aby debugować rdzeń na innej płycie, JTAG sygnały z CoreJTAGDebugowanie jest promowane do pinów najwyższego poziomu w SmartDesign. Są one następnie podłączone do JTAG sygnały bezpośrednio na procesorze.
Notatka: RdzeńJTAGDebugowanie w drugim projekcie płytki jest opcjonalne. Należy pamiętać, że UJ_JTAG makro i nagłówek FlashPro nie są używane w projekcie drugiej płytki.
Aby wybrać procesor do debugowania w SoftConsole, kliknij konfiguracje debugowania, a następnie kliknij kartę Debuger.
Polecenie pokazane na poniższym obrazku zostanie wykonane.
Rysunek 1-6. Konfiguracja debugera UJ_JTAG_IRKOD
UJ_JTAG_IRCODE można zmienić w zależności od debugowanego procesora. Na przykładample: aby debugować procesor w urządzeniu 0, plik UJ_JTAG_IRCODE można ustawić na 0x55 lub 0x56.
Przez GPIO
Aby debugować przez GPIO, parametr UJTAG Wybrano opcję _BYPASS. Za pomocą nagłówków lub pinów GPIO można debugować jeden i cztery rdzenie. Aby uruchomić sesję debugowania przy użyciu GPIO z SoftConsole v5.3 lub nowszej, konfiguracja debugowania musi być skonfigurowana w następujący sposób:
Rysunek 1-7. Konfiguracja debugera GPIO
Notatka: Jeśli debugujesz przez GPIO, nie możesz jednocześnie debugować procesora poprzez nagłówek FlashPro lub Embedded FlashPro5 na płytach rozwojowych. Na przykładampPlik: Nagłówek FlashPro lub Embedded FlashPro5 są dostępne w celu ułatwienia debugowania za pomocą funkcji Identyfikacja lub SmartDebug.
Rysunek 1-8. Debugowanie przez piny GPIO
Łańcuch urządzeń za pomocą pinów GPIO
Aby wspierać łączenie wielu urządzeń za pośrednictwem GPIO, moduł UJTAGNależy wybrać parametr _BYPASS. Następnie sygnały TCK, TMS i TRSTb można promować do portów najwyższego poziomu. Wszystkie procesory docelowe mają TCK, TMS i TRSTb. Nie są one pokazane poniżej.
Rysunek 1-9. Łańcuch urządzeń poprzez piny GPIO
W podstawowym jTAG łańcucha, TDO procesora łączy się z TDI innego procesora i trwa to do momentu, aż wszystkie procesory zostaną połączone w ten sposób. TDI pierwszego procesora i TDO ostatniego procesora łączą się z JTAG programista łączący wszystkie procesory w łańcuch. JTAG sygnały z procesorów kierowane są do CoreJTAGDebuguj, gdzie można je połączyć. Jeśli łączenie wielu urządzeń zostanie zakończone, urządzenie z procesorem CoreJTAGDebugowanie staje się urządzeniem głównym.
W scenariuszu debugowania GPIO, w którym kod IR nie jest przydzielany każdemu procesorowi, do wyboru urządzenia, które ma być debugowane, używany jest zmodyfikowany skrypt OpenOCD. Skrypt OpenOCD został zmodyfikowany w celu wybrania urządzenia, które ma być debugowane. W przypadku projektu Mi-V, file znajduje się w lokalizacji instalacyjnej SoftConsole, w pliku openocd/scripts/board/microsemi-riscv.cfg. W przypadku pozostałych procesorów files znajdują się w tej samej lokalizacji openocd.
Notatka: Opcje konfiguracji debugowania również muszą zostać zaktualizowane, jeśli file zmieniono nazwę
Rysunek 1-10. Konfiguracja debugowania
Otwórz username-riscv-gpio-chain.cfg, poniżej znajduje się przykładample z tego, co trzeba zobaczyć:
Rysunek 1-11. Konfiguracja MIVI File
Poniższe ustawienia działają w przypadku debugowania pojedynczego urządzenia przez GPIO. Do debugowania łańcucha należy dodać dodatkowe polecenia, aby urządzenia, które nie są debugowane, zostały przełączone w tryb obejścia.
W przypadku dwóch procesorów w łańcuchu stosuje się następujące sampwykonywane jest polecenie le:
Umożliwia to debugowanie docelowego procesora softcore 1 poprzez przełączenie docelowego procesora softcore 0 w tryb obejścia. Aby debugować docelowy procesor softcore 0, używane jest następujące polecenie:
Notatka: Jedyna różnica pomiędzy tymi dwiema konfiguracjami polega na tym, że źródło wywołuje konfigurację Microsemi RISCV file (microsemi-riscv.cfg) pojawia się albo jako pierwszy podczas debugowania docelowego procesora softcore 0, albo jako drugi podczas debugowania docelowego procesora softcore 1. W przypadku więcej niż dwóch urządzeń w łańcuchu dodatkowe jtag dodano newtaps. Na przykładample, jeśli w łańcuchu znajdują się trzy procesory, wówczas używane jest następujące polecenie:
Rysunek 1-12. Byłyample System debugowania
Interfejs
W poniższych sekcjach omówiono informacje związane z interfejsem.
Parametry konfiguracji
Opcje konfiguracji dla CoreJTAGDebugowanie opisano w poniższej tabeli. Jeśli wymagana jest konfiguracja inna niż domyślna, użyj okna dialogowego Konfiguracja w programie SmartDesign, aby wybrać odpowiednie wartości dla opcji konfigurowalnych.
Tabela 2-1. RdzeńJTAGOpcje konfiguracji debugowania
Nazwa | Prawidłowy zakres | Domyślny | Opis |
NUM_DEBUG_TGTS | 1-16 | 1 | Liczba dostępnych celów debugowania poprzez FlashPro (UJTAG_DEBUG = 0) wynosi 1-16. Liczba dostępnych celów debugowania poprzez GPIO (UJTAG_DEBUG = 1) wynosi 1-4. |
IR_CODE_TGT_x | 0X55-0X64 | 0X55 | JTAG Kod IR, jeden na cel debugowania. Określona wartość musi być unikalna dla tego celu debugowania. Kontroler tunelu powiązany z tym docelowym interfejsem debugowania steruje tylko TDO i steruje docelowym interfejsem debugowania, gdy zawartość rejestru IR odpowiada temu kodowi IR. |
TGT_ACTIVE_HIGH_RESET_x | 0-1 | 0 | 0: Wyjście TGT_TRSTN_x jest podłączone do globalnej postaci aktywnego-niskiego wyjścia URSTB UJTAG makro.1: Wyjście TGT_TRST jest wewnętrznie połączone z globalną odwróconą formą aktywnego, niskiego wyjścia URSTB UJTAG makro. Jeśli dla dowolnego celu debugowania ten parametr ma wartość 1, zużywany jest dodatkowy globalny zasób routingu. |
UJTAG_OBJAZD | 0-1 | 0 | 0: Debugowanie GPIO jest wyłączone, Debugowanie jest dostępne poprzez nagłówek FlashPro lub wbudowany FlashPro5.1: Debugowanie GPIO jest włączone, Debugowanie jest dostępne poprzez wybrane przez użytkownika piny GPIO na płycie.Notatka: Kiedy debugowanie odbywa się poprzez GPIO, w opcjach debugowania SoftConsole wykonywane jest następujące polecenie debugowania: „—polecenie „set FPGA_TAP N””. |
UJTAG_SEC_EN | 0-1 | 0 | 0: UJTAG makro jest wybrane, jeśli UJTAG_BYPASS = 0. 1: UJTAGMakro _SEC jest wybrane, jeśli UJTAG_OBEJŚCIE= 0.Notatka: Ten parametr dotyczy tylko PolarFire. Oznacza to, że RODZINA = 26. |
Opisy sygnałów
Poniższa tabela zawiera opisy sygnałów dla CoreJTAGOdpluskwić.
Tabela 2-2. Rdzeń JTAGDebuguj sygnały we/wy
Nazwa | Prawidłowy zakres | Domyślny | Opis |
NUM_DEBUG_TGTS | 1-16 | 1 | Liczba dostępnych celów debugowania poprzez FlashPro (UJTAG_DEBUG = 0) wynosi 1-16. Liczba dostępnych celów debugowania poprzez GPIO (UJTAG_DEBUG = 1) wynosi 1-4. |
IR_CODE_TGT_x | 0X55-0X64 | 0X55 | JTAG Kod IR, jeden na cel debugowania. Określona wartość musi być unikalna dla tego celu debugowania. Kontroler tunelu powiązany z tym docelowym interfejsem debugowania steruje tylko TDO i steruje docelowym interfejsem debugowania, gdy zawartość rejestru IR odpowiada temu kodowi IR. |
TGT_ACTIVE_HIGH_RESET_x | 0-1 | 0 | 0: Wyjście TGT_TRSTN_x jest podłączone do globalnej postaci aktywnego-niskiego wyjścia URSTB UJTAG makro.1: Wyjście TGT_TRST jest wewnętrznie połączone z globalną odwróconą formą aktywnego, niskiego wyjścia URSTB UJTAG makro. Jeśli dla dowolnego celu debugowania ten parametr ma wartość 1, zużywany jest dodatkowy globalny zasób routingu. |
UJTAG_OBJAZD | 0-1 | 0 | 0: Debugowanie GPIO jest wyłączone, Debugowanie jest dostępne poprzez nagłówek FlashPro lub wbudowany FlashPro5.1: Debugowanie GPIO jest włączone, Debugowanie jest dostępne poprzez wybrane przez użytkownika piny GPIO na płycie.Notatka: Kiedy debugowanie odbywa się poprzez GPIO, w opcjach debugowania SoftConsole wykonywane jest następujące polecenie debugowania: „—polecenie „set FPGA_TAP N””. |
UJTAG_SEC_EN | 0-1 | 0 | 0: UJTAG makro jest wybrane, jeśli UJTAG_BYPASS = 0. 1: UJTAGMakro _SEC jest wybrane, jeśli UJTAG_OBEJŚCIE= 0.Notatka: Ten parametr dotyczy tylko PolarFire. Oznacza to, że RODZINA = 26. |
Uwagi:
- Wszystkie sygnały w JTAG Powyższa lista portów TAP musi zostać awansowana do portów najwyższego poziomu w SmartDesign.
- Porty SEC są dostępne tylko wtedy, gdy UJTAG_SEC_EN jest włączany poprzez CoreJTAGGUI konfiguracji debugowania.
- Zachowaj szczególną ostrożność podczas podłączania wejścia EN_SEC. Jeśli EN_SEC jest promowany do portu najwyższego poziomu (pin wejściowy urządzenia), należy uzyskać dostęp do opcji Konfiguruj stany we/wy podczas JTAG Sekcja programowania w programie Design w przepływie Libero i upewnij się, że stan I/0 (tylko wyjście) dla portu EN_SEC jest ustawiony na 1.
Mapa rejestru i opisy
Nie ma żadnych rejestrów dla CoreJTAGOdpluskwić.
Przepływ narzędzia
W poniższych sekcjach omówiono informacje związane z przepływem narzędzi.
Licencja
Do korzystania z tego IP Core z Libero SoC nie jest wymagana licencja.
RTL
Do rdzenia i stanowisk testowych dołączony jest kompletny kod RTL, umożliwiający utworzenie rdzenia za pomocą SmartDesign. Symulację, syntezę i układ można wykonać w Libero SoC.
Inteligentny projekt
Byłyamputworzona instancja view z CoreJTAGDebugowanie pokazano na poniższym rysunku. Więcej informacji na temat używania SmartDesign do tworzenia instancji i generowania rdzeni można znaleźć w Podręczniku użytkownika Korzystanie z DirectCore w Libero® SoC.
Rysunek 4-1. SmartDesign CoreJTAGInstancja debugowania View za pomocą jTAG Chodnikowiec
Rysunek 4-2. SmartDesign CoreJTAGDebuguj instancję za pomocą pinów GPIO
Konfiguracja CoreJTAGDebuguj w SmartDesign
Rdzeń konfiguruje się za pomocą konfiguracyjnego interfejsu GUI w SmartDesign. ByłyampPlik GUI pokazano na poniższym rysunku.
Rysunek 4-3. Konfiguracja CoreJTAGDebuguj w SmartDesign
Dla PolarFire, UJTAG_SEC wybiera UJTAGMakro _SEC zamiast UJTAG makro, gdy UJTAG_BYPASS jest wyłączony. Jest ignorowany w przypadku wszystkich pozostałych rodzin.
Liczbę celów debugowania można skonfigurować do 16 celów debugowania za pomocą UJTAG_BYPASS wyłączony i do 4 celów debugowania z UJTAG_BYPASS włączony.
UJTAG_BYPASS wybiera debugowanie przez UJTAG i nagłówek FlashPro oraz debugowanie poprzez piny GPIO.
Docelowy kod IR to JTAG Kod IR nadawany celowi debugowania. Musi to być unikalna wartość z zakresu określonego w Tabela 2-1.
Przepływy symulacji
Wraz z CoreJ dostarczany jest testbench użytkownikaTAGOdpluskwić. Aby uruchomić symulacje:
- Wybierz przepływ środowiska testowego użytkownika w SmartDesign.
- Kliknij opcję Zapisz i wygeneruj w panelu Generuj. Wybierz stanowisko testowe użytkownika z graficznego interfejsu użytkownika konfiguracji podstawowej.
Kiedy SmartDesign generuje projekt Libero, instaluje środowisko testowe użytkownika fileS. Aby uruchomić środowisko testowe użytkownika:
- Ustaw katalog główny projektu na plik CoreJTAGDebuguj instancję w panelu hierarchii projektu Libero.
- Kliknij opcję Weryfikuj wstępnie zsyntetyzowany projekt > Symuluj w oknie Libero Design Flow. Spowoduje to uruchomienie ModelSim i automatyczne uruchomienie symulacji.
Synteza w Libero
Aby uruchomić syntezę:
- Kliknij ikonę Synteza w oknie Libero SoC Design Flow, aby zsyntetyzować rdzeń. Alternatywnie kliknij prawym przyciskiem myszy opcję Syntezuj w oknie Design Flow i wybierz opcję Otwórz interaktywnie. Okno Synteza wyświetla projekt Synplify®.
- Kliknij ikonę Uruchom.
Notatka: W przypadku RTG4 istnieje ostrzeżenie o łagodzeniu zdarzenia przejściowego (SET), które można zignorować, ponieważ ten adres IP jest używany wyłącznie do celów programistycznych i nie będzie używany w środowisku promieniowania.
Miejsce i trasa w Libero
Po zakończeniu syntezy kliknij ikonę Place and Route w Libero SoC, aby rozpocząć proces umieszczania.
Programowanie urządzenia
Jeśli używana jest funkcja UJAG_SEC, a EN_SEC jest promowany do portu najwyższego poziomu (pin wejściowy urządzenia), należy uzyskać dostęp do opcji Konfiguruj stany we/wy podczas JTAG Sekcja programowania w programie Design w przepływie Libero i upewnij się, że stan I/0 (tylko wyjście) dla portu EN_SEC jest ustawiony na 1.
Ta konfiguracja jest konieczna do utrzymania dostępu do JTAG port do przeprogramowania urządzenia, ponieważ zdefiniowana wartość rejestru skanowania granic (BSR) zastępuje dowolny zewnętrzny poziom logiczny na EN_SEC podczas przeprogramowania.
Integracja systemów
W poniższych sekcjach omówiono informacje związane z integracją systemu.
Projekt poziomu systemu dla IGLOO2/RTG4
Poniższy rysunek przedstawia wymagania projektowe do wykonania JTAG debugowanie procesora softcore, znajdującego się w strukturze od SoftConsole do JTAG interfejs dla urządzeń IGLOO2 i RTG4.
Rysunek 5-1. RTG4/IGLOO2 JTAG Projekt debugowania
Projekt na poziomie systemu dla SmartFusion2
Poniższy rysunek przedstawia wymagania projektowe do wykonania JTAG debugowanie procesora softcore, znajdującego się w strukturze od SoftConsole do JTAG interfejs dla urządzeń SmartFusion2.
Rysunek 5-2. SmartFusion2 JTAG Projekt debugowania
UJTAG_SEK
W przypadku rodziny urządzeń PolarFire ta wersja umożliwia użytkownikowi wybór pomiędzy UJTAG i UJTAG_SEC, UJTAGParametr _SEC_EN w GUI zostanie użyty do wybrania żądanego parametru.
Poniższy rysunek przedstawia prosty diagram przedstawiający fizyczne interfejsy UJTAG/UJTAG_SEC w PolarFire.
Rysunek 5-3. PolarFire UJTAG_SEC Makro
Ograniczenia projektowe
Projekty z CoreJTAGDebugowanie wymaga, aby aplikacja przestrzegała ograniczeń w procesie projektowania, aby umożliwić wykorzystanie analizy taktowania w domenie zegara TCK.
Aby dodać ograniczenia:
- Jeśli używany jest przepływ Enhanced Constraint w Libero v11.7 lub nowszym, kliknij dwukrotnie Constraints > Manage Constraints w oknie DesignFlow i kliknij kartę Timing.
- Na karcie Chronometraż w oknie Menedżer ograniczeń kliknij Nowy, aby utworzyć nowy SDC filei nazwij file. Ograniczenia projektowe obejmują ograniczenia źródła zegara, które można wprowadzić w tym pustym SDC file.
- Jeżeli w Libero v11.7 lub nowszym używany jest przepływ Klasycznego wiązania, kliknij prawym przyciskiem myszy opcję Utwórz wiązania > Ograniczenie czasowe w oknie Przebieg projektu, a następnie kliknij opcję Utwórz nowe wiązanie. Tworzy nowe SDC file. Ograniczenia projektowe obejmują ograniczenia źródła zegara, które są wprowadzane w tym pustym SDC file.
- Oblicz okres TCK i półokres. TCK jest ustawione na 6 MHz, gdy debugowanie odbywa się za pomocą FlashPro, i jest ustawione na maksymalną częstotliwość 30 MHz, gdy debugowanie jest obsługiwane przez FlashPro5. Po wykonaniu tego kroku wprowadź następujące ograniczenia w SDC file:
utwórz_zegar -nazwa { TCK } \- okres TCK_PERIOD \
- przebieg { 0 TCK_HALF_PERIOD } \ [get_ports { TCK } ] Np.ample, w przypadku projektu wykorzystującego częstotliwość TCK wynoszącą 6 MHz zastosowano następujące ograniczenia.
utwórz_zegar -nazwa { TCK } \ - okres 166.67 \
- przebieg { 0 83.33 } \ [ get_ports { TCK } ]
- Powiąż wszystkie wiązania files z syntezą, lokalizacją i trasą oraz weryfikacją czasutages w Menedżer ograniczeń > Zakładka Czas. Dokonuje się tego poprzez zaznaczenie odpowiednich pól wyboru dla SDC files, w którym wprowadzono wiązania
Historia rewizji
Nazwa portu | Szerokość | Kierunek | Opis |
JTAG Dotknij portów | |||
TDI | 1 | Wejście | Dane testowe w. Szeregowe wprowadzanie danych z TAP. |
TCK | 1 | Wejście | Zegar testowy. Źródło zegara dla wszystkich kolejnych elementów w CoreJTAGOdpluskwić. |
TMS | 1 | Wejście | Wybierz tryb testowy. |
TDO | 1 | Wyjście | Przetestuj dane. Szeregowe wyjście danych do TAP. |
TRSTB | 1 | Wejście | Resetuj test. Aktywne wejście niskiego resetu z TAP. |
JTAG Docelowe porty X | |||
TGT_TDO_x | 1 | Wejście | Przetestuj dane z celu debugowania x do TAP. Połącz się z docelowym portem TDO. |
TGT_TCK_x | 1 | Wyjście | Przetestuj wyjście zegara, aby debugować cel x. TCK awansuje do rangi globalnej sieci o niskim skosie wewnętrznie w ramach CoreJTAGOdpluskwić. |
TGT_TRST_x | 1 | Wyjście | Reset testu aktywnego-wysokiego. Używane tylko wtedy, gdy TGT_ACTIVE_HIGH_RESET_x =1 |
TGT_TRSTN_x | 1 | Wyjście | Reset testu aktywnego-niskiego. Używane tylko wtedy, gdy TGT_ACTIVE_HIGH_RESET_x =0 |
TGT_TMS_x | 1 | Wyjście | Tryb testowy Wybierz wyjście do debugowania celu x. |
TGT_TDI_x | 1 | Wyjście | Dane testowe w. Szeregowe wprowadzanie danych z celu debugowania x. |
UJTAG_BYPASS_TCK_x | 1 | Wejście | Przetestuj wejście zegara, aby debugować cel x z pinu GPIO. |
UJTAG_BYPASS_TMS_x | 1 | Wejście | Tryb testowy Wybierz, aby debugować docelowy x z pinu GPIO. |
UJTAG_BYPASS_TDI_x | 1 | Wejście | Testuj dane wejściowe, dane szeregowe, aby debugować docelowy x z pinu GPIO. |
UJTAG_BYPASS_TRSTB_x | 1 | Wejście | Resetuj test. Zresetuj wejście, aby debugować cel x z pinu GPIO. |
UJTAG_BYPASS_TDO_x | 1 | Wyjście | Wyjście danych testowych, dane szeregowe z celu debugowania x z pinu GPIO. |
Porty SEC | |||
EN_SEC | 1 | Wejście | Włącza bezpieczeństwo. Umożliwia projektowi użytkownika zastąpienie zewnętrznego wejścia TDI i TRRSTB w TAP.Ostrożność: Zachowaj szczególną ostrożność podczas podłączania tego portu. Więcej szczegółów można znaleźć w uwagach poniżej i Programowaniu urządzenia. |
TDI_SEC | 1 | Wejście | Obejście zabezpieczeń TDI. Zastępuje zewnętrzne wejście TDI do TAP, gdy EN_SEC jest WYSOKIE. |
TRSTB_SEC | 1 | Wejście | Obejście zabezpieczeń TRSTB. Zastępuje zewnętrzne wejście TRRSTB do TAP, gdy SEC_EN jest WYSOKI. |
UTRSTB | 1 | Wyjście | Testuj reset monitora |
UTM-y | 1 | Wyjście | Tryb testowy Wybierz Monitor |
Mikrochip Webstrona
Firma Microchip zapewnia wsparcie online za pośrednictwem naszego webmiejsce na www.microchip.com/. Ten webstrona służy do tworzenia files i informacje łatwo dostępne dla klientów. Niektóre z dostępnych treści obejmują:
- Wsparcie produktu – Arkusze danych i errata, uwagi aplikacyjne i sampprogramy, zasoby projektowe, podręczniki użytkownika i dokumenty pomocy technicznej dotyczące sprzętu, najnowsze wersje oprogramowania i oprogramowanie archiwalne
- Ogólne wsparcie techniczne – Często zadawane pytania (FAQ), prośby o pomoc techniczną, internetowe grupy dyskusyjne, lista członków programu partnerskiego firmy Microchip
- Biznes Microchip – Przewodniki wyboru i zamawiania produktów, najnowsze komunikaty prasowe firmy Microchip, wykazy seminariów i wydarzeń, wykazy biur sprzedaży, dystrybutorów i przedstawicieli fabrycznych firmy Microchip
Usługa powiadamiania o zmianie produktu
Usługa powiadamiania o zmianach produktów firmy Microchip pomaga na bieżąco informować klientów o produktach firmy Microchip. Subskrybenci otrzymają powiadomienie e-mail o zmianach, aktualizacjach, poprawkach lub erratach związanych z określoną rodziną produktów lub interesującym narzędziem programistycznym.
Aby się zarejestrować, przejdź do www.microchip.com/pcn i postępuj zgodnie z instrukcjami rejestracji. Obsługa klienta Użytkownicy produktów Microchip mogą uzyskać pomoc za pośrednictwem kilku kanałów:
- Dystrybutor lub przedstawiciel
- Lokalne Biuro Sprzedaży
- Inżynier ds. rozwiązań wbudowanych (ESE) Pomoc techniczna Klienci powinni skontaktować się ze swoim dystrybutorem, przedstawicielem lub firmą ESE w celu uzyskania pomocy. Lokalne biura sprzedaży są również dostępne, aby pomóc klientom. Wykaz biur sprzedaży i lokalizacji znajduje się w tym dokumencie.
Pomoc techniczna jest dostępna poprzez webstrona pod adresem: www.microchip.com/support
Funkcja ochrony kodu mikroprocesorowego
Zwróć uwagę na następujące szczegóły funkcji ochrony kodem w urządzeniach Microchip:
- Produkty Microchip spełniają specyfikacje zawarte w ich konkretnych Kartach Danych Microchip.
- Firma Microchip uważa, że jej produkty są bezpieczne, gdy są używane zgodnie z przeznaczeniem iw normalnych warunkach.
- Istnieją nieuczciwe i prawdopodobnie nielegalne metody stosowane w próbach naruszenia funkcji ochrony kodu urządzeń Microchip. Uważamy, że te metody wymagają używania produktów firmy Microchip w sposób wykraczający poza specyfikacje operacyjne zawarte w Arkuszach danych firmy Microchip. Próby naruszenia tych funkcji ochrony kodu najprawdopodobniej nie mogą zostać zrealizowane bez naruszenia praw własności intelektualnej firmy Microchip.
- Microchip jest chętny do współpracy z każdym klientem, któremu zależy na integralności swojego kodu.
- Ani Microchip, ani żaden inny producent półprzewodników nie może zagwarantować bezpieczeństwa swojego kodu. Ochrona kodu nie oznacza, że gwarantujemy, że produkt jest „niezniszczalny”. Ochrona kodu stale ewoluuje. Firma Microchip jest zaangażowana w ciągłe doskonalenie funkcji ochrony kodu w naszych produktach. Próby złamania funkcji ochrony kodu Microchip mogą stanowić naruszenie ustawy Digital Millennium Copyright Act. Jeśli takie działania umożliwiają nieautoryzowany dostęp do oprogramowania użytkownika lub innego dzieła chronionego prawem autorskim, może przysługiwać mu prawo do pozwania o zadośćuczynienie na mocy tej ustawy.
Informacja prawna
Informacje zawarte w tej publikacji służą wyłącznie celom projektowania i używania produktów firmy Microchip. Informacje dotyczące aplikacji urządzenia itp. są podawane wyłącznie dla wygody użytkownika i mogą zostać zastąpione aktualizacjami. Twoim obowiązkiem jest upewnienie się, że Twoja aplikacja jest zgodna ze specyfikacjami.
NINIEJSZA INFORMACJA JEST DOSTARCZANA PRZEZ MIKROCHIP „TAK JAK JEST”. MIKROCHIP NIE SKŁADA ŻADNYCH OŚWIADCZEŃ
LUB JAKIEGOKOLWIEK GWARANCJI, WYRAŹNYCH LUB DOROZUMIANYCH, PISEMNYCH LUB USTNYCH, USTAWOWYCH
LUB W INNY SPOSÓB ZWIĄZONY Z INFORMACJAMI, W TYM M.in. WSZELKIMI DOROZUMIANYMI
GWARANCJE NIENARUSZANIA PRAW, ZDOLNOŚCI HANDLOWEJ I PRZYDATNOŚCI DO OKREŚLONEGO CELU LUB GWARANCJE DOTYCZĄCE JEGO STANU, JAKOŚCI LUB WYDAJNOŚCI. W ŻADNYM WYPADKU MICROCHIP NIE BĘDZIE ODPOWIEDZIALNY ZA JAKIEKOLWIEK POŚREDNIE, SPECJALNE, KARNE, PRZYPADKOWE LUB WYNIKOWE STRATY, SZKODY, KOSZTY LUB WYDATKI JAKIEGOKOLWIEK RODZAJU ZWIĄZANE Z INFORMACJAMI LUB JEGO WYKORZYSTANIEM, JAKIEkolwiek PRZYCZYNY, NAWET JEŚLI MICROCHIP ZOSTAŁ POWIADOMIONY O MOŻLIWOŚCI LUB SZKODY SĄ MOŻLIWE DO PRZEWIDYWANIA. W NAJSZERSZYM ZAKRESIE DOZWOLONYM PRZEZ PRAWO CAŁKOWITA ODPOWIEDZIALNOŚĆ MICROCHIP ZA WSZELKIE ROSZCZENIA W JAKIKOLWIEK SPOSÓB ZWIĄZANE Z INFORMACJAMI LUB JEGO WYKORZYSTANIEM NIE PRZEKROCZY KWOTY OPŁAT, JEŚLI TAKIE ISTNIEJĄ, KTÓRE UŻYTKOWNIK ZAPŁACIŁ BEZPOŚREDNIO FIRMIE MICROCHIP ZA INFORMACJE. Korzystanie z urządzeń Microchip w zastosowaniach związanych z podtrzymywaniem życia i/lub bezpieczeństwem odbywa się całkowicie na ryzyko kupującego, a kupujący zgadza się bronić, zabezpieczać i chronić firmę Microchip przed wszelkimi szkodami, roszczeniami, pozwami lub wydatkami wynikającymi z takiego użycia. Żadne licencje, w sposób dorozumiany lub inny, nie są przekazywane w ramach jakichkolwiek praw własności intelektualnej firmy Microchip, chyba że określono inaczej.
AMERYKA | AZJA/PACYFIK | AZJA/PACYFIK | EUROPA |
Biuro korporacyjne2355 West Chandler Blvd. Chandler, AZ 85224-6199Tel: 480-792-7200Faks: 480-792-7277Pomoc techniczna: www.microchip.com/support Web Adres: www.microchip.com AtlantaDuluth, GATel: 678-957-9614Faks: 678-957-1455Austin, TeksasTelefon: 512-257-3370Boston Westborough, MA Tel: 774-760-0087 Faks: 774-760-0088ChicagoItasca, ILTel: 630-285-0071Faks: 630-285-0075DallasAddison, TXTel: 972-818-7423Faks: 972-818-2924DetroitNovi, MITel: 248-848-4000Houston, TeksasTelefon: 281-894-5983Indianapolis Noblesville, IN Tel: 317-773-8323 Faks: 317-773-5453 Tel: 317-536-2380Los Angeles Mission Viejo, Kalifornia Tel: 949-462-9523 Faks: 949-462-9608 Tel: 951-273-7800Raleigh, Karolina PółnocnaTelefon: 919-844-7510Nowy Jork, NYTelefon: 631-435-6000San Jose, KaliforniaTel: 408-735-9110Tel: 408-436-4270Kanada – TorontoTel: 905-695-1980 Faks: 905-695-2078 | Australia – SydneyTelefon: 61-2-9868-6733Chiny – PekinTelefon: 86-10-8569-7000Chiny – ChengduTelefon: 86-28-8665-5511Chiny – ChongqingTelefon: 86-23-8980-9588Chiny – DongguanTelefon: 86-769-8702-9880Chiny – KantonTelefon: 86-20-8755-8029Chiny – HangzhouTelefon: 86-571-8792-8115Chiny – Hongkong SARTelefon: 852-2943-5100Chiny – NankinTelefon: 86-25-8473-2460Chiny – QingdaoTelefon: 86-532-8502-7355Chiny – SzanghajTelefon: 86-21-3326-8000Chiny – ShenyangTelefon: 86-24-2334-2829Chiny – ShenzhenTelefon: 86-755-8864-2200Chiny – SuzhouTelefon: 86-186-6233-1526Chiny – WuhanTelefon: 86-27-5980-5300Chiny – XianTelefon: 86-29-8833-7252Chiny – XiamenTelefon: 86-592-2388138Chiny – ZhuhaiTelefon: 86-756-3210040 | Indie – BangaloreTelefon: 91-80-3090-4444Indie – Nowe DelhiTelefon: 91-11-4160-8631Indie – PuneTelefon: 91-20-4121-0141Japonia – OsakaTelefon: 81-6-6152-7160Japonia – TokioTel: 81-3-6880-3770Korea – DaeguTelefon: 82-53-744-4301Korea – SeulTelefon: 82-2-554-7200Malezja - Kuala LumpurTelefon: 60-3-7651-7906Malezja – PenangTelefon: 60-4-227-8870Filipiny – ManilaTelefon: 63-2-634-9065SingapurTelefon: 65-6334-8870Tajwan – Hsin ChuTelefon: 886-3-577-8366Tajwan – KaohsiungTelefon: 886-7-213-7830Tajwan – TajpejTelefon: 886-2-2508-8600Tajlandia – BangkokTelefon: 66-2-694-1351Wietnam – Ho Chi MinhTelefon: 84-28-5448-2100 | Austria – WelsTel: 43-7242-2244-39Fax: 43-7242-2244-393Dania – KopenhagaTel: 45-4485-5910Fax: 45-4485-2829Finlandia – EspooTelefon: 358-9-4520-820Francja – ParyżTel: 33-1-69-53-63-20Fax: 33-1-69-30-90-79Niemcy – GarchingTelefon: 49-8931-9700Niemcy – HaanTelefon: 49-2129-3766400Niemcy – HeilbronnTelefon: 49-7131-72400Niemcy – KarlsruheTelefon: 49-721-625370Niemcy – MonachiumTel: 49-89-627-144-0Fax: 49-89-627-144-44Niemcy – RosenheimTelefon: 49-8031-354-560Izrael – Ra'ananaTelefon: 972-9-744-7705Włochy – MediolanTel: 39-0331-742611Fax: 39-0331-466781Włochy – PadwaTelefon: 39-049-7625286Holandia – DrunenTel: 31-416-690399Fax: 31-416-690340Norwegia – TrondheimTelefon: 47-72884388Polska – WarszawaTelefon: 48-22-3325737Rumunia – BukaresztTel: 40-21-407-87-50Hiszpania – MadrytTel: 34-91-708-08-90Fax: 34-91-708-08-91Szwecja – GöteborgTel: 46-31-704-60-40Szwecja – SztokholmTelefon: 46-8-5090-4654Wielka Brytania – WokinghamTel: 44-118-921-5800Fax: 44-118-921-5820 |
Dokumenty / Zasoby
![]() |
Technologia Microchip CoreJTAGProcesory debugowania [plik PDF] Instrukcja użytkownika Rdzeń JTAGProcesory debugowania, CoreJTAGDebugowanie, procesory |