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

Микропроцессорная лаборатория «Микролаб КР580ИК80 907». Разработка и отладка встроенного ПО полвека назад

Время на прочтение5 мин
Количество просмотров9.3K
Всего голосов 55: ↑54 и ↓1+53
Комментарии83

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

Со всем уважением, но 20000 руб это очень высокий потолок. И уж точно не средняя. На авито сейчас лежат и за 10 и за 12 тыс, но попадается и дешевле.

Мне кажется, что и 10 многовато. Хотя, может быть я плохо разбираюсь в винтажной технике. В свое время таких чемоданов было достаточно много по учебным заведениям. Как выяснилось, среди моих знакомых по стране немало на таких учились.

Хорошая штука.
Я немного из такого хардкора в 1997 в 10кл застал - собрал светомузыку аж на 7 микросхемах, ну и спалил в процессе наладки. Оказалось, что новые к556рт4 просто так работать не будут - это ПЗУ и надо ее программировать. Развел на печатке ручную схему: 8 переключателей задавали адрес ячейки, 4 переключателя определяли что запишется. 4 светодиода позволяли посмотреть, что записано. Переключатель режима работы и переключатель собственно прожига. И тут нужно было вручную по очереди все адреса перебрать последовательно в двоичном виде. Тоже в тетрадке рисовал как должно мигать и что нужно записать.

Раньше светомузыка была очень популярной и считалась чуть ли не обязательным атрибутом любой акустической системы. В журналах было огромное количество схем. И ладе в китайских приемниках под сетку динамика обязательно ставили светодиоды. Но как-то эта мода улитучилась.

Самое забавное было это схемы на тиристорах/симисторах. Каких трудов стоило достать КУ208 нужной буквой. Собирал ты один канал - всё работает. Собираешь три и кирдык...

Почему никто не писал что необходимы фильтры для подавления помех я не понимаю, вроде в солидных журналах типа Радио даже публиковали такие фейки.

А с информацией в восьмидесятые годы были невероятные проблемы.

ну, подарок радиолюбителю — комплект КУ202/КУ208 — был вполне достойным подарком.

В детстве гулял "на районе" и забрёл в нечем не примечательный спуск в подвал, разве что он был глубже обычного. Дальше была железная дверь, толкнул - открыто, а за ней ещё спуск и огромное помещение с дверьми по бокам. Сквозь монотонный шум, за одной из полуоткрытых дверей, отдалённо слышались голоса... Любопытство пересилило....

Там то мне и отсыпали....

Заглянул внутрь. В глубине помещения, среди нагромождения различного техногена издали опознаваемого как имеющего отношения к электохозяйству, сидели два технаря к которым я от переполнявшими меня впечатлениями от обнаруженного обратился с мантрой, - Не могли бы они мне отсыпать что-нибудь, не нужного электрического?
А было там очень много чего! Поэтому последовали уточнения, а в тот момент как раз видел где-то схему на тиристорах с простейшими RC фильтрами. И эти самые тиристоры КУ202 мне и отсыпали(!), но предупредили, что будет не просто из за крайне низкой чувствительности схемы. Так по итогу и получилось - от ламповой радиолы, всё это скорее всего с ошибками монтажа так и не завелось (дело было в районе 1-2 классов школы). Смелости сходить туда второй раз не хватило и хотя уже прошло столько лет, с тиристорами до сих пор не уверенно себя чувствую :(
ps помещение реальное - глубинная насосная станция.

У меня интернет только в начале двухтысячных появился, и то на работе. До этого только в бумаге надо было что-то искать.

Помню такие чемоданчики. Из плат расширения были платы ЦАП - точно, а вот 8 светодиодов - не помню, отдельная плата была или основная чемоданная.... ЦАП подключали к осцилографу и требовалось нарисовать фигуру... а со светодиодами - сложным читалось медленно зажечь и погасить...

Сколько времени прошло, а студентов светодиодами мучают до сих пор. У нас лабораторки короткие были и ограничивались выполнением арифметических операций и вызовов подпрограмм.

Арифметика - само собой. Но переферия - это намного "наглядней" )

