Konfiguracja systemu SIMCON 2.1 EPP- VME. ''^Sl -'. :^~ ;'-'" : : ; - iii. j; '^;~v5: :, j

Podobne dokumenty
Parametryzacja przetworników analogowocyfrowych

dokument DOK wersja 1.0

PROJECT OF FM TUNER WITH GESTURE CONTROL PROJEKT TUNERA FM STEROWANEGO GESTAMI

Programowalne Układy Cyfrowe Laboratorium

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco

WPROWADZENIE Mikrosterownik mikrokontrolery

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

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

Politechnika Wrocławska

LEKCJA TEMAT: Zasada działania komputera.

2.2 Opis części programowej

ZL10PLD. Moduł dippld z układem XC3S200

Konfiguracja parametrów sondy cyfrowo analogowej typu CS-26/RS/U

M-1TI. PRECYZYJNY PRZETWORNIK RTD, TC, R, U NA SYGNAŁ ANALOGOWY 4-20mA Z SEPARACJĄ GALWANICZNĄ. 2

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Modułowy programowalny przekaźnik czasowy firmy Aniro.

Systemy uruchomieniowe

Szkolenia specjalistyczne

Architektura komputerów

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

Opis ultradźwiękowego generatora mocy UG-500

Laboratorium Komputerowe Systemy Pomiarowe

Laboratorium Komputerowe Systemy Pomiarowe

Ćwiczenia z S S jako Profinet-IO Controller. FAQ Marzec 2012

Technika Mikroprocesorowa

Politechnika Gdańska. Gdańsk, 2016

STEROWNIK MODUŁÓW PRZEKAŹNIKOWYCH SMP-8

Badanie właściwości wysokorozdzielczych przetworników analogowo-cyfrowych w systemie programowalnym FPGA. Autor: Daniel Słowik

Konfiguracja i programowanie PLC Siemens SIMATIC S7 i panelu tekstowego w układzie sterowania napędami elektrycznymi. Przebieg ćwiczenia

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

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

SiMod-X-(A1) Przetwornik parametrów powietrza z interfejsem RS485 (MODBUS RTU) oraz wyjściem analogowym (dotyczy wersji -A1)

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

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

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

Systemy Czasu Rzeczywistego FPGA

oznaczenie sprawy: CRZP/231/009/D/17, ZP/66/WETI/17 Załącznik nr 6 I-III do SIWZ Szczegółowy opis przedmiotu zamówienia dla części I-III

OSTER 2 Sterownik programowalny z wbudowanym modemem GPRS

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych

OPTIMA PC v Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA ELFON. Instrukcja obsługi. Rev 1

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

PUKP Programowanie urządzeń kontrolno-pomiarowych. ztc.wel.wat.edu.pl

MOBOT-RCR v2 miniaturowe moduły radiowe Bezprzewodowa transmisja UART

Programowanie sterowników PLC wprowadzenie

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych

Statyczne badanie wzmacniacza operacyjnego - ćwiczenie 7

2. Zawartość dokumentacji. 1. Strona tytułowa. 2. Zawartość dokumentacji. 3. Spis rysunków. 4. Opis instalacji kontroli dostępu. 3.

Dokumentacja Techniczno ruchowa: Moduł PSI (ver. PSI 1.0)

Dokumentacja Licznika PLI-2

Instrukcja do oprogramowania ENAP DEC-1

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Moduł MUU020. Przeznaczenie. Oprogramowanie i użyteczne właściwości modułu

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.

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

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

Electronic Infosystems

Opracował: Jan Front

PROGRAMOWALNE STEROWNIKI LOGICZNE

Architektura komputerów

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

AP Automatyka: Sonda do pomiaru wilgotności i temperatury HygroClip2-S

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

Oscyloskop. Dzielnik napięcia. Linia długa

2.1 Porównanie procesorów

Projektowanie z użyciem procesora programowego Nios II

ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych

Instrukcja obsługi programatora AVR Prog USB v2

EKSPANDER NA SZYNĘ DIN int-iors_pl 10/14

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

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Przetwornik ADC procesora sygnałowego F/C240 i DAC C240 EVM

Zadania do ćwiczeń laboratoryjnych Systemy rozproszone automatyki - laboratorium

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Generator przebiegów pomiarowych Ex-GPP2

interfejs szeregowy wyświetlaczy do systemów PLC

Pomoc do programu ISO Manager

Karta katalogowa JAZZ OPLC. Modele JZ20-T10/JZ20-J-T10 i JZ20-T18/JZ20-J-T18

Sprawdzian test egzaminacyjny GRUPA I

Studencko-Doktorancka Grupa Naukowa PERG. Instytut Systemów Elektronicznych WEiTI PW. Warsaw ELHEP

Układ stabilizacji laserów diodowych

Szczegółowy opis techniczny przedmiotu zamówienia

DOKUMENTACJA PROJEKTU

URZĄDZENIA WEJŚCIA-WYJŚCIA

OPBOX ver USB 2.0 Miniaturowy Ultradźwiękowy system akwizycji danych ze

Licznik rewersyjny MD100 rev. 2.48

Synchronizowanie czasu kontrolera PACSystems do urządzeń HMI

Opis techniczny koncentratora wejść impulsowych KWI-1. APATOR SA,

Systemy wbudowane. Paweł Pełczyński

Research & Development Ultrasonic Technology / Fingerprint recognition

Moduł CNT020. Przeznaczenie. Oprogramowanie i użyteczne właściwości modułu

Interfejs analogowy LDN-...-AN

Instrukcja do ćwiczenia : Matryca komutacyjna

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

Transkrypt:

Konfiguracja systemu 2.1 mgr inż. WALDEMAR KOPREK, mgr inż. TOMASZ CZARSKI, inż. PIOTR PUCYK dr inż. KRZYSZTOF T. POŹNIAK, dr hab. inż, RYSZARD S. ROMANIUK Politechnika Warszawska, Instytut Systemów Elektronicznych System jest przewidziany do pracy w ramie lub jako urządzenie niezależne. Może pracować z dwoma kontrolerami : Kontroler EPP- może pracować w słocie O ramy. Ma dwa złącza, oraz LPT. Port LPT może być podłączony do zewnętrznego lub wdudowanego PC. Kontroler SUN Spark z interfejsem do systemu operacyjnego Solaris. System w wersji autonomicznej ma również port LPT, za pomocą którego zapewniona jest komunikacji z PC. Wersja autonomiczna wymaga zewnętrznego zasilacza, zastępującego zasilanie doprowadzane magistralą. Układ komunikacji pomiędzy systemem a urządzeniami zewnętrznymi przedstawiono na rys. 1. a) crate Zgodnie z konfiguracjami sprzętu system wymaga różnych wersji oprogramowania. Najniższy poziom oprogramowania stanowią biblioteki obsługujące układ programowalny. Jedna z nich, zwana Silnikiem Interfejsu Wewnętrznego (Intemal Interface Engine - iie) parsuje plik iid (Intemal Inłerface Definition) [6]. Inne biblioteki są odpowiedzialne za komunikację ze sprzętem różnymi kanałami komunikacyjnymi. Na rysunku 2 przedstawiono konfigurację oprogramowania stosowną do wersji sprzętu z rys. 1a. W tym przypadku jako kontroler użyta jest stacja SUN. Można wówczas zastosować interfejs użytkownika DOOCS - Distributed Objęci Orienłed Control System (doocs.desy.de). b) crate O O O O SUN SłMCON EPP- O ADCl O ADC2 O CLKIN P DAC1 X DAC2 W ' : ' ' :^.vv ; -,;.r\ ' '.'.; "" g ; i ' 8 LEOl LED2 Ethernet cabte C) crate O ADCl O ADC2 O CLKIN P DAĆ! X DAC2 8 LED LED l J^ ''^Sl -'. :^~ ;'-'" : : ; - iii j; '^;~v5: :, j 4=1 PC LPT cable Ethernet cable Rys. 1. Konfiguracja warstwy sprzętowej systemu : a) z kontrolerem SUN; b) z kontrolerem EPP- oraz PC; c) z lokalnym interfejsem PP; d) z niezależnym źródłem zasilania 40 ELEKTRONIKA 7/2005

Konfiguracja i instalacja warstwy sprzętowej systemu Najczęściej używanym sposobem konfiguracji systemu jest praca z kontrolerem SUN. Na rys. 2 pokazano przykład konfiguracji oprogramowania. Przed instalacją płyty systemowej konieczne jest ustalenie adresu bazowego. zajmuje 26624 bajty (hex 0x6800) przestrzeni adresowej wewnątrz obszaru adresowego kontrolera SUN. SUN używa modyfikatora adresu nr 57 w celu komunikacji z urządzeniem. Adres ma 24 bity oraz 16777216 bajtów przestrzeni adresowej. Operator systemu powinien znać konfigurację przestrzeni adresowej w konkretnej szafie w celu przydziału i alokacji pamięci dla systemu. W celu ustalenia adresu bazowego na płycie udostępniono przełącznik SW1. Ma on 8 pozycji dla 8 najstarszych bitów adresu (od 23. do 15.). Używane są tylko mikroprzełączniki od S4 do S8 dla linii adresowych od 23. do 20. magistrali. Na rysunku 4 zaprezentowano, jak należy ustawić adres podstawowy OxCOOOOO do systemu. Oznacza to, że będzie reagował na każdy adres od OxCOOOOO do OxC06800. Gdy adres jest ustalony na magistrali przez kontroler, wówczas monitor adresów wewnątrz układu programowalnego porównuje cztery najstarsze linie magistrali z czterema liniami mikroprzełączników. Po ustawieniu adresów system może być zainstalowany w ramie w dowolnym słocie z wyjątkiem pierwszego. System zajmuje trzy szerokości jednostkowe i składa się z dwóch kart: -MB - karta bazowa z układem Altera i wewnętrznym interfejsem ; Nallatech XtremeDSP - karta ewaluacyjna z układem Xirtex II (złożona z dwóch kart). Obie karty mają układy programowalne z wewnętrzną logiką i wewnętrzną przestrzenią adresową. Przykładowy rozkład przestrzeni adresowej jest pokazany na rys. 4. Adres bazowy płyty jest ustawiany przy użyciu przełączników umieszczonych na płycie (rys. 5). Istnieje potrzeba rozróżnienia pomiędzy tymi dwiema dostępnymi przestrzeniami adresowymi. Do tego celu użyto linii od 19 do 16 na magistrali adresowej. Układ Altera ma adresy OxFOOOO, a Xilinx 0x00000. W celu zaadresowania odpowiedniego układu, jego adres powinien być dodany do adresu bazowego całej płyty. Dlatego dla adresu bazowego, układy mają następujące adresy: Altera - OxCOOOOO + OxFOOOO = OxCFOOOO; Xilinx - OxCOOOOO + 0x00000 = OxCOOOOO. Te adresy układów są jednocześnie adresami pierwszych rejestrów wewnątrz odpowiedniego FPGA. Zasada użycia adresów magistrali jest przedstawiona na rys. 6. Instalacja oprogramowania systemu Instalacja oprogramowania dla systemu jest stosunkowo prosta dla użytkownika i wymaga skopiowania kilkunastu plików. Pliki można podzielić na kilka grup funkcjonalnych: ładujące konfigurację do FPGA, dostępu do rejestrów, konfiguracyjne urządzenia, algorytmiczne, GUI. Bus Funkcje bezpośredniego dostępu do rejestrów FPGA CHANNEL LIBRARY INTERNAL INTERFACE ENGINE MATLAB COMMUNIC ATIC N COMPONENT -11 > INTERNA LIN "ERFACE O l Ten rodzaj funkcji (typu MEX w MATLABIE) j jest podstawą dla wszystkich plików typu m. Umożliwiają wyłączny dostęp do rejestrów. i Działają na fizycznych obiektach FPGA, jak l bitach, rejestrach, pamięciach [6]. CONTROLLER SUN ; Rys. 2. Konfiguracja oprogramowania systemu z kontrolerem SUN - - - crate 0#FFFFFFF Bus COMMUNICATION INTERNAL INTERFACE 0#C06800 0#COOOOO Przest adresu address space CONTROLLER Inne urządzenia ::i irg&i sb$se. (#010000 Przestrz. adresów SUN 0#000000 Rys. 3. Konfiguracja oprogramowania systemu z kontrolerem EPP- Rys. 4. Przykładowa konfiguracja przestrzeni adresów ELEKTRONIKA 7/2005 41

