throbber

`
`Personal Jukebox (PJB)Personal Jukebox (PJB)
`
`
`
`Systems Research Center and PAADSystems Research Center and PAAD
`
`
`
`Last updated October 13, 2000Last updated October 13, 2000
`
`1
`
`

`

`
`
`What Is This?What Is This?
`
` Cool consumer device, exploring convergence of:
`– cheap, low power, fast, imbedded computers
`– powerful, common, home PC’s with Internet access
`
` Portable audio system: 100 CD’s in your pocket
`– Take all your music everywhere
`
` Research project that became a product
`
`2
`
`2
`
`

`

`
`
`The TechnologyThe Technology
`
` CD-quality audio compression: 11-to-1 (1 MB/min)
`
` 2.5” disk is 6.5 GBytes, 4 ounces, 3/8” thick
`– 110 hours of CD-quality music (340 hrs on 20 GB)
`
` Lithium-Ion cell: 5 Watt-hour, 2 ounces
`– We achieve 11-hour playing time between charges
`
` PC for acquisition, management, content labeling
`
`3
`
`3
`
`

`

`
`
`Using the PJBUsing the PJB
`
` Everywhere:
`– On that 11-hour flight
`– In your car
`– In your office
`– At home
`
` Choose your music after you leave home
`
`4
`
`4
`
`

`

`
`
`PJB WorkflowPJB Workflow
`
`
`OnlineOnline
`
`MusicMusic
`
`ResellersResellers
`
`
`
`CDDBCDDB
`
`Internet
`
`
`CD-ROMCD-ROM
`
`drivedrive
`
`
`JukeboxJukebox
`
`ManagerManager
`
`onon
`
`Home PCHome PC
`
`
`
`MP3 on PCMP3 on PC
`
`
`AudioAudio
`
`CDCD
`
`PJBPJB
`
`5
`
`5
`
`

`

`
`
`Hardware OverviewHardware Overview
`
`
`USBUSB
`
`(12 Mb/s)(12 Mb/s)
`
`
`Flash ROMFlash ROM
`
`(1 MB)(1 MB)
`
`
`DRAMDRAM
`
`(12 MB)(12 MB)
`
`
`2.5” disk2.5” disk
`
`(many GB)(many GB)
`
`Memory bus
`
`
`DSP (Motorola 56309-80)DSP (Motorola 56309-80)
`
`Running at 35 MHz; about 72 KB on-chip RAMRunning at 35 MHz; about 72 KB on-chip RAM
`Serial
`Serial
`GPIO
`
`LCDLCD
`
`DACDAC
`
`Buttons &Buttons &
`
`(128x64x1)(128x64x1)
`
`(44.1x2x16)(44.1x2x16)
`
`Power MgmtPower Mgmt
`
`Amp
`
`Audio
`output
`
`6
`
`6
`
`

`

`
`
`Hardware RealityHardware Reality
`
`7
`
`7
`
`

`

`
`
`Hardware Close-up (Prototype)Hardware Close-up (Prototype)
`
`8
`
`8
`
`

`

`
`
`Hardware Anatomy (Prototype)Hardware Anatomy (Prototype)
`
`Buttons
`
`Ethernet
`(product uses USB)
`
`DRAM
`
`Flash
`
`Power
`
`Audio
`
`IDE
`
`CPU
`
`LCD
`
`ONCE™
`
`Battery
`
`9
`
`9
`
`

`

`
`
`Physical RobustnessPhysical Robustness
`
` Disk withstands 150G for 2ms while operating
`– roughly a drop from a desk onto carpet
`
` Reality: some temporary non-recoverable errors
`– (while running)
`
` Firmware can continue with small audio loss
`
` LCD is most liable to permanent damage
`
`10
`
`10
`
`

`

`
`
`Player Unit UI OverviewPlayer Unit UI Overview
`
` Human-sensible names (from CDDB initially)
`
` 3-level hierarchy: “set”, “disk” (playlists), “track”
`– multiple copies of a track or disk are (almost) free
`
` 6 buttons: start/stop, up/down, left/right (+volume)
`
` Bitmapped display allows redesigns (& games!)
`
`11
`
`11
`
`

`

`
`
`UI Physical layout (prototype)UI Physical layout (prototype)
`
`12
`
`12
`
`

`

`
`
`User Interface DetailsUser Interface Details
`
`
`
`Current Set, Disk, TrackCurrent Set, Disk, Track
`
`
`This TrackThis Track
`
`This DiskThis Disk
`
`This SetThis Set
`
`
`SequentialSequential
`
`ShuffleShuffle
`
`RepeatRepeat
`
`
`Normal,Normal,
`
`Extra Bass,Extra Bass,
`
`Super BassSuper Bass
`
`
`Track, Track LeftTrack, Track Left
`
`Disc, Disc LeftDisc, Disc Left
`
`
`
`Time IndicatorTime Indicator
`
`
`
`Volume LevelVolume Level
`
`
`Ethernet/USBEthernet/USB
`
`Link StatusLink Status
`
`13
`
`13
`
`

`

`
`
`Firmware OverviewFirmware Overview
`
` No operating system! (manual event loop)
`
` Compression format neutral (select per-track)
`– MP3, AAC, MSAudio, SDMI, ...
`
` About 40,000 lines of C (“char” is 24-bits!)
`– but … assembler is factor of 10 faster
`
` Decoder, CRC, and disk read loop in assembler
`
`14
`
`14
`
`

`

`
`
`Firmware - main loopFirmware - main loop
`
` Poll the devices
`– simpler than interrupts
`
` Main loop calls each
`component in turn to
`give it processor time.
`
` Need to call player process
`frequently enough!
`
`
`
`User InterfaceUser Interface
`
`
`
`Player ProcessPlayer Process
`
`USBUSB
`
`DiskDisk
`
`15
`
`15
`
`

`

`
`
`Firmware - logical flowFirmware - logical flow
`
`
`
`ButtonsButtons
`
`LCDLCD
`
`
`UserUser
`
`InterfaceInterface
`
`Player Process
`
`10MB Buffer
`
`RPCRPC
`
`
`
`File SystemFile System
`
`
`
`DecoderDecoder
`
`
`Ethernet orEthernet or
`
`USB driverUSB driver
`
`
`
`IDE DriverIDE Driver
`
`DACDAC
`
`
`
`Disk DriveDisk Drive
`
`ampamp
`
`16
`
`16
`
`

`

`
`
`File System OverviewFile System Overview
`
` Single meta-data object “Table of Contents” (TOC)
`
` Managed by PC software
`
` Single stream of plain text:
`– Identifies PJB, set, disk, track (each by text name)
`– “track” has location (first allocation block number)
`– Includes map of blocks-in-use
`– Includes CDDB keys
`
`17
`
`17
`
`

`

`
`
`File System On-disk StructureFile System On-disk Structure
`
`
`
`TOC (static 4 MB area)TOC (static 4 MB area)
`
`
`
`Music (128 KB blocks)Music (128 KB blocks)
`
`
`
`currentcurrent
`
`
`
`previousprevious
`
`AA
`
`BB
`
`CC
`
`DD
`
`18
`
`18
`
`

`

`Content blocks in detailContent blocks in detail
`
` Doubly linked lists (w/ redundant forward links)
` Header identifies content and origin (for scavenging)
` Supports continuously encoded music (extents)
`
`FWD/BACK
`PTR
`
`1st
`track
`start
`
`2nd
`track
`start
`
`FWD PTR
`CRC
`
`3rd
`track
`start
`
`19
`
`19
`
`

`

`
`
`Disk Error HandlingDisk Error Handling
`
` Bad TOC - use replica
`
` Bad TOC replica - use old version
`
` Bad forward pointer in block - use replica
`
` Bad replica forward pointer - abandon track
`
` Bad payload in block - skip and resync music
`
`20
`
`20
`
`

`

`
`
`File System MaintenanceFile System Maintenance
`
` No fragmentation worries
`– worst case is seek every 128KB (8 seconds)
`
` No fsck or scandisk (no inconsistent states)
`
` Relies on:
`– large files
`– no file modification
`– single writer
`
`21
`
`21
`
`

`

`
`
`Power ManagementPower Management
`
` 2.5” disk in sleep mode consumes about 100 mW
`
` Disk spin-up takes 5W-secs (2x AA’s don’t work)
`
` Power-up disk, read 10 MB into DRAM, power off
`
` Use on-chip memory for inner loop, not DRAM
`
` Total average PJB power consumption 450 mW
`
`22
`
`22
`
`

`

`
`
`Market AreaMarket Area
`
` PJB was the first product in its category
`– Less than $10/hour of music (Rio is $200/hour)
`– Only prerequisite is owning a PC
`
` Lots of other possibilities in this area, e.g.:
`– Internet music purchase: store in PJB, cache on PC
`– Caching CD player in your car
`– Home network with custom audio in each room
`
`23
`
`23
`
`

`

`
`
`StatusStatus
`
` Research project ended up with 100 prototypes
`
` Licensed to third party (HanGo)
`
` Now shipping (http://www.pjbox.com)
`
` Project details:
`– http://research.compaq.com/SRC/pjb/
`
`24
`
`24
`
`

`

`25
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket