dvladim 0 16 ноября, 2008 Опубликовано 16 ноября, 2008 · Жалоба рекомендуется все регистры сбрасывать по питанию именно в 0. Можно и в 1, но это требует дополнительных ресурсов. Это так, к слову. Так, к слову, дополнительных ресурсов не требует. Альтера это делает инверсией входа и выхода триггера. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
barabek 0 16 ноября, 2008 Опубликовано 16 ноября, 2008 (изменено) · Жалоба Так, к слову, дополнительных ресурсов не требует. Альтера это делает инверсией входа и выхода триггера. Да, но это же дополнительные все-таки ресурсы :). По крайне мере я так понял. А их фитер мог бы для чего-нибудь другого использовать. Или нет? Изменено 16 ноября, 2008 пользователем barabek Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 16 ноября, 2008 Опубликовано 16 ноября, 2008 · Жалоба Как можно И "моментально" среагировать И "не терять предыдущего". Разве это возможно? Вы привели пример : "Вот в случае если записан код для 1сек. то ЧПУ в этот момент может изменить 1000раз." Допустим такую ситуацию. Записан код на 1с. Прошло допустим 0,011 секунд. Пришел код на 10мс. Теперь возможны 2 ситуации. 1. Т.к. уже отсчитано более 10мс, перегружаемся и считаем заново (мое предложение - один из вариантов). 2. Досчитываем до 1 с, а затем переходим на новую частоту (например, Ваш вариант). Но И то И одновременно другое реализовать нельзя. ИЛИ-ИЛИ. Может я что-то не догоняю? А на счет ресурсов - так их же много :). А если у Вас нужно предусмотреть reset, то у ALTERы, например, рекомендуется все регистры сбрасывать по питанию именно в 0. Можно и в 1, но это требует дополнительных ресурсов. Это так, к слову. Я думал в таком плане. Когда приходит новый код то берется из счетчиков код и логически складываем с новым кодом и опять в счетчик, а как мы знаем лог. 1+1=1 т.е. получается в счетчике будет новый код + недосчитанный код. Наверное вот это и будет "моментальное" реагирование. Помоему должно работать, только как это аппаратно более гибко сделать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Вот у меня такая блок-схема прорисовывается. Для примера нарисовал 4разрядный преобразователь код-частота. Я конечно не симулировал эту схему, но вроде должно работать, только надо выход тоже простробировать входной частотой. Здесь как бы получается "моментальное" реагирование на входной код не теряя код в счетчике. Ваше мнение? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ed) 0 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Согласен с Dopler. Спасибо. Я так тоже думал, это один из вариантов.Но это тоже самое, когда код маленький счетчик долго переполняется, а в случае пока он не переполнился код допустим поменялся(резко вырос) нужно соответственно и код менять + тот код который не досчитал, а не ждать пока он досчитает. Вот это будет наверное более реальное воздействие. Это будет не реальное воздействие. Т.к. здесь используется не терминология счётчиков: досчитал и переполнился, а терминология мгновенной фазы и скорости её изменения. Соответственно быстрые изменения частоты (скорости изменения мгновенной фазы) не будут накапливать ошибку результирующей частоты. Выходным сигналом будет служить старший бит регистра сумматора. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Согласен с Dopler. Это будет не реальное воздействие. Т.к. здесь используется не терминология счётчиков: досчитал и переполнился, а терминология мгновенной фазы и скорости её изменения. Соответственно быстрые изменения частоты (скорости изменения мгновенной фазы) не будут накапливать ошибку результирующей частоты. Выходным сигналом будет служить старший бит регистра сумматора. Как я понял, Dopler описал принцип X = X+КОД до какого то максимального значения. Т.е. чем больше код, тем быстрее досчитает до этого значения. Но мне кажется, что если по ресунку записать в регистр большой код, то счетчик тоже будет быстро переполнятся и соответственно переполнения будут быстро происходить, а это помоему тоже самое, а аппаратная реализация будет на много проще. Или же я что-то не понемаю? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ed) 0 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Как я понял, Dopler описал принцип X = X+КОД до какого то максимального значения. Т.е. чем больше код, тем быстрее досчитает до этого значения. Но мне кажется, что если по ресунку записать в регистр большой код, то счетчик тоже будет быстро переполнятся и соответственно переполнения будут быстро происходить, а это помоему тоже самое, а аппаратная реализация будет на много проще. Или же я что-то не понемаю? Вы же сами говорили, что преобразователь должен "правильно" себя вести в случае когда скорость изменения частоты намного выше периода выходного сигнала. Для аккумулятора фазы это будет означать лишь быстрые изменения скорости перемещения выходного сигнала из одного состояния в противоположное. Аппаратная реализация довольно проста: регистр для мгновенной фазы, регистр для кода частоты и сумматор, который синхронно с опорной частотой производит их суммирование, а результат опять сохраняет в регистре мгновенной фазы. Переполнение этого регистра не имеет значения, и эквивалентно переходу фазы с 2*Pi обратно на 0. Старший бит можно интерпретировать как знак косинуса текущей фазы: от 0 до Pi -> +1 (для лог. "1") от Pi до 2*Pi -> -1 (для лог. "0") Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Вы же сами говорили, что преобразователь должен "правильно" себя вести в случае когда скорость изменения частоты намного выше периода выходного сигнала. Для аккумулятора фазы это будет означать лишь быстрые изменения скорости перемещения выходного сигнала из одного состояния в противоположное. Аппаратная реализация довольно проста: регистр для мгновенной фазы, регистр для кода частоты и сумматор, который синхронно с опорной частотой производит их суммирование, а результат опять сохраняет в регистре мгновенной фазы. Переполнение этого регистра не имеет значения, и эквивалентно переходу фазы с 2*Pi обратно на 0. Старший бит можно интерпретировать как знак косинуса текущей фазы: от 0 до Pi -> +1 (для лог. "1") от Pi до 2*Pi -> -1 (для лог. "0") Я всего лишь хочу сделать аналог ЦАПа, только здесь выход КОД-ЧАСТОТА, а в ЦАПе КОД-НАПРЯЖЕНИЕ или ТОК. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ed) 0 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Я всего лишь хочу сделать аналог ЦАПа, только здесь выход КОД-ЧАСТОТА, а в ЦАПе КОД-НАПРЯЖЕНИЕ или ТОК. Об этом и речь: код->частота. Погугли Direct Digital Synthesis (DDS). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Об этом и речь: код->частота. Погугли Direct Digital Synthesis (DDS). Хорошо. А по поводу блок-схемы что скажешь если я понятно нарисовал? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ed) 0 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Хорошо. А по поводу блок-схемы что скажешь если я понятно нарисовал? Насчёт OR'ить. Посмотри что получится если производить запись одного и того же кода частоты. Особо интересен случай, когда периодичность записи кода выше требуемой выходной частоты. В этом случае выход всегда будет в "1", т.е. никакой частоты вообще. И ещё, что насчёт скваженности? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 19 ноября, 2008 Опубликовано 19 ноября, 2008 · Жалоба Насчёт OR'ить. Посмотри что получится если производить запись одного и того же кода частоты. Особо интересен случай, когда периодичность записи кода выше требуемой выходной частоты. В этом случае выход всегда будет в "1", т.е. никакой частоты вообще. И ещё, что насчёт скваженности? Допустим КОД= 0001(bin) он и будет прописывать в младшем разряде 1 и все.Ну и конечно же логический + вых. счетчика. Загрузка счетчика происходит стробом, а не статично. Запись кода в основном будет выше вых. частоты. Я мысленно просимулировал эту схему, вроде накладок не должно быть.А, что на счет скваженности?. Выходной сигнал будет простробирован допустим вх. частотой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 21 ноября, 2008 Опубликовано 21 ноября, 2008 (изменено) · Жалоба Все, схемку собрал, просимулировал в QUARTUS, работает должным образом. Схему собрал на макрофункциях. Сейчас посмотрим что в железе получится. Изменено 21 ноября, 2008 пользователем Iptash Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться