% This document is licensed under the Creative Commons % Attribution-ShareAlike license, Version 3.0. % % Copyright (C) 2011 Tobias Klauser (klto@zhaw.ch) \documentclass{beamer} \usetheme{Boadilla} \usepackage{ngerman} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage{listings} \lstset{extendedchars=true, basicstyle=\ttfamily\small, keywordstyle=\color{rgb:red,127;green,0;blue,85}, commentstyle=\color{rgb:red,63;green,127;blue,95}, breaklines=true,xleftmargin=5pt, showspaces=false, showstringspaces=false, captionpos=b,caption=\lstname, numbers=none} \mode{ % \hypersetup{pdfpagemode=FullScreen} \usecolortheme{dove} \usecolortheme{seahorse} \usecolortheme{lily} % \useinnertheme[shadow]{rounded} % \beamerdefaultoverlayspecification{<+->} % \setbeamercovered{dynamic} } \logo{\includegraphics[width=2cm]{images/zhaw-logo.png}} \title{Linux auf dem Nios II Softcore Prozessor} \subtitle{} \author{Tobias Klauser $<$klto@zhaw.ch$>$} \institute[InES]{Institute of Embedded Systems\\Zürcher Hochschule für Angewandte Wissenschaften} \date{30. August 2011} \begin{document} \begin{frame} \titlepage \end{frame} \section{Agenda} \begin{frame} \tableofcontents \end{frame} \section{Institute of Embedded Systems ZHAW} \begin{frame}{Institute of Embedded Systems} \begin{itemize} \item F\&E Institut der ZHAW \item Rund 45 Mitarbeiter \item Schwerpunkte \begin{itemize} \item Industrielle Kommunikation \item Zeitsynchronisation und Hochverfügbarkeit \item System on Chip Design \item Wireless Communication \item Entwicklungsmethoden \end{itemize} \end{itemize} \end{frame} \section{Übersicht FPGA und Softcore Prozessoren} \begin{frame} \begin{itemize} \item Field Programmable Gate Array \begin{itemize} \item Chip-Logik (Gateware) wird in einer Beschreibungssprache (VHDL, Verilog) codiert \item Änderungen am Design relativ einfach \item Parallelität \item Custom Systems \end{itemize} \item Softcore \begin{itemize} \item Prozessor innerhalb des FPGA implementiert \item Fast immer Bestandteil eines System-on-a-Chip \item Konfigurierbar (z.B. mit oder ohne MMU), erweiterbar (z.B. Custom Instructions) \item Proprietär, herstellerabhängig: Nios II (Altera), MicroBlaze (Xilinx), Cortex M1 (ARM) \item Open-Source Softcores: Gaisler LEON, OpenRISC, LatticeMico32 \end{itemize} \end{itemize} \end{frame} \section{Übersicht Linux} \begin{frame}{Wieso ein Betriebssystem?} \begin{itemize} \item Multi-Tasking, Multi-User \item Memory Management, Memory Protection (MMU benötigt) \item TCP/IP \item Bestehende Software und Treiber \end{itemize} \end{frame} \begin{frame}{Wieso (Embedded) Linux?} \begin{itemize} \item Starke Verbreitung im Bereich Embedded Systems (z.B. Android auf Smartphones), Skalierbarkeit \item Umfangreiches Software-Ökosystem, grosse Community \item Einheitliche Entwicklungsumgebung (Unix-artig, POSIX-Standard) \item Portierungen auf zahlreiche (~30) Prozessor-Architekturen \item Niedrige Kosten \end{itemize} \end{frame} \section{Linux auf dem Nios II} \begin{frame}{Linux/uClinux auf dem Nios II} \begin{itemize} \item Nios II: 32-bit Softcore-Prozessorarchitektur für Altera FPGAs \item Linux unterstützt Nios II mit \emph{und} ohne MMU \begin{itemize} \item Erster Port von Microtronix für Nios II NOMMU \item Separater Port von Wind River für Nios II MMU \end{itemize} \item Open Source Nios II Linux \begin{itemize} \item MMU und NOMMU Ports zusammengeführt \item Anpassungen an aktuelle Linux Kernel Versionen \item Integration in Mainline (kernel.org) geplant \end{itemize} \item Kommerzielle Anbieter \begin{itemize} \item Auf Basis von Open Source Nios II \item Wind River, Timesys, SLS \end{itemize} \end{itemize} \end{frame} \section{Anwendungsbeispiele} \begin{frame}{Danke} \end{frame} \end{document}