Smart Bridge Address Range Decomposition for Memory Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current bus protocols, such as PCI Express and next-generation MXI bus, face inefficiencies in address range allocation due to power of two size and alignment restrictions, leading to resource fragmentation and increased allocation requirements.
Innovation Solution
A smart bridge system is introduced that decomposes forwarding address ranges into endpoint representations with power of two multiple sizes, aligned with specified minimum sizes, allowing for efficient allocation and routing of virtual memory resources across devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If forwarding address ranges are allocated with power of two size and alignment restrictions, then device compatibility and standard compliance are improved, but memory resource utilization deteriorates due to fragmentation and wasted allocation
Solution Approach 1:
The patent segments a large forwarding address range into multiple smaller sub-ranges, each allocated to different virtual devices. This segmentation allows the bridge to present multiple BARs to the host, each with appropriate power-of-two alignment, while the sum of all sub-ranges efficiently covers the entire forwarding range without waste. For example, a 3MB forwarding range is divided into multiple sub-ranges that collectively utilize the full 3MB without requiring expansion to the next power of two (4MB).
Solution Approach 2:
The patent changes the parameters of address range allocation by introducing sub-address ranges with different size and alignment characteristics. Instead of allocating a single large aligned range, the system creates multiple sub-ranges with varying parameters that collectively satisfy both the alignment requirements for device compatibility and the efficient utilization goal. The sub-ranges can have different starting addresses and sizes, allowing flexible packing within the forwarding range.
2Manufacturing precision
If address ranges are expanded to next power of two for alignment, then standard compliance is improved, but allocation efficiency deteriorates due to increased wasted space
Solution Approach 1:
The patent divides a single large address range allocation into multiple smaller sub-allocations, each with proper alignment. This segmentation allows the system to maintain alignment precision for each individual allocation while improving overall efficiency by not having to expand to the next power of two for the entire range. The host perceives multiple aligned BARs instead of a single misaligned large range.
Solution Approach 2:
The patent introduces an additional dimension of address space management by creating sub-address ranges that operate within the forwarding range. Instead of a single-dimensional allocation problem, the system uses multiple dimensions (multiple BARs, multiple sub-ranges) to achieve both alignment and efficiency. The virtual devices are presented with their own aligned address spaces that collectively fill the forwarding range efficiently.
3Adaptability or versatility
If multiple virtual devices share a forwarding address range, then system flexibility is improved, but address management complexity deteriorates
Solution Approach 1:
The patent introduces a smart bridge as an intermediary between the host and multiple virtual devices. The bridge maintains a mapping table that translates host address accesses to the appropriate virtual devices and sub-address ranges. This intermediary manages the complexity of addressing multiple devices by providing a unified interface to the host while handling the intricate mapping and translation internally, thus maintaining system flexibility without exposing address management complexity to the host.
Solution Approach 2:
The patent segments the forwarding address range into distinct sub-ranges, each associated with a specific virtual device. This segmentation simplifies address management by creating clear boundaries and associations between address spaces and devices. The mapping table can efficiently manage these segmented ranges, and the host interacts with each device through its own dedicated sub-range, reducing the complexity of managing shared address space.
Data Source
AI summary
Smart bridge and use. The smart bridge includes a functional unit, memory, and a switch for routing data between a host and multiple devices using a routing table. The bridge stores a forwarding address range (FAR) as a bridge representation of hardware memory resources required by the devices. The FAR is an integer multiple of a first specified minimum size and is aligned with the first specified minimum size. The bridge representation is converted to an endpoint representation that includes multiple virtual memory resources based on a starting address of the FAR. Each virtual memory resource has a respective sub-address range with a size that is a power of 2 multiple of a second specified minimum size, which is less than the first specified minimum size, and is aligned accordingly. The endpoint representation is usable by the switch or the host to allocate the virtual memory resources to the devices.


