microsoft and device bay dan shapiro program manager microsoft corporation
DESCRIPTION
Microsoft And Device Bay Dan Shapiro Program Manager Microsoft Corporation. Getting Started With Device Bay. Grant Ley, TI, Chuck Stancil, Compaq, and Krunali Patel, TI “USB Device Bay Controller Requirements” Jeff Wolford, Compaq - PowerPoint PPT PresentationTRANSCRIPT
Microsoft And Device BayMicrosoft And Device Bay
Dan ShapiroDan ShapiroProgram ManagerProgram ManagerMicrosoft CorporationMicrosoft Corporation
Getting Started Getting Started With Device BayWith Device Bay Grant Ley,Grant Ley, TI, TI, Chuck Stancil,Chuck Stancil,
Compaq, and Compaq, and Krunali Patel,Krunali Patel, TI TI ““USB Device Bay USB Device Bay
Controller Requirements”Controller Requirements”
Jeff Wolford,Jeff Wolford, Compaq Compaq ““Building the First Device Bay Building the First Device Bay
Platforms and Devices” Platforms and Devices”
USB Device Bay Controller:USB Device Bay Controller:Implementation, Software, Implementation, Software, And Power ConsiderationsAnd Power Considerations
Grant Ley, Texas InstrumentsGrant Ley, Texas InstrumentsChuck Stancil, Compaq Chuck Stancil, Compaq Krunali Patel, Texas InstrumentsKrunali Patel, Texas Instruments
DeviceDevice
Expansion/remoteExpansion/remotebay systembay system
BayBayDesktop Desktop systemsystem
Bay managementBay management1394 data path1394 data pathUSB data pathUSB data path
Mobile Mobile systemsystem
PowerPower
The Device Bay ConceptThe Device Bay Concept
Device Bay SpecificationDevice Bay Specification
Open industry specification jointly Open industry specification jointly developed by Compaq, Intel, and Microsoftdeveloped by Compaq, Intel, and Microsoft www.device-bay.orgwww.device-bay.org Private questions: [email protected] questions: [email protected] Public: send “subscribe device_bay” to Public: send “subscribe device_bay” to
[email protected]@europa.com
Supports a wide variety of devicesSupports a wide variety of devices Mass storage (HDD, DVD/CD-ROM, tape, etc.)Mass storage (HDD, DVD/CD-ROM, tape, etc.) Communications and connectivity Communications and connectivity
(modem, LAN)(modem, LAN) Audio and security via USBAudio and security via USB
Device Bay ControllerDevice Bay Controller
For specification of the DBC, For specification of the DBC, see Section 6 of the Device Bay Specsee Section 6 of the Device Bay Spec
DBC manages all baysDBC manages all bays Maintains bay status Maintains bay status Detects device insertion/removalDetects device insertion/removal Enables Vid (enumeration power) Enables Vid (enumeration power)
to the deviceto the device Detects user removal requests via Detects user removal requests via
optional bay mounted push buttonoptional bay mounted push button
Device Bay Device Bay Connector SignalsConnector Signals Presence detectPresence detect
USBPRSN#, 1394PRSN#USBPRSN#, 1394PRSN# Pulled to ground to indicate interface Pulled to ground to indicate interface
type (USB or 1394 or both)type (USB or 1394 or both)
USB data signalsUSB data signals 1394 data signals1394 data signals
DBC Signals To The BayDBC Signals To The Bay
Required:Required: Lock enableLock enable ID power (Vid) enableID power (Vid) enable
Optional:Optional: Removal requestRemoval request Security lock statusSecurity lock status Bay status indicatorBay status indicator
USB rootUSB root controllercontroller
1394 link1394 linkcontrollercontroller
Walk-up portWalk-up port
1394 PHY1394 PHY
Device Bay Device Bay controllercontroller
Device Bay 0Device Bay 0Device Bay 1Device Bay 1Device Bay 2Device Bay 2Device Bay 3Device Bay 3
PHY/LinkPHY/Link interfaceinterface
PCIPCI
ACPIACPI
ACPI DBC ImplementationACPI DBC Implementation
ACPI DBC ImplementationACPI DBC Implementation
ACPI name space and ACPI name space and control methods describe control methods describe the DBC implementationthe DBC implementation
Can reside on a bus like PCI, Can reside on a bus like PCI, II22C, SMBusC, SMBus
No physical connection between No physical connection between DBC and PHYDBC and PHY
DBC data structures implemented DBC data structures implemented as a register setas a register set
USB DBC ImplementationUSB DBC Implementation
DBC implemented as a USB functionDBC implemented as a USB function Connected to the USB hubConnected to the USB hub
Can be integrated into the hub as an Can be integrated into the hub as an embedded functionembedded function
MustMust have simple Link controller have simple Link controller to communicate with a 1394 PHY to communicate with a 1394 PHY
Walk-up ports can be connected to Walk-up ports can be connected to the same USB hub or 1394 PHY that the same USB hub or 1394 PHY that is connected to the baysis connected to the bays
USB DBC ImplementationUSB DBC Implementation
DBC is a self-powered or DBC is a self-powered or bus-powered USB devicebus-powered USB device
DBC communicates with system DBC communicates with system via USB control and interrupt via USB control and interrupt endpoints (pipes)endpoints (pipes)
DBC descriptors contain info about DBC descriptors contain info about Bay controlBay control Bay statusBay status DBC capabilitiesDBC capabilities
DBC descriptors accessed using DBC descriptors accessed using USB DBC class-specific requests USB DBC class-specific requests
USB rootUSB root controllercontroller
1394 link1394 linkcontrollercontroller
Walk-up portWalk-up port
USB hubUSB hub controllercontroller 1394 PHY1394 PHY
Device Bay Device Bay controllercontroller
Device Bay 0Device Bay 0Device Bay 1Device Bay 1Device Bay 2Device Bay 2Device Bay 3Device Bay 3
PHY/LinkPHY/Link interfaceinterface
PCIPCI
1394 PHY1394 PHY
USB DBC ImplementationUSB DBC Implementation
Device Bay standardDevice Bay standard
DeviceDevice
BayBayControllerController
DeviceDevice
Power Power supplysupply
1394 1394 PHYPHY
Sys
tem
Bu
sS
yste
m B
us
USB USB Host Host CtrlCtrl
1394 1394 Host Host CtrlCtrl
CPUCPU Mgmt. Mgmt. S/WS/W
Mech Form Mech Form Factor(s)Factor(s)
ConnectorConnector
Interface signalsInterface signals * * USB DataUSB Data * * 1394 Data1394 Data * * Bay ManagementBay Management
* * PowerPower
Management Management commands and commands and
proceduresprocedures
CommunicationsCommunications methodsmethods
* USB Class Device* USB Class Device
Computer systemComputer system
BayBay
BayBayPhy/Link Phy/Link I/FI/F
1394 1394 PHYPHY
USB USB HUBHUB
Phy/Link Phy/Link I/FI/F
“ “Riser card” in desktop chassisRiser card” in desktop chassis “ “Remote” expansion chassisRemote” expansion chassis Monitor with Device Bay capabilityMonitor with Device Bay capability “ “Docking Station” for mobile platformsDocking Station” for mobile platforms
USB-Based DBC SystemUSB-Based DBC System
Remote ConsiderationsRemote Considerations
Bus or hybrid powered USB hubBus or hybrid powered USB hub Minimum of two 1394 walk-up portsMinimum of two 1394 walk-up ports
Three recommended to Three recommended to support spanningsupport spanning
Supply 1394 bus powerSupply 1394 bus power Recommend minimum of 15W at 20VRecommend minimum of 15W at 20V
Support DB32 devicesSupport DB32 devices Requires 12V supportRequires 12V support
Remote Device Bay SystemRemote Device Bay System
RemoteRemoteDBCDBC
PowerPowerSupplySupply
13941394OHCIOHCI
USBUSBOHCI/UHCIOHCI/UHCI
MonitorMonitor
Windows Windows
DBCDBCClassClassDriverDriver
1394 Walkup Port 01394 Walkup Port 01394 Walkup Port 11394 Walkup Port 1
USB Walkup Port 0USB Walkup Port 0USB Walkup Port 1USB Walkup Port 1
Bay 0Bay 0 Bay 1Bay 1
HDDHDD DVDDVD USBUSBSpeakerSpeaker
Software stack:Software stack: 1394 Bus Driver1394 Bus Driver OHCI Port DriverOHCI Port Driver SBP2 Port DriverSBP2 Port Driver USB Bus DriverUSB Bus Driver USB OHCI Port DriverUSB OHCI Port Driver USB Audio Class DriverUSB Audio Class Driver USB DBC Class DriverUSB DBC Class Driver
Host PCHost PC Remote Device BayRemote Device Bay
The Software PiecesThe Software Pieces
Universal Serial Bus Driver (USBD)Universal Serial Bus Driver (USBD) USB OHCI/UHCI port driverUSB OHCI/UHCI port driver 1394 bus driver1394 bus driver 1394 OHCI port driver 1394 OHCI port driver
The DBC Link ControllerThe DBC Link Controller
Supports a 400 Mbps Supports a 400 Mbps PHY/link interface PHY/link interface Strongly recommend P1394a complianceStrongly recommend P1394a compliance
Software access to PHY registers Software access to PHY registers compliant with method defined by compliant with method defined by 1394 OHCI Release 1.01394 OHCI Release 1.0
Asynchronous transaction capableAsynchronous transaction capable Minimal CSR and Config ROM spaceMinimal CSR and Config ROM space
General ROM format requiredGeneral ROM format required
The DBC Link ControllerThe DBC Link Controller
Isochronous resource manager, cycle Isochronous resource manager, cycle master, and bus manager capability master, and bus manager capability not requirednot required
Maximum payload size is 1 quadletMaximum payload size is 1 quadlet
USB DBC Class SpecificationUSB DBC Class Specification
Defines the USB communication Defines the USB communication channel used by the DBC to channel used by the DBC to communicate with the hostcommunicate with the host Standard device descriptorStandard device descriptor Standard configuration descriptor Standard configuration descriptor Standard endpoint descriptorsStandard endpoint descriptors
ControlControl InterruptInterrupt
USB port power managementUSB port power management
USB DBC Class SpecificationUSB DBC Class Specification
Device descriptorsDevice descriptors Class-specific device descriptorsClass-specific device descriptors
Subsystem descriptorSubsystem descriptor Bay descriptorsBay descriptors
Standard device descriptorStandard device descriptor
USB DBC Class SpecificationUSB DBC Class Specification
USB requestsUSB requests Standard requestsStandard requests Class-specific requestsClass-specific requests
GetBayStatusGetBayStatus Get/SetPHYCommunicationRegisterGet/SetPHYCommunicationRegister
Optional vendor-specific requestsOptional vendor-specific requests For example, asset trackingFor example, asset tracking
Set/ClearFeature requestsSet/ClearFeature requests
See www.microsoft.com/hwdev for See www.microsoft.com/hwdev for white paper about USB DBC Specwhite paper about USB DBC Spec
Design ConsiderationsDesign Considerations
Bay state machineBay state machine The LOCK_CTL and The LOCK_CTL and
PWR_CTL relationshipPWR_CTL relationship Initializing “read-only” fieldsInitializing “read-only” fields Driving the bay status indicatorDriving the bay status indicator
Bay State Machine DesignBay State Machine Design
Behavior after reset with Behavior after reset with a device present a device present The state transition Bay Empty The state transition Bay Empty Device Device
Inserted (or any other state) requires Inserted (or any other state) requires software interventionsoftware intervention
DEVSTSCHG can either be set or cleared; DEVSTSCHG can either be set or cleared; if set system BIOS should clear it!if set system BIOS should clear it!
Bay State Machine DesignBay State Machine Design
Software state transitionsSoftware state transitions All software state transition requests All software state transition requests
(via BAY_STREQ field in BCERx) must (via BAY_STREQ field in BCERx) must be qualified with device presence by be qualified with device presence by the hardware!the hardware!
Software state transitions occur at the Software state transitions occur at the time of the write to the BAY_STREQ field time of the write to the BAY_STREQ field (i.e., there is no queuing!); however, DBC (i.e., there is no queuing!); however, DBC hardware will always retain the last non-hardware will always retain the last non-zero value written to BAY_STREQzero value written to BAY_STREQ
LOCK_CTL And LOCK_CTL And PWR_CTL RelationshipPWR_CTL Relationship Normal sequence of these two bitsNormal sequence of these two bits::
1. After device is inserted S/W 1. After device is inserted S/W sets LOCK_CTLsets LOCK_CTL
2. S/W sets PWR_CTL2. S/W sets PWR_CTL
3. When device is to be removed S/W 3. When device is to be removed S/W clears PWR_CTLclears PWR_CTL
4. S/W clears LOCK_CTL4. S/W clears LOCK_CTL DBC hardware MUST prevent PWR_CTL DBC hardware MUST prevent PWR_CTL
(V(VIDID enable) enable) from being set if LOCK_CTL from being set if LOCK_CTL is not setis not set
LOCK_CTL And LOCK_CTL And PWR_CTL RelationshipPWR_CTL Relationship If both bits are set and LOCK_CTL is If both bits are set and LOCK_CTL is
erroneously cleared first (by S/W) then erroneously cleared first (by S/W) then DBC hardware DBC hardware mustmust automatically automatically clear PWR_CTLclear PWR_CTL
If the software controlled interlock If the software controlled interlock mechanism is overridden then DBC mechanism is overridden then DBC hardware hardware mustmust clear PWR_CTL clear PWR_CTL
Initializing Initializing “Read-Only” Fields“Read-Only” Fields There are fields in the DBC (registers There are fields in the DBC (registers
or descriptors) that contain static or descriptors) that contain static information about a DB subsystem; information about a DB subsystem; they could be implemented as they could be implemented as “write-once” and initialized via:“write-once” and initialized via: An embedded controllerAn embedded controller OEM BIOSOEM BIOS A configuration EEPROMA configuration EEPROM
Driving The Driving The Bay Status IndicatorBay Status Indicator Use of bipolar drivers allows the Use of bipolar drivers allows the
system designer to use a two-pin system designer to use a two-pin bipolar (green/yellow) LED, a three-pin bipolar (green/yellow) LED, a three-pin LED or discrete LEDsLED or discrete LEDs
If using bipolar drivers with a 2-pin If using bipolar drivers with a 2-pin bipolar LED watch your supply voltage!bipolar LED watch your supply voltage! 3.3V probably isn’t high enough!3.3V probably isn’t high enough!
VVOH(min) OH(min) - V- VOL(max) OL(max) VVF(LED) F(LED) + V+ VRR
typical case:typical case: V VOH(min)OH(min) V VCCCC - 1.0V- 1.0V
VVOL(max)OL(max) 0.4V 0.4V
VVF(LED)F(LED) 2.1V 2.1V
2.3V - 0.4V 2.3V - 0.4V 2.1V + V2.1V + VRR
Driving The Driving The Bay Status IndicatorBay Status Indicator
Driving The Driving The Bay Status IndicatorBay Status Indicator Don’t power the LEDs from an Don’t power the LEDs from an
auxiliary or standby power supply! auxiliary or standby power supply! The LEDs must be off when the The LEDs must be off when the system is in S3 through S5!system is in S3 through S5!
Call To ActionCall To Action
Use Device Bay resources:Use Device Bay resources: Spec is at www.device-bay.orgSpec is at www.device-bay.org Private questions: [email protected] questions: [email protected] Public: send “subscribe device_bay” to Public: send “subscribe device_bay” to
[email protected]@europa.com USB DBC Spec. white paper on USB DBC Spec. white paper on
www.microsoft.com/hwdev www.microsoft.com/hwdev
OEMs and DBC silicon providers start OEMs and DBC silicon providers start working togetherworking together
Send your hardware to Microsoft for Send your hardware to Microsoft for software development and testingsoftware development and testing
Device Bay, Device Bay, Beyond The SpecificationBeyond The Specification
Jeff WolfordJeff WolfordSenior Systems ArchitectSenior Systems ArchitectAdvanced Technology GroupAdvanced Technology GroupCompaq Computer CorporationCompaq Computer Corporation
Device Bay IntroductionDevice Bay Introduction
Open industry specification jointly Open industry specification jointly developed by Compaq, Intel, and Microsoftdeveloped by Compaq, Intel, and Microsoft www.device-bay.orgwww.device-bay.org Private questions: [email protected] questions: [email protected] Public: send “subscribe device_bay” to Public: send “subscribe device_bay” to
[email protected]@europa.com
Supports a wide variety of devices:Supports a wide variety of devices: Mass storage (HDD, DVD/CD-ROM, tape, etc.)Mass storage (HDD, DVD/CD-ROM, tape, etc.) Communications and connectivity Communications and connectivity
(modem, LAN)(modem, LAN) Audio and security via USBAudio and security via USB
Device Bay OverviewDevice Bay Overview
Complete architecture for adding/upgrading PC Complete architecture for adding/upgrading PC peripherals without opening the chassisperipherals without opening the chassis
Specifies bus interfaces, form factor, mechanicals, Specifies bus interfaces, form factor, mechanicals, and OS behavior for device insertion and removaland OS behavior for device insertion and removal
Mandatory busesMandatory buses Host: USB, 1394 (400 Mbit host ports) and Host: USB, 1394 (400 Mbit host ports) and
POWER Bus(es) Vid, VopPOWER Bus(es) Vid, Vop Device: either USB, 1394 or both + at least Vid Device: either USB, 1394 or both + at least Vid
and Vop if > 1.5 Wattand Vop if > 1.5 Watt
Key enablers:Key enablers: USBUSB IEEE 1394IEEE 1394
Device Bay OverviewDevice Bay OverviewForm-factorsForm-factors
3 Device Bay form-factors3 Device Bay form-factors DB32 - 32.00 x 146.00 x 178.00 mmDB32 - 32.00 x 146.00 x 178.00 mm
Size and power optimized for desktopSize and power optimized for desktop DB20 - 20.00 x 130.00 x 141.50 mmDB20 - 20.00 x 130.00 x 141.50 mm DB13 - 13.00 x 130.00 x 141.50 mmDB13 - 13.00 x 130.00 x 141.50 mm
DB20 and DB13’s size and power DB20 and DB13’s size and power optimized for, but optimized for, but notnot limited to, limited to, notebook implementationsnotebook implementations
Device Bay OverviewDevice Bay OverviewRetaining a connectionRetaining a connection
Retention feature:Retention feature: Required to engage immediatelyRequired to engage immediately
Software-controlled interlockSoftware-controlled interlock RequiredRequired
Security lockSecurity lock OptionalOptional
Any of the above can be combinedAny of the above can be combined
Device Bay Overview Device Bay Overview BusesBuses
Vid power: 1.5W at 3.3V Vid power: 1.5W at 3.3V (switched by the system)(switched by the system)
Vop power (switched by the device)Vop power (switched by the device) DB32 - 30W electrical, 25W thermalDB32 - 30W electrical, 25W thermal DB20 and DB13 - 4WDB20 and DB13 - 4W
2 serial buses (1394 and USB)2 serial buses (1394 and USB) Keeps appropriate performing devices on Keeps appropriate performing devices on
the corresponding busthe corresponding bus Allows power consumption to scale with Allows power consumption to scale with
performance of the deviceperformance of the device
Device Bay Overview Device Bay Overview USBUSB
USB is a medium-bandwidth bus USB is a medium-bandwidth bus (1.2 - 12 Mbps)(1.2 - 12 Mbps) Bay requirements:Bay requirements:
One USB port per bayOne USB port per bay Device Bay device requirements:Device Bay device requirements:
Provide power requirement registersProvide power requirement registers Unique serial numberUnique serial number If Vop is used, must be switched with If Vop is used, must be switched with
configuration complete commandconfiguration complete command
Device Bay Overview Device Bay Overview 13941394
IEEE 1394 and future extensions:IEEE 1394 and future extensions: Initial transfer rate is 100 - 400 Mb/s, with Initial transfer rate is 100 - 400 Mb/s, with
P1394A and P1394B extensions to P1394A and P1394B extensions to support Gbps data rates that must be support Gbps data rates that must be backward compatiblebackward compatible
Device Bay bay requirements:Device Bay bay requirements: One 1394 port per bayOne 1394 port per bay Must support 400Mbps minimumMust support 400Mbps minimum
Device Bay Overview Device Bay Overview 13941394
Device Bay device requirements:Device Bay device requirements: Provide power requirement registersProvide power requirement registers If Vop is used, must be switched with If Vop is used, must be switched with
start/stop unit commandstart/stop unit command Devices can use 100 - 400MbpsDevices can use 100 - 400Mbps
Encouraged to use highest rate Encouraged to use highest rate possible for devices to minimize possible for devices to minimize equivalent bandwidth requirementsequivalent bandwidth requirements
Device Bay Overview Device Bay Overview ConnectorConnector
Open industry standardOpen industry standard Blind-mate connector pairBlind-mate connector pair
Plug in the device, receptacle in the bayPlug in the device, receptacle in the bay Supports power, one USB port, Supports power, one USB port,
and one 1394 port in one connectorand one 1394 port in one connector Pin configuration for higher speed Pin configuration for higher speed
1394 (> 1Gb/s) and hot-plug1394 (> 1Gb/s) and hot-plug High durability (min 2,500 cycles)High durability (min 2,500 cycles) Flexible and cable friendlyFlexible and cable friendly
Device Bay Overview Device Bay Overview Device Bay Controller (DBC)Device Bay Controller (DBC)
Two possible implementations:Two possible implementations: USBUSB ACPI - abstracts HW I/F (PCI, IACPI - abstracts HW I/F (PCI, I22C, etc.)C, etc.)
Required functions:Required functions: Power controlPower control Insertion events (PRSN)Insertion events (PRSN) Software-controlled interlock mechanismSoftware-controlled interlock mechanism 1394 PHY port mapping1394 PHY port mapping USB port mappingUSB port mapping
Device Bay DevelopmentDevice Bay DevelopmentImplementers guideImplementers guide
Bay mechanical designBay mechanical design Bay electrical designBay electrical design Device Bay Controller (DBC) Device Bay Controller (DBC)
software requirementssoftware requirements Device mechanical designDevice mechanical design Device electrical designDevice electrical design
PowerPower SignalSignal ResetReset
Bay Mechanical DesignBay Mechanical DesignBay coverBay cover
A bay must be covered when no A bay must be covered when no device is present to keep from “short device is present to keep from “short circuiting” the air flow from other circuiting” the air flow from other baysbays
Watch out for:Watch out for: Devices that are hollow in the centerDevices that are hollow in the center Hanging up on device’s Hanging up on device’s
retention featuresretention features Interacting with the ESD/EMI bay springInteracting with the ESD/EMI bay spring
Bay Mechanical DesignBay Mechanical DesignDevice alignmentDevice alignment
Bay must provide rough Bay must provide rough device alignmentdevice alignment Needs to get the device to a +/-2mm Needs to get the device to a +/-2mm
connector toleranceconnector tolerance Needs to keep the device in tight Needs to keep the device in tight
vertical and horizontal tolerancevertical and horizontal tolerance Allows retention and interlock Allows retention and interlock
features to engage and features to engage and disengage properlydisengage properly
Bay Mechanical DesignBay Mechanical DesignRetention mechanismRetention mechanism
Needs to hold the device on the Needs to hold the device on the connector and not allow the device to connector and not allow the device to back off (i.e., 1.46 mm minimum wipe)back off (i.e., 1.46 mm minimum wipe)
Design for multiple device Design for multiple device enclosure materials:enclosure materials: Steel, aluminum, plastic, and bi-material Steel, aluminum, plastic, and bi-material
(metal over plastic) that produces two (metal over plastic) that produces two materials on the same retention facematerials on the same retention face
Bay Electrical DesignBay Electrical DesignPower switchingPower switching
Vid switching:Vid switching: Should be rampedShould be ramped Insertion resistance (FET, wire, etc.)Insertion resistance (FET, wire, etc.)
Vop switching:Vop switching: OptionalOptional Difficult to maintain valid voltagesDifficult to maintain valid voltages
Feedback from processor power, Feedback from processor power, not from DB powernot from DB power
Must support switching of maximum Must support switching of maximum power on all voltage railspower on all voltage rails
Bay Electrical Design Bay Electrical Design Connector setsConnector sets
Connector stack-up:Connector stack-up: Two sets minimum for cable versionTwo sets minimum for cable version Easy to get three setsEasy to get three sets
Watch termination and differential Watch termination and differential routing through noisy digital logicrouting through noisy digital logic
There may also be one set in the There may also be one set in the device for mechanical isolation device for mechanical isolation or for adaptersor for adapters
Bay Controller DesignBay Controller DesignDBC softwareDBC software
After an insertion notification, the After an insertion notification, the DBC driver needs to verify several DBC driver needs to verify several things before it turns on Vidthings before it turns on Vid Verify the Bay is enabled to take devicesVerify the Bay is enabled to take devices Verify there is 1.5W in the power budgetVerify there is 1.5W in the power budget Wait for the device to settle down and Wait for the device to settle down and
become fully latched on the connector become fully latched on the connector before enabling powerbefore enabling power
Device Design: MechanicalDevice Design: MechanicalCritical dimensionsCritical dimensions
Most critical is keeping the Most critical is keeping the connector square:connector square: Connector float in the Bay and connector Connector float in the Bay and connector
blind-mate features will compensate for blind-mate features will compensate for some tolerance in the X, Y, and Z planessome tolerance in the X, Y, and Z planes
ButBut, if the connector is not square with , if the connector is not square with the device, the float and blind-mate will the device, the float and blind-mate will be of little helpbe of little help
DB32 height is +/-0.25mmDB32 height is +/-0.25mm
Device Design: Mechanical Device Design: Mechanical
Retention featuresRetention features Critical dimension is from the Critical dimension is from the
retention edge to the back of retention edge to the back of the device the device
Required faces must be present Required faces must be present and in toleranceand in tolerance
Bi-material features must have Bi-material features must have smooth transition from one material to smooth transition from one material to another so as not to “snag” the bay’s another so as not to “snag” the bay’s retention mechanismretention mechanism
Device Design: Mechanical Device Design: Mechanical Device shellDevice shell
Round corners and edges within Round corners and edges within spec:spec: Round edges reduces the drag of Round edges reduces the drag of
insertion and removal of deviceinsertion and removal of device Round corners help the user get the Round corners help the user get the
device lined up and in the baydevice lined up and in the bay Round edges supports new Round edges supports new
handling modelshandling models The device “feels” better in the The device “feels” better in the user’s user’s
handshands
Device Design: Mechanical Device Design: Mechanical Device shellDevice shell
Cosmetics no longer limited to Cosmetics no longer limited to front front bezelbezel Users now see the entire deviceUsers now see the entire device
Additional user models beyond Additional user models beyond upgrade need to be considered:upgrade need to be considered: Casual device swappingCasual device swapping Taking devices on the roadTaking devices on the road
Device Design: Electrical Device Design: Electrical Power switchingPower switching
Vop power switchingVop power switching di/dt requirements support:di/dt requirements support:
Hot pluggingHot plugging Capacitance load-independentCapacitance load-independent
Supports lower power consuming Supports lower power consuming PC in the futurePC in the future
Vid - switched by the Bay (1.5W,3.3V)Vid - switched by the Bay (1.5W,3.3V) Needed to power the native bus interface Needed to power the native bus interface
and allow access of identification and and allow access of identification and power registerspower registers
Device Design: Electrical Device Design: Electrical Power switchingPower switching
Vop power switching assumptions:Vop power switching assumptions: No more than 5uA can be drawn on No more than 5uA can be drawn on
Vop if Vid is not validVop if Vid is not valid When Vid is not valid, Vid is not When Vid is not valid, Vid is not
required to be shorted to groundrequired to be shorted to ground Vop may or may not be valid when Vid Vop may or may not be valid when Vid
is disabledis disabled Vop power rails can be switched on/off Vop power rails can be switched on/off
in any order when Vid is not validin any order when Vid is not valid
Device Design: PowerDevice Design: Power
1394: PHY’s with Links required as 1394: PHY’s with Links required as first connectionfirst connection Provides Link to get device information, Provides Link to get device information,
including driver and power requirementsincluding driver and power requirements
Full power authorization via native Full power authorization via native bus driver stack:bus driver stack: USB: configuration completeUSB: configuration complete 1394: Start Unit command1394: Start Unit command Device Bay power manager would fail the Device Bay power manager would fail the
above commands to block enumerationabove commands to block enumeration
Device Design: PowerDevice Design: Power
All devices are required to support All devices are required to support ACPI states 0, 2, and 3ACPI states 0, 2, and 3 Support of state 1 is Support of state 1 is highlyhighly desired to desired to
support a fully power managed PCsupport a fully power managed PC
0: device is fully on 0: device is fully on 1: reduced power consumption on Vop 1: reduced power consumption on Vop 2: no power consumption on Vop and, 2: no power consumption on Vop and,
if possible, reduced power on Vidif possible, reduced power on Vid Can be same as pre-enumeration stateCan be same as pre-enumeration state
3: device is fully off3: device is fully off
Device DesignDevice DesignElectrical problemsElectrical problems
Problem:Problem: using 12V of Vop for switch using 12V of Vop for switch voltage enhancement for V5 and V33voltage enhancement for V5 and V33 Vid is not valid, thus the gate might not Vid is not valid, thus the gate might not
be groundedbe grounded Vop12v is valid, thus the gate might not Vop12v is valid, thus the gate might not
be pulled to 12Vbe pulled to 12V
Device DesignDevice DesignElectrical problemsElectrical problems
Problem:Problem: using Vid (3.3V) and Vop using Vid (3.3V) and Vop (5V) to drive reset circuits(5V) to drive reset circuits Vop is only required to be valid with VidVop is only required to be valid with Vid
If Vop is used for a reset RC circuit, If Vop is used for a reset RC circuit, the reset might not be done when the reset might not be done when Vid becomes valid Vid becomes valid
Device DesignDevice DesignElectrical problemsElectrical problems
Problem:Problem: input leakage current and input leakage current and voltage for a device that is offvoltage for a device that is off Could violate 5uA current limitCould violate 5uA current limit Voltage feed-through could allow this Voltage feed-through could allow this
voltage to come out another pinvoltage to come out another pin Requires fail-safe buffersRequires fail-safe buffers
Device DesignDevice DesignElectrical problemsElectrical problems
Problem:Problem: tying two resets together tying two resets together PHY reset RC was biased to 1.4V PHY reset RC was biased to 1.4V
because of input voltage leak when the because of input voltage leak when the device was powered off via TPbiasdevice was powered off via TPbias
PHY reset was tied to Link reset, causing PHY reset was tied to Link reset, causing the Link reset edge to start at 1.4V, the Link reset edge to start at 1.4V, causing a non-complete edge on its resetcausing a non-complete edge on its reset
Device DesignDevice DesignReset problemsReset problems
When the 1394 bus has completed the When the 1394 bus has completed the self-ID phase, the Link must be able to self-ID phase, the Link must be able to respond to CSR and ROM reads; if it respond to CSR and ROM reads; if it cannot, there are several options:cannot, there are several options: Best: be able to respond after self-IDBest: be able to respond after self-ID Second best: respond with an ack-Second best: respond with an ack-
pending and respond before the ack-pending and respond before the ack-pending times outpending times out
Device DesignDevice DesignReset problemsReset problems
Link reads after self-IDLink reads after self-ID Third best: strap PHY to come up in link-off mode Third best: strap PHY to come up in link-off mode
Then when the Link is able to take commands, Then when the Link is able to take commands, assert the LPS to the PHY and if the PHY does assert the LPS to the PHY and if the PHY does not do a reset on LPS status change, pop a not do a reset on LPS status change, pop a 1394 bus reset1394 bus reset
Worst, but better than none: let the initial CSR Worst, but better than none: let the initial CSR read’s ack time-out; when the Link becomes read’s ack time-out; when the Link becomes available, cause a 1394 bus resetavailable, cause a 1394 bus reset
Demo: Device InsertionDemo: Device Insertion
DB deviceDB deviceDB connectorDB connector
Device BayDevice Baycontrollercontroller
DBC driverDBC driver
Device BayDevice Baypowerpower
managermanager
USBUSB ACPIACPI
PR
SN
PR
SNV33V33
V5V5V12V12 V
idV
id
PCI OHCIPCI OHCI
1394 PHY1394 PHY
13941394
1394 class1394 class
OHCIOHCI TI TI LINKSLINKS
PCIPCI
SBP-2SBP-2
Disk.sysDisk.sys
PWR FILTERPWR FILTER
PRSN -> DBC, DBC DriverPRSN -> DBC, DBC Driver Device InsertionDevice Insertion Start blinking LEDStart blinking LEDDBC Driver -> DB PWR MGRDBC Driver -> DB PWR MGR Do we have 1.5 W ?Do we have 1.5 W ?DB PWR MGR -> DBC DriverDB PWR MGR -> DBC Driver YESYESDBC Driver -> DBCDBC Driver -> DBC IF Vop switched, turn on VopIF Vop switched, turn on Vop Turn on VidTurn on Vid Turn LED on solidTurn LED on solid Wait for Native Bus to take overWait for Native Bus to take over
NATIVE BUS:NATIVE BUS:Disk.sys -> SBP-2Disk.sys -> SBP-2 Start UnitStart UnitSBP-2 -> PWR FilterSBP-2 -> PWR FilterPWR Filter -> DB PWR MGRPWR Filter -> DB PWR MGR See Start UnitSee Start UnitDB PWR MGR -> 1394 FilterDB PWR MGR -> 1394 Filter Read Unit Directory Power RegRead Unit Directory Power Reg1394 Filter -> DB PWR MGR1394 Filter -> DB PWR MGR Power Requirements DataPower Requirements DataDB PWR MGR -> 1394 FilterDB PWR MGR -> 1394 Filter Pass or Fail Start UnitPass or Fail Start Unit
Demo: Copy FilesDemo: Copy Files
Copy files from Device Bay Copy files from Device Bay device to anotherdevice to another
DB deviceDB device
Demo: Device RemovalDemo: Device Removal
DB connectorDB connector
Device BayDevice Baycontrollercontroller
DBC driverDBC driver
Plug -n- PlayPlug -n- Playmanagermanager
USBUSB ACPIACPI
PR
SN
PR
SNV33V33
V5V5V12V12 V
idV
id
PCI OHCIPCI OHCI
1394 PHY1394 PHY
13941394
1394 class1394 class
OHCIOHCI TI TI LINKSLINKS
PCIPCI
SBP-2SBP-2
Disk.sysDisk.sys
PWR FILTERPWR FILTER
RemReq -> DBCRemReq -> DBC Start blinking LEDStart blinking LEDDBC -> DBC DriverDBC -> DBC Driver Device Removal RequestDevice Removal RequestDBC Driver -> Plug-n-Play MGRDBC Driver -> Plug-n-Play MGR Remove Device RequestRemove Device RequestPlug-n-Play MGRPlug-n-Play MGR Close down all open file handlesClose down all open file handles Send the device to D3 stateSend the device to D3 state When complete, send ACK toWhen complete, send ACK to DBC DriverDBC DriverDBC Driver -> DBCDBC Driver -> DBC Turn off VidTurn off Vid Wait for device to dischargeWait for device to discharge IF Vop switched, turn off VopIF Vop switched, turn off Vop Turn LED offTurn LED off Release software interlocksRelease software interlocksDBC Driver -> DB PWR MGRDBC Driver -> DB PWR MGR Release allocated powerRelease allocated power
RemReqRemReq
Demo: Moving DevicesDemo: Moving Devices
Show movement of a Device Bay Show movement of a Device Bay device from one machine to anotherdevice from one machine to another
Demo: Swapping DevicesDemo: Swapping Devices
Remove one Device Bay deviceRemove one Device Bay device Insert a different Device Bay Insert a different Device Bay
device in the same baydevice in the same bay
Questions And Answers Questions And Answers