Automatyczne testowanie w układach FPGA



Podobne dokumenty
Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych

mgr inż. Tadeusz Andrzejewski JTAG Joint Test Action Group

Magistrala JTAG (metoda testowania / programowania)

Język opisu sprzętu VHDL

Technika Cyfrowa i Mikroprocesory

Zwiększanie wiarygodności systemów wykorzystujących układy programowalne

5.3. Analiza maskowania przez kompaktory IED-MISR oraz IET-MISR wybranych uszkodzeń sieci połączeń Podsumowanie rozdziału

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Testowanie systemów informatycznych Kod przedmiotu

Metody testowania Magistrala JTAG

Wykład IV. Układy we/wy. Studia Podyplomowe INFORMATYKA Architektura komputerów

LABORATORIUM TECHNIKA CYFROWA LICZNIKI I REJESTRY. Rev.1.1

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH

Metody samotestowania specjalizowanych urządzeń sterowania ruchem drogowym

Embedded Solutions Automaticon Efektywne pomiary i sterowanie przy użyciu systemu wbudowanego MicroDAQ

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

ZL10PLD. Moduł dippld z układem XC3S200

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia

MAGISTRALA DIAGNOSTYCZNA JAKO ELEMENT PROEKOLOGICZNEGO PROJEKTOWANIA UKŁADÓW I PAKIETÓW ELEKTRONICZNYCH

Technika Mikroprocesorowa

Wykład 2. Mikrokontrolery z rdzeniami ARM

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Elektrotechnika II Stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

Wstęp Architektura... 13

WPROWADZENIE Mikrosterownik mikrokontrolery

Metody optymalizacji soft-procesorów NIOS

STANOWISKO LABORATORYJNE DO DIAGNOSTYKI UKŁADÓW ELEKTRONICZNYCH ZA POMOCĄ MIESZANEJ SYGNAŁOWO MAGISTRALI TESTUJĄCEJ

Transceiver do szybkiej komunikacji szeregowej i pętla fazowa do ogólnych zastosowań

Programowalne Układy Cyfrowe Laboratorium

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek

Rok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 1 (3h) Wprowadzenie do systemu Quartus II

Elektronika i techniki mikroprocesorowe

Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop Spis treści

2. Architektura mikrokontrolerów PIC16F8x... 13

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL

Projektowanie z użyciem softprocesora picoblaze w układach programowalnych firmy Xilinx

Techniki (automatyzacji) projektowania testów. Adam Roman WarszawQA, 24 II 2016

Sprzężenie mikrokontrolera (nie tylko X51) ze światem zewnętrznym lokalne interfejsy szeregowe

Mikrokontrolery AVR techniczne aspekty programowania

Przetwarzanie energii elektrycznej w fotowoltaice lato 2015/16. dr inż. Łukasz Starzak

Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski

Opis efektów kształcenia dla modułu zajęć

CYFROWE BLOKI FUNKCJONALNE

Doświadczenia z tworzenia systemu pomiarowo-sterującego z procesorami rodziny C2000. Leszek Dębowski Instytut Elektrotechniki Oddział w Gdańsku

Systemy uruchomieniowe

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Programowalne Układy Logiczne Konfiguracja/Rekonfiguracja

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne

Kurs SINAMICS G120 Konfiguracja i uruchomienie. Spis treści. Dzień 1

Systemy na Chipie. Robert Czerwiński

Kierunek Inżynieria Akustyczna, V rok Programowalne Układy Cyfrowe. Platforma sprzętowa. Rajda & Kasperek 2014 Katedra Elektroniki AGH 1

LABORATORIUM ELEKTRONIKA Projektowanie koderów, transkoderów i dekoderów w języku VHDL

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Architektura mikrokontrolera MCS51

Systemy wbudowane. Paweł Pełczyński

Programowany układ czasowy

Cyfrowe układy scalone

Systemy wbudowane. Układy programowalne

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Większe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego

NX700 PLC

Układy akwizycji danych. Komparatory napięcia Przykłady układów

Elementy cyfrowe i układy logiczne

