реклама на сайте
подробности

 
 
> ZX Spectrum: аппаратная реализация на микроконтроллерах AVR
Lisitsin
сообщение Oct 2 2010, 13:27
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Всем привет. Разрабатываю ZX Spectrum на микроконтроллерах ATMEL (ATMega128 - 2 шт, ATtiny2313 - 1 шт.) Всего в схеме 8 микросхем: центральный процессор (ATMega128), видео процессор (ATMega128), контроллер клавиатуры (ATtiny2313) (планируется применение стандартной клавиатуры PC/2), стабилизатор питания (MC78M05CDT), порт ввода-вывода (SN74S04), формирователь цветного изображения (SN74S257), ОЗУ (IS62C1024) с защёлкой адреса (74AC373). В настоящее время сформировал цветной видеосигнал и написал около 80% эмулятора команд (произво-дительности вполне хватает.)

Сообщение отредактировал Lisitsin - Oct 2 2010, 13:28
Прикрепленные файлы
Прикрепленный файл  ZX.ZIP ( 1.59 мегабайт ) Кол-во скачиваний: 170
 


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
7 страниц V  « < 4 5 6 7 >  
Start new topic
Ответов (75 - 89)
Vasily_
сообщение Apr 7 2012, 08:01
Сообщение #76


Знающий
****

Группа: Модераторы
Сообщений: 925
Регистрация: 25-01-09
Из: Рига
Пользователь №: 43 909



Что-то там Error (404).
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Apr 7 2012, 09:03
Сообщение #77


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Цитата(Vasily_ @ Apr 7 2012, 12:01) *
Что-то там Error (404).

Прошу прощения, исправил ...

Сообщение отредактировал Lisitsin - Apr 7 2012, 09:11
Прикрепленные файлы
Прикрепленный файл  AVR_ZX_Spectrum.zip ( 209.48 килобайт ) Кол-во скачиваний: 187
Прикрепленный файл  ASpect_128_Photo.zip ( 2.91 мегабайт ) Кол-во скачиваний: 119
 


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Apr 28 2012, 13:23
Сообщение #78


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Демонстрашка:
http://dl.dropbox.com/u/12408899/Vibrations.zip


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Jun 15 2012, 17:27
Сообщение #79


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Полный проект со всеми исходниками:
http://dl.dropbox.com/u/12408899/Aspect128...l%20project.zip


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Jun 16 2012, 05:11
Сообщение #80


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Полный проект со всеми исходниками:
http://dl.dropbox.com/u/12408899/Aspect128...l%20project.zip


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Nov 7 2012, 13:56
Сообщение #81


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Товарищи! если кто-то собрал девайс, хотелось бы услышать отзывы. Пишем, не стесьняемся !!!. Можно на Vasil.lisitsin@yandex.ru )))


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 7 2012, 15:43
Сообщение #82


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Lisitsin, прошу прощения за то что не по теме, но очень хочется узнать, что повергло вас использовать в своем проекте AVR-архитектуру, тогда как Spectrum ZX гораздо ближе к 51-ой архитектуре. Даже в том случае, когда полного сходства с командами Z80 нет, для нынешних 51-х вполне можно было бы перетранслировать старые коды байт в байт. Т.е. написать примитивный ретранслятор из кода в код, таким образом, чтобы были только замены, но сам код не сжимался и не расширялся. И это всё затем, чтобы адреса переходов не требовали модификации. Или я слишком оптимистична?

Такой подход нельзя назвать эмуляцией, поскольку процесс интерпретации команд во время работы программы не происходит (run-time), а в новый код преобразуется без его деассемблирования. Да и нынешние 51-е МК работают во много раз быстрее, чем старый Z80, хотя и эту архитектуру ныне считают устаревшей. Два года назад я уже задавала в этой теме вопрос (http://electronix.ru/forum/index.php?s=&am...st&p=819032) относительно перспективности использования eZ80 от Zilog (в частности eZ80F91), но вы тогда мне не ответили. Может быть сейчас ответите?
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Nov 7 2012, 16:29
Сообщение #83


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Xenia @ Nov 7 2012, 18:43) *
Или я слишком оптимистична?

Даже очень слишком. Что со стеком будем делать, например? Разные они настолько, что концепции перевода не может быть даже.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 7 2012, 20:19
Сообщение #84


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(_Pasha @ Nov 7 2012, 20:29) *
Даже очень слишком. Что со стеком будем делать, например? Разные они настолько, что концепции перевода не может быть даже.


Что делать со стеком? - Да ничего! Я, когда программирую, вообще о нем не думаю. sm.gif
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Nov 7 2012, 20:48
Сообщение #85


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Xenia @ Nov 7 2012, 23:19) *
Что делать со стеком? - Да ничего! Я, когда программирую, вообще о нем не думаю. sm.gif

Там эмуляция/перевод невозможны, потому что 51-стек растет вверх, а у Z80 - по нормальному sm.gif, к тому же в 51 - стек не отображается во внешнюю память... кому я это рассказываю? Вы и так всё прекрасно знаете.
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Nov 8 2012, 09:54
Сообщение #86


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Цитата(Xenia @ Nov 7 2012, 19:43) *
Может быть сейчас ответите?

51? Это интересно. Вот только правильнее было бы тогда сразу взять сам Z80 и на нём всё делать.
Дело в том, что эмуляция очень специфическая штука. Эмулировать можно одно устройство при помощи другого только в том случае, если запас по производительности компенсирует разницу в системе команд + обеспечивает техническую сторону задачи - т. е. выборка/дешифрация/проверка прерываний/переход к собственно программе эмуляции.
Насколько я осведомлён, 51-ые контроллеры не слишком шагнули вперёд по производительности из-за всё тех же гранц, накладываемых архитектурой - 4 такта в машинном цикле, 21 МГц. При этом главная задача эмуляции - замена инструкций, выполняющихся с отличиями от Z80-ых последовательностью своих родных. При этом мы не располагаем дополнительными свободными регистрами для выполнения этой задачи, а значит, пользуемся ОЗУ. Это удлинняет время выполнения инструкции в неопределённое число раз. При всём при том, пока речь ещё не шла о недокументированных особенностях выполнения команд Z80, без которых будет работать только бейсик и всё.
Преобразование же кода из родного Z80 формата в некий 51х формат выглядит безобидно только с первого взгляда. На самом деле если глубокомысленно и медетативно посмотреть на эту задачу, можно увидеть, что это есть ни что иное как та же самая эмуляция, но выполняемая заранее. Она ни сколько не проще Real-time эмуляции.
Огромное спасибо за вопрос!

Сообщение отредактировал Lisitsin - Nov 8 2012, 09:56


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
Pat
сообщение Nov 8 2012, 10:50
Сообщение #87


Местный
***

Группа: Свой
Сообщений: 421
Регистрация: 27-05-05
Из: Энергодар
Пользователь №: 5 480



Цитата(Lisitsin @ Nov 8 2012, 11:54) *
Насколько я осведомлён, 51-ые контроллеры не слишком шагнули вперёд по производительности из-за всё тех же гранц, накладываемых архитектурой - 4 такта в машинном цикле, 21 МГц.


Еще как шагнули вперед, 1-2 такта и 100Мгц.

http://www.silabs.com/products/mcu/Pages/8...ontrollers.aspx
http://we.easyelectronics.ru/MCS51/start-s-silabom.html
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Jan 20 2013, 12:49
Сообщение #88


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Засунул его в клавиатуру Genius )))

http://dl.dropbox.com/u/12408899/Aspect128%20photo.zip

http://dl.dropbox.com/u/12408899/Aspect128_photo.zip


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jan 21 2013, 05:17
Сообщение #89


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Lisitsin @ Jan 20 2013, 16:49) *
Засунул его в клавиатуру Genius )))

Осталось прикрутить экранчик от сотового 256х192 - и будет моноблок sm.gif


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
Lisitsin
сообщение Feb 9 2013, 08:59
Сообщение #90


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 1-10-10
Из: Рязань
Пользователь №: 59 868



Проект обновлён !!!
http://dl.dropbox.com/u/12408899/Aspect128...ject%20copy.zip


--------------------
с Уважением,
Lisitsin
Vasil.Lisitsin@yandex.ru
Go to the top of the page
 
+Quote Post

7 страниц V  « < 4 5 6 7 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 23:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01533 секунд с 7
ELECTRONIX ©2004-2016