Собственно на идею написания поста натолкнула дискуссия, и доклад с последней линуксовки.
Если вы не только слышали слова микропроцессор, микроконтроллер, и другие СБИС, но и более менее представляете, как это работает, то вероятно вы не раз натыкались на такую аббревиатуру как Jtag, обычно этот протокол, передается через такой невзрачный разъемчик типа до предела упрошенного 4х-9ти контактного.
Например он может выглядеть примерно вот так, пример взят с сайта avrfreaks.net, хотя зачастую, отсутствует подпись, да и сами штырьки на плате, не распаяны, а существует только разводка.
Итак, казалось бы несколько невзрачных штырьков, или даже отверстий на плате, и какое нам до них дело. Ну если вы обычный пользователь, то абсолютно никакого, в сущности именно из за их полной бесполезности, на готовом девайсе, их обычно и не маркируют даже. Но вот если в вас завелся пылкий ум и желание его приложить и сотворить что нибудь неестественное, с каким то девайсом, и уж тем более какой то девайс разработать. То конечно же, сей интерфейс, пожалуй, стоит изучить и освоить, так как он дает практически безграничные возможности, вот не жали бы еще производители спецификации, и было бы вообще все замечательно.
Кому интересна сухая теория, тот может посетить статью Jtag в англоязычной википедии, статья довольно таки сухо повествует о сути явления, и главное содержит кучу разной полезности ссылок, так же есть русскоязычный аналог, наша статья сверх лаконична, но содержит симпатичную картинку :)
А я тут раскажу коротенько что запомнил со слов ораторов, ну может чего и привру по ходу.
Все началось в страшные годы когда чипы стали большими, а проверять их все одно, на выходе с конвейера, как то надо было. И вот для этого использовали специальные тесты, и контрольные площадки, на самом контроллере, ну и с усложнением конструкции их становилось все больше, ну и вообще как встарь нашли более простое решение, объединить их специальной шиной и по специальному протоколу опрашивать через несколько ножек. Вот собственно вкратце и вся предпосылка, к появлению, сего стандарта. Но до конца договорится так и не смогли и теперь мы имеем помимо стандарта IEEE 1149.1, принятого в 1990 году, кучу его реализаций, и дополнений, как говорят порой даже сложно совместимых в пределах одного семейства микроконтроллеров :( Так же имеется несильно открытая спецификация, и в основном проприетарные устройства и особенно софт для работы с ними, хотя в коллекции портов содержится по крайней мере два порта, на эту тему jtag и urjtag, так что поэкспериментировать можно и пользуясь свободным софтом ;)
Ну вот в принципе и все, надеюсь это кого то заинтересует, мне так жутко интересно, и может поборю лень и поэкспериментирую на эту тему, хотя тут нужна подготовка.
Да чуть не забыл о главном, фишка сего протокола - интерфейса, что он позволяет долезть до самых потрохов чипа, оснащенного им, вплоть до того что контроллер можно остановить, и управлять устройством через этот интерфейс эмулируя контроллер, или заливать данные напрямую в микросхемы памяти, или отлаживать по шагам код "на железе", в общем безграничные перспективы, препятствием может послужить только неполнота документации.
Вся эта чепуха вытекла из обсуждения девайса, который имеет сей интерфейс, производится русскоязычными разработчиками, имеет удобный форм фактор, практически заточен под линукс (судя по спецификации должен потянуть и FreeBSD) ну и вроде не заоблачных денег стоит.
Что то типа путевых записок, и размышлений об жизни, ну и о FreeBSD конечно, иногда какие нибудь новости и что то типа переводов.
27.06.2009
Загадочное слово Jtag
Подписаться на:
Комментарии к сообщению (Atom)
Да, прикольный интерфейс! :)
ОтветитьУдалить>интурфейс
опечатка
Мне тоже понравилось, я до этого, о нем тоже сильно вскользь слышал.
ОтветитьУдалитьДа зараза очепятка :)
И ведь спелчекером вроде гоняю, и иногда все равно проскакивает.