Я радист по специальности. Считаю, что и так повезло, что хоть это было. Нас то в основном пичкали приемниками, передатчиками и антенами.

У нас в МЭИ мы использовали подобные устройства (чуть другой конструктив, но интерфейс один в один) для обучения студентов, пока не перешли на микроконтроллеры Texas Instruments в 1998 году. Очень неплохое решение для обучения основам ассемблера и машинного кода. Но устройства в то время уже плохо работали (проблемы с сохранностью монитора в ПЗУ и др.). Я даже написал симулятор такого устройства, на котором учились студенты, а сегодня даже нашёл описания лабораторок другого ВУЗа на базе этого симулятора "Emu580_prg.exe".

Под 580 можно было писать. Описание процессора было достаточно подробное. Для современных архитектура такого ни кто не покажет. Видел проект кр580 для плис, народ чуть ли не весь набор микросхем реализовал.

на процессоры массового применения вся документация есть, было бы желание эти тысячи страниц читать. Intel Architecture Software Developer’s Manual времен 486 даже в русском переводе издавалось, всякие AVR и PIC и подавно.

На 580 схемы были. Для AVR и PIC только программная модель.

Так 580 без обвязки и пляски не заводился, а это минимум двухполярное питание, генератор, ОЗУ и ПЗУ. Там без схем и описания сигналов никак. В IA SDM это все тоже описывалось пока было внешним и на это можно было повлиять. Как части стали переносить на чип - смысла подробно описывать схемотехнику не стало, например тот же таймер стали описывать схематически. А для AVR/PIC какие схемы давать если все на чипе? Только питание/кварц/GPIO - это все описано.

И книги отличные печатали, в особенности издательства Мир и с красочно сделанным контентом.

P.S. Таблицу команд и мнемоник процессора Z80 была у меня из двух томника за автором Рафикузмана.
помню-помню. был у нас один семестр по микропроцессорам на РТФ году в 92 или 93.

20 лет назад отец принес вот такой вот чемоданчик домой, к сожалению, он сам не особо представлял его сферу применения, как и я тогда. А оно вон как оказывается:)

Очень полезный чемоданчик. К нему хорошая книжка была.

Вот ее то как раз и не было:(

Сейчас все просто, можно нагуглить. 20 лет назад с поиском подобной информации были проблемы.

Наверное, думаю что мне тогда просто не хватило упорства. Да и в десять лет интересы были немного проще. В любом случае спасибо Вам за статью.

В десять лет я в песочницу еще бегал играть после уроков.какие там вообще микропроцессоры?!

Штука достаточно популярная сейчас. Мне казалось, что на Хабре недавно что-то про нее было. Но не нашел. Нашел https://red-innovations.su/index/photos_c/kr580.html , там, говорят, прошивки есть, и видеоуроки на ютубе.

Я в 2004-2005 должен был вести занятия на них для студентов 4 курса. Но была определенная гибкость, и новый комплект на AT89C51. Он, правда, к тому времени тоже устарел, и я заменил в комплекте микроконтроллер на ATMEGA162 (pin-2-pin совместимый, только ICP программатор потребовался), и вел занятия на нем и WinAVR+VMLab.

Вероятно, курс потерял в осязаемости, но, надеюсь, позволил получить более практические навыки. Не знаю, многим ли студентам это пригодилось... Одному точно пригодилось. И методичку несколько раз пересылал интересующимся, им тоже пригодилось. Методичка недописана... А потом и потребность в курсе почему-то пропала.)

Написание методичек это бесконечный процесс.

После кр580 я сперва на msc51 перешёл, сперва были процессоры сименс, потом АТ89. И, наверное, ближе к 2005 перешёл на AVR. PIC после msc51 осваивать смысла как-то не видел.

