Interfejsy synchroniczne

Slides:



Advertisements
Podobne prezentacje
Zerowanie mikroprocesorów Cel: wprowadzenie mikroprocesora w określony stan początkowy Zwykle realizowany poprzez: inicjalizację licznika rozkazów (PC)
Advertisements

System interfejsu RS – 232C
Co to jest BIOS ? Piotr Pierzchalski kl. III B.
Sieci komputerowe Protokół TCP/IP Piotr Górczyński 27/09/2002.
Wykonał : Marcin Sparniuk
Liczniki.
PRZERZUTNIKI W aktualnie produkowanych przerzutnikach scalonych TTL wyróżnia się dwa podstawowe rodzaje wejść informacyjnych: - wejścia asynchroniczne,
Architektura szynowa systemu mikroprocesorowego szyna danych szyna sterująca szyna adresowa µP szyna danych szyna adresowa D7,..., D1, D0 A15,..., A1,
Wykład 9 Dedykowane procesory DSP oraz mikrokontrolery z jednostką DSP
Podstawowe składniki funkcjonalne procesora i ich rola.
by Ernest Jamro Katedra Elektroniki, AGH Kraków
by Ernest Jamro Katedra Elektroniki, AGH Kraków
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Magistrala & mostki PN/PD
Komputer, procesor, rozkaz.
I T P W ZPT PRUS 2007 Krzysztof Jasiński 1 PRUS - Projektowanie Programowalnych Układów Scalonych Krzysztof Jasiński
I T P W ZPT 2009 PRUSn_W2 Krzysztof Jasiński 1 PRUS - Projektowanie Programowalnych Układów Scalonych Krzysztof Jasiński
Obsługa routera Wykład: Zaawansowane sieci komputerowe
1-Wire® Standard 1-Wire®, zwany też czasami siecią MicroLAN, oznacza technologię zaprojektowaną i rozwijaną przez firmę Dallas Semiconductor polegającą.
Dr Anna Kwiatkowska Instytut Informatyki
Interaktywny serwer WWW zrealizowany na platformie mikrokontrolera
SPRZĘŻENIE ZWROTNE.
Programowalny układ we-wy szeregowego 8251
Architektura komputerów
przykładowy 8-bitowy mikroprocesor uniwersalny CISC
Przerzutniki.
Układy kombinacyjne cz.2
Dekodery adresów.
Programowalny układ we/wy równoległego.. Wyprowadzenia układu.
MCS51 - wykład 6.
Architektura komputerów
Interfejs Technologie informacyjne – laboratorium Irmina Kwiatkowska
Protokół Komunikacyjny
Układy rejestrów cyfrowych
Rodzina AVR wykład 4.
Interfejsy urządzeń peryferyjnych
Magistrale szeregowe.
Zasada działania komputera
Wiadomości wstępne o sieciach komputerowych
Dynamiczna rekonfiguracja układów FPGA
Budowa i rodzaje procesorów.
Architektura PC.
12. Input Capture – Wejście przechwytywania
Spis treści W świecie algortmów -Budowa algorytmu
Komunikacja mikrokontrolerów ze światem zewnętrznym
OPB - On-chip Peripherial Bus AXI – Advance eXtensible Interface
Magistrala i Gniazda rozszerzeń budowa i zasada dzialania.
Pudełko Urządzenia Techniki Komputerowej
Sieci komputerowe E-learning
KARTY DŹWIĘKOWE.
BUDOWA I ZASADA DZIAŁANIA
Klawiatura i mysz.
Przerzutniki bistabilne
Systemy operacyjne i sieci komputerowe
Pamięć DRAM.
Struktura wewnętrzna mikrokontrolera zamkniętego
Pamięć SRAM.
POLITECHNIKA POZNAŃSKA WBMiZ Zakład Urządzeń Mechatronicznych STEROWNIKI URZĄDZEŃ MECHATRONICZNYCH
SunFollower Projekt zespołowy Prowadzący: Dr inż. Marek Woda Wykonał: Bartosz Przybyłek Data prezentacji:
Sadsadafghfhfghg POLITECHNIKA RZESZOWSKA WYDZIAŁ ELEKTROTECHNIKI I INFORMATYKI POLITECHNIKA RZESZOWSKA im. Ignacego Łukasiewicza WYDZIAŁ ELEKTROTECHNIKI.
Protokoły i interfejsy cyfrowe
Nowe rozwiązania sieci miejscowych - sieć LIN
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Mikrokontrolery z rdzeniem ARM Cortex-M0+ Energooszczędność
Sensory 3-osiowy kompas cyfrowy
Mikrokontrolery System przerwań
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Mikrokontrolery MSP430 DMA
Transmisja radiowa Arduino & nRF24L01P
Zapis prezentacji:

Interfejsy synchroniczne Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Interfejsy synchroniczne Interfejsy można podzielić na synchroniczne (oddzielna linia zegara), np. I2C, SPI oraz asynchroniczne, np. CAN W rozwiązaniach synchronicznych zmiana częstotliwości zegara w trakcie transmisji danych nie wpływa na jej jakość Zygmunt Kubiak

Interfejsy synchroniczne Transmisja synchroniczna Zazwyczaj jeden z węzłów pełni funkcje master’a – zarządza transmisją (inicjuje) i generuje zegar Zygmunt Kubiak

Interfejsy synchroniczne Zygmunt Kubiak

Interfejsy synchroniczne I²C Magistrala I2C (ang. Inter IC) opracowana została na początku lat 80-tych w firmie Philips jako lokalny synchroniczny interfejs szeregowy (początkowo dla sprzętu audio-wizualnego), służący do wymiany danych pomiędzy układami scalonymi danego systemu. M 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Magistrala łączy układy programowalne 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykładowa sieć I²C (IIC - Inter Integrated Circuit) 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Magistrala I2C składa się z dwóch linii sygnałowych : SDA (serial data) - do przesyłania danych i SCL (serial clock) - do przesyłania sygnału taktującego, oraz linii masy. Obydwie linie magistrali I2C są liniami dwukierunkowymi. Dzięki przemyślanej konstrukcji magistrali I2C może być do niej podłączonych wiele układów 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Dzięki zastosowaniu tranzystorów z otwartym drenem w stopniu wyjściowym („suma na drucie”) możliwe jest podłączenie do magistrali kilku i więcej układów komunikujących się ze sobą po szynie I2C. Obwody sterujące liniami SCL i SDA maja taka samą budowę i są przystosowane do pracy dwukierunkowej. Rezystory Rp są niezbędne. 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Transmisja bitów – „0” jest sygnałem dominującym który wymusza stan linii 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Warunki Start i Stop 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Potwierdzenie transmisji bajta – potwierdza zawsze odbiorca (9-ty bit 0 - sygnał „0”) 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Procedura arbitrażu dwóch Master’ów 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład kompletnego procesu transmisji danych 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Transmisja danych do modułu Slave Odczyt danych z modułu Slave 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Kombinowany transfer z powtórzonym warunkiem Startu (kierunek transferu zależy od wartości bitów R/W) 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Transfer kombinowany. Master przesyła dane do dwóch węzłów Slave, jednego z 7-bitowym adresem i drugiego z adresem 10-bitowym. Pierwszy bajt 10-bitowego adresu rozpoczyna się od charakterystycznego ciągu 11110 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C C8051F020 – SMBUS/I²C 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C C8051F020 – SMBUS/I²C Master nadaje sekwencje danych 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C C8051F020 – SMBUS/I²C Master odbiera sekwencje danych 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C C8051F020 – SMBUS/I²C Slave nadaje dane 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C C8051F020 – SMBUS/I²C Slave odbiera dane 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład czujnik ciśnienia BMP180 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład czujnik ciśnienia BMP180 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład czujnik ciśnienia BMP180 Współczynniki kalibracyjne zapisane w EEPROM 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład czujnik ciśnienia BMP180 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xAA + ACK - adres rejestru sterującego w BMP180 Starszy bajt rejestru 0xAA – parametr AC1 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x1D + ACK - MSB 0x08 + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xAC + ACK - adres rejestru sterującego w BMP180 Starszy bajt rejestru 0xAC – parametr AC2 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0xFC + ACK - MSB 0x4F + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xAE + ACK - adres rejestru sterującego w BMP180 Starszy bajt rejestru 0xAE – parametr AC3 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0xCF + ACK - MSB 0x03 + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xB2 + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xB2 – parametr AC5 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x61 + ACK - MSB 0xFA + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xB4 + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xB4 – parametr AC6 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x3D + ACK - MSB 0xC8 + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xB6 + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xB6 – parametr B1 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x19 + ACK - MSB 0x73 + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xB8 + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xB8 – parametr B2 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x00 + ACK - MSB 0x1B + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xBA + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xBA – parametr MB 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x80 + ACK - MSB 0x00 + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xBC + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xBC – parametr MC 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0xD1 + ACK - MSB 0xF6 + NACK - LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 0xEE (0x77 + bit R/W = 0 + ACK) – adres BMP180, zapis 0xBE + ACK - adres rejestru sterującego w BMP180 Starszy baj rejestru 0xBE – parametr MD 0xEF (0x77 + bit R/W = 0 + ACK) – adres BMP180, odczyt 0x0A + ACK - MSB 0xD2 + NACK – LSB 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne I²C Przykład transmisji I²C - konfiguracja BMP180 Przedstawiona powyżej korespondencja między mikrokontrolerem a sensorem BMP180 dotyczy odczytu współczynników kalibracyjnych (AC1, AC2, AC3, AC4, AC5, AC6, B1, MB, MC, MD), które są niezbędne dla obliczenia rzeczywistej wartości temperatury i ciśnienia Cała sekwencja podzielona jest na pakiety zaczynające się od adresu układu BMP180 i zakończone bitem NACK (wybór adresu BMP180, wybór adresu rejestru zawierającego współczynnik kalibracyjny, odczyt współczynnika kalibracyjnego) Każdy pakiet załączonej wyżej sekwencji, odczytuje jeden współczynnik kalibracyjny 11-2014 Zygmunt Kubiak

Interfejsy synchroniczne SPI Zygmunt Kubiak

Interfejsy synchroniczne SPI SPI (ang. Serial Peripheral Interface) Opracowana w firmie Motorola Interfejs SPI umożliwia szybkie synchroniczne przesyłanie danych pomiędzy mikrokontrolerami, a także układami zewnętrznymi Transmisja odbywa się w trybie Master-Slave 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Sygnały sterujące MISO (Master In Slave Out) – linia wejściowa danych dla układu Master MOSI (Master Out Slave In) - linia wejściowa danych dla układu Slave SS (Slave Select) – linia wyboru trybu pracy układu, odpowiednik sygnału CS (Chip Select) SCK (Serial Data Clock) – linia zegara Uwaga! czasem spotyka się inne oznaczenia sygnałów linii danych – inna interpretacja SDI albo DIN – niezależnie od układu, wejście danych SDO lub DOUT – niezależnie od układu, wyjście danych 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Kierunki sygnałów dla układów Master i Slave Uwaga! Sygnał CLK generowany jest zawsze przez układ Master Mikrokontrolery mogą być konfigurowane zarówno do pracy w funkcji Master jak i Slave Linia Układ Master Układ Slave MOSI Określa użytkownik Wejście MISO SCK /SS 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Funkcje wyprowadzenia /SS Uwaga! Sygnał CLK generowany jest zawsze przez układ Master Mikrokontrolery mogą być konfigurowane zarówno do pracy w funkcji Master jak i Slave Tryb Konfiguracja /SS Stan linii /SS Opis Slave Zawsze H Slave nieaktywny wejście L Slave aktywny Wejście Master aktywny Master Master nieaktywny Wyjście 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Transakcja wymiany danych inicjowana jest zawsze przez układ Master, który również jest źródłem sygnału CLK Linie wyjścia danych muszą być w programie ustawione ręcznie W układzie Slave gdy sygnał /SS=1, wszystkie linie SPI są wejściami 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Magistrala SPI z jednym układem Master i wieloma układami Slave 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Aby transmisja pomiędzy mikrokontrolerem, a urządzeniem peryferyjnym przebiegała prawidłowo muszą być spełnione następujące warunki: zachowanie jednakowej długość danej (najczęściej 8 bitów lub wielokrotność tej liczby), taka sama kolejność wysyłania bitów (najczęściej od MSB do LSB, niektóre mikrokontrolery mają możliwość programowej zmiany tej kolejności), zgodna polaryzacja i faza sygnału zegarowego (w SPI dane wpisywane są jednym zboczem a przesuwane drugim) 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przebiegi SPI dla mikrokontrolerów ATmega dla parametru określającego fazę zegara CPHA = 0 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przebiegi Blok SPI mikrokontrolera ATmega 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład kodu dla mikrokontrolerów ATmega 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład kodu dla mikrokontrolerów ATmega 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Magistrala Microwire Magistrala synchroniczna podobna do SPI, firmowana przez National Semiconductor Sygnały SI (Serial Input Line) – wejście rejestru przesuwającego SO (Serial Output Line) – wyjście rejestru przesuwającego SK (Serial Clock) - zegar /CS (Chip Select) – linia wyboru układu 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Magistrala Microwire Schemat bloku Microwire 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Magistrala Microwire Przykład obsługi pamięci EEPROM NMC93C06 (National Semiconductor) 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Magistrala Microwire Przykład konfiguracja (National Semiconductor) 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Magistrala Microwire Przykładowe przebiegi na magistrali Microwire (możliwość konfiguracji aktywnego zbocza i fazy sygnału zegarowego SK) 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład C8051F020 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład C8051F020 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład C8051F020 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład C8051F020 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – moduł radiowy nRF24L01P 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – moduł radiowy nRF24L01P 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – moduł radiowy nRF24L01P, Rej. 0x06 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – moduł radiowy nRF24L01P Operacje odczytu i zapisu 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x24, 0x4F MISO: 0x0E, 0x00 MOSI: 0x06, 0xFF MISO: 0x0E, 0x07 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x26, 0x07 MISO: 0x0E, 0x00 MOSI: 0x06, 0xFF MISO: 0x0E, 0x07 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x26, 0x27 MISO: 0x0E, 0x00 MOSI: 0x06, 0xFF MISO: 0x0E, 0x27 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x26, 0x27 MISO: 0x0E, 0x00 MOSI: 0x26, 0x07 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x06, 0xFF MISO: 0x0E, 0x07 MOSI: 0x00, 0xFF MISO: 0x0E, 0x0C 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x20, 0x0C MISO: 0x0E, 0x00 MOSI: 0x3C, 0x00 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0x27, 0x70 MISO: 0x0E, 0x00 MOSI: 0x22, 0x4C 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); MOSI: 0xE2 MISO: 0x0E MOSI: 0xE1 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); Sekwencja generowana przy wywołaniu funkcji radio.begin() dotyczy konfiguracji układu nRF24L01P MOSI: 0x24, 0x4F; 0x06, 0xFF; 0x26, 0x07; 0x06, 0xFF; 0x26, 0x27; 0x06, 0xFF; 0x26, 0x27; 0x26, 0x07; 0x06, 0xFF; 0x00, 0xFF; 0x20, 0x0C; 0x3C, 0x00; 0x27, 0x70; 0x22, 0x4C; 0xE2; 0xE1 Cała sekwencja z reguły podzielona jest na grupy 2-bajtowe Pierwszy bajt jest zawsze komendą, drugi to dana 11-2016 Zygmunt Kubiak

Interfejsy synchroniczne SPI Przykład – nRF24L01P, radio.begin(); Sekwencja generowana przy wywołaniu funkcji radio.begin() dotyczy konfiguracji układu nRF24L01P MOSI: 0x24, 0x4F; 0x06, 0xFF; 0x26, 0x07; 0x06, 0xFF; 0x26, 0x27; 0x06, 0xFF; 0x26, 0x27; 0x26, 0x07; 0x06, 0xFF; 0x00, 0xFF; 0x20, 0x0C; 0x3C, 0x00; 0x27, 0x70; 0x22, 0x4C; 0xE2; 0xE1 Np. 0x24 (001A AAAA) – oznacza W_REGISTER, A – adr. Rejestru Adr. Rej. – 0 0100 - SETUP_RETR (Setup of Autom.Retransmission) Dana 0x4F (0100 1111) – bity 7:4 ARD (Auto Retransmit Delay) bity 3:0 ARC (Auto Retransmit Count) Opóźnienie automatycznej retransmisji 1250μs oraz do 15 retransmisji 11-2016 Zygmunt Kubiak

Dziękuję Zygmunt Kubiak 09-2006