BUS SWITCH ENCODING FOR REDUCING CROSSTALK EFFECTS IN BUSES
First Claim
1. A method of transmitting data over a bus including a plurality of lines, wherein energy is dissipated as a result of said transmission, the method comprising the steps of:
- identifying a string of data bits to be transmitted at a time over said bus;
subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits;
identifying, as a function of said crosstalk activity values, an optimum string of data bits that minimizes said energy dissipated; and
transmitting over said bus said optimum string of data bits.
1 Assignment
0 Petitions
Accused Products
Abstract
Data are transmitted over a bus including a plurality of lines, wherein energy is dissipated as a result of data transmission. Preferably, the data to be transmitted in parallel are partitioned in a plurality of clusters of data bits. Each cluster is subject to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate clusters of data bits. Crosstalk activity values related to transmitting the various candidate clusters are calculated and compared to identify an optimum cluster of data bits that minimizes the energy dissipated as a result of transmission by jointly minimizing the switching activity and the crosstalk activity. The optimum cluster of data bits so identified is then used for transmission over the bus. The optimum cluster of data bits thus causes those bits that give rise to high crosstalk activity to be allotted to bus lines having lower crosstalk capacitance values.
-
Citations
36 Claims
-
1. A method of transmitting data over a bus including a plurality of lines, wherein energy is dissipated as a result of said transmission, the method comprising the steps of:
-
identifying a string of data bits to be transmitted at a time over said bus;
subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits;
identifying, as a function of said crosstalk activity values, an optimum string of data bits that minimizes said energy dissipated; and
transmitting over said bus said optimum string of data bits. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of transmitting data over a bus including a plurality of lines, wherein energy is dissipated as a result of said transmission, the method comprising the steps of:
-
partitioning said lines in said bus into a plurality of line clusters;
identifying a plurality of clusters of data bits each to be transmitted at a time over a respective one line cluster out of said plurality of line clusters;
subjecting each said cluster of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate clusters of data bits to be transmitted at a time over said respective one line cluster;
calculating switching activity and crosstalk activity values related to transmitting over said respective one line cluster said respective candidate clusters of data bits;
identifying an optimum cluster of data bits that jointly minimizes said switching activity and said crosstalk activity; and
transmitting over said respective one line cluster said optimum cluster of data bits. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method of transmitting data over a bus including a plurality of bus lines including the steps of:
-
arranging said bus lines to have non-uniform line placement, whereby said lines have different crosstalk capacitance values with respect to their neighboring lines, said different crosstalk capacitance values ranging between lower and higher values;
identifying a string of data bits to be transmitted at a time over said bus;
subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits;
identifying, as a function of said crosstalk activity values, an optimum string of data bits whereby bits giving rise to high crosstalk activity are allotted to bus lines having lower crosstalk capacitance values; and
transmitting over said bus said optimum string of data bits. - View Dependent Claims (15)
-
-
16. A method of estimating energy dissipated due to crosstalk between lines when transmitting data over a bus including a plurality of lines having a given line placement, whereby said lines have crosstalk capacitance values therebetween, the method comprising the steps of:
-
identifying a string of data bits to be transmitted at a time over said bus;
subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits as linear combinations of said crosstalk capacitance values, wherein coefficients of said linear combinations are a function of said reordering patterns, the crosstalk activity values thus calculated representing estimations of the energy dissipated due to crosstalk when transmitting the respective candidate strings of data bits over said bus. - View Dependent Claims (17)
-
-
18. A system for transmitting data over a bus including a plurality of lines, wherein energy is dissipated as a result of said transmission, the system operating on a string of data bits to be transmitted at a time over said bus and comprising:
-
a reordering pattern generator structured to subject at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
a crosstalk activity evaluation module structured to calculate crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits;
a selector unit structured to identify, as a function of said crosstalk activity values, an optimum string of data bits that minimizes said energy dissipated, and an output stage structured to transmit over said bus said optimum string of data bits. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
-
26. A system for transmitting data over a bus including a plurality of lines, wherein energy is dissipated as a result of said transmission and said lines in said bus are partitioned in a plurality of line clusters, the system operating on a plurality of clusters of data bits each to be transmitted at a time over a respective one line cluster out of said plurality of line clusters and comprising:
-
a reordering pattern generator for subjecting each said cluster of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate clusters of data bits to be transmitted at a time over said respective one line cluster;
a switching activity and crosstalk activity evaluation modules for calculating switching activity and crosstalk activity values related to transmitting over said respective one line cluster said respective candidate clusters of data bits;
a selector unit for identifying an optimum cluster of data bits that jointly minimizes said switching activity and said crosstalk activity; and
an output stage for transmitting over said respective one line cluster said optimum cluster of data bits. - View Dependent Claims (27, 28, 29, 30)
-
-
31. A system for transmitting data over a bus including a plurality of bus lines, wherein said bus lines have non-uniform line placement and said lines have different crosstalk capacitance values with respect to their neighboring lines, said different crosstalk capacitance values ranging between lower and higher values, the system operating on a string of data bits to be transmitted at a time over said bus and comprising:
-
a reordering pattern generator for subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
a crosstalk activity evaluation module for calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits;
a selector unit for identifying, as a function of said crosstalk activity values, an optimum string of data bits whereby bits giving rise to high crosstalk activity are allotted to bus lines having lower crosstalk capacitance values, and an output stage for transmitting over said bus said optimum string of data bits. - View Dependent Claims (32)
-
-
33. A system for estimating energy dissipated due to crosstalk between lines when transmitting data over a bus including a plurality of lines having a given line placement, whereby said lines have crosstalk capacitance values therebetween, the system operating on a string of data bits to be transmitted at a time over said bus and comprising:
-
a reordering pattern generator for subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus; and
a crosstalk activity evaluation module for calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits as linear combinations of said crosstalk capacitance-values, wherein coefficients of said linear combinations are a function of said reordering patterns, the crosstalk activity values thus calculated representing estimations of the energy dissipated due to crosstalk when transmitting the respective candidate strings of data bits over said bus. - View Dependent Claims (34)
-
-
35. A computer-readable medium having contents that cause a computing device to transmit data over a bus including a plurality of lines, wherein energy is dissipated as a result of said transmission, by performing a method comprising:
-
identifying a string of data bits to be transmitted at a time over said bus;
subjecting at least a part of said string of data bits to re-ordering according to a set of reordering patterns to produce a corresponding set of respective candidate strings of data bits to be transmitted at a time over said bus;
calculating crosstalk activity values related to transmitting over said bus said respective candidate strings of data bits;
identifying, as a function of said crosstalk activity values, an optimum string of data bits that minimizes said energy dissipated; and
transmitting over said bus said optimum string of data bits. - View Dependent Claims (36)
-
Specification