Jump to content

    

Koluchiy

Свой
  • Content Count

    1016
  • Joined

  • Last visited

Everything posted by Koluchiy


  1. Здравствуйте, уважаемые гуру. Есть набор каталогов с разными именами. В каждом есть файл .v с одинаковым для всех каталогов именем. Во всех файлах определены одинаковые localparamы. Надо: последовательно в ходе работы тестбенча в Моделсиме "подключать" эти файлы один за другим. А потом "отключать". Как это можно сделать? Никакого `uninclude в Верилоге вроде нету. Можно бы подключить все эти файлы, но тогда будет куча localparam с одинаковыми именами. Как-то можно сделать так, чтобы их можно было различать? Обращаться к параметрам типа файлХ.параметерY, например. Ну или еще чего-то в этом духе придумать.
  2. Спасибо за помощь. Скажите, а как-то можно разделить пространства имен? Чтобы localparam'ы (или обхявления какого-то другого вида) с одинаковыми именами, определенные в разных подключенных файлах, считались разными, и чтобы к ним можно было обращаться как-нибудь типа имя_файла.имя_параметра?
  3. Здравствуйте, уважаемые гуру. Есть 2 константы (или переменные), в одной из них путь к файлу, в другой - название. Ну типа, localparam Path = "D:\Path"; localparam Filename = "Filename.txt"; Надо из них слепить некую переменную, которую поймет Modelsim в функциях обращения к файлам. $readmemh и т.д.. Пока чего ни пробую - моделсим не понимает и ругается, что файл "" не находит. Подскажите, куда копать?
  4. Спасибо! А почему с reg работает, а с wire - нет?
  5. А как сделать, чтобы работало вот такое: Кодlocalparam Path = "D:/Sig0/test"; localparam Filename = "/ref.hex"; wire    [7:0]    Number; assign Number = "1"; initial begin     $readmemh({Path, Number, Filename}, RefMem); end Результат такой: Failed to open readmem file "D:/Sig0/test/ref.hex" in read mode Т.е. не видит цифру, которую я пытаюсь приделать к названию.
  6. Ах да, забыл. 200МГц АЦП . Процессор бы не хотелось...
  7. Там задавался аналогичный вопрос про архивацию сырых данных для радиоастрономии. Легко ищется поиском.
  8. Я честно говоря не очень понимаю, какую помощь хочет получить ТС. Судя по прочитанному, проект несложный, я такие еще на MAX3000 делал . Но за ТСа его никто здесь не разработает. Можно отвечать на конкретные вопросы, но их должно быть ограниченное количество, а то пока что глаза разбегаются . Влезет или не влезет 240 - ну это вообще вопрос 20й. Если не влезет, то впаять в те же ноги микросхему большего размера. Если на это денег нет - ну, думать, как утрамбовать.
  9. Какой в учебной задаче требуется способ ввода/описания мультиплексора? Давайте полное ТЗ.
  10. Цитата(yes @ Jan 30 2017, 20:40) то есть, такая ситуация, что ПЛИС позволяет заменить все (или хотя бы большую часть) этапов разработки АЗИКа я не знаю. но я совершенно не утверждаю, что ПЛИС нужно запретить, при большом запасе времени и гибком дедлайне прототипировать на ПЛИС весьма интересно и полезно. 100500 раз видел людей, у которых не было время на отработку девайса на макете . Сразу лепили девайс, который они хотели видеть релизным . Вбухивали бабло в корпус, набивали ногой функционал в этот корпус, и т.д.. При этом, в итоге получали огромный гемор при отладке этого, иногда возвращались в итоге к разработке макета, и всегда теряли больше времени=денег, чем можно было изначально вложить в разработку макета . Не, я допускаю теоретическую вероятность, что существуют организации мегапрофессионалов, которые способны сразу 1) Разработать вместе с заказчиком ТЗ, которое не подвергнется корректировке в процессе разработки и опытной эксплуатации 2) Реализовать его без предварительного экспериментирования 3) Не наделать при этом ошибок, потребующих корректировки. Но я таких в суровой реальности не встречал. А вот любителей поэкономить времени на необходимых этапах процесса - да сколько угодно. Проблема собственно асиков в том, что в них переделки наиболее дорогие.
  11. И чего по деньгам-то?
  12. А где территориально?
  13. Цитата(yes @ Jan 26 2017, 18:25) прототип на FPGA это какой-нибудь Стратикс или старший Виртекс (и может не один), с источниками по 20А, размером 50х50 и местом под радиатор и т.п. а прототипируемый АЗИК - это 10х10 с 0.5Вт потребления... юзеры сильно удивятся с прототипа Под юзерами подразумевались, конечно же, не школьники с улицы, а разработчики и тестеры оборудования, куда планируется впихнуть этот асик.
  14. Чтобы сделать асик, прежде всего надо понять, какой нужен асик. Лучше всего для этого - сделать прототип на фпга и дать юзерам поиграться. В большинстве случаев требования к асику изменятся.
  15. Для Spartan-6 - только через TCL? Или есть еще варианты?
  16. Цитата(gin @ Dec 16 2016, 18:49) Автор уже оплатил счет на плату 10G с модулями SFP+ ))) Ничего не мешает вместо SFP+ воткнуть обычный SFP, далее - смотри п.1.
  17. После пролистывания темы: предлагаю автору начать с 1G на обычном SFP. Многое станет понятно, потом и на 10G можно переходить. Запускать это все оптимально на отладочной плате, на них на всех почти слоты под SFP устанавливают.
  18. Семейство Kintex7, есть и там и там. Так кто-нибудь сравнивал время компиляции?
  19. Граждане, а кто-нибудь сравнивал скорость компиляции (время от начала до завершения) проектов в ISE и Vivado? Насколько быстрее в Vivado? Умеет ли он загружать 8 ядер процессора? (ISE не умеет)
  20. Цитата(Boris_TS @ Nov 26 2016, 17:36) Если изделие единичное или мелкосерийное, то оказаться проще и дешевле взять Kintex-7 с самым быстрым speed grade ('-3'), чем месяцами оптимизировать и втрамбовывать туда проект. В случае моего проекта, проще и дешевле было бы вместо 1 большой микросхемы на 400МГц было поставить 2-3 поменьше на 200МГц и здорово сэкономить на времени. Но, как водится, сначала нарисовали корпус и сделали БП, а потом уже начали под него придумывать платы, и внезапно выяснилось, что лезет только 1 большая...
  21. Надо чтоб было 400МГц на большом Кинтексе с большим заполнением. Посоветуйте, чего бы поначитать, чтобы почерпнуть секретов мудрости и инако прошариться на эту тему.
  22. Ставите любой стек на Микроблейзе. А между ним и MAC ставите простенький блочек, который будет разделять поток данных на быстрый и медленный (как разделять - уж решайте сами). Медленный поток (поддержка любых протоколов) чих-пых обрабатывается в Microblaze, быстрый UDP непосредственно в/из логики. ФСЁ.
  23. Ну как можно комментить internal error? Одним словом - "недотестили"... Сменить версию Квартуса не пробовали?
  24. Здравствуйте, уважаемые гуру. Есть множество (десятки-сотни) сигналов, имеющих вид: {Data[7:0], DataValid}. Все эти множество сигналов надо передать на большой частоте из одного куска большой FPGA в другой кусок. Чтобы эти все сигналы нормально дошли, ставлю между источником (блок А) и приемником (блок Б) на каждый сигнал цепочку триггеров, чтобы поделить путь на куски, которые могут быть пройдены за 1 такт. Проблема с сигналами DataValid. Она заключается в том, что сигналы эти одинаковые (совсем), соответственно синтезатор выкидывает все сигналы кроме одного. И вот этот вот сигнал приходит на все многочисленные подблоки блока Б. Поскольку подблоков Б много, блок Б очень большой, и один сигнал не может успеть во все его концы - нужно дерево триггеров, на выходе штук хотя бы 20. Собственно, вопрос - как заставить Sinplify это дерево сделать нормально, ну или хотя бы не выкидывать его, когда делаю ручками? syn_keep, syn_preserve пробовал - ожидаемо не помогает (Synplify вообще по моему опыту очень странно реагирует на эти директивы). Можно, конечно, работать с XST - он на директивы сохранения сигналов реагирует предсказуемо. Но XST, конечно, не хотелось бы. Можно попробовать навтыкать глобальных буферов, но они дифицит. В общем, любые мысли велкам.