Difference between revisions of "Arbitrary Sampling Rate Converter in VHDL"
(→Hardware solutions) |
|||
Line 12: | Line 12: | ||
Standalone hardware SRC IC's for converting digital audio exist, but they are not cheap. To name some: | Standalone hardware SRC IC's for converting digital audio exist, but they are not cheap. To name some: | ||
− | - Analog Devices AD1895, AD1896 and AD1893 | + | - Analog Devices AD1895, AD1896 and AD1893<br> |
− | - Cirrus Logic CS8420, CS8421, and CS8422 | + | - Cirrus Logic CS8420, CS8421, and CS8422<br> |
− | - Texas Instruments SRC4190, SRC4382, SRC4392, SRC4190, SRC4184, SRC4194, SRC4190, SRC4192 and SRC4193 | + | - Texas Instruments SRC4190, SRC4382, SRC4392, SRC4190, SRC4184, SRC4194, SRC4190, SRC4192 and SRC4193<br> |
- AKM AK4120, AK4121, AK4122, AK4127, AK4128 and AK4129 | - AKM AK4120, AK4121, AK4122, AK4127, AK4128 and AK4129 | ||
Revision as of 00:46, 4 March 2014
Project: Arbitrary Sampling Rate Converter in VHDL | |
---|---|
Featured: | |
State | Active |
Members | Danny Witberg |
GitHub | No GitHub project defined. Add your project here. |
Description | ASRC's: What, how, why? |
Picture | |
No project picture! Fill in form Picture or Upload a jpeg here |
Summary
This project describes the theory of an Arbitrary Sampling Rate Converter, and a practical lightweight implementation in VHDL. ASRC's are ofthen used in digital audio, to adapt an input to an output which differ in sampling rates to each other. If sampling rates are not matched, clicking noises and distortion can be heard and it could ruin your signal.
Hardware solutions
Standalone hardware SRC IC's for converting digital audio exist, but they are not cheap. To name some:
- Analog Devices AD1895, AD1896 and AD1893
- Cirrus Logic CS8420, CS8421, and CS8422
- Texas Instruments SRC4190, SRC4382, SRC4392, SRC4190, SRC4184, SRC4194, SRC4190, SRC4192 and SRC4193
- AKM AK4120, AK4121, AK4122, AK4127, AK4128 and AK4129
Theory of operation
Conversion between sampling rates of a digital (audio) signal is all about interpolation. Between the actual input signal and the desired output signal, additional samples must be created, or omitted. There are a number of techniques that can be used for this, but the most effective is to convert or "upsample" the input signal to a very high sampling rate, and then resample that signal to the desired output sampling rate.