S1 S2 S3 S4 S5 S6 S7 S8 Konfiguracja systemu z wykorzystaniem kontrolera EPP- A16 A17 A18 A19 A20 A21 A22 A23 Rys. 5. Ustalenie adresu systemu na OxCOOOOO za pomocą przełącznika SW 1 Pliki konfiguracyjne Instalacja sprzętu w tej konfiguracji różni się jedynie procedurą istalacji kontrolera. Instalacja samej płyty jest taka sama jak w przypadku konfiguracji z SUN. Kontroler EPP-YME powinien być zainstalowany w gnieździe O kraty. Na panelu frontowym kontrolera znajduje się złącze równoległe LPT, które jest używane do połączenia z komputerem. Odpowiednia konfiguracja sprzętowa została przedstawiona na rys. 1b. Konfiguracja oprogramowania jest przedstawiona na rys. 3. Konfiguracja portu LPT w komputerze musi być ustawiona na protokół EPP. Protokół ustawia się w BlOS-ie. Pliki te są używane do podstawowych operacji na rejestrach FPGA. W celu wpisania nowej wersji np. tabeli Feed-Forward trzeba wykonać wiele operacji na układzie FPGA z zastosowaniem funkcji dostępu bezpośredniego. W celu uproszczenia tych operacji zastosowano m-funkcje. M-funkcje działają na blokach funkcjonalnych FPGA, np. kontroler lub symulator (tablice operacyjne, macierze obrotu, parametry detektora I-Q, itp.). Inne, dowolne aplikacje MATLAB-a mogą odwoływać się do m-funkcji w celu ładowania tabel sterowania i parametrów FPGA, aby dokonać odczytu. Bootowanie układu FPGA z PC Pliki oprogramowania mogą być kopiowane do folderu bootowania na PC. Metoda bootowania -a pod PC Windows jest taka sama jak dla SUN. Jedyna różnica jest w nazwach plików bootujących. Plik konfigurujący jest vmeii.ini a bootujący boot_simcon2.1-3000.bat dla układu Virtex30001 boot_simcon2.1-2000.bat dla Xilinx xc2v2000. Proces bootowania zabiera znacznie więcej czasu z powodu ograniczeń komunikacji przez port LPT. 23 20 19 16 15 1 address bus linę number Board base address in crate Address of the FPGA chip Addresses of Interna! Interface elements inside specific FPGA chip Rys. 6. Zasada użycia linii adresowych magistrali Pliki algorytmu Ten rodzaj m-plików zawiera jedną z wersji algorytmów sterowania urządzenia. Bazując na podstawowych funkcjach konfiguracyjnych można stworzyć w programie MATLAB wiele różnych rozwiązań algorytmiczych dla systemu 2.1. Pliki GUI Wszystkie pliki opisane wcześniej mogą być używane w graficznym interfejsie użytkownika. GUI jest budowane za pomocą specjalizowanego narzędzia w MATLAB-ie. GUI zawiera wiele okien operacyjnych dla: symulatora, kontrolera oraz odczytu danych. Konfiguracja systemu z wykorzystaniem SUN i ładowanie układu FPGA System 2.1 zawiera dwa układy FPGA. Układ Altera jest usytuowany na płycie MB-N/ME i jest ładowany z układu EPROM automatycznie po włączeniu zasilania. Interfejs jest gotowy do pracy w czasie kilku milisekund. Drugi układ, Xilinx na płytce Nallatech, może być programowany z systemu zewnętrznego jak SUN przez magistralę oraz z Altery na MB za pomocą JTAG. W celu załadowania konfiguracji układu Xilinx stosowane są pliki bootujące. Bazowy adres w pliku vme.conf powinien mieć wartość: BootAddress = BaseAddress + AlteraAddress. Na przykład, adres bazowy płyty jest OxCOOOOO, Adres Altery jest OxFOOOO. Stąd, adres bootowania powinien być: OxCOOOOO + OxFOOOO = OxCFOOOO. W natępnym kroku plik run.sh jest wykonywany z konsoli. Program pokazuje informacje o postępie bootowania. Proces trwa ok. 2 minut. Po zabootowaniu Xilinxa system jest gotowy do działania. Zielona konfiguracyjna dioda LED1 pokazuje gotowość systemu. Konfiguracja FPGA - pliki MATLAB-a W celu ustawienia rodzajów pracy konieczne jest załadowanie wielu różnych wartości do różnych rejestrów przy użyciu MEX-funkcji, jak ii_set_word (), ii_set_bits lub ii_set_area (). Zadanie może być czasochłonne, ponieważ użytkownik musi znać konfiguracje rejestrów i ich wartości. Utworzono w MATLAB-ie funkcje wyższego rzędu, wykonujące te zadania automatycznie. Wybór rodzaju pracy systemu ustawiany jest na pojedynczą funkcją elementarną FPGASetMode (modę) z jednym argumentem. Podobnie jest dla funkcji odczytu danych - FPGAReadDAO (Signals). Ze względu na znaczną liczbę parametrów systemu i rozwój jego funkcjonalności o nowe algorytmy, cały czas powstają nowe funkcje o znacznej wartości dla użytkownika i wzbogacające funkcjonalność operatorską panelu GUI. Rys. 7. Schemat blokowy systemu do akceleratora TESLA 42 ELEKTRONIKA 7/2005

Próbę FPGA CONTROLLER Rys. 8. Schemat blokowy kontroler FPGA CAYITY ścia DAĆ i konwertowany. Można obserwować 22 takie sygnały, używając funkcji: FPGASetDAC (dacl, dac2) dacl, dac2 - numer sygnału wewnętrznego FPGA, który ma być obesrwowany na przetworniku; result = FPGAReadDAC () result - wynikiem jest wektor dwuelementowy, który określa, jakie sygnały wewnętrzne są obecnie podłączone do przetworników. Rys. 9. Schemat blokowy symulator SYMULATOR Na rys. 7. przedstawiono schemat blokowy systemu. Na jego podstawie pokazano podstawowe funkcjonalności oraz wybrane zasady konfiguracji systemu. Konfiguracja polega na użyciu funkcji do ustawienia parametrów oraz odczytu statusu różnych komponentów. Podsystem zegarowy dostarcza sygnału trygera o częstotliwości 1 MHz. Sygnały zegara mogą być dostarczone wewnętrznie jak i ze źródła zewnętrznego przez wejścia cyfrowe. Używana jest następująca funkcja: FPGASetTiming(mode) modę - 0: wewnętrzny sygnał zegara; modę -1: zewnętrzny sygnał zegara', result = FPGAReadTiming () result - liczba, która wskazuje status zegara. 0 ustawieniu wewnętrznego lub zewnętrznego zegara, informują dwie zielone diody LED na frontowym panelu urządzenia. Wybór funkcji może pracować w trzech modach: - kontroler - w tym rodzaju pracy kontroler FPGA odbiera zmodulowany sygnał z rzeczywistej wnęki i steruje klistronem przez modulator wektorowy. Przetworniki ADC są podłączone do wejścia kontrolera. Zmodulowany sygnał T. sondy pomiarowej jest podłączony do ADC1. Wyjścia kontrolera (sygnały sterujące 1 i Q) są podłączone do przetworników DAĆ (rys. 8). - symulator - przetworniki ADC są podłączone do wejścia wnęki. Sygnały sterujące z systemu zewnętrznego (l i Q) podawane są na symulator wnęki. Wyjście z wnęki (sygnał modulowany) jest podłączone do DAC1, a sygnał odstrojenia - do DAC2 (rys. 9). - pętla wewnętrzna - symulator i kontroler są używane razem. Wyjście symulatora wnęki jest podłączone do wejścia kontrolera i wyjścia kontrolera są podłączone do wejścia symulatora. Wszystkie połączenia są implementowane wewnątrz FPGA. Nie wymagane są żadne inne połączenia. Przetworniki DAĆ nie są używane. Można zastosować DAĆ do dostarczenia sygnału analogowego z jednego z 22 wyjść cyfrowych układu FPGA (rys. 10). Ustawienie jednego z modów pracy wymaga konfiguracji wielu wewnętrznych rejestrów. Realizuje to funkcja: FPGASetMode (modę) modę - 0: kontroler; 1: simulator; 2: pętla wewnętrzna; result = FPGAReadMode () result - liczba, wskazująca status Wykonanie funkcji odczytu na końcu procesu konfiguracji rozpoczyna pracę wybranych bloków (kontroler lub symulator). KONTROLER FPGA Rys. 10. Schemat blokowy - pętla wewnętrzna Ładowanie i wymiana tabel sterowania Wyróżnia się trzy pary tabel sterowania dla kontrolera: FEEDFOR- WARD_I, FEEDFORWARD_Q, SETPOINT_I, SETPOINT_Q, GAIN_I oraz GAIN_Q. Każda tabela może być ładowana osobno. Kontroler może pracować ciągle, a tabele są wymieniane pomiędzy impulsami. Tabele muszą być wymieniane w parach, zawsze parametry l i Q danej tabeli. Nie wszystkie tabele są wymagane, gdy wywoływana jest funkcja wymiany: result = FPGASetCtrlTables(tables) tables - tabela z nowymi danymi do wymiany. Tabela zawiera pod-tabele w kolejności: FEEDFORWARD_I, FEEDFOR- WARD_Q, SETPOINT_I, SETPOINT_Q, GAIN_I i GAIN_Q. Funkcja wymiany może być wykonana nawet podczas impulsu. Dane są wpisywane do tabel równoległych, odpowiadającym tabelom sterowania. Tabele równoległe są nieaktywne do czasu zakończenia impulsu. Przed następnym impulsem następuje wymiana tabel. Mechanizm wymiany tabel przedstawiono na rys. 11. Ładowanie i wymiana tabeli wiązki elektronowej Mechanizm wymiany tabeli wiązki działa w ten sam sposób jak dla tabel sterowania. Różnica polega na tym, że tabela wiązki jest wymieniana w symulatorze i funkcja wymiany ma jeden parametr: GAIN l GAIN Q SETPOINT l SETPOINT Q FEEDFORWARD l TAB SWITCH ENA BEAM l BEAM Q DACH DAQ2 DA03 Sygnały wyjściowe DAĆ FEEDFORWARD Q DACH W czasie pracy w pętli wewnętrznej, przetworniki DAĆ mogą obserwować wersje analogowe wewnętrznych cyfrowych sygnałów układu FPGA. Wybrany sygnał jest dołączany do wej- MAIN CONTROL TABLES AUXILIARY TABLES Rys. 11. Schemat mechanizmu wymiany tabel ELEKTRONIKA 7/2005 43

result = FPGASetBeam (tables) tables - macierz składająca się z dwóch wierszy odpowiednio dla tablic BEAM_I i BEAM_Q, każda o rozmiarze 2048 próbek. Ta tabela może być również wymieniana pomiędzy impulsami. Ustawianie wyjścia macierzy obrotu D ma bloki kalibracji sygnałów wyjściowych z DAĆ oraz wejściowych do ADC. Kwadratowa macierz obrotu, usytuowana przed DAĆ, jest stosowana w sposób ciągły do dopasowania amplitudy i fazy wyjściowych sygnałów sterowania. Standardowe współczynniki macierzy wynoszą [1 0; O 1], co oznacza, że macierz nie ma wpływu na sygnały wyjściowe. Rotacja fazy i skalowanie amplitudy ma sens, gdy wyjściowymi sygnałami są l i Q z kontrolera. Ustawienie i odczyt współczynników macierzy realizuje funkcja: FPGASetOutputMatrix (amplituda, faza) amplitudę - wartość jest w zakresie <0; 2), wartość '1' nie wpływa na sygnał wyjściowy; phase -wartość w radianach w zakresie od -II don, wartość 'O' nie wpływa na sygnały wyjściowe. result = FPGAReadOutputMatrix () result - jest wektorem, który składa się z czterech współczynników liczbowych macierzy obrotu o następującej postaci: [cos(x) -sin(x); sin(x) cos(x)]. Ustawienie parametrów macierzy D wpływa natychmiast na sygnały wyjściowe. Ustawienie wejściowych bloków kalibracyjnych Stosuje się dwa wejściowe bloki kalibracyjne, jeden dla każdego ADC. Są one zlokalizowane po wyjściach ADC. Jedną z funkcjonalności bloków jest kompensacja offsetu sygnałów wejściowych. Innąfunkcjąjest dopasowanie amplitudy wejściowych sygnałów do zakresu pracy rejestrów FPGA za pomocą funkcji: FPGASetlnputCal (adc, amplituda, offset) adc - wartości 'O' lub '1' wskazują, który ADC będzie dopasowany; amplitud - wartość w zakresie <0; 2) pozwala tłumić lub wzmacniać sygnał wejściowy, zbyt duża wartość powoduje nasycenie sygnału wejściowego; offset - wartość w zakresie < -2 17 ; 2 17-1/mierzona w bitach; result = FPGAReadlnputCal (adc) adc -wartości 'O' lub '1' wskazują, który ADC będzie dopasowany; result - jest wektorem o dwóch współczynnikach, pierwszy - kalibracja amplitudy, drugi - kalibracja offsetu. Ustawienie kalibracji wejściowej wpływa natychmiast na sygnał wyjściowy. Ustawianie wejścia macierzy obrotu C Macierz kwadratowa jest usytuowana po bloku lodetection. Jest stosowana do regulacji amplitudy i fazy sygnału wejściowego z wnęki. Sygnały l oraz Q z wyjścia detektora IQ są mnożone w sposób ciągły przez macierz C w czasie pracy kontrolera. Standardowe współczynniki macierzy wynoszą: [1 0; O 1]. W tej postaci nie wpływają one na sygnał wejściowy. W celu ustalenia i odczytu współczynników macierzy stosuje się funkcję: FPGASetlnputMatrix (amplituda, faza) amplituda - wartość jest w zakresie <0; 2), wartość '1' nie wpływa na sygnały wejściowe; faza-wartość w radianach w zakresie od -H do n, wartość 'O' nie wpływa na sygnał wyjściowy. Ustawienie współczynników macierzy C wpływa na sygnały wyjściowe natychmiast. Ustawienie początkowego punktu detekcji Blok detekcji IQ pobiera próbki modulowanego sygnału z wnęki co 1 (j,s. Próbki reprezentują składową w fazie l i kwadraturowąo sygnału sprzężonego. Są podawane w kolejności l, Q, -l, -Q. Parametr DRV_START wskazuje na pierwszą próbkę sygnału, tzn. czy jest to l, Q, -l lub -Q. FPGASetlOStart (start) start - parametr akceptuje wartości: O, 1, 2, 3 odpowiadające próbkom l, Q, -l, -Q. Zmiana parametru o 1 powoduje zmianę fazy sygnału o 90. result = FPGAReadlOStart () result - jest wartością punktu początkowego detektora IQ. Podsumowanie Niniejsze opracowanie opisuje szczegółowo sposób instalacji i konfiguracji systemu 2.1. Artykuł ten stanowi skrótową prezentację możliwości zastosowania systemu w różnych konfiguracjach. Dowolność wyboru konfiguracji dotyczy warstwy sprzętowej, czyli współpracy z różnymi kontrolerami lub pracy w wersji samodzielnej. Systemowe rozwiązanie oprogramowania dla 2.1 pozwala na łatwą rekonfigurację struktury wewnętrznej urządzenia i ustawienie w odpowiednie tryby pracy, takie jak tryb kontrolera lub symulatora. Zestaw wewnętrznych układów wejścia i wyjścia pozwala na dopasowanie systemu do zewnętrznych urządzeń współpracujących z 2.1. Opisana wersja sprzętu i oprogramowania stanowi podstawę realizacji kolejnej wersji systemu do sterowania modułów akceleratora z większą liczbą wnęk rezonansowych. Acknowledgments. We acknowledge the support of the European Community-Research Infrastructure Activity under the FP6 Structuring the European Research Area" program (CARE, contract number RII3-CT- -2003-506395) Literatura 1. Czarski T., Romaniuk R. S., Pożniak K. T.: Cavity Control System, Models Simulations For TESLA Linear Accelerator. TESLA Technical Notę, 2003-09. 2. Czarski T., Pożniak K.T., Romaniuk R., Simrock S.: TESLA Cavity Modeling and Digital Implementation with FPGA Technology Solution For Control System Purpose. TESLA Technical Notę, 2003-28. 3. Pożniak K. T., Kierzkowski K., Romaniuk R. S.: Parameterized Control Layer of FPGA Based Cavity Controller and Simulator for TESLA Test Facility. TESLA Report 2003-30. 4. Zabolotny W. M., Roszkowski P., Pożniak K., Romaniuk R. S., Kierzkowski K., Simrock S.: Distributed Embedded PC Based Control and Data Acquisition System for TESLA Cavity Controller and Simulator. TESLA Technical Notę, 2003-34. 5. Pożniak K.T., Romaniuk R. S., Czarski T., Giergusiewicz W., Jałmużna W., Olowski K., Perkuszewski K., Zielinski J., Simrock S.: FPGA and Optical Network Based LLRF Distributed Control System for TESLA-XFEL Linear Accelerator. TESLA Technical Notę, 2004-9. 6. Koprek W., Kaleta P., Szewiński J., Pożniak K. T., Czarski T., Romaniuk R.S.: Software Layer for FPGA-Based TESLA Cavity Control System (Part I). TESLA Technical Notę, 2004-10. 7. Roszkowski P., Zabolotny W. M., Pożniak K., Romaniuk R. S., Kierzkowski K., Simrock S.: Prototype Implementation of the Embedded PC Based Control and DAQ Module for TESLA Cavity. TESLA Technical Notę, 2004-11. 8. http://xfel.desy.de/ [X-FEL Accelerator Homepage] 9. http://tesla.desy.de/doocs/ [DOOCS Homepage] 10. http://www.altera.com/ [Altera Homepage] 11. http://www.xilinx.com/ [Xilinx Homepage] 44 ELEKTRONIKA 7/2005