h a l f b a k e r yGuitar Hero: 4'33"
add, search, annotate, link, view, overview, recent, by name, random
news, help, about, links, report a problem
browse anonymously,
or get an account
and write.
register,
|
|
|
Binary computer data is made of bits represented by 1s
and 0s, with 1 generally indicated by 5 volts and 0 by less
than 5 volts (say, 1 volt)
If we utilised the space between each bit transmission
and
timed the pause between each, we can greatly leverage
the
resulting information.
For
example you have a bit transmitted (5 volts), then a
pause of zero voltage for .0002 of a second. That .0002
pause could represent "multiply the previous bit by 100".
Different length pauses could mean different
multiplication
factors. So in essence you could have a single bit
representing a multibillion number.
I like it. It's approximately as practical as...
A_20staple_20form_20of_20memory ...this shameless piece of self promotion [normzone, Apr 15 2010]
White House tech chalenges
http://www.whitehou...request-information [simonj, Apr 15 2010]
Line Coding
http://en.wikipedia.org/wiki/Line_code [Jinbish, Apr 15 2010]
Heaviside step function
http://en.wikipedia...iside_step_function Useful, but abstract. [8th of 7, Apr 16 2010]
Planck time
http://en.wikipedia.org/wiki/Planck_time Not that useful [8th of 7, Apr 16 2010]
Pauli exclusion principle
http://en.wikipedia...exclusion_principle One at a time, please ... [8th of 7, Apr 16 2010]
Please log in.
If you're not logged in,
you can see what this page
looks like, but you will
not be able to add anything.
Annotation:
|
|
Could this be the solution to the white House's
problem... :) |
|
|
An exascale supercomputer capable of a million
trillion calculations per second dramatically
increasing our ability to understand the world around
us through simulation and slashing the time needed
to design complex products such as therapeutics,
advanced materials, and highly-efficient autos and
aircraft. |
|
|
Not to put too fine a point on it, but what in the world does your idea for low data-rate signalling have to do with your annotation ^ ? |
|
|
I thought it might be useful in processing as well |
|
|
homework assignment: how modems work, and the word "slew" as applied to electronics. |
|
|
ack homework, and i'm not even at home! |
|
|
0.0002 seconds is a long time in data transmission. In that amount of time you can send a lot of data. At 1Mbps you could squeeze in 200 bits of data (and you can fit a very large number in 200 bits of data). |
|
|
This encoding method could be used as a simple but very inefficient way of digitizing an analog waveform. |
|
|
I just pulled .0002 seconds out of my hat as an
example. it could be .00000000002 seconds, or two
cycles, or any other predetermined number. |
|
|
If your hardware can resolve the difference between a 0.00000000002 second pause and a 0.00000000003 second pause then you can just as easily send a bit in 0.00000000001 seconds. My point is, it is more efficient to send bits rather than waste that time with a pause. |
|
|
With your method, to encode the message: [multiply the previous bit by 100] would require a single bit followed by a pause of 100 beats/clock cycles. |
|
|
In a more efficient scheme would have a single bit followed by the bit string 1100100 (which is the binary representation of decimal 100). Note that this takes only 7 beats/clock cycles. |
|
|
If you send a bit in that pause then you are just
sending the next digit in the binary sequence
(which
= double the previous one) By untilizing the pause
you can make it equal 10x rather than just 2x |
|
|
And anyway you would not wait 100 cycles to
multiply by 100, it would take only 2... |
|
|
One cycle = x10
Two cycles = x100
Three cycles = x1000
Four cycles = x10000 etc |
|
|
It's called "pulse position modulation" and it's been around for a while ... |
|
|
//Binary computer data is made of bits represented by 1s and 0s, with 1 generally indicated by 5 volts and 0 by less than 5 volts (say, 1 volt)// |
|
|
Guess what, [simonj], there are a whole host of ways to represent data. Look up some basic line coding techniques. You have to take into account the required frequency & bandwidth of transmission, the susceptibility to noise, the transmission power, etc... |
|
|
The issue with your suggestion, which is, as [8th] says, called PPM, is that it requires tight timing constraints and synchronization. |
|
|
So, basically the proposal is to move over to an analogue
communication system? |
|
|
// It's called "pulse position modulation" |
|
|
Sweet I thpought up somethig that works! is there any way to implement it in today's broadband networks? |
|
|
So is the idea to be able to send some particular large numbers more effectively? Even if one assumes the communication wire has three states (bit "0", bit "1", and "pause") your encoding would be useful for some numbers (e.g. 1,000 could be sent as 1PPP rather than 1111101000) but it wouldn't do much for most others (e.g. 999 would still be 1111100111). If large numbers won't need as much precision as smaller ones, using floating-point would be better than using a three-states communications line in the manner you describe. |
|
|
BTW, if one had a communications wire that could hold 3 states, one would be better off packing three bits into each pair of 'trits', or 19 bits into each 12 trits, than trying to represent numbers in weird complicated ways. |
|
|
[simonj]: Yes. Kind of. Only problem is that it has poor performance! |
|
|
There are two things here:
i) Using position of a pulse to represent data
ii) coding data to save space (representing information as efficiently as possible) |
|
|
Now, addressing them:
i) PPM is challenging to synchronize (i.e. sender and receiver have to have same clocks) and is very vulnerable to timing errors. It is used in some places but Pulse Coded Modulation (PCM) is generally better. Look up Line Coding for more (like I suggested)
ii) Coding data to save space - which is what you're trying to do with the "multiply previous bit" idea is a very well researched idea - it's called Source Coding. (This type of coding includes the kind of algorithms used when you ZIP a file). |
|
|
//So, basically the proposal is to move over to an analogue communication system?// |
|
|
With regard to pulse-position encoding, when a pulse is sent over any medium, the voltage and the time will vary unpredictably by bounded amounts. Better media will have smaller variations, but some variations are inevitable. |
|
|
Simpler methods of sending data simply ensure that the variations in the media will be small enough not to cause any confusion at the receiving end. Better methods identify the characteristics of the line more precisely (either through measurement or specification), determine what amounts of "confusion" might arise, and deal with them. |
|
|
Sadly, the Heaviside step function only exists in theory, And the Planck time is the ultimate lower linit of clock resolution. |
|
|
Good plan; in fact, why ever UnZip the data at all ? Huge computational savings could be obtained by just processing the zipped data directy ... |
|
|
// looks smudged on reception // |
|
|
Is it actually smudged, or does it just look smudged ? |
|
|
// all electronics is analogue // |
|
|
<points at diagram on blackboard showing crude but effective illustration of quantum nature of electron> |
|
|
At a fundamental level, electronics ("stuff done with electrons") (q.v.) is unavoidably digital. |
|
|
<points at diagram on blackboard showing crude but effective illustration of Pauli's Exclusion Principle> |
|
| |