Architektura mikrokontrolera MCS51

Inżynieria oprogramowania (Software Engineering)

Realizacja bezpiecznego programowalnego sterownika logicznego z wykorzystaniem języków HDL

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Katedra Mikroelektroniki i Technik Informatycznych

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Bramki logiczne Instrukcja do ćwiczeń laboratoryjnych

Tworzenie sterowników dla FreeBSD. Michał Hajduk

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

Kurs Projektowanie i programowanie z Distributed Safety. Spis treści. Dzień 1. I Bezpieczeństwo funkcjonalne - wprowadzenie (wersja 1212)

Komputerowe Systemy Pomiarowe. 10 października 2014 Wojciech Kucewicz 1

ZL11PRG v.2. Uniwersalny programator ISP. Odpowiednik: Byte Blaster II DLC5 Programmer AT89ISP STK-200 Lattice ISP ARM Wiggler

Projektowanie urządzeń mikroprocesorowych cz. 2 Wykład 4

Programator ZL2PRG jest uniwersalnym programatorem ISP dla mikrokontrolerów, o budowie zbliżonej do STK200/300 (produkowany przez firmę Kanda).

Krótkie wprowadzenie do ModelSim i Quartus2

POLITECHNIKA POZNAŃSKA

Elementy cyfrowe i układy logiczne

Komunikacja w mikrokontrolerach Laboratorium

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

Cyfrowe układy scalone

PROJEKT I OPTYMALIZACJA STRUKTURY LOGICZNEJ DYDAKTYCZNEGO SYSTEMU MIKROPROCESOROWEGO DLA LABORATORIUM PROJEKTOWANIA ZINTEGROWANEGO

JTAG Isolator. Separator galwaniczny JTAG dla ARM, AVR i FPGA

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Spis treści 1. Wstęp 2. Ćwiczenia laboratoryjne LPM

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

1. Podstawowe wiadomości Możliwości sprzętowe Połączenia elektryczne Elementy funkcjonalne programów...

Układy FPGA. Programowalne Układy Cyfrowe dr inż. Paweł Russek

Research & Development Ultrasonic Technology / Fingerprint recognition

Architektura komputerów

Programowanie Mikrokontrolerów

Dokumentacja Techniczna. Czytnik RFID UW-M4GM

4. Karta modułu Slave

ZINTEGROWANE SYSTEMY INFORMATYCZNE PRZEDSIĘBIORSTW Wdrożenie systemów informatycznych w przedsiębiorstwie

Transkrypt:

Automatyczne testowanie w układach FPGA prof. dr hab. inż. Kazimierz Wiatr Katedra Elektroniki Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki AGH email: wiatr@uci.agh.edu.pl

ZAGADNIENIA: Potrzeba automatycznego testowania Testowanie wbudowane Standaryzacja sprzętu do testowania Sprzęg IEEE1149.1 w układach FPGA Tryby pracy rejestrów sprzęgu JTAG Redukcja informacji w testowaniu układów cyfrowych Podsumowanie

POTRZEBA AUTOMATYCZNEGO TESTOWANIA Fazy testowania Metody klasyczne Koncepcja współpracy układu z testerem Testowanie wbudowane Standaryzacja sprzętu do testowania Sprzęg IEEE1149.1 w układach FPGA Tryby pracy rejestrów sprzęgu JTAG Redukcja informacji w testowaniu układów cyfrowych Podsumowanie

FAZY TESTOWANIA UKŁADÓW ELEKTRONICZNYCH Powstawanie urządzenia: projekt logiczny implementacja i symulacje projekt technologii opracowanie testów wykonanie testowanie Użytkowanie urządzenia: testowanie OFF LINE testowanie ON LINE (czas rzeczywisty!!)

METODY KLASYCZNE TESTOWANIA UKŁADÓW CYFROWYCH Oscyloskop wielokanałowy Analizator stanów logicznych Pamięć diagnostyczna Emulatory Testery specjalizowane

WADY KLASYCZNYCH METOD TESTOWANIA Testowanie czasochłonne Badania bardzo drogie Długie ciągi słów testowych Długie ciągi słów z odpowiedzią Znaczny czas transmisji pomiędzy testerem a układem badanym

KONCEPCJA WSPÓŁPRACY TESTERA WBUDOWANEGO Z TESTEREM ZEWNĘTRZNYM

Potrzeba automatycznego testowania TESTOWANIE WBUDOWANE Potrzeba testowania wbudowanego Wady testowania wbudowanego Metody projektowania dla testowania Wprowadzenie elementów nadmiarowych Podział na makrobloki Wybór punktów strategicznych Standaryzacja sprzętu do testowania Sprzęg IEEE1149.1 w układach FPGA Tryby pracy rejestrów sprzęgu JTAG Redukcja informacji w testowaniu układów cyfrowych Podsumowanie

POTRZEBA TESTOWANIA WBUDOWANEGO BIST Built In System Testing Eliminacja drogich zewnętrznych narzędzi diagnostycznych Zmniejszenie czasu detekcji i lokalizacji uszkodzeń Zredukowanie czasu naprawy uszkodzonych układów Ograniczenie cennego czasu pracy specjalistów od testowania Eliminacja testowania ostrzowego Możliwość testowania ON LINE

WADY TESTOWANIA WBUDOWANEGO BIST Wzrost kosztu urządzenia o cenę wbudowanego testera Konieczność ograniczenia stopnia złożoności wbudowanego układu testującego Integracja procesu projektowania układu zasadniczego z projektowaniem testera wewnętrznego Spowolnienie pracy układu pierwotnego

METODY PROJEKTOWANIA DLA TESTOWANIA DFT Design For Testing Wprowadzenie nadmiarowych elementów TIE Test Interface Element Wyznaczenie strategicznych punktów sterujących Wyznaczenie strategicznych punktów obserwacyjnych Podział na makrobloki

WPROWADZENIE ELEMENTÓW NADMIAROWYCH TIE

PODZIAŁ NA MAKROBLOKI Ograniczenie wielkości dla automatycznych generatorów testów Poprawa sterowalności i obserwowalności Jednorodne bloki mają uproszczony model uszkodzeń Każdy makroblok: testowalny niezależnie dostępny z zewnątrz jednorodny funkcjonalnie rozłączny z innymi makroblokami

ELEMENTY TIE POMIĘDZY MAKROBLOKAMI

WYBÓR STRATEGICZNYCH PUNKTÓW STERUJĄCYCH I OBSERWACYJNYCH Przykładowe strategiczne punkty sterujące: Zegar, zerowanie przerzutników, liczników, itp Wejścia selekcji danych do multiplekserów itp Sterowanie trzecim stanem Wejścia zezwolenia/zatrzymania mikroprocesorów Linie magistral danych, adresów i sterowania Przykładowe strategiczne punkty obserwacyjne: Linie sterujące (kluczowe!!) niedostępne z zewnątrz Wyjścia przerzutników, liczników itp Wyjścia układów skupiania danych (kodery, multipleksery itp.) Węzły logicznej redundancji i linie o wysokiej obciążalności Ścieżki podstawowych sprzężeń zwrotnych

Potrzeba automatycznego testowania Testowanie wbudowane STANDARYZACJA SPRZĘTU DO TESTOWANIA Cechy wbudowanego sprzęgu Ścieżka brzegowa sterująco-obserwacyjna Potrzeba standaryzacji Podzbiory magistrali IEEE1149 Tryby pracy sprzęgu JTAG Architektura interface u Sprzęg IEEE1149.1 w układach FPGA Tryby pracy rejestrów sprzęgu JTAG Redukcja informacji w testowaniu układów cyfrowych Podsumowanie

CECHY WBUDOWANEGO SPRZĘGU DO TESTOWANIA Wykorzystywanie minimalnej liczby dodatkowych wejść/wyjść Testowanie z zewnątrz połączeń struktury z obudową Testowanie z zewnątrz struktur na module Testowanie systemów wielomodułowych Współpraca testera zewnętrznego z testerem wewnętrznym

ŚCIEŻKA BRZEGOWA STERUJĄCO-OBSERWACYJNA BSCAN Boundary SCAN

