GPIO Subsystem Priority Arbitration for Microprocessor Pin Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of microprocessors and System on Chip (SoC) devices requires efficient use of limited physical space for inputs and outputs, but existing GPIO pin management systems face challenges such as ambiguity in pin states, glitches, and the inability to execute SET and CLR tasks simultaneously without CPU involvement, limiting speed and flexibility.

Innovation Solution

An integrated circuit microprocessor device with a GPIO subsystem that applies a predetermined priority to conflicting requests from multiple tasks, allowing simultaneous access to GPIO connections while managing external connections through a buffer or ignoring non-prioritized signals, enabling flexible and efficient pin management without CPU intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple tasks are allowed to access GPIO connections simultaneously, then productivity and flexibility are improved, but pin state ambiguity and glitches occur

Engineering Contradiction:
ImproveGPIO operation speedVSAvoidpin state clarity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

An intermediary priority management module is introduced between multiple tasks and the GPIO subsystem. This module receives task requests, applies predetermined priority rules to resolve conflicts, and ensures only one task controls the GPIO pin at any moment, preventing state ambiguity while maintaining high-speed operation

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system dynamically allocates GPIO pin control rights based on task priority and current pin allocation state. The priority management module continuously monitors and adjusts task access rights, allowing flexible simultaneous access when no conflict exists while preventing conflicts when multiple tasks seek control

Inventive Principle:
Principle #15Dynamics

2Reliability

If GPIO pins are dedicated to specific functions, then reliability is improved, but device complexity and pin count requirements increase

Engineering Contradiction:
Improvefunction assignment clarityVSAvoidpin management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

GPIO pins are designed to be universal and dynamically reconfigurable rather than dedicated to specific functions. The priority management system enables any task to request and control any GPIO pin, allowing the same physical pin to serve multiple different functions across different applications and time periods

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

Solution Approach 2:

The GPIO subsystem and priority management module operate autonomously without requiring CPU intervention for task switching and conflict resolution. The system self-manages pin allocation, state tracking, and task prioritization, reducing overall system complexity while maintaining reliability

Inventive Principle:
Principle #25Self-service

3Reliability

If CPU involvement is required for task switching on GPIO pins, then pin state control is improved, but speed and power efficiency deteriorate

Engineering Contradiction:
Improvepin state controlVSAvoidtask execution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The CPU is extracted from the GPIO task management process. The priority management module and GPIO subsystem handle task switching, conflict resolution, and pin control independently, allowing high-speed operation without CPU intervention while maintaining reliable pin state control through the intermediary priority module

Inventive Principle:
Principle #2Taking out (Extraction)

4Adaptability or versatility

If the number of GPIO pins is increased to meet functional demands, then adaptability is improved, but physical device size increases

Engineering Contradiction:
Improveinput/output capabilityVSAvoiddevice footprint
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

Each GPIO pin is designed to be universally controllable by any task through the priority management system, maximizing the functional capability of each individual pin. This eliminates the need for additional dedicated pins for different functions, achieving high adaptability with a limited number of physical pins

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

Solution Approach 2:

Multiple task control requirements are merged into a single priority management framework that arbitrates access to shared GPIO pins. Instead of requiring separate pins for each task's control needs, the system combines multiple control streams and manages them through priority-based arbitration, reducing the total pin count required

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11048653B2Integrated circuit inputs and outputs
Publication Date: 2021.06.29 NORDIC SEMICONDUCTOR
  • US11048653B2 patent drawing

AI summary

An integrated circuit microprocessor device comprises a central processing unit (CPU) and a general purpose input or output subsystem (2) having at least one external connection (4). The external connection is configured to provide an input to or output from the device depending upon an associated setting in the general purpose input or output subsystem. At least one further module on the device is configured to be able to request at least a first or a second task which may control a state of the external connection, the general purpose input or output subsystem being configured, upon receipt of conflicting requests for the first and second tasks, to apply a predetermined priority to allow only one of the tasks to be applied to the external connection.