Współpraca procesora ColdFire z urządzeniami peryferyjnymi

Post on 16-Oct-2021

5 views 0 download

Transcript of Współpraca procesora ColdFire z urządzeniami peryferyjnymi

1

Współpraca procesora ColdFire z urządzeniami peryferyjnymi

2

Współpraca procesora z urządzeniami Współpraca procesora z urządzeniami peryferyjnymiperyferyjnymi

Interfejsy dostępne w procesorach rodziny ColdFire:● Interfejs równoległy,● Interfejsy szeregowe:

– Interfejs zgodny ze standardem EIA 232,– Interfejs SPI,– Interfejs I2C,– Interfejs CAN,– Interfejs USB,

● Magistrala PCI.

3

Współpraca procesora z urządzeniami Współpraca procesora z urządzeniami peryferyjnymiperyferyjnymi

Interfejsy dostępne w procesorach rodziny ColdFire:● Interfejs równoległy,● Interfejsy szeregowe:

– Interfejs zgodny ze standardem EIA 232,– Interfejs SPI,– Interfejs I2C,– Interfejs CAN,– Interfejs USB,

● Magistrala PCI.

4

Serial Peripheral InterfaceSerial Peripheral Interface

Cechy interfejsu SPI:● Szeregowa transmisja synchroniczna,● Transfer full duplex, master-slave lub master-multi-slave,● Duża szybkość transmisji (>12 Mbit/s),● Zastosowanie:

– układy peryferyjne (ADC, DAC, RTC, EEPROM, termometry, itp),

– sterowanie pomocnicze (matryca CCD z szybkim interfejsem równoległym).

5

Serial Peripheral InterfaceSerial Peripheral Interface

Master Output Slave Input

Master Input Slave Output

Master Slave

CS

6

Protokół interfejsu SPIProtokół interfejsu SPIKonfiguracja sygnału zegarowego:

Polaryzacja zegara:Polaryzacja ujemna CPOL = 0 (stan niski, 8 impulsów zegara),

Polaryzacja dodatnia CPOL = 1 (stan wysoki, 8 ujemnych impulsów zegara).

Faza zegara:Zerowa faza zegara (próbkowanie na pierwszym zboczu zegara),

Opóźniona faza zegara (próbkowanie na drugim zboczu zegara).

7

Termometr z interfasem SPITermometr z interfasem SPI

TMP 121:● Obudowa SOT 23-6,● FClk mak. = 15 MHz● Interfejs: SPI-Compatible Interface●Rozdzielczość: 12-Bit + Sign, 0.0625°C●Dokładność: ±1.5°C od −25°C do +85°C●Pobór prądu w stanie uśpienia: 50μA (mak.)●Zasilanie: 2.7V to 5.5V

3 mm

8

Ramka SPI termometru TMP121Ramka SPI termometru TMP121

9

Queued SPI (2)Queued SPI (2)

Cechy modułu QSPI:● Kolejka FIFO umożliwiająca obsługę do 16 transferów (bez udziału procesora),● Transfery danych od 8 do 16 bitów,● Cztery programowalne wyjścia aktywujące urządzenia dołączone do SPI (obsługa do

15 urządzeń),● Szybkość transmisji od 129,4 kbps do 16,67 Mbps dla 66 MHz,● Programowalne opóźnienia pomiędzy transferami,● Programowalna polaryzacja i faza zegara,● Wsparcie do ciągłej pracy z minimalnym udziałem procesora (przetwornika ADC,

DAC)

10

Queued SPI (2)Queued SPI (2)

3x8x16 B

FIFO

Command

RxD FIFO 8x16 B

TxD FIFO 8x16 B

11

Magistrala I2CMagistrala I2CMagistrala I2C:

● Dwuprzewodowy interfejs synchroniczny (SDA – linia danych, SCL – linia zegara),● Transmisja dwukierunkowa, typu master-slave (multi-master), ramki 8-bitowe, ● Szybkość transmisji:

● 100 kbps (standard mode),● 400 kbps (fast mode),● 3,4 Mbps (high-speed mode),

