Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Slide 1 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
RealReal--time for time for Windows NTWindows NT
Myron Zimmerman, Ph.D.Chief Technology Officer
VenturCom, Inc.Cambridge, Massachusetts
(617) 661-1230www.vci.com
Slide 2 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
AgendaAgendau Background on VenturCom, Inc.u Intelligent Connected Equipment TrendsuMicrosoft Windows CEuWindows NT and Windows NT EmbeddeduWin32-based real-time APIu RTX – Real-time Extension for Windows NTu DCX – Real-time Software Component Modelu Question and Answer
Resources at www.VCICENTER.com
Slide 3 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
VenturCom OverviewVenturCom Overview
u Founded in 1980, pre-IPO, 85+ employeesu Investors include GE, Intel and Microsoftu 900+ projects in Telecom, Industrial Automation,
Medical, Point of Sale, Military & Aerospaceu Headquarters in Cambridge, MA, with offices in
California, Virginia, France, Japan, United Kingdom
VenturCom, the leading provider of productsand expertise for organizations developing
Windows-based Intelligent ConnectedEquipment (ICE)
Slide 4 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
VenturCom MilestonesVenturCom Milestones
u 1980’s: Principal UNIX developers foru DEC, Foxboro, GE, Toshiba on real-time UNIX versionsu EDS on $250M USDA, AT&T on $980M AFCAC 251 contractsu Boeing & Rockwell on first FAA flight-certified embedded UNIX
u Early 1990’s: Real-time and embedded UNIX productsu Fully preemptive and real-time UNIX SVR3/R4 kernelsu Embedded and ROM’ed UNIX, embedded development tools
u 1996: Real-time and embedded Windows productsu First tools and embedded configurations of Windows NT
u Licensed to Microsoft in 1998 as basis for Windows NT Embedded
u First comprehensive real-time extension for Windows NT
Slide 5 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Intelligent ConnectedIntelligent ConnectedEquipment TrendsEquipment Trends
u Shift to 32-bit general purpose micros (64-bit coming)u Compressed equipment life-cyclesu Exploding software content in intelligent equipment
u Advanced GUI-based operator interfacesu Connectivity to other equipment and Information Systemsu Complexity and advanced product features
u Use of commercial-off-the-shelf componentsu Hardware - standard processors, busses and board setsu Software - standard OS and layered components
u New equipment software development paradigm – more use of existing components, less new code development
Slide 6 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Windows inWindows inIntelligent EquipmentIntelligent Equipment
u Desired by end-user organizations for commonality with their existing Information Systems
u Microsoft offers two Windows OS optionsu CE for the low-end - less features, higher NRE, lower unit costu NT for the high-end - more features, lower NRE, higher unit cost
u Pluses for equipment vendors and their developersu Great range of COTS Drivers, Applications, etc.u Familiar Windows GUI-based operator interfaceu Powerful Win32 API and Network connectivityu Rich set of development toolsu Recently added embedded features
u Missing comprehensive real-time functionality
Slide 7 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Windows CE 3.0Windows CE 3.0
u Microsoft targets Pocket PC, Set-tops and variationsu Win32 API subsetu Disconnected or intermittent connected systemu Windows NT host development and download
u Memoryu .5MB RAM, .5MB ROMu GUI adds 1MB RAM, 2MB ROMu Typical total RAM in 4 to 16 MB rangeu Application code pages, XIP, ROM compression
u Scheduling and response times (Pentium III 700)u 16 ISR levels - 2.5 µs to 5+ µsu 256 thread priorities - 6.7 µs to 25+ µsu Heavy load or networking - 100+ µs
Slide 8 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Windows NTWindows NTEmbeddedEmbedded
u Based on technology licensed from VenturComu Microsoft targets the high-software content market
u OEM leverages Windows NT networking and applicationsu Full Win32 API, security and system services are available
u New embedded licensing model (e.g. lower cost)u Target Designer authoring tool
u Builds the target image from Windows NT operating system and application components
u Database of all NT files, registry settings and inter-relationshipsu Provides configuration managementu Performs dependency checking
Slide 9 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Windows NT Embedded Windows NT Embedded FeaturesFeatures
u Based on the standard (i.e. retail) Windows NTu Small memory footprint configurations
u 16 MB RAM, 10 MB Storage (16 MB with networking)u The “paging file” can be eliminated
u Special display driver for “headless” operationu A “write filter” for read-only storage devicesu Remote management and unattended error recoveryu Boot and run from:
u Flash Memoryu CD-ROM (requires bootable ROM burning software)
Slide 10 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Windows NT andWindows NT andRealReal--timetime
u Windows NT without RTX is not hard real-timeu Scheduling and response times (Pentium III 700)
u 32 ISR levels - 2.5 µs to 10+ µsu DPC - 5.8 µs to 5000+ µsu 32 thread priorities - 6.7 µs to 5000+ µs (plus paging)
u All low-level device programming must be done in a Windows NT kernel level driver using the Device Driver Kit (DDK) – non-Win32 interface and difficult to debug
u Hard to manage user-level working sets (e.g. paging)u Complex interrupt management – ISR queues a DPC,
which in turn schedules a thread
Slide 11 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Situational AnalysisSituational Analysis
u Two basic approaches to support real-timeu Use two computers – one computer with a RTOS for real-time,
plus another computer with Windows for non-real-time processingu One computer for both real-time and non-real-time processing
u Benefits of the one computer approachu Lower hardware costs and easier software integrationu Utilize a real-time extension for “soft” coprocessor capabilityu Single host Pentium processor for both types of processing
u Pentium is a very high-performance RISC-speed processoru Pentium includes some DSP-like instructions (MMX)u 20% CPU bandwidth of a 500 MHz processor, is still 100 MHz
u Microsoft may add some real-time features over timeu Select an API and extension that can support these features
Slide 12 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
RTXRTX
u RtWinAPI – the common real-time Windows APIu RTX Description and Featuresu RTX Architectureu Performance Results (CE, NT and NT with RTX)
The Real-time Extension for Windows NT that enables high-speed, deterministic
processing without a coprocessor
Slide 13 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
RtWinAPIRtWinAPI -- The CommonThe CommonRealReal--time Windows APItime Windows API
u Defines a common real-time Win32-based APIu Supports real-time applications and device driversu Same on Windows CE and Windows NT with RTX
u Carefully selected set of 108 Win32 calls u Most useful and provide the best real-time performanceu Process, Thread, Handle, DLL, Heap memory supportu Events, Semaphores, Mutexs and Shared Memory supportu Elegant thread-based device interrupt managementu IPC between real-time and non-real-time componentsu Leverages standard development tools and knowledge
u Header file and doc available on VenturCom’s CENTER
Slide 14 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
RTX DescriptionRTX Description
u RTX adds a real-time sub-system (RTSS) to NTu Independent thread scheduler runs ahead of all Windows NT
interrupt, DPC and thread processingu High-speed and deterministic response timesu RTSS can run on a dedicated processor on MP systemsu Worst-case IST jitter times of 22 µs (8 µs on MP systems)
u Supports RtWinAPI plus other advanced API callsu C, C++ and Java (3rd party) language support
u No changes to Windows NT kernel or device driversu Real-time HAL extender for interrupt isolation, fast timers, blue
screen interception
u Includes debugging, timing trace and object viewer tools
Slide 15 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Key RTX FeaturesKey RTX Features
u Thread-based interrupt managementu Interrupt mask based on thread priorityu Full RTX API (with FP and SEH) always available
u Bus controller, direct memory and device port IO accessu Resources (memory, interrupts, …) coordinated with NTu RTX applications continue after Windows NT stopsu RTX applications start early during booting (~3 s after
initial blue screen)u Floating point supportu Windows NT starvation watchdog timer (UP issue only)u Structured exception handling (SEH)u Support for DLL modules
Slide 16 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
RTX ArchitectureRTX Architecture
Windows NTKernel andDevice Drivers
HAL
RTX - RTSS (Real-time Subsystem)
Win32Subsystem
RTSSProcess
RTSSProcess
Win32Process
RTX.DLL
Win32 Processwith RTX IPC
RTX - HAL (Real-time HAL Extender)
Slide 17 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Thread Switch Times under Thread Switch Times under Load on Pentium III 700Load on Pentium III 700(Min / Max in ì sec)(Min / Max in ì sec)
Operation NT 4.0 CE 3.0 RTX 5.0 SetEvent (no switch) 1.0 / 5000+ 1.7 / 8.2+ .3 / 3.7 Event 1.4 / 5000+ 2.8 / 12.2+ .9 / 6.3 Mutex 1.5 / 5000+ 4.0 / 12.0+ 1.0 / 6.5 Semaphore 1.4 / 5000+ 3.3 / 10.7+ .9 / 6.3 Yield 1.2 / 5000+ 1.5 / 9.5+ .4 / 6.8 Priority Change 1.3 / 5000+ 1.6 / 10.2+ .7 / 5.3 IST Latency 6.7 / 5000+ 6.7 / 26+ 4.0 / 19
NOTES:1) Maximum values include the overhead of timer interrupts.2) NT does not priority promote the thread owning a contested mutex.3) CE results from light GUI load only - networking loads add 100+ µs latencies.
Slide 18 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
DCXDCX
u DCX Descriptionu DCX Key Featuresu DCX Architecture
The Real-time Data and Control Exchange for Windows
Connecting software components together in real-time
Slide 19 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
DCX DescriptionDCX Description
u Supports a data-flow “centric” software component model with high-performance real-time data and control flowu Based on the publish/subscribe modelu Integrates with Microsoft COM and the OPC interface standard
u Types of DCX software componentsu Real-time applications – use RtWinAPI (portable) callsu Device drivers – use RtWinAPI (portable) callsu Non-real-time applications – use any native OS API callsu DCX COM server to COM and DCOM client components
u System integration model for mixed-vendor real-time software components
Slide 20 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
DCX FeaturesDCX Features
u Data flow tuned for Real-time and Controlu Named data items with configurable propertiesu Cached and queued methods, variety of data typesu High-performance read/write times (less than 0.2 µs)u No-contention read/write access protocol guarantees determinism
u Configurable Scheduling Behavioru Abstract all thread priorities and timersu Standard and configurable synchronization methods
u C/C++ and real-time Java (3rd party) language interfacesu C++ driver and application component classes coming
u Distributed using real-time TCP/IP networks coming
Slide 21 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
Component IntegrationComponent Integrationwith DCXwith DCX
DCX - Open data exchange
Real-timeApp
Real-timeDriver
DCX COM Server(OPC IDL)
DataLogger
OperatorInterface
OPC Client OPC Client
Non-RTApp
Real-timeApp
Slide 22 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
DCX ArchitectureDCX Architecture
DCXDCX
DCXApplication
DCXApplication
DCXDevice Driver
DCXDevice Driver
ConfigurationDatabase
ConfigurationDatabase
DCX Resource Manager
DCX Resource Manager
DCXDCX
RtWinAPIRtWinAPI
SharedMemory
SharedMemory
IPC SyncObjects
IPC SyncObjects
Slide 23 VenturComEnabling Intelligent Connect Equipment
Real-time & Embedded Systems Forum 2000
SummarySummary
u Start with Windows NT and/or CE platformsu Lower development costs while adding functionalityu Run on a wide range of off-the-shelf platformsu Leverage large pool of Win32 developers and tools
u Add RTX for hard real-time capability and to reduce coprocessor and DSP hardware costs
u Use DCX to connect real-time and non-real-time software components together
u Leverage VenturCom’s expertise to reduce development risk, cost and time-to-market
u Check the www.vci.com and www.vcicenter.com websites for current information, downloads and support