Automatyzacja procesu implementacji układów cyfrowych w technologii prądowych układów FPGA



Podobne dokumenty
Weryfikacja logiczna projektów VHDL realizowanych w reprogramowalnych układach FPGA pracujących w trybie prądowym

MODEL KOMÓRKI UKŁADU FPGA ZBUDOWANEGO W OPARCIU O BRAMKI PRĄDOWE

Przerzutniki prądowe dla logiki wielowartościowej i arytmetyki resztowej

Modelowanie reprogramowalnych układów prądowych pracujących w logice. wielowartościowej.

Projekt i weryfikacja praktyczna podstawowych bloków układów FPGA zbudowanych w oparciu o bramki prądowe

Model reprogramowalnego prądowego układu działającego w logice wielowartościowej

Język opisu sprzętu VHDL

Minimalizacja funkcji logicznych w algebrze bramek prądowych

Układy reprogramowalne i SoC Implementacja w układach FPGA

Ukªady Kombinacyjne - cz ± I

Elementy cyfrowe i układy logiczne

Projektowanie układów na schemacie

Wykorzystanie bramek prądowych i napięciowych CMOS do realizacji funkcji bloku S-box algorytmu Whirlpool

Programowalne Układy Cyfrowe Laboratorium

PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH PROGRAMOWALNYCH

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci ROM w FPGA

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

Programowane połączenia w układach FPMA

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

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Układy cyfrowe zbudowane w oparciu o bramki prądowe: stan obecny, perspektywy rozwoju i zastosowania

Katedra Mikroelektroniki i Technik Informatycznych

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

REFERAT PRACY DYPLOMOWEJ

ZL10PLD. Moduł dippld z układem XC3S200

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

Sposoby projektowania systemów w cyfrowych

Bezpieczeństwo informacji oparte o kryptografię kwantową

Ćwiczenie ZINTEGROWANE SYSTEMY CYFROWE. Pakiet edukacyjny DefSim Personal. Analiza prądowa IDDQ

Projektowanie układów FPGA. Żródło*6+.

ZASTOSOWANIA UKŁADÓW FPGA W ALGORYTMACH WYLICZENIOWYCH APPLICATIONS OF FPGAS IN ENUMERATION ALGORITHMS

XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej. XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej

Elektronika i techniki mikroprocesorowe

Modelowanie logiki rewersyjnej w języku VHDL

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

OPTYMALIZACJA MODELI SYMULACYJNYCH ZAMODELOWANYCH W JĘZYKU VERILOG HDL Z WYKORZYSTANIEM INTERFEJSU PLI

Wykorzystanie układów FPGA w implementacji systemów bezpieczeństwa sieciowego typu Firewall

Bezpieczeństwo informacji oparte o kryptografię kwantową

Systemy na Chipie. Robert Czerwiński

1. Synteza układów opisanych w języku VHDL Xilinx ISE Design Suite 10.1 VHDL 2. Obsługa przetwornika CA Project Add source...

Programowanie Układów Logicznych kod kursu: ETD6203 W dr inż. Daniel Kopiec. Pamięć w układach programowalnych

Ochrona własności intelektualnej projektów w układach FPGA poprzez szyfrowanie danych konfiguracyjnych

Opracował: Jan Front

Krótkie wprowadzenie do ModelSim i Quartus2

Wizualizacja struktur macierzy procesorowych w standardzie SVG

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

SYNTEZA AUTOMATÓW SKOŃCZONYCH Z WYKORZYSTANIEM METOD KODOWANIA WIELOKROTNEGO

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

Projektowanie Urządzeń Cyfrowych

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

Analiza i Synteza Układów Cyfrowych

WebPack nadal bezpłatnie, ale z licencją

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji.

FPGA, CPLD, SPLD. Synteza systemów reprogramowalnych 1/27. dr inż. Mariusz Kapruziak pok. 107, tel

Lista zadań nr 5. Ścieżka projektowa Realizacja każdego z zadań odbywać się będzie zgodnie z poniższą ścieżką projektową (rys.

OPROGRAMOWANIE DEFSIM2

Implementacja Gigabitowego Ethernetu na układach FPGA dla eksperymentów fizycznych

Testowanie systemów informatycznych Kod przedmiotu

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C

Projektowanie układów VLSI-ASIC techniką od ogółu do szczegółu (top-down) przy użyciu pakietu CADENCE

Analiza i projektowanie aplikacji Java

Automatyzacja i robotyzacja procesów produkcyjnych

Układy VLSI Bramki 1.0

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

PROGRAMOWALNE STEROWNIKI LOGICZNE

Wstęp Architektura... 13

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

CYFROWY ANALIZATOR SIECI PRZEMYSŁOWYCH JAKO NARZĘDZIE DO DIAGNOSTYKI MAGISTRALI CAN

napięcie-częstotliwość

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

Projekt prostego procesora

Poznań, dzień Zapytanie ofertowe

Projektowanie i symulacja systemu pomiarowego do pomiaru temperatury

PROTOTYPOWANIE UKŁADÓW ELEKTRONICZNYCH Programowalne układy logiczne FPGA Maciej Rosół, Katedra Automatyki AGH,

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna

Rok akademicki: 2013/2014 Kod: JIS s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

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

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Międzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4

Automatyzacja testowania oprogramowania. Automatyzacja testowania oprogramowania 1/36

Programowalne układy logiczne Wydziałowy Zakład Nanometrologii SEMESTR LETNI

Bramki logiczne Instrukcja do ćwiczeń laboratoryjnych

Ćwiczenie 1 Program Electronics Workbench

Technika cyfrowa. Laboratorium nr 7. Liczniki synchroniczne. Mirosław Łazoryszczak. Temat:

Układy logiczne układy cyfrowe

A gdyby tak posterować prądem...

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

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

Podzespoły i układy scalone mocy część II

PL B1. AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE, Kraków, PL BUP 21/12

ćw. Symulacja układów cyfrowych Data wykonania: Data oddania: Program SPICE - Symulacja działania układów liczników 7490 i 7493

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.

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: PROGRAMOWALNE STRUKTURY LOGICZNE

LABORATORIUM TECHNIKA CYFROWA LICZNIKI I REJESTRY. Rev.1.1

Xpress Sp. z o.o. jako wieloletni Premium Partner firmy Xerox ma w swojej ofercie rozwiązanie

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

1. ISE WebPack i VHDL Xilinx ISE Design Suite 10.1 VHDL Tworzenie projektu Project Navigator Xilinx ISE Design Suite 10.1 File

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Transkrypt:

Przemysław Sołtan Oleg Maslennikow Wydział Elektroniki Politechnika Koszalińska ul. Partyzantów 17, 75-411 Koszalin Robert Berezowski Magdalena Rajewska Automatyzacja procesu implementacji układów cyfrowych w technologii prądowych układów FPGA Słowa kluczowe: układy reprogramowalne (FPGA), układy reprogramowalne mieszane, języki opisu sprzętu, bramki prądowe, algebra bramek prądowych STRESZCZENIE W referacie zaprezentowano zautomatyzowaną procedurę implementacji układów cyfrowych w układach FPGA zbudowanych w oparciu o bramki prądowe nowe bramki logiczne cechujące niskim poziomem szumu cyfrowego. Celem pracy jest stworzenie mieszanego analogowo-cyfrowego układu reprogramowalnego, w którym część cyfrowa jest zbudowana z bramek prądowych w celu zmniejszenia jej wpływu na część analogową układu. Główna idea polega na opracowaniu części cyfrowej układu jako prototypu funkcjonalnego znanego układu FPGA (np. rodzin Virtex lub Spartan II). Zaproponowana procedura polega na opracowaniu projektu docelowego urządzenia i jego implementacji korzystając z odpowiedniego oprogramowania (np. Xilinx Foundation). Następnie wykonuje się analiza i przekształcenie otrzymanego pliku konfiguracyjnego na jego odpowiednik konfigurujący prądowy układ FPGA za pomocą własnego środowisko programowe. Umieszczony przykład ilustruje poszczególne etapy tworzenia prostego projektu i jego realizacji w prądowym układzie FPGA. 1. WPROWADZENIE Jednym z najważniejszych problemów projektowania analogowo-cyfrowych układów VLSI, jest zmniejszenie wpływu części cyfrowej układu (tzw. zakłóceń podłożowych) na jego część analogową [1]. Radykalnym sposobem rozwiązania wymienionego problemu jest realizacja cyfrowej części układu w oparciu o bramki prądowe [2,3]. Główną ich cechą jest stała wartość pobieranego prądu w różnych trybach ich pracy. Z tego powodu cechują się one znacznie mniejszym poziomem szumu cyfrowego i nie zakłócają układów analogowych. Poza tym, badania wykonane przez autorów w ramach grantu KBN 7T11B 004 20 wykazały, że standardowe układy cyfrowe zbudowane w oparciu o bramki prądowe są prostszymi logicznie (pod względem ilości wykorzystanych bramek do 35%) od ich prototypów zbudowanych w oparciu o klasyczne bramki napięciowe. Stwarza to podstawę do opracowania mieszanych analogowo-cyfrowych układów na wspólnym podłożu, i w szczególności, do wytworzenia reprogramowalnych układów mieszanych. W związku z tym w ramach prowadzonych badań opracowane zostały również struktury wewnętrzne prototypów prądowych bloków operacyjnych (Slice) i bloków wejścia-wyjścia (IOB) układu SPARTAN II firmy Xilinx [4]. Opracowane prototypy mają jednakowe z oryginałem wejścia, wyjścia i wszystkie tryby pracy. Na podstawie opracowanych bloków prądowych, podobna do struktury układu FPGA SPARTAN II (bez bloków pamięci operacyjnej) i jej parametryzowany model w języku VHDL. Głównymi parametrami modelu

są ilość CLB i IOB. Badanie modelu całego układu prądowego FPGA dokonano na układach sumatorów szeregowego i wielobitowych w sposób następujący. Najpierw została określona ilość bloków CLB (slice) i IOB niezbędnych dla realizacji w układzie FPGA wybranego sumatora. Następnie określono tryby pracy (realizowane funkcje logiczne) każdego bloku CLB i połączenia między nimi, na podstawie czego ręcznie określono zawartość poszczególnych komórek pamięci konfiguracyjnej układu FPGA. Następnie otrzymane dane zostały wprowadzone do pamięci konfiguracyjnej modelu i sprawdzono poprawność jego działania. Wykazano pełną zgodność otrzymanych wyników z oczekiwanymi. Opisana procedura formowania i ładowania danych konfiguracyjnych może być wykonana w sposób zautomatyzowany (co jest bardzo ważnym przy implementacji dużych projektów), jeśli zostaną opracowane odpowiednie programy do syntezy i implementacji układu prądowego FPGA. Jednak fizyczne i logiczne zasady funkcjonowania bramek prądowych różnią się od analogicznych zasad funkcjonowania klasycznych bramek napięciowych. Dlatego procedury syntezy logicznej układów prądowych i napięciowych też się różnią. Poza tym, synteza układów prądowych jest dość specyficzna i nieznana dla większości projektantów. Dlatego przy założeniu wykorzystania prądowych układów FPGA funkcjonalnie zgodnych z ich odpowiednikami napięciowymi można do automatyzacji wykorzystać narzędzia do syntezy i implementacji napięciowej. Jako bazę programową autorzy wykorzystali pakiet Foundation/ISE firmy Xilinx,Inc. [5], który umożliwia eksport z programu informacji o konfiguracji i połączeniach komórek w konkretnej realizacji układowej FPGA. Do automatyzacji procesu projektowania zastosowano opracowany przez autorów program GEDEON przetwarzający informacje z plików projektów w formacie.xdl (Xilinx Design Language). Zastosowanie gotowych rozwiązań umożliwia łatwe przenoszenie gotowych projektów prądowych przedstawionych w formacie.hdl i ich testowanie w środowisku bez tworzenia skomplikowanych i nowych narzędzi do syntezy i implementacji. Zaproponowana procedura opisana została w następnych rozdziałach referatu. 2. PROCES TWORZENIA PRĄDOWEGO PROJEKTU VHDL Przy założeniu tworzenia prądowych modeli układu FPGA funkcjonalnie zgodnych z ich odpowiednikami napięciowymi można do automatyzacji wykorzystać narzędzia do syntezy i implementacji napięciowej. Jako bazę programową wykorzystano pakiet Foundation/ISE firmy Xilinx,Inc. umożliwiający eksport z programu informacji o konfiguracji i połączeniach komórek FPGA w konkretnej realizacji układowej. Do automatyzacji procesu projektowania zastosowano opracowany przez autorów program GEDEON przetwarzający informacje z plików projektów przedstawionych w formacie XDL (Xilinx Design Language). Proces tworzenia prądowego projektu jest przedstawiony na Rys. 1. i przebiega w kilku fazach: przygotowanie projektu w technologii napięciowej; symulacja i tworzenie testbench ów (ActiveHDL); synteza i implementacja układu (Foundation) generowanie pliku XDL (Xilinx Design Language) wyłuskującego informację o konfiguracji układu FPGA; stworzenie prądowych bibliotek bloków SLICE oraz IOB dla konkretnego układu FPGA analiza pliku XDL i generacja projektu w postaci plików VHDL (program GEDEON) symulacja układu prądowego (ActiveHDL); porównanie Testbench ów symulacji napięciowej z wynikami symulacji prądowej. 2.1. Projektowanie modeli napięciowych Po stworzeniu projektu w języku VHDL i próbie jego implementacji w środowisku Foundation firmy Xilinx otrzymuje się binarne pliki NCD (Native Circuit Description), które

zawierają informację konfiguracji układu FPGA projektowanego urządzenia. W celu eksportu pliku NCD do postaci tekstowej korzysta się z programu XDL.exe (rys.2). Projekt w VHDL (technologia Symulacja projektu (ActiveHDL) Synteza i Implementacja Generacja projektu w technologii prądowej (Gedeon) W E R Y F I K A C J A Projekt VHDL (technologia prądowa) Rys. 1. Proces generowania projektu prądowego Otrzymany plik w formacie XDL może zostać użyty we własnych programach użytkowników pakietu Foundation. Dzięki programowi xdl.exe uzyskuje się możliwość bezpośredniej ingerencji w strukturę wewnętrzną konfiguracji urządzenia w konkretnej implementacji układu FPGA. Możne w ten sposób dokonywać modyfikacji i importować projekt do postaci binarnej pliku NCD lub też wykorzystać w innym zewnętrznym programie do własnego przetwarzania. Taka właśnie możliwość została wykorzystana do generacji modeli urządzeń zgodnych z technologią prądową. W tym celu zaprojektowano odpowiedni program GEDEON umożliwiający przetwarzanie plików w formacie XDL i generację na ich podstawie modeli prądowych projektu napięciowego. Plik NCD xdl.exe Plik XDL 2.2. Synteza i implementacja Rys. 2. Schemat konwersji plików programu XDL.exe Wykorzystanie pakietu Foundation podyktowane zostało koniecznością zastosowania narzędzia do syntezy (dekompozycja funkcji logicznych w komórkach FPGA, rozmieszczenie komórek oraz ich łączenia). Służy do tego wbudowany program do syntezy FPGA Expres firmy Synopsys. Dzięki takiemu podejściu udało się uniknąć analizy złożonych algorytmów PLACE & ROUTE. Mimo tego stworzone środowisko testowego jest dobrym startem do analizy własnych rozwiązań tychże algorytmów, czy też wykorzystania innych narzędzi do syntezy logicznej.

Ze względu na różnorodność rozwiązań budowy układów FPGA ograniczono się do wyboru architektury SPARTANII. Składa się ona z dwóch podstawowych bloków: SLICE zawierające po dwa bloki CLB oraz bloków IOB s. Bloki RAM, DLL i inne w obecnej fazie projektu nie są rozpatrywane. Na wybór architektury SPARTANII zdecydowano się ponieważ bloki SLICE są zbudowane tak jak w architekturze VIRTEX, a ponadto ich budowa daje więcej możliwości realizowania różnych funkcji w porównaniu z przestarzałą już architekturą X4000. W implementacji testowych przykładów wykorzystano najmniejszy z układów serii SPARTANII xc2s15-6 cs144. Dla wybranej architektury zaprojektowano prądowe modele bloków SLICE oraz IOB. Oba modele były też podstawą do realizacji scalonego prądowego układu FPGA realizowanego w technologii krzemowej w ramach grantu KBN. Układ SPARTANII posiada inne bloki, które nie zostały zaimplementowane w postaci modeli prądowych. Jest to temat do dalszych badań i projektów tych modeli w technologii prądowej. 2.3. Generacja pliku XDL Generację pliku XDL (Xilinx Design Language) realizuje się za pomocą programu XDL.exe podając jako parametr nazwę pliku NCD zawierającego konfigurację projektu zaimplementowanego w określonym układzie FPGA. xdl.exe -ncd2xdl project.ncd project.xdl W ten sposób uzyskuje się tekstowy plik XDL zawierający informacje na temat wykorzystanej architektury, rodzaju komórek (SLICE, IOBS, itd.) oraz połączeń pomiędzy komórkami FPGA. Plik formatu XDL (Xilinx Design Language) jest plikiem tekstowym, który określa konfigurację (Mapping), rozmieszczenie instancji (Placement), oraz listę węzłów wraz z ich połączeniami do określonych instancji komponentów (Routing). 3. PRZYKŁAD IMPLEMENTACJI DWUWEJŚCIOWEJ BRAMKI AND Zastosowanie nieskomplikowanego projektu miało na celu zobrazowanie procesu przetwarzania i realizacji projektu prądowego. Projekt wykonano w VHDL i dokonano syntezy i implementacji dla jednego z układów z rodziny SPARTANII. Uzyskany plik NCD następnie poddano przetworzeniu do formatu XDL i otrzymano plik and.xdl, z którego najważniejsze informacje umieszczono poniżej. design "and2" xc2s15cs144-6 v2.36 ; inst "a" "IOB", placed LR8 K3, cfg "PAD:a: INBUF:C_a: IMUX::1 "; inst "b" "IOB", placed LR8 L1, cfg "PAD:b: INBUF:C_b: IMUX::1 "; inst "c" "IOB", placed LR8 K2 cfg "OUTBUF:C_c: PAD:c: OMUX::O OUTMUX::1 ; inst "N_c" "SLICE", placed R8C1 CLB_R8C1.S0, cfg "YUSED::0 G:C3:#LUT:D=(A2*A1) GYMUX::G"; net "N_a", outpin "a" I, inpin "N_c" G2; net "N_b", outpin "b" I, inpin "N_c" G1; net "N_c", outpin "N_c" Y, inpin "c" O; Narzędzie Foundation zaimplementowało bramkę AND2 wykorzystując do tego celu 3 bloki IOB oraz jeden blok SLICE w sposób przedstawiony na rys.3. Każdy z bloków został odpowiednio skonfigurowany. Informacje o konfiguracji poszczególnych komórek FPGA jest podawana w pliku XDL w postaci łańcucha tekstowego. Poniżej na rys.4 znajduje się przykład instancji komponentów IOB i SLICE wraz z konfiguracją (cfg) dla implementacji przykładowej bramki AND. 4. PROGRAM GEDEON Po generacji pliku XDL w drugim etapie projektowania następuje analiza i z uwzględnieniem prądowych modeli komórek układu FPGA, zostaje wygenerowany projekt dla technologii

prądowej w języku VHDL. Do realizacji tego zadania zaprojektowano program o nazwie GEDEON, który realizuje proces konwersji pliku XDL na plik projektu VHDL. W celu tworzenia modeli prądowych z ich odpowiedników napięciowych program GEDEON analizuje pliki XDL z danymi wyeksportowanymi z projektu napięciowego syntezowanego w środowisku Foundation/ISE. Z pliku XDL wyłuskane zostają informacje na temat wykorzystanych komponentów (ich instancje) oraz połączenia pomiędzy nimi (netlista). Program dokonuje analizy konfiguracji i podaje jej odpowiednik w postaci liczby binarnej. SLICE C B A IOBs C=A andb Matryce przełączników Rys. 3. Przykładowa implementacji bramki AND w układzie FPGA (widok połączeń). G2 G1 LUT D=(A2*A1) A4 A3 A2 A1 WS DI D F6 GXOR G GYMUX YUSED 0 Y inst "N_c" "SLICE", placed R8C1 CLB_R8C1.S0, cfg "YUSED::0 G:C3:#LUT:D=(A2*A1) GYMUX::G"; Rys. 4. Przykładowa implementacja bramki AND w układzie FPGA (konfiguracja bloku SLICE) Proces tworzenia bitów konfiguracyjnych przebiega dwuetapowo: Dla układu SLICE: analiza konfiguracji bloków LUT; analiza konfiguracji multiplekserów kluczujących strukturę SLICE; Dla bloku IOB: analiza konfiguracji wyprowadzenia bloku (PAD); analiza konfiguracji multiplekserów kluczujących strukturę IOB; Do analizy funkcji realizowanych w blokach LUT zaprojektowano prosty analizator równań boolowskich, który przekształca konfiguracyjny łańcuch tekstowy na odpowiednik Plik konfiguracyjny układu FPGA Projekt napięciowy (XDL) GEDEON Prądowe modele komponentów SLICE i IOBs (VHDL) Projekt prądowy (VHDL) Prądowy TestBench (VHDL) Rys. 8. Schemat konwersji plików programu GEDEON.

binarny. Bity konfiguracyjne komponentów Komponent napięciowy Komponent prądowy Rys. 9. Bity konfiguracyjne komponentów napięciowych i prądowych Aby zachować zgodność struktur w programie GEDEON zastosowano plik konfiguracyjny określający zależności między wersją prądową i napięciową układu FPGA. CELL = SLICE CYSELF F = 0 1 = 1 #OFF = X CYSELG G = 0 1 = 1 #OFF = X CYINIT CIN = 0 BX = 1 #OFF = X CY0F 0 = 00 1 = 01 F1 = 10 PROD = 11 #OFF = XX END SLICE Po zgromadzeniu takich informacji jak instancje, ich konfiguracje oraz ich połączenia następuje generacja modelu projektowanego urządzenia w VHDL z wykorzystaniem prądowych modeli komponentów wybranej rodziny układów FPGA (np. SPARTANII). WNIOSKI W niniejszej pracy zaprezentowana została zautomatyzowana procedura implementacji układów cyfrowych w układach FPGA zbudowanych w oparciu o bramki prądowe. Zaproponowana procedura wykorzystuje dostępne narzędzia do syntezy i umożliwia szybkie testowanie i sprawdzanie projektów prądowych. Procedura polega na opracowaniu projektu docelowego urządzenia cyfrowego w języku HDL i jego implementacji w wybrany układ FPGA korzystając z odpowiedniego oprogramowania. Następnie wykonuje się analiza i przekształcenie otrzymanego pliku konfiguracyjnego na jego odpowiednik konfigurujący prądowy układ FPGA. W tym celu stworzono własne środowisko programowe. Umieszczony w referacie przykład ilustruje poszczególne etapy tworzenia projektu dwuwejściowej bramki AND i jej realizacji w prądowym układzie FPGA. Kolejnym etapem prac badawczych jest zautomatyzowanie procesu weryfikacji układu. W tym celu zostaną generowane odpowiednie testy dla projektu prądowego i projektu napięciowego. Dodatkowo proces weryfikacji musi uwzględniać niezgodność typów danych ze względu na korzystanie ze specjalnej biblioteki logiki prądowej zawierającej własną tablicę rezolucji. BIBLIOGRAFIA [1]. M. Ingels, M.S.J. Steyaert, Design strategies and decoupling techniques for reducing the effects of electrical interference in mixed-mode ICs, IEEE J. Of Solid-State Circuits, N7, 1997, pp.1136-1141. [2]. A. Guziński, P. Pawłowski, D. Czwyrow, J. Kaniewski, O. Maslennikow, N. Maslennikowa, D. Rataj, Design of Digital Circuits with Current-mode Gates, Bulletin of the Polish Academy of Sciences, Technical Sciences, Electronics and Electrotechnics, Vol. 48, No. 1, 2000, pp. 74-91. [3]. Maslennikow O. Approaches to Designing and Examples of Digital Circuits Based on the Current-Mode Gates. Data Recording, Storage & Processing, V.3, No.2, 2001, pp.84-98. [4]. The Programmable Logic Data Book. Xilinx, Inx.,2000. [5]. Dokumentacja do programu Foundation/ISE (Version 4.1). Xilinx, Inc., 2001. Praca wykonana w ramach grantu KBN 7T11B 004 20