Signal
General
See also Data, Electrical, Radio, Maths, Creative coding, Synthesis, Audio, Effects, Video, Computing, Media, etc.
to fix re other poages
- https://en.wikipedia.org/wiki/Coding_theory - the study of the properties of codes and their respective fitness for specific applications. Codes are used for data compression, cryptography, error detection and correction, data transmission and data storage. Codes are studied by various scientific disciplines—such as information theory, electrical engineering, mathematics, linguistics, and computer science—for the purpose of designing efficient and reliable data transmission methods. This typically involves the removal of redundancy and the correction or detection of errors in the transmitted data.
There are four types of coding:
- Data compression (or source coding,
- Error control (or channel coding)
- Cryptographic coding
- Line coding
- https://github.com/sudara/dspjargon - All the jargon you need to understand the world of Digital Signal Processing.
- https://en.wikipedia.org/wiki/Transmission_medium - a system or substance that can mediate the propagation of signals for the purposes of telecommunication. Signals are typically imposed on a wave of some kind suitable for the chosen medium. For example, data can modulate sound, and a transmission medium for sounds may be air, but solids and liquids may also act as the transmission medium. Vacuum or air constitutes a good transmission medium for electromagnetic waves such as light and radio waves. While a material substance is not required for electromagnetic waves to propagate, such waves are usually affected by the transmission media they pass through, for instance, by absorption or reflection or refraction at the interfaces between media. Technical devices can therefore be employed to transmit or guide waves. Thus, an optical fiber or a copper cable is used as transmission media.
Electromagnetic radiation can be transmitted through an optical medium, such as optical fiber, or through twisted pair wires, coaxial cable, or dielectric-slab waveguides. It may also pass through any physical material that is transparent to the specific wavelength, such as water, air, glass, or concrete. Sound is, by definition, the vibration of matter, so it requires a physical medium for transmission, as do other kinds of mechanical waves and heat energy. Historically, science incorporated various aether theories to explain the transmission medium. However, it is now known that electromagnetic waves do not require a physical transmission medium, and so can travel through the vacuum of free space. Regions of the insulative vacuum can become conductive for electrical conduction through the presence of free electrons, holes, or ions.
- https://en.wikipedia.org/wiki/Carrier_wave - carrier signal, or just carrier, is a waveform (usually sinusoidal) that is modulated (modified) with an information-bearing signal (called the message signal or modulation signal) for the purpose of conveying information.
This carrier wave usually has a much higher frequency than the message signal does. This is because it is impractical to transmit signals with low frequencies. The purpose of the carrier is usually either to transmit the information through space as an electromagnetic wave (as in radio communication), or to allow several carriers at different frequencies to share a common physical transmission medium by frequency division multiplexing (as in a cable television system). The term originated in radio communication, where the carrier wave creates the waves which carry the information (modulation) through the air from the transmitter to the receiver. The term is also used for an unmodulated emission in the absence of any modulating signal. In music production, carrier signals can be controlled by a modulating signal to change the sound property of an audio recording and add a sense of depth and movement.
- https://en.wikipedia.org/wiki/Carrier_system - a telecommunications system that transmits information, such as the voice signals of a telephone call and the video signals of television, by modulation of one or multiple carrier signals above the principal voice frequency or data rate.
Carrier systems typically transmit multiple channels of communication simultaneously over the shared medium using various forms of multiplexing. Prominent multiplexing methods of the carrier signal are time-division multiplexing (TDM, and frequency-division multiplexing (FDM). A cable television system is an example of frequency-division multiplexing. Many television programs are carried simultaneously on the same coaxial cable by sending each at a different frequency. Multiple layers of multiplexing may ultimately be performed upon a given input signal. For example, in the public switched telephone network, many telephone calls are sent over shared trunk lines by time-division multiplexing. For long-distance calls several of these channels may be sent over a communications satellite link by frequency-division multiplexing. At a given receiving node, specific channels may be demultiplexed individually.
- https://en.wikipedia.org/wiki/Sideband - a band of frequencies higher than or lower than the carrier frequency, that are the result of the modulation process. The sidebands carry the information transmitted by the radio signal. The sidebands comprise all the spectral components of the modulated signal except the carrier. The signal components above the carrier frequency constitute the upper sideband (USB), and those below the carrier frequency constitute the lower sideband (LSB). All forms of modulation produce sidebands.
- https://en.wikipedia.org/wiki/Spread_spectrum - designates techniques by which a signal (e.g., an electrical, electromagnetic, or acoustic, generated with a particular bandwidth is deliberately spread in the frequency domain, resulting in a signal with a wider bandwidth. Spread-spectrum techniques are used for the establishment of secure communications, increasing resistance to natural interference, noise, and jamming, to prevent detection, to limit power flux density (e.g., in satellite downlinks), and to enable multiple-access communications.
- https://en.wikipedia.org/wiki/Frequency-division_multiplexing - a technique by which the total bandwidth available in a communication medium is divided into a series of non-overlapping frequency bands, each of which is used to carry a separate signal. This allows a single transmission medium such as a microwave radio link, cable or optical fiber to be shared by multiple independent signals. Another use is to carry separate serial bits or segments of a higher rate signal in parallel. The most common example of frequency-division multiplexing is radio and television broadcasting, in which multiple radio signals at different frequencies pass through the air at the same time. Another example is cable television, in which many television channels are carried simultaneously on a single cable. FDM is also used by telephone systems to transmit multiple telephone calls through high capacity trunklines, communications satellites to transmit multiple channels of data on uplink and downlink radio beams, and broadband DSL modems to transmit large amounts of computer data through twisted pair telephone lines, among many other uses.
- https://en.wikipedia.org/wiki/Wavelength-division_multiplexing - a technology which multiplexes a number of optical carrier signals onto a single optical fiber by using different wavelengths (i.e., colors, of laser light. This technique enables bidirectional communications over a single strand of fiber, also called wavelength-division duplexing, as well as multiplication of capacity. The term WDM is commonly applied to an optical carrier, which is typically described by its wavelength, whereas frequency-division multiplexing typically applies to a radio carrier which is more often described by frequency. This is purely conventional because wavelength and frequency communicate the same information. Specifically, frequency (in Hertz, which is cycles per second) multiplied by wavelength (the physical length of one cycle) equals the velocity of the carrier wave. In a vacuum, this is the speed of light, usually denoted by the lowercase letter, c. In glass fiber, it is substantially slower, usually about 0.7 times c. The data rate in practical systems is a fraction of the carrier frequency.
- https://en.wikipedia.org/wiki/Frequency_response - the quantitative measure of the output spectrum of a system or device in response to a stimulus, and is used to characterize the dynamics of the system. It is a measure of magnitude and phase of the output as a function of frequency, in comparison to the input. In simplest terms, if a sine wave is injected into a system at a given frequency, a linear system will respond at that same frequency with a certain magnitude and a certain phase angle relative to the input. Also for a linear system, doubling the amplitude of the input will double the amplitude of the output. In addition, if the system is time-invariant (so LTI), then the frequency response also will not vary with time. Thus for LTI systems, the frequency response can be seen as applying the system's transfer function to a purely imaginary number argument representing the frequency of the sinusoidal excitation.
Two applications of frequency response analysis are related but have different objectives.For an audio system, the objective may be to reproduce the input signal with no distortion. That would require a uniform (flat) magnitude of response up to the bandwidth limitation of the system, with the signal delayed by precisely the same amount of time at all frequencies. That amount of time could be seconds, or weeks or months in the case of recorded media.In contrast, for a feedback apparatus used to control a dynamic system, the objective is to give the closed-loop system improved response as compared to the uncompensated system. The feedback generally needs to respond to system dynamics within a very small number of cycles of oscillation (usually less than one full cycle), and with a definite phase angle relative to the commanded control input. For feedback of sufficient amplification, getting the phase angle wrong can lead to instability for an open-loop stable system, or failure to stabilize a system that is open-loop unstable.Digital filters may be used for both audio systems and feedback control systems, but since the objectives are different, generally the phase characteristics of the filters will be significantly different for the two applications.
- https://en.wikipedia.org/wiki/Nyquist–Shannon_sampling_theorem - a fundamental bridge between continuous-time signals (often called "analog signals") and discrete-time signals (often called "digital signals"). It establishes a sufficient condition for a sample rate that permits a discrete sequence of samples to capture all the information from a continuous-time signal of finite bandwidth.
- Sampling: What Nyquist Didn't Say, and What to Do About It - sampling.pdf - The Nyquist-Shannon sampling theorem is useful, but often misused when engineers establish sampling rates or design anti-aliasing filters. This article explains how sampling affects a signal, and how to use this information to design a sampling system with known performance
- YouTube: Circuits and Systems (By Prof. Ali Hajimiri) - playlist
- https://en.wikipedia.org/wiki/Discrete_transform - mathematical transforms, often linear transforms, of signals between discrete domains, such as between discrete time and discrete frequency. Many common integral transforms used in signal processing have their discrete counterparts. For example, for the Fourier transform the counterpart is the discrete Fourier transform.In addition to spectral analysis of signals, discrete transforms play important role in data compression, signal detection, digital filtering and correlation analysis. The discrete cosine transform (DCT) is the most widely used transform coding compression algorithm in digital media, followed by the discrete wavelet transform (DWT).Transforms between a discrete domain and a continuous domain are not discrete transforms. For example, the discrete-time Fourier transform and the Z-transform, from discrete time to continuous frequency, and the Fourier series, from continuous time to discrete frequency, are outside the class of discrete transforms.Classical signal processing deals with one-dimensional discrete transforms. Other application areas, such as image processing, computer vision, high-definition television, visual telephony, etc. make use of two-dimensional and in general, multidimensional discrete transforms.
- https://en.wikipedia.org/wiki/Dirac_delta_function - the unit impulse symbol, may be regarded through its Laplace transform, as coming from the boundary values of a complex analytic function of a complex variable. The formal rules obeyed by this function are part of the operational calculus, a standard tool kit of physics and engineering. In many applications, the Dirac delta is regarded as a kind of limit (a weak limit) of a sequence of functions having a tall spike at the origin (in theory of distributions, this is a true limit). The approximating functions of the sequence are thus "approximate" or "nascent" delta functions.
- https://en.wikipedia.org/wiki/Window_function - also known as an apodization function or tapering function, is a mathematical function that is zero-valued outside of some chosen interval, normally symmetric around the middle of the interval, usually near a maximum in the middle, and usually tapering away from the middle. Mathematically, when another function or waveform/data-sequence is "multiplied" by a window function, the product is also zero-valued outside the interval: all that is left is the part where they overlap, the "view through the window". Equivalently, and in actual practice, the segment of data within the window is first isolated, and then only that data is multiplied by the window function values. Thus, tapering, not segmentation, is the main purpose of window functions.
- https://en.wikipedia.org/wiki/Reconstruction_filter - sometimes called an anti-imaging filter, is used to construct a smooth analog signal from a digital input, as in the case of a digital to analog converter (DAC) or other sampled data output device.
- https://en.wikipedia.org/wiki/Discrete_Fourier_transform - converts a finite sequence of equally-spaced samples of a function into a same-length sequence of equally-spaced samples of the discrete-time Fourier transform (DTFT), which is a complex-valued function of frequency. The interval at which the DTFT is sampled is the reciprocal of the duration of the input sequence. An inverse DFT is a Fourier series, using the DTFT samples as coefficients of complex sinusoids at the corresponding DTFT frequencies. It has the same sample-values as the original input sequence. The DFT is therefore said to be a frequency domain representation of the original input sequence. If the original sequence spans all the non-zero values of a function, its DTFT is continuous (and periodic), and the DFT provides discrete samples of one cycle. If the original sequence is one cycle of a periodic function, the DFT provides all the non-zero values of one DTFT cycle.
- https://en.wikipedia.org/wiki/Goertzel_algorithm - for efficient evaluation of the individual terms of the discrete Fourier transform (DFT). It is useful in certain practical applications, such as recognition of dual-tone multi-frequency signaling (DTMF) tones produced by the push buttons of the keypad of a traditional analog telephone. The algorithm was first described by Gerald Goertzel in 1958. Like the DFT, the Goertzel algorithm analyses one selectable frequency component from a discrete signal. Unlike direct DFT calculations, the Goertzel algorithm applies a single real-valued coefficient at each iteration, using real-valued arithmetic for real-valued input sequences. For covering a full spectrum, the Goertzel algorithm has a higher order of complexity than fast Fourier transform (FFT) algorithms, but for computing a small number of selected frequency components, it is more numerically efficient. The simple structure of the Goertzel algorithm makes it well suited to small processors and embedded applications.The Goertzel algorithm can also be used "in reverse" as a sinusoid synthesis function, which requires only 1 multiplication and 1 subtraction per generated sample.
Anti-aliasing
- https://en.wikipedia.org/wiki/Aliasing - an effect that causes different signals to become indistinguishable (or aliases of one another) when sampled. It also often refers to the distortion or artifact that results when a signal reconstructed from samples is different from the original continuous signal.Aliasing can occur in signals sampled in time, for instance digital audio, and is referred to as temporal aliasing. Aliasing is generally avoided by applying low pass filters or anti-aliasing filters (AAF) to the input signal before sampling and when converting a signal from a higher to a lower sampling rate. Suitable reconstruction filtering should then be used when restoring the sampled signal to the continuous domain or converting a signal from a lower to a higher sampling rate. For spatial anti-aliasing, the types of anti-aliasing include fast sample anti-aliasing (FSAA), multisample anti-aliasing, and supersampling.
- https://en.wikipedia.org/wiki/Anti-aliasing_filter - a filter used before a signal sampler to restrict the bandwidth of a signal to approximately or completely satisfy the Nyquist–Shannon sampling theorem over the band of interest. Since the theorem states that unambiguous reconstruction of the signal from its samples is possible when the power of frequencies above the Nyquist frequency is zero, a real anti-aliasing filter trades off between bandwidth and aliasing. A realizable anti-aliasing filter will typically either permit some aliasing to occur or else attenuate some in-band frequencies close to the Nyquist limit. For this reason, many practical systems sample higher than would be theoretically required by a perfect AAF in order to ensure that all frequencies of interest can be reconstructed, a practice called oversampling.
- Polynomial Transition Regions (PTR) - “Reducing Aliasing from Synthetic Audio Signals using Polynomial Transition Regions,”to appear in IEEE Signal Processing Letters.
- IMPROVED POLYNOMIAL TRANSITION REGIONS ALGORITHM FOR ALIAS-SUPPRESSED SIGNAL SYNTHESIS - One of the building blocks of virtual analog synthesizers is the oscillator algorithm producing simple geometric waveforms, such as saw or triangle. An important requirement for such a digital oscillator is that its spectrum is similar to that of the analog waveform, that is, the heavy aliasing that would result from a trivial modulo-counter based implementation is reduced. Until now, the computationally most efficient oscillator algorithm with reduced aliasing was the Polynomial Transition Regions (PTR) method. This paper shows that the efficiency can be increased even further by eliminating the phase offset of the PTR method. The new Efficient PTR (EPTR) algorithm produces the same output as the PTR method, while requires roughly 30% less operations, making it the most efficient alias-reduced oscillator algorithm up to date. In addition to presenting an EPTR sawtooth algorithm, the paper extends the differentiated parabolic wave (DPW) triangle algorithm to the case of asymmetric triangle waves, followed by an EPTR implementation. The new algorithm provides continuous transition between triangle and sawtooth signals, while still requires low computational power. LESS
- https://en.wikipedia.org/wiki/Angle_modulation - a class of carrier modulation that is used in telecommunications transmission systems. The class comprises frequency modulation (FM) and phase modulation (PM), and is based on altering the frequency or the phase, respectively, of a carrier signal to encode the message signal. This contrasts with varying the amplitude of the carrier, practiced in amplitude modulation (AM) transmission, the earliest of the major modulation methods used widely in early radio broadcasting.
- https://en.wikipedia.org/wiki/In-phase_and_quadrature_components - a sinusoid with angle modulation can be decomposed into, or synthesized from, two amplitude-modulated sinusoids that are offset in phase by one-quarter cycle (π/2 radians). All three functions have the same center frequency. The amplitude modulated sinusoids are known as the in-phase and quadrature components. In some contexts it is more convenient to refer to only the amplitude modulation (baseband) itself by those terms.
- https://en.wikipedia.org/wiki/Forward_error_correction - or channel coding is a technique used for controlling errors in data transmission over unreliable or noisy communication channels. The central idea is the sender encodes the message in a redundant way, most often by using an error-correcting code (ECC).
- https://en.wikipedia.org/wiki/Fountain_code - also known as rateless erasure codes are a class of erasure codes with the property that a potentially limitless sequence of encoding symbols can be generated from a given set of source symbols such that the original source symbols can ideally be recovered from any subset of the encoding symbols of size equal to or only slightly larger than the number of source symbols. The term fountain or rateless refers to the fact that these codes do not exhibit a fixed code rate.
- https://github.com/sudhirj/pump - Transmit large files over lossy networks using fountain codes
- https://github.com/catid/wirehair - Wirehair : O(N) Fountain Code for Large Data
- https://en.wikipedia.org/wiki/Communication_channel - refers either to a physical transmission medium such as a wire, or to a logical connection over a multiplexed medium such as a radio channel in telecommunications and computer networking. A channel is used for information transfer of, for example, a digital bit stream, from one or several senders to one or several receivers. A channel has a certain capacity for transmitting information, often measured by its bandwidth in Hz or its data rate in bits per second. Communicating an information signal across distance requires some form of pathway or medium. These pathways, called communication channels, use two types of media: Transmission line (e.g. twisted-pair, coaxial, and fiber-optic cable) and broadcast (e.g. microwave, satellite, radio, and infrared). In information theory, a channel refers to a theoretical channel model with certain error characteristics. In this more general view, a storage device is also a communication channel, which can be sent to (written) and received from (reading) and allows communication of an information signal across time.
Guides
- Signal Identification Wiki - intended to help identify radio signals through example sounds and waterfall images. Most signals are received and recorded using a software defined radio such as the RTL-SDR, Airspy, SDRPlay, HackRF, BladeRF, Funcube Dongle, USRP or others.
- Artemis - Radio Signals Recognition Manual ARTEMIS. In a nutshell. In short, ARTEMIS is a signals hunter software and a useful aid for radio listeners! The analysis of real-time spectra (from your SDR, for instance) is made simple: you can take advantage using one of the largest RF signal database (with over 400 records). Compare several signals properties (such as frequency, bandwidth, modulation, etc.) and verify what you are searching for through a waterfall/audio sample. A collection of filters allows you to narrow your search, making the identification of unknown signals, odd buzzes or weird noises way easier.
- Circles Sines and Signals - This text is designed to accompany your study of introductory digital signal processing, an eccentric piece of not-so-rigorous literature with a preoccupation for explaining things using interactive visualizations, animations and sound, to explain the Discrete Fourier Transform
- https://github.com/jackschaedler/circles-sines-signals - A Compact Primer On Digital Signal Processing
- https://en.wikipedia.org/wiki/Time_series - a series of data points indexed (or listed or graphed, in time order. Most commonly, a time series is a sequence taken at successive equally spaced points in time. Thus it is a sequence of discrete-time data. Examples of time series are heights of ocean tides, counts of sunspots, and the daily closing value of the Dow Jones Industrial Average.
A time series is very frequently plotted via a run chart (which is a temporal line chart). Time series are used in statistics, signal processing, pattern recognition, econometrics, mathematical finance, weather forecasting, earthquake prediction, electroencephalography, control engineering, astronomy, communications engineering, and largely in any domain of applied science and engineering which involves temporal measurements.
- https://github.com/ourownstory/neural_prophet - an easy to learn framework for interpretable time series forecasting. NeuralProphet is built on PyTorch and combines Neural Networks and traditional time-series algorithms, inspired by Facebook Prophet and AR-Net.
ToSort
- https://github.com/ZipCPU/dspfilters - a variety of demonstration filters. These filters will be discussed and used as examples on the ZipCPU blog at zipcpu.com. If you watch carefully, you may find filters here before they are posted, as I'm going to be doing my development here. Still, there have been many posts already that you may find valuable. These include: A description (and implementation of) the two simplest filters I know of; A Generic FIR implementation; A Simpler Generic FIR implementation; A Moving Average/Boxcar Filter; A Linear Feedback Shift Register (LFSR); Building a generic filtering test harness; Measuring a filter's frequency response; Delaying elements in a DSP system; Generating a Pseudorandom noise stream via an LFSR; An Example LFSR Output; And How to generate multiple bits per clock using an LFSR; Testing a generic filter using the test harness; Building a slower filter, one that time-multiplexes a single one hardware multiply across many coefficients.
- https://github.com/mzadel/noiseband - generate band-limited noise through additive synthesis
- https://github.com/lorenSchmidt/fractal_cell_noise - this is functionally similar to well known fractal noise algorithms such as value noise, perlin noise, or simplex noise, but does not exhibit the same grid artifacts. it's useful for situations which benefit from organic feature placement or very natural slope distribution (when using perlin or value noise in slope-intensive applications, grid artifacts can be a problem). this is most closely related to cellular noise algorithms such as worley noise.
- https://en.wikipedia.org/wiki/Signals_intelligence - intelligence-gathering by interception of signals, whether communications between people (communications intelligence—abbreviated to COMINT) or from electronic signals not directly used in communication (electronic intelligence—abbreviated to ELINT). Signals intelligence is a subset of intelligence collection management. As classified and sensitive information is usually encrypted, signals intelligence in turn involves the use of cryptanalysis to decipher the messages. Traffic analysis—the study of who is signaling whom and in what quantity—is also used to integrate information again.