The Fei Koala Architecture - Welcome to...

23
The Fei Koala Architecture The Fei Koala Architecture & why we hope it is future proof & why we hope it is future proof

Transcript of The Fei Koala Architecture - Welcome to...

Page 1: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

The Fei Koala ArchitectureThe Fei Koala Architecture

& why we hope it is future proof& why we hope it is future proof

Page 2: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber2

ContentsContents

!! Introduction to FeiIntroduction to Fei 5 min5 min!! Why Why ‘‘future proof architecturefuture proof architecture’’?? 5 min5 min!! Architecture modelArchitecture model 10 min10 min!! Fei Koala ArchitectureFei Koala Architecture 10 min10 min!! ConclusionsConclusions 5 min5 min

Page 3: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber3

Introduction to FeiIntroduction to Fei

HistoryHistory!! 1949: Philips Electron Optics sold first commercial TEM1949: Philips Electron Optics sold first commercial TEM!! 1971: Fei (Field Electrons & Ions) is founded1971: Fei (Field Electrons & Ions) is founded!! 1997: Fei and PEO merge1997: Fei and PEO merge

Operations in Operations in !! Hillsboro (Oregon) Hillsboro (Oregon) –– Main OfficeMain Office!! Peabody (Massachusetts)Peabody (Massachusetts)!! Eindhoven Eindhoven (Netherlands)(Netherlands)!! BrnoBrno (Czech Republic)(Czech Republic)

About 1600 employees worldwide, About 1600 employees worldwide, nasdaqnasdaq FEIC ($26.51 on 28FEIC ($26.51 on 28--11--2004)2004)

Page 4: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber4

Fei ProductsFei Products

Fei ProductsFei Products!! Transmission Electron Microscope (TEM)Transmission Electron Microscope (TEM)!! Scanning Electron Microscope (SEM)Scanning Electron Microscope (SEM)!! Focussed Focussed Ion Beam (FIB)Ion Beam (FIB)!! Dual Beam (DB = SEM + FIB)Dual Beam (DB = SEM + FIB)

Page 5: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber5

ContentsContents

!! Introduction to FeiIntroduction to Fei 5 min5 min!! Why Why ‘‘future proof architecturefuture proof architecture’’?? 5 min5 min!! Architecture modelArchitecture model 10 min10 min!! Fei Koala ArchitectureFei Koala Architecture 10 min10 min!! ConclusionsConclusions 5 min5 min

Page 6: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber6

What is architecture?What is architecture?

!! Standardized interfaces between modulesStandardized interfaces between modules

Examples:Examples:!! Standardized dimensions (e.g. for plumbing pipes & joints or Standardized dimensions (e.g. for plumbing pipes & joints or

screws & bolts)screws & bolts)!! Standardized pinStandardized pin--out & voltages for connectors (e.g. out & voltages for connectors (e.g.

telephone and mains power)telephone and mains power)!! Standardized software interfaces (e.g. http, COM)Standardized software interfaces (e.g. http, COM)

Page 7: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber7

Why architecture?Why architecture?

!! Share infrastructureShare infrastructure!! Independent development of modules (by many Independent development of modules (by many

people)people)!! Reuse of modulesReuse of modules

→→ Reduce costReduce cost

Page 8: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber8

Why not architecture?Why not architecture?

!! Expensive to designExpensive to design!! Limitations (things that cannot be done)Limitations (things that cannot be done)!! Education of peopleEducation of people!! Modules may be more expensive / complex because they Modules may be more expensive / complex because they

must match the architecturemust match the architecture

Page 9: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber9

Why future proof?Why future proof?

!! To avoid designing a new architectureTo avoid designing a new architecture»» Which costs a lot of timeWhich costs a lot of time»» Which makes existing modules & tools obsoleteWhich makes existing modules & tools obsolete»» Which makes existing education obsoleteWhich makes existing education obsolete

Page 10: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber10

Why new architecture?Why new architecture?

!! Desire for better performanceDesire for better performance!! Obsolete parts, knowledge, toolsObsolete parts, knowledge, tools!! Price reductionPrice reduction!! Get rid of topGet rid of top--heavy old architecture heavy old architecture

(due to add(due to add--ons over time)ons over time)

Page 11: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber11

LongLong--lived architectureslived architectures

17951795 France adopted the metric system (again France adopted the metric system (again in 1840)in 1840)

18041804 Steam locomotive (standardized tracks)Steam locomotive (standardized tracks)18761876 TelephoneTelephone18821882 Electricity (EdisonElectricity (Edison’’s first power station)s first power station)19691969 TCP/IPTCP/IP

Page 12: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber12

Why longWhy long--lived?lived?

!! Prohibitively expensive to replaceProhibitively expensive to replace!! Good design (gradual improvements possible)Good design (gradual improvements possible)

Page 13: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber13

ContentsContents

!! Introduction to FeiIntroduction to Fei 5 min5 min!! Why Why ‘‘future proof architecturefuture proof architecture’’?? 5 min5 min!! Architecture modelArchitecture model 10 min10 min!! Fei Koala ArchitectureFei Koala Architecture 10 min10 min!! ConclusionsConclusions 5 min5 min

Page 14: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber14

UI

App.

Srv

r.M

icro

scop

e Se

rver

Hardware Interconnectionlayer (high bandwidth andtime critical connections)

HardwareInterlocks layer

Electronics layer(hardware)

Firmware layer(safety, performance)

Model layer(standalone, nointerconnections)

Safety layer(interlocks)

Synchronization layer(non-optionalinterconnections between models)

Client layer

Application layer(translate between machineand user states)

Automation layer(Optional behavior)

Vacuumfirmware(PUC)

e-Sourcefirmware(2xPUC)

Aquisitionfirmware(DSP)

Scanfirmware(DSP?)

Motionfirmware(Nyquist)

Vacuummodel

e-Sourcemodel

Opticsmodel

Aquisitionmodel

Scanmodel

Detectormodel

Motionmodel

Source off ifvacuum not

OK

Source andOptics usesame HV

value

Spot sizechangesdetector

gain

AutoContrast &Brightness

Detectorpresets

Vacuumelectronics(VIU, MUC)

e-Sourceelectronics

(HTSU,FGSU)

Opticselectronics

Aquisitionelectronics

(Viper Quador ISAS)

Scanelectronics(DSPB or

ISAS)

Detectorelectronics

Motionelectronics

(STAB)

UserInterfaces

ApplicationUI's Third parties

Video

Position withstage and

optics

Pause CCDwhen BSDselected

Add'commercial'

states

Load Lock(Load,

Unload)

Blank beamduring long

stage moves

Automaticallydegauss

optics

Stagecollision

prevention

Move stagedown on vent

UserSessions

UserPreferencesand presets

Active Quad

Raw

Beh

avio

r

Aut

omat

ion

App

licat

ion

Beh

avio

r

Har

dwar

e

Scan

vacuuminterlock

vacuuminterlock

Simplifymachinestates

Detectors offif vacuum

not OK

Scan andacquisitionuse samesettings

Grouping of system behavior into logical layers. An actual implementation will have less layers than shown here, combining several layers into one.Interconnections within a single layer are forbidden: if two modules need to share data this must be done in a higher layer, and at least at the level of theSafety layer (for software) or in one of the two lowest layers (for electronics). On the left you can see a coarse behavior split between Raw (hardwarespecific) and Application (market specific) behavior, and how the xT Nova functionality it is split over the Microscope Server, Application Server and UI(there is still too much functionality in the Microscope Server). Note that only a few of the actual modules and interconnections are shown.

Pybe Faber 28-1-2004

LayersLayers

Page 15: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber15

ContentsContents

!! Introduction to FeiIntroduction to Fei 5 min5 min!! Why Why ‘‘future proof architecturefuture proof architecture’’?? 5 min5 min!! Architecture modelArchitecture model 10 min10 min!! Fei Koala ArchitectureFei Koala Architecture 10 min10 min!! ConclusionsConclusions 5 min5 min

Page 16: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber16

Fei Architecture HistoryFei Architecture History

!! ±±19851985 xLxL: first mouse: first mouse--controlled SEM, P80 controlled SEM, P80 electronicselectronics

!! ±±19951995 xPxP: 32 bit (mainly: 32 bit (mainly xLxL electronics)electronics)!! 19981998 TecnaiTecnai: first mouse: first mouse--controlled TEM, COM, controlled TEM, COM,

P80 electronicsP80 electronics!! 20012001 Quanta: new electronics, CAN bus, Quanta: new electronics, CAN bus,

modularized server software, digital videomodularized server software, digital video!! 20032003 Nova&Quanta3D: application server, topNova&Quanta3D: application server, top--

down software interconnectionsdown software interconnections

Page 17: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber17

Hardware interfacesHardware interfaces

Microscope consoleElectronics consoles Microscope Computer100 Mb ethernet

VacuumInterface

Unit(VIU)

HTSUEOptics Detectors(IQI)

DigitalScan andPatterning

Acquisition(ViperQuad)

198.211.143.93CCB 14

P80

Analog Scan signals

Analog Detector outputs

HUB

SystemServices(SSIB)

198.211.143.82Motion

controller(Nyquist)

STageAmplifier

Board(STAB)

Powersupplies

TestLine(OPTD)

OpticsScan

(OPSS)

Support PCSecondEthernet Adapter

198.211.143.65Ethernet Adapter

FGSU IGPsupplies

sta

GIS

CAN

IOptics(EOCU)HVPS

DigitalScan andPatterning

Analog Scan signals

Page 18: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber18

Software interfacesSoftware interfaces

!! (D)COM interface between instrument server, application (D)COM interface between instrument server, application server and UI.server and UI.

!! Object Model: structured way to organize the interface, Object Model: structured way to organize the interface, target is to have a single OM for all Fei products (will take target is to have a single OM for all Fei products (will take a few years stilla few years still……).).

!! Visio tool to graphically display connections between Visio tool to graphically display connections between ‘‘bricksbricks’’ (software modules) (software modules) –– see next slide.see next slide.

Page 19: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber19

BricksBricksXT Smart Architecture Diagram

Refresh Nodes

filename.exe

3Positioning Algorithm

1Connector Template

2Node Template

-Entity

Remove All Connections

Drawing Control Panel

c:\TecnaiSimpleMap.txt

Source FileDim All Connections

Clear DiagamRefresh All

(duration ~1 minute!)

1Data Source

Node Template :1 = "explorer style"2 = Square blob style

Connector Template :1 = Straight line

Positioning Algorithm :1 = Explorer small icon style2 = Levels based on Tecnai

dependancy file3 = brick prefix

Nodes can be moved and the diagram will beupdated. Right click on nodes to highlight and dimindividual nodes.Save Position Nodes Restore Position Nodes C:\tools\visio\Solo3n.txt

Position File

1BhvAdapter

1

BhvAreaOfInterestFinding

1

BhvAutofunctions

1

BhvBeamCorrections

1BhvConditions

1BhvDatasource

1

BhvImageFormation

1

BhvImageMemento

1BhvMaintenance

1

BhvMaintenance2

1

BhvNormalization

1BhvPatterning

1BhvPredict

1BhvSafety

1BhvSimEBeam

1BhvSimIBeam

1

BhvSpecimenExchange

1

BhvStateManager

1BhvVacuum

1HalCcb14

1HalDriver

1HalFIBGun

1HalGunFEG

1HalGunHT

1

HalHwdRegulator1

HalImaging

1

HalMagnumFIBOptics

1

HalMagnumFIBRegulator 1

halmotion

1halmotionAVA

1HalMux

1HalRack

1HalRegulator

1HalSsib

1HalSta

1HalVacuum

1HlfAlignments

1HlfMemento

1HlfSDB

1

HlfUserDataServer

1

MdlCurrentSense

1MdlFibgunBrick

1MdlGunFegBrick

1MdlImaging1

MdlLogicalDetectors

1

MdlMagnumFIBOptics

1MdlMotion

1MdlOpticsBrick

1

MdlPhysicalDetectors

1MdlPositioning

1MdlService

1

MdlSingleAvaBrick

1Mdlvacruleset

1Mdlvacuum

1ObjectModel

1OMDataSources

1OMDetectors

1OMEBeam

1OMIBeam

1OMInstrument

1OMPatterning

1OMPositioning

1OMService

1

OMSpecimenCurrentMeter

1OMVacuum

1TadRegulators

Page 20: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber20

ContentsContents

!! Introduction to FeiIntroduction to Fei 5 min5 min!! Why Why ‘‘future proof architecturefuture proof architecture’’?? 5 min5 min!! Architecture modelArchitecture model 10 min10 min!! Fei Koala ArchitectureFei Koala Architecture 10 min10 min!! ConclusionsConclusions 5 min5 min

Page 21: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber21

Hardware TrendsHardware Trends

!! Bare PC, only standard network connections Bare PC, only standard network connections ((ethernetethernet, possibly also USB2, , possibly also USB2, firewirefirewire or CAN).or CAN).

!! Standalone modules with standardized power and Standalone modules with standardized power and network connections (network connections (ethernetethernet or CAN).or CAN).

!! Second (Second (‘‘supportsupport’’) PC for 3) PC for 3rdrd party applications, party applications, postpost--processing, data storage (keeping the server processing, data storage (keeping the server PC load predictable).PC load predictable).

Page 22: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber22

Software TrendsSoftware Trends

!! More modular software, in a more hierarchical structure, More modular software, in a more hierarchical structure, distributed over more than one PC. distributed over more than one PC.

!! As a result: focus on standardized software interfaces, with abiAs a result: focus on standardized software interfaces, with ability lity of of ‘‘remotingremoting’’ (network connections).(network connections).

!! Databases for result storage (data from Fei systems, but also Databases for result storage (data from Fei systems, but also from 3from 3rdrd party equipment).party equipment).

!! Tighter integration of 3Tighter integration of 3rdrd party equipment, needed to party equipment, needed to automate complex tasks (focus on automate complex tasks (focus on ‘‘solutionssolutions’’ rather rather than than ‘‘toolstools’’).).

!! Moving to C# / .NET for application software (highest level).Moving to C# / .NET for application software (highest level).

Page 23: The Fei Koala Architecture - Welcome to TNO-ESIredesign.esi.nl/.../sasg/sasg20Pybe_The_Fei_Koala_Architecture04.pdf · The Fei Koala Architecture ... Introduction to Fei 5 min! Why

2004-1-6 Pybe Faber23

Lessons from Lessons from FeiFei’’ss pastpast

!! Complex parts are longComplex parts are long--lived: the knowledge to lived: the knowledge to design them is gone.design them is gone.

!! HighHigh--risk parts are longrisk parts are long--lived: a new design may lived: a new design may introduce big problems.introduce big problems.

!! Embedded software is hardest to maintain.Embedded software is hardest to maintain.!! A new architecture MUST be linked to a product.A new architecture MUST be linked to a product.!! Lean design: only standardize what is neededLean design: only standardize what is needed!! DonDon’’t add bells & whistles, provide t add bells & whistles, provide ‘‘convenienceconvenience’’ as as

standstand--alone tools, not as part of the architecturealone tools, not as part of the architecture