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

Тестирование Проекта Quartus


Tesla

Рекомендуемые сообщения

Возник вопрос: создал, допустим, я в Quartus'е проект - модуль, сопрягаемый с внешним микроконтроллером. Перед изготовлением реального устройства хочется как следует потестировать в симуляторе ПЛИСину и микроконтроллер в связке. Но вот беда - Proteus ничего не знает про ПЛИС, а Quartus - про её периферию. Есть ли какая-нибудь возможность получить из проекта квартуса модель, подцепляемую протеусом или другим симулятором, или специализированный софт для симуляции ПЛИС и периферии?

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Я задавался подобным вопросом, но, похоже, что такой возможности нет.

В Quartus и MaxPlus есть возможность подключить файл вектора входных сигналов (*.vec). Внутри файла возможно описание любых входных сигналов.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

А нельзя ли к Quartus'у подключиться через какой-либо API, чтобы, грубо говоря, программно рассчитывать входные сигналы для ПЛИС на следующем шаге исходя из выходных сигналов предыдущего шага, т. е. создать обратную связь?

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

API - вряд ли. В принципе, обратная связь в синхронных проектах работает без проблем. Можно попробовать в проект Квартуса (на время описания конфигурации и моделирования) добавить модуль, внутри которого разместить таблицу истинности, которая и будет формировать выходные сигналы, исходя из входных.

Что у Вас за проект, если не секрет? Может, получится обойтись одной ПЛИС (без МК). Мне их пришлось совмещать только один раз - когда потребовалось формирование длительных задержек (секунда и более) при основном такте около 30 МГц.

Ссылка на комментарий
Поделиться на другие сайты

Серьёзного проекта пока нет, хочется просто разобраться на будущее. Но однажды была необходимость разработать недорогое устройство с пятью последовательными портами (для объединения 4 потоков NMEA в один). Тогда я кое-как выкрутился, реализовав 4 UART'а программно (тем более, от них требовался только приём), но это, ИМХО, было некоторым извращением, так как занимало большую часть процессорного времени atmega8 (на 11.0592 мгц), плюс для стабильности работы пришлось отключить все прерывания, кроме таймера. А сейчас я бы попробовал реализовать UART'ы аппаратно, на ПЛИС, оставив основную задачу (буферизация, определение границ пакетов, проверка контрольной суммы) на микроконтроллере. Мне кажется, что такое комбинированное решение обошлось бы дешевле, чем микроконтроллер с 5 UART, или жирная ПЛИС, которая потянет задачу полностью.

P. S. Кстати, ещё не разобрался - для чего в ПЛИС нужна основная тактовая частота? Это ведь не микроконтроллер, где все операции должны происходить синхронно. Или она применяется только для вспомогательных целей (формирование временных интервалов)?

Изменено пользователем Tesla
Ссылка на комментарий
Поделиться на другие сайты

А сейчас я бы попробовал реализовать UART'ы аппаратно, на ПЛИС, оставив основную задачу (буферизация, определение границ пакетов, проверка контрольной суммы) на микроконтроллере.

Разумно. Я вообще плохо представляю себе ПЛИС в качестве АЛУ. Хоть большие кристаллы с этим и справятся, логичнее использовать ПЛИС в оптимальной для нее среде, то есть ЦОС, а всю арифметику оставить МК.

Кстати, ещё не разобрался - для чего в ПЛИС нужна основная тактовая частота? Это ведь не микроконтроллер, где все операции должны происходить синхронно. Или она применяется только для вспомогательных целей (формирование временных интервалов)?

Основной такт не обязателен. Вам же никто не запрещает сделать на ПЛИС элемент NAND. :) Просто это является расточительством ресурсов. Да и ПЛИС сами по себе очень "гибкие" изделия. То, что можно оформить даже в маленький кристалл EPM7032, едва ли получится заставить работать на дискретной логике при аналогичных требованиях к быстродействию.

В МК работает синхронно только внутренняя переферия и порты I/O, сами же операции несинхронны. Это основной недостаток МК, которого можно избежать только отключением прерываний и полным контролем последовательности выполнения команд, что возможно только при листинге на ассемблере. В ПЛИС этого недостатка нет. Языки описания конфигурации являются параллельными. Более того, моделирование ПЛИС архитектуры CPLD позволяет практически со 100% гарантией вычислить все задержки внутри кристалла. Для архитектуры FPGA несколько сложнее, так как многое зависит от умения разработчика трассировать модули внутри кристалла. Я, например, с FPGA еще не работал и практики в этом нет.

Говоря об обратной связи в цифровой технике, я всегда подразумеваю наличие синхронизации, так как в асинхронных проектах ОЧЕНЬ велика вероятность получить метастабильные состояния. В Вашем случае можно использовать тактовую частоту для ПЛИС 22.1184 MHz и все внутренние операции выполнять синхронно с этим тактом. А для синхронизации с портами МК, внутри ПЛИС поделить mclk на 2 и тактировать МК.

Ссылка на комментарий
Поделиться на другие сайты

Спасибо за ответ!

Если я правильно понял, то тактовый вход ПЛИС отличается от остальных только оптимизированной разводкой внутри кристалла?

Изменено пользователем Tesla
Ссылка на комментарий
Поделиться на другие сайты

Если я правильно понял, то тактовый вход ПЛИС отличается от остальных только оптимизированной разводкой внутри кристалла?

Да. Это так называемые глобальные входы. Их, как минимум, три - тактовый, сброс и разрешение. Но совсем не обязательно их использовать по назначению. Можно не использовать вообще. Главное преимущество глобальных линий - это малое время распространения по кристаллу даже у "тормознутых" грейдов.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • Да, сначала был написан бутлодер для тини 24. Там нет выделенной памяти под бутлодер и заморочек с областями откуда можно записывать и перезаписывать флеш из программы, там все просто! Также там нет УАРТА, пришлось написать. Ну и самое главное: перезаписывай любые страницы флеш из любого места! В тини 24 под бутлодер ушло 48% памяти. В проекте технологи выделили слишком мало физического места под схему. Потом развел плату, оказалось, что места не так уж и мало. Потом выяснилось, что пинов впритык, и если будет дальнейшее расширение, их может не хватить. И после долгих (ну очень долгих) изысканий (цена, доступность, размеры) остановился на 88 (очень низкая цена, корпус чуть больше чем у 24, датчик температуры, а это важно, но не критически). Да, и сейчас все программируют на С и др. языках высокого уровня, что занимает очень (ну очень) много места, и чипы с небольшой памятью остаются не востребованы, и как следствие низкий спрос, и низкая цена!!! И при тупом переносе программы перезаписи страниц флеш программа не заработала... Ну и пошли изыскания, и я набрел на ВАШ проект, самый полный и законченный на то время. Нужно было выяснить чип который был у меня битый или я что-то упустил при программировании? (в бутлодерах я новичек) Недостаток 88 на сегодня, то что из пользовательской памяти нельзя перепрограммировать флеш, хотя страница стирается.   По поводу ВАШЕЙ программы: выяснилось, что при включенном фьюзе WDT в конфигурации, соединение не устанавливается, а в хелпе это не отражено. В некоторых ситуациях соединение можно восстановить лишь отключив / включив питание, сброс через ножку ресет не помагает. Будем копать дальше,... и глубже....!   Иногда при "установить соединение" выдается сообщение, "соединение не установлено", а на осциллографе виден ответ с чипа?
    • Сейчас по входу стоит керамика 0,1 мкФ + электролит 220 мкФ, иголок вроде нет, ну во всяком случае старичек С1-93 их не показывает.
    • Платы материнки и УВ пока в брак.  - Семён Семёныч... (с) Вы ничего не забыли, сэр? Как вы собрались регулировать УВ по уровню выходного сигнала??? Решение уже есть, пока в процессе.
    • Ну в идеале каптоновым скотчем как вам сказали,но можно обмотать чем угодно лижбе диалектриком было и хотябы немного высокотемпературное,я бы термо усадку взял,поидеи хорошо пойдет  Ещё видел где трансформатор медно алюминиевой жилой был на ампер 10 если не больше на вид аж,и там алюминиевая обмотка сечением пол сантиметра была замотана в бумагу пропитанную в воске,слоем миллиметр примерно эта изоляция была 
    • Всем привет. Собрал мх50, запустился с первого раза, когда делал замеры, соскочил щуп, спалил выходники и пред, заменил, все ок. Питание тор 250 ватт 30х2 выход, после выпрямителя 44В 20000мкф в плечо  увеличил входные емкости на оконечниках, добавил шунтирующую пленку  плата софт старта присутсвует цепь буше взял из ОМ2.7 ТП выставил 100мА добавлена термозащита на каждый канал( но как оказалось, с таким корпусом хрен перегреешь) АС kef q150 dac Aiyima a5 max получилось снять 81 ватт с канала при 8ом нагрузке (на фото самое точное измерение на левом мультиметре) без сигнала если прислонится к ас еле уловимое шипение  при наличии сигнала все ок, играет отлично, мне очень понравилось. в планах ОМ2.7
    • Уже 52 скачивания. Значит актуальна.
    • Получается либо таймер работает наполовину и идет передача, либо таймер работает как надо, но передача не идет(
×
×
  • Создать...