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