Цитата(skyv @ Oct 20 2010, 14:34)

Пока лучше опишу чего не выходит.
Посмотрел текст фильтра на VHDL и возникают вопросы.
1. Сигнал reset нужен только для начальной инициализации и в
процессе работы он не нужен?
Замечание: там не VHDL код, а Verilog.
VHDL приводиться в документации на TIшную м/сх AMC1203.
Сигнал "reset" только для начальной инициализации.
Цитата(skyv @ Oct 20 2010, 14:34)

2. Не пойму комментарий.
if(mdata1==0)
ip_data1 <= 0; /* change from a 0 to a -1 for 2's comp */
else
ip_data1 <= 1;
Если mdata1==0, то всегда ip_data1 = 0, а где и когда получаем -1?
В интернетах об этот комментарий много копий сломано на буржуйских форумах.
Я эту штуковину моделировал в Delphi. Брал "0" и "1" как в тексте.
Цитата(skyv @ Oct 20 2010, 14:34)

3.Долее, не пойму как могут работать интеграторы если ip_data1 всегда
0 или 1.
К Acc1 либо прибавляется единичка, либо нет.
В схеме с интеграторами нас интересует только изменение Acc3 за промежуток между децимацией.
Ну да, случаются переполнения, ну и аллах с ними, нас же интересует только приращение Acc3 и всё.
А при должной разрядности сумматоров (чтоб между моментами выборки дециматора не произошло 2 или более переполнения Acc3) одно переполнение ни как не скажется на вычислении приращения.
При моделировании я использовал беззнаковые числа с фиксированной точкой. На вход подавал засигмодельтированную синусоиду, на выходе получал синусоиду на фоне постоянной составляющей в полшкалы.
Мне пока не совсем понятны частотные характеристики этого чуда.
Есть такой чип AMC1210, который может сам всё отфильтровать.