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

dvladim

Свой
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

Информация о dvladim

  • Звание
    Знающий

Контакты

  • Сайт
    http://
  • ICQ
    0

Информация

  • Город
    Воронеж
  1. Исходя из того что состояний 72 и нумеруются они от 0 до 71. assign data_out = data_in; always @ (posedge clk or negedge reset) begin if (!reset) state <= S0; else if (ss & (state != S71)) state <= state + 1'b1; end
  2. А вам нужен именно GX ? Т.е. трансиверы нужны в обязательном порядке? Если - да, то учитывайте, что трансивер потребляет никак не меньше 5mW/Gbps/lane. Если - нет, то берите Cyclone 10 LP.
  3. Offtop. Послушайте Денис, Вы не думали завести репозитарий на github например для всяких таких поделок? Мне кажется это было бы удобнее, если Вашим работам разрешено находиться в открытом доступе.
  4. Вы вставляете мегафункцию и получаете выход клока. 55 и 116 - это крайние значения генератора. Реально вы получите нечто среднее в зависимости от температуры и напряжения питания.
  5. Что ж удобные имена это действительно удобно. Однако, в вашем описании клоков есть -phase 161.98 -phase 80.98. Насколько это верно? Может имеет смысл попробовать с derive_pll_clocks? Правильно ли вы описали клоки? Если будут отличия - то это и будет вопрос отличий. Что касается мультициклов, то как я понял, у вас времянка сходится, а работает не так как ожидается. Т.е. мультициклы ни при чем.
  6. И все-таки по поводу sdc: вы бы привели его здесь. Там все что нужно прописано? Всякие derive_clock_uncertainty derive_pll_clocks ?
  7. Цитата(rolin @ May 2 2018, 18:12) Увы, нет. В Верилоге идентично, что 7:0 что 0:7. Бред сивой кобылы. Ну не нравится, напишите так: Y[7:0] = {X[0], X[1], X[2], X[3], X[4], X[5], X[6], X[7]}. Провода, они и есть провода.
  8. Не сочтите за наброс, но: А если все файлы бинарные и их нужно версионизировать, иметь информацию кто, когда и что менял. Возможность поднять файл от нужной даты. Что тогда - git столь же хорош, что и svn? Все это с учетом того что последняя ревизия весит порядка 10 Гб, а весь около 50-100.
  9. Цитата(AVR @ Apr 20 2018, 14:52) В оригинальном Cyclone III эти возможности есть, что SERDES-ы (не путать с мультигигабитными трансиверами). Есть там и поддержка DDR2 контроллера. В оригинальном Cyclone III аппаратных SERDES нет. Память DDR2 требует стандарта SSTL18.
  10. Цитата(Flip-fl0p @ Mar 20 2018, 13:21) PLL настроена таким образом, что у нас опорная частота умножается и делится на некие коэффициенты, которые никогда не меняются. (коэффициенты рассчитаны таким образом, чтобы не превышалась максимальная частота VCO( ГУН) по спецификации на чип). Но вся проблема в том, что опорный клок у меня может лежать в диапазоне от 25Мгц до 80 Мгц. (т.е иметь любое значение, характерное для значения пиксельной частоты VESA) ИМХО такая схема вообще не будет работать. В большинстве случаев PLL в ПЛИС не позволит использовать такой диапазон входных частот без перестройки коэффициентов. Т.к. диапазон VCO будет выходить за допустимые пределы. Ну например: Cyclone IV Fvco = 600-1300 МГц. Т.е. перекрытие 2.16 раз, а нужно 25-80 МГц, т.е. 3.2 раза.
  11. Значит clksel должен управлять старшими битами, а не младшими.
  12. ИМХО ошибка в подключении: нужно или клоки подключить на inclk0x, inclk1x, или clksel подключить как {clksel, 1'b0}.
  13. Чип не отвечает. Проверяйте питание (если не всё питание подано, то схема может быть в сбросе), прозванивайте джитаговские пины.
  14. Вообще-то лучше сделать суммирование без pipeline, а по выходу поставить нужное количество регистров. А их перераспределение по дереву сумматоров оставить на откуп софту (register retiming). PS. Если это FIR фильтр какой-нибудь, то лучше использовать не дерево сумматоров, а каскадирование сумматоров. В доках Xilinx красиво и понятно разрисовано. Это, конечно, если DSP блок позволяет.
  15. Цитата(ViKo @ Dec 26 2017, 11:12) lcell никогда не выкидываются, атрибут не нужен. Насколько я имел опыта. А насчет set_min_delay сложилось мнение, что это для внешних сигналов. Возможно, ошибаюсь. Оптимизация lcell - это параметры синтеза. По-умолчанию выключено. set_min_delay - это исключение для sdc и запросто может обрабатываться только при анализе в Таймквест, а при размещении игнорироваться. Это надо детально смотреть. Ручное расположение (фиксация) элементов в LAB ближайшем к пину практически гарантирует минимальные времена. Ну а ежели вы фанат повторяемости (*ухмылка*) то можете законстрейнить и трассировку. Искать формат файла RCF и гуглить QUIP Benchmark (исследовательская программа совместно с университетом Торонто). А вообще, вы бы поподробней рассказали бы для чего такое решение применяете.