Transcript Folie 1

Quelle: www.wikipedia.org
Fachreferat
von
Mathias Herbst
Gliederung
Definition
Rahmenbedingungen
Aufbau
Entwicklungsschritte
Definition:
Bei eingebetteten Systemen handelt es sich um
Rechenmaschinen die, für den Benutzer weitestgehend
unsichtbar, in elektrischen Maschinen „eingebettet“ sind.
Diese Rechenmaschinen stimmen im grundsätzlichem Aufbau mit
der Funktionsweise eines „normalen“ Desktop Rechners überein,
sind jedoch je nach geforderter Funktion unterschiedlich.
Definition:
Erläuterung anhand des Routers Teledat 631 (Hardware):
MII
Steuerbus
Adressbus
Datenbus
AR7WRD
Router
Controller
Intel TE28F160
Flash ROM
ADM 6996
Switch
Controller
1x RJ-11
Winbond
W981216DH
SD-RAM
4x RJ-45
DSL
Definition:
Erläuterung anhand des Routers Teledat 631 (Software):
Rahmenbedingungen:
Embedded Systeme führen eine Funktion wiederholt aus
(Routingentscheidungen des Teledat).
Embedded Systeme sind an enge Randbedingungen
gebunden im Bezug auf Produktionskosten, Größe, ...
(Größe und Kosten z.B. bei einem MP3 Spieler).
Embedded Systeme reagieren in Echtzeit auf Ihre
Umwelt. (ABS bei einem Auto).
Man unterscheidet hier zwischen harter und
weicher Echtzeit.
Grundsätzlicher Aufbau
IC Komponenten
Winbond
W981216DH
SD-RAM
Intel TE28F160
Flash ROM
Technische Daten des AR7WRD:
MIPS 32 Bit RISC Prozessor
ASIC
Komponenten
AR7WRD
Router
Controller
USB Controller
ADSL 2+ Steuerlogik
PHY und MII Ethernet
ADM 6996
Switch
Controller
Grundsätzlicher Aufbau
ASIC
Komponenten
Application
Specific Integrated Circuit:
IC Komponenten
ASICs sind ICs, die nur für die Anwendung in
einem bestimmten Produkt entwickelt und
produziert werden.
Integrated Circuit:
ICs, stellen im Gegensatz dazu eine
Lösung für den Markt dar.
Grundsätzlicher Aufbau
ASIC
Komponenten
Beispiel für einen ASIC Baustein (hier AR7 Baureihe Texas Instruments)
Grundsätzlicher Aufbau
ASIC
Komponenten
Beispiel für einen IC Baustein (Microchip PIC16F62X Baureihe)
Grundsätzlicher Aufbau
Standard-ICs
Standard-Analog
Mikroprozessoren
Standard-Logik
Speicher RAM/ROM
FPGAs
ASICs
Semi Custom
Gate Array
Full Custom
Standardzellen
Makrozellen
Quelle: Hardware-Software-Codesign, Vieweg Verlag
Grundsätzlicher Aufbau
Die Abkürzung FPGA steht für
Field Programmable Gate Array
er stellt einen programmierbaren IC dar, auf dem
einfache bis komplexe logische Schaltungen
(Mikroprozessoren, Ethernetcontroller, Addierer,...)
mit Hilfe von Hardwarebeschreibungssprachen
„abgebildet“ werden können.
Man unterscheidet zwischen
wiederverwendbaren
und
FPGAs.
nicht wiederverwendbaren
Grundsätzlicher Aufbau
Programmierbare Logikbausteine
Wiederverwendbar
Nicht Wiederverwendbar
SRAM
EPROM
EEPROM
Antifused
Fused Link
Grundsätzlicher Aufbau
FPGA SRAM basierend:
Logic Block
Routing Channel
I/O Pad
Quelle: http://www.eecg.toronto.edu/~vaughn/challenge/fpga_arch.html
Grundsätzlicher Aufbau
FPGA SRAM basierend:
Logic
Block
Die Routing Logik belegt bis zu 90%
der Fläche eines FPGAs.
Quelle: http://www.eecg.toronto.edu/~vaughn/challenge/fpga_arch.html
Grundsätzlicher Aufbau
Xilinx Spartan FPGAs im Vergleich:
Spartan Platform
Gates
I/Os
Logic Cells
Embedded
Multipliers
Voltage
Spartan-3A
1.4M
502
25,344
32 18x18
3.3V - 1.2V
Spartan-3E
1.6M
376
33,192
36 18x18
3.3V - 1.2V
Spartan-3
5M
784
74,880
104 18x18
3.3V - 1.2V
Spartan-IIE
600K
514
15,552
–
3.3V - 1.5V
Spartan-II
200K
284
5,292
–
3.3V - 1.5V
Spartan-XL
40K
224
1,862
–
3.3V
Grundsätzlicher Aufbau
Anwendung von FPGAs:
Im Parallelrechner
COPACABANA
der Universitäten Bochum
und Kiel werden 120 FPGAs
eingesetzt um die DES
Verschlüsselung zu brechen.
Die FPGAs sind vom Typ
Spartan3(1000).
Bild: www.wikipedia.de
Grundsätzlicher Aufbau
Semi Custom ASIC:
- Teilweise vorgefertigte Schaltungen.
Es bleibt die Möglichkeit Verdrahtungen oder
Schaltungen anzupassen.
Full Custom ASIC:
- Vollständig gefertigter IC, es sind
keine Anpassungen mehr möglich.
Grundsätzlicher Aufbau
Gate Arrays:
- durch die Verdrahtung der Gatter wird die
Funktion der Schaltung festgelegt
Bild: http://www.ims-chips.de
- weisen ähnliche Strukturen auf wie
FPGAs
- auf einem Master befinden sich Ein-/
Ausgangsstufen und Logikgatter
Grundsätzlicher Aufbau
Standardzellen:
-
weisen keine vorgefertigten Strukturen auf
- Grundfunktionen sind in Bibliotheken abgelegt
(z.B. Logikgatter)
Makrozellen:
- vereinen die Vorteile von Gate Arrays und
Standardzellen
Grundsätzlicher Aufbau
Mikroprozessor
Digitale Beschaltung
ASIC
ASIC
IC
ASIC
oder
Mikroprozessor + Digitale Beschaltung
ASIC
=>System on a chip <=
Entwicklungsschritte
Bei der Entwicklung von Embedded Systemen sind zwei
Arten der „Softwareentwicklung“ zu unterscheiden:
Die Entwicklung von Hardware Layouts :
Sie erfolgt über die Hardwarebeschreibungssprachen
(z.B. VHDL*, Verilog)
Die Entwicklung der Software :
Durch Cross Compiling in höheren Programmiersprachen
(C, C++, Java) wird der Quellcode für Embedded Systeme
erzeugt.
Da die Softwareentwicklung mit Embedded C den Schwerpunkt
der Seminarwoche am Spitzingsee bildet, werde ich in diesem
Referat nicht weiter auf diesen Punkt eingehen.
*Very High Speed Integrated Circuit Hardware Description Language
Entwicklungsschritte
1. Schritt: ASIC Spezifikation
HDL
2. Schritt: ASIC Kodierung
3. Schritt: ASIC Synthese
4. Schritt: ASIC Layout
5. Schritt: ASIC Produktion
Quelle: www.andreas-schwope.de
Hardwarebeschreibungssprachen
Entwicklungsschritte
Quelle: www.andreas-schwope.de
Hardwarebeschreibungssprachen
Entwicklungsschritte
Hardwarebeschreibungssprachen (am Beispiel VHDL)
library IEEE;
use IEEE.STD_LOGIC_1164;
use IEEE.STD_LOGIC_ARITH;
use IEEE.STD_LOGIC_UNSIGNED;
entity count2 is
Port (
clk:
S1,S0:
end count2;
in
std_logic;
out std_logic);
architecture behavioral of count 2 is
begin
process(clk)
variable Q:std_logic_vector(1 downto 0);
begin
if rising_edge(clk) then
Q
:= Q+1;
S0 <= Q(0);
S1 <= Q(1);
end if;
end process;
end behavioral;
Entwicklungsschritte
Hardwarebeschreibungssprachen
Durch HDL erzeugte Schaltungen werden als
Intellectual Property
bezeichnet.
Diese IP Cores können in Form von
Softcores
und
Hardcores
beim FPGA bzw. ASIC Entwurf genutzt werden.
FRAGEN?
Quellen:
www.andreas-schwope.de
www.xilinx.com
www.eecg.toronto.edu
www.wikipedia.de
www.wikipedia.org
Hardware-Software-Codesign, Vieweg Verlag, ISBN 978-3-8348-0048-0