4.5 Beispiele Embedded PC

Werbung
Eingebettete Systeme
(VAK 18.142)
me
ste
Sy
Inf
orm
ati
k
Tec
h
nis
ch
e
Prof. Dr.-Ing. D.P.F. Möller
SS 2005
Leitung: Prof. Dr.-Ing. D.P.F. Möller
Embedded Systems (EBS)
4. Embedded PCs
4.1 Introduction
4.2 Embedded Processor
4.3 Componentware
4.4 Embedded On-Time Programmable Controller
4.5 Examples:
4.5.1 Embedded Java based PC
4.5.2 Embedded Image Processing
4.1 Introduction
PCs are available as
•
desktop PC that runs the office software packages,
•
as laptop PC for running spreadsheets etc. while being mobile or on
the move,
•
as home PC for internet access and wording documents.
are designed to perform in the overall office environment
Commodity PC products are totally unsuitable to run in industrial environments such as process control, which often needs a much more broader
temperature range to be able to be operated, or to control real time
applications, etc. For the latter mentioned application one need so called
industrial PC or embedded PC
meaning a computer which appears like a PC to the software, but which is
properly engineered to be buried deep inside the equipment and to withstand the rigors of industrial environments. Industrial PCs are computers
which had been designed to a variety of industries for mission critical
applications, which can be hard real time applications as well as advanced
operating temperature range.
4.1 Introduction
•
•
•
PC can be built up and sized as micro controller board
PC can be realized as PC/104 Standard, which with the user
immediately can start his software development
Broad spectrum of PC104 products available; CPUs, I/O-cards,
communication modules, etc.
4.1 Introduction
The importance of time-to-market make it possible that the so called
PC/104 becomes the industrial standard PC, which was established in
February 1992 in the U.S.A. by 12 companies forming the first PC/104
Consortium.
From the PC/104 Technology headquarters web page (www.pc104.org) –
history button – it can be seen that the consortium, which is located in San
Francisco, California, has now grown to over 160 companies worldwide
and has had a tremendous, positive effect on the embedded computer
market.
The initial release of the PC/104 specification in March of 1992 was an
open design offering the power and flexibility of an IBM compatible
personal computer in a size ideally suited for embedding. Simple and
smart in design the PC/104 technology that has emerged today bridges the
success of the past with the promises of future innovations.
4.1 Introduction
ISA bus, established by the IEEE P996 specification, is fully supported
by PC/104 Technology almost a decade after it was established.
When demand for a PCI bus emerged, PC/104-Plus technology was
added in February of 1997 by the PC/104 Consortium as an addition to the
technology, not a replacement of any existing technology. This event
underscored the fact that the PC/104 Consortium will continue to support
any technology of the past while developing new solutions to demands for
improved performance in the future.
Longevity is one of the hallmarks of the PC/104 Technology, proven again
by the cross platform compatibility of the technology and the devices
developed from its core design.
.
4.1 Introduction
Today the PC/104 offers a variety of
•
•
•
•
•
•
•
•
•
•
•
Analog Input Option
Analog Output Option
Digital I/O
Ethernet Option
On-board Memory
PC/104 Interface
Processor Cores
Real Time Clock
Serial Ports
Watchdog Timer
etc.,
which had been specified in the PC/104 Specification, Version 2.4, and the
PC/104-Plus Specification Version 1.2.
4.1 Introduction
The industry standard PC/104 is shown as a standard assembly.
.
4.1 Introduction
Over the past decade, the PC architecture has become an accepted
platform for far more than desktop applications.
On this road embedded PC applications with the computing power of
standard processors had been used as controllers within laboratory
instruments, communications devices, avionic and automotive devices,
medical equipment, etc.
By standardizing hardware and software around the broadly supported
PC/104 architecture, embedded system designers can substantially
reduce development costs, risks, and time. This means faster time-tomarket and the ability to hit critical market windows with timely product
introductions in All-In-One single board embedded computer conforming
the PC/104 standard. Another important advantage of using the PC/104
standard is that its hardware and software components are widely
available. These components are also significantly more economical than
traditional non-PC bus architectures such as STD, VME, and Multibus,
which results in lower product costs for embedded PC applications.
4.1 Introduction
For these reasons, engineers that embed microcomputers as controllers
within their products seek ways to reap the benefits of using the PC/104
architecture. However, the standard PC/104 bus form-factor (12.4" x 4.8")
and its associated card cages and back planes are too bulky (and
expensive) for most embedded control applications.
The only practical way to embed the PC/104 architecture in space and
power sensitive applications has been to design a PC - chip-by-chip –
directly into the product. But this runs counter to the growing trend away
from "reinventing the wheel." A need therefore arose for a more compact
implementation of the PC bus, satisfying the reduced space and power
constraints of embedded control applications. Yet these goals had to be
realized without sacrificing full hardware and software compatibility with
the popular PC bus standard. This would allow the PC's hardware,
software, development tools, and system design knowledge to be fully
leveraged. In other words, the PC bus had to be standardized while
capturing all of the benefits the design engineer wanted from the PC bus.
4.1 Introduction
PC/104 was developed in response to this need. It offers full architecture,
hardware, and software compatibility with the PC bus, but in ultracompact (3.6" x 3.8") stackable modules. PC/104 is therefore ideally
suited to the unique requirements of embedded control applications –
including full standardization by an international group of over 160
companies who manufacture products based on the PC/104 standard –.
Hence an embedded PC is dedicated to a specific task, based on an
PC/104 core, but it feature set may cover a much broader range than a
desktop PC. Due to display devices, input devices, data storage, and
communication ports the capabilities may range from not included, on
through standard features, to special embedded specific features like
flash memory rather than disk drives.
4.1 Introduction
Embedded PC’s are usually realized based on one or more microelectronic
plug-in cards. There is a large selection of embedded PC components
from several companies available which fit for the variety of missions in
industrial applications. Selecting the respective componentware for the
specific application the following criterion may be used:
•
•
•
•
•
•
•
•
•
•
•
•
Architecture
Availability
BIOS
Compatibility
Design
Electricity costs
Environment
Integration-friendly
Interrupt
PC-card integration
Product line
Resistance to interference
4.1 Introduction
•
•
•
•
•
•
•
•
•
Robustness
Safety
Service
Size
Software support
System extensions
Temperature range
Time to market
Etc.
4.1 Introduction
Designing an embedded PC the
•
•
•
Specific constraints of the target environment
Physical size
Required feature set
come to the top of the design task when looking into solutions.
For many systems utilizing embedded PCs, the software and BIOS must
be reentrant and must provide real time response.
Interrupt latency becomes an issue in embedded PC based control.
The situation on the market is such that embedded PCs in the various
versions fit the industrial needs, offered by the several manufacturers with
CE certification and long-term delivery guarantees.
The functions necessary for the application may be distributed on the
embedded PC components (slaves) and embedded PC boards (master).
The master card must be planned mechanically and according to the
electrical supply, such that plug-in slaves can be introduced at least up to
the maximal number planned.
4.1 Introduction
The following criterion may be helpful for defining the functionality of the
application specific master card:
•
•
•
Application functionality
Type and number of processor interfaces
Upgrade possibilities
Upgrading the inputs and outputs can be realized modularly, for example
with a sensor-actor bus, e.g. the CANopen, ASI, SDS, etc.
4.1 Introduction
Standard PC hardware consists of embedded functions and bus systems.
PCI and ISA busses are lead outside over standardized mechanical plugs
and serve the system expansion. A host bus in the role of an internal
high-speed bus connects the processor to the storage and peripheral
functions. The components for constructing a working embedded PC are:
•
BIOS (flash)
•
Cache (SRAM)
•
Graphic controller
•
Host PCI bridge – so called northbridge – with integrated DRAM
controller and cache controller
•
I/O chip with an integrated floppy-disk controller, a real time clock,
infrared interfaces (IRDA), parallel and serial interfaces and keyboard
and mouse interfaces
•
Main memory (DRAM)
•
PCI ISA bridge – so called southbridge – with integrated IDE
controller and USB-host controller
•
Processor with an integrated floating-point adder and cache.
4.2 Embedded Prozessor
The following are optional
·
audio functions,
·
Ethernet interface,
·
SCSI controller,
·
system monitoring and security functions.
D.P.F.Möller:Rechnerstrukturen, Kap. 9, Springer Verlag, ISBN 3-540-67838-4
4.1 Introduction
The characteristics of embedded PCs are as following:
•
•
•
•
•
•
Compact casing and small cooling units due to less power loss,
Compact construction, the embedded PC is integrated into certain
functional units, e.g. display panels, gateways, controller, etc.,
Expanded temperature areas possible, applications can also be
realized in environments with extreme temperatures,
High computing performance to realize multi-media applications, e.g.
DVD, MPEG, live-video, internet browser/server,
Independent of the operating system, no DOS-specific silicon disk
solutions since Flash file systems are usually not DOS-specific, slight
power consumption for the battery-run parts resulting from power
management or Cool Runner technology,
System functions all on one board.
4.1 Strukturkonzept eingebetteter PCs
Heute eingesetzte bzw. zu entwickelnde Komponenten für Steuerungen
im Maschinen- und Anlagenbau bzw. in der Verfahrenstechnik genügen
heterogenen eingebetteten Systemen, die entsprechende Projektierung
erfordern:
•
Vorstudie (Machbarkeitsstudie): Grobes Pflichtenheft&Businessplan
•
Detailstudie: Detailpflichtenheft, Komponenten-/Technologien
•
Funktionsmusterbau und Prüfung auf Maschine bzw. Anlage
•
Prototypen zwecks Typentest und Zertifizierungen
•
Serienfertigung auf Basis ISO-9002 Produktionsunterlagen
•
Markteinführung
4.1 Introduction
Often in embedded system projects the cost and time influencing question has to
be answered whether it make sense to design (make) an embedded PC or to buy
an embedded PC. Designing an embedded PC end up with a 100% exact fit for
the system being considered. Moreover, the designer build up embedded PC
design expertise for the next project, which includes embedded BIOS, operating
system (OS), software, as well as PC architecture and hardware. The
development cycle is considerably longer than either purchasing a solution, or
working with a partner who has the expertise already. While the designer have
the control of the costs he is also responsible for cost overruns. Buying an
embedded PC end up with need of embedded PC knowledge, while working at
the application level rather than going in-depth into the embedded BIOS. But the
purchased systems size, shape and other physical characteristics are fixed, and
there is little ability to influence the costs of the system. Partnering with an
embedded computing systems company to develop the exact solution can be the
best way to go, when there is no need to build up specific embedded PC
knowledge in house. Moreover, through partnering, the costs can be influenced.
Nonrecurring engineering cost (NRE), which are the one-time monetary cost of
designing the system, can be charged up front, or spread across a number of
purchases, or other arrangements can be made.
4.1 Strukturkonzept eingebetteter PCs
Im industriellen Bereich finden sich vielfältige Aufgabenstellungen die
mittels PC gelöst werden können.
Damit PC Technologie auch in „rauher“ Industrieumgebung eingesetzt
werden kann, muss sie zusätzlich zu den üblichen Anforderungen bestimmte Kriterien erfüllen:
•
Embedded PC als Steuerung einer vibrierenden Maschine
•
Embedded PC als Meßsystem in einem Fahrzeug
⇒ Robustheit gegen mechanische Beanspruchungen
⇒ Aufbau als 19´´ Europakartensystem mit indirekten Steckverbindungen, d.h. keine ISA/-AT oder PCI Erweiterungskarten
⇒ Einsatz erschütterungsfester 2,5´´ Festplatten wie im Laptop
⇒ PCMCIA-Karten anstelle der staubanfälligen Floppy-K+Laufwerke
⇒ Flashdisk bei hohen mechanischen Beanspruchungen
4.1 Strukturkonzept eingebetteter PCs
Auswahl des geeigneten Bussystems bei Embedded PC
Im Gegensatz zu Einplatinencomputern ist beim Embedded PC, der aus
mehreren Systemkomponenten besteht, die Auswahl des Bussystems
eine weitere wichtiger Größe:
•
Standard-ISA-Buskarten
•
ISA96 bzw. AT96-Bus
•
PC/104 bzw. PC104 Plus
•
Compact PCI
•
Industrial PCI
•
VMEbus
4.1 Strukturkonzept eingebetteter PCs
Standard-ISA-Buskarten
•
All-in-One-Karten im ISA Busformat
•
mechanische Beanspruchung nicht so stark
•
vergleichbar hohe Prozessorleistung zu extrem günstigen Preis
•
passive Busplatinen
•
ursprünglich für Desktop Markt entwickelt
•
96 polige DIN-41612 konforme VGA-Steckerleiste
4.1 Strukturkonzept eingebetteter PCs
ISA96- und AT96-Bus
•
entspricht elektrisch dem ISA-Bus
•
96 polige DIN-41612 konforme VGA-Steckerleiste
•
beim AT96-Bus liegen auf der mittleren Steckerleiste (Reihe b)
einige Signale anders
•
ISA 96- und AT96 Bus haben sich im Bereich von Europakarten
PCs im Markt etabliert
•
Wird von mehr als 30 Herstellern unterstützt
•
Standardisierung einheitlicher Pinbelegung wurde versäumt
⇒zwei verschiedene aber gleichwertige Bussysteme
4.1 Strukturkonzept eingebetteter PCs
PC/104- und PC/104+-Bus
•
kompakter PC-Bus-Formfaktor (12.4*4.8´´) und dazugehörende
Kartenhalter zu groß für embedded PC Anwendungen
⇒Abmessunghen auf 3.5*3.8´´ (90*96mm) reduziert
•
Stecker- und Buchsenverbindungen
•
Zuverlässige 64- und 40-polige Stecker ersetzen die PCKartenverbindung
•
Reduziert Bustreiberleistung
•
Leitungsbedarf (1 bis 2 W) und minimierte Komponentenzahl
⇒Anwendungen, bei denen geringer Stromverbrauch wichtig ist,
z.B. medizinische Diagnose- und Therapiesysteme, Maschinensteuerungen in der Industrieautomatisierung sowie bei Consumer
Anwendungen und intelligenten Verkaufs- und Service-Automaten.
4.1 Strukturkonzept eingebetteter PCs
PC/104- und PC/104+-Bus
•
durch Vielzahl verfügbarer PC/104 Module können komplexe
Embedded PC Anwendungen bei kleinen und mittleren Stückzahlen sehr einfach durch Zusammenstecken der passenden
Module realisiert werden.
•
für den Anwender reduziert sich der Entwicklungsaufwand auf
die Mechanik und das Überspielen der Software, wodurch die
Systeme kostengünstig aufgebaut werden können.
4.1 Strukturkonzept eingebetteter PCs
CompactPCI-Bus
•
gesteigerte Rechenleistung im Desktop Bereich resultierte im PCIBus (Peripheral Components Interconnect)
•
19´´ Technik mit 3HE/6HE Kartenformat im Rahmen eines
weltweiten Standards
•
synchroner 32 Bit oder 54 Bit Bus, prozessorunabhängig
•
Betrieb mit 5V, 3.3 V oder gemischt
•
gleichzeitiger Betrieb von 32 Bit und 64-Bit-Einsteckkarten
•
Clockraten von 25 MHz bis 33 Mhz
•
Übertragungsraten 132 Mbyte/s, bei 64 Bit 264 Mbyte/s und 33
MHz
•
Multimaster Betrieb
•
automatische Konfiguration von PCI-Karten beim Systemstart
4.1 Strukturkonzept eingebetteter PCs
PCI Local Bus
•
prozessorunabhängiger Busstandard, 1992 von Intel veröffentlicht
•
Hochgeschwindigkeits-Bussystem zur Verbindung breitbandiger
Peripherie mit intelligenten Controllern und Prozessor-/SpeicherSubsystemen
•
Busoptimierung erlaubt gleichzeitig Operationen auf dem
Prozessor-/Speicherbus und dem PCI Local Bus
•
32 bit und 64 bit, werden beide von Compact PCI unterstützt
•
Aufwärts- und Abwärtskompatibilität, d.h. 32 Bit Peripherie kann
sich neben 64 bit Peripherie auf demselben PCI Local Bus befinden
4.1 Strukturkonzept eingebetteter PCs
Generisches PCI-Local Bus System
4.1 Strukturkonzept eingebetteter PCs
Vorteile Compact PCI
•
Standard PCI Plug&Play
•
SW Kompatibilität auf Firmware, Treiber- und Betriebssystem-ebene
•
Hochleistungsfähiger Input/Output
•
Prozessorunabhängigkeit
•
Langzeitverfügbarkeit von Bauteilen
•
Viele Zulieferer
•
Wartungs- und Instandhaltungsfreundlichkeit
•
Dichte und flexible I/O-Lösungen
•
Komplexe Systemkonfigurationen (z.B. VME Bus/CompactPCIHybride)
•
Exzellente thermische, Stoß- und Vibrations Charakteristik
•
hochwertige Signalchartakteritik
•
EMI Schutz auf Board und Chassis Ebene
•
Hebelmechanik zum einfachen und sicheren Einsetzen und Herausnehmen von Boards
•
Benutzerfreundliche Tasten, mit denen bestimmte Slots für spezielle
Aufgaben anpassbar sind
4.1 Strukturkonzept eingebetteter PCs
Funktionen für Steuerungen im Maschinen- und Anlagenbau bzw. in der
Verfahrenstechnik auf die Komponenten:
•
Embedded PC-Komponenten
•
Anwendungsspezifische Trägerkarte
aufgeteilt. Trägerkarte mechanisch von Stromversorgung her geplant,
dass sich steckbare Embedded PC-Module bis zu einer vorgegebenen
maximalen Anzahleinsetzen lassen, z.B.
•
Rechner-/Speichermodul
•
Ethernet-Kommunikationsmodul
•
CAN-Kommunikationsmodul
•
Reserve für Erweiterungen
4.1 Strukturkonzept eingebetteter PCs
Aufteilung der Funktionen in Embedded PC-Komponenten und
anwendungsspezifische Trägerkarte
4.1 Strukturkonzept eingebetteter PCs
Bezüglich Auswahl industrietauglicher Embedded-PC-Komponenten
steht große Vielfalt zur Verfügung; nachfolgende Eigenschaften als
Hauptkriterien:
•
Architektur und Bauform
•
Produktlinie, Kompatibilität
•
Verfügbarkeit
•
Integrationsfreundlichkeit
•
BIOS-Entwurf, Softwareunterstützung
•
Systemerweiterungen
•
PC-Card Einbindung
•
Stromverbrauch
•
Temperaturbereich
•
Robustheit, Störsicherheit
•
Service
•
Time to Market
•
Zukunftsicherheit
4.1 Strukturkonzept eingebetteter PCs
Hinsichtlich der PC-Architektur für Embedded-PC-Anwendungen gilt
dass Funktionsfähigkeit kompatibel ist, wobei Grad der Kompatibilität
abzuklären ist. Damit reduzieren sich Entscheidungskriterien bei
Embedded-PC-Komponenten auf:
•
Bauform
•
Steckertechnologie
•
Zertifizierungen, EMV, CE, etc.
•
Langfristige Lieferbarkeit; ggf. 2nd Source
•
Kosten
•
Qualität des Lieferanten; ggf. 2nd Source
4.1 Strukturkonzept eingebetteter PCs
Bei industriellen Anwendungen muss Steuerung bezüglich EMV-Eigenschaften wie Einstrahlung, Abstrahlung, Störfestigkeit etc. die EURichtlinien erfüllen. Damit ist es notwendig, die Gesamtsteuerung, d.h.
Trägerkarte (Master) mit dem Embedded PC-Komponenten (Slaves)
durch EMV-Labor prüfen zu lassen, um die Konformität gemäß der CEZertifikation nachzuweisen. Sind verwendete Komponenten CE-Zertifiziert ist EMV-Test in der Regel ohne großen Aufwand durchführbar.
Bezüglich Auswahl der Steuerungskomponenten ist zu unterscheiden
zwischen ausschließlichen Einsatz von Standardkomponenten oder
optimierten Entwicklung eigener Steuerungskomponenten. Beim
ausschließlichen Einsatz von Standardkomponenten können, bei
sorgfältiger Auswahl der Komponenten, Produktrisiken, größtenteils
vermieden werden. Damit ergibt sich als Hauptvorteil ein minimales
Produktrisiko, als Hauptnachteil Kompromisse bzgl. Funktionalität,
Kosten, Installationstechnik, etc.
4.1 Strukturkonzept eingebetteter PCs
Situation am Markt stellt sich so dar, dass Embedded PCs in insudtrietauglicher Ausführung von unterschiedlichen Herstellern mit CE-Zertifikation und langfristiger Liefergarantie angeboten werden. Notwendige
Funktionen für Steuerung auf Embedded-PC-Komponenten (Slaves) und
die Embedded-PC-Trägerkarte(Master) aufteilen. Die Masterkarte ist
mechanisch und von Stromversorgung her so zu planen, dass sich
steckbare Slaves bis zur vorgesehenen Maximalzahl einführen lassen.
Bei Definition der Funktionalität der anwendungsspezifischen Masterkarte sind folgende Kriterien zu berücksichtigen:
•
Art und Anzahl der Prozessorschnittstellen
•
Exakte Funktionalität der Anwendung
•
Erweiterungsmöglichkeiten
E/A-Erweiterungen modular z.B. über offenen Sensor/Aktor-Bus wie z.B.
CANopen, ASI, SDS, etc. realisieren
4.2 Embedded Prozessor
Hardware Standard PC-Architektur
PC besteht aus wenigen integrierten Funktionen und Bussystemen. PCI& ISA-Bus über standardisierte Steckerleisten nach außen geführt, für
Systemerweiterungen; Host-Bus als interner Hochgeschwindigkeitsbus
für Prozessor mit Speicher und Peripheriefunktionen
Integrierte Bausteine zum Aufbau PC Hauptplatine:
•
Prozessor mit integrierter Floating-Point-Recheneinheit und Cache
•
Host PCI-Brücke (Northbridge) mit integriertem DRAM Controller
und Cache Controller
•
PCI-ISA-Brücke (Southbridge) mit integriertem IDE-Controller,
USB-Host Controller
•
I/O-Chip mit integrierten Floppy-Disk Controller, Real Time Clock,
Infra-rot Schnittstelle, paralleler und serieller Schnittstellen,
Keyboard und Mausschnittstelle
•
Graphik-Controller
•
Hauptspeicher (DRAM)
•
Cache (SRAM)
•
BIOS (Flash)
4.2 Embedded Prozessor
Low Cost Embedded PC-Architecture
PC below 1k$ due to specific system architecture and high integration
technology ⇒ (Media GX Embedded Processor Kernel)
4.2 Embedded Prozessor
Media GX Embedded Prozessor Kernel enthält:
•
Integrierte Floting-Point-Unit
•
Integrierter Cache
•
DRAM Controller
•
Graphik Controller
•
PCI Controller
•
PSI-ISA Brücke (Southbridge) mit integriertem DIE-Controller,
USB-Host Controller, Audio-Funktion
•
I/O-Chip mit integriertem Floppy-Disk Controller, Real-Time Clock,
Infra-rot Schnittstelle, paralleler und serieller Schnittstelle,
Keyboard- und Mausschnittstelle
Bausteinanzahl (ohne Speicher) von 6 bei Standard PC auf 3 bei
Embedded PC reduziert.
4.2 Embedded Prozessor
Vorteile Integration PCI-und DRAM-Controller:
•
Host-Bus transparent für Systemdesigner, befindet sich auf dem
Chip
•
CPU kann mit jedem Systemtakt auf externen Speicher zugreifen,
damit kann SRAM Cache (teuer) entfallen ohne Beeinträchtigung
der Leitungsfähigkeit
•
Integrierter Graphik-Controller macht Bildspeicher überflüssig.
Funktion wird vom Hauptspeicher übernommen
•
Kostengünstiges 4-Lagen-Board wg. Wegfall Host-Bus und wenig
Chips
•
Geringe Leistungsaufnahme wg. Hoher Integration, kleineres
kosten-günstigeres Netzteil
•
Mit CMOS-Prozessen mit Strukturbreiten von 0,18µm lassen sich
kostengünstig „Single-Chip-PCs“ herstellen
4.2 Embedded Prozessor
Embedded System-on-a-Chip-PC-Architecture
Analoge & digitale HL-technologien ⇒ Mixed-Signal HL
4.2 Embedded Prozessor
Single-Chip-PC-Architektur
System-on-a-chip-Produkte benötigten analoge und digitale Halbleitertechnologien, sog. Mixed-Signal-Technologie. Die kostengünstige
Massenfertigung eines Embedded PC als System-on-a-Chip erfordert
modernste Halbleiterprozesses (CMOS 0,18µm), ausgereifte
Chipentwicklungswerkzeuge und Fertigungsstätten, die dem neuesten
Stand der Technik entsprechen.
Im Zuge der fortschreitenden Miniaturisierung werden immer mehr
Funktionen mit auf der Zentralbaugruppe untergebracht wie z.B.
Grafikfunktionen, Silicon Disks, Ethernetanschlüsse, etc.
4.2 Embedded Prozessor
Eigenschaften Embedded PC:
•
Hohe Rechenleistung um auch multimedial Anwendungen
realisieren zu können( DVD, MPEG, Live-Video, InternetBrowser/Server)
•
Geringe Stromaufnahme, ggf. für Batteriebetrieb
•
Geringe Verlustleistung; kompakte Gehäuse und kleine Kühlkörper
•
All-In-One, d.h. sämtliche Gerätefunktionen auf einem Board
•
Kompakter Aufbau, d.h. Integration der Baugruppe in bestehende
Funktionseinheiten, z.B. Display-Panels, Gateways, Controller, etc.
•
Betriebssystem unabhängig, d.h. keine Verwendung DOS
spezifischer Silicon Disk-Lösungen, da Flash-Filesysteme in der
Regel DOS spezifisch sind
•
Erweiterter Temperaturbereich um auch Anwendungen im Bereich
extremer Umgebungstemperatur realisieren zu können
4.3 Componentware
System-on-Chip ASIC
•
CPU 5ST86 (66 MHZ oder 133 MHz)
•
Floating-Point Unit
•
Clock Generatorr mit PLL
•
64 Bit breites DRAM-Interface
•
PCI Northbridge
•
EIDE-Interface
•
Power Management
Durch Hinzufügen I/O-Controller für Keyboard-IF, RealtimeClock, COM1,
COM2, LPT mit EPP/EPC, Floppy-Disk-IF, FlashBIOS, DRAMs, SiliconDisk
stehen sämtliche Grundfunktionen eines PCI basierten Embedded PC,
auf engstem Raum, zur Verfügung
4.3 Componentware
System-on-Chip ASIC PC/104
4.4 Embedded On-Time Programmable Controller
Als On-Chip-Speicher wird RAM, maskenprogrammierbares ROM,
EPROM und EEPROM verwendet. EEPROM als kostengünstiger FlashSpeicher, allerdings nur in großen Blöcken löschbar.
µC typischerweise im Plastikgehäuse ohne Fenster angeboten, aus
EPROM wird OTP (On-Time Programmable Baustein) -> ROM/OTP
4.5 Beispiele Embedded PC
4.5.1 Embedded PC auf Java Basis
Bei Embedded Systems bislang hardwarenahe Software-Entwicklung.
Ursache hierfür strikte Kostenbeschränkungen und zeitkritische Abläufe.
Embedded-Systems für objektorientierte Programmierung ideal:
•
sind modular aufgebaut
•
einzelne Baugruppenrealisieren haben bestimmte Funktionen
•
haben in vielen Fällen eigenen Zustand
•
haben definierte Schnittstellen
Baugruppen durch entsprechende SW-Module (Objekte) repräsentiert,
damit ergibt sich SW-System, das ,analog zu HW-System, zusammengesteckt werden kann.
4.5 Beispiele Embedded PC
4.5.1 Embedded PC auf Java Basis
Baugruppen in verschiedenen Geräten eingesetzt ⇒ entsprechende SWModule können bei Geräteprogrammierung wiederverwendet werden;
bei unterschiedlichen Versionen SW-Modul für gemeinsame Funktionalität erstellen ⇒ mehrfache Programmierung identischer Programmteile
wird vermieden; Java bildet dafür ideale Plattform.
Java-Quellprogramm durch Java-Compiler in Java-Bytecode übersetzt,
auf jeder Java-Plattform direkt ausführbar. Werden Module einer JavaAnwendung zur Ausführungszeit dynamisch auf Plattform geladen wird
Bytecode auf Korrektheit überprüft. Zusätzliche Funktionen stehen in
Form von Klassenbibliotheken zur Verfügung und werden nach Bedarf
dazugeladen. Bytecode wird entweder von virtueller Maschine interpretiert oder zur Ausführungszeit in Maschinensprache übersetzt. Interpreter und Funktionen der Klassenbibliotheken bauen auf Mechanismus
eines Laufzeitsystems und eines darunter liegenden Betriebssystems auf
– die virtuelle Maschine – kann auch im Betriebssystem oder der HW
selbst realisiert werden.
4.5 Beispiele Embedded PC
4.5.1 Embedded PC auf Java Basis
Im embedded Bereich wurde bislang vor allem sehr hardwarenahe SW
Entwicklung betrieben. Ursache hierfür sind
•
strikte Kostenbeschränkungen, die keine mächtigen, ressourcenaufwendigen SW-Lösungen erlauben
•
Zeitkritische Abläufe, für die mit den bisherigen OO SW Systemen
nicht die erforderlichen Garantien erbracht werden können
•
Umfang von EBS SW bislang noch so überschaubar, dass traditionelle SW Entwurfsparadigmen und der Einsatz hardwarenaher
Programmiersprachen bzw. Assemblerprogrammierung möglcih
waren
•
leistungsfähigere und billigere HW erlaubt Einsatz prozessorgestützter Steuerungen in neuen Anwendungsgebieten und gleichzeitig auch die Umsetzung wesentlich komplexerer SW Lösungen
bei vertretbaren HW Kosten
•
von ihrer Struktur her sind die meisten EBS für eine OO Programmierung ideal
4.5 Beispiele Embedded PC
Embedded Java-PC besteht aus
•
Lademechanismus für Klassen,
•
Klassenbibliotheken, die API-Menge bereitstellen,
•
virtueller Maschine, die Java Bytecode ausführt
4.5 Beispiele Embedded PC
•
•
•
VM wird als existierendes Betriebssystem aufgesetzt bzw. in einem
WWW-Browser integriert
VM läuft auf Standard µP ohne darunterliegendes Betriebssystem.
Alle vom Betriebssystem erbrachten Dienste werden in Java
realisiert. Eine Treiber API stelt die Schnittstelle zur HW zur
Verfügung
4.5 Beispiele Embedded PC
Java Application Programming Interface (API)
•
Java Base API
umfasst Schnittstellen des Sprachkerns (java.lang), häufig benötigte
Hilfsklassen (java.util), Schnittstellen zur Grafikprogrammierung
(java.awt), Dateisystem- (java.io) und Netzwerkunterstützung
(java.net), Schnittstellen zur Applet-Programmierung -SW-Module
die über WWW-Seiten geladen werden können- (java.applet);
Schnittstellen für 2D-Grafik, Audio-Anbindung, Bearbeitung MMDaten, 2D-Animation, DB-Anbindung, Sicherheitsmechanismen
•
Java Embedded API
Schnittselle für EBS, bislang nicht standardisiert, Teilmenge Java
Base API, auf Sprachkern (java.lang) und einige Hilfsklassen
(java.util) beschränkt
•
Java Extension API
standardisierte Schnittstelle die nicht von jeder Java-Plattform
implementiert werden muss; Unterstützung 3D-Grafik, Video- und
MDI-Anbindung, Gruppenkommunikation, Telephonie, Internet-,
Intranet-Server-Funktionen
4.5 Beispiele Embedded PC
Implementierung Java Application Programming Interface (API)
4.5 Beispiele Embedded PC
Architektur von Java-Plattformen
(1)(2)(3) virtuelle Java-Maschine wird auf existierendes Betriebssystem
(1)(2) bzw. in einen WWW-Browser integriert (3)
(4) virtuelle Maschine läuft auf Standard µP ohne darunter liegendes
Betriebssystem; vom Betriebssystem erbrachten Dienste werden in
Java realisiert; Treiber API stellt Schnittstelle zu HW zur Verfügung
(5) virtuelle Maschine wird direkt vom µP unterstützt; picoJava für die
Embedded Plattform, microJava und ultraJava für Basis-Plattform
Varianten (4) und (5) für Einsatz im Automatisierungs- und Embed
ded-Bereich interessant, damit können kleine, hardwarenahe Plattformen realisiert werden.
Kleinste Variante JavaChip unter 50 $. Realisierung in HW führt zu
besserer Performance bei der Ausführung von Bytecode
4.5 Beispiele Embedded PC
8-Bit-Mikrocontroller mit A/D-Wandler für Embedded Anwendungen
In M2CMOS Technologie hergestellter 8-Bit-Mikrocontroller aus der
COP8-Familie, COP8ACC, im CCM Verfahren entworfen. CCM steht
für Configurable Controller Methodology, erlaubt schnellen und
zuverlässigen Schaltungsentwurf neuer Mikrocontroller-Derivate, auf
Basis einer qualifizierten und verifizierten Megazellen-Bibliothek.
4.5 Beispiele Embedded PC
4.5 Beispiele Embedded PC
COP8ACC: modifizierte Harvard-Architektur, erlaubt, Daten zwischen
Programm- und Datenspeicher zu transferieren. Schnellstmögliche
Befehlszykluszeit liegt bei 1µs. Ca. 80% der Befehle benötigen nur ein
Byte und einen Befehlszyklus, was den Mikrocontroller für Embedded
Anwendungen geeignet macht, in denen auch ein schneller, hochauflösender und preiswerter A/D-Wandler benötigt wird.
COP8ACC unterstützt 8 Interrupt Vektoren und verfügt über 2 indirekte
8-Bit-Datenspeicher Adressregister.
4.5 Beispiele Embedded PC
COP8ACC verfügt über die Zeitgeber T0 und T1.
Der freilaufende 16-Bit-Timer T0 unterstützt programmierbare Überlauperioden von 4-, 8-, 16-, 32-, und 64K-Befehlszyklen. Ein Überlauf der
z.B. durch einen Interrupt ausgelöst werden kann, oder durch setzen
eines Statusbit, kann per Software abgefragt werden. T0 wird auch für
den IDLE-Stromsparmodus benutzt, um den Mikrocontroller nach der
vorprogrammierter Zeitperiode wieder zu aktivieren.
Der programmierbare 16-Bit-Multifunktionszeitgeber T1 mit den beiden
16-Bit ”Autoreload/Capture”-Registern unterstützt drei verschiedene
Funktionsmodi:
•
Prozessorunabhängige Pulsweitenmodulation
•
Ereigniszähler mit programmierbarer Flanke
•
Externe Frequenzmessung oder Zeitmessung mit zwei unabhängigen Eingängen und programmierbaren Flanken.
4.5 Beispiele Embedded PC
Darüber hinaus verfügt COP8ACC über 4 Multi-Input-Wake-Up-(MIWU)
Ein-/Ausgänge durch die der Mikrocontroller, durch externe Ereignisse,
aus den HALT- und IDLE-Stromsparmodi aktiviert werden kann, z.B.
durch Drücken einer beliebigen Taste in einer mit den MIWU-Pins
angeordneten Tastaturmatrix. Die Polarität des Eingangssignals ist
programmierbar, ferner kann jedem MIWU-Signal ein programmierbarer, externer Interrupt zugeordnet werden.
Zu den integrierten Peripheriefunktionen des COP8ACC gehört auch
eine serielle, SPI-kompatible 3-Draht-Schnittstelle, mit der es problemlos möglich ist, externe Peripherie an den Mikrocontroller anzubinden.
Die Schnittstelle unterstützt Datenraten bis zu 5 Mbit/s.
Ferner hat der COP8ACC einen Programmspeicher von 4096 Byte
ROM und einen 128 Byte großen RAM-Datenspeicher.
4.5 Beispiele Embedded PC
Die Dual-Port-Ausgänge des COP8ACC können bis zu 15 mA nach
Masse schalten; sie eignen sich zur Direktansteuerung von LEDs und
Triacs, es können auch mehrere Ausgänge parallel geschaltet werden
um höhere Ströme zu erzielen.
Die Ein-/Ausgänge sind individuell softwarekonfigurierbar, d.h. jeder
Pin kann entweder als weak-pullup Eingang, Hochimpedanzeingang,
push-pull 1- oder push pull 0-Ausgang programmiert werden. Der Pinpegel kann unabhängig von der programmierten Konfiguration zurückgelesen werden. Schmitt-Trigger-Eingänge an den Ports G und L
erhöhen die zuverlässige Signalerkennung auch in störstrahlungsreicher Umgebung.
Sicherheit und Zuverlässigkeit kommt bei Embedded Anwendungen
eine besondere Bedeutung zu, weshalb diese Punkte nachfolgend für
den COP8ACC näher untersucht werden.
4.5 Beispiele Embedded PC
CO8ACC verfügt über nicht maskierbaren Software-Task-Interrupt.
Damit können abnorme Betriebszustände, z.B. Zugriff auf ungenutzten
Programmspeicher, Zugriff auf nicht implementierte RAM-Adressen,
Over Push/Pop des Stackpointers, die z.B. durch Störeinstrahlungen
oder Netzspannungseinbrüche verursacht sind, unterbunden werden.
Watchdog des COP8ACC wird nicht nur, wie bei den meisten Mikrocontroller-Implementierungen üblich, durch nicht erfolgte watchdog
services innerhalb einer vorgegebenen maximalen Zeitspanne getriggert, sondern auch bei zu häufig vorkommenden watchdog services.
Dadurch wird sichergestellt, dass z.B. Endlosschleifen, die einen
fortwährenden watchdog service durchführen, erkant werden.
Der implementierte Clock Monitor bringt den Mikrocontroller in einen
definierten Reset-Zustand, sobald die Oszillatorfrequenz unter einen
Minimalwert abfällt.
4.5 Beispiele Embedded PC
Die modifizierte Harvard-Architektur erlaubt es die ProgrammspeicherPrüfsumme zu berechnen, eine Funktion, die durch die Spezifikation
UL1998 für sicherheitsrelevante Mikrocontroller-Applikationen (in den
U.S.A.) zwingend vorgeschrieben ist (UL=Underwriters Laboratories
Spezifikation).
Da der Pinstatus aller Ein-/Ausgänge des COP8ACC unabhängig vom
programmierten Ausgangsstatus zurückgelesen werden kann, lassen
sich externe Kurzschlüsse und offene Verbindungen zuverlässig
erkennen. Dies ist ebenfalls eine Forderung der UL1998.
Eine integrierte ESC-Schutzschaltung (ESD=electro static discharge)
verleiht dem Mikrocontroller eine ESD-Festigkeit von >5000V.
Der Chip ist zu 99% fehlerfrei, d.h. 99% aller möglichen stuck at 1 und
stuck at 0 Fehler jedes Transistors werden beim Produktionstest
erkannt. Damit werden strengste industrielle Qualitätsanforderungen
erfüllt. So fordert z.B. die Automobilindustrie 95% Faultgrading.
4.5 Beispiele Embedded PC
Schutzschaltungen zur EMI-Reduzierung (EMI=electromagnetic interference) minimieren die elektromagnetische Störabstahlung des Mikrocontrollers, wie nachfolgend gezeigt.
4.5 Beispiele Embedded PC
Aus der Blockschaltung des Analogfunktionsblockes geht der Aufbau der
schnellen A/D-Wandlung hervor.
Aus nachfolgendem Bild geht hervor, dass sowohl der negative Komparatoreingang als auch die auf dem Chip integrierte Konstantstromquelle,
welche softwaregesteuert an- oder abgeschaltet werden kann, mit Pin
11 der Mikrocontroller I/O-Anschlüsse verbunden sind.
Um einen single slope A/D-Wandler zu realisieren, muss extern nur ein
Kondensator an den Konstantstromquellen-Ausgang (negativer Komparator-Eingang) angeschlossen werden.
4.5 Beispiele Embedded PC
4.5 Beispiele Embedded PC
Der positive Komparator-Eingang führt zu einem 7:1 Analogmultiplexer.
Sechs der Multiplexereingänge sind mit Eingangspins des
Mikrocontrollers verbunden, am siebten liegt eine integrierte UB/2
Spannungsreferenz. Der Komparatorausgang führt zum Triggereingang
des schnellen 16-Bit-capture Timers, welcher mit der externen
Oszillatorfrequenz getaktet wird.
An den COP8ACC können bis zu sechs Analogspannungen an die
Eingangspins angelegt, vom Analogmultiplexer selektiert und danach
dem positiven Komparatoreingang zugeführt werden.
Um eine A/D-Wandlung zu initiieren, wird die Konstantstromquelle per
Software eingeschaltet. Als nächstes wird die externe Kapazität
entladen, indem der entsprechende I/O als 0-Ausgang
programmiert wird. Dass während dieses Vorganges die
Konstantstromquelle bereits eingeschaltet ist, verursacht keine
Probleme, da der Konstantstrom zu gering ist, um eine
nennenswerte Spannungserhöhung am Transistorschalter nach
4.5 Beispiele Embedded PC
Der positive Komparator-Eingang führt zu einem 7:1 Analogmultiplexer.
Sechs der Multiplexereingänge sind mit Eingangspins des Mikrocontrollers verbunden, am siebten liegt eine integrierte UB/2Spannungsreferenz. Der Komparatorausgang führt zum Triggereingang des
schnellen 16-Bit-capture Timers, welcher mit der externen Oszillatorfrequenz getaktet wird.
An den COP8ACC können bis zu sechs Analogspannungen an die
Eingangspins angelegt, vom Analogmultiplexer selektiert und danach
dem positiven Komparatoreingang zugeführt werden.
4.5 Beispiele Embedded PC
Um eine A/D-Wandlung zu initiieren, wird die Konstantstromquelle per
Software eingeschaltet. Danach wird die externe Kapazität entladen,
indem der entsprechende I/O als 0-Ausgang programmiert wird. Obgleich
während dieses Vorganges die Konstantstromquelle bereits eingeschaltet
ist, verursacht dies keine Probleme, da der Konstantstrom zu gering ist,
um eine nennenswerte Spannungserhöhung am Transistorschalter nach
Masse hervorzurufen.
Als nächster Schritt wird der Ladevorgang für die externe Kapazität
gestartet indem der interne Transistorschalter unter Softwarekontrolle
nach Masse geöffnet wird. Zur gleichen Zeit wird der 16-Bit-Aufwärtszähler gestartet. Beim Setzen des Zählers wird dieser automatisch auf
den Wert 0 zurückgestellt. Der Zähler wird danach mit der externen
Oszillatorfrequenz inkrementiert.
4.5 Beispiele Embedded PC
Die mit dem Single-Slope-Verfahren des COP088CC erreichbare Auflösung
hängt im wesentlichen vom Wert des externen Kondensators, der analogen
Eingangsspannung, dem Strom der Konstantstromquelle sowie der Oszillatorfrequenz des Mikrocontrollers ab. Der Vorteil des Single-Slope-Verfahren
ist es, die niedrigere A/D Auflösung gegen eine schnellere Wandlungszeit
abzuwägen und vice versa. Die (minimal erreichbare) A/D-Auflösung
genügt der Beziehung:
CTV = (C*U))/Imax*tClk
mit CTV = Capture Timer Value, C = Kapazitätswert, U = analoger Eingangsspannungsbereich, Imax = maximaler Konstantstrom, tClk = Zykluszeit
des externen Oszillators.
Aufgrund der Herstellungstoleranzen des Mikrocontroller-Chip variiert der
von der Konstantstromquelle gelieferte Strom zwischen 7µA und 32µA.
4.5 Beispiele Embedded PC
Für einen Kondensator C (10 nF) mit einer Oszillatorfrequenz f (10 MHZ)
und einem analogen Eingangsspannungsbereich U (5V) kann die minimal
erreichbare A/D-Auflösung mittels des maximalen Konstantstroms Imax
berechnet und grafisch dargestellt werden, wobei die Ergebnisse vor dem
Hintergrund der maximalen (worst case) und minimalen (best case)
Umsetzzeit des A/DWandlers bestimmt werden können.
Der Kapazitätswert C kann zwischen 1nF und 10 nF variieren, was in
entsprechenden Auflösungen und A/D-Wandlungszeiten resultiert.
4.5 Beispiele Embedded PC
4.5 Beispiele Embedded PC
Herunterladen