Eingebettete Systeme (VAK 18.142) Prof. Dr.-Ing. D.P.F. Möller SS 2005 Technische Systeme Systeme Informatik Leitung: Prof. Dr.-Ing. D.P.F. Möller
Eingebettete Systeme (VAK 18.142)
Prof. Dr.-Ing. D.P.F. MöllerSS 2005
Tech
nisc
he
Syste
me
Syste
me
Info
rmat
ik
Leitung: Prof. Dr.-Ing. D.P.F. Möller
Embedded Systems (EBS)4. Embedded PCs4.1 Introduction4.2 Embedded Processor4.3 Componentware4.4 Embedded On-Time Programmable Controller4.5 Examples:4.5.1 Embedded Java based PC 4.5.2 Embedded Image Processing
4.1 IntroductionPCs 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 environmentCommodity PC products are totally unsuitable to run in industrial environ-ments 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 PCmeaning a computer which appears like a PC to the software, but which is properly engineered to be buried deep inside the equipment and to with-stand 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 IntroductionToday 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 thePC/104-Plus Specification Version 1.2.
4.1 IntroductionThe industry standard PC/104 is shown as a standard assembly.
.
4.1 IntroductionOver the past decade, the PC architecture has become an acceptedplatform 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 substantiallyreduce development costs, risks, and time. This means faster time-to-market 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 widelyavailable. These components are also significantly more economical thantraditional non-PC bus architectures such as STD, VME, and Multibus,which results in lower product costs for embedded PC applications.
4.1 IntroductionFor 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 (andexpensive) 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 IntroductionPC/104 was developed in response to this need. It offers full architecture, hardware, and software compatibility with the PC bus, but in ultra-compact (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 IntroductionEmbedded 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 IntroductionDesigning 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 theapplication 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 ProzessorThe 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 IntroductionThe 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 IntroductionOften 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 be-stimmte 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 Steckverbin-
dungen, 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 PCIm 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 PC-
Kartenverbindung• Reduziert Bustreiberleistung• Leitungsbedarf (1 bis 2 W) und minimierte Komponentenzahl
⇒Anwendungen, bei denen geringer Stromverbrauch wichtig ist, z.B. medizinische Diagnose- und Therapiesysteme, Maschinen-steuerungen in der Industrieautomatisierung sowie bei ConsumerAnwendungen 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ück-zahlen 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 PCI-
Bus (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-/Speicher-Subsystemen
• 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/CompactPCI-
Hybride)• Exzellente thermische, Stoß- und Vibrations Charakteristik• hochwertige Signalchartakteritik• EMI Schutz auf Board und Chassis Ebene• Hebelmechanik zum einfachen und sicheren Einsetzen und Heraus-
nehmen 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 derVerfahrenstechnik auf die Komponenten:• Embedded PC-Komponenten• Anwendungsspezifische Trägerkarteaufgeteilt. 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-Komponentensteht 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-Eigen-schaften wie Einstrahlung, Abstrahlung, Störfestigkeit etc. die EU-Richtlinien 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 CE-Zertifikation nachzuweisen. Sind verwendete Komponenten CE-Zertifi-ziert 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 insudtrie-tauglicher Ausführung von unterschiedlichen Herstellern mit CE-Zertifi-kation 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 Master-karte sind folgende Kriterien zu berücksichtigen:• Art und Anzahl der Prozessorschnittstellen• Exakte Funktionalität der Anwendung• ErweiterungsmöglichkeitenE/A-Erweiterungen modular z.B. über offenen Sensor/Aktor-Bus wie z.B. CANopen, ASI, SDS, etc. realisieren
4.2 Embedded ProzessorHardware Standard PC-ArchitekturPC 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 PeripheriefunktionenIntegrierte 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-ArchitecturePC below 1k$ due to specific system architecture and high integrationtechnology ⇒ (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 ProzessorEmbedded System-on-a-Chip-PC-ArchitectureAnaloge & digitale HL-technologien ⇒ Mixed-Signal HL
4.2 Embedded Prozessor
Single-Chip-PC-ArchitekturSystem-on-a-chip-Produkte benötigten analoge und digitale Halbleiter-technologien, 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, Internet-Browser/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 ManagementDurch Hinzufügen I/O-Controller für Keyboard-IF, RealtimeClock, COM1, COM2, LPT mit EPP/EPC, Floppy-Disk-IF, FlashBIOS, DRAMs, SiliconDiskstehen 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 Flash-Speicher, 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 PC4.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 SchnittstellenBaugruppen durch entsprechende SW-Module (Objekte) repräsentiert, damit ergibt sich SW-System, das ,analog zu HW-System, zusammenge-steckt werden kann.
4.5 Beispiele Embedded PC4.5.1 Embedded PC auf Java BasisBaugruppen in verschiedenen Geräten eingesetzt ⇒ entsprechende SW-Module können bei Geräteprogrammierung wiederverwendet werden; bei unterschiedlichen Versionen SW-Modul für gemeinsame Funktionali-tä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 Java-Anwendung 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 interpre-tiert oder zur Ausführungszeit in Maschinensprache übersetzt. Interpre-ter 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 PC4.5.1 Embedded PC auf Java BasisIm embedded Bereich wurde bislang vor allem sehr hardwarenahe SWEntwicklung betrieben. Ursache hierfür sind • strikte Kostenbeschränkungen, die keine mächtigen, ressourcen-
aufwendigen 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 tradi-
tionelle SW Entwurfsparadigmen und der Einsatz hardwarenaher Programmiersprachen bzw. Assemblerprogrammierung möglcihwaren
• leistungsfähigere und billigere HW erlaubt Einsatz prozessorge-stützter Steuerungen in neuen Anwendungsgebieten und gleich-zeitig auch die Umsetzung wesentlich komplexerer SW Lösungen bei vertretbaren HW Kosten
• von ihrer Struktur her sind die meisten EBS für eine OO Program-mierung 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 MM-Daten, 2D-Animation, DB-Anbindung, Sicherheitsmechanismen
• Java Embedded APISchnittselle für EBS, bislang nicht standardisiert, Teilmenge Java Base API, auf Sprachkern (java.lang) und einige Hilfsklassen (java.util) beschränkt
• Java Extension APIstandardisierte 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 PCImplementierung 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 inJava realisiert; Treiber API stellt Schnittstelle zu HW zur Verfügung
(5) virtuelle Maschine wird direkt vom µP unterstützt; picoJava für dieEmbedded Plattform, microJava und ultraJava für Basis-PlattformVarianten (4) und (5) für Einsatz im Automatisierungs- und Embedded-Bereich interessant, damit können kleine, hardwarenahe Platt-formen 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 undzuverlä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 zwischenProgramm- und Datenspeicher zu transferieren. SchnellstmöglicheBefehlszykluszeit liegt bei 1µs. Ca. 80% der Befehle benötigen nur ein Byte und einen Befehlszyklus, was den Mikrocontroller für EmbeddedAnwendungen geeignet macht, in denen auch ein schneller, hochauf-lö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 Überlau-perioden 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 verschiedeneFunktionsmodi:• Prozessorunabhängige Pulsweitenmodulation• Ereigniszähler mit programmierbarer Flanke• Externe Frequenzmessung oder Zeitmessung mit zwei unabhän-
gigen 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-Pinsangeordneten Tastaturmatrix. Die Polarität des Eingangssignals ist programmierbar, ferner kann jedem MIWU-Signal ein programmier-barer, externer Interrupt zugeordnet werden.
Zu den integrierten Peripheriefunktionen des COP8ACC gehört auch eine serielle, SPI-kompatible 3-Draht-Schnittstelle, mit der es problem-los 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 Pin-pegel kann unabhängig von der programmierten Konfiguration zurück-gelesen werden. Schmitt-Trigger-Eingänge an den Ports G und L erhöhen die zuverlässige Signalerkennung auch in störstrahlungs-reicher 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 PCCO8ACC 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 Mikro-controller-Implementierungen üblich, durch nicht erfolgte watchdogservices innerhalb einer vorgegebenen maximalen Zeitspanne getrig-gert, 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 Programmspeicher-Prü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 LaboratoriesSpezifikation).
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 interfe-rence) minimieren die elektromagnetische Störabstahlung des Mikro-controllers, 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 Kompa-ratoreingang 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 Kompa-rator-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 Mikrocon-trollers verbunden, am siebten liegt eine integrierte UB/2Spannungs-referenz. Der Komparatorausgang führt zum Triggereingang des schnellen 16-Bit-capture Timers, welcher mit der externen Oszillator-frequenz 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 eingeschaltetist, 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ärts-zä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ösunghängt im wesentlichen vom Wert des externen Kondensators, der analogen Eingangsspannung, dem Strom der Konstantstromquelle sowie der Oszilla-torfrequenz des Mikrocontrollers ab. Der Vorteil des Single-Slope-Verfahrenist 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 Ein-gangsspannungsbereich, 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