EFEKTYWNE PROGRAMOWANIE PROCESORA TMS320C6711 PRZY UśYCIU PAKIETU SIMULINK

Podobne dokumenty
KOMUNIKACJA MIĘDZY KOMPUTEREM A PROCESOREM SYGNAŁOWYM Z ZASTOSOWANIEM PROTOKOŁU RTDX

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

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

Procesory Sygnałowe Digital Signal Processors. Elektrotechnika II Stopień Ogólnoakademicki

Laboratorium: Systemy operacyjne czasu rzeczywistego. Temat: Wprowadzenie do karty DS1102 i oprogramowania Control Desk.

Prototypowanie systemów sterowania

2. Architektura mikrokontrolerów PIC16F8x... 13

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Materiały dodatkowe. Simulink Real-Time

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

MODELING OF MEASURING SYSTEMS IN VEE PRO PROGRAMMING ENVIRONMENT WITH USE OF VIRTUAL INSTRUMENTS

LABORATORIUM Komputery przemysłowe i systemy wbudowane

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

SYSTEMY CZASU RZECZYWISTEGO (SCR)

PRZETWARZANIE SYGNAŁÓW AUDIO W CZASIE RZECZYWISTYM Z ZASTOSOWA- NIEM TARGET SUPPORT PACKAGE TC6

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

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

Adam Korzeniewski - p. 732 dr inż. Grzegorz Szwoch - p. 732 dr inż.

OPROGRAMOWANIE WSPOMAGAJĄCE PROJEKTOWANIE FILTRÓW CYFROWYCH

Projektowanie z użyciem procesora programowego Nios II

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

Szybkie prototypowanie w projektowaniu mechatronicznym

Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase

Filtry cyfrowe i procesory sygnałowe

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

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

PRZEWODNIK PO PRZEDMIOCIE

PROGRAMOWALNE STEROWNIKI LOGICZNE

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

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

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

ICD Wprowadzenie. Wprowadzenie. Czym jest In-Circuit Debugger? 2. O poradniku 3. Gdzie szukać dodatkowych informacji? 4

Procesory sygnałowe Digital Signal Processors. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

Opracował: Jan Front

Systemy Czasu Rzeczywistego (SCR)

WPROWADZENIE Mikrosterownik mikrokontrolery

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Programowanie procesora Microblaze w środowisku SDK

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

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

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Elektrotechnika II Stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

1.2. Architektura rdzenia ARM Cortex-M3...16

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

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

1.1. Wymogi bezpieczeństwa Pomoc techniczna TIA Portal V13 instalacja i konfiguracja pakietu...18

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej Nr 19

Technologie informacyjne - wykład 12 -

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Opis efektów kształcenia dla modułu zajęć

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

Sprawdzian test egzaminacyjny 2 GRUPA I

Parametryzacja przetworników analogowocyfrowych

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

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

PROCESORY SYGNAŁOWE - LABORATORIUM. Ćwiczenie nr 04

Laboratorium Procesorów Sygnałowych

To jeszcze prostsze, MMcc1100!

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

SYSTEM EIB W LABORATORIUM OŚWIETLENIA I INSTALACJI ELEKTRYCZNYCH

Wydział Elektryczny. Katedra Telekomunikacji i Aparatury Elektronicznej. Konstrukcje i Technologie w Aparaturze Elektronicznej.

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

KATEDRA SYSTEMÓW MULTIMEDIALNYCH SEMINARIUM MULTIMEDIALNE SYSTEMY MEDYCZNE

Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

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

Systemy uruchomieniowe

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

sterownik VCR v 1. 0

SYSTEMY CZASU RZECZYWISTEGO (SCR)

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

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Systemy na Chipie. Robert Czerwiński

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

Tworzenie oprogramowania

WYKORZYSTANIE WEWNĘTRZNYCH GENERATORÓW RC DO TAKTOWANIA MIKROKONTROLERÓW AVR

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

Środowiska i platformy programistyczne

Podstawy programowania sterowników SIMATIC S w języku LAD / Tomasz Gilewski. Legionowo, cop Spis treści

Programowanie obiektowe zastosowanie języka Java SE

III. Przebieg ćwiczenia. 1. Generowanie i wizualizacja przebiegów oraz wyznaczanie ich podstawowych parametrów

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

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

Wybrane środowiska szybkiego prototypowania

Ćwiczenie 6 Projektowanie filtrów cyfrowych o skończonej i nieskończonej odpowiedzi impulsowej

CompactPCI. PCI Industrial Computers Manufacturers Group (PICMG)

LABORATORIUM Architektura systemów wbudowanych

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Wprowadzenie do Real-Time Windows Target Toolbox Matlab/Simulink

Laboratorium Komputerowe Systemy Pomiarowe

PRZEWODNIK PO PRZEDMIOCIE

1.6 INFORMACJE OGÓLNE O STEROWNIKACH XL6 i XL6e

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

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

Transkrypt:

Zeszyty Naukowe Wydziału Elektrotechniki i Automatyki Politechniki Gdańskiej Nr 20 XIV Seminarium ZASTOSOWANIE KOMPUTERÓW W NAUCE I TECHNICE 2004 Oddział Gdański PTETiS EFEKTYWNE PROGRAMOWANIE PROCESORA TMS320C6711 PRZY UśYCIU PAKIETU SIMULINK Grzegorz GRABOWSKI 1, Janusz NIEZNAŃSKI 2, Paweł SZCZEPANKOWSKI 3, Juliusz FRĄCKOWIAK 4 Politechnika Gdańska, ul. G. Narutowicza 11/12, 80-952 Gdańsk, 1. tel. 348-60-76, fax: 341-08-80 e-mail: ggrab@ely.pg.gda.pl 2. tel. 347-16-75, fax: 341-08-80 e-mail: jniez@ely.pg.gda.pl 3. tel. 348-60-75, fax: 341-08-80 e-mail: pszczep@ely.pg.gda.pl 4. tel. 348-60-76, fax: 341-08-80 e-mail: julo@ely.pg.gda.pl W artykule opisano alternatywny, w stosunku do standardowych metod kodowania, sposób programowania procesora TMS320C6711 z wykorzystaniem bibliotek pakietu SIMULINK. Scharakteryzowano własności karty uruchomieniowej ze zmiennoprzecinkowym procesorem sygnałowym TMS320C6711 firmy Texas Instruments, pod kątem tworzenia programów do układów prototypowych. Opisano takŝe cechy pakietu SIMULINK jako wydajnego narzędzia pozwalającego na stosunkowo szybkie sprawdzenie wybranych algorytmów i ich praktyczną realizację. Przedstawiono podstawowe bloki moŝliwe do wykorzystania w środowisku symulacyjnym SIMULINK wraz z prezentacją metodyki tworzenia projektów procesora TMS320C6711. Opisano takŝe moŝliwości realizacji komunikacji w czasie rzeczywistym między komputerem osobistym a procesorem sygnałowym TMS320C6711. Szczegółowo omówiono tworzenie programu cyfrowego przetwarzania sygnałów realizującego efekt echa umoŝliwiającego równieŝ komunikację z urządzeniem zewnętrznym - komputerem PC. Zaprezentowany sposób programowania moŝe być wykorzystany w sytuacjach, gdy istnieje potrzeba szybkiego tworzenia oprogramowania np. w przypadku prototypów, bez głębszej wiedzy na temat programowania w języku C++. 1. WPROWADZENIE Rozwój współczesnej techniki opartej na systemach mikroprocesorowych przyczynił się do powstania wielu róŝnorodnych układów dedykowanych do cyfrowego przetwarzania sygnałów. Układy te charakteryzują się wieloma parametrami technicznymi takimi jak: szybkość przetwarzania, ilość dostępnej pamięci itd., jak równieŝ funkcjami dodatkowymi np. liczbą portów wejścia/wyjścia, dostępnymi funkcjami komunikacyjnymi. Do najwydajniejszych układów z tej rodziny naleŝą procesory sygnałowe DSP (ang. Digital Signal Processing) dedykowane do cyfrowego przetwarzania sygnałów. Procesory te, oprócz podstawowych parametrów technicznych, róŝnią się stopniem trudności oprogramowania zaleŝnym od moŝliwości zastosowania konkretnego języka programowania i środowiska programowego dedykowanego dla danej grupy procesorów oraz wielkością nakładów pracy związanych z budową układów prototypowych. W celu

- 64 - uproszczenia programowania i budowy układu produkuje się karty z procesorami i układami peryferyjnymi jak np. przetworniki analogowo-cyfrowe, realizującymi większość wymaganych przez projektanta funkcji. Jednym z takich rozwiązań jest karta EVM z procesorem zmiennoprzecinkowym TMS320C6711 firmy Texas Instruments. Karta ta, ze względu na bogactwo oferowanych funkcji jak równieŝ przyjazne dla uŝytkownika oprogramowanie doskonale nadaje się do zastosowań naukowo dydaktycznych. Zawiera ona procesor TMS320C6711, którego najistotniejsze cechy przedstawiono poniŝej: 32 bitowe rejestry; moŝliwość wykonania 8 instrukcji w jednym cyklu zegarowym; częstotliwość taktowania 150MHz; dwa 32 bitowe zegary taktujące; dwa wielokanałowe buforowane porty szeregowe; 32 bitowy zewnętrzny interfejs pamięci; kontroler bezpośredniego dostępu do pamięci EDMA; 16 bitowy port HPI do komunikacji z komputerem sterującym. Dodatkowo karta EVM zawiera następujące układy peryferyjne: przełączniki do zadawania określonych stanów logicznych na wejściach procesora, diody elektroluminescencyjne LED, przetwornik TLC320AD535 realizujący operacje przetwarzania A/D i D/A oraz interfejs JTAG. Produkt ten w stosunku do innych dodatkowo wyróŝnia przyjazne środowisko programistyczne Code Composer Studio IDE, w którym, oprócz pisania kodu źródłowego i jego kompilacji, istnieje moŝliwość konfiguracji procesora i jego peryferii w sposób interaktywny, z uŝyciem okien dialogowych i wykorzystaniem techniki przeciągnij i upuść (ang. drag & drop ). Dodatkowo na rynku istnieje wiele innych narzędzi programistycznych umoŝliwiających programowanie procesora TMS320C6711, na tle których moŝna wyróŝnić grupę środowisk zorientowanych na programowanie graficzne (np. produkt firmy Hyperception). Tworzenie kodu przy uŝyciu tego rodzaju narzędzi nie wymaga od projektanta znajomości języka programistycznego, jak to ma miejsce w przypadku wykorzystania kompilatorów C++ bądź komend asemblera. Polega ono na utworzeniu z dostępnych bloków struktury odpowiadającej konkretnemu algorytmowi. Jednym z takich narzędzi jest pakiet SIMULINK wykorzystujący róŝnego rodzaju biblioteki, a między innymi te które dedykowane są dla procesora TMS320C6711 i cyfrowych algorytmów przetwarzania sygnałów. Ponadto umoŝliwia on wstępne oszacowanie poprawności wykonywania konkretnego algorytmu na podstawie symulacji. 2. BIBLIOTEKI PAKIETU SIMULINK SIMULINK jest zintegrowanym środowiskiem symulacyjnym MATLABa zawierającym wiele dodatkowych modułów (ang. toolboxes). Do najwaŝniejszych, z punktu widzenia opisanego zagadnienia, naleŝą: Real-Time Workshop; Embedded Target for TI C6000DSP; Filter Design & Analysis Tool; DSP Blockset. Pierwsza z wymienionych powyŝej bibliotek słuŝy do generacji kodu odpowiadającego utworzonemu schematowi blokowemu, umoŝliwiając tym samym przeniesienie aplikacji na inną architekturę sprzętową. Generowany kod wynikowy jest zgodny ze standardem ANSI

- 65 - C, dzięki czemu jest on niezaleŝny od systemu docelowego. Zawiera on zarówno zmienne formatu stałoprzecinkowego (maks. 32-bitowego) jak równieŝ zmiennoprzecinkowego, dzięki czemu zapewniona jest wysoka precyzja obliczeń. Zmienne te lokowane są w programie statycznie jak i dynamicznie, dzięki czemu oszczędza się na wykorzystaniu pamięci operacyjnej systemu docelowego. Utworzony program moŝe obsługiwać zarówno procesy jednowątkowe jak i wielowątkowe wykonywane z róŝną częstotliwością. Dodatkowo Real-Time Workshop umoŝliwia kompilowanie kodu S-funkcji, które dają szerokie moŝliwości tworzenia programów w środowisku MATLABa. Biblioteka SIMULINKa DSP Blockset zawiera szereg bloków zorientowanych na zastosowanie w cyfrowym przetwarzaniu sygnałów. Bloki te są graficznymi reprezentantami efektywnych algorytmów, które mogą zostać poddane kompilacji dzięki Real-Time Workshop. PoniŜej wymieniono wybrane bloki opisywanej biblioteki:źródła sygnału;bloki filtrów cyfowych (adaptacyjne, IIR, FIR, w tym Filter Design & Analysis Tool narzędzie do interaktywnego projektowania filtrów cyfrowych);bloki transformacji (FFT, IFFT, i wiele innych);bloki dedykowane do estymacji; reprezentacje operacji matematycznych (algebra liniowa, operacje na macierzach, wielomiany, statystyka); bloki zarządzania danymi w postaci sygnału i ramki-zbioru danych (buforowanie, indeksowanie, itp.). Na uwagę zasługuje bardzo ciekawe i przyjazne uŝytkownikowi narzędzie Filter Design & Analysis Tool słuŝące do interaktywnego projektowania filtrów cyfrowych o skończonej i nieskończonej odpowiedzi. Projektowanie filtru z uŝyciem wspomnianego narzędzia polega na zdefiniowaniu szeregu parametrów w tym: jego struktury, charakterystyki amplitudowej, rzędu, częstotliwości próbkowania i innych. Filter Design & Analysis Tool po wybraniu parametrów filtru udostępnia uŝytkownikowi wiele ciekawych funkcji, między innymi: wykreślenie charakterystyki amplitudowej i fazowej; wykreślenie odpowiedzi filtru na pobudzenie skokowe i impulsowe; obserwację połoŝenia zer i biegunów filtru; moŝliwość podglądu i eksportu współczynników filtru cyfrowego do pliku. Kolejną waŝną pod względem szybkiego tworzenia oprogramowania jest biblioteka Embedded Target for TI C6000DSP, będąca w pewnym sensie rozszerzeniem do biblioteki DSP Blockset. Zawiera ona zbiór bloków ścisle związanych z peryferiami karty prototypowej TMS320C6711 DSK i funkcjami procesora DSP. Są to : kodek AD535 (zintegrowany przetwornik A/D i D/A); diody sygnalizacyjne LED;przełączniki DIP SWITCH (z naroŝnym, fortepianowym układem dźwigni przełączających)funkcja RESET; wymiana danych z wykorzystaniem kanałów RTDX. Wraz z Real Time Worshop umoŝliwia tworzenie projektu środowiska programistycznego Code Composer Studio zawierającego kod w języku C++ odpowiadający schematowi SIMULINKa oraz ładowanie skompilowanego programu do karty prototypowej. Dzięki temu moŝliwe jest tworzenie kodu dla konkretnego procesora sygnałowego bez znajomosci języka C++ i sposobu działania układów peryferyjnych karty prototypowej. Projektant unika w ten sposób długotrwałego pocesu zapoznawania się z obsługą konkretnych elementów, które wymagają odpowiedniej obsługi, inicjalizacji itd. Przykładem moŝe być sposób wymiany danych między procesorem sygnałowym TMS320C6711 a komputerem osobistym PC z uŝyciem tzw. kanałów RTDX. Wymaga on w przypadku standardowego kodowania w języku C++ umieszczenia w kodzie programu odpwiednich instrukcji

- 66 - inicjalizujących te kanały, wysyłających i odbierających dane, zamykająych kanały. Dodatkowo funkcje te muszą być w odpowiedniej kolejności, która zapewnia prawidłową funkcjonalność. Natomiast opisywana metoda z uŝyciem generatora kodu Real-Time Workshop w połączeniu z biblioteką Embedded Target for TI C6000DSP wymaga jedynie umieszczenia w schemacie SIMULINKa odpowiedniego bloku ( From RTDX do odbioru danych lub To RTDX do transmitowania danych) i nadaniu właściwych parametrów w odpowiednim oknie konfiguracyjnym. 3. REALIACJA PROGRAMU W ŚRODOWISKU SIMULINK NA PRZYKŁADZIE APLIKACJI PRZETWARZANIA DŹWIĘKU Pakiet SIMULINK z wykorzystaniem bibliotek dedykowanych do kompilacji i generacji kodu dla procesora sygnałowego TMS320C6711 firmy Texas Instruments jest bardzo wydajnym narzędziem wspomagających projektowanie. Sposób programowania z uŝyciem SIMULINKa opisany skrótowo poniŝej przedstawiono w celu zobrazowania moŝliwości efektywnego, pod względem poświęconego na programowanie czasu, procesu kodowania. PosłuŜono się przykładem programu realizującego efekt echa o parametrach zadawanych przełącznikami. Rys. 1. Widok przykładowego schematu pakietu SIMULINK realizacja efektu echa i transmisja próbek wyjściowych przez interfejs RTDX. Sygnał wyjściowy z bloku reprezentującego kodek AD535 sumowany jest z sygnałem wyjściowym opóźnionym względem aktualnego sygnału wejściowego o określoną ilość próbek zadawaną przełącznikami typu DIP SWITCH. Do odczytu stanu tych przełączników słuŝy blok o nazwie C6711 DSK DIP Switch, którego wyjście steruje przełącznikami Switch z biblioteki DSP Blockset powodującymi włączenie do toru głównego bloku opóźniającego o zadaną ilość próbek. Sygnał wyjściowy podawany jest do bloku reprezentującego wyjście kodeka AD535 znajdującego się na płycie prototypowej zestawu DSK. Dodatkowo jest on przesyłany do komputera PC przez tzw. kanał RTDX poprzez blok o nazwie To RTDX. Na schemacie blokowym umieszczono równieŝ blok o nazwie Reset C6711 DSK, dzięki czemu istnieje moŝliwość wymuszenia restartu programu z poziomu SIMULINKa, poprzez kliknięcie myszką w jego obszar. Tak utworzony schemat po niewielkiej zmianie, mianowicie po zastąpieniu bloków dedykowanych dla procesora serii TMS innymi blokami pakietu SIMULINK, moŝe zostać poddany wstępnej symulacji dla oszacowania poprawności wykonywania algorytmu.

- 67 - Tworzenie kodu wynikowego po utworzeniu schematu blokowego polega na wybraniu w menu głównym SIMULINKa opcji Simulation Parameters i wskazania na zakładce Real-Time Workshop na rozwijanej liście o nazwie Category opcji TI C6000 code generation. Po wybraniu przycisku Build & Run zostanie utworzony projekt środowiska Code Composer Studio, który zostanie automatycznie skompilowany i wczytany do procesora sygnałowego. Zakłada się, iŝ podczas wykonywanego procesu zainstalowane są wszystkie niezbędne do tego składniki, gdyŝ tylko wtedy opisana operacja zakończy się powodzeniem. 4. WNIOSKI KOŃCOWE Zmiennoprzecinkowy procesor sygnałowy TMS320C6711 oferuje duŝe moŝliwości obliczeniowe oraz jest programowalny przy uŝyciu języków wysokiego poziomu. Dzięki temu w stosunkowo prosty sposób i szybko moŝna zaimplementować dość złoŝone algorytmy cyfrowe. Dzięki wykorzystaniu moŝliwości pakietu SIMULINK w procesie generacji kodu procesora sygnałowego, symulacje komputerowe przeprowadzane w tym programie moŝna w prosty sposób skonfrontować z rzeczywistością. Pozwala to na tworzenie oprogramowania metodą graficzną poprzez budowanie schematu blokowego techniką drag&drop. Zaletami tej metody są przede wszystkim prostota tworzenia oprogramowania, a w konsekwencji oszczędność czasu poświęconego na tworzenie kodu, jak równieŝ czytelność samego schematu dla osób trzecich. Do wad moŝna by zaliczyć moŝliwość dalszej rozbudowy wygenerowanego automatycznie kodu, która wymaga od programisty pewnej znajomości sposobu przydzielania etykiet w programie oraz brak bloków obsługujących inne elementy systemu procesora TMS320C6711 takie jak np. port McBSP czy interfejs dostępu do pamięci zewnętrznej EMIF. W dzisiejszych czasach coraz częściej potrzebne są środowiska do szybkiego prototypowania dzięki czemu we wczesnej fazie moŝna decydować o powodzeniu projektu. Stąd teŝ coraz bardziej upowszechnia się metoda graficznego programowania o czym świadczy dostępność na rynku coraz szerszej gamy tego typu narzędzi. Pakiet SIMULINK ciągle zostaje uzupełniany o nowe biblioteki dedykowane do innych procesorów jak równieŝ istniejące biblioteki uzupełniane są o dodatkowe funkcje. Na tle środowisk do graficznego programowania procesora TMS320C6711 SIMULINK, oprócz moŝliwości efektywnego tworzenia kodu, wyróŝnia się przyjaznym interfejsem udostępniającym projektantowi opcję symulacji tworzonych algorytmów. 5. BIBLIOGRAFIA 1. TMS320C6000 Code Composer Studio Help, Texas Instruments 2000; 2. TMS320C6000 Peripherals Reference Guide, Texas Instruments 2001; 3. Embedded Target for the TI TMS320C6000 DSP Platform User s Guide, version 2, The MathWorks; 4. Embedded Target for TI C6000 DSP 2.0 Release Notes, The MathWorks; 5. Real-Time Workshop User s Guide, version 6, The MathWorks; 6. Filter Design Toolbox User's Guide, version 3, The MathWorks.

- 68 - EFFECTIVE PROGRAMMING OF TMS320C6711 DIGITAL SIGNAL PROCESSOR USING SIMULINK TOOLBOXES The use of SIMULINK toolboxes for the rapid code development for digital signal processors (DSPs) is discussed. The target hardware platform is a development starter kit (DSK) from Texas Instruments, featuring a TMS320C6711 floating point device. The properties of the platform are outlined regarding its applications for rapid prototyping and scientific research. The functionalities of relevant SIMULINK toolboxes are reviewed briefly. A detailed example of code development is provided, the application used for the example being an audio reverberation algorithm. The code provides an interface to DIP switches and real-time communication with the host PC. The advantages and disadvantages of SIMULINK-based graphical programming are also discussed. This kind of programming approach can be particularly useful when development time is at a premium. It does not require extensive knowledge of C/C++ programming.