nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 20 Oct 2019 07:23



Reply to topic  [ 122 posts ]  Go to page Previous  1 ... 5, 6, 7, 8, 9  Next
Arduino Nano - эмулятор компьютера под управлением ОС CP/M 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
FoxyLab wrote:
... а здесь - приходится решать много интересных проблем.
С Днём Рождения Вас, коллега :exclaim:
Attachment:
FoxyLab42.gif
FoxyLab42.gif [ 4.59 KiB | Viewed 943 times ]

Надеюсь, своими оригинальными решениями интересных проблем Вы нас еще не раз порадуете!
Удачи, и творческих упехов Вам! :kruto:

_________________
iLavr


16 Oct 2018 09:16
Profile
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
Проект разморожен :-)

Успешные испытания подключения PS/2-клавиатуры через STM8-переходник сделали мой "нанокомпьютер" автономным.
Image
Итак, cpm4nano Mk V:
Arduino Nano 3.0 - эмулирует систему команд i8080, обеспечивает работу с памятью и дисками, выполняет вывод видеоизображения и обмен по последовательному каналу
ОЗУ - 2 x 32 Кбайтных I2C-чипа FM24C256-G
FDD - SD-карточка
ввод - PS/2-клавиатура через STM8S103F3P6-переходник
вывод - параллельно на видеовыход (20 строк x 45 колонок, шрифт 4 x 8 ) и последовательный порт (USB-UART преобразователь)
Image
P.S. Испытал подключение к кинескопному ТВ (четкость изображения хуже, чем на LCD, но синхронизация не нарушается и шрифт читаем).


Last edited by FoxyLab on 03 Oct 2019 14:31, edited 1 time in total.



03 Oct 2019 14:29
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
Lavr wrote:
FoxyLab wrote:
... а здесь - приходится решать много интересных проблем.
С Днём Рождения Вас, коллега :exclaim:
Attachment:
FoxyLab42.gif

Надеюсь, своими оригинальными решениями интересных проблем Вы нас еще не раз порадуете!
Удачи, и творческих упехов Вам! :kruto:

Спасибо!!! :ewink:


03 Oct 2019 14:30
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
Image
Image


06 Oct 2019 11:30
Profile WWW
Fanat
User avatar

Joined: 04 Jan 2016 10:15
Posts: 90
Location: Russia, S.- Peterburg
Reply with quote
Классная штука. Запускал. Медленно немного. На esp8266 шустрее CP/M работает и даже умеет в интернет сеть смотреть.

_________________
"Где просто, там ангелов со сто, а где мудрено, там ни одного" (С)


10 Oct 2019 07:44
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
askfind wrote:
Классная штука.

Спасибо!
askfind wrote:
Запускал. Медленно немного.

Версия с SDRAM, которую Вы запускали, все-таки медленнее, чем текущий вариант с FRAM (кэширование помогает при последовательном доступе, но при произвольном практически бессильно). Но скорость I2C-шины, конечно, является тормозящим фактором. Можно попробовать SPI RAM (у меня даже есть один чип, на половину памяти :ebiggrin: ), но там есть свои заморочки.
P.S. В "старом" коде осталась ошибка в эмуляции, из-за которой он не проходил некоторые тесты. Я ее исправил, но из-за изменения структуры кода я не могу сопоставить две версии напрямую, а что я исправил конкретно, я банально забыл :esurprised: Поэтому она так и останется скорее всего там навечно, такие дела :ewink:
askfind wrote:
На esp8266 шустрее CP/M работает и даже умеет в интернет сеть смотреть.

Это, естественно, так. Вариантов "железных" эмуляторов много, FPGA бы вообще всех уделал, но челлендж был в том, чтобы 328-я атмега (в формате Arduino Nano) одна эмулировала 8080, работала с памятью, карточкой, принимала входной поток (от компьютера или клавиатуры через STM-преобразователь) и выводила видеосигнал (с дублированием в последовательный канал). Такое поделие, как мне кажется, только одно - cpm4nano :esmile:


10 Oct 2019 12:38
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
A вы не могли бы в ваших предыдущих постах на этой странице загрузить картинки сюда на форум?
А то мне их никак не видно с вашего хостинга.. :osad:
Attachment:
FoxPic.gif
FoxPic.gif [ 5.78 KiB | Viewed 217 times ]

Первый раз подумал - непонятный сбой какой-то, но сейчас вижу, что тенденция... :-?

_________________
iLavr


10 Oct 2019 15:52
Profile
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
Lavr wrote:
A вы не могли бы в ваших предыдущих постах на этой странице загрузить картинки сюда на форум?
А то мне их никак не видно с вашего хостинга.. :osad:
Attachment:
The attachment FoxPic.gif is no longer available

Первый раз подумал - непонятный сбой какой-то, но сейчас вижу, что тенденция... :-?

Добавил во вложения.


Attachments:
cpm4nano_MkV_case.jpg
cpm4nano_MkV_case.jpg [ 62.57 KiB | Viewed 215 times ]
cpm4nano_mkV.png
cpm4nano_mkV.png [ 39.39 KiB | Viewed 215 times ]
10 Oct 2019 16:37
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
Добавил возможность включения "турбо"-режима "на лету" с помощью перемычки - отключается прорисовка пикселей в ТВ-кадре, аналог FAST MODE в ZX81. Время выполнения бейсик-теста уменьшается в этом режиме со 120 до 70 секунд.


12 Oct 2019 05:42
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
"Привет, мир!" на FORTH-83


Attachments:
cpm4nano_f83_2.png
cpm4nano_f83_2.png [ 4.08 KiB | Viewed 154 times ]
13 Oct 2019 00:41
Profile WWW
Fanat
User avatar

Joined: 04 Jan 2016 10:15
Posts: 90
Location: Russia, S.- Peterburg
Reply with quote
FoxyLab wrote:
"Привет, мир!" на FORTH-83

Отличный результат!

_________________
"Где просто, там ангелов со сто, а где мудрено, там ни одного" (С)


14 Oct 2019 06:23
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
askfind wrote:
FoxyLab wrote:
"Привет, мир!" на FORTH-83

Отличный результат!

Image

Замутив своеобразный кэш -
однолинейный (16 байт) кэш инструкций (включается только, если адрес памяти в окрестностях значения счетчика команд, работает только на чтение, запись всегда идет в ОЗУ и дублируется (при необходимости) в кэш) удалось ускорить работу с I2C-памятью и, как следствие, CP/M стала работать шустрее - например, время полной отработки команды DIR для дискеты с системными файлами и тестами сократилось в 1,5 раза.

P.S. Read-ahead write-through instruction cache


14 Oct 2019 14:16
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
Некоторые тесты быстродействия (в FAST-режиме):

Длительность прогона 32768 команд:
(при выборке из памяти было включено кэширование)

NOP
без выборки из памяти - 0,6 сек
с выборкой из памяти - 2,1 сек

MOV A,A
без выборки из памяти - 0,7 сек
с выборкой из памяти - 2,2 сек

DAA
без выборки из памяти - 0,8 сек
с выборкой из памяти - 2,3 сек

Без кэша заметно медленнее - например, прогон NOP требует больше 6 секунд.


17 Oct 2019 09:45
Profile WWW
Fanat
User avatar

Joined: 04 Jan 2016 10:15
Posts: 90
Location: Russia, S.- Peterburg
Reply with quote
FoxyLab wrote:
Выложил на YouTube видео работы моего проекта в реальном времени:
https://youtu.be/LHFmt3qWAuY


Это полный тормоз!

На собранном руками машине CP/M-82 в отделе института 8080A (F=2MGz) всё было шустро.

Реализация на AVR именно по этой причине и не понравилась.

Очень медленно.

_________________
"Где просто, там ангелов со сто, а где мудрено, там ни одного" (С)


18 Oct 2019 06:18
Profile WWW
Fanat
User avatar

Joined: 21 Mar 2017 07:37
Posts: 79
Location: BY
Reply with quote
askfind wrote:
FoxyLab wrote:
Выложил на YouTube видео работы моего проекта в реальном времени:
...

Это полный тормоз!
...

Очень медленно.

:ebiggrin:
Вас год в этом видео не смущает? Оно еще времен "SD RAM" ;-) Это если бы в Вашем компьютере НГМД играл бы роль оперативной памяти :-)
В следующем сообщении - актуальное видео.


Last edited by FoxyLab on 18 Oct 2019 12:30, edited 2 times in total.



18 Oct 2019 10:36
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 122 posts ]  Go to page Previous  1 ... 5, 6, 7, 8, 9  Next

Who is online

Users browsing this forum: Majestic-12 [Bot] and 4 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

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.