Цитата(sergey sva @ Nov 13 2010, 21:06)

Активный когда на одном из входов 1 и не активный когда 0. может быть и дольше одной секунды но тогда нужно будет ошибку выдавать в мк. Еще смущает такой момент сигналов 42 они не зависимы друг от друга на одном например может быть 1мгц а на другом 500кгц а память будет одна, если одновременно несколько сигналов (а может и все 42) установятся в 0 то их можно не успеть записать в Sram , так прикинул за 0,5-1 мкс нужно успеть записать 42 сигнала 42*4 = 168 байт за 0,5мкс скорость получается 340мб может конечно что то не так посчитал.
..ну пусть так . Пришла единица в канал, что мы делаем ? Увеличим на единицу счётчик событий - это раз , второе начинаем собственно подсчитывать в тактах длительность этой единицы , по окончанию события - пишем результат в запоминающий регистр канала (записываем состояния счётчика событий + значение счётчика длинны импульса) , сбрасываем значение счётчика длинны импульсов .
И так по всем 42 каналам . Всю систему нужно сделать синхронной (работающей от одного источника клоков) , в таком случае опрос выходных регистров с последующей передачей их значений в память не составит проблемы. передавать данные в память можно в то время как идёт новый подсчёт, по этому не имеет значения что разные каналы у нас будут одновременно заканчивать подсчёт . Последовательно всё время обегаем все 42 канала и смотрим готов к передаче данных в память или нет .
В худшем случае , если по всем каналам всё время будут идти короткие импульсы 1 мкс и ещё по 10 каналам 200 нс , тогда конечно передавать в память 42 * 32 бита будет проблематично , в таком случае нужно суммировать непосредственно в каждом канале со значением хранящимся в его канальном регистре , а передавать в память только результат за 50 измерений.
Цитата
Думал так когда на входе 1 подавать на счетчик импульсы clk когда ноль записывать в память и обнулять счетчик.
только получается точность будет зависеть от длительности импульса.
..точность будет по любому зависеть от длинны импульса , просто если быстро-быстро измерять то можно добиться приемлемой точности в худшем случае. Если у вас самые короткие импульсы - 200 нс то что бы измерять с точностью около процента надо мерить на частоте что-то около 500 МГЦ что наверное не наш случай . Наверное по этому вы и проводите серию измерений чтобы усреднить и получить ответ близкий к правде .