WO2012023150A2 - Handheld electronic devices - Google Patents

Handheld electronic devices Download PDF

Info

Publication number
WO2012023150A2
WO2012023150A2 PCT/IN2011/000557 IN2011000557W WO2012023150A2 WO 2012023150 A2 WO2012023150 A2 WO 2012023150A2 IN 2011000557 W IN2011000557 W IN 2011000557W WO 2012023150 A2 WO2012023150 A2 WO 2012023150A2
Authority
WO
WIPO (PCT)
Prior art keywords
processor
operating system
handheld device
mode
switch
Prior art date
Application number
PCT/IN2011/000557
Other languages
French (fr)
Other versions
WO2012023150A3 (en
WO2012023150A4 (en
Inventor
Balaji Kanigicherla
Siva Raghu Ram Voleti
Krishna Mohan Tandaboina
Dhanumjai Pasumarthy
Original Assignee
Ineda Systems Pvt. Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ineda Systems Pvt. Ltd filed Critical Ineda Systems Pvt. Ltd
Publication of WO2012023150A2 publication Critical patent/WO2012023150A2/en
Publication of WO2012023150A3 publication Critical patent/WO2012023150A3/en
Publication of WO2012023150A4 publication Critical patent/WO2012023150A4/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present subject matter in general, relates to electronic devices and in particular to handheld electronic devices.
  • Handheld devices can be classified into various categories, such as mobile phones, smart phones, notebooks, tablets, personal digital assistants (PDAs), multimedia players, and gaming devices.
  • PDAs personal digital assistants
  • the handheld devices usually have modest power consumption, and are lightweight.
  • the handheld devices such as the smart phones, often integrate functionalities of conventional computing devices and communication devices.
  • the handheld devices may also have various modules like baseband module, bluetooth module, wireless module, and infrared module for facilitating connection with various networks and/or devices.
  • the handheld devices may also include an application processor powerful enough to run various applications like e-messengers, electronic mail (e-mail) clients, Office 1 M tools, audio/video playc- and recorder, etc., besides basic cellular phone functionalities like voice call, mess gin , etc. This makes the handheld device a very convenient and portable 'all-in-one' t e f device.
  • the handheld device is their user input unit, which is in the form of a miniaturized keyboard or touch screen that makes the handheld device less user friendly.
  • certain applications like multimedia editing and processing, gaming, etc., require a sufficiently big display screen; a full size user interaction device l ike keyboard, mouse etc.; high processing power; and extra storage capacity than what is available in conventional handheld devices
  • additional modules may be packaged onto the handheld devices to provide the abovementioned functionalities.
  • packing various types modules and applications and addition of multiple external units, for example, camera, into a single hand held device tends to make the handheld device bulky and heavy.
  • the additional modules increase the power consumption of the handheld device and thus reduces the battery life of the handheld devices.
  • a handheld device comprises a first processor, a second processor and a multi-protocol multi-root input output virtualization (MPMRIOV) switch communicatively coupled to at least one of the first processor ( 102) and the second processor ( 104).
  • the MPMRIOV switch is further configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device, a Peripheral Component Interconnect express (PCIe) compliant peripheral device, a non PCI compliant peripheral device, and a non PCIe compliant peripheral device.
  • PCI Peripheral Component Interconnect
  • PCIe Peripheral Component Interconnect express
  • a smart phone comprises a high configuration processor and a personal computer enabler application processor unit (PCEAPU).
  • the PCEAPU further comprises a low configuration processor and a multiprotocol multi-root input output ⁇ irtualization (MPMRIOV) switch communicatively coupled to at least one of the high configuration processor and the low configuration processor.
  • MPMRIOV switch is further configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device, a Peripheral Component Interconnect express (PCIe) compliant peripheral device, a non PCI compliant peripheral device, and a non PCIe compliant peripheral device.
  • PCI Peripheral Component Interconnect
  • PCIe Peripheral Component Interconnect express
  • a method for switching operating systems in a multi-processor system comprises receiving an input to operate a second operating system while operating a first operating system and context saving the first operating system.
  • the method further comprises switching the first operating system to an optional low power state and operating the second operating system in a full power state.
  • FIG. 1 illustrates an exemplary handheld electronic device, according to an embodiment of the present subject matter.
  • FIG. 2 illustrates exemplary components of a multi-processor smart phone, according to another embodiment of the present subject matter.
  • FIG. 3 illustrates an exemplary method of switching between operating modes of the multi-processor smart phone, according to an embodiment of the present subject matter.
  • FIG. 4 illustrates an exemplary mechanism to operate the multi-processor smart phone using a docking station, according to an embodiment of the present subject matter.
  • Handheld electronic devices can be classified into various categories based on their functionalities, and may include the following: smart phones, audio/video players, personal digital assistants (PDAs), palmtops, mobile phones, gaming devices, digital cameras, pagers, tablets, note books, net-books, and personal navigation device. Advancement in technology has resulted in the integration of various functionalities of different categories of devices in a single handheld device like a smart phone, thereby increasing its utility.
  • the smart phone usually includes different modules to connect to other computing and communication devices, for example, in wired mode by using a universal serial bus (USB) cable, IEEE1394 (Firewire) cable, or in wireless mode by using Bluetooth, infra-red, Wi-Fi, general packet radio service (GPRS), etc.
  • USB universal serial bus
  • IEEE1394 FireWire
  • GPRS general packet radio service
  • the smart phone may also support multiple categories of mobile communication networks, such as, global system for mobile communication (GSM) and code division multiple access (CDMA).
  • GSM global system for mobile communication
  • CDMA code division multiple access
  • the smart phone has a smail size keyboard or touch screen with an optional stylus as user input modules. Additionally constraints on the size of the smart phone further limit the size of the display screen leading to the inconvenience of users. Further, integration of a number of mc Jules in a single smart phone tends to make the smart phone bulky and heavy and also results m lower baitery life.
  • the present subject matter describes a hananeld electronic device, hence forth referred to as the device that ' has enhanced battery life without compromising on processing capabilities and functionalities.
  • the device comprises at least a first host processor, a second host processor and memory coupled to each of the host processors.
  • the second host processor is implemented in a personal computer enabler application processor unit, henceforth referred to as the PCEAPU.
  • the PCEAPU may be electronically connected to the first host processor.
  • the second host processor may be implemented external to the PCEAPU.
  • the device may also include one or more interfaces to facilitate connection and communication with external systems, peripherals, networks, etc. In one embodiment, at least one of the interfaces facilitates connection of the device with a cellular network.
  • a high end operating system is run on the first host processor and a low end operating system is run on the second host processor.
  • the high end operating system running on the first host processor has higher processing ability, more features but has higher power consumption as compared to the low end operating system running on i.he second host processor.
  • the mode of operation of the high end operating system mc referred JO as the high power mode while that of the low end operating system may be ref f i red to as low power mode.
  • the low end operating system may be run on the first host processor and the high end operating system may be operated on the second host processor.
  • the same operating system may be run on both the first host processor and the second host processor, without limiting the scope of the present subject matter.
  • any one of the high end operating system or the low end operating system can be designated as the primary operating system i.e. the operating system that is by default loaded onto the device when the device is booted.
  • the device may facilitate the user, through inputs facilitated by hardware, software tools, firmware or a combination thereof, to designate and change the primary operating system as per choice and/or requirement.
  • the device may be con f igured to run either the high end operating system or the low end operating system or n ⁇ .i both the high end operating system and the low end operating system concurrently. For example, while running a high end application requiring high hardware support, the high end operating system on the first host processor may be run, whereas in case of a low-end application, the low end operating system on the second host processor may be utilized. To optimize power consumption, the device may be configured to switch from the high end operating system to the low end operating system without any data or work interruption giving the user a seamless switching experience.
  • the switching from the high end operating system to the low end operating system and vice- versa may either be performed by the device automatically or for example in response to an external event like loss of external power source, undocking from a charging unit or a docking station, etc., or be triggered by the user input either through hardware or software or firmware or a combination thereof.
  • the device may provide the user to opt for continuing in the high power mode even while running on in-built power source at the cost of reduced battery life.
  • the device facilitates the sharing of the device's resources and peripherals among the operating systems running on the first host processor and the second host processor simultaneously.
  • the device is configured to be used with various peripherals supporting various interfacing protocols, for example, peripheral component interconnect ( ; C1) compliant, peripheral component interconnect express (PCle) compliant, non-PCl ;x.n: liant and > on-PCIe compliant peripherals.
  • peripheral component interconnect ; C1
  • PCle peripheral component interconnect express
  • the device may include or may connected to various storage controllers, like Serial Advanced Technology Attachments (SATA), NAND flash memory, multimedia cards (MMC), Consumer Electronics Advanced Technology Attachment (CEATA); connectivity modules like baseband interfaces, Serial Peripheral Interfaces (SPI), Inter-integrated Circuit (I2C), Infrared Data Association (IrDA) compliant devices; media controllers like camera, Integrated Inter-chip Sound (I2S); media accelerators like audio encode-decode engines, video encode-decode engines, graphics accelerator; security modules like encryption engines, key generators, etc.
  • SATA Serial Advanced Technology Attachments
  • MMC multimedia cards
  • CEATA Consumer Electronics Advanced Technology Attachment
  • connectivity modules like baseband interfaces, Serial Peripheral Interfaces (SPI), Inter-integrated Circuit (I2C), Infrared Data Association (IrDA) compliant devices
  • media controllers like camera, Integrated Inter-chip Sound (I2S)
  • media accelerators like audio encode-decode engines, video encode-decode engines, graphics accelerator
  • Fig. 1 shows the exemplary components of a handheld device 100, according to an embodiment of the present subject matter.
  • the handheld device henceforth referred to as the device 100 comprises a first host processor 102, a second host processor 104.
  • the first host processor 102 and the second host processor 104 are coupled to a first memory 106-1 and a second memory 106-2,• cspectively.
  • the first host processor 102 and the second host processor 104 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, or any devices that manipulate signals based on operational instructions.
  • the first host processor 102 and the second host processor 104 can be configured to fetch and execute computer-readable instructions and data stored in either of the first memory 106- 1 or the second memory 106-2.
  • the first memory 106-1 and the second memory 106-2 can include any computer-readable medium known in the art including, for example, volatile memory (e.g., RAM) and/or non-volatile memory (e.g., flash, etc.).
  • the first memory 106-1 and the second memory 106-2 may include module and data.
  • the module usually includes routines, programs, objects, components, d 3 ⁇ 4- structure, etc., that perform particular task or implement particular abstract data typ s.
  • the device 100 When the device 100 if, booted, a primary operating system is loaded.
  • the first operating system, referred to as operating system OS-A, running on the first host processor 102 may be designated as the primary operating system while the second operating system, referred to as operating system OS-B, running on the second host processor 104 is treated as the secondary operating system.
  • the device 100 may be configured to facilitate the user to designate any of the operating system as the primary operating system. The user may change the primary operating system according to choice and/or requirement.
  • the device 100 may be further configured to facilitate the user to switch from one operating system to another operating system seamlessly.
  • the device 100 can concurrently run multiple operating systems on the first host processor 102 and the second hojt processor 104.
  • the device 100 includes a multi-protocol multi-root input output virtual ization (MPMRIOV) switch 108, which facilitates communication of the device 100 with connected peripheries 1 16-1 , 1 16-2,.... 1 16-N, collectively referred to as peripherals 1 16.
  • MPMRIOV multi-protocol multi-root input output virtual ization
  • PC1-SIG Peripheral Component Interconnect Special Interest Group
  • PCIe Per ipheral Component Interconnect Express
  • the MPMRIOV switch 108 comprises an adaptation unit 1 10, which facilitates the communication of the peripherals 1 16 with at least one of the first processor 102 and the second processor.
  • the peripherals 1 16 may also inlcude non-PCI or non-PCIe compliant peripherals.
  • a peripheral and interface virtualization unit 1 12 is coupled to a plurality of peripheral controllers 1 14- 1 , 1 14-2,.... 1 14-N, collectively referred to as peripheral controllers 1 14.
  • the peripheral and interface virtualization unit 1 12 helps in virtualization of the physical devices and facilitates simultaneous sharing of devices, like printers, keyboard, mouse, display unit, etc., among multiple operating systems or multiple processors.
  • the device 100 may also include a inter processor communication unit (IPC) ((222) shown in Figure 2) which enables communication between plurality of the processors. . " V device I Ct may also include other components 120 required to provide additional functionalii s to the device 100.
  • IPC inter processor communication unit
  • the functionality of MPMROI V switch 108, relating to communication with PCI, PCIe, non-PCI and non-PCIe compliant peripheral devices 1 16 may be attributed to the PIVU 1 12.
  • the device 100 comprises the MPMRIOV switch 108 communicatively coupled to at least one of the first processor 102 and the second processor 104 and the PIVU 1 12 coupled to the MPMRIOV switch 108 wherein the PIVU 1 12 is configured to communicate with PCI, PCIe, non-PCI and non-PCIe compliant peripheral devices 1 16.
  • the device 100 also includes the IPC 222 configured to exchange one or more message between at first processor 102 and the second processor 104.
  • the peripherals 1 16 cai be configured to be used exclusively by either of the first host processor 102 or the secord host processor 104 or by both the first host processor 102 and the second host processor 104 simultaneously. Additionally the device 1 00 may also include one or more interfaces 1 18 to connect to external network, systems, devices, etc.
  • FIG. 2 illustrates an exemp lary multi-processor smart phone 200, according to an embodiment of the current system.
  • the device 100 is embodied as the smart phone 200 and it will be appreciated that the concepts explained in context thereof may be extended to such an embodiment.
  • the smart phone 200 comprises a high configuration processor 202, a memory 204 coupled to the high configuration processor 202, a low configuration processor 206, various memory units like a static random access memory 208, stacked memory 210 coupled to the low configuration processor 206 via a memory controller 212, the MPMRIOV switch 108, having the adaptation unit 1 10.
  • a plurality of peripheral controllers 1 14- 1 , 1 14-2,.... 1 14-N, system related module(s) 216 like encryption engine*: may also be incorporated in the smart phone 200.
  • the smart pho'.,- . ' 00 has at 1 ist one PCIe expansion port 21 8.
  • the smart phone 200 may include at least o e interface 22 1 to connect to mobile communication networks, a riorth bridge 220, a first display adapter 224- 1 and a second display adapter 224-2 coupled to the high configuration processor 202 and the low configuration processor 206 respectively.
  • the smart phone 200 further includes a display selector 226 to facilitate data flow from the first display adapter 224- 1 and the second display adapter 224-2 to a display unit (not shown in figure).
  • the smart phone 200 may include other modules (not shown in figure) that enable the smart phone 200 to connect to other devices or network via Bluetooth, infra-red, wireless local area network (WLAN ).
  • WLAN wireless local area network
  • the smart phone 200 may connect to a plurality of peripherals 1 16- 1 , 1 16-2, .... 1 16-N, collectively referred to as peripherals 21 5 via a plurality of peripheral controllers 1 14- 1 , 1 14-2, .... 1 14-N, collectively referred to as peripheral controllers 1 14.
  • peripherals 1 16 may include other components. like camera, audio/video recorder, global positioning system (GPS), universal serial bus (USB) ports, card reader(s), display units, software tools, etc.
  • the smart phone 200 may include a display mux to facilitate connection with an external display unit.
  • the various components of the smart phone 200 may be integrated in a single chip known as personal computer enabler application unit (PCEAPU) 228.
  • the high configuration processor 202 can be p l c iceu on the same board as the PCEAPU 228 or on a different board or on a different unil r- an add-or device or as a part of a docking station.
  • the high configuration processor 202 can 3 ⁇ 4lso be integrated with the PCEAPU 228.
  • the high configuration processor 202 runs a high end operating system, operating system OS-C, whereas the low configuration processor 206 runs a low end operating system, namely, operating system OS-D.
  • the operating system OS-D may provide support for the interface(s) 221 facilitating connection of the interface(s) 212 to a cellular network.
  • the smart phone 200 may also include an in-built power source, like rechargeable batteries (not shown in figure), which can be charged using a power adapter, a docking station, etc.
  • the PCEAPU 228 includes an inter processor communication (IPC) unit 222 configured to exchange messages between the first host processor 202 and second host processor 206.
  • IPC inter processor communication
  • the low end operating system OS-D when the smart phone 200 is switched on, the low end operating system OS-D is loaded to o,)er?te the smart phone 200 in a mobile phone mode.
  • the j ⁇ na> ' f phone 200 possess all the functionalities of a conventional cellular phone like connecting to a cellular net work, support for voice calls, messaging, etc.
  • the smart phone 200 may also run various other utilities like alarm clock, calendar, music player, etc., prevalently available in handheld electronic devices. Since the operating system OS-D runs on the low configuration processor 206, power consumption of the smart phone 200is reduced resulting in higher battery life.
  • the operating system OS-D provides support for all conventional cellular phone functions like connecting to at least one mobile communication network, multimedia messaging, short messaging service, voice calls, etc.
  • the smart phone 200 may also support applications like metric converters, document editors, electronic mail client, e-messengers, social networking applications, etc.
  • the high end operating system can also be run, when the smart phone 200 is running on battery at the cost of reduced battery life.
  • the smart phone 200 when the smart phone 200 is connected to an external power supply, either through a docking station or by being plugged in to a power supply, the smart phone 200 may configured to boot the high end operating system, OS-C, on the high configuration processor 202. In one embodiment, operating system OS-C is loaded based on a user input.
  • This mode of operation of the smart phone 200 is known as the PC Mode.
  • the PC Mode supports high end applications which require more processing power and higher system resources.
  • PC Mode ' ⁇ ! smart phone 200 has the processing power and all the features present in a conventional computing device like laptop, etc.
  • the smart phone 200 In the PC Mode, the smart phone 200 supports connection to external peripherals, like an external visual display unit, either through in-built ports or through a docking station (not shown in figure).
  • operating system OS-C renders the cellular phone functionalities dormant so as to use very low power, while at the same time keeping certain pre-configured functionalities like receiving or making voice calls, etc., active.
  • the smart phone 200 while operating in the PC mode, may be connected to one or more mobile communication networks.
  • mobile communication networks include but are not limited to, Global System for Mobile Communication (GSM) network. Universal Mobile Telecommunications System (UMTS) network, Personal Communications Service (PCS) network, Time Division Multiple Access (TDMA) network, Code Division Multiple Ac cess (CDMA) network, Next Generation Network (NGN), IP-based network, Public Switched Telephone Network (PSTN), and Integrated Services Digital Network (ISDN).
  • GSM Global System for Mobile Communication
  • UMTS Universal Mobile Telecommunications System
  • PCS Personal Communications Service
  • TDMA Time Division Multiple Access
  • CDMA Code Division Multiple Ac cess
  • NTN Next Generation Network
  • IP-based network Public Switched Telephone Network
  • PSTN Public Switched Telephone Network
  • ISDN Integrated Services
  • the smart phone 200 also has facility of sharing of components among the high configuration processor 202 and the low configuration processor 206. For example, say the user is watching a video in the PC Mode which uses the display unit and the audio unit of the smart phone 200. In said example, in case of an incoming call, the mobile phone mode may take over the control of either of the display unit and the audio unit or both the display unit and the audio unit so as to notify the user of the incoming call. [00045] Further, while in the PC Mode, if the user receives a message or a call, the smart phone 200 can be configured to automatically switch to the mobile phone mode so as to facilitate the user to receive the call or the message. This allows a user greater convenience, for example of disconnecting from the docking station to allow mobility.
  • the smart phone 200 while in the PC Mode, may be configured to ignore events occurring in the mobile phone mode, like an incoming call.
  • the sm rt phone 200 may also be configured to completely shutdown the mobile phone mode so ...s to facilitate the use of the smart phone 200 as a conventional computing device like laptop, for instance in areas where usage of a communication device, like cellular hone, is not allowed like during flights.
  • the smart phone 200 can switch off the low configuration processor 206 and configure the high configuration processor 202 to perform the tasks of the low configuration processor 204 as well.
  • the smart phone 200 may have a single high configuration processor, which is run at rated capacity in PC mode and can be throttled down while operating in the mobile phone mode.
  • certain components as shown in Fig. 2, may become redundant and additionally certain components may have to be added.
  • the MPMRIOV Switch 108 may be replaced by a conventional PCIe switch and devices supporting PCIe protocol, etc.
  • Fig. 3 illustrates an ex emplary method 300 of switching between the two modes of the smart phone 200, according to an embodiment of the present subject matter.
  • the exemplary method may be described in the general context of computer executable instructions.
  • computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types.
  • the method 300 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communications network.
  • computer executable instructions may be located in both local and remote computer storage media, including memory storage devices.
  • the smart phone 200 When the smart phone 200 is switched on, by default the mobile phone mode is activated, as shown in block 302. However, this can be changed by the user as per choice and/or requirement.
  • the user has the option of switching the smart phone 200 to the PC Mode at block 304. If the user opts noi to power on the PC Mode, the user continues to operate the smart phone 200 in the u. V .ile phone :'ode until, the user opts to power off the mobile phone, at block 326.
  • the smart phone 200 can either continue operating in the mobile phone mode, as shown in block 302 or the user can switch off the smart phone 200, as shown in block 328.
  • the smart phone 200 powers up the high configuration processor 202, as illustrated at block 306.
  • the user input may be in form of actions l ike connection to a docking station or through input facilitated by either hardware or software or both.
  • the smart phone 200 then starts the PC mode operating system i .e. operating system OS-C at block 308.
  • the smart phone 200 now operates in a PC mode with the mobile phone mode running in a very low powered state so as to keep essential functionalities such as making or rect ivirg voice calls, messages, etc., active as shown at block 3 10.
  • the PC mode is ON until such time that, at block 3 12, the user chooses to switch off the PC mode.
  • the smart phone 200 can also be configured to automatically switch off the PC mode in case of certain events like removal from the docking station, loss of external power supply, discharging of in-built power supply (not shown in figure), etc.
  • the smart phone 200 may save context of the PC Mode operating system at block 321 and proceed to hibernate the PC mode operating system at block 322 or put the PC mode operating system in standby mode at block 324 after saving the context of the PC Mode operating system at block 323..
  • the smart phone 200 shuts down the PC mode operating system, as depicted at block 320.
  • the context saving may also include context exchange which involves transferring necessary information from one operating system to another, so that the end user can continue his task without any interruption, so as to give a seamless switching experience. Context saving can be implemented by hardware or software or a combination of both.
  • the user runs the smart phone 200 in the mobile phone mode until, at block 326, he decides to switch off the smart phone 200.
  • the user can either switch off the smart phone 200, at block 328 or continue to operate the smart phone 200 in the mobile phone mode, at block 302.
  • the user can also switch on the PC mode even when the smart phone 200 is not connected to any external power supply or docking station, etc.
  • the PC mode may be operated in either full capacity at the cost of batter life or in a reduced capacity to save battery life.
  • the PC mode operating system may take control of the in-bui lt display of the smart phone 200.
  • the smart phone 200 is configured to automatically context save the PC mode operating s stem.
  • the smart phone 200 the PC mode next time in the state it was in at the time of forceful exit.
  • Fig. 4 illustrates an exemplary mechanism 400 to operate the smart phone 200 in a PC mode.
  • the smart phone 200 may be operated in the PC mode using a docking station. 402. Fcr explanatory purposes, the smart phone 200 will be used. However the same concept ' may be applied to include the various categories of handheld devices.
  • the smart phone 200 is electronically connected to the docking station 402.
  • docking stations provide a way of connecting an electronic device such as a laptop to common peripherals. Docking stations have di fferent connectors, ports, power signaling modes, etc., to connect to various devices and peripherals.
  • Some docking stations have the functionality of a charging unit, wherein the docking station is connected to an external power supply and in turn charges the in-built power source of the docked electronic device.
  • the smart phone 200 switches from the mobile phone mode to the PC mode.
  • the switching from the mobile phone mode to the PC Mode may be enabled either automatically, for example, in response to events such as being docked " n the docking station or be triggered by the user input either through hardware or nftware.
  • the docking station 402 facilitates the communication of the smart phone ⁇ OU 'vith various devices like a display unit 404, I/O devices like keyboard 406 and other peripheral(s) 408 like printers, scanners, etc;
  • the docking station 402 connected to an external power supply 410 so that the inbuilt power source of the smart phone 200 may be charged.
  • the high configuration processor 202 While in the PC mode, the high configuration processor 202 is operational at full capacity.
  • the user can use any high end application(s).
  • the smart phone 200 can be connected with the user's preferred peripherals through the docking station 402.
  • the docking station 402 supports PCIe based connection in addition to other protocols. Additionally the docking station 402 may include an internal storage unit for storage expansion.
  • the smart phone 200 switches back to the mobile phone mode.
  • the switching from the PC Mode to the mobile phone mode may occur either automatically , for example, in resp i-.si ' .- to events o jch as being undocked from the docking station or be triggered by the user input e ⁇ her through hardware or software.
  • the user may continue operating the smart phone 200 in the PC mode either at reduced performance or at rated performance at the cost of low battery li fe.
  • the docking station 402 enables the smart phone 200 to be used as a conventional workstation and hence integrates the functionalities of different categories of devices into a single smart phone 200.
  • the smart phone " 00 integrates the functionalities of a conventional computing device like laptop and a conventional communication device like mobile phone mode without compromising on fefaures.
  • the smart phone 200 can be connected, either through in-built ports or through a docking station, with external peripherals like a full size keyboard, a large screen display unit thus enabling the user to perform all tasks for which he would have normally opted for using a conventional computing device l ike desktop, workstation, laptop, etc.
  • the user can also use the smart phone 200 for making or receiving voice calls or messages.
  • the smart phone 200 is a multifunctional device, which has small dimensions and is lightweight, making it very portable.
  • PC mode optimizes power consumption and processing capability, thus enhancing battery life without compromising on processing power.
  • the smart phone 200 is also economical for the user as he has to invest in one device instead of a plurality uf conventional devices to meet his requirements.
  • the device 10' " ⁇ m itself ana in its various embodiments like smart phone 200 enhances the battery life without compromising n the processing power.
  • the device 100 minimizes hardware red ndancy by enabling sharing of peripherals among multiple operating systems running on multiple processors simultaneously. This increases the utilization of I/O devices and reduces power consumption by eliminating the need of multiple I/O devices for the same functionalities.
  • the device 1 00 and its embodiments have been described using two processors, the same concept can be applied to systems having more than two processors.

Abstract

Disclosed herein is a handheld electronic device (100), such as, smart phones optimized to enhance battery life without compromising on processing capabilities. In accordance with one embodiment of the subject matter described herein, a handheld electronic device (100) comprising a plurality of processors (102, 104), a multi-protocol multi-root input output virtualization (MPMRIOV) switch (108) electronically connected to at least one of the plurality of processors (102, 104) and a peripheral and interface virtualization unit (112) connected to the MPMRIOV switch (108) is described. The handheld electronic device (100) optimizes power consumption without compromising on processing power or features. The handheld electronic device (100) also enables simultaneous sharing of peripherals (116) and components among multiple operating systems running on the plurality of processors (102, 104) so as to reduce hardware redundancy.

Description

TECHNICAL FIELD
[0001] The present subject matter, in general, relates to electronic devices and in particular to handheld electronic devices.
B ACKGROUND
[0002] Progress in the field of semiconductor technology has reduced the size of electronic devices as well as enhanced their processing capabilities. Handheld devices can be classified into various categories, such as mobile phones, smart phones, notebooks, tablets, personal digital assistants (PDAs), multimedia players, and gaming devices. The handheld devices usually have modest power consumption, and are lightweight.
[0003] The handheld devices, such as the smart phones, often integrate functionalities of conventional computing devices and communication devices. The handheld devices may also have various modules like baseband module, bluetooth module, wireless module, and infrared module for facilitating connection with various networks and/or devices. Further the handheld devices may also include an application processor powerful enough to run various applications like e-messengers, electronic mail (e-mail) clients, Office1 M tools, audio/video playc- and recorder, etc., besides basic cellular phone functionalities like voice call, mess gin , etc. This makes the handheld device a very convenient and portable 'all-in-one' t e f device.
[0004] Still, a common issue vith the handheld device is their user input unit, which is in the form of a miniaturized keyboard or touch screen that makes the handheld device less user friendly. Further, certain applications like multimedia editing and processing, gaming, etc., require a sufficiently big display screen; a full size user interaction device l ike keyboard, mouse etc.; high processing power; and extra storage capacity than what is available in conventional handheld devices
[0005J Sometimes, additional modules may be packaged onto the handheld devices to provide the abovementioned functionalities. However, packing various types modules and applications and addition of multiple external units, for example, camera, into a single hand held device tends to make the handheld device bulky and heavy. Moreover, the additional modules increase the power consumption of the handheld device and thus reduces the battery life of the handheld devices.
SUMMARY
[0006] This summary is provided to introduce concepts related to handheld electronic devices and the concepts ai ? further described below in the detailed description. This summary is neither intended to identify essential features of the claimed subject matter nor is it intended for use in determining or limiting the scope of the claimed subject matter.
[0007] In accordance with on'e embodiment of the subject matter described herein, a handheld device is disclosed. In said implementation, the handheld device comprises a first processor, a second processor and a multi-protocol multi-root input output virtualization (MPMRIOV) switch communicatively coupled to at least one of the first processor ( 102) and the second processor ( 104). The MPMRIOV switch is further configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device, a Peripheral Component Interconnect express (PCIe) compliant peripheral device, a non PCI compliant peripheral device, and a non PCIe compliant peripheral device.
[0008] In accordance with another embodiment of the subject matter described herein, a smart phone is disclosed. Ii- said implementation, the smart phone comprises a high configuration processor and a personal computer enabler application processor unit (PCEAPU). The PCEAPU further comprises a low configuration processor and a multiprotocol multi-root input output \ irtualization (MPMRIOV) switch communicatively coupled to at least one of the high configuration processor and the low configuration processor. The MPMRIOV switch is further configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device, a Peripheral Component Interconnect express (PCIe) compliant peripheral device, a non PCI compliant peripheral device, and a non PCIe compliant peripheral device.
[0009] In accordance with another embodiment of the subject matter described herein, a method for switching operating systems in a multi-processor system is disclosed. In said implementation, the method for switching operating systems comprises receiving an input to operate a second operating system while operating a first operating system and context saving the first operating system. The method further comprises switching the first operating system to an optional low power state and operating the second operating system in a full power state.
[00010] These and other features, aspects, and advantages of the present subject matter will be better understood with reference to the following description.
BRIEF DESC RIPTION OF DRAWINGS
[00011] The detailed description i:= described with reference to the accompanying figures. In the figures, the leftmost digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the drawings to reference like features and components
[00012] Fig. 1 illustrates an exemplary handheld electronic device, according to an embodiment of the present subject matter.
[00013] Fig. 2 illustrates exemplary components of a multi-processor smart phone, according to another embodiment of the present subject matter.
[00014] Fig. 3 illustrates an exemplary method of switching between operating modes of the multi-processor smart phone, according to an embodiment of the present subject matter.
[00015] Fig. 4 illustrates an exemplary mechanism to operate the multi-processor smart phone using a docking station, according to an embodiment of the present subject matter.
DETAILED DESCRIPTION
[00016] The present subject matter relates to handheld electronic devices. Handheld electronic devices can be classified into various categories based on their functionalities, and may include the following: smart phones, audio/video players, personal digital assistants (PDAs), palmtops, mobile phones, gaming devices, digital cameras, pagers, tablets, note books, net-books, and personal navigation device. Advancement in technology has resulted in the integration of various functionalities of different categories of devices in a single handheld device like a smart phone, thereby increasing its utility.
[00017] Conventional smart phones not only support basic cellular phone features, such as voice calls and messaging, but also provide additional functionalities. For example, the smart phone may also be used as an audio/video player, audio/video recorder, digital camera, gaming unit, navigation device etc. Integration of a powerful processor in a smart phone enables a user to use features l'ke uocument editor, calculator, creation or editing of multimedia files and .file format con . ^ er.
[00018] The smart phone usually includes different modules to connect to other computing and communication devices, for example, in wired mode by using a universal serial bus (USB) cable, IEEE1394 (Firewire) cable, or in wireless mode by using Bluetooth, infra-red, Wi-Fi, general packet radio service (GPRS), etc. The smart phone may also support multiple categories of mobile communication networks, such as, global system for mobile communication (GSM) and code division multiple access (CDMA).
[00019] However, battery life, portability considerations, and form factor impose limitations on the capabilities of the smart phone as a computing or information processing device. Generally the smart phone has a smail size keyboard or touch screen with an optional stylus as user input modules. Additionally constraints on the size of the smart phone further limit the size of the display screen leading to the inconvenience of users. Further, integration of a number of mc Jules in a single smart phone tends to make the smart phone bulky and heavy and also results m lower baitery life.
[00020] The present subject matter describes a hananeld electronic device, hence forth referred to as the device that' has enhanced battery life without compromising on processing capabilities and functionalities.
[00021] The device, according to an embodiment of the present subject matter, comprises at least a first host processor, a second host processor and memory coupled to each of the host processors. In one implementation, the second host processor is implemented in a personal computer enabler application processor unit, henceforth referred to as the PCEAPU. In one implementation, the PCEAPU may be electronically connected to the first host processor. In another implementation, the second host processor may be implemented external to the PCEAPU. Further, the device may also include one or more interfaces to facilitate connection and communication with external systems, peripherals, networks, etc. In one embodiment, at least one of the interfaces facilitates connection of the device with a cellular network.
[00022] In one implementation, a high end operating system is run on the first host processor and a low end operating system is run on the second host processor. In said implementation, the high end operating system running on the first host processor has higher processing ability, more features but has higher power consumption as compared to the low end operating system running on i.he second host processor. The mode of operation of the high end operating system mc referred JO as the high power mode while that of the low end operating system may be reff i red to as low power mode. However, in another implementation, the low end operating system may be run on the first host processor and the high end operating system may be operated on the second host processor. Yet in another implementation, the same operating system may be run on both the first host processor and the second host processor, without limiting the scope of the present subject matter.
[00023] Any one of the high end operating system or the low end operating system can be designated as the primary operating system i.e. the operating system that is by default loaded onto the device when the device is booted. The device may facilitate the user, through inputs facilitated by hardware, software tools, firmware or a combination thereof, to designate and change the primary operating system as per choice and/or requirement.
[00024] The device may be configured to run either the high end operating system or the low end operating system or n<.i both the high end operating system and the low end operating system concurrently. For example, while running a high end application requiring high hardware support, the high end operating system on the first host processor may be run, whereas in case of a low-end application, the low end operating system on the second host processor may be utilized. To optimize power consumption, the device may be configured to switch from the high end operating system to the low end operating system without any data or work interruption giving the user a seamless switching experience. The switching from the high end operating system to the low end operating system and vice- versa may either be performed by the device automatically or for example in response to an external event like loss of external power source, undocking from a charging unit or a docking station, etc., or be triggered by the user input either through hardware or software or firmware or a combination thereof. However, the device may provide the user to opt for continuing in the high power mode even while running on in-built power source at the cost of reduced battery life.
[00025] In order to reduce hardware redundancy, the device facilitates the sharing of the device's resources and peripherals among the operating systems running on the first host processor and the second host processor simultaneously. The device is configured to be used with various peripherals supporting various interfacing protocols, for example, peripheral component interconnect (; C1) compliant, peripheral component interconnect express (PCle) compliant, non-PCl ;x.n: liant and > on-PCIe compliant peripherals.
[00026] For example, the device may include or may connected to various storage controllers, like Serial Advanced Technology Attachments (SATA), NAND flash memory, multimedia cards (MMC), Consumer Electronics Advanced Technology Attachment (CEATA); connectivity modules like baseband interfaces, Serial Peripheral Interfaces (SPI), Inter-integrated Circuit (I2C), Infrared Data Association (IrDA) compliant devices; media controllers like camera, Integrated Inter-chip Sound (I2S); media accelerators like audio encode-decode engines, video encode-decode engines, graphics accelerator; security modules like encryption engines, key generators, etc.
[00027] It will be appreciated that the concepts explained in context of handheld devices may be extended to various other electronic devices, for example a laptop. Though the device has been described as having two processors, it should be appreciated that the present subject matter can be extended to device having more than two processors. These and other features and advantages the device will be further described in conjunction with the following figures and embodiments.
[00028] Fig. 1 shows the exemplary components of a handheld device 100, according to an embodiment of the present subject matter. The handheld device, henceforth referred to as the device 100 comprises a first host processor 102, a second host processor 104. The first host processor 102 and the second host processor 104 are coupled to a first memory 106-1 and a second memory 106-2,• cspectively.
[00029] The first host processor 102 and the second host processor 104 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, or any devices that manipulate signals based on operational instructions. Among other capabilities, the first host processor 102 and the second host processor 104 can be configured to fetch and execute computer-readable instructions and data stored in either of the first memory 106- 1 or the second memory 106-2.
[00030] The first memory 106-1 and the second memory 106-2 can include any computer-readable medium known in the art including, for example, volatile memory (e.g., RAM) and/or non-volatile memory (e.g., flash, etc.). The first memory 106-1 and the second memory 106-2 may include module and data. The module usually includes routines, programs, objects, components, d ¾- structure, etc., that perform particular task or implement particular abstract data typ s.
[00031] When the device 100 if, booted, a primary operating system is loaded. In one example, the first operating system, referred to as operating system OS-A, running on the first host processor 102 may be designated as the primary operating system while the second operating system, referred to as operating system OS-B, running on the second host processor 104 is treated as the secondary operating system. I f multiple operating systems are present, the device 100 may be configured to facilitate the user to designate any of the operating system as the primary operating system. The user may change the primary operating system according to choice and/or requirement. The device 100 may be further configured to facilitate the user to switch from one operating system to another operating system seamlessly. The device 100 can concurrently run multiple operating systems on the first host processor 102 and the second hojt processor 104.
[00032] In one implementation, the device 100 includes a multi-protocol multi-root input output virtual ization (MPMRIOV) switch 108, which facilitates communication of the device 100 with connected peripheries 1 16-1 , 1 16-2,.... 1 16-N, collectively referred to as peripherals 1 16. It may be mentioned that Peripheral Component Interconnect Special Interest Group (PC1-SIG), an electronics industry consortium responsible for specifying the Peripheral Component Interconnect ν^' Ί) and Per ipheral Component Interconnect Express (PCIe) computer buses, states multi-rocv input output virtualization (MRIOV) as the industry standard for enabling virtualization of peripherals among multiple processors.
[00033] In one implementation, the MPMRIOV switch 108 comprises an adaptation unit 1 10, which facilitates the communication of the peripherals 1 16 with at least one of the first processor 102 and the second processor. The peripherals 1 16 may also inlcude non-PCI or non-PCIe compliant peripherals. A peripheral and interface virtualization unit 1 12 is coupled to a plurality of peripheral controllers 1 14- 1 , 1 14-2,.... 1 14-N, collectively referred to as peripheral controllers 1 14. The peripheral and interface virtualization unit 1 12 helps in virtualization of the physical devices and facilitates simultaneous sharing of devices, like printers, keyboard, mouse, display unit, etc., among multiple operating systems or multiple processors. In one embodiment, the device 100 may also include a inter processor communication unit (IPC) ((222) shown in Figure 2) which enables communication between plurality of the processors. ."V device I Ct may also include other components 120 required to provide additional functionalii s to the device 100.
[00034] In one embodiment of the device 100, the functionality of MPMROI V switch 108, relating to communication with PCI, PCIe, non-PCI and non-PCIe compliant peripheral devices 1 16 may be attributed to the PIVU 1 12. Accordingly, in said embodiment, the device 100 comprises the MPMRIOV switch 108 communicatively coupled to at least one of the first processor 102 and the second processor 104 and the PIVU 1 12 coupled to the MPMRIOV switch 108 wherein the PIVU 1 12 is configured to communicate with PCI, PCIe, non-PCI and non-PCIe compliant peripheral devices 1 16. Further, in said embodiment, the device 100 also includes the IPC 222 configured to exchange one or more message between at first processor 102 and the second processor 104.
[00035] The peripherals 1 16 cai . be configured to be used exclusively by either of the first host processor 102 or the secord host processor 104 or by both the first host processor 102 and the second host processor 104 simultaneously. Additionally the device 1 00 may also include one or more interfaces 1 18 to connect to external network, systems, devices, etc.
|00036] In the afore going description, although the device 100 has been depicted as a two processor system, it should be appreciated the same can be extended to a system having a plurality of processors.
[00037] Fig. 2 illustrates an exemp lary multi-processor smart phone 200, according to an embodiment of the current system. In this embodiment, the device 100 is embodied as the smart phone 200 and it will be appreciated that the concepts explained in context thereof may be extended to such an embodiment.
[00038] In one implementation, the smart phone 200 comprises a high configuration processor 202, a memory 204 coupled to the high configuration processor 202, a low configuration processor 206, various memory units like a static random access memory 208, stacked memory 210 coupled to the low configuration processor 206 via a memory controller 212, the MPMRIOV switch 108, having the adaptation unit 1 10. one or more hardware accelerator(s) 214, the peripheral and interface virtualization unit (PIVU) 1 12. Further a plurality of peripheral controllers 1 14- 1 , 1 14-2,.... 1 14-N, system related module(s) 216 like encryption engine*: may also be incorporated in the smart phone 200. In the said embodiment, the smart pho'.,- .' 00 has at 1 ist one PCIe expansion port 21 8.
[00039] The smart phone 200 may include at least o e interface 22 1 to connect to mobile communication networks, a riorth bridge 220, a first display adapter 224- 1 and a second display adapter 224-2 coupled to the high configuration processor 202 and the low configuration processor 206 respectively. The smart phone 200 further includes a display selector 226 to facilitate data flow from the first display adapter 224- 1 and the second display adapter 224-2 to a display unit (not shown in figure). The smart phone 200 may include other modules (not shown in figure) that enable the smart phone 200 to connect to other devices or network via Bluetooth, infra-red, wireless local area network (WLAN ).
Wi-Fi, etc. In other embodiments, the smart phone 200 may connect to a plurality of peripherals 1 16- 1 , 1 16-2, .... 1 16-N, collectively referred to as peripherals 21 5 via a plurality of peripheral controllers 1 14- 1 , 1 14-2, .... 1 14-N, collectively referred to as peripheral controllers 1 14. For example, peripherals 1 16 may include other components. like camera, audio/video recorder, global positioning system (GPS), universal serial bus (USB) ports, card reader(s), display units, software tools, etc. In one example, the smart phone 200 may include a display mux to facilitate connection with an external display unit.
[00040] The various components of the smart phone 200 may be integrated in a single chip known as personal computer enabler application unit (PCEAPU) 228. The high configuration processor 202 can be pl ciceu on the same board as the PCEAPU 228 or on a different board or on a different unil r- an add-or device or as a part of a docking station. The high configuration processor 202 can ¾lso be integrated with the PCEAPU 228.
[00041] The high configuration processor 202 runs a high end operating system, operating system OS-C, whereas the low configuration processor 206 runs a low end operating system, namely, operating system OS-D. The operating system OS-D may provide support for the interface(s) 221 facilitating connection of the interface(s) 212 to a cellular network. The smart phone 200 may also include an in-built power source, like rechargeable batteries (not shown in figure), which can be charged using a power adapter, a docking station, etc. The PCEAPU 228 includes an inter processor communication (IPC) unit 222 configured to exchange messages between the first host processor 202 and second host processor 206.
[00042] In one embodiment, when the smart phone 200 is switched on, the low end operating system OS-D is loaded to o,)er?te the smart phone 200 in a mobile phone mode. In the mobile phone mode the j<na>'f phone 200 possess all the functionalities of a conventional cellular phone like connecting to a cellular net work, support for voice calls, messaging, etc. The smart phone 200 may also run various other utilities like alarm clock, calendar, music player, etc., prevalently available in handheld electronic devices. Since the operating system OS-D runs on the low configuration processor 206, power consumption of the smart phone 200is reduced resulting in higher battery life. Further, the operating system OS-D provides support for all conventional cellular phone functions like connecting to at least one mobile communication network, multimedia messaging, short messaging service, voice calls, etc. Additionally, the smart phone 200 may also support applications like metric converters, document editors, electronic mail client, e-messengers, social networking applications, etc. Optionally the high end operating system can also be run, when the smart phone 200 is running on battery at the cost of reduced battery life.
[00043] However, when the smart phone 200 is connected to an external power supply, either through a docking station or by being plugged in to a power supply, the smart phone 200 may configured to boot the high end operating system, OS-C, on the high configuration processor 202. In one embodiment, operating system OS-C is loaded based on a user input. This mode of operation of the smart phone 200 is known as the PC Mode. The PC Mode supports high end applications which require more processing power and higher system resources. In PC Mode 'Ι! ; smart phone 200 has the processing power and all the features present in a conventional computing device like laptop, etc. In the PC Mode, the smart phone 200 supports connection to external peripherals, like an external visual display unit, either through in-built ports or through a docking station (not shown in figure).
[00044] While in PC Mode, operating system OS-C renders the cellular phone functionalities dormant so as to use very low power, while at the same time keeping certain pre-configured functionalities like receiving or making voice calls, etc., active. For example, the smart phone 200, while operating in the PC mode, may be connected to one or more mobile communication networks. Examples of such mobile communication networks include but are not limited to, Global System for Mobile Communication (GSM) network. Universal Mobile Telecommunications System (UMTS) network, Personal Communications Service (PCS) network, Time Division Multiple Access (TDMA) network, Code Division Multiple Ac cess (CDMA) network, Next Generation Network (NGN), IP-based network, Public Switched Telephone Network (PSTN), and Integrated Services Digital Network (ISDN). The smart phone 200 also has facility of sharing of components among the high configuration processor 202 and the low configuration processor 206. For example, say the user is watching a video in the PC Mode which uses the display unit and the audio unit of the smart phone 200. In said example, in case of an incoming call, the mobile phone mode may take over the control of either of the display unit and the audio unit or both the display unit and the audio unit so as to notify the user of the incoming call. [00045] Further, while in the PC Mode, if the user receives a message or a call, the smart phone 200 can be configured to automatically switch to the mobile phone mode so as to facilitate the user to receive the call or the message. This allows a user greater convenience, for example of disconnecting from the docking station to allow mobility. The switching between the mobile phone mode and the PC mode of the smart phone 200 is elaborated later in the description. However, in one configuration, the smart phone 200, while in the PC Mode, may be configured to ignore events occurring in the mobile phone mode, like an incoming call. The sm rt phone 200 may also be configured to completely shutdown the mobile phone mode so ...s to facilitate the use of the smart phone 200 as a conventional computing device like laptop, for instance in areas where usage of a communication device, like cellular hone, is not allowed like during flights.
[00046] In another embodiment, the smart phone 200 can switch off the low configuration processor 206 and configure the high configuration processor 202 to perform the tasks of the low configuration processor 204 as well. In another embodiment the smart phone 200 may have a single high configuration processor, which is run at rated capacity in PC mode and can be throttled down while operating in the mobile phone mode. In such embodiments, certain components, as shown in Fig. 2, may become redundant and additionally certain components may have to be added. For example, the MPMRIOV Switch 108 may be replaced by a conventional PCIe switch and devices supporting PCIe protocol, etc.
[00047] Fig. 3 illustrates an ex emplary method 300 of switching between the two modes of the smart phone 200, according to an embodiment of the present subject matter. The exemplary method may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types. The method 300 may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, computer executable instructions may be located in both local and remote computer storage media, including memory storage devices. [00048] The order in which ihe method 300 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method, or an alternative method. Additionally, individual blocks may be deleted from the method 300 without departing from the spirit and scope of the subject matter described herein. Furthermore, the method 300 can be implemented in any suitable hardware, software, firmware, or combination thereof. In accordance with one embodiment, the method 300 is explained in context of the smart phone 200 although the method 300 may be implemented in different devices.
[00049] When the smart phone 200 is switched on, by default the mobile phone mode is activated, as shown in block 302. However, this can be changed by the user as per choice and/or requirement. The user has the option of switching the smart phone 200 to the PC Mode at block 304. If the user opts noi to power on the PC Mode, the user continues to operate the smart phone 200 in the u. V .ile phone :'ode until, the user opts to power off the mobile phone, at block 326. Depending on the user response, the smart phone 200 can either continue operating in the mobile phone mode, as shown in block 302 or the user can switch off the smart phone 200, as shown in block 328.
[00050] However, at block 304, if the user input indicates that the PC mode should be initiated, the smart phone 200 powers up the high configuration processor 202, as illustrated at block 306. For example, the user input may be in form of actions l ike connection to a docking station or through input facilitated by either hardware or software or both.
[00051] The smart phone 200 then starts the PC mode operating system i .e. operating system OS-C at block 308. The smart phone 200 now operates in a PC mode with the mobile phone mode running in a very low powered state so as to keep essential functionalities such as making or rect ivirg voice calls, messages, etc., active as shown at block 3 10.
[00052] The PC mode is ON until such time that, at block 3 12, the user chooses to switch off the PC mode. In one embodiment, the smart phone 200 can also be configured to automatically switch off the PC mode in case of certain events like removal from the docking station, loss of external power supply, discharging of in-built power supply (not shown in figure), etc. Once the user ch oses to power off the PC Mode, he is provided the option of either hibernating the PC mode operating sysi m or putting the PC mode operating system in a standby mode i t blocks 314 and 3 16 respectively. I f the user opts for either of the above options, the smart phone 200 may save context of the PC Mode operating system at block 321 and proceed to hibernate the PC mode operating system at block 322 or put the PC mode operating system in standby mode at block 324 after saving the context of the PC Mode operating system at block 323.. In case the user does not opt for either of the options depicted at blocks 312 and 314 the smart phone 200 shuts down the PC mode operating system, as depicted at block 320. In one embodiment, the context saving may also include context exchange which involves transferring necessary information from one operating system to another, so that the end user can continue his task without any interruption, so as to give a seamless switching experience. Context saving can be implemented by hardware or software or a combination of both.
[00053] After shutting down the PC Moue operating system, at block 320, or hibernating the PC Mode operating system, at block 322, or putting the PC Mode operating system in a standby mode, at block )24, the user runs the smart phone 200 in the mobile phone mode until, at block 326, he decides to switch off the smart phone 200. Upon choosing to switch off the PC Mode, the user can either switch off the smart phone 200, at block 328 or continue to operate the smart phone 200 in the mobile phone mode, at block 302. The user can also switch on the PC mode even when the smart phone 200 is not connected to any external power supply or docking station, etc. In this scenario, the PC mode may be operated in either full capacity at the cost of batter life or in a reduced capacity to save battery life. The PC mode operating system may take control of the in-bui lt display of the smart phone 200.
[00054] In one embodiment, the smart phone 200 is configured to automatically context save the PC mode operating s stem. Thus, in the case of user exiting the PC mode forcefully, the smart phone 200
Figure imgf000016_0001
the PC mode next time in the state it was in at the time of forceful exit.
[00055] Fig. 4 illustrates an exemplary mechanism 400 to operate the smart phone 200 in a PC mode. In one embodiment, the smart phone 200 may be operated in the PC mode using a docking station. 402. Fcr explanatory purposes, the smart phone 200 will be used. However the same concept 'may be applied to include the various categories of handheld devices. The smart phone 200 is electronically connected to the docking station 402. In general, docking stations provide a way of connecting an electronic device such as a laptop to common peripherals. Docking stations have di fferent connectors, ports, power signaling modes, etc., to connect to various devices and peripherals. Some docking stations have the functionality of a charging unit, wherein the docking station is connected to an external power supply and in turn charges the in-built power source of the docked electronic device.
[00056] When the smart phone 200 is docked in the docking station 402, the smart phone 200 switches from the mobile phone mode to the PC mode. The switching from the mobile phone mode to the PC Mode may be enabled either automatically, for example, in response to events such as being docked "n the docking station or be triggered by the user input either through hardware or nftware. The docking station 402 facilitates the communication of the smart phone ^OU 'vith various devices like a display unit 404, I/O devices like keyboard 406 and other peripheral(s) 408 like printers, scanners, etc; The docking station 402 connected to an external power supply 410 so that the inbuilt power source of the smart phone 200 may be charged.
[00057] While in the PC mode, the high configuration processor 202 is operational at full capacity. The user can use any high end application(s). For convenience of the user, the smart phone 200 can be connected with the user's preferred peripherals through the docking station 402. The docking station 402 supports PCIe based connection in addition to other protocols. Additionally the docking station 402 may include an internal storage unit for storage expansion.
[00058] On being undocked, the smart phone 200 switches back to the mobile phone mode. The switching from the PC Mode to the mobile phone mode may occur either automatically , for example, in resp i-.si'.- to events o jch as being undocked from the docking station or be triggered by the user input e^her through hardware or software. Alternatively, the user may continue operating the smart phone 200 in the PC mode either at reduced performance or at rated performance at the cost of low battery li fe. Thus, the docking station 402 enables the smart phone 200 to be used as a conventional workstation and hence integrates the functionalities of different categories of devices into a single smart phone 200.
[00059] The smart phone "00 integrates the functionalities of a conventional computing device like laptop and a conventional communication device like mobile phone mode without compromising on fefaures. The smart phone 200 can be connected, either through in-built ports or through a docking station, with external peripherals like a full size keyboard, a large screen display unit thus enabling the user to perform all tasks for which he would have normally opted for using a conventional computing device l ike desktop, workstation, laptop, etc. On the other hand, the user can also use the smart phone 200 for making or receiving voice calls or messages. Thus, the smart phone 200 is a multifunctional device, which has small dimensions and is lightweight, making it very portable. Various modes of operations like mobile phone mode, PC mode optimizes power consumption and processing capability, thus enhancing battery life without compromising on processing power. The smart phone 200 is also economical for the user as he has to invest in one device instead of a plurality uf conventional devices to meet his requirements.
[00060] Thus the device 10'"· m itself ana in its various embodiments like smart phone 200, enhances the battery life without compromising n the processing power. The device 100 minimizes hardware red ndancy by enabling sharing of peripherals among multiple operating systems running on multiple processors simultaneously. This increases the utilization of I/O devices and reduces power consumption by eliminating the need of multiple I/O devices for the same functionalities. Though the device 1 00 and its embodiments have been described using two processors, the same concept can be applied to systems having more than two processors.
[00061 ] Although implementations of handheld electronic devices have been described in language specific to structural features and/or methods, it is to be understood that the present subject matter is not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as exemplary implementations for handheld electroi -c devices.

Claims

I/We Claim:
1. A handheld device ( 100) comprising:
a first processor ( 102);
a second processor ( 104); and
a multi-protocol multi-root input output virtualization (MPMRIOV) switch 108 communicatively coupleo to at least one of the first processor ( 1 02) and the second processor ( 104),
Figure imgf000019_0001
the Mi'VlRIOV switch ( 108) is configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device 1 16), a Peripheral Component Interconnect express (PCIe) compliant peripheral device ( 1 16), a non PCI compliant peripheral device ( 1 16), and a non PCIe compliant peripheral device ( 1 16).
2. The handheld device ( 100) as claimed in claim 1 , wherein the handheld device ( 100) is at least one of a smart phone, a tablet, a net-book, and a personal digital assistant.
3. The handheld device ( 100) as claimed in claim 1 , wherein the first processor ( 102) and the second processor ( 104) are at least one of homogeneous and heterogeneous processors.
4. The handheld device ( 100) as claimed in claim 1 , wherein the first processor ( 1 02) is configured to run a high end operating system (HE-OS) and the second processor ( 104) is configured to run a low er.J operating system (LE-OS).
5. The handheld device ( 100) ι· ζ , 'aimed in 'aim 4, wherein the HE-OS and the LE- OS are at least one of homog ieo .^. and heterogeneous operating systems.
6. The handheld device ( 100) as claimed in claim 4, wherein at least one of the HE-OS and the LE-OS is configured to operate in a low power state based in part on at least one of a trigger and a user input.
7. The handheld device ( 1 00) as claimed in claim 6, wherein the trigger includes at least one of a power state of the handheld device ( 100) and a docking status of the handheld device ( 100).
8. The handheld device ( 100) as claimed in claim 4, wherein the handheld device ( 100) is further configured to context save the HE-OS for switching from the HE-OS to the LE-OS on detecting a power level of the handheld device ( 100) to be below a pre-defined threshold power level.
9. The handheld device ( 100) as claimed in claim 1 , further comprising a root port configured to be communicatively coupled to a docking station (402), wherein the docking station (402) connects the handheld device ( 100)to at least one of a power source, a display unit and the at least one peripheral device ( 1 1 6).
10. The handheld device ( 1 00) as claimed in claim 9, wherein the MPMRIOV switch ( 108) is further configured to switch from a low end operating system to a high end operating system on detecting a communicative coupling with the docking station (402).
1 1 . The handheld device ( 100) as cl> imed in claim 10, wherein the switching further comprises at least enabling sharing of the at least one peripheral device ( 1 1 6).
12. The handheld device ( 100) as claimed in claim 1 1 , wherein the MPMRIOV switch ( 108) is further configured to operate of the handheld device ( 100) in at least one of a personal computer (PC) mode and a mobile mode, and wherein the PC mode of operation supports communication of the handheld device ( 100) with at least one mobile communication network.
13. The handheld device ( 100) as claimed in claim 1 , wherein at least one of the first processor ( 102) and the second processor ( 104) is configured to exclusively control the at least one peripheral device ( 1 16).
14. The handheld device ( 100) as claimed in claim 1 , wherein the handheld device ( 100) is further configured to switch ownership of the at least one peripheral device ( 1 16) from the first processor ( 102 th^ second processor ( 1 04) based in part on at least one of an user input, a systei . generated trigger, a request generated by at least one operating system, a request generated by at least one application software and an operation mode.
15. A smart phone (200) comprising:
a high configuration processor (202);
a personal computer enabler application processor unit (PCEAPU) 228, wherein the PCEAPU 228 comprises:
a low configuration processor (206); and
a multi-protocol multi-root input output virtualization (MPMRIOV) switch 108 communicatively coupled to at least one of the high configuration processor (202) and the low configuration processor (206), wherein the MPMRIOV switch (108) is configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device ( 1 16), a Peripheral Component Interconnect express (PCIe) compliant peripheral device ( 1 16), a non PCI compliant peripheral device ( 1 16), and a non PCIe compliant peripheral device ( 1 16).
16. A method for switching operating systems in a multi-processor system comprising:
receiving an input to operate a second operating system while operating a first operating system;
context saving the first .~>pe-ating system; and
operating the second operating system in a full power state.
17. The method as claimed in claim 16 further comprising switching the first operating system to a low power state, //herein the low power state includes at least one of a stand by mode, a hibernation mode and a shutdown mode.
1 8. The method as claimed in claim 1 7, wherein the switching further comprises transferring an ownership of at least one peripheral device from the first operating system to the second operating system.
19. The method as claimed in claim 16, wherein the input comprises at least one of a trigger and a user input, wherein the trigger comprises at least one of a power state of the multi-processor system and a docking status of the multi-processor system.
20. The method as claimed in claim 16, wherein the context saving further comprises context exchange, such that the context exchange includes transfer of information from the first operating system to the second operating system faci litating seamless application migration fro th first operating system to the second operating system.
21 . A handheld device ( 100) comprising:
a first processor ( 102);
a second processor ( 104); and
a multi protocol multi-root input output virtualization (MPMRIOV) switch ( 108) communicatively coupled to at least one of the first processor ( 102) and the second processor ( 104); a peripheral and interface virtualization unit (PIVU) (112) coupled to the MPMRIOV switch (108), wherein the PIVU (112) is configured to communicate with at least one of a Peripheral Component Interconnect (PCI) compliant peripheral device (116), a Peripheral Component Interconnect express (PCIe) compliant peripheral device (116), a non PCI compliant peripheral device (116), and a non PCIe compliant peripheral device (116); and
an Inter Processor Communication unit (IPC) 222 coupled to the PIVU (112), wherein the IPC 222 is configured to exchange one or more message between at least the first processor (102) and the second processor (104).
PCT/IN2011/000557 2010-08-19 2011-08-19 Handheld electronic devices WO2012023150A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN2396CH2010 2010-08-19
IN2396/CHE/2010 2010-08-19

Publications (3)

Publication Number Publication Date
WO2012023150A2 true WO2012023150A2 (en) 2012-02-23
WO2012023150A3 WO2012023150A3 (en) 2012-06-07
WO2012023150A4 WO2012023150A4 (en) 2012-07-19

Family

ID=45605481

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IN2011/000557 WO2012023150A2 (en) 2010-08-19 2011-08-19 Handheld electronic devices

Country Status (1)

Country Link
WO (1) WO2012023150A2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9411765B2 (en) 2013-12-20 2016-08-09 Qualcomm Incorporated Methods of using a peripheral component interconnect express (PCIE) device in a virtual environment
US10324731B2 (en) 2015-09-08 2019-06-18 Shenzhen Skyworth-Rgb Electronic Co., Ltd Multimode startup method for intelligent device and the system thereof
US10437591B2 (en) 2013-02-26 2019-10-08 Qualcomm Incorporated Executing an operating system on processors having different instruction set architectures
US11194740B2 (en) 2015-12-02 2021-12-07 Advanced Micro Devices, Inc. System and method for application migration for a dockable device
US11520598B2 (en) * 2020-07-01 2022-12-06 Anthony Donte Ebron Multi-processor mobile computing device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7461275B2 (en) * 2005-09-30 2008-12-02 Intel Corporation Dynamic core swapping
US20090106571A1 (en) * 2007-10-21 2009-04-23 Anthony Low Systems and Methods to Adaptively Load Balance User Sessions to Reduce Energy Consumption
US7555662B2 (en) * 2005-03-15 2009-06-30 Ricoh Company Limited Two controller communication control apparatus with power-saving control and power-saving control method
US20100146317A1 (en) * 2008-12-08 2010-06-10 Lenovo (Singapore) Pte, Ltd. Apparatus, System, and Method for Power Management Utilizing Multiple Processor Types
US7743197B2 (en) * 2006-05-11 2010-06-22 Emulex Design & Manufacturing Corporation System and method for virtualizing PCIe devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555662B2 (en) * 2005-03-15 2009-06-30 Ricoh Company Limited Two controller communication control apparatus with power-saving control and power-saving control method
US7461275B2 (en) * 2005-09-30 2008-12-02 Intel Corporation Dynamic core swapping
US7743197B2 (en) * 2006-05-11 2010-06-22 Emulex Design & Manufacturing Corporation System and method for virtualizing PCIe devices
US20090106571A1 (en) * 2007-10-21 2009-04-23 Anthony Low Systems and Methods to Adaptively Load Balance User Sessions to Reduce Energy Consumption
US20100146317A1 (en) * 2008-12-08 2010-06-10 Lenovo (Singapore) Pte, Ltd. Apparatus, System, and Method for Power Management Utilizing Multiple Processor Types

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10437591B2 (en) 2013-02-26 2019-10-08 Qualcomm Incorporated Executing an operating system on processors having different instruction set architectures
US9411765B2 (en) 2013-12-20 2016-08-09 Qualcomm Incorporated Methods of using a peripheral component interconnect express (PCIE) device in a virtual environment
US10324731B2 (en) 2015-09-08 2019-06-18 Shenzhen Skyworth-Rgb Electronic Co., Ltd Multimode startup method for intelligent device and the system thereof
US11194740B2 (en) 2015-12-02 2021-12-07 Advanced Micro Devices, Inc. System and method for application migration for a dockable device
US11726926B2 (en) 2015-12-02 2023-08-15 Advanced Micro Devices, Inc. System and method for application migration for a dockable device
US11520598B2 (en) * 2020-07-01 2022-12-06 Anthony Donte Ebron Multi-processor mobile computing device

Also Published As

Publication number Publication date
WO2012023150A3 (en) 2012-06-07
WO2012023150A4 (en) 2012-07-19

Similar Documents

Publication Publication Date Title
US8938568B2 (en) Multi-processor electronic systems
KR101832953B1 (en) Remote wakeup of application processor of mobile device
JP6080984B2 (en) Utilize one interconnect protocol enumeration and / or configuration mechanism for different interconnect protocols
US8479031B2 (en) System switching unit having a switch to switch on/off a channel for data interaction between a first system and the bus interface of a second system according to the operation state of the second system
US9804857B2 (en) Method and apparatus for multi-mode mobile computing devices and peripherals
KR101402141B1 (en) Apparatus and methods for usb connection in a multi-processor device
EP2619679B1 (en) System and method for facilitating wireless communication during a pre-boot phase of a computing device
KR20090091343A (en) Intergrated communication and information processing system
US9766683B2 (en) Interconnect to communicate information uni-directionally
WO2007098424A2 (en) System and method for multi-processor application support
KR20170034423A (en) Power management for memory accesses in a system-on-chip
WO2012023150A2 (en) Handheld electronic devices
WO2012027991A1 (en) Method, device and system for bidirectional wake-up based on universal serial bus
TWI593263B (en) Apparatus, system and method for sharing physical layer logic across multiple protocols
CN102929713A (en) Loosely coupled heterogeneous multi-core processing system supporting parallelism of multiple operating systems
CN114817120A (en) Cross-domain data sharing method, system-on-chip, electronic device and medium
CN101051242A (en) Power supply control method and device for computer system
WO2020068319A1 (en) System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail
US8832346B2 (en) Data packing and unpacking engine
WO2012167520A1 (en) Automatic control method and system for power consumption
Johnson et al. Optimising energy management of mobile computing devices
US9317455B2 (en) Virtual switching of information handling device components
KR101273460B1 (en) Method for transferring data between virtual machines, and user terminal with the function of transferring data between virtual machines
KR20050106279A (en) Apparatus for supplying power using detection of external port
TW201248502A (en) Notebook computer with dual display

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11817870

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11817870

Country of ref document: EP

Kind code of ref document: A2