1. Synteza układów opisanych w języku VHDL Celem ćwiczenia jest szybkie zaznajomienie się ze środowiskiem projektowym Xilinx ISE Design Suite 10.1 oraz językiem opisu sprzętu VHDL, także przetwornikiem cyfrowo-analogowym na płycie z układem Spartan3E-500. 2. Obsługa przetwornika CA Aby projekt mógł skorzystać z przetwornika cyfrowo-analogowego należy do projektu dołączyć tzw. moduł, który jest opisany w języku VHDL. Moduł ten zawiera opis w jaki sposób obsługiwany jest przetwornik. Aby dołączyć moduł do projektu należy z menu Project wybrać Add source...:
Następnie wybrać plik DAC.vhd I wybrać OK
Aby komponent był zauważony przez syntezator języka należy zadeklarować użycie modułu jako tzw. component. Należy to zrobić przed definicją projektu, czyli przed begin: component DAC is Port ( START_CON : in std_logic; END_CON : out std_logic; RST : in std_logic; VALUE : in std_logic_vector(11 downto 0); CLK : in std_logic; SPI_MOSI : out STD_LOGIC; DAC_CS : out STD_LOGIC; DAC_CLR : out STD_LOGIC; SPI_SCK : out STD_LOGIC ); end component; W definiowanym projekcie wystarczy już tylko podłączyć sygnały do komponentu i jest on już w pełni funkcjonalny. pac: DAC port map (START_CON, END_CON, RST, VALUE, CLK, SPI_MOSI, DAC_CS, DAC_CLR, SPI_SCK); pac nazwa komponentu, która używana będzie w projekcie DAC komponent, który będzie używany pod nazwą pac port map przekierowanie sygnałów z projektu pod poszczególne sygnały komponentu (kolejność jest istotna, bowiem w takiej kolejności w jakiej wymieniane są sygnały, w takiej będą podpinane pod sygnały komponentu)
Poniższy przebieg pokazuje zasadę działania modułu obsługi przetwornika CA Synteza układów Resetowanie urządzenia następuje poprzez zadanie stanu wysokiego na sygnał RST. Wartość, która ma być przetworzona ustawiana jest na sygnale VALUE. Konwersja rozpoczyna się poprzez ustawienie sygnału START_CON na poziom wysoki. Zakończenie konwersji wartości zadanej oznajmiane jest sygnałem END_CON, który po zakończeniu konwersji przechodzi w stan wysoki. 3. Plik UCF Plik UCF jest jednym z istotniejszych plików w projekcie, zapewnia on, że sygnały z projektu będą odpowiednio podłączone do elementów płyty prototypowej. Aby stworzyć plik UCF należy wybrać Project->New Source..., a następnie w okienku wybrać Implementation Constraints File, a w File name wpisać nazwę tego pliku.
By edytować ten plik należy zaznaczyć go w projekcie, a następnie rozwinąć User Constraints i wybrać Edit Constraints (Text). W zależność od tego jakie sygnały podłączamy musimy dokonać odpowiednich wpisów, wpisy te należy wziąć z instrukcji płyty. Np. chcemy użyć przycisku, który posłuż jako RESET w projekcie. Szukamy w instrukcji opis buttonów (str. 16), tam znajduje się opis przycisków
oraz pokazane są sygnały z matrycy podłączone do odpowiednich komponentów płyty. Tak więc do sygnału oznaczonego BTN_NORTH, podpięty jest sygnał fizyczny oznaczony V4 itd. Przykład wpisu do pliku UCF znajdujący się na następnej stronie w instrukcji: Aby nasz RESET był podłączony do przycisku oznaczonego jako BTN_NORTH, to należy wpisać do pliku ucf drugą linijkę z powyższych z pewną modyfikacją, czyli: NET RESET LOC = V4 IOSTANDARD = LVTTL PULLDOWN ; Gdzie RESET, to nazwa sygnału użyta w naszym projekcie, natomiast V4, to jego fizyczne położenie na nóżkach układu FPGA. Pamiętaj, aby wszystkie sygnały z projektu(entity głównego) były opisane w pliku UCF(podłączone do jakiegoś wyjścia/wejścia)!!!!!!! 4. Zadanie Podłącz projekt z poprzednich zajęć laboratoryjnych do przetwornika cyfrowo-analogowego, tak aby wygenerować przebieg trójkątny, który będzie widoczny na oscyloskopie. Wykonaj symulacje Post-Route aby to zrobić podobnie jak dla symulacji behawioralnej należy stworzyć plik Test Bench następnie w okienku Sources wybrać Post-Route Simulation, reszta przebiega jak dla symulacji behawioralnej.