Jump to content

    

Dmitry_B

Участник
  • Content Count

    216
  • Joined

  • Last visited

Everything posted by Dmitry_B


  1. Пробовали ли использовать симулятор Modelsim из Vivado HLS? Если у кого получилось, сообщите пожалуйста какие версии Vivado и Modelsim.
  2. Интересует имя IBIS - модели входа GTX интерфейса. У Xilinx-7 много моделей, какую выбрать? Может, где-то есть описание/рекомендации?
  3. Спасибо за помощь. Неопределенность хуже всего.
  4. Кто-то разбирался? Интересуют номера контактов, на которые выведено управление номером активного FTW (частоты настройки управляемого генератора). В микросхеме хранится 16 значений, в datasheet (раздел NCO) нарисовано 4 контакта для их выбора, но на изображении корпуса в наличии только 2, со странными названиями A0, B0. В описании программно-доступных регистров можно найти упоминание еще двух: А1 и В1, но ни в таблице описания контактов, ни на изображении корпуса их уже нет. Допустим, как-то удастся обнаружить, на какие контакты выведены А1, В1; все равно останется неясным, что надо подавать на A0,A1,B0,B1 чтобы выбрать FTW3, например. Какой из них младший-старший?
  5. Еще один вопросик появился: где взять IBIS - модель JESD204B выходов АЦП? В предоставленой ADI модели эти выводы описаны крайне странно: ни вольтамперной характеристики, ни Ramp.
  6. Браво! Красивый и простой вывод!
  7. Спасибо за помощь. Тоже нашел ответ в справочнике 1974г. К стати, я правильно понял, что интеграл по полуокружности на самом деле брать не надо, он в 2 раза меньше, чем интеграл по окружности, и его можно через вычет получить?
  8. Идея понятна. Есть тут неприятность: теорема о вычетах требует, чтобы на контуре интегрирования не было полюсов - а они как раз на действительной оси. Нас интересует интеграл вдоль действительной оси - это должно быть нижней стороной контура при обычном обходе против часовой стрелки. Другие стороны (будь то прямоугольник или пол-окружности) должны быть бесконечно удалены от 0. Метод работает, если подинтегральная функция комплексного аргумента стремится по модулю к 0 при стремлении к бесконечности модуля комплексного аргумента. И здесь вторая трудность: |sin()| комплексного аргумента неограниченно растет при увеличении мнимой части - превращаясь в sh(). Хорошее предположение об ограниченности подинтегральной функции нарушается. И еще одно. Получилось, что преобразование Гильберта от sinc() есть та же самая sinc(). Тогда комплексная огибающая sinc() - тоже sinc()? Не очень похоже на правду.
  9. Похоже. Ну, положим, там дельта - функция. А на остальной оси? Да. Но как его брать?
  10. Существует ли какое-либо правило назначения контактам разъема HPC стандарта VITA 57.4 FMC сигналов интерфейса JESD204B? Ясно, что данные и тактовая частота в разъеме стандартного мезонинного разъема присутствуют, а вот как с оставшейся парой сигналов интерфейса JESD204B?
  11. Кто работал, известно ли время предустановки данных на внешней системной шине относительно окончания импульса чтения nRD (рис.29 ТУ)? То есть, какое время следует подержать данные на шине до того, когда импульс чтения закончится? Миландр таинственно молчит... (Впрочем, можно проще сказать: послал...)
  12. Кому все еще интересно, из источников, которым я вынужден доверять: время предустановки данных относительно окончания импульса nRd вычисляется: Tsu= (период клока ядра + 66 нс)*1,2. Множитель 1,2 - рекомендуемый запас 20%. При максимальной частоте ядра 144 МГц - примерно 90 нс. Вот теперь можно определить допустимую длительность nRd как сумму задержки переключения периферийного устройства из третьего состояния в активное + Tsu.
  13. Цитата(Professor Chaos @ Jan 21 2018, 14:10) Ваш первначальный вопрос вроде-как касался именно времени tdh? Нет. Перевод: tsu - set up time - время предустановки; th - hold time - время удержания. Цитата(Professor Chaos @ Jan 21 2018, 14:10) Схемотехнику достаточно знать, что чтение данных с шины осуществляется в момент времени после 1/2 tcycle но до фронта окончания nRD. А что заставляет Вас думать, что установления данных в момент 1/2 цикла достаточно? На рисунке они явно устанавливаются раньше (но насколько раньше - непонятно). Пофантазируем еще. Момент "полцикла" на рисунке примерно совпадает с фронтом CLKO при СPOL=0. А возможно, всего лишь надо установить данные до переднего фронта CLKO при СPOL=0 (последнего, при активном nRD)? Тогда - за какое время до фронта CLKO? С другой стороны, похоже, "фиксация данных" происходит по спаду CLKO при СPOL=0. Тогда возможно, данные достаточно установить на шине чуть раньше, чем закончится последний импульс CLKO при активном nRD? Тогда - за какое время до спада CLKO? Но при этих предположениях нам надо знать взаимное положение CLKO и nRD, а также, строго говоря, и моментов переключения адреса. Чего разработчики МК (видимо беспокоясь о нашем душевном равновесии) не предоставили. Возможно, вероятно, похоже...... Так аппаратуру не разрабатывают. О том и речь.
  14. Цитата(HardJoker @ Jan 20 2018, 11:59) ТСКЯ.431296.008CП стр.134 Рисунок 29. Диаграмма чтения. Документ более старый и диаграмма чтения показана подробнее, чем в последней версии. Спасибо. Но в части цикла чтения ничего дополнительно нет. Любезно обозначили время удержания th = 0, а вот tsu - нет. Вместо этого бесполезная жирная стрелка "фиксация данных". Как этот "момент фиксации" расположен относительно nRD, либо чего бы то ни было другого осмысленного - предлагается пофантазировать самостоятельно... Уж не говорю о том, сколько читаемый код с шины данных должен постоять на шине до наступления сего счастливого момента. Уважаемый AVR! Разумеется, у Миландра проблем тем меньше, чем меньше контролируемых параметров при сдаче микросхемы по ТУ. Да и выход годных может оказаться меньше. Но при этом игнорируются интересы разработчика аппаратуры - и это проблема (естественно, не главного конструктора МК). Формат форума не позволяет всерьез обсуждать методику разработки цифровой аппаратуры, для которой и требуется параметр tsu. Я, правда, думал, что это всем разработчикам известно, ибо классика.
  15. Цитата(AVR @ Jan 19 2018, 23:14) Ну, такие вопросы может техподдержка и не знать, может эта часть - лицензированная часть ядра. По телефону такой вопрос можно сходу и не ответить. Попробуйте форум. Не сходу, а после консультации с главным конструктором. Какой смысл скрывать информацию, без которой, строго говоря, нельзя подключать к шине какие - либо устройства? Цитата(AVR @ Jan 19 2018, 23:14) Но что значит импульс чтения, у меня нет ТУ, есть лишь их документация в PDF. Может речь про фронт/спад чтения? ТУ в этой части дословно повторяет общедоступную спецификацию в PDF. Речь о сигнале nRD (рис.29 спецификации). Картинку не могу загрузить, файл docx - тоже (мне "запрещено загружать файлы такого типа"!!!).
  16. Цитата(AVR @ Jan 19 2018, 11:24) Прошу прощения, следует уточнить, молчит где? Форум, почта, телефон, в документации не написали? По телефону техподдержка. Впрочем, не молчит, но говорит на отвлеченные темы, вместо ответа на вполне конкретный вопрос. Похоже, неохота им возиться. В документации ничего - это само собой.
  17. У меня получилось, что конечный автомат с 16-ю состояниями реализован на 16 триггерах. Очевидно, на самом деле достаточно 4-х. При создании автомата использовал штатный редактор конечных автоматов Quartus с последующей генерацией VHDL- описания. Поделитесь, кто делал: у вас то же самое?
  18. Помогите пожалуйста еще разок: как в проекте Quartus для нескольких конечных автоматов назначить разные способы синтеза? Например, один-one-hot,а другой- minimum bit?
  19. Цитата(krux @ Feb 3 2017, 20:31) В случае, если при синтезе ваша FSM была определена синтезатором как one-hot, то всё правильно, 16 триггеров - это ожидаемо. Объясните, почему вы считаете, что очевидно достаточно 4-х? Потому что 4 двоичных разряда описывают 16 различных состояний. А что такое one-hot?
  20. Могу только подтвердить, что чтение в отдельном потоке позволяет надежно принимать быстрый поток данных в большом объеме. Почему нельзя достичь того же в одном потоке - вопрос открыт.
  21. Цитата(zltigo @ Nov 23 2016, 13:14) Вы же как раз не хотите иметь другие потоки в задаче. Не совсем так. Мне интересно обоснование идеи запускать чтение в отдельном потоке. Выше говорилось, что это "конечно" нужно делать.
  22. Цитата(zltigo @ Nov 22 2016, 21:25) Если у Вас одна единственная программа во всем компьютере, то можете и ждать и не пущать никого пока не отберут время силой. Ну а по хорошему надо отдавать ненужное время добровольно. Если верить Microsoft, то это как раз не так. ReadFile в не-overlapped (синхронном) режиме приостанавливает вызвавший ее поток на время получения данных. Во время ожидания другие потоки получают возможность работать.
  23. Цитата(jcxz @ Jul 6 2015, 09:07) Обмен с функциями WinAPI конечно в отдельном треде (даже - 3-х отдельных тредах: отдельный для RX, для TX и для обработки событий порта WaitCommEvent()), а не в main-треде приложения. Интересно, почему простой синхронный обмен в потоке основной программы не годится? Если нет необходимости выполнять какие-либо операции в процессе ожидания получения данных, то какой смысл создавать новый поток? Почему просто не подождать, пока ReadFile не вернет управление основной программе?
  24. Atmel AT43USB320 - симулятор

    Пожалуйста, посоветуйте: Какая версия Atmel AVR Studio нужна для отладки программы на ассемблере для контроллера AT43USB320? Нужен симулятор.