Не имею возможности продолжать пока что, нахожусь на море. Просто почитываю темы на форуме. На данный момент в элементарном виде реализована программа, эмулирующая процессор, а также спаян адаптер, преобразующий сигналы виртуального процессора в реальные сигналы на физическом (не виртуальном) разъеме. Правда прошивка адаптера пока не готова полностью, немного застопорился. Идея сейчас такая чтобы сделать (и оттестировать) системную шину, по которой планируется взаимодействие процессора и всех устройств. Есть видео адаптера.
Пояснение к последней диаграмме. Диаграмма демонстрирует алгоритм одного цикла взаимодействия процессора и устройства.
Цикл чтения данных из устройства:
Процессор формирует на линиях DA[7:0] адрес устройства, с которым планируется обмен данными
Процессор формирует сигнал чтения данных из устройства - устанавливает низкий логический уровень на линии DIR
Процессор формирует сигнал запроса на обмен данными - устанавливает высокий логический уровень на линии EREQ
Устройство, адресуемое линиями DA[7:0], реагирует на изменение сигнала EREQ и подготавливается к обмену данными
Процессор формирует сигнал готовности к приему байта данных от устройства - устанавливает низкий логический уровень на линии RDY
Устройство, адресуемое линиями DA[7:0], реагирует на изменение сигнала RDY, формирует на линиях IOD[7:0] байт данных для передачи процессору.
После того, как на линиях IOD[7:0] сформированы данные, устройство формирует строб-сигнал - устанавливает низкий логический уровень на линии STB. По перепаду данного сигнала процессор фиксирует данные на линиях IOD[7:0]
После того, как данные получены, процессор деактивирует сигнал готовности к приему данных - устанавливает высокий логический уровень на линии RDY
Устройство, реагируя на изменение на линии RDY, деактивирует строб-сигнал - устанавливает высокий логический уровень на линии STB, а так же отключается от линий IOD[7:0]
Процессор, реагируя на изменение на линии STB, деактивирует сигнал запроса на обмен данными - устанавливает низкий логический уровень на линии EREQ
На этом цикл обмена данными заканчивается, состояние линий DA[7:0] не обнуляется.
Цикл записи данных в устройство:
Процессор формирует на линиях DA[7:0] адрес устройства, с которым планируется обмен данными
Процессор формирует сигнал записи данных в устройство - устанавливает высокий логический уровень на линии DIR
Процессор формирует сигнал запроса на обмен данными - устанавливает высокий логический уровень на линии EREQ
Устройство, адресуемое линиями DA[7:0], реагирует на изменение сигнала EREQ и подготавливается к обмену данными
После подготовительной процедуры, устройство формирует сигнал готовности к приему байта данных от процессора - устанавливает низкий логический уровень на линии RDY
Процессор, реагирует на изменение сигнала RDY, формирует на линиях IOD[7:0] байт данных для передачи устройству.
После того, как на линиях IOD[7:0] сформированы данные, процессор формирует строб-сигнал - устанавливает низкий логический уровень на линии STB. По перепаду данного сигнала устройство фиксирует данные на линиях IOD[7:0]
После того, как данные получены, устройство деактивирует сигнал готовности к приему данных - устанавливает высокий логический уровень на линии RDY
Процессор, реагируя на изменение на линии RDY, деактивирует строб-сигнал - устанавливает высокий логический уровень на линии STB, а так же отключается от линий IOD[7:0]
Процессор деактивирует сигнал запроса на обмен данными - устанавливает низкий логический уровень на линии EREQ
Процессор деактивирует сигнал записи данных в устройство - устанавливает низкий логический уровень на линии DIR
На этом цикл обмена данными заканчивается, состояние линий DA[7:0] не обнуляется.
Коничива, форумчане. Записал новое видео. Понимаю, что тут всех интересует реальное железо, а не всякие там эмуляторы, тем не менее, все выкладываю только на этом сайте. Может кому будет хоть немного интересно. Часть информации - повторы, но есть и новая информация. Пожелания и предложения приветствуются.
27 Aug 2019 14:58
Alekcandr
Doomed
Joined: 01 Oct 2007 10:30 Posts: 665 Location: Ukraine
По теме сказать мне не чего. Тут не многочисленные взрослые "дятьки", которые варятся в своих темах. Как пример MSX-EXT. Нужно было запостить с пяток страниц, и пришел один комментарий. Даже не по теме. А о проводках
Это мне то же когда-то посоветовали. Т - образные соединения никак не исправишь, а остальные можно. Провода питания сейчас я развожу толстыми линиями от 0,75 мм. Если бы мне раньше посоветовали это, а то свою первую большую плату (Специалист МХ2) развёл очень плохо - было потом много нареканий.
29 Aug 2019 06:03
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
А какой сам процессор-то? Просмотрел топик сначала и что-то не увидел...
Процессора нет Я не привязывался к какому-то физически существующему процессору. Сейчас процессор существует в виде программы на Джаве. Все процессы на внешних выводах такого виртуального процессора через порт USB выводятся на специальный адаптер. В данном проекте у меня видения конечной архитектуры заранее нет, архитектура формируется так сказать в процессе. Когда будет все ясно, тогда возможно и реализую процессор на чем-то вроде плиса. Я тут как художник, делаю не ради конечной цели, а ради удовольствия от самого процесса.
Users browsing this forum: No registered users and 23 guests
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum