Как стать автором
Обновить

Комментарии 39

НЛО прилетело и опубликовало эту надпись здесь
мы делаем плату прежде всего для себя. У меня дома несколько устройств работают под управлением платы Марсоход. На все платы ставить программатор мне не очень хочется — это просто дороже.
НЛО прилетело и опубликовало эту надпись здесь
Cтоимость комплектующих + увеличение размера PCB + увеличение стоимости монтажа и тестирования и т.д.
Сэкономить можно, разве что, на упаковке.
При этом, увеличение размера самого устройства — труднее куда-нибудь встраивать.
Увеличение потребления энергии — многие девайсы питаются от батарей.
Увеличение веса — есть девайс, который, практически, «летает»(«летающая тарелка»).
Вообщем сплошные «минусы».
НЛО прилетело и опубликовало эту надпись здесь
~400..500р, к сожалению.
НЛО прилетело и опубликовало эту надпись здесь
digilent кстати кажется делал платы с CPLD и ft2232 в роли jtag на борту.
Меня больше всего расстраивает в этой истории, что для изготовления программатора
на микроконтроллере нужен другой программатор — для микроконтроллера, а для изготовления другого программатора
нужен третий… эта цепочка может не закончится.
Конечно, на FTDI дороже, зато работает сразу, даже PID и VID зашивать не нужно.
ну всем микроконтроллерам нужен программатор. последнее время есть куча примеров программирования их через com-port (к примеру, для STM32 он не нужен)
Цепочка закончится, когда вы начнёте что-то делать.
А встроенный програматор не нужен марсоходу, всегда можно из г-на и палок собрать программатор на LPT.И не смотрите на stm и lpc демо платы, эти монстры могут себе позволить насчёт объёмов такое.
*за счёт
LPT в 21 веке? Не обижайтесь пожалуйста, но я процитирую известного персонажа, Карлсона: Ты что, с ума сошёл?

А если серьёзно сейчас самый доступный интерфейс это как раз USB! И именно на USB надо ориентироваться. Даже COM есть далеко не везде, а уж про LPT и говорить не хочется, да и спалить его можно чем угодно и как угодно.

p.s: так же хочу напомнить что USB хосты уже есть и в «совсем» мобильной технике: планшетах и коммуникаторах. В общем не надо опираться на старьё.
НЛО прилетело и опубликовало эту надпись здесь
В любом случае, при производстве, программирование — еще одна технологическая операция,
которой хотелось-бы избежать.
Пишите дальше. Например как делать RS-триггеры и так дальше. Ну и среду(ы) разработки кратко опишите.
Меня всегда интересовал вопрос, ответ на который сходу не нагуглил.
Этот JTAG умеет отлаживать AVR?

З.Ы. Есть пара советов по поводу, что jtag'а, что марсохода, нужно увеличить степень презентабельности плат, а то выглядит как то не очень кавайно =) Сделать какую нить масочку цветную, по ней красивой шелкографией пройтись, да и сами дорожки сделать не такими топорным, ТОПОР вам в помощь =) Посмотрите как сделаны платы например у sparkfun.com LilyPad.
а они открывали свой протокол?

у Xilinx описание комманд и формата svf лежит в виде даташита, и ничего не останавливает вас от создания программатора на любом доступном железе, а AVR открывал свою реализацию JTAG?
В этом и был вопрос, понял спасибо, протокол jtag у AVR закрыт. А жаль =(
JTAG, вопреки распространненному мнению, это не отладочный интерфейс. Отладка через него это побочная фича. Которой может и не быть.
Как я понял, программатор не работает из Quartus, необходимо генерировать файлы и шить из отдельной утилиты?
зачем делать велосипед, если уже много лет существует UrJTAG — urjtag.org/book/_system_requirements.html, который поддерживает много кабелей и схем, и широкий спектр железа?

сам шил им CoolRunner-II.
Ну и как, по вашему, это подходит для «начинающих».
а какой смысл изучать cpld и логику, при отсутствии элементарных навыков работы с командной строкой?
а еще вроде OpenOCD умеет проигрывать SVF
а с ChipScope \ SignalTap он работать будет?
С ChipScope не знаю, а с SignalTap не будет. Для этого нужен свой драйвер.
Мы пробуем таковой написать, но пока «процесс в процессе». Надеемся…
а не было у Вас идей написать свой сhipscope\signaltap? с какой нибудь уникальной функциональностью?
сюда входит задача и парсинга HDL, которая несколько нетривиальна, имхо…
Прочитал уже не одну статью про ПЛИС, в т.ч. в википедии. Но так и не понял, чем ПЛИС отличается от микроконтроллеров (МК)? И то и то программируется, программатор для ПЛИС, судя по этой статье, такой же как для МК.
Чтобы лучше понять что такое ПЛИС надо начать с истории.
Вначале была транзисторно-транзисторная логика (TTL). Эта логика как ни странно, содержала логические элементы. Из этих элементов делали всяческие схемы.

Но сложность схем все возрастала и необходимо было как то уменьшать количество используемых микросхем. Как вариант решения были созданы базовые матричные кристаллы (БМК). Но у них был один недостаток — это была фактически заказная микросхема и производилась только на заводах. Разработчикам таких схем было очень тяжело. Одна ошибка — и партию выкидывать. Да и не всегда нужно такое количество микросхем. Не будут же перестраивать производство для одной-двух микросхем.

Поэтому дальше были изобретены программируемые логические схемы (PAL). Здесь схема микросхемы определялась пережиганием специальных перемычек. Но у этих микросхем тоже был недостаток. Они были однократно программируемыми.

Поэтому следующим этапом стало появление многократно программируемых логических интегральных схем (ПЛИС). И здесь уже в зависимости от способа программирования возможны варианты. CPLD — схема коммутации модулей заносится в специальное ПЗУ. Такие схемы могут работать сразу после включения устройства. FPGA — схема коммутации заносится в оперативную память при включении питания. Поэтому для них нужна схема загрузки схемы (программы) для начала работы.
FPGA на данный момент является вершиной развития ПЛИС.

Что такое микропроцессор (микроконтроллер), я объяснять не буду.

Теперь про то, что роднит микропроцессоры и ПЛИС на превый взгляд — среда программирования.

Микропроцессор предназначен для выполнения только определенной на этапе разработке системы комманд. Шаг влево, шаг враво — расстрел вызывает ошибки выполнения кода.
ПЛИС же наоборот — набор логических элементов. Количество их доходит до миллиона. Создать такую схему (с миллионом логических элементов) можно, но работа будет та еще. Поэтому для облегчения труда проектировщика придумали всяческие языки высокого уровня (VHDL, Verilog и т.д.), которые помогают абстрагироваться от логических элементов и сосредоточится на логике работы устройства. А компилятор сам разберется какие модули как скоммутировать. На выходе мы получаем схему коммутации логических элементов ПЛИС.

Поэтому внешне программирование микропроцессоров и ПЛИС выглядит одинаково. Но вот физический смысл проиходящего разный.

Если посмотреть на ПЛИС как на черный ящик с n входами и m выходами, то ОЗУ или ПЗУ компьютера можно считать как вариант ПЛИС, где n — это адрес, m — данные.
эх, теперь бы это все в одно приложение уместить, чтобы девушкам, которые спрашивают «чем ты занимаешься?» можно было легко ответить. :)
Не думаю, что объяснение таких подробностей девушкам приносит рассказчику +5 к обаянию
МК это небольшой компьютер, есть система команд, память, периферия. Все жестко задано и разработано уже заранее. Ты можешь только программу этого компа менять.

Плис это набор ячеек из которых ты можешь сделать что угодно, в том числе тот же МК. Причем он может быть именно такой какой ты хочешь. Т.е. плис сложней, но универсальней.
За такие принципиальные схемы надо убивать лопатой :/
Да разве-ж это схема? В свою бытность начинал с ремонта телевизоров.
Сначала были ламповые, черно-белые, потом появились цветные… — вот это были СХЕМЫ.
А по существу, технический уровень люней бывает очень разный. Некоторым достаточно
озвучить только идею, дальше они могут сделать все сами. Других нужно «ткнуть» в даташит.
А вот что делать если и после этого человеку осталось ( мягко говоря ) не все понятно.
Какой смысл перерисовывыть схему из даташита «один-в-один», нужно, наверное, как-то
по другому. Как один из вариантов, на мой взгляд, «конструктивно-схемотехнически».
Может можно/нужно и по другому, был-бы рад услышать как?
Хрен с ними с гостами. Хрен с ними с стандартами, но подписать то выводы разьемов и микросхем было бы можно.

USB например. Что это за хрень? Как новичку понять что имеется ввиду, какой провод куда? Где DP где DM? А может он не найдет точно такой разьем или разьем будет другого производителя и контакты будут по другом стоять?

Правый разьем, что это? Зачем он нужен?

Микросхема. Это ваще абзац. Ладно, примем за данность, что ардуиновая зараза проникла и в логово ПЛИС разработчиков, но выдать микруху даже не подписав все выводы это уже за гранью добра и зла.

Новичок бывает в трех диодах и шести резистох такие баги наделает (у меня на страничке программатора Громова таких процентов 10), то тут же напутает и накосячит везде где только можно.
Спасибо, это уже более конструктивная критика, а-то сразу «лопатой».
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории