TESTOWANIE SPECJALIZOWANYCH URZ DZE STEROWANIA RUCHEM DROGOWYM W STRUKTURACH FPGA

Podobne dokumenty
O autorze... 9 Wprowadzenie... 11

ST SPECYFIKACJA TECHNICZNA ROBOTY GEODEZYJNE. Specyfikacje techniczne ST Roboty geodezyjne

Oprogramowanie klawiatury matrycowej i alfanumerycznego wyświetlacza LCD

PROJEKTOWANIE PROCESÓW PRODUKCYJNYCH

Załącznik nr 8. Warunki i obsługa gwarancyjna

INFORMATOR TECHNICZNY GE FANUC. Rezerwacja w sterownikach programowalnych GE Fanuc. Standby Redundancy najprostszy system rezerwacji

Systemy mikroprocesorowe - projekt

Bazy danych. Andrzej Łachwa, UJ, /15

Projektowanie bazy danych

WYJAŚNIENIA. Wyjaśniam

Harmonogramowanie projektów Zarządzanie czasem

Automatyka. Etymologicznie automatyka pochodzi od grec.

Implant ślimakowy wszczepiany jest w ślimak ucha wewnętrznego (przeczytaj artykuł Budowa ucha

JĘZYK UML JAKO NARZĘDZIE MODELOWANIA PROCESU PROJEKTOWO-KONSTRUKCYJNEGO

Lublin, Zapytanie ofertowe

tel/fax lub NIP Regon

Strategia rozwoju kariery zawodowej - Twój scenariusz (program nagrania).

KRYTERIA OCENIANIA WYPOWIEDZI PISEMNYCH KRÓTKA I DŁUŻSZA FORMA UŻYTKOWA

Budowa systemów komputerowych

Jak usprawnić procesy controllingowe w Firmie? Jak nadać im szerszy kontekst? Nowe zastosowania naszych rozwiązań na przykładach.

Odpowiedzi na pytania zadane do zapytania ofertowego nr EFS/2012/05/01

Wdrożenie modułu płatności eservice dla systemu Virtuemart 2.0.x

Warunki Oferty PrOmOcyjnej usługi z ulgą

PRAWA ZACHOWANIA. Podstawowe terminy. Cia a tworz ce uk ad mechaniczny oddzia ywuj mi dzy sob i z cia ami nie nale cymi do uk adu za pomoc

2. Przyk ad zadania do cz ci praktycznej egzaminu dla wybranych umiej tno ci z kwalifikacji E.20 Eksploatacja urz dze elektronicznych

PROCEDURA OCENY RYZYKA ZAWODOWEGO. w Urzędzie Gminy Mściwojów

DE-WZP JJ.3 Warszawa,

Opis programu do wizualizacji algorytmów z zakresu arytmetyki komputerowej

Wiedza niepewna i wnioskowanie (c.d.)

INSTRUKCJA DLA UCZESTNIKÓW ZAWODÓW ZADANIA

Zagospodarowanie magazynu

PROJEKT TECHNICZNY INSTALACJA KLIMATYZACJI POMIESZCZEŃ BIUROWYCH

Zobacz to na własne oczy. Przyszłość już tu jest dzięki rozwiązaniu Cisco TelePresence.

DOTACJE NA INNOWACJE ZAPYTANIE OFERTOWE

Elementy cyfrowe i układy logiczne

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Instrukcja Obsługi STRONA PODMIOTOWA BIP

Moduł. Rama 2D suplement do wersji Konstruktora 4.6

PRZEPISY KLASYFIKACJI I BUDOWY STATKÓW MORSKICH

2.Prawo zachowania masy

Instrukcja postępowania w celu podłączenia do PLI CBD z uwzględnieniem modernizacji systemu w ramach projektu PLI CBD2

DOTACJE NA INNOWACJE. Zapytanie ofertowe

PROGRAM ZAPEWNIENIA I POPRAWY JAKOŚCI AUDYTU WEWNĘTRZNEGO

PROGRAM ZAPEWNIENIA I POPRAWY JAKOŚCI AUDYTU WEWNĘTRZNEGO

2004 Heden Media. Wszelkie prawa zastrzeżone. Wirtualne laboratorium z napędów i sterowania pneumatycznego. Minimalne wymagania

Grupa bezpieczeństwa kotła KSG / KSG mini

Urządzenie do odprowadzania spalin

Polska-Warszawa: Usługi skanowania 2016/S

Architektura komputerów

Administrator Konta - osoba wskazana Usługodawcy przez Usługobiorcę, uprawniona w imieniu Usługobiorcy do korzystania z Panelu Monitorującego.

Komputerowe Systemy Sterowania Sem.VI, Wykład organizacyjny

UCHWALA NR XXXIXI210/13 RADY MIASTA LUBARTÓW. z dnia 25 września 2013 r.

Zamawiający potwierdza, że zapis ten należy rozumieć jako przeprowadzenie audytu z usług Inżyniera.

UNIWERSALNY PULPIT STEROWANIA

NOWELIZACJA USTAWY PRAWO O STOWARZYSZENIACH

Koszty jakości. Definiowanie kosztów jakości oraz ich modele strukturalne

PRZEMYSŁOWY ODTWARZACZ PLIKÓW MP3 i WAV

Metody wyceny zasobów, źródła informacji o kosztach jednostkowych

Instrukcja programu PControl Powiadowmienia.

Warszawa: Dostawa kalendarzy na rok 2017 Numer ogłoszenia: ; data zamieszczenia: OGŁOSZENIE O ZAMÓWIENIU - dostawy

Regulamin Zarządu Pogórzańskiego Stowarzyszenia Rozwoju

Zarządzenie Nr 12 /SK/2010 Wójta Gminy Dębica z dnia 06 kwietnia 2010 r.

FORUM ZWIĄZKÓW ZAWODOWYCH

Automatyczne przetwarzanie recenzji konsumenckich dla oceny użyteczności produktów i usług

INSTRUKCJA OBSŁUGI URZĄDZENIA: HC8201

Siemens IO-Link. Smart TIA integration of sensors and actuators

STERR WST PNE INFORMACJE

Procedura nadawania uprawnień do potwierdzania Profili Zaufanych w Urzędzie Gminy w Ryjewie

Regulamin korzystania z aplikacji mobilnej McDonald's Polska

KARTA PROGRAMOWA - Sylabus -

Moduł 2 Planowanie prac z zakresu eksploatacji maszyn i urządzeń elektrycznych

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Łabiszynie

Komentarz Sesja letnia 2012 zawód: technik eksploatacji portów i terminali 342[03] 1. Treść zadania egzaminacyjnego wraz z załączoną dokumentacją

Instrukcja zarządzania systemem informatycznym służącym do przetwarzania danych osobowych

HiTiN Sp. z o. o. Przekaźnik kontroli temperatury RTT 4/2 DTR Katowice, ul. Szopienicka 62 C tel/fax.: + 48 (32)

Lekcja 173, 174. Temat: Silniki indukcyjne i pierścieniowe.

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap Urzędzie Gminy w Ułężu

Wrocław, 20 października 2015 r.

Złącza wysokoprądowe rodzaje i zastosowanie

Zarządzanie projektami. wykład 1 dr inż. Agata Klaus-Rosińska

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Barcinie

ZAPYTANIE OFERTOWE NR 1

PROGRAM NR 2(4)/T/2014 WSPIERANIE AKTYWNOŚCI MIĘDZYNARODOWEJ

MUZEUM NARODOWYM W POZNANIU,

3 4 5 Zasady udzielania urlopów 6 7 8

WYKRYWANIE BŁĘDÓW W UKŁADACH OCHRONY PRZECIWPORAŻENIOWEJ Z WYŁĄCZNIKAMI RÓŻNOCOWO PRĄDOWYMI

Ogólne warunki skorzystania z Oferty Promocyjnej. Tabela nr [1]: Kwoty zobowiązań w zależności od wybranego Planu Taryfowego.

Promocja i identyfikacja wizualna projektów współfinansowanych ze środków Europejskiego Funduszu Społecznego

Zarządzanie Zasobami by CTI. Instrukcja

Urządzenia do bezprzerwowego zasilania UPS CES GX RACK. 10 kva. Wersja U/CES_GXR_10.0/J/v01. Praca równoległa

Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych ul. Koszykowa 75, Warszawa

Komentarz do prac egzaminacyjnych w zawodzie technik administracji 343[01] ETAP PRAKTYCZNY EGZAMINU POTWIERDZAJĄCEGO KWALIFIKACJE ZAWODOWE

UMOWA. a firmą. reprezentowaną przez: zwaną w dalszej części niniejszej umowy Wykonawcą.

Załącznik nr 7 do Umowy Nr z dnia r. Oświadczenie Podwykonawcy (WZÓR) W związku z wystawieniem przez Wykonawcę: faktury nr z dnia..

Elementy animacji sterowanie manipulatorem

Uprawnienia do dysponentów/jednostek organizacyjnych Uprawnienia do operacji. System EUROBUDŻET Aplikacja Księga Główna Aplikacja Środki trwałe

LABORATORIUM PRZYRZĄDÓW PÓŁPRZEWODNIKOWYCH

NACZYNIE WZBIORCZE INSTRUKCJA OBSŁUGI INSTRUKCJA INSTALOWANIA

Transkrypt:

PRACE NAUKOWE POLITECHNIKI WARSZAWSKIEJ z. 95 Transport 2013 Krzysztof Firl g Politechnika Warszawska, Wydzia Transportu TESTOWANIE SPECJALIZOWANYCH URZ DZE STEROWANIA RUCHEM DROGOWYM W STRUKTURACH FPGA R kopis dostarczono, kwiecie 2013 Streszczenie: Urz dzenia sterowania ruchem drogowym, ze wzgl du na ich z o ono oraz wa n rol jak pe ni, a tak e wymagan du niezawodno, musz by testowane na ka dym etapie ich tworzenia. Zastosowanie uk adów FPGA w urz dzeniach srd, pozwala na zwi kszenie wydajno ci i niezawodno ci tych uk adów, jednak wymaga wykorzystania nowoczesnych narz dzi i metod testowania tych urz dze. Przedstawiono z o ony proces powstawania urz dze sterowania ruchem drogowym w strukturach FPGA. Dla poszczególnych etapów tego procesu zosta przedstawiony i przeanalizowany problem wyst powania i wykrywania b dów dzia ania. Rozpatrzono b dy wynikaj ce z b dnej specyfikacji, b dnej realizacji uk adu oraz b dy powsta e w wyniku uszkodzenia realizacji. Przedstawiono opracowan metod testowania modeli specjalizowanych urz dze sterowania ruchem, pozwalaj c wykry b dy specyfikacji urz dze zaprojektowanych w j zyku VHDL i zrealizowanych w uk adach FPGA. S owa kluczowe: urz dzenia sterowania ruchem, uk ady programowalne, testowanie 1. WST P Podstawowym elementem systemu sterowania ruchem, realizuj cym sterowanie na najni szym poziomie systemu jest sterownik lokalny ruchu drogowego. Sterownik lokalny jak ka de urz dzenie steruj ce realizuje za o ony algorytm sterowania ruchem. Pierwsze realizacje sterowników ruchu drogowego bazowa y na rozwi zaniach mechanicznych i elektromechanicznych. Wraz z rozwojem elektroniki wprowadzono rozwi zania sterowników elektronicznych jako platformy sprz towe z uk adów ma ej i redniej skali integracji, nast pnie zacz to realizowa sterowniki na platformach programowych z uk adów wielkiej skali integracji, jako rozwi zania mikroprocesorowe [3]. Wspó cze nie stosowane rozwi zania programowe (mikroprocesorowe) sterowników charakteryzuj si konieczno ci stosowania oprogramowania u ytkowego i sekwencyjno ci realizacji algorytmów sterowania i przetwarzania danych, ze wszystkimi wynikaj cymi z tego faktu konsekwencjami.

116 Krzysztof Firl g Sterownik lokalny realizuj c adaptacyjny algorytm sterowania wykorzystuje dane o procesie ruchu. Wymaga to stosowania czujników ruchu, detektorów i wideodetektorów, których obs uga w czasie rzeczywistym wymusza du e pr dko ci przetwarzania i znaczne zasoby logiczne urz dze. Ograniczenia obecnych rozwi za programowych s pokonywane poprzez stosowanie rozwi za wieloprocesorowych, albo sprz tow realizacj wyodr bnionych algorytmów. Rozwi zaniem, zwi kszaj cym pr dko przetwarzania sterowników, jest powrót do sprz towych realizacji urz dze sterowania ruchem. Sprz towe rozwi zania uwa ane s za wielokrotnie szybsze od rozwi za programowych, poniewa umo liwiaj przetwarzanie danych w wielu równoleg ych procesach. Jednocze nie projektowanie systemów cyfrowych polegaj ce na budowie systemów z wielu odr bnych, standardowych uk adów wielkiej skali integracji, uzupe nianych elementami ma ej i redniej skali integracji, zast piono specjalizowanymi uk adami wytwarzanymi przez producenta na zamówienie u ytkownika. Uk ady specjalizowane ASIC (Application Specific Integrated Circuit) s to uk ady cyfrowe dedykowane do ci le okre lonego zastosowania, gdzie ca y, nieraz bardzo z o ony system cyfrowy mo e mie ci si w jednym uk adzie scalonym. Niestety, chocia uk ady charakteryzuj si du pr dko ci i wydajno ci, to problemem jest ich uniwersalno, gdy zmiana struktury takiego uk adu nie jest mo liwa. Koszt tych rozwi za sprawia, e tylko wielkoseryjna produkcja jest op acalna. Ewolucj uk adów ASIC by y uk ady cyfrowe programowalne przez u ytkownika PLD (Programmable Logic Device) [4], umo liwiaj ce, po zaprogramowaniu, realizacj dowolnego uk adu cyfrowego. Poj cie programowalnych elementów logicznych PLD obejmuje szereg uk adów produkowanych w ró norodnych odmianach. Nale do nich uk ady zawieraj ce od kilkudziesi ciu do kilku tysi cy bramek. Dost pne narz dzia projektowe i metody projektowania sprawiaj, e op acalna staje si realizacja pojedynczych urz dze w oparciu o uk ady programowalne, gdzie proces projektowy i realizacja urz dzenia mo e przebiega na biurku. Dodatkowe mo liwo ci stwarzaj uk ady reprogramowalne, umo liwiaj ce wielokrotn zmian struktury wewn trznej. Obecnie du popularno zyska y uk ady reprogramowalne FPGA (Field Programmable Gate Array), b d ce jednym z rodzajów uk adów PLD, charakteryzuj ce si prostok tn macierz bloków logicznych, rozmieszczonych pomi dzy tzw. kana ami po czeniowymi. Zasoby uk adów FPGA si gaj ce milionów bramek logicznych i tysi cy wyprowadze powoduj, e mo liwa staje si realizacja rozbudowanych systemów sterowania wewn trz jednego uk adu scalonego w technice SoC (System On Chip). Przez d ugi czas testowanie uk adów cyfrowych traktowane by o jako zadanie podrz dne w stosunku do projektowania i wytwarzania. Obecnie w epoce systemów wymagaj cych du ej niezawodno ci dzia ania, jak systemy sterowania ruchem, jako testowania i zwi zane z ni prawdopodobie stwo poprawnej pracy uk adu sta o si kluczowym zagadnieniem. Niepoprawne dzia anie uk adu cyfrowego mo e by wynikiem b dów projektowania lub niedoskona o ci procesu wytwarzania. Uszkodzenia mog tak e powsta w czasie u ytkowania uk adu. Testowanie nowoczesnych uk adów scalonych stwarza powa ne problemy wynikaj ce st d, e klasyczne procedury testowania, opracowane dla uk adów ma ej i redniej skali integracji, staj si zawodne dla uk adów du ej skali integracji. W artykule przedstawione zostan zagadnienia weryfikacji i testowania specjalizowanych sterowników ruchu drogowego projektowanych i realizowanych w uk adach programowalnych FPGA.

Testowanie specjalizowanych urz dze sterowania ruchem drogowym w strukturach FPGA 117 2. WERYFIKACJA I TESTOWANIE CYFROWYCH URZ DZE STEROWANIA 2.1. PRZYCZYNY POWSTAWANIA B DÓW Projektowanie i realizacja urz dze sterowania ruchem drogowym w uk adach programowalnych FPGA, jak równie innych cyfrowych urz dze sterowania, jest procesem wieloetapowym. W pierwszym etapie projektant zapisuje swoje wyobra enia o urz dzeniu. Odbywa si to w formie schematów logicznych, sieci dzia a (algorytmu pracy urz dzenia) lub w formie j zyków opisu sprz tu np.: VHDL (Very High Speed Integrated Circuits Hardware Description Language). W drugim etapie nast puje synteza i implementacja projektu w postaci prototypu, nast pnie urz dzenie trafia na lini produkcyjn gdzie jest wytwarzane. Proces ten przedstawia rysunek 1. B dna specyfikacja B dna realizacja Uszkodzenia realizacji Opis dzia ania uk adu (Algorytm sterowania) Specyfikacja (VHDL, FSM, BDE) N weryfikacja T Synteza Realizacja, implementacja N testowanie T Badanie prototypu uk adu N testowanie T Produkcja urz dzenia Weryfikacja (testowanie) oprogramowania B dy specyfikacji Testowanie sprz tu B dy i uszkodzenia realizacji Diagnostyka Rys. 1. Etapy procesu powstawania urz dze cyfrowych Powsta e w ten sposób urz dzenie mo e nie spe ni postawionych mu wymaga. Przyczyny tego mog by ró ne, zwykle przedstawia si je, jako [5]: b dna specyfikacja rozbie no ci pomi dzy dzia aniem wyspecyfikowanego urz dzenia a za o eniami, wed ug których mia o dzia a ; b dna realizacja uk adu wynika ze z ej dokumentacji, b dnej implementacji; uszkodzenia realizacji niew a ciwe prowadzenie procesu technologicznego, wadliwe podzespo y. Uszkodzenia mog te powsta w czasie u ytkowania uk adu na skutek naturalnego procesu starzenia lub niekorzystnej zmiany warunków zewn trznych. W celu wyeliminowania wymienionych b dów konieczna jest ci g a weryfikacja i testowanie urz dze cyfrowych na ka dym etapie ich wytwarzania, oraz diagnostyka w czasie u ytkowania urz dze.

118 Krzysztof Firl g 2.2. WERYFIKACJA NA ETAPIE SPECYFIKACJI B dy na etapie specyfikacji obejmuj rozbie no ci pomi dzy dzia aniem wyspecyfikowanego urz dzenia a za o eniami, wed ug których mia o dzia a, czyli b dy w algorytmie dzia ania urz dzenia, pomy ki projektanta, pomy ki programisty, b dy w kodzie opisuj cym dzia anie uk adu. B dy te mog by weryfikowane bezpo rednio na poziomie systemu CAD (Computer Aided Design), w którym nast pi a specyfikacja. Poniewa urz dzenia realizowane w uk adach FPGA specyfikowane s w j zykach opisu sprz tu, na etapie specyfikacji mamy do czynienia z programem napisanym np.: w j zyku VHDL, który mo emy traktowa analogicznie do j zyków programowania i do weryfikacji b dów specyfikacji wykorzystywa metody testowania oprogramowania. Weryfikacja b dów procesu specyfikacji kodu VHDL rozpoczyna si ju podczas kompilacji, gdzie badana jest poprawno sk adniowa i semantyczna programu. Do weryfikacji kodu uk adu wykorzystuje si dwie g ówne strategie testowania [6]: testowanie (weryfikacj ) oparte na funkcji programu (testowanie funkcjonalne); testowanie (weryfikacj ) oparte na strukturze programu (testowanie strukturalne). W weryfikacji funkcjonalnej przypadki testowe s dobierane na postawie sformu owania samego zadania, czyli za o e projektanta, co do dzia ania uk adu. Bada si wszystkie funkcje, jakie powinien realizowa uk ad. Pe na weryfikacja mo e prowadzi do testów wyczerpuj cych, np.: pokrywaj cych pe n przestrze danych wej ciowych. W praktyce liczba sytuacji, które mog zaistnie w sterowanym obszarze przekracza mo liwo wykonania pe nych testów. St d istotne jest wykorzystywanie do tego celu metod systematycznych. Celem weryfikacji strukturalnej jest ca kowite pokrycie struktury testowanego programu przez wybrane przypadki testowe. Struktura programu sk ada si z instrukcji, których wykonanie powinno ujawni b dy. O tym, które instrukcje i w jakiej kolejno ci s wykonane decyduj instrukcje steruj ce, reprezentowane na grafach sterowania, jako rozga zienia, natomiast w kodzie VHDL widoczne, jako instrukcje: if, case, itp. Program powinien by weryfikowany tak d ugo, a ka de rozga zienie wynikaj ce z grafu sterowania zostanie wykonane, chocia raz. Spe nienie tego kryterium gwarantuje wykonanie ka dej osi galnej instrukcji programu. Aby nieco zmniejszy liczb mo liwych przypadków testowych stosuje si zasad warunków brzegowych, tzn. zasad, e je eli kod dzia a poprawnie dla warunków skrajnych, to na pewno b dzie te dzia a dobrze w warunkach normalnych. Specyfikacja uk adów sterowania ruchem drogowym w j zyku VHDL wymaga realizacji uk adów wielomodu owych. Uk ady specyfikuje si zwykle na wielu poziomach, zaczynaj c od podstawowych elementarnych modu ów, nast pnie cz c te modu y w wi ksz ca o. Mo na wyró ni trzy metody weryfikacji tak wyspecyfikowanych uk adów: weryfikacja wst puj ca; weryfikacja zst puj ca; weryfikacja podstawowych modu ów, nast pnie ich jednoczesne scalenie i weryfikacja uk adu finalnego.

Testowanie specjalizowanych urz dze sterowania ruchem drogowym w strukturach FPGA 119 Niezale nie od strategii i metody weryfikacji, procesy te s bardzo czasoch onne i pracoch onne. Niezb dna jest pewna ich automatyzacja. Niestety ca kowita automatyzacja procesu weryfikacji jest nie mo liwa. W rodowiskach opartych na VHDL automatyzuje si proces weryfikacji i testowania poprzez tworzenie automatycznych rodowisk testowych (Test Bench). S to niesyntezowalne modu y, steruj ce modu em syntezowanym, umo liwiaj ce jego symulacj. rodowisko takie definiuje przebiegi sygna ów pobudzaj cych okre lone porty i powinno by pisane przez programist ju na etapie specyfikacji kodu uk adu. G ówne zadania modu ów testowych to generacja i podawanie wymusze oraz porównywanie odpowiedzi z wzorcem. Jako ocen jako ci procesu weryfikacji i testowania wykorzystuje si analiz pokrycia testów. Dla potrzeb tej analizy wprowadza si odpowiednie miary [6]. Miary te wi e si z w asno ciami strukturalnymi kodu VHDL. Pokrycie b dów jest miar bezpo rednio okre laj c liczb wykrytych b dów przez opracowany przypadek testowy. Dobre testy powinny charakteryzowa si du ym pokryciem przep ywu danych i sterowania. W przypadku analizy pokrycia strukturalnego, podstawowymi miarami z tego zakresu s : pokrycie instrukcji; pokrycie bloków; pokrycie decyzji; pokrycie warunków. 2.3. B DY I USZKODZENIA REALIZACJI URZ DZE W UK ADACH FPGA B dy oraz uszkodzenia realizacji, powstaj ce podczas wytwarzania uk adu wskutek niedoskona o ci procesów technologicznych, b dów operatorskich oraz uszkodzenia powsta e w czasie u ytkowania uk adu mo na wykry poprzez testowanie prototypu urz dzenia. Testowanie na tym etapie mo e by przeprowadzone na poziomie pakietu oprogramowania integruj cego w sobie narz dzia specyfikacji, implementacji i wspó pracuj cego z prototypem urz dzenia, lub za pomoc systemów automatycznego testowania ATE (Automated Test Equipment). 2.3.1. Techniki testowania uk adów programowalnych Wspó czesne programowalne struktury logiczne mo na podzieli na uk ady [4]: ASIC uk ady zamawiane b d projektowane przez u ytkownika, programowane przez producenta; CPLD 1 /FPGA uk ady projektowane i programowane przez u ytkownika. Zale nie od typów uk adów testowanie ich mo na podzieli na dwa rodzaje: testowanie wszystkich komórek uk adu i wszystkich po cze ; testowanie logiki u ytej do realizacji funkcji uk adu. Pierwsze testowanie odnosi si do uk adów ASIC i nie zaprogramowanych uk adów CPLD i FPGA. Testowanie to ma na celu wykrycie uszkodze struktury uk adu. Wymaga znajomo ci modelu b dów testowanego uk adu i specjalistycznych narz dzi. Testowaniu 1 Complex PLD z o one programowalne uk ady logiczne, charakteryzuj ce si programowaln matryc po cze otoczon makrokomórkami

IOB IOB IOB IOB IOB IOB IOB IOB 120 Krzysztof Firl g temu uk ady poddawane s g ównie u producenta (test produkcyjny). Drugi rodzaj testowania odnosi si do zaprogramowanego uk adu FPGA. Polega on na testowaniu zaprogramowanej logiki dzia ania uk adu (funkcji u ytkownika). Technika ta zwykle wykorzystuje ide samotestowania. Techniki testowania uk adów programowalnych mo emy podzieli na [8]: zewn trzne techniki, gdzie dla danego modelu uszkodze, odpowiednio opracowana sekwencja wektorów testowych, podawana jest z zewn trznego generatora testów ATE; wewn trzne techniki testowania, wykorzystuj ce wbudowane elementy testowe BIST (Built-In Self-Test) wbudowane autotestowanie. Ta technika w przypadku uk adów FPGA mo e by rozszerzona o mo liwo wykorzystania jako elementy struktury BIST niewykorzystanych zasobów logicznych uk adu, lub te mo liwa jest dekompozycja uk adu, i testowania w kilku sesjach bloków logicznych, z tymczasowym umieszczaniem elementów BIST w miejscu aktualnie nie testowanych zasobów. 2.3.2. Modele b dów uk adów FPGA Poza klasycznymi modelami b dów skleje (Stuck-At) i zwar (Wired), w uk adach FPGA wyst puj b dy charakterystyczne dla uk adów programowalnych [2]: b dy struktury FPGA b dy po cze, b dy typu skleje, ca kowite roz czenie lub zwarcie pary po cze (rys. 2a); b dy komórek CLB 2 b dy multiplekserów, przerzutników D (rys. 2b); b dy komórek LUT 3 b dy pami ci, b dy dekodera (rys. 2b). IOB IOB IOB IOB LUT Pami 0 CLB CLB CLB Dekoder adresowy 1 1 0 0 1 0 1 CLB CLB CLB CLB CLB CLB CLB LUT D Q a) IOB IOB IOB IOB b) > Rys. 2. Budowa uk adu FPGA: a) architektura uk adu, b) struktury komórek CLB i LUT Ponadto, poza b dami statycznymi, wyst puj b dy dynamiczne, których efekty mog ujawnia si przy zmianach sygna ów wej ciowych np.: b dy opó nieniowe (modele bramkowe i cie kowe). 2 CLB (Configurable Logic Block) bloki logiczne w strukturze FPGA 3 LUT (Look-up Table) pami ci RAM umo liwiaj ce tworzenie tablic warto ci funkcji

Testowanie specjalizowanych urz dze sterowania ruchem drogowym w strukturach FPGA 121 Oprócz trwa ych uszkodze wyst puj jeszcze b dy przemijaj ce, chwilowe, typu zmiana warto ci komórki pami ci, rejestru, linii sygna owej na warto przeciwn do poprawnej. Wraz z rozwojem technologii, zmniejszaniem si wymiarów technologicznych, obserwuje si równie wzrastaj c czu o uk adów na b dy przemijaj ce. Dla poszczególnych modelów b dów opracowano wiele metod ich weryfikacji, opartych g ównie na dekompozycji uk adów i specjalistycznych metodach testowania. 2.3.3. Techniki samotestowania w uk adach FPGA Testowania dowolnych struktur uk adów cyfrowych jest problemem trudnym i kosztownym. St d du ym zainteresowaniem ciesz si techniki projektowania uk adów atwo testowalnych. Dzia ania te maj na celu g ównie zwi kszenie kontrolowalno ci i obserwowalno ci uk adów cyfrowych. Rozwini ciem technik projektowania u atwiaj cego testowanie s techniki samotestowania BIST. Metody samotestowania mo na podzieli na [7,8]: - samotestowanie wspó bie ne z normaln prac systemu; - samotestowanie prewencyjne (off-line). Uk ady BIST mog by na sta e wbudowane w struktur uk adów FPGA, lub samotestowanie uk adów FPGA mo e odbywa si przez wykorzystanie cechy rekonfigurowalno ci w systemie. Wykorzystywane s wolne zasoby uk adu FPGA, które przekszta cane s tymczasowo w generator i analizator testu dla pozosta ych komórek. Po przetestowaniu przywracana jest konfiguracja odpowiadaj ca normalnej pracy. W ten sposób samotestowanie przeprowadzane jest bez nadmiaru uk adowego. Istot metody samotestowania jest dekompozycja uk adu FPGA na fragmenty, które s testowane w oddzielnych sesjach testowych, gdzie ka da z sesji sk ada si z zaprogramowania uk adu, wykonania samotestowania i weryfikacji wyniku. Techniki samotestowania s obecnie najbardziej rozwijanymi technikami testowania uk adów programowalnych FPGA. 3. METODA TESTOWANIA SPECJALIZOWANYCH URZ DZE STEROWANIA RUCHEM Analiza metod weryfikacji i testowania, oraz prowadzone badania bazuj ce na opracowanych modelach specjalizowanych sterowników duchu drogowego (rys. 5a) [1], pozwoli y opracowywa metod weryfikacji urz dze sterowania ruchem drogowym realizowanych w uk adach programowalnych FPGA. Weryfikacj przeprowadza si na poziomie specjalistycznych narz dzi wspomagania komputerowego, w których nast puje specyfikacja uk adów. Wykorzystuje si pakiety oprogramowania: Active-HDL, a jako j zyk specyfikacji VHDL. Podczas weryfikacji specyfikacji uk adów sterowania ruchem, za g ówny cel stawia si poprawn realizacj algorytmów sterowania ruchem.

122 Krzysztof Firl g Weryfikacj kodu VHDL uk adu sterowania rozpoczyna si od kompilacji projektu, eliminuj c na tym etapie b dy semantyczne i sk adniowe. Przy czym z powodu wielomodu owo ci uk adów sterowania zarówno kompilacja jak i dalsza weryfikacja prowadzona jest metod wst puj c. Weryfikacja przeprowadzana jest metod weryfikacji funkcjonalnej z elementami weryfikacji strukturalnej. Bada si wszystkie funkcje projektowanego sterownika. Podstawow analiz przeprowadza si na przebiegach czasowych. Jako analizator odpowiedzi wykorzystuje si narz dzie komparacji przebiegów czasowych, w czytelny sposób wskazuj ce wszelkie ró nic w porównywanych przebiegach (rys. 3). Rys. 3. Wynik porównania dwóch przebiegów czasowych Automatyzacja procesu weryfikacji mo liwa jest dzi ki wykorzystaniu automatycznych rodowisk testowych (Test Bench). Zbiór wektorów testowych generowany jest zarówno do testów funkcjonalnych jak i strukturalnych. W przypadku uk adów sterowania posiadaj cych wiele wyprowadze, narz dziem u atwiaj cym opracowanie wektorów testowych, zarówno przy weryfikacji funkcjonalnej jak i strukturalnej, jest narz dzie analizuj ce zmian stanów portów uk adu i informuj ce o ewentualnym braku aktywno ci na danym porcie (Toggle Coverage) (rys. 4a). W wyniku weryfikacji funkcjonalnej pokryte zostan wszystkie funkcje uk adu, lecz nie ca a jego struktura. Nale y w czy do weryfikacji elementy testowania strukturalnego. Pomocne, do oceny jako ci pokrycia, jest narz dzie pakietu Active-HDL umo liwiaj ce analiz miar pokrycia strukturalnego (Code Coverage). Narz dzie to automatycznie raportuje dwie g ówne miary z zakresu weryfikacji strukturalnej. Analizowane s linie kodu, które zosta y wykonane podczas wykonywania programu i sprawdzane ile razy takie wywo anie nast pi o (rys. 4b). Analiz pokrycia kodu testem dope nia narz dzie analizuj ce wykonanie rozga zie kodu (Branch Coverage), badane s wywo ania warunków typu IF, CASE (rys. 4c), sprawdzaj c ile razy zosta y one wykonane. Analiza pokrycia kodu, pozwala na modyfikacj wektora testowego, aby otrzyma maksymalne pokrycie struktury programu. Nale y pami ta o warunkach brzegowych. Nale y zweryfikowa dzia anie uk adu dla skrajnych warto ci zadeklarowanych zmiennych, wykona poszczególne p tle, sprawdzi dzia anie liczników, ich maksymalne zakresy i warunki zerowania. Przeprowadzenie w ten sposób weryfikacji opracowanego kodu uk adu sterowania, pozwala znale wszystkie b dy etapu specyfikacji i usun je w kolejnych rewizjach kodu VHDL opisuj cego uk ad sterowania ruchem.

Testowanie specjalizowanych urz dze sterowania ruchem drogowym w strukturach FPGA 123 a) b) c) Rys. 4. Raporty z analizy pokrycia strukturalnego: a) Toggle Coverage, b) Code Coverage, c) Branch Coverage Kolejnym etapem jest testowanie prototypu sterownika (rys. 5b). Stosuj c zewn trzne techniki testowania weryfikuje si prac urz dzenia, co pozwala wyeliminowa b dy realizacji sterownika. Wykorzystanie wewn trznych technik testowania, poprzez implementacj w prototypie uk adów samotestowania poszczególnych bloków sterownika (rys. 5a), umo liwia wykrycie uszkodze powsta ych w czasie u ytkowania uk adu. a) b) Rys. 5. Specjalizowany sterownik ruchu drogowego: a) model sterownika, b) prototyp sterownika 4. WNIOSKI Urz dzenia sterowania ruchem drogowym, ze wzgl du na ich z o ono oraz wa n rol, jak pe ni, musz by testowane na ka dym etapie ich tworzenia, bowiem, nie wykryte b dy w algorytmach urz dze lub ich uszkodzenia, poza kosztami produkcyjnymi nios koszty spo eczne. W zwi zku z tym niezwykle istotne jest rozwijanie nowych technik i metod testowania. Zastosowanie uk adów FPGA w urz dzeniach srd, pozwala na wykorzystanie nowoczesnych narz dzi i metod testowania tych urz dze.

124 Krzysztof Firl g Przedstawiono analiz metod testowania urz dze sterowania ruchem, na etapach specyfikacji urz dze sterowania w j zykach opisu sprz tu VHDL i realizacji w uk adach FPGA, gdzie zaproponowano zastosowania technik testowania oprogramowania na etapie modelowania struktur sprz towych urz dze. Przedstawiono pe n metod testowania modeli specjalizowanych urz dze sterowania ruchem, pozwalaj c na wyeliminowanie b dów specyfikacji urz dze. Dalsze prace b d skupia si nad rozwijaniem metod testowaniem b dów realizacji urz dze sterowania w uk adach FPGA, gdzie g ówny nacisk po o ony jest na samotestowanie tych urz dze. Bibliografia 1. Firl g K., Kawalec P.: Budowa modeli specjalizowanych sterowników ruchu drogowego w j zykach opisu sprz tu. Materia y Konferencji Naukowej Systemy Transportowe - teoria i praktyka, Katowice, 2012, s. 22-23. 2. Harris I. G., Tessier T.: Testing and Diagnosis of Interconnect Faults in Cluster-Based FPGA Architectures. Department of Electrical and Computer Engineering University of Massachusetts at Amherst, 2002. 3. Le ko M., Guzik J.: Sterowanie ruchem drogowym. Sterowniki i systemy sterowania i nadzoru ruchu. Wydawnictwo Politechniki l skiej, Gliwice, 2000. 4. uba T., Jasi ski K., Zwierzchowski B.: Specjalizowane uk ady cyfrowe w strukturach PLD i FPGA. WK, Warszawa,1997. 5. Sapiecha K.: Testowanie i diagnostyka systemów cyfrowych. PWN, Warszawa, 1987. 6. Sosnowski J.: Testowanie i niezawodno systemów komputerowych. Akademicka Oficyna Wydawnicza EXIT, Warszawa, 2005. 7. Stroud C. E.: A Designer's Guide to Built-In Self-Test. Kluwer Academic Publishers, 2002. 8. Tomaszewicz, P., Kra niewski, A.: Samotestowanie rekonfigurowalnych uk adów FPGA zaprogramowanych przez u ytkownika. Materia y Krajowego Sympozjum Telekomunikacji, Bydgoszcz, 1998, s. 126-132. TESTING OF SPECIALIZED ROAD TRAFFIC CONTROL DEVICES REALIZED IN FPGA DEVICES Summary: Road traffic control devices, due to their complexity and a significant role, as well as a high level of required reliability, must be tested at every stage of their creation. Application of FPGA circuits in road traffic control devices allows for increasing efficiency and reliability of these circuits, however, the use of modern tools and testing methods of these devices is required. A complex process of creation of road traffic control devices within FPGA structures has been presented. The problem of appearing and detecting operating errors has been presented and analyzed for particular stages of the process. Errors resulting from wrong specification and realization of the circuit, as well as errors resulting from realization damage have been considered. The designed method for testing models of specialized road traffic control devices has been presented, which allows for detection of specification errors of devices designed within VHDL and realized in FPGA circuits. Keywords: road traffic devices, programmable logic devices, testing