Я, кстати, сам удивился, что на хабре про неё ни чего не находится.

На счёт популярности сложно сказать. Поисковик не много информации выдаёт.

Это немного разные чемоданы. Кто из них более ранней версии, сложно сказать. Но скорее умк80, судя по картинкам, у него схема более прогрессивная.

Жаль, что эти статью по названию чемодана не гуглятся.

Новый комплект - это "такой же" чемоданчик, или что-то другое было?

Больше для интереса запускал на Atmega162 amForth (версии 5.5) пришлось, правда, немного повозиться для оживления для неё загрузчика.
А, далее ещё и проверил работоспособность прошивки через запуск её в программе Proteus с её штатным терминалом. Узнал, что в программе Proteus не реализован функционал поддержки самопрограммирования AVR контроллеров.

P.S. По PIC есть такая методичка Г.Р.Алпатов «Применение PIC-контроллеров в измерительной технике»
Учебно-методическое пособие «ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ

а я память М162 под завязку забил, но добился, чтобы она считывала данные с ПЗС линейки и делала преобразование Фурье на 16384 отсчета 2 раза в секунду непрерывно. (ОЗУ приделал внешнюю, из кэша от 486), в 2001 году...

у нас на кафедре был такой «чемодан», стоял без дела (были более продвинутые, хотя и менее наглядные системы обучения). Но в аналогичном исполнении (только без чемодана) были стенды для секционок (на 581 или 583 серии).

Это какой год был?

где-то 89-91. даже, скорее 90-91.
Но к тому времени уже становилось понятно, что секционники — не мейнстрим. И курс по ним читать нам не стали (хотя планировали). Поэтому мы (ну, такая «четверка упертых») тыкались туда добровольно и самостоятельно.
Почему вообще появилась тема с секционниками — так потому, что мы тоже «радисты», и для обработки сигналов нужно быстродействие, и предполагалось, что «классические микропроцессоры» его не обеспечат, и «спецвычислители» нужно делать «строго под задачу», со всеми вытекающими…
Ну, почему же без дела?
У меня даже осталось интересное воспоминание по сдаче лабы на этот чемоданчик Гаку С.П :)

Воспоминание в студию!

Случай был такой.

После составления программы на МК ассемблерa 580 принялся за её переписывание от руки на чистовой лист бумаги A4, завершил это действие, но при проверке сделанного
выяснился маленький ньюанс, что лист бумаги, в процессе оформления кода, был перевёрнут не справо-налево, а сверху-вниз и сответственно текст на обратной стороне листа стал «вверх-тармашкой». А, что делать время потрачено много и переписывать повторно тоже самое не оказалось желания. Было принято решение идти и сдавать лабароторную работу в таком виде преподавателю с озвучиванием ему сего получившегося казуса.
На что было примерно сказано по смыслу преподователем следующее: что важнa не форма, а содержание.
В результате лабораторная работа была зачтена. :)

Как вспомню отчёты от руки с основной надписью по ескд, дурно становится. И курсовые по 35 страниц, максимум одно исправление на лист допускалось. Писать можно было только полупрописным шрифтом.

Как то даже не думал о том, откуда у меня образовалась привычка иногда писать от руки полупечатным шрифтом.
Да, объём курсовых такой примерно и требовался, а бывало прокатывало их написания с двойным интервалом между строк для объёмности выходной работы.

P.S. Особо требовалось соблюдать шрифтовые нормы в предмете начертательной геометрии.

У нас не прокатывало, преподы зебру под листок подкладывали.

Оказывается, не только у меня привычка полупрописью писать)))

я не помню лаб на нем. Нас же Сергей Палыч освободил от своего предмета…
...
мы знакомы?
Костя?
Вероятно, как людей обслуживающих Корвет класс и разрабатывающих ПО для их по заказам от производителя?

P.S. А, понятно, они у нас ещё были на первом или втором курсе.
(года разные поступления в Вуз)
ну и это тоже.
Но в основном — чтоб не мешались.

Хотелось бы прочитать про сравнение с иностранным аналогом кроме внешнего вида

Так по сути, кроме внешнего вида, разницы нет. Отличия кроется в элементной базе. Наш вариант адаптироваться под отечественные компоненты.

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

image

Мне очень не хватило в вашей статье детального описания архитектуры и схемотехники, а также примеров программирования. Не думали ли сделать демку на вашем устройстве, как вот делал я ранее?

Помню что у нас такие чемоданы в Рижском Авиационном Университете активно использовались на лабораторных работах по курсу микропроцессоров и цифровой схемотехники. был там один серьёзный "хардварный" баг - фиксаторы крышки чмодана разбалтывались со временем и при неосторожном движении крышка захлопывалась и острым краем перерубала провод питания

Вы классно написали. Но название не очень удачное. Если бы я сразу нагуглил Ваши посты, то скорее всего свой не стал бы писать. На асм для кр580 писать не хочется, хватило мне ассемблера в свое время. У меня была цель рассказать о том, что подобные инструменты существовали, не более того. В моем тексте есть ссылка, по которой чемодан достаточно подробно описан, и есть ролики на ютубе по программированию. Но похоже, что оправдательный пост писать прийдется.

Ваш чемодан - это похоже чуть более поздняя версия, либо просто более прокаченная. У HP тоже несколько версий было. На их сайте вперемешку представлены фотографии двух явно разных устройств. У вашего схема питания более наворочена, и сама материнка по плотнее сделана. Скорее всего и блоков в ней по больше.

На досуге я себя вот так развлекаю https://habr.com/ru/company/timeweb/blog/694924/

Ваш чемодан — это похоже чуть более поздняя версия, либо просто более прокаченная.

Когда изучал тем, как я понял было несколько версий таких чемоданов. Просто нужны были учебные комплекты, вот и клепали. У вас 2 кБ ПЗУ, а у меня 1 кБ, так что возможно ваш и более поздний.

Вполне может быть. Ваш индекс 80 имеет. И больше похож на версию от hp. А этот толи 83, толи 87 года выпуска.

По версиям чемоданов столкнулся с интересным моментом. В моем чемодане установлен процессор с маркировкой КР580ВМ80. На фотографиях в интернете встречаются экземпляры с маркировкой процессора КР580ИК80, а это старая версия маркировки. Не помню точно в каком году переименовали. На вашем дипломате 6 индикаторов, это больше похоже на чемодан от HP. Но HP 5036A выпущена в 79 году на процессоре 8085, и встречаются упоминания, что это не первая их версия. В общем, достаточно запутанная история получается.

Но все же производительность процессора была близка к современным 8-ми битным микроконтроллерам.

Таки нет, даже самые простенькие микроконтроллеры — это адова мощщ, в сравнении с этим процессором. Даже старички С51 работают быстрее, потому что 2,5 МГц — это тактовая частота, а каждая команда выполняется за машинный цикл, и даже самая быстрая выполняется, по моему, за 10 тактов (если спора ради, найду документацию). Соответственно «реальная» частота — это сотни килогерц. Добавим сюда отсутствие таймеров, средств ввода-вывода, окажется что штука даже проще чем контроллеры.

Если сравнивать микроконтроллер с кр580, это как система на кристалле. КР580 это все таки набор микросхем, где ВМ80 это чисто процессор, у него даже памяти на борту нет.

С таксированием там вообще все сложно. Есть отдельная микросхема - тактовый генератор. Чтобы получить тактовые сигналы на 2МГц, нужен кварц на 18МГц. Команды выполняются от 3х до 5 тактов, и занимают от 1 цикла. Максимально может выполнять 625 тысяч команд в секунду, а всреднем около 500 тысяч. Не так уж и плохо?

Процессор поддерживает примерно 65Кб памяти, это если не играться в банки. Благо спроектиррвать архитектуры вы можете сами как хотите.

Посчитайте такты процессора для AVR, кпримеру, сколько тактов он реально выполняет условный переход. Ну или посчитайте, сколько тактов реально складываются две переменные. Порты тоже уровни меняют только на следующий такт. В итоге тоже не так все радужно, хоть и заявлено 1mips. Risc для компиляторов удобнее, с этим ни кто не спорит.

Если проанализировать задачи, которые решают на 8-ми битных МК, из моей практики всегда хватало тактовой частоты 1МГц. Ниже не вариант, шить долго. А гонять тиньку на 20МГц я не понимаю для чего это нужно.

Конечно современный МК компактнее и потребляет меньше. Но кр580 для своего времени был хорош. И на нем очень серьёзные вещи делали.

Я не утверждал, что производительность равна. Но если решать реальные прикладные задачи, то Вы увидите, что не так уж оно и далеко ушло.

Я вижу непонимание моей компетенции. Прекрасно понимаю разницу между микропроцессором и однокристальным микроконтроллером. Главная разница состоит в архитектуре, Гарвард и Фон Нейман.

Раз возник спор, обратимся к специальной литературе в таком случае. Обратимся к основам: Intel 8080 Assembly Language Programming Manual, то вы можете увидеть, что каждая команда выполняется от 5 до 18 тактов. В среднем 10 тактов (страница 78). Те же команды перехода, о которых вы говорите выполняются за 10 тактов. Таким образом, если в среднем каждая команда выполняется за 10 тактов, фактическая частота процессора примерно равна 250 кГц.



Теперь обратимся к документации на популярный микроконтроллер, установленный на многих платах Arduino Atmega328p. Если вы потрудитесь открыть страницу 281, то увидите что практически все команды выполняются за 1 такт процессора!



Редкие команды выполняются за 3 такта. С учётом того, что процессор работает на частоте 16 МГц, то это громадная разница. Давайте по справедливости сделаем, что в среднем команда выполняется за 2 такта (хотя я бы дал полтора такта). Получается 8 МГц. Итого, банальная AVR быстрее этого комплекса грубо в 32 раза!

Я очень много программировал на ассемблере как для AVR, так и для КР580ВМ80А, вы можете ознакомится с этим в серии статей Демки для микроши: Интро, Часть 1, Часть 2, Часть 3. И знаю о чём говорю, с учётом богатства архитектуры микроконтроллера AVR сравнивать их невозможно, это как сравнивать карету запряжённую лошадьми с болидом формулы 1. И то, отличие в скорости там будет меньше.

Но если решать реальные прикладные задачи, то Вы увидите, что не так уж оно и далеко ушло.

Как вижу, у вас просто нет опыта решения таких задач, и поэтому такие выводы.
Да, я забыл главное сказать. Все команды работы с данными у i8080 осуществляются через акумулятор, таким образом можно смело делить производительность ещё на 4-5, потому что потом надо акумулятор куда-то положить, а регистров катастрофически мало. А у AVR вы можете работать с любым регистром как вам нравится, без всяких аккумуляторов и прочих бесячих подвывертов (плевался когда писал).

Сюда стоит добавить богатство периферии у контроллеров, в общем получается просто несравнимая разница.
С делением на 4-5 из-за наличия аккумулятора не очень корректный вывод.
т.к. лишь ограниченное число переменных можно разместить в регистрах и вычислительные формулы чего-либо по данным тоже потрeбует считывания/записи данных в регисты из/в памяти.

P.S. К примеру у PIC контроллера тоже данные проходят через «один» регистр и 4-е такта на команду, но это не помешало им занять «ведущее» положение на рынке и купить Atmel.
MISC против RISC против CISC
Philip J. Koopman, Jr. «Стековые компьютеры, новая волна» (1989)
MuP21
Прагматичные процессоры (статья от 2001г)

В отличие и от самых эффективных эмуляторов Java-машины, и от лучших JIT-компиляторов (осуществляющих трансляцию Java-кодов в коды целевой платформы в ходе загрузки задачи), аппаратные стековые машины привлекательны не только (и не столько) очень высокой производительностью, хотя их быстродействие впечатляет. Так, при потреблении в 5 раз (!) меньшей мощности они уверенно — почти в 2 раза — обходят своих далеко не самых медленных конкурентов из регистрового мира RISC: классическая стековая
машина «выдает» на тестах CM (CaffeineMark) 1900 единиц против 1000 единиц очень удачного процессора ARM7TDMI при тактовой частоте 100 MHz (для сравнения, этот показатель соответствует уровню производительности процессора Intel Pentium 150 MHz или даже Pentium Pro 200 MHz — в зависимости от качества реализации виртуальной машины Java). При этом следует учесть, что тесты CM комплексные, и полученная оценка является интегрированной, включающей и интенсивные вычисления с плавающей точкой, которые обычно производителями стековых машин аппаратно не поддерживаются!

Но все же главная привлекательность безадресных архитектур кроется в исключительно высоких показателях скорости переключения между задачами/потоками в многозадачных/поточных программных системах. Каноническим регистровым машинам в таких случаях надо сохранить
текущий контекст в стеке, размещающемся в некоторой области оперативной памяти.
Так как контекст современных процессоров достаточно объемен (обычно у них много регистров), а операции записи во внешнюю память относительно медленны, то и время переключения получается (в терминах процессора) очень продолжительным. Стековым машинам такие операции не нужны — их контекст уже хранится в стеке, поэтому переключение обычно осуществляется за один такт. Чтобы понять порядок величин, следует привести такой пример: переключение между потоками даже в весьма неплохих ОС реального времени, написанных на компилируемых языках и тщательно оптимизированных, отнимает одну-две миллисекунды процессорного времени.
Для процессора aJ-100 и программы, написанной на Java, переключение между двумя потоками занимает строго 1 микросекунду.

Такая разница (на три порядка!) означает, что процессору легче «справляться»
со множеством разных задач, что исключительно важно уже не только для «настольных» машин, но и для самых разнообразных персональных устройств.
..


MISC (компьютер с минимальным набором команд, Minimal Instruction Set Computer) — архитектура для проектирования процессора, которая отличается наилучшей эффективностью и простотой в сравнении с CISC и RISC. Может содержать в себе блок RISC, обрабатывающий в себе от 10 базовых команд (+, —, /, *, if, else & etc), из которых формируются более сложные операции над значениями, методом ветвления полученных результатов в ПЗУ. С точки зрения быстродействия, время выполнения инструкции, скорость записи и передачи данных в память, сократилось бы в разы, так как не нужно было бы ожидать, пока заполнится и очистится конвейер, а выполнять всё «потоково» без задержек.

Причиной, по которой данная архитектура не стала популярной в компьютерных технологиях – сложность написания программ под различные процессоры. Ведь все нюансы по подбору методов вычисления и оптимизаций возлагались на плечи программистов. К тому же, с повышением сложности выполняемых задач, требовалось более сложное ПО, что тормозило бы развитие микропроцессорного рынка. Поэтому, было разумнее переложить и стандартизировать процессы выполнения стандартных формул (инструкций) на плечи процессорных специализированных блоков и написать программу «дирижёр», которая управляла бы этими процессами (как в CISC).

Тем не менее, если встроить в данные процессоры более совершенный блок инструкций, который декодировал бы их на аппаратном уровне, то равных по производительности энергоэффективности и простоте, данному процессору практически не нашлось бы.

Первая вариация данного процессора под названием MuP21 (1995г)

, имеет вычислительную способность 100 MIPS, при техпроцессе 1.2 мкм (!), энергопотребление 50 мВт. Работа процессорa на 100 мГц и количество транзисторов равно 7000 штук (!).
Впечатляет. У Pentium 1 (60 МГц) с 3.1 млн. транзисторов, 0,8 мкм и до 15 ватт энергопотреблением, вычислительные возможности были примерно на том же уровне.

