1. A delay circuit, comprising:
a map delay module, for delaying an input data signal to generate an output data signal according to a mapped delay selection signal; and
a delay mapping unit, coupled to the map delay module, for generating the mapped delay selection signal according to an input selection signal and at least a mapping value.
2. The delay circuit of claim 1, wherein the mapping value is a fixed, predetermined mapping value.
3. The delay circuit of claim 1, further comprises a storage device coupled to the delay mapping unit, for storing a mapping table, wherein the mapping value is selected from the mapping table.
4. The delay circuit of claim 3, further comprising:
a delay measurement unit, coupled to the storage device, the delay mapping unit and the map delay module, for generating the mapping table, a map enable signal, a ring enable signal, and a delay selection signal according to a reference signal from the map delay module and a reference clock signal;
wherein the delay mapping unit is controlled by the map enable signal for generating the mapped selection signal according to the delay selection signal in a first mode and according to the input selection signal and the mapping table in a second mode; where the map delay module, is controlled by the ring enable signal for generating the reference signal corresponding to the mapped selection signal in the first mode and for delaying the input data signal to generate the output data signal corresponding to the mapped selection signal in the second mode.
5. The delay circuit of claim 4, wherein the delay mapping unit comprises:
a first multiplexer, coupled to the storage device, for outputting the mapping value from the mapping table stored in the storage device according to the input selection signal;
a second multiplexer, coupled to the first multiplexer, for outputting the delay selection signal as the mapped selection signal in the first mode and the mapping value as the mapped selection signal in the second mode.
6. The delay circuit of claim 4, wherein the reference signal is a periodical signal and the map delay module comprises:
a multiplexer, for outputting the periodical signal in the first mode and the input data signal in the second mode; and
a delay chain, including a plurality of delay stages, for generating the periodical signal in the first mode and for generating the output data signal according to the input data signal from the multiplexer in the second mode, wherein at least one of the delay stages is selected by the mapped selection signal, where the output data signal and the periodical signal outputted from the delay chain correspond to the selected delay stages.
7. The delay circuit of claim 4, wherein the reference signal is a periodical signal and the delay measurement unit comprises:
a periodical counter, for counting the periodical signal to generate a periodical counter value;
an enable signal generator, coupled to the periodical counter, for generating an enable signal according to the periodical counter value;
a reference counter, controlled by the enable signal, for counting the reference clock signal to generate a counter difference value between two periodical signals corresponding to two different mapped delay selecting signals; and
a control unit, coupled to the periodical counter and the reference counter, for controlling the periodical counter and the reference counter to generate the mapping table according to the counter difference value, and for generating the map enable signal, the ring enable signal and the delay selection signal.
8. The delay circuit of claim 4, wherein the reference signal is a periodical signal and the delay measurement unit comprises:
a periodical counter, for counting the periodical signal to generate a periodical counter value;
an enable signal generator, coupled to the periodical counter, for generating an enable signal according to the periodical counter value;
a reference counter, controlled by the enable signal, for counting the reference clock signal to generate reference counter values corresponding to different mapped delay selecting signals;
a control unit, coupled to the periodical counter and the reference counter, for controlling the periodical counter and the reference counter and receiving the reference counter value; and
a micro processor, coupled to the reference counter, for generating the mapping table according to the reference counter values from the control unit.
9. The delay circuit of claim 4, wherein the delay chain includes a plurality of delay stages and the mapping table only corresponds to part of the delay stages.
10. The delay circuit of claim 9, wherein the mapping table makes the delay circuit a monotonic delay circuit.
11. The delay circuit of claim 9, wherein the storage device further stores an offset table, the map delay module includes a main delay chain for providing a main delay amount and an offset delay chain for providing an offset delay amount, and the input data signal is delayed for a main delay amount and an offset delay amount to generate the output data signal, where the input selection signal is multiplied for a predetermined parameter to generate a multiplied input selection signal for selecting at least one of the delay stage of the main delay chain according to the mapping table to provide the main delay amount, where the offset delay amount is selected by an offset selection signal from the offset table, and the offset selection signal corresponds to the delay stages selected by the multiplied input selection signal.
12. The delay circuit of claim 11, wherein the delay mapping unit comprises:
a first multiplexer, coupled to the storage device, for outputting the mapping value from the mapping table and the offset selection signal from the offset table stored in the storage device according to the input selection signal;
a second multiplexer, coupled to the first multiplexer, for outputting the delay selection signal as the mapped selection signal in the first mode and for outputting a combined input selection signal as the mapped delay selection in the second mode;
a multiplier, coupled to the first multiplexer and the second multiplexer, for generating the multiplied input selection signal; and
an adder, for combining the multiplied input selection signal and the offset delay selection signal to generate the combined input selection signal.
13. The delay circuit of claim 4, wherein the storage device further stores an offset table, the input selection signal includes a main delay selection signal and a offset delay selection signal, the map delay module includes a main delay chain for providing a main delay amount and an offset delay chain for providing an offset delay amount, and the input data signal is delayed for a main delay amount and an offset delay amount to generate the output data signal, the map delay module comprises:
a multiplexer, for outputting the output data signal in the second mode and the reference signal in the first mode; and
a main delay chain, coupled to the multiplexer and including a plurality of delay stages, for providing a main delay amount to the input data signal, wherein at least one of the delay stage is selected by the main delay selection signal to provide the main delay amount; and
an offset delay chain, coupled to the main delay chain, for providing an offset delay amount to the input data signal according to the offset delay selection signal.
14. The delay circuit of claim 13, wherein the offset delay selection signal is obtained from the offset table according to the main delay selection signal.
15. The delay circuit of claim 14, wherein the delay mapping unit comprises:
a first multiplexer, coupled to the storage device, for selecting the offset delay selection signal from the offset table according to the main delay selection signal; and
a second multiplexer, coupled to the first multiplexer, for outputting the delay selection signal as the mapped selection signal in the first mode and the main delay selection signal combining the offset delay selection signal as the mapped selection signal in the second mode.
16. A signal delay method, comprising:
mapping an input selection signal to select at least one delay stage of a delay circuit according to at least mapping value.
17. The signal delay method of claim 16, wherein the mapping value is a fixed, predetermined mapping value.
18. The signal delay method of claim 16, further comprises providing a mapping table, wherein the mapping value is selected from the mapping table.
19. The signal delay method of claim 18, comprising:
(a) generating the mapping table according to a reference signal from the delay circuit in a first mode; and
(b) mapping the input selection signal to select at least one delay stage of the delay circuit according to a mapping value of the mapping table in the second mode.
20. The signal delay method of claim 19, wherein the reference signal is a periodical signal and the step (a) comprises:
counting the periodical signal to generate a periodical counter value;
counting a reference clock signal to generate a counter difference value between two periodical signals corresponding to two different number of delay stages; and
generating the mapping table according to the counter difference value.
21. The signal delay method of claim 19, wherein the reference signal is a periodical signal and the step (a) comprises:
counting the periodical signal to generate a periodical counter value;
counting the reference clock signal to generate reference counter values corresponding to different mapped delay selecting signals; and
generating the mapping table according to the reference counter values.
22. The signal delay method of claim 19, further generating a second mapping table, wherein the step (b) further maps an input selection signal to select at least one delay stage of the delay circuit according to a mapping value of the second mapping table in the second mode.
23. The signal delay method of claim 19, wherein the mapping table only corresponds to part of the delay stages.
24. The signal delay method of claim 23, wherein the mapping table makes the delay circuit a monotonic delay circuit.
25. The signal delay method of claim 19, further generating an offset table, the delay circuit includes a main delay chain for providing a main delay amount and an offset delay chain for providing an offset delay amount, and the input data signal is delayed for a main delay amount and an offset delay amount to generate the output data signal, where the input selection signal is multiplied for a predetermined parameter to generate a multiplied input selection signal for selecting at least one of the delay stage of the main delay chain according to the mapping table to provide the main delay amount, where the offset delay amount is selected by an offset selection signal from the offset table, and the offset selection signal corresponds to the delay stages selected by the multiplied input selection signal.
26. The signal delay method of claim 19, further generating an offset table, the input selection signal includes a main delay selection signal and a offset delay selection signal, the delay circuit includes a main delay chain for providing a main delay amount according to the main delay selection signal and an offset delay chain for providing an offset delay amount according to the offset delay selection signal, and the input data signal is delayed for a main delay amount and an offset delay amount to generate the output data signal.
27. The signal delay method of claim 26, wherein the offset delay selection signal is obtained from the offset table according to the main delay selection signal.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method for providing digital media content with an embedded environmental impact data value, the method comprising:
a programmable device determining at least one of an amount of energy used in creating a first digital multimedia item comprising music data, and a type of energy used in creating the first digital multimedia item;
the programmable device calculating a first environmental impact value for the first digital multimedia item as a function of the determined at least one of the amount of energy used in creating the first digital multimedia item and the type of energy used in creating the first digital multimedia item, by at least one of:
measuring a total amount of energy used by each of at least one musical instrument to create the music data; and
measuring a total amount of energy used by each of at least one content creator in creating first digital multimedia item music content data;
the programmable device encoding the determined first environmental impact value; and
the programmable device embedding the encoded first environmental impact value within digital data of the first digital multimedia item for decoding by a receiver of the first digital multimedia item.
2. The method of claim 1, further comprising:
receiving a second digital multimedia item comprising a second embedded environmental impact value;
decoding the second embedded environmental impact value;
determining an amount of carbon offset as a function of the second embedded item environmental impact value; and
triggering a purchase of the amount of a carbon offset from an offset provider by at least one of a user of the item and a producer of the item.
3. The method of claim 1 wherein calculating the first digital multimedia item environmental impact value is an algorithmic function of an energy used in creating the first digital multimedia item and an energy used in providing the first digital multimedia item to a user.
4. The method of claim 1, wherein the first digital multimedia item environmental impact value is a carbon footprint expressed as a weight of carbon dioxide.
5. The method of claim 1, wherein the first digital multimedia item is a digital multimedia file on a tangible machine-readable article; and
wherein the determining the amount of energy used in creating the first digital multimedia item comprises determining at least one of:
an amount of energy used in providing the first item to a user;
an amount of energy used to physically deliver the tangible machine-readable article to the user; and
an amount of energy used to recycle or dispose of the tangible machine-readable article.
6. The method of claim 5 wherein the tangible machine-readable article is a compact disc, a digital video disc, or a flash memory device.
7. The method of claim 1, further comprising the programmable device:
receiving another digital multimedia item comprising another embedded environmental impact value;
decoding the received another embedded environmental impact value;
receiving a third digital multimedia item comprising a third embedded environmental impact value;
decoding the third embedded environmental impact value; and
choosing the third item or the another item having a lower value of the decoded third environmental impact value and the decoded another environmental impact value.
8. The method of claim 7, wherein the third item and the another item are streamed multimedia broadcast program items, further comprising calculating the environmental impact values for the third and the another items by at least one of:
measuring an amount of energy used by a broadcaster to broadcast the presented third and another program items to a user; and
identifying a type of energy used by the broadcaster to broadcast the third and another presented program items to a user.
9. The method of claim 8 wherein the third program item and the another program item are each at least one of a streamed television program, a streamed radio program, a streamed internet broadcasting program and a streamed digital music file.
10. The method of claim 9, further comprising:
conveying the decoded third program item environmental impact value and the another decoded program item environmental impact value to the user; and
offering a broadcast of the third program item or of the another program item to the user; and
wherein the selecting the one of the third program item and the another program item comprises the user manually selecting the one as a function of the conveying the decoded third program item environmental impact value and the another decoded program item environmental impact value to the user.
11. The method of claim 9, further comprising:
illuminating an indicator lamp in association with receiving a one of the third item and the another item that has a lower decoded environmental value;
displaying an environmental impact logo within a visual display of content of a one of the third item and the another item that has a lower decoded environmental value; and
audibly playing a distinctive sound indicative of the decoded embedded value of a one of the third item and the another item that has a lower decoded environmental value.
12. The method of claim 9, further comprising:
omitting a one of the third item and the another item from a presentation of digital items to the user that has at least one of:
an embedded environmental impact value that is above a threshold; and
an embedded environmental impact value that is higher than an embedded environmental impact value of an other of the third item and the another item.
13. The method of claim 1, further comprising:
integrating computer-readable program code into a computer system comprising the processing unit, a computer readable memory and a computer readable tangible storage device, wherein the computer readable program code is embodied on the computer readable tangible storage device and comprises instructions that, when executed by the processing unit via the computer readable memory, cause the processing unit to perform the steps of determining the at least one of the amount of energy used and the type of energy used in creating the first digital multimedia item, the calculating the first environmental impact value for the first digital multimedia item, the encoding the determined first environmental impact value and the embedding the encoded first environmental impact value within the digital data of the first digital multimedia item for decoding.
14. A programmable device comprising:
a processing unit;
a computer-readable memory in communication with the processing unit; and
a tangible computer-readable storage device in communication with the processing unit and the computer-readable memory;
wherein the processing unit, when executing program instructions stored on the tangible computer-readable storage device via the computer readable memory:
determines at least one of an amount of energy used in creating a first digital multimedia item comprising music data, and a type of energy used in creating the first digital multimedia item;
calculates a first environmental impact value for the first digital multimedia item as a function of the determined at least one of the amount of energy used in creating the first digital multimedia item and the type of energy used in creating the first digital multimedia item, by at least one of:
measuring a total amount of energy used by each of at least one musical instrument to create the music data; and
measuring a total amount of energy used by each of at least one content creator in creating first digital multimedia item music content data;
encodes the determined first environmental impact value; and
embeds the encoded first environmental impact value within digital data of the first digital multimedia item for decoding by a receiver of the first digital multimedia item.
15. The programmable device of claim 14, wherein the processing unit, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, further presents a user with a choice of using a received third digital media item or another received digital media item by at least one of:
illuminating an indicator lamp in association with receiving a one of the third digital media item and the another digital media item that has a lower decoded environmental value;
displaying an environmental impact logo within a visual display of content of a one of the third digital media item and the another digital media item that has a lower decoded environmental value; and
audibly playing a distinctive sound indicative of the decoded embedded value of a one of the third digital media item and the another digital media item that has a lower decoded environmental value.
16. The programmable device of claim 14, wherein the processing unit, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, further:
calculates the first digital multimedia item environmental impact value as an algorithmic function of an energy used in creating the first digital multimedia item and an energy used in providing the first digital multimedia item to a user.
17. The programmable device of claim 14, wherein the first digital multimedia item environmental impact value is a carbon footprint expressed as a weight of carbon dioxide.
18. The programmable device of claim 14, wherein the first digital multimedia item is a digital multimedia file on a tangible machine-readable article; and
wherein the processing unit, when executing the program instructions stored on the computer-readable storage device via the computer readable memory, determines the amount of energy used in creating the first digital multimedia item by determining at least one of:
an amount of energy used in providing the first item to a user;
an amount of energy used to physically deliver the tangible machine-readable article to the user; and
an amount of energy used to recycle or dispose of the tangible machine-readable article.
19. A computer program product for providing digital media content with an embedded environmental impact data value, the computer program product comprising:
a computer readable tangible storage device, which is not a signal, having computer readable program code embodied therewith, the computer readable program code comprising instructions that, when executed by a computer processing unit, cause the computer processing unit to:
determine at least one of an amount of energy used in creating a first digital multimedia item comprising music data, and a type of energy used in creating the first digital multimedia item;
calculate a first environmental impact value for the first digital multimedia item as a function of the determined at least one of the amount of energy used in creating the first digital multimedia item and the type of energy used in creating the first digital multimedia item, by at least one of:
measuring a total amount of energy used by each of at least one musical instrument to create the music data; and
measuring a total amount of energy used by each of at least one content creator in creating first digital multimedia item music content data;
encode the determined first environmental impact value; and
embed the encoded first environmental impact value within digital data of the first digital multimedia item for decoding by a receiver of the first digital multimedia item.
20. The computer program product of claim 19, wherein the computer readable program code instructions, when executed by the computer processing unit, further cause the computer processing unit to:
receive another digital multimedia item comprising another embedded environmental impact value;
decode the received another embedded environmental impact value;
receive a third digital multimedia item comprising a third embedded environmental impact value;
decode the third embedded environmental impact value; and
choose the third item or the another item having a lower value of the decoded third environmental impact value and the decoded another environmental impact value.
21. The computer program product of claim 20, wherein the third item and the another item are streamed multimedia broadcast program items, and wherein the computer readable program code instructions, when executed by the computer processing unit, further cause the computer processing unit to:
calculate the environmental impact values for the third and the another items by at least one of:
measuring an amount of energy used by a broadcaster to broadcast the presented third and another program item to a user; and
identifying a type of energy used by the broadcaster to broadcast the third and another presented program item to a user.
22. The computer program product of claim 21, wherein the third program item and the another program item are each at least one of a streamed television program, a streamed radio program, a streamed internet broadcasting program and a streamed digital music file; and
wherein the computer readable program code instructions, when executed by the computer processing unit, further cause the computer processing unit to:
illuminate an indicator lamp in association with receiving a one of the third item and the another item that has a lower decoded environmental value;
display an environmental impact logo within a visual display of content of a one of the third item and the another item that has a lower decoded environmental value; and
audibly play a distinctive sound indicative of the decoded embedded value of a one of the third item and the another item that has a lower decoded environmental value.
23. The computer program product of claim 21, wherein the computer readable program code instructions, when executed by the computer processing unit, further cause the computer processing unit to:
omit a one of the third item and the another item from a presentation of digital items to the user that has at least one of:
an embedded environmental impact value that is above a threshold; and
an embedded environmental impact value that is higher than an embedded environmental impact value of another of the third item and the another item.