introduction to vortex86dx2 motion-control evaluation board
TRANSCRIPT
DM&P Vortex86DX2in
Motion Control
DMP Electronics Inc.
The Vortex86 SoC Family
CPUCPU
North North BridgeBridge
South South BridgeBridge
BIOSBIOS
I/OI/O
K/BK/B
I/OI/O
2sizesize
costcost
Shrinking the entire motherboard Shrinking the entire motherboard into a tiny chipinto a tiny chip
x86x86 isn’t just a PC isn’t just a PC x86x86 as a MCU, as a MCU, x86x86 as a DSP, … as a DSP, …
The Vortex86 SoC Family
• Jul. 1998• 40MHz• 0.50 um(2007 EOL)
• Feb. 2007• 300MHz• 0.13 um
• Aug. 2008• 800MHz• 90 nm
• Jun. 2009• 1GHz• 90nm • GPU
• Jun. 2010• 1GHz• 90nm • GPU
• Q1 2012• 1GHz• 90nm• GPU• Motor/Motion Ctrl.
DMP Design x86 SoC since 1995DMP Design x86 SoC since 1995Guaranteed 10 Years Long Term Guaranteed 10 Years Long Term SupplySupply
Vortex86 SoC RoadmapTarget Applications
HMI /
Motion Control
Embedded /
Thin Client /
HMI
Embedded Controller
Microprocessor (uP)
CPU Clock Speed 300MHz 500MHz 800MHz 1GHz 1.5GHz
SXSX
DXDX
MX/MX+MX/MX+
DX2DX2
DX3 40nm
EXEX
Key Benefits of Vortex86 SoC x86 Instruction Set Compatiblex86 Instruction Set Compatible
Highly IntegratedHighly Integrated
Simplified system designSimplified system design
Low system BOM costLow system BOM cost
Low Power ConsumptionLow Power Consumption
Fan-less designFan-less design
Long Term SupplyLong Term Supply
The Vortex86DX2 SoCThe 1st The 1st x86x86 SoC with SoC with
Integrated Motion/Motor-Control Interface !!!Integrated Motion/Motor-Control Interface !!!
VGA
USB
LAN
PCI-E/ISA
Audio
RS232/RS485
SATA
Servo
Encoder
DRAM(DDR II)
Vortex86DX2
CPUCPU NBNB
Motion/Motor ControlMotion/Motor Control
GPUGPU
FPUFPU BIOSBIOS SBSB
Key Specifications of Vortex86DX2
CPUCPU 800MHz / 1000 MHz800MHz / 1000 MHz
x86x86 Compatible, Support FPU & ACPI Compatible, Support FPU & ACPI
DRAMDRAM 400MHz DDR2 DRAM (up to 2GB)400MHz DDR2 DRAM (up to 2GB)
CacheCache - L1: 16K I-Cache, 16K D-CacheL1: 16K I-Cache, 16K D-Cache- L2: 4-way 256KB L2 CacheL2: 4-way 256KB L2 Cache
GPUGPU - 2D Graphics Engine2D Graphics Engine- 720 720 480 x 30fps Capture-In 480 x 30fps Capture-In- VGA / DVO (TTL 18 or 24-bit)VGA / DVO (TTL 18 or 24-bit)- 12-bit TV-out12-bit TV-out- HDMI (with HMI transmitter EP32M or ITE6610)HDMI (with HMI transmitter EP32M or ITE6610)- 1280 x 1024 @ 32bpp1280 x 1024 @ 32bpp
Key Specifications of Vortex86DX2
BusBus - PCI-E (PCI-E (1) Slots 1) Slots 2 2- 16-bit ISA (8.3MHz / 16.6MHz / 16-bit ISA (8.3MHz / 16.6MHz / 33MHz33MHz))
Mass StorageMass Storage - Parallel IDEParallel IDE- SD CardSD Card- SATA-ISATA-I
AudioAudio High Definition AudioHigh Definition Audio
LANLAN Ethernet 10/100MbpsEthernet 10/100Mbps
USBUSB USB Host 2.0 USB Host 2.0 4 Ports 4 Ports
USB Device 1.1 USB Device 1.1 1 Port 1 Port
Key Specifications of Vortex86DX2
I/O InterfaceI/O Interface - UART x 9 PortsUART x 9 Ports- SPI SPI 2 Ports 2 Ports- II22C C 2 Ports 2 Ports- GPIO GPIO 10 Ports 10 Ports- Parallel Port (SPP/EPP/ECP) Parallel Port (SPP/EPP/ECP) 1 1- PS2 Keyboard/MousePS2 Keyboard/Mouse
Motion/Motor-Motion/Motor-
Control Control
InterfaceInterface
12 Motion-Control Modules, to support12 Motion-Control Modules, to support- Pulse/DIR, CW/CCW, Pulse A/B outputPulse/DIR, CW/CCW, Pulse A/B output- Edge-/Center-aligned PWM outputEdge-/Center-aligned PWM output- Quadrature Encoder InterfaceQuadrature Encoder Interface- SSI Absolute Encoder InterfaceSSI Absolute Encoder Interface- Hall Sensor InterfaceHall Sensor Interface
Supported Operating Systems
Performance Comparison with LX800
DM&P Vortex86DX2 @ 1GHzDM&P Vortex86DX2 @ 1GHz
AMD Geode LX800AMD Geode LX800
performance test by HDBENCH v3.40performance test by HDBENCH v3.40
Design Goals of Vortex86DX2
More Computing PowerMore Computing Power
Higher IntegrationHigher Integration
CPU + FPU + GPU + NB + SB + I/O in a single chipCPU + FPU + GPU + NB + SB + I/O in a single chip
Richer I/ORicher I/O
9 UART ports, Motion/Motor-control interface, …9 UART ports, Motion/Motor-control interface, …
Optimized for Real-Time I/O ApplicationOptimized for Real-Time I/O Application
100MHz 8051 I/O coprocessor100MHz 8051 I/O coprocessor
Optimized I/O & interrupt responding timeOptimized I/O & interrupt responding time
Motion-Control Modulesof
Vortex86DX2
Motion-Control Modules (MCMs)
x86core
PCI
Motion-Control Module 0
Motion-Control Module 1
Motion-Control Module 11
South Bridge
8051core
8051I/O Bus
Vortex86DX2Vortex86DX2
Integrate a total of Integrate a total of 12 motion-control modules (MCMs)12 motion-control modules (MCMs) in South in South Bridge to support at max. Bridge to support at max. 72 pins72 pins for motion/motor control for motion/motor control
servoservo
motormotor
encoderencoder
Motion-Control Modules (MCMs)
Make FullyMake Fully PC-Based PC-Based Platform PossiblePlatform Possible
PC-BasedHMI/Host Controller
PC-BasedMotion-Control
Card
PC-Based Servo Driver
Machine,
AC Motor
Encoder, Home/Limit Switch
Vortex86DX2 as an Open Motion-Control
Platform Reduce System CostReduce System Cost
x86 core & motion-control interface in a single chipx86 core & motion-control interface in a single chip
Easy to Support Mainstream Field-BusEasy to Support Mainstream Field-Bus
EtherCAT, MECHATROLINK, CANopen, …EtherCAT, MECHATROLINK, CANopen, …
Open PC-Based ArchitectureOpen PC-Based Architecture
Wide range of development resources
Ease of migration, integration, and maintenance
Intended Applications
CNC MachineCNC MachineAOI MachineAOI Machine
Motion ControllerMotion Controller
Rubber MachineRubber Machine
RobotRobot
PAC/PLCPAC/PLC
Motor ControllerMotor Controller
Feature Overview of MCMs
4 Modes for Motion Control4 Modes for Motion Control
ModeMode ApplicationApplication
Servo modeStepping motors,
AC servo drivers
Encoder mode Incremental encoders
SSI mode SSI absolute encoders
Capture modeTachometers,
Home/limit switches
Feature Overview of MCMs
2 Modes for Motor Control2 Modes for Motor Control
ModeMode ApplicationApplication
PWM mode
DC motors,
Brushless DC (BLDC) motors,
PMSM motors,
AC Induction motors
Hall sensor mode Hall sensors in BLDC
Feature Overview of MCMs Max. 25MHz, 36-axis Pulse OutputMax. 25MHz, 36-axis Pulse Output
Support Pulse/DIR, CW/CCW, Pulse A/B outputSupport Pulse/DIR, CW/CCW, Pulse A/B output
Max. 25MHz, 24-axis 32-bit Encoder InputMax. 25MHz, 24-axis 32-bit Encoder Input
Support Pulse/DIR, CW/CCW, Pulse A/B inputSupport Pulse/DIR, CW/CCW, Pulse A/B input
Max. 12-axis 3-phase PWM outputMax. 12-axis 3-phase PWM output
Support edge-aligned & center-aligned PWM for Support edge-aligned & center-aligned PWM for
realizing SPWM & SVPWMrealizing SPWM & SVPWM
Key Specificationof
Motion-Control Modules
Servo Mode of MCM
MCM in Servo Mode
Servo AServo APulsePulse
DIRDIR
Servo BServo BCWCW
CCWCCW
Servo CServo CPulse APulse A
Pulse BPulse B
P-commandP-commandservo driverservo driver
steppingsteppingmotormotor
Supported Pulse Waveforms
Pulse/DIRPulse/DIR
CW/CCWCW/CCW
Pulse A/BPulse A/B
Motor Motor
Main Features of Servo Mode
Configurable Pulse ClockConfigurable Pulse Clock
Arbitrary rational clock between 10Hz ~ 25MHzArbitrary rational clock between 10Hz ~ 25MHz
Configurable Interpolation CycleConfigurable Interpolation Cycle
20 nanosecond ~ 100 second20 nanosecond ~ 100 second
Channel SynchronizationChannel Synchronization
Allow to begin and stop 32-axis pulse output Allow to begin and stop 32-axis pulse output
simultaneouslysimultaneously
Main Features of Servo Mode
Output MaskingOutput Masking
Allow to mask pulse output anytime by external I/O pinsAllow to mask pulse output anytime by external I/O pins
Implement emergency stop without software effortImplement emergency stop without software effort
Sufficient Interrupt SourcesSufficient Interrupt Sources
Interpolation cycle interruptInterpolation cycle interrupt
Pulse cycle interruptPulse cycle interrupt
User-defined interrupt eventUser-defined interrupt event
……
Encoder Mode of MCM
MCM in Encoder Mode
Encoder Encoder Interface AInterface A
AA
BB
Encoder Encoder Interface BInterface B
Z (index)Z (index)
AA
BB
Z (index)Z (index)
rotaryrotaryencoderencoder
linearlinearencoderencoder
Main Features of Encoder Mode
Support Pulse/DIR, CW/CCW, Pulse A/B InputSupport Pulse/DIR, CW/CCW, Pulse A/B Input
32-bit position counter, max. 25MHz input32-bit position counter, max. 25MHz input
Configurable Digital Noise FiltersConfigurable Digital Noise Filters
16-bit noise filter to remove 10ns (min.) ~ 655us (max.) 16-bit noise filter to remove 10ns (min.) ~ 655us (max.)
glitches on every input pinglitches on every input pin
Allow synchronous & asynchronous filtering of different Allow synchronous & asynchronous filtering of different
pinspins
Main Features of Encoder Mode
Position Compare FunctionPosition Compare Function
Z Index & External Trigger LatchZ Index & External Trigger Latch
Automatic Input Speed ComputationAutomatic Input Speed Computation
10ns timer resolution10ns timer resolution
Sufficient Interrupt SourcesSufficient Interrupt Sources
Direction-changing interruptDirection-changing interrupt
Z-index interruptZ-index interrupt
……
SSI Mode of MCM
MCM in SSI Mode
SSI Interface ASSI Interface A
SSI CLKSSI CLK
SSI DATASSI DATA
SSI Interface BSSI Interface B
SSI CLKSSI CLK
SSI DATASSI DATA
SSI absolute encoderSSI absolute encoder
Main Features of SSI Mode
Configurable SSI ClockConfigurable SSI Clock
Arbitrary clock between 10Hz ~ 25MHzArbitrary clock between 10Hz ~ 25MHz
Configurable Input ResolutionConfigurable Input Resolution
Support max. 32-bit SSI encoderSupport max. 32-bit SSI encoder
Gray-to-Binary ConversionGray-to-Binary Conversion
Data-Format Error CheckingData-Format Error Checking
Capture Mode of MCM
MCM in Capture Mode
Capture InterfaceCapture Interface
Digital IN 1Digital IN 1
Digital IN 2Digital IN 2
Digital IN 3Digital IN 3
Digital IN 4Digital IN 4
Digital IN 5Digital IN 5
Digital IN 6Digital IN 6
HOME/LIMIT switchHOME/LIMIT switch
TachometerTachometer
Main Features of Capture Mode
Pulse Width MeasurePulse Width Measure
28-bit timer in 10ns resolution28-bit timer in 10ns resolution
Programmable Input TriggerProgrammable Input Trigger
Level triggerLevel trigger
Edge trigger by raising edge, falling edge, or bothEdge trigger by raising edge, falling edge, or both
One-shot trigger mode & continuous trigger modeOne-shot trigger mode & continuous trigger mode
User-defined trigger eventsUser-defined trigger events
Main Features of Capture Mode
Configurable Digital Noise FiltersConfigurable Digital Noise Filters
16-bit noise filter on every input pin16-bit noise filter on every input pin
Synchronous & asynchronous filtering of different pinsSynchronous & asynchronous filtering of different pins
Sufficient Interrupt SourcesSufficient Interrupt Sources
Capture event interruptCapture event interrupt
Trigger interruptTrigger interrupt
……
PWM Mode of MCM
MCM in PWM Mode
3-Phase 3-Phase Complementary Complementary PWM InterfacePWM Interface
PWM U+PWM U+
PWM UPWM U
PWM W+PWM W+
PWM WPWM W
PWM V+PWM V+
PWM VPWM V
Supported PWM Waveforms
Edge-Aligned PWMEdge-Aligned PWM
Center-Aligned PWMCenter-Aligned PWM
PWM U+
PWM V+
PWM W+
PWM U+
PWM V+
PWM W+
Main Features of PWM Mode
High-Resolution PWMHigh-Resolution PWM
32-bit PWM duty & period in 10ns resolution32-bit PWM duty & period in 10ns resolution
Configurable Sampling CycleConfigurable Sampling Cycle
1 PWM period ~ 21 PWM period ~ 22929 PWM periods PWM periods
Deadband InsertionDeadband Insertion
Allow to insert 10ns (min.) ~ 160ms (max.) deadbandAllow to insert 10ns (min.) ~ 160ms (max.) deadband
deadbanddeadband deadbanddeadband
PWM+
PWM
Main Features of PWM Mode
Programmable Fault Output MaskProgrammable Fault Output Mask
Mask PWM output in real-time by external fault signalsMask PWM output in real-time by external fault signals
Allow different fault output for different fault signalsAllow different fault output for different fault signals
Original Center-Aligned
PWM output
Masked PWM output
Fault Signal
fault outputfault output
Main Features of PWM Mode
Sufficient Interrupt SourcesSufficient Interrupt Sources
PWM interruptPWM interrupt
Sampling cycle interruptSampling cycle interrupt
User-defined interrupt eventUser-defined interrupt event
……
Hall Sensor Mode of MCM
MCM in Hall Sensor Mode
Hall Interface AHall Interface A
Hall AHall A
Hall BHall B
Hall Interface BHall Interface B
Hall CHall C
Hall AHall A
Hall BHall B
Hall CHall C
NN
SS
Hall A
Hall BHall CHall A
Hall B
Hall C
NN
SS
Hall A
Hall BHall CHall A
Hall B
Hall C
Main Features of Hall Sensor Mode
Dedicated to BLDC Motor ControlDedicated to BLDC Motor Control
Programmable Commutation PatternProgrammable Commutation Pattern
Commutation Error CheckingCommutation Error Checking
Sufficient Interrupt SourcesSufficient Interrupt Sources
Commutation interruptCommutation interrupt
Input error interruptInput error interrupt
……
8051 I/O Coprocessorof
Vortex86DX2
8051 Coprocessor
An Integrated 8051 as I/O CoprocessorAn Integrated 8051 as I/O Coprocessor
Share all MCMs with x86 coreShare all MCMs with x86 core
Serve as PLC or any low-speed I/O auxiliary devicesServe as PLC or any low-speed I/O auxiliary devices
x86core
internalPCI bus
8051core
internal8051
I/O bus
12MCMs
internal PCI bus
or internal
UART port
Key Specifications of Coprocessor
CPUCPU100MHz100MHz
1T 8051 Core1T 8051 Core
Program & Program &
External Data External Data
MemoryMemory32KB SRAM32KB SRAM
I/O Interface I/O Interface
(Exclusive)(Exclusive)
- High-Speed UART High-Speed UART 2 Ports 2 Ports
up to 6Mbps, one port connected to up to 6Mbps, one port connected to x86x86 core core- GPIO GPIO 9 Ports 9 Ports
I/O Interface I/O Interface
(Shared with (Shared with x86x86
Core)Core)
- Motion-Control Modules Motion-Control Modules 12 12- SPI SPI 2 Ports 2 Ports
for DAC, ADC accessfor DAC, ADC access
ISA Bus Features of
Vortex86DX2 for Motion Control
ISA GPCS
2 General-Purpose Chip Selectors (2 General-Purpose Chip Selectors (GPCSGPCS))
Allow both I/O mapping and memory mappingAllow both I/O mapping and memory mapping
2 ~ 64K I/O-space addressing2 ~ 64K I/O-space addressing
512 ~ 4G memory-space addressing512 ~ 4G memory-space addressing
Low Cost Solution to Add Digital I/O PointsLow Cost Solution to Add Digital I/O Points
Extend massive I/O ports using a few standard logic Extend massive I/O ports using a few standard logic
gates or CPLDgates or CPLD
ISA GPCSExtend input ports with 74HC138 & 74HC244Extend input ports with 74HC138 & 74HC244
Extend output ports with 74HC138 & 74HC374Extend output ports with 74HC138 & 74HC374
ISA Dual-Port SRAM
Built-in 4KB Dual-Port SRAMBuilt-in 4KB Dual-Port SRAM
Can be shared by two Vortex86DX2 via ISA busCan be shared by two Vortex86DX2 via ISA bus
Low Cost Solution for Dual Low Cost Solution for Dual x86x86 CPU CPU
CooperationCooperation
Connect directly via ISA BusConnect directly via ISA Bus
No need extra circuitNo need extra circuit
Each Each x86x86 serves as either HMI or motion processor, serves as either HMI or motion processor,
which makes easy to build a fault-tolerant systemwhich makes easy to build a fault-tolerant system
ISA Dual-Port SRAMVortex86DX2 A Vortex86DX2 B
ISA BusISA Bus
4KB SRAM4KB SRAM
Vortex86DX2Motion Evaluation Board
Overview of Motion EVBVortex86DX2 Motion EVBVortex86DX2 Motion EVB
Vortex86DX2 SOM-304 Vortex86DX2 SOM-304 CPU ModuleCPU Module
Motion Daughter BoardMotion Daughter Board Motion Connector BoardMotion Connector Board
Overview of Motion EVBVGAVGA LANLAN USBUSB PCI-EPCI-E PS/2 Keyboard/MousePS/2 Keyboard/Mouse
SATASATA
PC/104PC/104ISA BusISA Bus
LCDLCD
II22CC
DC-to-DC DC-to-DC Power ModulesPower Modules
24V ~ 48V DC Input24V ~ 48V DC Input
9-Axis Isolated 9-Axis Isolated Motion I/O:Motion I/O:
PulsePulseEncoderEncoder
Home/LimitHome/LimitAlarm RSTAlarm RST
DACDAC……
ADCADC
Overview of Motion EVB
Combined with the Combined with the Connector Board by Connector Board by StackingStacking
Connected with the Connected with the Connector Board via Connector Board via
SCSI CablesSCSI Cables
Vortex86DX2 SOM-304 CPU Module
A core module with Vortex86DX2 CPU, A core module with Vortex86DX2 CPU,
512MB~1GB DRAM, and massive I/O for 512MB~1GB DRAM, and massive I/O for
the following benefits:the following benefits:
• Simplify & speed-up design taskSimplify & speed-up design task
• Save design costSave design cost
• Reduce design riskReduce design risk
• Easy to do maintenanceEasy to do maintenance
Vortex86DX2 SOM-304 CPU Module
Motion I/O of Motion EVB
9-Axis9-Axis Connector BoardConnector Board
Single-Axis Pin Single-Axis Pin
Allocation:Allocation:
Linear Driver Output PinsLinear Driver Output Pins
Pulse A+Pulse A+
Pulse APulse A Pulse B+Pulse B+
Pulse BPulse B
Linear Driver Input PinsLinear Driver Input Pins
Encoder A+Encoder A+
Encoder AEncoder A Encoder B+Encoder B+
Encoder BEncoder B Encoder Z+Encoder Z+
Encoder ZEncoder Z
Optical Isolated Output PinsOptical Isolated Output Pins
Servo ONServo ON
Alarm RSTAlarm RST
Optical Isolated Input PinsOptical Isolated Input Pins
HomeHome
Limit+Limit+
LimitLimit AlarmAlarm
Servo RDYServo RDY
Analog Output PinAnalog Output Pin
DACDAC
On-Board D/A & A/D Interface
D/A ConverterD/A Converter
8-channel D/A implemented by two AD5754 chips8-channel D/A implemented by two AD5754 chips
16-bit resolution, 16-bit resolution, 10V output10V output
A/D ConverterA/D Converter
8-channel A/D implemented by a AD7606 chip8-channel A/D implemented by a AD7606 chip
16-bit resolution, 16-bit resolution, 10V input10V input
Isolated Analog PowerIsolated Analog Power
System Reference Designs
Open-Source Reference DesignsOpen-Source Reference Designs
Sample motion controller (with G-code interpretation)Sample motion controller (with G-code interpretation)
BLDC motor driverBLDC motor driver
IM spindle VFDIM spindle VFD
…………
Open-Source ToolkitOpen-Source Toolkit
Dedicated LinuxCNC (EMC2) HALDedicated LinuxCNC (EMC2) HAL
Conclusions
Low-Cost Configurations
Vortex86DX2
HMI + Motion Control + Motor Control
IGBT Motor
Encoder
PWM
Pulse A/B, Index
Vortex86DX2
HMI + Motion Control
Motor
Encoder
P-cmdServo Driver
Pulse/DIRCW/CCWPulse A/B
Pulse A/B, Index
x86x86 & motion interface integrated in a Vortex86DX2 SoC m & motion interface integrated in a Vortex86DX2 SoC m
ake ake low-costlow-cost motion control platforms possible motion control platforms possible
Mid-End Configuration
Dual Vortex86DX2 constitute a Dual Vortex86DX2 constitute a homogeneoushomogeneous, , fault-tolerantfault-tolerant, ,
and and higher-performancehigher-performance motion control system motion control system
Vortex86DX2
HMI
Motor
Encoder
Servo Driver
ISA Bus
Pulse/DIRCW/CCWPulse A/B
EtherCAT Mechatrolink
…
Vortex86DX2
Real-TimeMotion Controller
Pulse A/B, Index
High-End Configuration
Vortex86DX2’sVortex86DX2’s computing power also enables realizationcomputing power also enables realization of high-high-
speedspeed soft-motionsoft-motion controllers for integration into high-end systems controllers for integration into high-end systems
Intel/AMD
multi-core
x86/x64
High-End HMIwith
3D Graphics
Vortex86DX2
Real-TimeMotion Controller
PCI/PCI-EBridge
Motor
Encoder
Servo Driver
Pulse/DIRCW/CCWPulse A/B
EtherCAT Mechatrolink
…
Pulse A/B, Index
Video DEMO
Motion & BLDC Experiments on Vortex86DX2 EVBMotion & BLDC Experiments on Vortex86DX2 EVB
Thank You!
DMP Electronics Inc.
Q&A