Сходу, что нельзя разместить в 32-х регистрах общего назначения AVR? Автор сравнивает данный процессор с AVR, давайте об этом и будем говорить.

К примеру, разместили/считали данные одной структуры, а на следующем шагe понадобились данные другой структуры и обработка данных полей.
Разве в этом случае можно обойтись лишь работой с имеющимся количеством регистров зная что при «каждом» чихе данные придётся перегружать в них?
А, если ещё используется, к примеру, какое то ядро представляющее функциональность ОС. (RTOS).
При чём здесь это?

Я понимаю, что спор уже ради спора идёт. Но факт остаётся фактом, что даже пики в десятки раз производительнее этого комплекта. И сравнение некорректно. AVR хоть и позиционируется как RISС-процессор, но есть вполне даже CISC инструкции, например умножения.

Но даже если сравнить этот комплект с самым первым микроконтроллером AVR, согласно википедии: Among the first of the AVR line was the AT90S8515, which in a 40-pin DIP package has the same pinout as an 8051 microcontroller, including the external multiplexed address and data bus.

То всё равно, он в десятки раз более производителен! 512 SRAM + 32 регистра общего назначения, без танцев вокруг аккумулятора.

За сим умываю руки, не хочу принимать участие в бесполезной полемике. Вы поймите, i8080 великолепный проц для своего времени, но сравнивать старьё с «современными» контроллерами (AVR тоже старьё), некорректно.
i8080 великолепный проц для своего времени

имхо, насчет «великолепный» — вы явно преувеличиваете (8085 и z80 были гораздо удобнее).
Но лидер рынка — это точно.
Да, возможностей 580 было достаточно для решения и производственных задач.
В моей прктике сделал по работе автоматизацию места разбраковщика ткани в цеху на ткацкой фабрике (устройство с клавишами, сегментно-буквенным индикатором на 15-ть символов, датчиком метража). — 9ть приборов соединялись по RS-232 к компьютеру на 386-х процессоре и после соединения со стороны ПК периодически отдавали данные в систему для их хранения, обобщения и учёта для бухгалтерской программы.
На ПК данные с приборов запрашивались с помощью резидентной программы.
Тактовая 1821 (контроллер совместимый с 580, но однополярным питанием) вроде даже была где то 2.5МГц.
Программа писалась сначала в парадигме «супер-петли», но её возможностей со временем не хватило и было принято решение её переделки на алгоритм работы реагирования на возникающие события в системе, чего вполне оказалось достаточно для решения всех задач для работы прибора.

P.S. 500 тыс/с — это вроде при оценке команд типа пересылки регистр-регистр.
На безрыбье народ чего только не изобретал. Чего только стоят определители номера на Z80. Вот даже демку на нём делали.

Это не безрыбье — это 1994г. когда и зарплату предлагали получать в виде рулонов ткани, а обычная зарплата исчислялась в сотнях тысяч рублей. :)
когда и зарплату предлагали получать в виде рулонов ткани, а обычная зарплата исчислялась в сотнях тысяч рублей. :)

Именно безрыбье, от бедности. На тот момент уже были микроконтроллеры, но они были недоступны по ряду причин, хотя советской промышленностью выпускались и были достаточно производительны.
Это 1816ВЕ39 и 1816ВЕ48 (8051), как наиболее востребованные (их вроде, и сейчас можно купить в ЧипДип) и книга по ним?

P.S. В книге Хвоща ещё были представлены разные МПК.
Например эти, да. Я вот ковырялся с клавиатурой «Электроника МС 7004» то там как раз стоял микропроцессор 1816ВЕ48. На сколько я знаю, это не 8051, а MCS-48 — предыдущее поколение с внешним ПЗУ.
В моём случае выбора по железу не было т.к. изначально эти приборы были сделаны разработчиками на Чайковском комбинате шёлковых тканей, а моей задачей была привязка в технологическую структуру местной фабрики с разработкой большей части ПО как верхнего уровня так и программы самого прибора.
В любом случае, снимаю перед вами шляпу за решение этой крутой задачи. Она реально классная.
Примерно год от начала процесса до внедрения в производственный цикл. Забавно, что бухгалтерская часть учёта этих данных писалась на Турбо Бейсике 1.0, но уже не мной, кроме программы преобразования данных из протокола прибора в формат для обработки принятый в базе данных.

P.S. Попутно написал и программу для машины укладчика ткакни в поддоны для измерения её длины.
Драйвер для ПК вообще сначала писался на Турбо С, а потом уже его выхлоп стал ассемблерной программой в DOS. :)
с Z80 у меня вообще началось знакомство с ассемблером на ZX-Spectrum.
в разработке программы ПЗУ для включения в неё и режима турбосчитывания и рускоязычной клавиатуры. Пришлось пройти несколько итераций стирания-записи ПЗУ ультрафиолетовой лампой до получения удовлeтворительного результата.
Потом ещё подцепил полноразмерную клавиатуру задействовав все 8-мь линий порта ввода и как финал переделка программы редактора TLW для понимания ей всех появившихся клавиш.

P.S. Дальше даже расширял уже штатный Бейсик для поддержки им функционала форматного вывода данных по аналогии с Си языком.

А я когда-то студентом вот на таком кнопки нажимал: https://xlat.livejournal.com/667944.html У нас без чемоданов были, но плата расширения прилагалась.

Занятно, но не скажу, что большое удовольствие. Они не подыхали совсем, но начинали работать всё нестабильнее и нестабильнее. Набираешь набираешь эти коды, а оно раз - и сбрасывалось.

Да, была проблема с потерей памяти у этих чемоданов. Но все-же лучше, чем на бумаге учиться.

А нас учили на похожем стенде, но на микропроцессорном комплекте К1804 ( копия семейства Am2900 ). В кодах всё набирали, только каждая команда очень много бит занимала. Запомнил, что кодировка команд была гораздо логичнее, чем на К580ИК80.

Все равно в машинных кодах работать тот ещё аттракцион. Но я рад, что имел такой опыт. Молодеже на работе рассказываешь, так они на тебя как на динозавра смотрят!

Работать не приходилось, но вот игрушку написал для БK001 в своё время. Забавное и нетривиальное было занятие... Особенно с учётом того, что программа на кассетном магнитофоне хранилась!

в 1987 нас призвали в армию. И мы попали в стройбат. Товарищ попал крановым. Так вот, он спёр из библиотеки части журналы Радио с дампами бейсика, монитора и еще чего-то, восстановил по памяти таблицу команд 80-го всего с двумя ошибками, и долгими вечерами, сидючи на бешенном кране, вручную(!!!) дизассемблировал оные дампы, и получившееся отсылал домой письмами…

О да!!! Светодиодики мигали!!!

А у нас в институте подобные стенды по цветам различались, типа стенд на КР580вм80 - желтый, на КР1810вм86 - синий, на К1801вм2 - красный. Ну и лабы, типа чтобы по шине данных единичка бегала (по светодиодам), от младшего бита к старшему и обратно.

Такие чемоданы были, а мы на них диодики гоняли...

Писали код и делали лабы на таких чемоданах в 2010 году в одном из московских вузов

Как демонстратор устройства «эвм общего назначение на процессоре общего назначения» — это вполне нормально для учебного процесса.
Упомянутых выше «на КР1810вм86 — синий, на К1801вм2 — красный» я не видел, возможно, и они подойдут. Т.е. работа шин А/Д, пошаговое выполнение команд, с возможностью потыкаться осциллом. Чего явно не хватает — это возможности загрузки программы извне. ну и возраст оного процессора наверняка спровоцирует отторжение у студентов.
с другой стороны, сильно зависит от специализации — например, «чистым программистам» процесссор «в железе» нафиг не нужен, хватит эмулятора.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий