Pamięć EEPROM- kasowalna, programowalna ROM (możliwość kasowania zawartości i wprowadzania nowej za pomocą zewnętrznego programatora). Składa się z 2 rodzajów bloków (związanych z interfejsem SPI i układ sterujący pamięcią): we/wy układ sterujący, rejestr statusu, układ sterujący pamięcią, generator kontroli amplitudy przy odczycie/zapisie. 2 część- pamięć właściwa: dekoder wierszy, dekoder kolumn, rejestr zatrzaskowy stron. Właściwości: 1. niski pobór mocy 2. 1024*8bity 3. 16 bajtowe strony 4. czas cyklu zapisu pięć ms. 5. ochrona - ¼, ½, całość 6. wysoka niezawodność 7. wbudowana ochrona zapisu 8.sekwencyjny odczyt danych. Architektura Harvard- obszar pamięci danych i programu (zarówno wew i zew) są rozdzielone. Magistrale danych i rozkazów mają rożne szerokości(różne długości słowa). Architektura zmodyfikowana Harvard- obszar pamięci w tej architekturze łączy cechy architektury Harvard i von-Neuman tzn. Obszary pamięci danych i rozkazów (ROM i RAM) są rozdzielone ale posiadają taką samą długość słowa. Architektura von-Neumana- architektura pamięci cechuje się jednolitością (pamięć pojedyncza, proces szeregowania może w jednej chwili pobierać z pamięci danych i instrukcji). PLU- równoległa jednostka logiczna, umożliwia wykonanie operacji logicznych bez zmiany zawartości akumulatora (np. Bity rejestrów stron mogą być zmieniane bez spowalniania obliczeń). Rejestry specjalne: 1. rejestr stanu ST0 rejestr stanu ST1(rekonfiguracja procesora poprzez ustawienie lub zerowanie rejestru), 2. rejestr stanu trybu procesora PMST, 3. rejestr sterujący buforów kołowych CB CR; rejestry pomocnicze: AR0-AR7 przy adresowaniu pośrednim(łatwa inkrementacja). ALU współpracuje z akumulatorem wykonuje +,-, AND, OR. Akumulator- 32 bity współpracuje z ALU, układem mnożącym (32 bitowy bufor). Rejestr przesuwający- skalowanie danych poprzez przesuwanie bitów w prawo lub lewo, unikanie przepełnienie. Rejestr T -pomocniczy do zapamiętania mnożnej podczas procesu mnożenia. Stos STACK- 8*16 bitowy, stos sprzętowy służy do przechowania zawartości PC podczas obsługi procedur i przerwań. Interfejs I2C- interfejs będący poprzednikiem innych współczesnych interfesjów szeregowych w tym CAN. Pozwala na szybką komunikację do 100 kB/s. Magistrala składa się z dwóch linii SDA, SCL. Przesyłanie według protokółu: start transmisji danych gdy magistrala jest wolna; podczas transmisji sygnał SDA musi być stabilny. Transmisja zaczyna się na START i kończy na STOP. Port 0- końcówki o numerach 32-39. Podstawowe funkcje jak dla portów P1i P2. Różnicą jest zwiększona obciążalność tego portu oraz fakt nie posiadania wbudowanych rezystorów podciągających końcówki portu do + zasilania w wypadku odczytu. Bardzo ważną rolę pełni P0 jest- funkcją multipleksowanej magistrali danych i młodszej części adresu. Port 2- końcówki o numerach 21-28. Spełnia wszystkie funkcje jak w P1, dodatkowo przez końcówki P2 podawana jest w razie potrzeby starsza część adresu przy dostępie do zewnętrznej części danych SRAM a także programu EPROM. Port 3- port może być wyjściem lub wejściem. Piny P3.0(RXD) i P3.1(TXD) mogą pełnić rolę portu transmisji szeregowej. W praktyce poprzez te 2 wprowadzenia można przesyłać informacje z i do procesora z innych układów cyfrowych w sposób szeregowy. Alternatywną funkcją końcówek P3.2(INT0) oraz P3.3(INT1) jest funkcja detekcji przerwań zewnętrznych. Przerwanie w tym przypadku odnosi się do zmiany stanu logicznego z 1 na 0. W efekcie we wnętrzu procesora 8051 została ustawiona flaga- znacznik zgłoszenia przerwania. Pamięć EPROM- pamięć programowalna elektrycznie. Gdy posiada okienko ze szkła kwarcowego można ją kasować i programować ponownie. Kasowanie odbywa się przy udziale światła ultrafioletowego. Pamięć FLASH 128kB- szczególną zaletą pamięci w stosunku do pamięci EEPROM jest krótki czas kasowania i zapisu. Do programowania i kasowania potrzebne jest napięcie od 11 do 13,5V podawane z zewnątrz lub wewnętrznie przez wbudowaną przetwornicę. Właściwości: 1. pojedyncze zasilanie + 5V +-10%, maksymalna czas dostępu 45ns, 2. elastyczna architektura oparta na sektorach (sektory mogą być czyszczone), 3. możliwość wymazania całego chipu, 4. ochrona sektorów przed zapisem ,5. wbudowany algorytm programowania automatycznie programujący. Specyfikacja USB 2.0- zapewnia obsługę szerokiej gamy synchronicznych i asynchronicznych urządzeń danych. Co wymaga uwzględniania ich różnorodnych potrzeb. Topologia- fizyczne połączenie USB jest warstwową topologią gwiazdy(centralnym urządzeniem jest HUB). Każdy segment łącza jest połączeniem punkt-punkt pomiędzy postem i hubem. Przepływ danych- za pomocą dwóch typów protokołów: sterownik kontrolera hosta HDC- jest interfejsem programowym pomiędzy kontrolerem hosta a oprogramowaniem systemowym USB. Sterownik USB- USBD- jest interfejsem pomiędzy oprogramowaniem systemu USB a oprogramowaniem klienckim. Potoki- rura (potok USB) jest połączeniem pomiędzy endpointem urządzenia i oprogramowaniem hosta. Rury reprezentują zdolność do przenoszenia danych pomiędzy oprogramowaniem hosta poprzez bufor pamięci i endpointem urządzenia. Istnieją dwa typy rur: łańcuch - dane nie mające struktury ramek USB, wiadomość- posiada strukturę ramek USB. SPI- interfejs o możliwościach i właściwościach podobnych do I2c, o większej szybkości transmisji danych sięgającej kilka MB/2. Stworzony przez Motorolę, obecnie jest dość często wykorzystywany przez innych producentów. Interfejs ten został standardowo wbudowany w wiele mikrokontrolerów. D<2>BUS- Interfejs Digital Data Bus opracowany przez firmę Philips, stworzony z myślą o łączeniu niewielkiej liczby urządzeń na małym obszarze, umożliwiający transmisję danych z szybkością 100kbit/s pomiędzy urządzeniami oddalonymi od siebie o 150m. Pozwala zaadresować 4096 jednostek. Jako medium transmisyjne najczęściej używa się pary skręconych przewodów, lub kabla koncentrycznego. Architektura RISC- o zredukowanej liście instrukcji. Cechy: 1. procesor zbudowany zgodnie z architekturą harwardzką, 2.procesor wykorzystuje przetwarzanie potokowe(pipeling) w celu zwiększania szybkości wykonywania programu, 3. zbiór realizowanych instrukcji jest ograniczony i spełnia warunki ortogonalności(symetrii). 4.procesor tego typu zamiast prostego rejestru instrukcji stosuje się pamięć FIFO (1in i 1out), która gromadzi kolejkę instrukcji. Układ przerwań Mikrokontroler 8051 wyposażony jest w priorytetowy, dwupoziomowy układ przerwań, który jest specjalizowaną strukturą logiczną, której zadaniem jest monitorowanie stanu wskaźników przerwań i zgłaszanie faktu ustawienia określonego wskaźnika do układu sterowania. W mikrokontrolerze 8051 przerwanie może zostać wywołane przez jedno z pięciu wskaźników. 4 ze wskaźników są w rejestrze - 88h. W przypadku zerwań zewnętrznych i od układów czasowych, wskaźniki przerwania są sprzętowo zerowane po przyjęciu zgłoszenia przerwania (za wyjątkiem sytuacji, gdy przerwanie zewnętrzne jest zgłaszane niskim poziomem). Wskaźniki przerwania z układu transmisji szeregowej muszą być zerowane programowo przez procedurę obsługi przerwania, gdyż sprzętowe zerowanie uniemożliwiłoby określenie, który ze wskaźników (RI czy TI) przerwanie wywołał. Do uaktywnienia poszczególnych przerwań i określania ich priorytetów przeznaczone są rejestry sterujące IE- A8h - B8h. Podczas realizacji procedury obsługi przerwania poziomu 0 może nastąpić jej przerwanie przez procedurę obsługi przerwania o poziomie 1 - nie może jednak wystąpić sytuacja odwrotna. Nie może również wystąpić wzajemne przerywanie procedur obsługi przerwań z tego samego poziomu. Procesor TMS320C50: przegląd wiadomości -Wydajność 40 MIPS - Statyczny układ CMOS -> 2
tryby zmniejszania poboru mocy(5µA /60mA / 100mA) - Zgodny z TMS3201x, 2x, 2xx - Emulacja przez wydzielony port - Poszerzony zestaw instrukcji - 1-9 K słów pami6ci RAM (on-chip) - 224 K słów adresowalnej pamięci zewnętrznej (64 K - program, 64 K - dane, 64 K - I/O, 32 K - pamięć globalna) _ 32 b jednostka arytmetyczno-logiczna (ALU), akumulator i bufor akumulatora - 16 b równoległa jednostka logiczna (PLU) - instrukcje mnożenia i dodawania w jednym cyklu rozkazowym - osiem rejestrów pomocniczych (AR0- AR7) z dedykowana jednostka Arytmetyczna (ARAU) do adresowania pośredniego - 11 rejestrów przełączania kontekstu (shadow registers) wspomagających obsługa przerwań - ośmiopoziomowy stos sprzętowy - rejestr przesuwający w lewo i w prawo o wartość od 0 do 16 - 2 bufory kołowe do adresowania kołowego zdolność powtarzania pojedynczej instrukcji i bloku instrukcji - instrukcje przesuwania (move) bloków pamięci programu i danych - dwukierunkowy synchroniczny port szeregowy - port szeregowy z podziałem czasu - wewnętrzny zegar - 16 portów równoległych we/wy - 16 programowalnych generatorów cykli opóźniających (wait-state) - tryb adresowania indeksowego - tryb adresowania z rewersji bitów. Układy peryferyjne: port szeregowy- synchroniczny, dwukierunkowy, i podwójnie buforowany służy np. Do współpracy z układami A/C i C/A, kodekami. Port szeregowy TDM- do komunikacji między układami w systemie wieloprocesorowym. Układ czasowy: programowalny 16-bitowy, umożliwia podział częstotliwości zegara w sosunku 1/2 do 1/32. Generator opóźnień- do współpracy procesora z wolniejszymi pamięciami zewnętrznymi. Porty równoległe- do komunikacji z urządzeniami o prostych układach dekodujących (instrukcje IN oraz OUT). Pamięć RAM krótki czas dostępu; część pamięci może być skonfigurowana jako pamięć programu lub pamięć danych; 1056 słów- można zapisywać i odczytywać w pojedynczym cyklu; zwykle po uruchomieniu procesora program, dane oraz informacje o konfiguracji są ładowane do pamięci RAM, skąd program jest uruchamiany. Pamięć ROM wewnętrzna pamięć programu od 2 do 16 K słów; programowanie możliwe tylko podczas produkcji; możliwość dołączenia zewnętrznej pamięci. RDZEŃ jednostka ALU współpracujący z akumulatorem wykonuje +,-,AND,OR; wyniki zapisywane w akumulatorze. Rejestr przesuwający shifter umożliwia skalowanie danych-poprzez przesunięcie ciągu bitów w lewo i w prawo; mniej znaczące bity są wypełniane zerami; pozwala na uniknięcie przepełnienia; Akumulator rejestr pamięciowy 32-bitowy; współpracuje z układem mnożącym, pamięcią , ALU i rejestrem skalującym; możliwy jest dostęp do części MSB (ACCH) i LSB (ACCL) akumulatora; akumulator posiada bufor 32 b (pamięć tymczasowa). Rejestry pomocnicze AR0-AR7 pamięć pomocnicza danych lub pamięć wskaźników do danych (przy pośrednim adresowaniu); rejestry AR mogą być łatwo inkrementowane lub dekrementowany; operacje na danych w rejestrach pomocniczych są wykonywane przez ARAU- niezależna jednostkę arytmetyczną. Równoległa jednostka logiczna PLU umożliwia wykonywanie operacji logicznych bez zmiany zawartości akumulatora. RDZEŃ Rejestry stanu i sterowania rejestr stanu ST0 i ST1; rejestr stanu trybu procesora (PMST); rejestr sterujący buforów kołowych (CBRC). ystąpienie przerwania 1)zawartość licznika rozkazów zostaje zapamiętana (na 8-poziomowym stosie sprzętowym) 2)Zapamiętanie kontekstu: zawartość rejestrów rdzenia zostaje zapamiętana (na stosie 1-poziomowym). 3)Licznik rozkazów zostaje załadowany adresem procedury obsługi przerwania (ISR) 4)procesor wykonuje program procedury przerwania, aż do napotkania instrukcji RETE lub RETI.