Перейти к содержанию
    

Krys

Свой
  • Постов

    2 052
  • Зарегистрирован

  • Посещение

Весь контент Krys


  1. Расширю вопрос. Есть несколько стратегий разводки в планахед, запущенных в параллель на разных ядрах. Хочется, чтобы в конце разводки каждой автоматически запускался битген. Как это настроить, подскажите пожалуйста.
  2. это возможно связано с той самой проблемой 4 слов датамувера, которую мы с Вами уже обсуждали. И тогда кажется Вы куда-то пропали и не отписались, что вышло. 4 слова датамувер принимает всегда, даже если ему не было команды на приём. Это те самые 16 байтов. Ваши 112 байтов + эти 16 и получается 128 байтов. Что конкретно происходит - не берусь судить, конкретно с этим ядром не работал. Но похоже у них у всех одинаковое поведение.
  3. Это возможно связано с разными способами представления периодического спектра. Одна функция показывает спектр от 0 до Fs, а вторая - от -Fs/2 до +Fs/2. Хотя вообще-то функция fft в матлабе показывает спектр вторым образом, т.е. должны быть палки и 100кГц и 900кГц. А чтобы было первым образом, в матлабе есть функция fftshift: http://www.mathworks.com/help/matlab/ref/fftshift.html
  4. а у меня его нет, он был на прошлой работе, но там запрещено что-то выкладывать )) Сейчас это на новой работе пока не требуется. Почитайте эту тему и найдите ещё поиском похожие темы, они точно были. Возможно, там уже приводили готовые скриптики. В целом, ничего сложного нет - надо потратить денёк, читануть, как пишут тикль скрипты и написать свой )
  5. Я вообще не обращаю внимание на сообщения синтезатора о тайминге в конце синтеза. Смотрю только после PAR. А по поводу утилизации: результат может быть достигнут довольно близкий (синтез к PAR), если в PAR выключить все оптимизации типа registers duplication и т.п. Но кому это надо? Лучше просто не смотреть на сообщения синтезатора )))
  6. Это всё понятно. Но мой вопрос был в том, что изначально было предположение, что PAR расходует элементы (допустим LUT) на интерконнект там, где по результатам синтеза LUTа быть не должно, а должна быть прямая связь. Вывод из предыдущих Ваших скриншотов такой, что предположение было ошибочным? Там потом ещё ув. jojo написал, что были задействованы лишь статические мультиплексоры, которые не задействованными и не могли быть. Т.е. их задействование неверно относить к аргументу в пользу предположения. Да, это тоже всё понятно, не спорю. Особенно бывают всякие схемы оптимизации типа registers duplication и т.п.
  7. Я правильно понял, что всё же причина не в этом, и ячейки под интерконнект не расходуются (по крайней мере сверх того, что предложил синтез)?
  8. В том-то и заключается моё удивление, что я такого никогда не видел в схематике после роутинга. А Вам несложно какой-то живой пример, где например вот кусок кода описывающий прямую связь между регистрами, а вот схема, где эта прямая связь - вовсе не прямая, а через допустим LUT?
  9. Чот сказки какие-то )) Подикась изначально неоптимально написано. Наверное на сверхвысоком уровне (со взгляда программиста, а не схемотехника). Потом Synplify догадывается, что программист имел в виду, а XST не догадывается. А если бы писал разработчик с мышлением схемотехника, то и XST бы догадался.
  10. Подскажите, пожалуйста, как ячейки бывают занятыми под интерконнект? Если между двумя регистрами надо прокинуть связь накоротко, а ячейка представляет собой например LUT, то PAR будет прокидывать связь через LUT, а не напрямую?
  11. Для сложения - без разницы. А для умножения - согласен, могут быть нюансы. И то, у Xilinx реализован аппаратный умножитель чисел дополнительного кода, так что это для него нативно.
  12. Спасибо, т.е. изначально в передаваемый сигнал подмешивается некий "пилот"? Тогда в приёмнике, зная все параметры этого "пилота", можно понять, куда весь спектр после переноса уехал?
  13. А подскажите, пожалуйста, за счёт чего коэффициенты децимации 2 дают экономию умножителей? За счёт half-band фильтров? А это уже не вопросы )))
  14. Хорошо, допустим с таблицами понятно. Хотя тоже не очень. Если Вы говорите про линейную поправку, подразумевая кусочно-линейную сплайн-интерполяцию, то почему бы её без таблицы не сделать примерно такой записью: A[phase[15:8]] + (A[phase[15:8 + 1'b1]] - A[phase[15:8]]) * phase[7:0] / 256 ? Т.е. берутся 2 соседние точки таблицы, между ними проводится прямая, конкретная точка на прямой определяется младшими разрядами фазы. Остаётся тогда вопрос: что за 4 счётчика?
  15. Ааа, тогда вопросов нет, спасибо. Точнее остаются вопросы к ув. Corner, как пользоваться 2 табличками на 256 и что за 4 счётчика
  16. иногда просто под аккумулятором понимается сумматор с регистром хранения предыдущих данных. Без суммирования не накопить. А здесь похоже под аккумулятором понимается просто регистр. Зачем тогда путать людей и использовать один термин вместо другого... Начальную фазу fi можно затолкать сразу в регистр аккумулятора как начальное значение. Тогда её не придётся постоянно прибавлять к текущей фазе wt
  17. И как пользоваться поправочной табличкой? Может, дадите ссылку, что читануть по этому поводу? И вот Вы пишете: "Стандартный DDS это аккумулятор+сумматор фазы+табличка." непонятно: чем аккумулятор отличается от сумматора фазы?
  18. Вам-то хорошо гадать про других людей, сами-то о себе никакой информации в профиле вообще не оставили... Вы из какого города?
  19. ТС, Вы куда исчезаете так надолго? Потом приходится людей опять в тему созывать через приват...
  20. Огромное спасибо! Это самый "кошерный" вариант. Остальные - самодельные костыли ))
×
×
  • Создать...