dak 0 2 февраля, 2016 Опубликовано 2 февраля, 2016 · Жалоба Здравствуйте. Надо сделать делитель частоты, чтобы коэффициент деления был дробным. Понятно, что на ПЛИС можно сделать только некую имитацию такого деления. Есть мысль, что провернуть это можно примерно так: какое-то число раз делим частоту в х раз, а потом разок в х-1 раз. Тогда в среднем коэффициент деления уменьшается, но выглядит это как-то не очень красиво. Да и не понятно, сколько раз делить в х раз перед делением на х-1,чтобы в среднем получить некий меньший коэффициент деления (как его считать - тоже вопрос). Какие еще есть варианты? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 2 февраля, 2016 Опубликовано 2 февраля, 2016 · Жалоба Здравствуйте. Надо сделать делитель частоты, чтобы коэффициент деления был дробным. Понятно, что на ПЛИС можно сделать только некую имитацию такого деления. Есть мысль, что провернуть это можно примерно так: какое-то число раз делим частоту в х раз, а потом разок в х-1 раз. Тогда в среднем коэффициент деления уменьшается, но выглядит это как-то не очень красиво. Да и не понятно, сколько раз делить в х раз перед делением на х-1,чтобы в среднем получить некий меньший коэффициент деления (как его считать - тоже вопрос). Какие еще есть варианты? PLL с динамической настройкой частоты Не подходит? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dak 0 2 февраля, 2016 Опубликовано 2 февраля, 2016 · Жалоба PLL и Динамическая настройка PLL Не подходит? Думал об этом. Почитал документацию к используемой серии ПЛИС (Xilinx Virtex - 5), и вроде как там нет такой возможности. Возможно,я не внимательно смотрел или что-то не так понял. Посмотрю еще раз. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 2 февраля, 2016 Опубликовано 2 февраля, 2016 · Жалоба Думал об этом. Почитал документацию к используемой серии ПЛИС (Xilinx Virtex - 5), и вроде как там нет такой возможности. Возможно,я не внимательно смотрел или что-то не так понял. Посмотрю еще раз. стр 58 http://www.xilinx.com/support/documentatio...uides/ug190.pdf Еще можно попробовать так (документ старенький!) - во вложении, но я бы воспользовался динамической настройкой PLL UnusualClockDeviders.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 2 февраля, 2016 Опубликовано 2 февраля, 2016 · Жалоба Приветствую! Да и не понятно, сколько раз делить в х раз перед делением на х-1,чтобы в среднем получить некий меньший коэффициент деления (как его считать - тоже вопрос). Какие еще есть варианты? Вариантов усложнить себе жизнь много - один из самых простых - каждый такт F1 суммируете в регистр шириной N бит константу K =<2^(N-1). Старший бит регистра будет выходом деленной частоты F2=F1*K/2^N. Успехов! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VslavX 0 2 февраля, 2016 Опубликовано 2 февраля, 2016 · Жалоба Если фазовая точность выходного сигнала не важна, то можно воспользоваться фазовым аккумулятором, вот тут нормально объясняется. Я обычно использую для тактирования UART-ов, чтобы не занимать PLL, но народ даже для генерации пиксельного клока и цветовой поднесущей на видеовыходе ухитряется использовать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Bad0512 2 3 февраля, 2016 Опубликовано 3 февраля, 2016 · Жалоба Здравствуйте. Надо сделать делитель частоты, чтобы коэффициент деления был дробным. Понятно, что на ПЛИС можно сделать только некую имитацию такого деления. Есть мысль, что провернуть это можно примерно так: какое-то число раз делим частоту в х раз, а потом разок в х-1 раз. Тогда в среднем коэффициент деления уменьшается, но выглядит это как-то не очень красиво. Да и не понятно, сколько раз делить в х раз перед делением на х-1,чтобы в среднем получить некий меньший коэффициент деления (как его считать - тоже вопрос). Какие еще есть варианты? Главный вопрос - для чего потом вам нужна эта частота? Есть несколько разных способов получить дробную частоту. Всё зависит от конкретных условий (соотношения частот, абсолютный значения частоты и для чего потом планируете её использовать). Самый распространённый способ получения такой частоты - NCO. Но в этом способе есть свои особенности. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shamil 2 3 февраля, 2016 Опубликовано 3 февраля, 2016 · Жалоба Посмотрите здесь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dak 0 4 февраля, 2016 Опубликовано 4 февраля, 2016 · Жалоба стр 58 http://www.xilinx.com/support/documentatio...uides/ug190.pdf Еще можно попробовать так (документ старенький!) - во вложении, но я бы воспользовался динамической настройкой PLL Спасибо, посмотрю. Приветствую! Вариантов усложнить себе жизнь много - один из самых простых - каждый такт F1 суммируете в регистр шириной N бит константу K =<2^(N-1). Старший бит регистра будет выходом деленной частоты F2=F1*K/2^N. Успехов! Rob. Спасибо, идея понятна. Если фазовая точность выходного сигнала не важна, то можно воспользоваться фазовым аккумулятором, вот тут нормально объясняется. Я обычно использую для тактирования UART-ов, чтобы не занимать PLL, но народ даже для генерации пиксельного клока и цветовой поднесущей на видеовыходе ухитряется использовать. Спасибо. Как я понял из описания по ссылке предложенный метод эквивалентен тому, что посоветовал RobFPGA. Главный вопрос - для чего потом вам нужна эта частота? Есть несколько разных способов получить дробную частоту. Всё зависит от конкретных условий (соотношения частот, абсолютный значения частоты и для чего потом планируете её использовать). Самый распространённый способ получения такой частоты - NCO. Но в этом способе есть свои особенности. По полученным тактовым сигналам производится чтение из памяти и модуляция. Посмотрите здесь. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Гость TSerg 4 февраля, 2016 Опубликовано 4 февраля, 2016 · Жалоба 155(133) ИЕ8 :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dak 0 6 февраля, 2016 Опубликовано 6 февраля, 2016 (изменено) · Жалоба VslavX А как хорошо Ваш метод в железе работает? Я сравниваю результаты в Моделсиме с калькулятором на сайте и при моделировании получаю результат слегка иной. То есть, у меня там еще некоторая стороняя логика есть, которая в итоге вычиляет константу для суммирования; и значение этой константы совпадает с вычисленным на сайте, но частота в итоге чуть больше получается. Или в среднем я все равно получу требуемую? Или ,если мне нужна большая точность при делении частоты, то стоит задуматься о других методах? Изменено 6 февраля, 2016 пользователем dak Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shamrel 0 6 февраля, 2016 Опубликовано 6 февраля, 2016 · Жалоба Рекомендую: Baud generator Проект UART целиком . Те же яйца, только в профиль. Кратко. Лаконично. Настраиваемо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dak 0 6 февраля, 2016 Опубликовано 6 февраля, 2016 (изменено) · Жалоба Рекомендую: Baud generator Проект UART целиком . Те же яйца, только в профиль. Кратко. Лаконично. Настраиваемо. Спасибо. Жаль, но я не знаю Верилог. По описанию вроде тоже самое,что я на VHDL сделал. Изменено 6 февраля, 2016 пользователем dak Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VslavX 0 8 февраля, 2016 Опубликовано 8 февраля, 2016 · Жалоба VslavX А как хорошо Ваш метод в железе работает? Я сравниваю результаты в Моделсиме с калькулятором на сайте и при моделировании получаю результат слегка иной. Сайт не мой, поэтому что там в калькуляторе выдается - сложно сказать. А для генерации Baud_x16 в модуле UART оно вполне подходит и работает хорошо. На выходе будет небольшое дрожание фазы (в пределах периода опорной частоты), но для UART это неважно. Вот пример системы с таким UART-ом. Сейчас разрабатываю модуль видеозахвата для ретрокомпов, по прикидкам метод фазового аккумулятора тоже неплохо подходит для генерации пиксельной частоты. Или ,если мне нужна большая точность при делении частоты, то стоит задуматься о других методах? Смотря что понимать под точностью, если надо уменьшить jitter - то наращивать опорную частоту, если wander - то увеличивать разрядность сумматора. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dak 0 8 февраля, 2016 Опубликовано 8 февраля, 2016 · Жалоба Сайт не мой, поэтому что там в калькуляторе выдается - сложно сказать. А для генерации Baud_x16 в модуле UART оно вполне подходит и работает хорошо. На выходе будет небольшое дрожание фазы (в пределах периода опорной частоты), но для UART это неважно. Вот пример системы с таким UART-ом. Сейчас разрабатываю модуль видеозахвата для ретрокомпов, по прикидкам метод фазового аккумулятора тоже неплохо подходит для генерации пиксельной частоты. Смотря что понимать под точностью, если надо уменьшить jitter - то наращивать опорную частоту, если wander - то увеличивать разрядность сумматора. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться