Processing continuous data streams in electronic spreadsheets
First Claim
1. An electronic spreadsheet for processing a continuous data stream, the electronic spreadsheet having a plurality of cells, the improvement comprising:
- a clocked delay line object, the clocked delay line object being instantiated and assigned to a cell of the electronic spreadsheet;
an external data input function adapted to provide a clock signal to the clocked delay line object; and
a spreadsheet function adapted to provide random access to data stored in the clocked delay line object.
2 Assignments
0 Petitions
Accused Products
Abstract
An improved electronic spreadsheet is provided for applications that require the processing of continuous data streams over a time-based data interval of size greater than one. The improved spreadsheet supports the creation of expressions involving clocked delay line objects instantiated within spreadsheet cells. The delay line object includes data storage and a member function that implements a shift register. Data stream input functions supply the clocking signals that trigger the execution of the shift register function of the delay line object. Spreadsheet functions are provided that support random access of elements and other analysis over the buffered data interval. The forgoing improvements extend the effective range of spreadsheet programming to include a wider range of applications than was previously possible, including signal processing, machine vision, and time evolution studies.
39 Citations
7 Claims
-
1. An electronic spreadsheet for processing a continuous data stream, the electronic spreadsheet having a plurality of cells, the improvement comprising:
-
a clocked delay line object, the clocked delay line object being instantiated and assigned to a cell of the electronic spreadsheet;
an external data input function adapted to provide a clock signal to the clocked delay line object; and
a spreadsheet function adapted to provide random access to data stored in the clocked delay line object. - View Dependent Claims (2, 3, 4, 5)
an input data stream;
a clock source;
a number of elements in a shift register buffer; and
a clock divider.
-
-
3. The electronic spreadsheet of claim 1, wherein the clocked delay line object further includes:
-
a method for clocking data; and
a method for access to data stored in the clocked delay line object.
-
-
4. The electronic spreadsheet of claim 1, wherein the clocked delay line object is adapted to trigger the execution of the shift register function of the delay line object upon receipt of a clock signal provided by the external data input function.
-
5. The electronic spreadsheet of claim 1, further including a spreadsheet function that performs analysis of a data interval stored in the clocked delay line object.
-
6. A method for using an electronic spreadsheet for processing continuous data streams over an interval of size greater than one, the method comprising:
-
instantiate and assign a clockable delay line object having data storage to at least one cell of the electronic spreadsheet;
provide a clock signal to the delay line object;
randomly access the data storage over an interval of size greater than one; and
process the data so-accessed.
-
-
7. A method for processing continuous data streams over an interval of size greater than one using an electronic spreadsheet having clocked delay line objects instantiated in the cells of the electronic spreadsheet, each delay line object having a delay line buffer, a source of clock signals, and spreadsheet functions that support selectable access to data stored in a delay line of the clocked delay line object, the method comprising:
-
assign to a first cell an external input function adapted to access a data source external to the spreadsheet;
assign to a second cell an instance of a delay line object;
assign to a plurality of cells a respective plurality of tap functions, each tap function adapted to access the delay line buffer of the delay line object at a selectable clock cycle to provide a respective plurality of data elements stored in the delay line buffer; and
assign to at least one cell a function adapted to process the plurality of data elements upon each clock cycle.
-
Specification