5 ms·
Can you someone do a ELI5 on this project? Tried to read but couldn't move further.
by dvaita99 9y ago
Can you someone do a ELI5 on this project? Tried to read but couldn't move further.
- Zenst 9y agoComputers emit radio waves, by varying the processing upon the computer you can influence those emissions. Thus you are able to control those emissions and produce a radio signal you can pick up upon a standard radio.
- zenkat 9y agoWhat part of the computer is emitting the radiation? And how is this program manipulating it to generate a song?
- godelmachine 9y agoThe CPU colloquially called the processor does this. When you feed a program to the CPU, it switches between logic gates (read - transistors turning on and off), to process the program. As the processing elements switch between power levels of 0 and 1 (0V & 5V / 0V & 12 V), there are electromagnetic fluctuations. These EM fluctuations are the emmissions we are talking about here.
- luk32 9y agoI highly doubt that cpu is the emitter. More probable is some long path on mother board, used for data communication.
- godelmachine 9y agoThe CPU is comprised of millions / billions of transistors which switch on and off multiple times (which depends on the base clock frequency).
- lovelearning 9y agoYes, it's the bus traces between CPU and RAM. From linked paper: "When data is exchanged between the CPU and the RAM, radio waves are emitted from the bus's long parallel circuits."
- ComputerGuru 9y agoI don’t think the FETs generate enough EM on their own? It’s probably the inductors on the motherboard charging and discharging as a result of the FETs that cause the EM whine/hum? Another likely source is the power supply, which has coils by the dozens and will react to varying loads of computational work. The cheap ones are already all over the radio spectrum even when you don’t want them to be.
- godelmachine 9y agoThe transistors also have a drain and a source :)
- mark-r 9y agoThe transistors in a modern machine use a minuscule amount of power and don't have enough area to make an antenna. You need to find a way to affect an output pin of the chip. Address lines for example will do a decent job, and the lower bits of the address are easy to control with a program.
- inetknght 9y agoAny wire acts as an antenna. Therefore, any part of the computer can be the part emitting the radiation. Choosing which part of the computer is a matter of choosing the frequency which dictates the length of wire necessary and which parts can oscillate at that frequency.
- lovelearning 9y agoHere's one. This sentence from the linked paper is informative - "When data is exchanged between the CPU and the RAM, radio waves are emitted from the bus's long parallel circuits." For some background: Digital circuits like computer motherboards have components called oscillators that switch voltage on and off a number of times every second. This is what "clock speeds" refers to - 2.8 GHz CPU clock speed means voltage to CPU is being switched on and off 2.8x10^9 times per second. All components like the processors, IO buses, RAM modules, etc. synchronize their actions to the rise and falls in these voltage levels. It's a way of synchronizing their actions. One consequence of switching voltage on and off is that electrical fields build up and collapse (voltage is a measure of the electrical field), and cause magnetic fields to build up and collapse. We lay people call "oscillating electromagnetic fields" as "radio waves". This is the origin of radio waves from motherboards. The missing link for transmission is that like any radio transmission, it requires an "antenna" - that is a conductor of some length. There are conductors on a circuit board in the form of copper traces through which current passes. These start acting like antennas. In this case, the copper traces connecting CPU to RAM on that particular computer are emitting EM radiation at a frequency of 1580 kHz. So far, all there is is some EM radiation with certain frequency and an antenna to transmit it. This is just the "carrier wave". But for transmitting useful information, some kind of modulation is necessary to encode data over that carrier wave. This project uses an SSE2 CPU instruction called MOVNTDQ or _mm_stream_si128 to write to memory, with the data to be transmitted encoded as sequences of 1s and 0s with certain frequency (rate) and for a certain time period. This act of at writing at a certain rate for some time period results in switching on and off of voltages on the traces between CPU and RAM which in turn creates modulated EM radiation. TBH, I didn't understand the details of how this project modulates the binary data over a square wave and how it gets treated as amplitude modulation by a regular radio receiver, and I request another ELI5 from somebody else to explain it to me :)
- randyrand 9y agoFirst realize the aptitude modulation in this radio is very crude. Unlike normal radio which has many amplitudes, this radio only has 2. On and off. Tone or no tone. This radio has no control over the exact amplitude. Due to this limitation, this radio can only transfer a single tone at a time. Music must be monophonic. To transfer a 60htz tone we just switch between the on and off state at 60htz. The On state will be at some random amplitude that we can't control. What are these states? In the On state, we write to a memory address repeatedly very very fast (as fast as the computer allows). And in the off state we sleep.