FreeBSD do zabudowy. Czyli nie tylko pecety. Rafał Jaworowski meetbsd 2007, Warszawa



Podobne dokumenty
Łagodne wprowadzenie do systemów wbudowanych. Bartłomiej Sięka

Łagodne wprowadzenie do systemów wbudowanych. Bartłomiej Sięka

Systemy na Chipie. Robert Czerwiński

Opis przedmiotu zamówienia CZĘŚĆ 1

Wykład 6. Mikrokontrolery z rdzeniem ARM

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Kurs programowania mikrokontrolerów ARM z rodziny Cortex-M3

FreeBSD w systemach wbudowanych. Rafał Jaworowski raj@semihalf.com, raj@freebsd.org

Tworzenie sterowników dla FreeBSD. Michał Hajduk

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

EMBEDDED LINUX ON ARM9 CORE EMBEDDED LINUX NA PROCESORACH Z RODZINY ARM9

SYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM

Systemy wbudowane. Paweł Pełczyński

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Podstawowe zagadnienia

Opis przedmiotu zamówienia

prowadzący: mgr inż. Piotr Prystupiuk

Wykład 2. Mikrokontrolery z rdzeniami ARM

System czasu rzeczywistego

WPROWADZENIE Mikrosterownik mikrokontrolery

Linux -- u mnie działa!

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

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Doświadczenia z tworzenia systemu pomiarowo-sterującego z procesorami rodziny C2000. Leszek Dębowski Instytut Elektrotechniki Oddział w Gdańsku

Wykład 2. Mikrokontrolery z rdzeniami ARM

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Procesory w FPGA H D L. dr inż. Paweł Tomaszewicz Instytut Telekomunikacji Politechnika Warszawska

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

QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:

Przykłady zastosowań systemów mikroprocesorowych

Mikrokontroler Wykład 5

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

Q E M U.

Architektura systemu komputerowego

Thinkcore W325A. Pełny opis produktu. Wbudowany komputer przemysłowy z GSM/GPRS, 1x LAN, 2x RS-232/422/485, SD, RISC CPU. [Nowy moduł GSM/GPRS]

Przykłady zastosowań systemów mikroprocesorowych

Który z podzespołów komputera przy wyłączonym zasilaniu przechowuje program rozpoczynający ładowanie systemu operacyjnego? A. CPU B. RAM C. ROM D.

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

Lp. Nazwa Parametry techniczne

Wykład 7. Architektura mikroprocesorów powtórka

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

11.Mikrokomputeryjednoukładowe

Konfiguracja i kompilacja jądra Linux. Based on Free Electrons

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

System mikroprocesorowy i peryferia. Dariusz Chaberski

Wprowadzenie do systemów operacyjnych

Procesory Blackfin. Część 1

ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]

EM8247 Elfin Module Board

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Systemy czasu rzeczywistego wstęp

Wykład 5. Architektura ARM

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Systemy operacyjne. Literatura: A. Silberschatz, J.L. Peterson, P.B. Galwin, Podstawy systemów operacyjnych, WNT, Warszawa 2006

Bibliografia: pl.wikipedia.org Historia i rodzaje procesorów w firmy Intel

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

K. Konopko; Toolchain. Jądro Linuksa. dr inż. Krzysztof Konopko

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji.

Spis treści. Wstęp... 10

Komp m u p t u ery w bu b d u o d wane Cezary Ziółkowski

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

Przegląd dostępnych hypervisorów. Jakub Wojtasz IT Solutions Architect

ZASTOSOWANIE PLATFORM CYFROWYCH ARDUINO I RASPBERRY PI W NAUCZANIU STEROWANIA OBIEKTEM PNEUMATYCZNYM

Moduł nie może być zasilany z PoE. Nie ma wbudowanej przetwornicy PoE, a posiada tylko wyprowadzenie pinów RJ45 na płytkę PCB

Architektura komputerów

Technologia informacyjna. Urządzenia techniki komputerowej

Wbudowane systemy operacyjne

Wstęp Podstawowe informacje o mikroprocesorach AT91SAM9...11

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

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Szkolenia specjalistyczne

Płyty główne rodzaje. 1. Płyta główna w formacie AT

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

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

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

Android - wprowadzenie. Łukasz Przywarty

Arkusz: Badanie komponentów komputera.

URZĄDZENIA WEJŚCIA-WYJŚCIA

Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

1. Serwer. 2. Komputer desktop 9szt. Załącznik nr 1 do SIWZ

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

Wykład 3: Implementacja programów wbudowanych

Systemy mikroprocesorowe. Literatura podręcznikowa. Przedmioty związane. Przykłady systemów wbudowanych. Pojęcie systemu wbudowanego embedded system

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

Architektura systemów komputerowych. dr Artur Bartoszewski

Moxa Solution Day Cezary Ziółkowski

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

Otwarte oprogramowanie w systemach wbudowanych i pomiarowych. Rok akademicki: 2015/2016 Kod: EEL PT-s Punkty ECTS: 3

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Router Fermio XL Karta katalogowa

LEGO Segway. Budowa i analiza strukturalnie niestabilnego robota mobilnego na bazie projektu Segway

Procesory o architekturze dwusystemowej

Vinculum scalony host USB

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

Złącza zewnętrzne Min. 3 x USB, w tym min. 1 x USB 3.0 Ethernet 10/100/1000, RJ45; karta zintegrowana z płytą główną, Interfejs WiFi 802.

Podstawy Techniki Mikroprocesorowej

Dotyczy przetargu: WMIM /2017

Transkrypt:

FreeBSD do zabudowy Czyli nie tylko pecety Rafał Jaworowski raj@semihalf.com meetbsd 2007, Warszawa

Szkic prezentacji Wprowadzenie do systemów wbudowanych (embedded systems) Przykłady Omówienie sytuacji FreeBSD w świecie embedded, potencjału z jednej strony, braków z drugiej Spojrzenie makroskopowe, bez szczegółów na poziomie kodu źródłowego lub konstrukcji sprzętu

Wprowadzenie Co to jest system wbudowany? System mikroprocesorowy CPU, pamięć, urządzenia I/O Element większej całości Na ogół wykonuje jedną specjalizowaną aplikację (zestaw aplikacji) Silna integracja, małe rozmiary fizyczne, niski pobór energii Nacisk na niezawodność, bezobsługowość, trwałość (odporność mechaniczną) Brak GUI

Wprowadzenie c.d. Przykłady, zastosowania Telefony, pralki, kuchenki, TV itp. Auta, samoloty Aparaty foto, kamery Gry (konsole), PDA, odtwarzacze MP3 Sprzęt sieciowy (routery, firewalle) Apartura medyczna Urządzenia wojskowe, kosmiczne Mnóstwo innych...

Zanim pojawi się właściwy produkt Prototyp Praca w warunkach laboratoryjnych Systemy uruchomieniowe Przeznaczone do eksperymentów Uniwersalna płytka drukowana Łatwy dostęp do I/O Dodatkowe układy programowanej logiki JTAG

Przykłady systemów laboratoryjnych

Terminologia Platforma Kompletny system Zestaw laboratoryjny analogiczny do płyty głównej (potrzebuje jedynie zasilacza do działania) SoC (System-On-a-Chip) Silnie zintegrowany układ Lokalne magistrale Kontroler(y) pamięci zewnętrznych (DRAM, FLASH etc.) Układy peryferyjne (Ethernet, UART, mostki PCI, PEX, USB, DMA) CPU Procesor główny Część SoC

System-On-a-Chip L1 D/I Cache Kontroler pamięci DRAM, FLASH Core CPU L2 Cache SRAM Magistrala lokalna Kontroler przerwań (PIC) Ethernet Ethernet DMA Mostek PCI, PEX UART UART

Systemy wbudowane Platforma SoC + konfekcja (RAM, FLASH, PHY, obwody zasilania, resetowania itd.) Specjalizowana logika (FPGA, CPLD) Coraz więcej zasobów (MHz, pamięci) SoC Specjalizowane bloki/moduły: crypto, telecom, pattern matching CPU (rdzeń) 64-bit? Multi-core, SMP? Mogą być syntezowane w układach programowalnych! Przykładowe architektury ARM, MIPS, PowerPC RISC, super skalarne

O co w ogóle chodzi? Kogo interesują jakieś małe komputery.. Ogromny rynek i potencjał Setki milionów sztuk rocznie Są przecież już inne systemy... Linux, NetBSD...ale my lubimy FreeBSD! Zabawa czy na poważnie Komercyjne produkty R&D

Port dla rodziny Freescale MPC85xx Platforma, zakres prac Core e500, architektura zgodna z definicją Book-E PowerPC Specjalizowany kontroler telekomunikacyjny PowerQUICC III Kompletny port: loader, kernel + świat, wsparcie (sterowniki) dla głównych modułów SoC Najważniejsze zagadnienia Inny model MMU Wyłącznie TLB, brak segmentów, BATów Dwupoziomowa tablica translacji (forward page table) W efekcie: nowy moduł pmap

FreeBSD/MPC85xx c.d. Najważniejsze zagadnienia c.d. Rozszerzony model wyjątków Brak FPU soft float Sterowniki do zintegrowanych urządzeń On-chip peripherals (Ethernet, PCI) Większość sterowników napisana od zera Pełne środowisko uruchomieniowe rozszerzenie U-Boota nowe API dla samodzielnych aplikacji loader(8) uruchamiany jako bootloader ostatniego poziomu Wspierane warianty MPC8555, MPC8541, MPC8548

Model MPC85xx newbus root nexus ocp lbc i2c uart tsec... opic pci...

Bliski horyzont, daleki plan Integracja wsparcia 85xx z drzewem FreeBSD //depot/projects/e500/... 8-current, backport 7.x Kolejne chipy Freescale, AMCC 4xx, inne (ARM) Kiedy FreeBSD na Playstation3? Dwurdzeniowy POWER (zbliżony do G5) jako CPU 32-bit 64-bit Brak bridge mode Obecny port FreeBSD/powerpc jest wyłącznie 32-bitowy Rozszerzony model MMU pmap (64-bit PTE itd.) SMP loader(8) jako aplikacja hypervisor'a

Przenośność FreeBSD Środowisko Boot locore loader(8) sys/boot libstand(3) lib/libstand sys/arm/arm/locore.s sys/powerpc/booke/locore.s mi_startup() bus_space(9) bus_dma(9) pmap(9)

Przenośność FreeBSD c.d. Plusy Minusy loader(8) Separacja części MD (machine dependent), MI (machine independent) Abstrakcja dostępu do urządzeń I/O, DMA Klarowny i kontrolowalny startup jądra Newbus obiektowość Build system Nie całkiem skrośny Brak separacji toolchain'u UFS Brak wsparcia cross-endian

FreeBSD w świecie embedded Obecne wsparcie dla ARM, MIPS, PowerPC Najwięcej platform i wariantów: ARM Stosunkowo łatwo osiągalny hardware, zestawy uruchomieniowe, debuggery sprzętowe MIPS Perforce PowerPC e500 Perforce Ogólnie: skromny zakres wspieranych platform (w porównaniu z innymi systemami) Real time? Interrupt latency RT scheduling

Podsumowanie prezentacji Wstęp do systemów wbudowanych Omówienie terminologii Przykłady końcowych produktów Przykłady systemów laboratoryjnych Port FreeBSD/MPC85xx Plany Uwagi o przenośności środowiska FreeBSD na nowe architektury i platformy Ogólna kondycja FreeBSD w świecie wbudowanym

FreeBSD do zabudowy Czyli nie tylko pecety Rafał Jaworowski raj@semihalf.com http://www.semihalf.com/pub/meetbsd/2007_freebsd-do-zabudowy.pdf meetbsd 2007, Warszawa