Patent ID: 7397774

Claim:
A method of multiplexing data onto a common bus from a plurality of data channels, comprising the steps of: a. first allocating a predetermined number of data frames to each of the plurality of data channels for access to the bus; b. polling the plurality of data channels in turn for access to the bus, thereby defining a polling cycle; c. determining which of the plurality of data channels is active and nonactive, for each polling cycle; d. determining a requested allocation of data frames from each active plurality of data channels based on a predetermined priority order, for each polling cycle; e. comparing the requested allocation of data frames for each active plurality of data channels and the total number of allocated data frames, for each polling cycle; f. determining if each of the active channel's requested allocation of data frames can be accommodated based on a statistical analysis of the results from the comparing step during the current polling cycle and the predetermined priority order, wherein the determining step identifies any data frames that can be reallocated from any nonactive data channel; g. for each polling cycle, if there are any nonaccommodated active channels, wherein a nonaccommodated active channel is an active channel wherein its requested allocation of data frames cannot be accommodated, and there are data frames that can be reallocated from any nonactive data channel, reallocating any unused data frames amongst any nonaccommodated active channels based on a statistical analysis and the predetermined priority order.