Jump to content

    

Koluchiy

Свой
  • Content Count

    1016
  • Joined

  • Last visited

Everything posted by Koluchiy


  1. Программаторы пробовали USB Blaster II и Ethernet Blaster II/ Частоту урезать пробовали до 6, результата нет. Все микросхемы одинаковые, не ES.
  2. Здравствуйте, уважаемые гуру. Спаяли платы на Arria 10. Включаем - по JTAG считывается какой-то странный код, F2EFF0DD . Поскольку код неверный, ничего не работает. Если залить ту же микросхему по схеме PS, она работает. Была предыстория: предыдущая ревизия этой же платы, где всё работает нормально. Основные изменения: 1) Питание ядра вместо 0.95 -> 0.9 вольт 2) Включение в цепочку JTAG еще одной микросхемы Altera (работает нормально). Впрочем, переконфигурация новых плат обратно - на 0.95 вольт и включение JTAG напрямую - ситуацию не изменило никак. Кто-нибудь сталкивался с подобным, или если есть идеи - велкам.
  3. Традиционный вопрос - сделали ли работу с partitions в Project Mode?
  4. Окей, буду прокачивать исусство телепатии.
  5. А констрейны на i/o как-то задавались?
  6. Как молоды мы были... Начните с попытки достучаться до микросхемы по JTAG.
  7. Есть два пути самурая, и каждый выбирает свой. Самый лучший инструмент - не тот, который самый лучший, а тот, которым лучше всего владеешь. Что касается холивара Альтера/Ксайлинкс, то лично у меня поведение одинаковое и там и там. Всё зависит от скоростной нагруженности проекта. Если он нагружен хорошо - компилятор без помощи разработчика будет лажать.
  8. Есть внешний тактовый, который при разводке заводится на глобал буффер, из-за чего возникает задержка, которая мне не нужна. Как запретить глобальный буфер для этого конкретного клока? Удобнее всего было бы использовать директиву синтезатора /*synthesis ... , но чего-то я не нашел нужной директивы... Q18Pro, если чо.
  9. Спрашивали, отвечаем: вопрос должен быть "не могли бы Вы добавить в своё IP-ядро поддержку V7"? Естественно, данный вопрос должен быть подкреплен соответствующими финансовыми вливаниями. Другое дело, если такая постановка вопроса отнимает Ваш хлеб. Тогда можно задавать разработчику вопросы типа "где документация". P.S. Когда переходил с V6 на K7, переписывать приходилось много. В основном, конечно, из-за прекращения поддержки PLB. Но из-за замены примитивов тоже.
  10. Поддерживаю предложение обратиться к разработчику. Вообще, довольно часто вижу в людях странное желание сначала сломать чужой код и совсем запутаться, а потом уже спросить того, кто этот код написал.
  11. Возможно, в корпусе под свич уже места не было - я не помню. Но скорее всего им было просто лень, а заказчик был настолько заколебан ихними фокусами, что не стал чего-то требовать в этом плане.
  12. Всегда ставлю свои настройки, какие мне надо. Выбрать имеющуюся стратегию - ну, разве что для начала работы с проектом, или для простых проектов.
  13. Расскажу анекдот. Некогда в одной конторе одним гражданам было поставлено ТЗ на проектирование одного девайса. ТЗ было очень так себе как с т.з. подробности, так и с т.з. адекватности. В общем, главная его ценность была в том, что оно было. Тем не менее, при всей неподробности, некоторые моменты были прописаны четко и недвусмысленно. Ну так вот. А реализовывала девайс одна хитрая команда хитрых граждан, которые открыли это ТЗ, прочитали, закрыли и сделали девайс так, как кто им что на что положил. В общем, когда ТЗ снова открыли при приемке, выяснилось, что кроме отсутствия и недоделанности плохо прописанных фич, на тему которых можно было поторговаться в силу их плохо/не/прописанности, также полностью отсутствовали некоторые фичи, которые были прописаны вполне конкретно. Например, была затребована фича - удаленная перепрошивка через интерфейс езернет, выведенный на переднюю панель. Езернет у товарищей на панели был, но сделать перепрошивку через него нельзя было никак... Чо делать? Граждане взяли езернетовый байт-бластер, воткнули его одним концом в JTAG, езернетом вывели на лицевую панель (в итоге получилось 2 езернета). ФСЁ, удаленная перепрошивка готова :-))).
  14. Похоже, что героический апгрейд форума героически снес все ссылки. Поделитесь, где скачать текущую версию Рида-Соломона?
  15. Здравствуйте, уважаемые гуры. Нужно поднять в каком-то виде SEU на Arria 10. На настоящий момент пытаюсь сделать так, чтобы при помощи JTAG можно было дергать вывод CRC_ERROR. Нужно это для того, чтобы можно было производить отладку/демонстрацию работы связанных с SEU алгоритмов, т.е. запускаем в систему ошибку, дальше смотрим на реакцию. У меня в проекте есть компонент EMR_Unloader. Он в частности предоставляет возможность через JTAG изменять этот самый регистр, т.е. эмулировать ошибки. Это работает - EMR изменяется, Valid поднимается. Проблема в том, что на ноге CRC_ERROR тишина, т.е. не получается записать в EMR ошибки и чтобы при этом CRC_ERROR поднялся. Вероятно, это можно сделать через Fault injection debugger, но на него нужна какая-то хитрая лицензия. Кто-нибудь может подсказать, как поиграться с этой ногой без покупки лицензий и прочего геморроя? Всем заранее спасибо за любую помощь.
  16. Присоединяюсь к заголовку. Конкретно сейчас не устраивает, как работает (не работает) поиск.
  17. Здравствуйте, уважаемые гуру. В определенные моменты нужно сгенерить поток последовательностей NOS и передавать в линию 8GFC. Последовательность генерю, передаю (слева направо, сверху вниз). K28_5 = 10'b001111_1010; D21_2 = 10'b101010_0101; D31_5I= 10'b010100_1010; D5_2 = 10'b101001_0101; На приеме тестер, который умеет определять начало NOS, но не умеет сказать, что происходит в текущий момент времени. Ну т.е., если его завернуть самого на себя, то при включении на нем же генерации NOS он увеличивает счетчик NOS на 1, а дальше показывает "Loss of frame". Так вот. Когда я подаю на этот тестер сигнал 8GFC, который содержит сгенеренный мной код NOS (см. выше), тестер не увеличивает счетчик, а просто показывает "Loss of frame". Т.е. сгенеренного мной NOS не видит. При этом, когда я подаю свой NOS на себя, мой блок контроля GFC8 (работает нормально, и с тестером тоже) этот NOS детектирует вполне успешно, никаких кодовых ошибок не выдает. Сигнал NOS, идущий от тестера, смотрел - он такой же как у меня. Пробовал перед ним передавать последовательности IDLE - не помогает. Что я мог упустить? Всем заранее спасибо за любую помощь.
  18. А, ну да. Понятно, что можно вместо таска сделать модуль. Но захотелось сделать именно таск.
  19. Здравствуйте, уважаемые гуры. Есть что-то типа такого: always @ (posedge Clk or posedge Reset) begin if (Reset) begin VarA <= 0; VarB <= 0; end else begin simple_task(VarC, VarA); simple_task(VarD, VarB); end end task automatic simple_task; input Var1; output Var2; begin Var2 <= ~Var1; end endtask 2 переменные изменяются при помощи 2х экземпляров task'а. Проблема в том, что если использовать присваивание "<=" , то синтезатор (Quartus 18) ругается - говорит, что нельзя automatic с таким присваиванием. Использовать присваивание "=" можно и все ок, но с таким присваиванием проблемы дальше, т.е. оптимально, чтобы на выходе из этого блока было присваивание "<=". Понятно, что можно сделать task'и и присваивание "=", а потом переприсвоить в другую переменную по "=>". Но так громоздко, хочется написать проще. Кто что посоветует?
  20. Правильный ответ на Ваш вопрос сильно зависит от размера коллектива, масштабности задач и их количества. 1000 маленьких проектов делаются не так, как один большой.
  21. Здравствуйте, уважаемые. Откопали в закромах коробку с китом Stratix II GX EP2SGX90 Transceiver Signal Integrity Development Board. К сожалению, совсем не гуглится на него схема. Reference Manual есть, но он не дает всего чего надо. Кто богат, помогите :).
  22. Чтобы запустить симуляцию проекта, надо накидать скрипт. И поменять его при каждом изменении проекта. Как вариант - написать скрипт, который будет генерить скрипт и радоваться автоматизации процесса :-D. И всё это как альтернатива 2м нажатиям на кнопку. И все эти однотипные действия должны делать тысячи разработчиков по всему миру :-D. Ой боюсь-боюсь... :) А если бы там был сишный код или включался ядреный реактор - это бы чего меняло? То есть, при нажатии на кнопку "Запустить симулятор" очень многим очень часто надо какой-то отличный функционал от "скомпилировать все исходники проекта и запустить симулятор"? А возможность поменять расположение и набор кнопок в софте одной мелкой фирмы появилась лет 15 назад. Познавшие истинность скриптов вместо 2х кликов тратят свое рабочее время на написание скриптов вместо верилога и прочих полезных штук. Производители ПО охотно к таковым прислушиваются - это же так приятно не заниматься разработкой/поддержкой фич, а переложить эту работу на юзеров :). В результате, мы теряем функционал ПО. Альтеровские инструменты - это (пока еще) отлично. Signal Tap, Partition Planner и т.п.. Если мы их продолжим терять, то на этом пути рано или поздно дойдем до того, что будем ручками прошивки писать ноликами и единицами. Полный контроль, чо :).