Portable Device IO Processor Channel Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing Android system architecture for portable devices requires separate hardware drivers for each I/O component, leading to different software errors that need distinct resolutions, making it time and manpower-intensive to manage and control various I/O components during the product development stage.

Innovation Solution

A portable device architecture featuring a main processor, an IO processor, and a channel port with multiple channels, where the main processor transmits commands to the IO processor and releases the channel after processing, allowing for efficient management and control of I/O components, thereby reducing the load on the main processor and decreasing power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If separate hardware drivers are used for each I/O component in the Android system, then each I/O component can be controlled independently, but the system complexity increases and requires different software error resolutions for each driver

Engineering Contradiction:
ImproveI/O component control capabilityVSAvoiddriver management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system is segmented into three distinct layers: application layer, channel layer, and device driver layer. Each I/O component has its own channel object that acts as an intermediary, separating the complexity of individual driver management from the application layer. This segmentation allows independent control of each I/O component while centralizing error handling at the channel layer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The channel object serves as an intermediary between the application layer and device driver layer. It abstracts the complexity of hardware-specific drivers, providing a unified interface for I/O operations. The channel layer handles software error resolution centrally, eliminating the need for applications to manage multiple different driver error protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If the main processor handles all I/O operations directly, then control is centralized, but the main processor load increases and power consumption rises

Engineering Contradiction:
ImproveI/O operation controlVSAvoidmain processor power consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The processing responsibilities are segmented between the main processor and IO processor. The main processor handles high-level application logic, while the IO processor manages I/O operations and channel management. This segmentation allows the main processor to enter idle or sleep modes during I/O operations, reducing power consumption while maintaining centralized control through the channel layer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The IO processor acts as an intermediary that handles I/O operations on behalf of the main processor. It manages the channel port and coordinates with device drivers, allowing the main processor to remain idle during I/O transactions. The channel layer provides the control interface, enabling centralized management without continuous main processor involvement.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If a unified control method is used for all I/O components, then development time and manpower are reduced, but the ability to handle hardware-specific variations may be compromised

Engineering Contradiction:
Improvedevelopment efficiencyVSAvoidhardware compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The channel layer provides a universal control interface that works across all I/O components regardless of their specific hardware. The standard channel operations (open, close, read, write, etc.) can be used uniformly for different device types. This universality streamlines development while the underlying channel objects maintain hardware-specific implementations for compatibility.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

While the channel layer provides uniform control, each channel object is customized for its specific I/O component with hardware-appropriate parameters and error handling. The device driver layer maintains hardware-specific optimizations and compatibility, allowing the system to use a unified control method while preserving hardware-specific capabilities through localized adaptations in the channel implementations.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP2998871B1Portable device and control method therefor
Publication Date: 2017.08.16 HTC CORP
  • EP2998871B1 patent drawingFigure 1
  • EP2998871B1 patent drawingFigure 2A
  • EP2998871B1 patent drawingFigure 2B

AI summary

A portable device provided includes a main processor, an IO processor, a channel port coupled between the main processor and the IO processor, and at least one I/O component coupled to the IO processor. The channel port includes a plurality of channels. The main processor and the IO processor are configured to occupy one of the channels for transmitting a first command therebetween and release the occupied channel after a process is performed according to the first command.