LABORATORIUM Architektura systemów wbudowanych

Podobne dokumenty
LABORATORIUM Komputery przemysłowe i systemy wbudowane

Temat nr 5. System czasu rzeczywistego bazujący na stałopozycyjnym procesorze sygnałowym. LABORATORIUM Procesory i komputery przemysłowe

dokument DOK wersja 1.0

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

SYSTEMY CZASU RZECZYWISTEGO (SCR)

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Stosowanie tego urządzenia zwiększa możliwości stosowanego sprzętu jak i sofware.

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

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Parametryzacja przetworników analogowocyfrowych

TECHNIKA MIKROPROCESOROWA II

Rejestratory Sił, Naprężeń.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Instrukcja obsługi programatora AVR Prog USB v2

Materiały dodatkowe. Simulink Real-Time

TECHNIKA MIKROPROCESOROWA II

1.Wstęp. 2.Generowanie systemu w EDK

Instrukcja obsługi programatora AVR Prog USB v2

micro Programator ISP mikrokontrolerów AVR zgodny z STK500v2 Opis Obs³ugiwane mikrokontrolery Wspó³praca z programami Podstawowe w³aœciwoœci - 1 -

Linksys WMA 11. Zawartość zestawu. Seria Instant Wireless. Jak zainstalować urządzenie WMA11 WMA11

Szczegółowy opis przedmiotu zamówienia. Część 1 - Laboratoryjny zestaw prototypowy

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

LABORATORIUM ENERGOOSZCZĘDNEGO BUDYNKU

Instrukcja obsługi debugera JTAG-AVR USB v2

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

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Programator procesorów rodziny AVR AVR-T910

OSTRZEŻENIE: NIEBEZPIECZEŃSTWO ZADŁAWIENIA małe elementy. Dla dzieci powyżej 3 roku życia.

INSTRUKCJA UŻYTKOWANIA CZYTNIKA KART PROCESOROWYCH SYGNET 5v1 IU SY5

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Opis przedmiotu zamówienia CZĘŚĆ 1

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

INTERFEJS DIAGNOSTYCZNY BMW INPA / ADS/ GT1/ DIS / EDIABAS INSTRUKCJA OBSŁUGI Strona 1

Konfiguracja pakietu CrossStudio for MSP

INSTRUKCJA OBSŁUGI Grand TV USB 2.0

BF30 OCDLINK/USBASP ARM-JTAG/AVR-ISP Programmer-debugger Instrukcja obsługi

Politechnika Białostocka

SumA1200, SumA600, SumA234/CD32, SumCDTV INSTRUKCJA OBSŁUGI

Electronic Infosystems

Instrukcja obsługi programatora AVR Prog USB v2

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

SumA1200, SumA600, SumA234/CD32 INSTRUKCJA OBSŁUGI

Projektowanie z użyciem procesora programowego Nios II

Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051

Instrukcja obsługi programatora AVR Prog USB v2

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych

AMX 530BT. Instrukcja instalacji i konfiguracji AMX 530BT dla systemów operacyjnych XP, 7 i Instalacja i konfiguracja AMX 530BT dla Windows XP

INSTRUKCJA OBSŁUGI PROGRAMATORA WILLEM

DOKUMENTACJA PROJEKTU

Sprawdzian test egzaminacyjny 2 GRUPA I

Instrukcja instalacji modemu CDMA MV410R z wykorzystaniem kabla USB w systemie operacyjnym MS Windows XP 32-bit

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Płytka uruchomieniowa XM64

Instytut Teleinformatyki

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Instrukcja programowania płytek edycji 2014

LABORATORIUM UKŁADÓW PROGRAMOWALNYCH. PROCESORY OSADZONE kod kursu: ETD 7211 SEMESTR ZIMOWY 2017

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

USB AVR JTAG. Instrukcja obsługi rev.1.0. Copyright 2011 SIBIT

Długopis cyfrowy Nr produktu

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

Instrukcja NAWIGACJA MEDIATEC 7 CALI

Program APEK Użytkownik Instrukcja użytkownika

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Konfiguracja trybu pracy Real COM dla serwerów NPort:

Instrukcja obsługi. Rozdział I. Wprowadzenie. 1.1 Wstęp. Techtop USB-P1 Telefon VoIP na USB. 1.2 Specyfikacja:

Szczegółowy opis przedmiotu zamówienia CZĘŚĆ I

INSTRUKCJA OBSŁUGI PROGRAMU INSTAR 1.0

Programowanie procesora Microblaze w środowisku SDK

NARZĘDZIE KONFIGURACYJNE VNX SETUP TOOL MODUŁÓW RODZINY VNX ADVANCED

Dell P2018H Dell Display Manager Instrukcja użytkownika

Modułowy programowalny przekaźnik czasowy firmy Aniro.

Bezpieczeństwo informacji oparte o kryptografię kwantową

Szybki przewodnik instalacji

Embedded Solutions Automaticon Efektywne pomiary i sterowanie przy użyciu systemu wbudowanego MicroDAQ

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

INSTRUKCJA UŻYTKOWNIKA. Mini DVR MD-80

BF20 JTAG dla ARM ów z interfejsem USB Instrukcja obsługi

INSTRUKCJA UŻYTKOWNIKA MPCC

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

Sprawdzian test egzaminacyjny GRUPA I

ADuCino 360. Zestaw uruchomieniowy dla mikrokontrolerów ADuCM360/361

INSTRUKCJA INSTALACJI URZĄDZENIA

OPIS PROGRAMU USTAWIANIA NADAJNIKA TA105

Zegarek BS Nr produktu

Programator STK500v2 USB

1.1 Co to jest USBCOM? Budowa oraz parametry techniczne... 3

NPS-520. Serwer druku do urządzeń wielofukcyjnych. Skrócona instrukcja obsługi. Wersja 1.00 Edycja 1 11/2006

Instrukcja instalacji Zespołu Diagnostycznego Delphi w systemie Vista.

INTERFEJS KWP2000, KWP2000plus INSTRUKCJA OBSŁUGI

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

1.1 Co to jest USBasp? Parametry techniczne Obsługiwane procesory Zawartość zestawu... 4

Code Composer Studio v4 (3)

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Transkrypt:

LABORATORIUM Architektura systemów wbudowanych Katedra Systemów Elektroniki Morskiej Wydział Elektroniki Telekomunikacji i Informatyki Politechnika Gdańska Temat laboratorium: Procesor sygnałowy Opracował: Jan H. Schmidt 2017

Wstęp. Ćwiczenie laboratoryjne będzie realizowane z wykorzystaniem zestawu uruchomieniowego TMS320C6748 DSP Development Kit (LCDK) zawierający procesor sygnałowy firmy Texas Instruments. Płyta zestawu uruchomieniowego składa się z bloków funkcjonalnych co przedstawia poniższe zdjęcie: Rys. 1. Rozmieszczenie elementów, wyprowadzeń oraz bloków funkcyjnych na płycie zestawu uruchomieniowego Płyta zawiera zastępujące elementy: Procesor sygnałowy TMS320C6748, taktowny zegarem 456 MHz ze zintegrowanym zegarem czasu rzeczywistego RTC Pamięć dynamiczna 128MB DDR2 SDRAM Pamięć Flash 128 MB 16-bit NAND Slot kart pamięci Micro SD/MMC Złącze mini-usb Serial (on-board serial to USB) Złącze Fast Ethernet (10/100 Mbps) Złącze USB Host (USB 1.1) Złącze mini-usb OTG (USB 2.0) Złącze SATA (3Gbps) Złącze VGA (15 pin D-SUB) 2

Złącze LCD (standard złącz modułów Beagleboard XM) Złącze wejściowe Composite Video Input (RCA Jack) Złącze wejściowe Leopard Imaging Camera Sensor (36-pin ZIP connector) Złącza układu kodeka AUDIO (1 LINE IN & 1 LINE OUT & 1 MIC IN) Złącze 14-pin JTAG do podłączenia zewnętrznego emulatora interfejsu JTAG Złącza z wyprowadzoną magistralą sterującą, adresową i danych procesora do podłączania układów dodatkowych Rys. 2. Najważniejsze wykorzystywane interfejsy zestawu uruchomieniowego Głównym elementem zestawu uruchomieniowego jest 32-bitowy procesor sygnałowy TMS320C6748. Zawiera on rdzeń C674x, który jest zoptymalizowany do realizacji złożonych operacji zmiennoprzecinkowych z maksymalną wydajnością 2746 MFLOPS / 3648 MIPS. Obszerna i efektywna wewnętrzna pamięć procesora umożliwia uzyskanie maksymalnej wydajności i realizacji zadań czasu rzeczywistego. Procesor jest uzupełniony o liczne interfejsy które czynią go elastycznym elementem projektowanych systemów. Wewnętrzną pamięcią procesora o rozmiarze i pamięć SDRAM służą do przechowywania programu oraz danych. Pamięć Flash jest używana do przechowywania programu służącego do uruchomienia procesora po podaniu zasilania. Procesory sygnałowe są często używane w aplikacjach przetwarzających dźwięk dlatego na płycie umieszczony został układ kodeka (TLV320AIC3106). Kodek umożliwia kodowanie i dekodowanie, a jego działanie polega na przetwarzania sygnału z postaci analogowej na postać cyfrową dla późniejszej obróbki przez procesor i zamianę sygnału w postaci cyfrowej na postać analogową. Do komunikacji z układem kodeka wykorzystano interfejs McASP. 3

Praca z modułem uruchomieniowym 1. Ustawienia początkowe modułu uruchomieniowego. Zanim przystąpimy po uruchomienia zintegrowanego środowiska programistycznego Code Composer Studio należy upewnić się, że ustawienia przełączników (DIP switchy) są zgodne z wymaganymi oraz podłączone są odpowiednie kable połączeniowe. a. Dla przełączników wymagana jest następująca sekwencja: Przełączniki oznaczone 2, 3, 4 ustawione mają być w pozycji ON Przełączniki oznaczone 1, 5, 6, 7, 8 ustawione mają być w pozycji OFF Znaczenie przełączników: -wybór sposobu bootowania procesora. - przełączniki podłączone do określonych pinów procesora dla użycia przez użytkownika. Ustawianie: ON odpowiada stanowi low OFF odpowiada stanowi high 4

b. Połączyć zasilanie do modułu. 5

2. Zintegrowane środowisko programistyczne. W celu uruchomienia zintegrowanego środowiska programistycznego należy skorzystać z ikony umieszczonej na pulpicie: Rys.3. Ikona zintegrowanego środowiska programistycznego Code Composer Studio. Podczas uruchamiania środowiska zostaniemy poproszeni o wybranie folderu roboczego projektu, który możemy wpisać lub wskazać za pomocą przycisku Browse co przedstawia poniższy rysunek. Opcja Use this as the default and do not ask again wybiera pracę z wykorzystaniem wspólnego folderu roboczego dla różnym projektów należy unikać takiego rozwiązania. Należy wprowadzić ścieżkę: C:\ti\pdk_C6748_2_0_0_0\C6748_StarterWare_1_20_03_03 Rys.4. Okno edycyjne określania lokalizacji folderu roboczego projektu w środowisku CCS. 6

Okno główne po pierwszym uruchomieniu jest przedstawione na poniższym rysunku: Rys.5. Okno główne środowiska Code Composer Studio 6.1.1 Aby odczytać wcześniej przygotowany projekt wybieramy opcję Import CCS Projects z menu Project: 7

to spowoduje wyświetlenie okna: Należy wybrać ścieżkę wyszukiwania projektów na C:\ti\pdk_C6748_2_0_0_0\C6748_StarterWare_1_20_03_03, a to spowoduje wyświetlenie listy wszystkich znalezionych projektów w tym katalogu. Projekty nas interesujące należy zaznaczyć i zostaną one dodane do listy projektów środowiska programistycznego co prezentują dwa następne rysunki. 8

Rys.6. Okno główne środowiska Code Composer Studio wraz z projektami z folderu roboczego. 9

Zadanie 1. Korzystając z szablonu programu (Projekt o nazwie gpio_c674x_c6748_lcdkc6748) zestawić program tak, aby realizował zadany program włączania/wyłączania diód LED w odpowiedzi na odpowiedni stan przełączników umieszczonych na płycie zestawu uruchomieniowego. Program włączania/wyłączania podaje prowadzący. Kod programu stanowi rozliczenie zadania. Informacje o przyciskach i diodach: Rys.7. Podłączenie do procesora przycisków umieszczonych na płycie. Rys.8. Podłączenie do procesora LEDów umieszczonych na płycie. Dodatkowe informacje znajdziesz na stronie www.ti.com w następujących dokumentach: SPRUH79A - TMS320C6748 DSP Technical Reference Manual (Rev. A) SPRAB63B - OMAP-L132/L138, TMS320C6742/6/8 Pin Multiplexing Utility (Rev. B) 10

Zadanie 2. Zmień szablon programu (Projekt o nazwie timer_c674x_c6748_lcdkc6748) tak, aby procesor wykorzystując układ Timer2 odmierzył czas zadany przez prowadzącego w określonej liczbie powtórzeń. Moment startu odliczania i jego zakończenia należy zasygnalizować wykorzystując diodę LED. Kod programu stanowi rozliczenie zadania. Dodatkowe informacje znajdziesz na stronie www.ti.com w następujących dokumentach: SPRUH79A - TMS320C6748 DSP Technical Reference Manual (Rev. A) 11

Zadanie 3. Na podstawie poprawnie działających programów z zadania 1 i 2, przygotować i wgrać do procesora program poprzez port szeregowy po włączeniu zasilania (resecie procesora). Sposób postępowania: a. Przygotować plik binarny w formacie AIS (Application Image Script): Wykorzystując plik wykonywalny z rozszerzeniem.out dokonujemy jego konwersji na plik binarny w formacie AIS odpowiedni dla bootloader a procesora. Należy uruchomić program AISgen for D800K008 o lokalizacji c:\ti\aisgen_d800k008_install_v1.13\ AISgen for D800K008\ AISgen_d800k008.exe co skutkuje pojawieniem się okna jak niżej: Za pomocą menu File->Load Configuration wgrać plik konfiguracyjny odpowiadający typowi używanego modułu uruchomieniowego (plik C6748_LCDK_AISGen_Config.cfg) o lokalizacji c:\ti\aisgen_d800k008_install_v1.13\ AISgen for D800K008\cfg_files\ Po wybraniu trybu bootowania za pomocą portu szeregowego procesora UART2, nazwy pliku wykonywalnego i określeniu nazwy pliku binarnego - okna nastaw powinny zawierać parametry jak przedstawiają kolejne okna programu AISgen. Lokalizacja plików wykonywalnych: 12

Zadanie 1 c:\ti\pdk_c6748_2_0_0_0\c6748_starterware_1_20_03_03\build\c674x\cgt_ccs\ c6748\lcdkc6748\gpio\debug\ gpioled.out Zadanie 2 c:\ti\pdk_c6748_2_0_0_0\c6748_starterware_1_20_03_03\build\c674x\cgt_ccs\ c6748\lcdkc6748\timer\debug\ timercounter.out 13

14

b. Wyłączyć zasialnie modułu uruchomieniowego!!! c. Ustawić przełączniki odpowiedzialne za wybór sposobu bootowania procesora w tryb UART2 (patrz strona 4 instrukcji) d. Włączyć zasialnie modułu uruchomieniowego!!! e. Dokonać ładowania programu w postaci pliku binarnego z pomocą programu ładującego UartHost o lokalizacji C:\ti\AISgen_d800k008_Install_v1.13\AISgen for D800K008\UartHost\ Po wyborze pliku do ładowania oraz portu szeregowego COMx na komputerze PC (należy go ustalić w Menadżerze urządzeń systemu Windows) wciskamy przycisk Start, a na module uruchomieniowym wciskamy przycisk Reset co spowoduje rozpoczęcie procedury ładowania programu. Dodatkowe informacje znajdziesz na stronie www.ti.com w następujących dokumentach: SPRUH79A TMS320C6748 DSP Technical Reference Manual (Rev. A) SPRAAT2F Using the TMS320C6748/C6746/C6742 Bootloader (Rev. F) 15

Zadanie 4. Dokonać bootowanie modułu z wykorzystaniem poprawnie działających programów z zadania 1 i 2, poprzez zaprogramowanie pamięci FLASH typu NAND. Sposób postępowania: a. Przygotować plik binarny w formacie AIS (Application Image Script): Wykorzystując plik wykonywalny z rozszerzeniem.out dokonujemy konwersji na plik binarny w formacie AIS, które jest akceptowalny przez bootloader procesora. Należy uruchomić program AISgen for D800K008 o lokalizacji c:\ti\aisgen_d800k008_install_v1.13\ AISgen for D800K008\ AISgen_d800k008.exe co skutkuje pojawieniem się okna jak niżej: Za pomocą menu File->Load Configuration wgrać plik konfiguracyjny odpowiadający typowi używanego modułu uruchomieniowego (plik C6748_LCDK_AISGen_Config.cfg) o lokalizacji c:\ti\aisgen_d800k008_install_v1.13\ AISgen for D800K008\cfg_files\ Po wybraniu trybu bootowania z pamięci Flash NAND, podaniu nazwy pliku wykonywalnego do konwersji i określeniu nazwy pliku binarnego - okna nastaw powinny zawierać parametry jak przedstawiają kolejne okna programu AISgen. Lokalizacja plików wykonywalnych: Zadanie 1 c:\ti\pdk_c6748_2_0_0_0\c6748_starterware_1_20_03_03\build\c674x\cgt_ccs\ c6748\lcdkc6748\gpio\debug\ gpioled.out 16

Zadanie 2 c:\ti\pdk_c6748_2_0_0_0\c6748_starterware_1_20_03_03\build\c674x\cgt_ccs\ c6748\lcdkc6748\timer\debug\ timercounter.out 17

b. Wyłączyć zasialnie modułu uruchomieniowego!!! c. Ustawić przełączniki odpowiedzialne za wybór sposobu bootowania procesora w tryb UART2 (patrz strona 4 instrukcji) d. Włączyć zasialnie modułu uruchomieniowego!!! e. Uruchom wiersz poleceń sesji DOSowej na komputerze PC (cmd.exe) : f. Zmienić ścieżkę pracy na: cd c:\ti\c6sdk_02_00_00_00\tools\omap-l138_flashandbootutils_2_36\omap- L138\GNU g. Dokonać kasowania pamięci Flash NAND poprzez wydanie komendy: sfh_omap-l138.exe -targettype C6748_LCDK -flashtype NAND -p COMx -erase gdzie COMx to port na komputerze PC, który należy ustalić w Menadżerze urządzeń systemu Windows. 18

h. Wygenerowany wcześniej plik binarny przegrać do wcześniej określonego katalogu c:\ti\c6sdk_02_00_00_00\tools\omap-l138_flashandbootutils_2_36\omap- L138\GNU i. Dokonać programowania pamięci Flash NAND poprzez wydanie komendy: sfh_omap-l138.exe -targettype C6748_LCDK -flashtype NAND -p COMx - flash_noubl AISDiodyNAND.bin j. Teraz programator (program sfh_omap-l138) powinien oczekiwać na komendę BOOT ME od procesora, co można wykonać poprzez wciśnięcie przycisku RESET. Należy poczekać aż zakończy się programowanie!!!. k. Wyłączyć zasialnie modułu uruchomieniowego!!! l. Ustawić przełączniki odpowiedzialne za wybór sposobu bootowania procesora w trybie NAND 16 (patrz strona 4 instrukcji) m. Włączyć zasialnie modułu uruchomieniowego!!! Sprawdzić czy moduł pracuje zgodnie z przygotowanym programem. Dodatkowe informacje znajdziesz na stronie www.ti.com w następujących dokumentach: SPRUH79A TMS320C6748 DSP Technical Reference Manual (Rev. A) SPRAAT2F Using the TMS320C6748/C6746/C6742 Bootloader (Rev. F) 19

Zadanie 5. Dokonać porównania czasów obliczeń zaimplementowanego algorytmu FFT (Fast Fourier Transform) - w języku C. Czasy obliczeń są wyznaczane dla różnych długości oraz różnych typów pamięci w której są przechowywane program i dane. Sposób postępowania: Należy wykorzystać projekt o nazwie demo_c674x_c6748_lcdkc6748. W pliku programu CwiczenieFft.c zdefiniowana została wartość N, która oznacza długość transformacji. Podczas kolejnych obliczeń należy zastosować N ze zbioru {64, 128, 256, 512, 1024, 2048, 4096}. Pierwszą serię obliczeń należy wykonać przy wykorzystaniu pamięci wewnętrznej procesora (L2), a drugą dla przypadku użycia zewnętrznej pamięci modułu uruchomieniowego (DDR2). Zmiany typu używanej pamięci należy dokonywać w pliku konfiguracyjnym linkera demo.cmd, tj. w części SECTIONS (> L2 lub > DDR2 dla wszystkich występujących tam sekcji). Rozliczenie zadania stanowi tabela porównawcza. 20