Если детально, то если подать на вход «Пиксель» LOW, то пройдя через инвертор U38:F сигнал примет значение HIGH. Далее он идет на 2ИЛИ U39:А. На выходе получается HIGH, который подается на вход ОЕ регистров U12, U13, которые закрываются (Z - состояние) и больше не производится адресация видеопамяти.
Приоритет больше у взаимодействия с ЦПУ. Поэтому можно писать/читать даже в процессе формирования видео сигнала, но как писалось в статье: на экране будут возникать артефакты. Чтобы этого не происходило необходимо обращаться к данным по сигналу пина «разрешить»
Текущая видеокарта является доработкой этой VGA видеокарта для Arduino NANO блин, опять VGA))) Исходники если надо предоставлю. Возможно это Вам поможет.
В видео на 1:41 ардуино затирает мусор видеопамяти темно-красным цветом. Здесь используется вся мощь ардуинки + мои кривые руки программиста). Съемка в реальном времени. Там происходит передача координат по Х=0, координат по Y=0, а дальше просто цвет пикселя, цвет пикселя и т.д., так сказать пакетный режим. Я уверен, что можно еще быстрее.
Картинки выводятся медленно, потому что скорость передачи UART= 115200
На счет скорости обмена ЦПУ с видеопамятью полноценных тестов не проводил, так как эта видюха разрабатывалась для самодельной ЭВМ, которая производительностью не блещет, поэтому я не видел необходимость в таких тестах.
Затруднюсь полноценно ответить на Ваш вопрос, но попробую как получится. Если пройтись по 155 серии: К155ЛН1, К155ЛА8, и т.д. –грубо 22нс, К155ТМ2-грубо 40нс ну и остальные в том же духе. На счет КР537РУ17 у нее не 130нс, а не более 130нс. Минимальный порог остается тайной, но как показала практика – всё работает.
Замечание принято. В свое оправдание скажу, что я, как человек не образованный, ориентировался в большей степени на мониторы с интерфейсом VGA, чем на полноценный стандарт.
Пока обещать ничего не буду. Сложно забрать время от интересного проекта на скучное описание. :) Сейчас в планах, практически применить ЭВМку. А после попробую детально описать.
Протеус конечно много косячит, но после молотка и зубила (выходы ОЗУ 155РУ2 (7489) дважды инвертируются и вместо РЕ3 или РТ4 используется ПЗУ 2764) эту схему он отрабатывает нормально.
Соглашусь с предыдущим комментарием: вряд ли что найдётся. И начинать придется с понимания работы логических примитивов. Скачайте по ссылке под статьей архив. Там содержится симулятор для программы Proteus (beresta_simulation.DSN). Если в нем отключить генератор и поставить кнопку, то вы пошагово можете видеть с какой ноги микросхемы, что вышло и куда зашло, и что из этого получилось. Надеюсь это Вам поможет. А шестнадцати разрядный делается легко просто увеличиваем разряды регистров и АЛУ до нужного нам разряда. Например, ЭВМ Берёста 4-х разрядная, если её сделать 16-ти разрядной, то количество микросхем увеличится чуть меньше чем в 4 раза.
Скорее всего неопределенное поведение: когда выполнит условие, когда - нет. В этой архитектуре иструкция jne не поддерживается совсем. И не совсем понятно: зачем делать переход на переход без выполнения каких либо действий? Если только ради эксперимента.
Я не эксперт в софте, от того ничего утверждать не буду, но 3 дилетантских вопроса хотелось бы задать.
1. Чем плохи, например: 1С и Компас 3D?
2. Проблема кнопок не на том месте, у буржуинов разве нет такой проблемы? (поменял смартфон и … добро пожаловать в квест!)
3. А не задумывались Вы, что проблема в Вас?(у соседей и солнце светит ярче и травка зеленее и джинсы и жвачка))))
Можно было, но это плюс корпус микросхемы и кварц буржуинский. Отечественного кварца на такую частоту мне раздобыть неудалось
Всё банально просто, 155 -х у меня больше всех по количеству.
Если детально, то если подать на вход «Пиксель» LOW, то пройдя через инвертор U38:F сигнал примет значение HIGH. Далее он идет на 2ИЛИ U39:А. На выходе получается HIGH, который подается на вход ОЕ регистров U12, U13, которые закрываются (Z - состояние) и больше не производится адресация видеопамяти.
Приоритет больше у взаимодействия с ЦПУ. Поэтому можно писать/читать даже в процессе формирования видео сигнала, но как писалось в статье: на экране будут возникать артефакты. Чтобы этого не происходило необходимо обращаться к данным по сигналу пина «разрешить»
Отключить? Вы забыли про мои кривые руки)))
Текущая видеокарта является доработкой этой VGA видеокарта для Arduino NANO блин, опять VGA))) Исходники если надо предоставлю. Возможно это Вам поможет.
В видео на 1:41 ардуино затирает мусор видеопамяти темно-красным цветом. Здесь используется вся мощь ардуинки + мои кривые руки программиста). Съемка в реальном времени. Там происходит передача координат по Х=0, координат по Y=0, а дальше просто цвет пикселя, цвет пикселя и т.д., так сказать пакетный режим. Я уверен, что можно еще быстрее.
Картинки выводятся медленно, потому что скорость передачи UART= 115200
На счет скорости обмена ЦПУ с видеопамятью полноценных тестов не проводил, так как эта видюха разрабатывалась для самодельной ЭВМ, которая производительностью не блещет, поэтому я не видел необходимость в таких тестах.
Затруднюсь полноценно ответить на Ваш вопрос, но попробую как получится. Если пройтись по 155 серии: К155ЛН1, К155ЛА8, и т.д. –грубо 22нс, К155ТМ2-грубо 40нс ну и остальные в том же духе. На счет КР537РУ17 у нее не 130нс, а не более 130нс. Минимальный порог остается тайной, но как показала практика – всё работает.
Замечание принято. В свое оправдание скажу, что я, как человек не образованный, ориентировался в большей степени на мониторы с интерфейсом VGA, чем на полноценный стандарт.
Или этот )
Пока обещать ничего не буду. Сложно забрать время от интересного проекта на скучное описание. :) Сейчас в планах, практически применить ЭВМку. А после попробую детально описать.
Протеус конечно много косячит, но после молотка и зубила (выходы ОЗУ 155РУ2 (7489) дважды инвертируются и вместо РЕ3 или РТ4 используется ПЗУ 2764) эту схему он отрабатывает нормально.
Соглашусь с предыдущим комментарием: вряд ли что найдётся. И начинать придется с понимания работы логических примитивов. Скачайте по ссылке под статьей архив. Там содержится симулятор для программы Proteus (beresta_simulation.DSN). Если в нем отключить генератор и поставить кнопку, то вы пошагово можете видеть с какой ноги микросхемы, что вышло и куда зашло, и что из этого получилось. Надеюсь это Вам поможет. А шестнадцати разрядный делается легко просто увеличиваем разряды регистров и АЛУ до нужного нам разряда. Например, ЭВМ Берёста 4-х разрядная, если её сделать 16-ти разрядной, то количество микросхем увеличится чуть меньше чем в 4 раза.
Скорее всего неопределенное поведение: когда выполнит условие, когда - нет. В этой архитектуре иструкция jne не поддерживается совсем. И не совсем понятно: зачем делать переход на переход без выполнения каких либо действий? Если только ради эксперимента.
Сложно сказать: Я занимался им дней 5 плотно (пока в отпуске был), а дальше от случая к случаю. Уже и не посчитаешь. Пусть будет недели две-три.
да, только с маленькой переделкой. (добавил строку 11 и roma2 поменял с roma1) Переходы должны осуществляться на команды mov, sub или add.
в результате попрыгает до конца и на последних двух инструкциях уйдет в бесконечный цикл.
хорошо
пожалуйста)