2008 jiri spale, programmierung in eingebetteten systemen...
TRANSCRIPT
2008 Jiri Spale, Programmierung in eingebetteten Systemen 1
2008 Jiri Spale, Programmierung in eingebetteten Systemen 2
NetX - Einführung
2008 Jiri Spale, Programmierung in eingebetteten Systemen 3
NetX is …... a highly integrated network controller with
• a new system architecture optimized on - communication and
- maximum data transfer
Basiert auf 32Bit / 200 MHz ARM CPU und bietet:• The universal communication platform• The migration strategy from field bus to Real-Time Ethernet • The single-processor solution with integrated communication controllers• The open technology for own applications
netX is part of a system solution which also includes• software• evaluation tools• design services
2008 Jiri Spale, Programmierung in eingebetteten Systemen 4
NetX: Ziel-Anwendungsgebiete
2008 Jiri Spale, Programmierung in eingebetteten Systemen 5
NetX Controller-Familie
2008 Jiri Spale, Programmierung in eingebetteten Systemen 6
NetX: externe Komponenten
• PHYs für Ethernet sind integriert• nur 1 Quarz + wenige passive Bauelemente
2008 Jiri Spale, Programmierung in eingebetteten Systemen 7
NetX: Hardware-Architektur
Highlights:• 4 comm channel(@netX500)
• jeder mit 3 ALUs• zusätzlich:- CH1+2: PHY pro eth- CH4: ADC,motion ctrl
• xMAC – mediumaccess controller
• xPEC – protocollexecution controller
• 5 channel data switch
2008 Jiri Spale, Programmierung in eingebetteten Systemen 8
NetX: Wichtigste EigenschaftennetX 500• für stand-alone Anwendungen/ mit host-System
• optimiert für
- Kommunikation
- hoher Data Throughput
• 4 Kanäle RealTime-Eth/Fieldbus
• für jeden Kanal:- 3 Kommunikations-ALU
- programmierbar in µcode
• Data-Switch:- 5 parallele Kanäle
- jeder mit Throughput bis zu 2GB/s
• 32-Bit/200MHz CPU ARM 926
• SDRAM- und Grafik-Controller für Windows CE und Linux
• Dual-Port-Memory als Host-Interface
• 4-kanal-AD-Wandler, PWM, Encoder für Motion Control
• Real-Time-Kernel in ROM
2008 Jiri Spale, Programmierung in eingebetteten Systemen 9
NetX: Kommunikationskanäle• RPU/TPU – RX/TX Processing Unit16-Bit Units for network access
• xMAC – Medium Access Controller- coding, ser/par data conversion, CRC, bit timing- diese Funktionen implementiert mittels Register-konfiguration, xMACs nicht belastet
• FIFOsser/par data separation in time
• xPEC – Protocoll Execution Controller32-bit. ALU; xPEC + Event Controller... führen durch
a) State Diagramms Processing:- Datenverarbeitung auf Ebene von Telegrammen oderBus-Zyklen
- Steuerung von Timing- Datentransfer vom/nach ARM-Speicherb) interrupt triggering: ARM-events, xPEC-eventsc) geläufige arith. und log. funktionen, Sprünge,...Kommunikation zwischen xPECs: gesharete RegisterSyncro Eth-Comm-Motion ohne Teilnahme von ARM
• DMA ControllerDatenaustausch xPEX-ARM über DPM
• FIFO Unit (zwischen xPEC und ARM)
- integrierter Eth-Switch für PROFINET- Lesen/Schreiben von beiden Seiten- komplizierte SW nicht nötig
3 ALUs
2008 Jiri Spale, Programmierung in eingebetteten Systemen 10
NetX: Software-Architektur
2008 Jiri Spale, Programmierung in eingebetteten Systemen 11
NetX: SW-ArchitekturAllgemein: open solution.
Aber: Auch fest definierte Interfaces lassen sich als wählbarer Firmware einsetzen
1. Konfigurator:
Z.B. SYCON.net network Configurator oder andere
2. Driver
DPM driver für diverse Betriebssysteme als Bestandteil vom Firmware
3. Operating systemAlle Protokole laufen auf eigenem
Hilscher rcX Real-Time-Kernel (license-free)
Support Packages für Win CE, Linux (License fees)
4. Protocol stack: anwendbar als
- standard Firmware
- linkable object modules
- in source code for the rcX Real-Time Kernel
5. Hardware Abstraction Layer
Datenaustausch mit Kommunikations-ALUs (in C)
6. Micro CodeKonfiguration der Komm.-Kanäle eigener Netze realisiert durch Mikrocode
(Mikrocode gegeben durch binäre Dateien)
2008 Jiri Spale, Programmierung in eingebetteten Systemen 12
NetX: EntwicklungsmittelEingesetzte CPUs:• ARM926• ARM966
Testing & Debugging:• JTAG• ETM (Embedded Trace Macrocel)
Development Environment:• HiTOP with integrated GNU compiler(Fa. Hitex, co-operation partner of Hilscher)• Eclipse
Debugger:• Tantino JTAG Debugger (HITEX) z.B. NXSB100 board• USB debug interface (HITEX) z.B. netStick, NXHX500
Beide Debugger machen auch möglich:• Zugang zu rcX-Objekten• Auswertung von Interfaces der Protokole• Zugang auf rcX real-time kernel