● Urządzenia posiadają niepowtarzalne adresy (7-bitów lub 10-bitów),● Synchronizacja przy pomocy sygnału zegarowego umożliwia pracę urządzeń

komunikujących się z różnymi szybkościami,● Liczba urządzeń dołączonych do magistrali ograniczona jest pojemnością magistrali

(400 pF),● Mechanizmy arbitrażu umożliwiające uniknięcie kolizji i utraty danych.

12

Zastosowanie interfejsu I2CZastosowanie interfejsu I2C

W sprzedaży dostępnych jest wiele bardzo tanich układów scalonych sterowanych poprzez I²C:

* PCF8563/8583 - zegar, kalendarz, alarm, timer, dodatkowo może służyć jako RAM

* PCF8574 - pseudo-dwukierunkowy 8-bitowy ekspander * PCF8576, PCF8577 - sterowniki wyświetlaczy LCD * PCF8582 - pamięć EEPROM 256 bajtów (1, 2, 4 kB, ... MB) * PCF8591 - 8-bitowy, 4-kanałowy przetwornik analogowo-cyfrowy i cyfrowo-

analogowy

13

Magistrala I2CMagistrala I2C

Urządzenie nadrzędne (Master) – inicjuje transmisję, generuje sygnał zegarowy

Urządzenie podrzędne (Slave) – analizuje wysłany przez urządzenie adres i transmituje lub odbiera dane.

14

Rozpoczęcie oraz zakończenie transmisji Rozpoczęcie oraz zakończenie transmisji

Rozpoczęcie transmisji – generacja sygnału START (opadające zbocze na szynie SDA, zmiana stanu z “1” na “0” logiczne, podczas ważnego sygnału SCL = ”1”). Sygnał generuje Master.

Zakończenie transmisji – generacja sygnału STOP (narastające zbocze na szynie SDA, zmiana stanu z “0” na “1” logiczną,podczas ważnego sygnału SCL = ”1”). Sygnał generuje Master.

15

Protokół I2CProtokół I2C

A) Transmisje rozpoczyna Master generując sygnał START. B) Następnie transmituje 8 bitów danych (7 bitów adresowych, bit R/W). C) Po transmisji 8 bitów Slave przejmuje magistralę i wymusza odpowiedni poziom na linii SDA (9 takt zegara). Odpowiada w ten sposób bitem potwierdzenia ACK (brak potwierdzenia, ACK = “1”). E) Po przesłaniu adresu następuje faza odczytu lub zapisu danej do obsługiwanego urządzenia (8 bitów danych). F) Po przesłaniu danych urządzenie nadrzędne kończy transmisję generując brak potwierdzenia (ACK = “1”) oraz bit stopu.

16

Zapis lub odczytZapis lub odczyt

7-bit

7-bit

17

Magistrala I2CMagistrala I2C

Moduł sterujący interfejsem I2C procesorów z rodziny ColdFire:• Zgodny ze standardem w wersji 2.1,• Umożliwia dołączenie urządzeń zasilanych napięciem 3,3 V,• Praca w trybie multimater,• Możliwość użycia 50 różnych częstotliwości zegara (fclk/28 - fclk/2048),• Transfery poszczególnych bajtów wyzwalane przerwaniami,• Arbitration-lost interrupt with automatic mode switching from master to slave• Przerwanie zgłaszane, gdy zostanie wykryty adres urządzenia w trybie Slave,• Automatyczne Wykrywanie stanu zajętością magistrali.

18

Schemat blokowy modułu I2CSchemat blokowy modułu I2C

19

Rejestr statusowy I2SRRejestr statusowy I2SR

20

Magistrala CAN (Control Area Network)Magistrala CAN (Control Area Network)Charakterystyka magistrali CAN:

● Szeregową magistralą komunikacyjną typu multi-master (obecny standard 2.0A oraz 2.0B),● Długość identyfikatora: 11-bitowy identyfikator (2.0A ) i 29-bitowy identyfikator (2.0B),● Transmisja oparta na komunikatach rozgłoszeniowych (broadcast),● Transmisja różnicowa,● Szybkość transmisji do 1 Mbit/s na dystansie do 40 m (250 kbit/s na 250 m),● Transmisja do 8 bajtów w jednym komunikacie,● Komunikaty rozpoznawana są na podstawie identyfikatorów,● CAN charakteryzuje się dużą odpornością na zakłócenia elektromagnetyczne i

niezawodnością,● Rozbudowana sprzętowa obsługa błędów,● Możliwość dołączenia do 30 urządzeń do magistrali.

21

Model warstwowy interfejsu CANModel warstwowy interfejsu CAN

22

Warstwa fizyczna (1)Warstwa fizyczna (1)

Rter. = 120 R

SN65HVD230

23

Warstwa fizyczna (2)Warstwa fizyczna (2)

Dwa stany magistrali:

“1” niedominujący (recessive)“0” dominujący (dominant)

24

Transceiver CANTransceiver CAN

25

Przykładowa ramka magistrali CANPrzykładowa ramka magistrali CAN

ID – identyfikator ramkiRTR (Remote Transmit Request) – żądanie przesłania danychArbitration Field – ustala priorytet komunikatu (12 bit, 0 najwyższy priorytet)Control Field – (IDE – “0” ramka standardowa CAN 2.0A, “1” ramka rozszerzona CAN 2.0B,

RB0 - zarezerwowany, DLC – długość ramki)CRC – 15-bitowa suma kontrolna Data Field – transmitowane dane (maksymalnie 8 B)

Error Frame – błąd w odebranej ramce (CRC) Overload Frame – urządzenie nie jest gotowe do przesłania danycha

26

Sterownik CAN procesora ColdFire (1)Sterownik CAN procesora ColdFire (1)

Cechy charakterystyczne:● Sterownik kompatybilny ze standardem CAN 2.0:

● Obsługa ramek zgodnych z CAN 2.0A (do 109 bit),● Obsługa ramek rozszerzonych zgodnych z CAN 2.0B (do 127 bit),● Długość pola danych maksymalnie 8 B,

● Programowalna szybkość transmisji do 1 Mbit/s,● 16 programowalnych buforów pracujących jako Rx lub Tx (0-8 B),● Adresowanie zależne od zawartości ramki,● 16-bitowy rejestr odmierzający czas,● Licznik czasu synchronizowany specjalnymi komunikatami● Maskowalne przerwania,● Sterownik niezależny od medium fizycznego (transmisja różnicowa,

światłowodowa),● Krótki czas obsługi komunikatów o dużym priorytecie,● Tryb obniżonego poboru mocy (Sleep, Hibernation).

27

Sterownik CAN procesora ColdFire (2)Sterownik CAN procesora ColdFire (2)

28

Współpraca procesora ColdFire z Współpraca procesora ColdFire z zewnętrznym układem PHYzewnętrznym układem PHY

29

Bufory komunikacyjne CANBufory komunikacyjne CAN

RTR0 Data FrameRemote Frame

ID = 29 bit

ID = 11 bit

SRR0 Data FrameRemote Frame

30

EgzaminEgzamin

Sala Seminaryjna

Egzamin: 26.01.2007 1.02.2007

~16.02.2007

31

Prace magisterskiePrace magisterskie

1. Współpraca z ośrodkiem naukowo-badawczym DESY w Hamburgu w ramach projektu CARE

2. Współpraca w ramach projekty PERPLEXUS

32

CARE (1)CARE (1)

Sterownik SimCon 3.1LSterownik SimCon 3.1L

33

CARE (2) CARE (2)

ATCA - Advanced Telecom Computing Architecture

Sterownik Sterownik ATCAATCA

34

CARE (3)CARE (3)

Płyta uruchomieniowa z interfejsem PCIePłyta uruchomieniowa z interfejsem PCIe

35

PERPLEXUS (1)PERPLEXUS (1)

36

PERPLEXUS (2)PERPLEXUS (2)

37

PERPLEXUS (3)PERPLEXUS (3)