Этот пример показывает сравнение бинарного взвешенного DAC от Mixed-Signal Blockset™ к идеальной модели DAC.
Эта модель сравнивает двоичный взвешенный DAC и эквивалентную идеальную модель DAC. Чтобы сравнение было допустимым, оба DAC должны дискретизировать свои входы одновременно. Параметры (ссылка, смещение, частота дискретизации, количество бит) как двухкомпонентного взвешенного DAC, так и идеального DAC получают из TLC5615 таблицы данных.
Идеальная модель DAC состоит из блока Sample и Hold, блока Gain, блока Bias и блока Data Type Conversion. Sample and Hold обеспечивает вход входных данных в DAC с правильной скоростью (Fs
), даже если цифровой входной сигнал был дискретизирован с некоторой другой скоростью. Блок Gain масштабирует цифровое слово до аналоговой шкалы, и блок Bias применяет смещение, чтобы соответствовать выходу бинарного взвешенного DAC. Двухкомпонентный взвешенный DAC использует свой ссылочный параметр в качестве полной шкалы выходных областей значений, тем самым делая свой коэффициент усиления пропускной способности эквивалентным Ref / (2^NBits - 1)
. Блок Data Type Conversion обеспечивает соответствие типа выходных данных двоичному взвешенному DAC.
Двоичный взвешенный DAC выводит скаляр двойной значения. Выходы и бинарного взвешенного DAC, и идеального DAC формируют значения на интервале [-Ref, Ref - 1 LSB] / 2
.
model = 'BinDacIdealCompare';
open_system(model);
Блок Scope показывает различие между двумя выходами слева и двумя самими выходами справа.
open_system([model '/Scope']);
sim(model);
Спектральный анализатор показывает спектры двух выходов. Анализатор Спектра требует дискретизированных входов с фиксированным шагом, которые блоки Zero-Order Hold выполняют с той же скоростью, с которой DAC выполняет преобразования, Fs
.
close_system([model '/Scope']); open_system([model '/Spectrum Analyzer']); sim(model);