POŁĄCZENIE KILKU UKŁADÓW ZE ŚCIEŻKĄ BSCAN

POTRZEBA STANDARYZACJI SPRZĘGU DO TESTOWANIA MAGISTRA TM-ETM Test and Maintenance; Element Test and Maintenance program militarny VHSIC Very High Speed Integrated Circuits MAGISTRALA TURINO T BUS firma Logical Solutions Technology MAGISTRALA JTAG BSCAN Boundary Scan Join Test Action Group IEEE 1149

PODZBIORY MAGISTRALI P1149

IDEA TESTOWANIA ZA POMOCĄ SPRZĘGU IEEE1149.1 - JTAG Tester zewnętrzny MUT Układ scalony Układ sterowania sprzęgu We RWEB Tester wewnętrzny Testowany układ cyfrowy RWYB Wy

TRYBY PRACY REJESTRU BSCAN W SPRZĘGU JTAG a) b) c) d) e) f) SI D/Z Test GT Odpowiedź Odpowiedź SO

RODZAJE a) TESTOWANIA SPRZĘGIEM JTAG SI SO T U S O Test TUCA T U S O Test TUCA Odpowiedź Odpowiedź T U S O Układ scalony ASIC Układ scalony ASIC b) SI SO T U S O Odpowiedź Odpowiedź TUCA Test T U S O TUCA Test T U S O Układ scalony ASIC Układ scalony ASIC c) SI SO T U S O TUCA T U S O TUCA Odpowiedź Odpowiedź Odpowiedź Odpowiedź T U S O Układ scalony ASIC Układ scalony ASIC

ARCHITEKTURA INTERFACE U JTAG

Potrzeba automatycznego testowania Testowanie wbudowane Standaryzacja sprzętu do testowania SPRZĘG IEEE1149.1 W UKŁADACH FPGA Architektura sprzęgu dla FPGA Komórka sprzęgu dla jednego układu we/wy Implementacja w układach XC4000 Układy FPGA ze sprzęgiem JTAG Tryby pracy rejestrów sprzęgu JTAG Redukcja informacji w testowaniu układów cyfrowych Podsumowanie

ARCHITEKTURA SPRZĘGU P1149.1 DLA UKŁADÓW FPGA

BLOK WE/WY UKŁADU XC4000

KOMÓRKA SPRZĘGU JTAG DLA JEDNEGO UKŁADU WE/WY

IMPLEMENTACJA SPRZĘGU JTAG W UKŁADACH XC4000

WYPROWADZENIA UKŁADU XC4003

ELEMENT BIBLIOTECZNY BNDSCAN UAKTYWNIAJĄCY WBUDOWANY SPRZĘG JTAG W UKŁADACH XC4000

INSTRUKCJE STANDARDU IEEE 1149.1 EXTEST OBOWIAZKOWA REJESTR BRZEGOWY DO/Z OTOCZENIA INTEST REJESTR BRZEGOWY DO/Z LOGIKI SAMPLE OBOWIAZKOWA REJESTR BRZEGOWY DO/Z UKŁADY I/O BYPASS OBOWIAZKOWA REJESTR OBEJŚCIOWY INCODE REJESTR IDENTYFIKACJI RUNBIST REJESTR BRZEGOWY-IZOLUJE SAMOTESTUJĄCY UKŁAD

UKŁADY FPGA Z ZAINSTALOWANYM SPRZĘGIEM IEEE1149.1 XILINX XILINX ALTERA ATMEL LUCENT INSTRUKCJA XC4000 VIRTEX FLEX8000 AT6000 ORCA EXTEST x x x x x SAMPLE x x x x x USER1 x x x USER2 x x x READBACK x x x CONFIGURE x x x BYPASS x x x x x INTEST x IDCODE x RUNBIST x

KONFIGUROWANIE UKŁADÓW FPGA W TRYBIE ISP In System Programming Z WYKORZYSTANIEM SPRZĘGU JTAG

Potrzeba automatycznego testowania Testowanie wbudowane Standaryzacja sprzętu do testowania Sprzęg IEEE1149.1 w układach FPGA TRYBY PRACY REJESTRÓW SPRZĘGU JTAG Instrukcja BYPASS Instrukcja EXTEST Instrukcja INTEST Instrukcja SAMPLE Instrukcja USER Redukcja informacji w testowaniu układów cyfrowych Podsumowanie

AKTYWNY REJESTR BYPASS INSTRUKCJA BYPASS

BADANIE JEDNEGO WYBRANEGO UKŁADU

AKTYWNY REJESTR BSCAN INSTRUKCJA EXTEST TESTUJĄCA POŁĄCZENIA UKŁADU Z OBUDOWĄ

AKTYWNY REJESTR BSCAN INSTRUKCJA INTEST TESTUJĄCA LOGIKĘ Z POZIOMU REJESTRU BSCAN

AKTYWNY REJESTR BSCAN INSTRUKCJA SAMPLE PRZEPISUJĄCA STAN UKŁADÓW WE/WY DO REJESTRU BSCAN

AKTYWNE REJESTRY WEWNĘTRZNE TIE INSTRUKCJA USER TESTUJĄCA WNĘTRZE BLOKU LOGIKI

MAKROBLOKI LOGIKI UŻYTKOWEJ PRZEDZIELONE ŁAŃCUCHAMI REJESTRÓW TIE

PRZEBIEG SYGNAŁÓW DLA INSTRUKCJI SAMPLE

PRZEBIEG SYGNAŁÓW DLA INSTRUKCJI EXTEST

Potrzeba automatycznego testowania Testowanie wbudowane Standaryzacja sprzętu do testowania Sprzęg IEEE1149.1 w układach FPGA Tryby pracy rejestrów sprzęgu JTAG REDUKCJA INFORMACJI W TESTOWANIU UKŁADÓW CYFROWYCH Prosta metoda oscyloskopowa Zliczanie jedynek Zliczanie zboczy Analiza sygnatur Wbudowane analizatory sygnatur Podsumowanie

PROSTA METODA OSCYLOSKOPOWA

ZLICZANIE JEDYNEK W CIĄGACH SYGNAŁÓW

ZLICZANIE ZBOCZY W CIĄGACH SYGNAŁÓW

IDEA ZLICZANIA SYGNATURY W CIĄGACH SYGNAŁÓW

PRAKTYCZNY UKŁAD ANALIZATORA SYGNATUR Długość słowa 16 lub 32 bity Bardzo małe prawdopodobieństwo maskowania błędnych sekwencji Sprzężenia ze specjalnie wybranych bitów bity 7, 9, 12 i 15 poprzez EXOR na wejście dla analizatora 16 bitowego Redukcja informacji dla ciągu 10s x 200MHz =2x10 9 bitów do 16 bitów tj. 10 8 razy Wyposażone w układ startu i stopu oraz komparator do porównania z sygnaturą wzorcową, a analizatory stacjonarne w wyświetlacz i kod HP

ZASTOSOWANIE RÓWNOLEGŁEGO GENEROWANIA TESTÓW I CZYTANIA SYGNATUR ODPOWIEDZI

Potrzeba automatycznego testowania Redukcja informacji w testowaniu układów cyfrowych Testowanie wbudowane Standaryzacja sprzętu do testowania Sprzęg ieee1149.1 w układach FPGA Tryby pracy rejestrów sprzęgu JTAG PODSUMOWANIE

PODSUMOWANIE Automatyczne testowanie jest koniecznym składnikiem nowoczesnych systemów cyfrowych Umieszczenie elementów testujących wewnątrz układów pozwala na znaczne uproszczenie wektorów testujących i odczytywanych odpowiedzi Testowanie wbudowane zapewnia szybkie i w miarę tanie testowanie poszczególnych układów i całych systemów Wynikiem tego jest pełniejsze testowanie funkcjonalne oraz objęcie testowaniem wszystkich układów Testowanie wbudowane pozwala na testowanie układów i systemów w trybie ON LINE (czas rzeczywisty!!!)

Dziękuję za uwagę