Forth
http://fforum.winglion.ru/

минимальная архитиктура и минимальный микрокод
http://fforum.winglion.ru/viewtopic.php?f=29&t=3111
Страница 1 из 3

Автор:  Jelsay [ Ср янв 18, 2017 21:52 ]
Заголовок сообщения:  минимальная архитиктура и минимальный микрокод

минимальная архитиктура и минимальный набор для команд (микрокода) элементарного форт-процессора

предположим у меня есть возможность реализации простейшего форт-процессора на иных физических базовых принципах нежели ЭЦВМ..
поэтому интересует - для сравнения с другими простейшими вариантами вычислительных машин -
самая простейшая электронная аналогия реализации форт-процессора..

Автор:  gudleifr [ Ср янв 18, 2017 22:05 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

<в теме появился mOleg>

Автор:  Jelsay [ Ср янв 18, 2017 22:31 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

gudleifr писал(а):
На этом железе - машина + канал - сторится простейший интерпретатор:


для меня это слишком высокий уровень..

поскольку у меня пока есть только аналоги

- адресуемой памяти..
- отдельной ячейки памяти - регистра..
- а так же специальной памяти - стека
- и АЛУ

ну и возможность с помощью некой "прошивки" микрокода в УУ - обмениваться данными между этими элементами в произвольном порядке.. и управлять работой АЛУ

это всё..

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

Автор:  gudleifr [ Ср янв 18, 2017 22:35 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

<в теме появился mOleg>

Автор:  Hishnik [ Чт янв 19, 2017 00:35 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

NOP NOT @ SHL SHR SHRA INPORT SWAP DUP OVER R> + - AND OR XOR = < > * DROP JMP CALL >R ! OUTPORT IF UNTIL RET LIT

Рабочий, хотя слегка морально устаревающий проект. Порядок может выглядеть странным, но оно сгруппировано по влиянию на стек. На этом строится вполне рабочий процессор. Необходимость "символьного канала", чтобы там еще и интерпретатор образовывался, в контексте схемотехники - высосанное из пальца наукообразие, чтоб народишко не расслаблялся и думать не смел о практических результатах. А думать надо об организации системной шины и подключении к ней устройств. Когда она появится, весь символьный ввод-вывод образуется массой способов, хоть в виде чтения из порта ВВ, хоть в виде чтения из памяти, на которую отображен физический канал ввода. Ну или, в особых случаях, в виде подмешивания к АЛУ внешнего порта, тогда команда KEY становится аппаратной. Точно так же, в виде последовательности операций с памятью, образуются и интерпретатор/компилятор.

Автор:  mOleg [ Чт янв 19, 2017 09:27 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

вот, на фасме набрасывал по-быстрому вариант форт-системы с третьим стеком адресов может вам поможет. Там все достаточно просто.
можно еще посмотреть в код СПФ-а, но там посложнее несколько.
Если речь о создании виртуальной машины (выбора метода передачи управления от одного определения к другому и подобное)
посмотрите в статьях перевод или оригинал Портирование Форта
И можно еще посмотреть набросок стандарта, там достаточно схематично все, но имеется ответ на ваши вопросы по крайней мере в разделе 5.2 Базовый обязательный набор примитивов
Был еще очень маленький eForth с минимальным количеством используемых примитивов, за счет чего был быстро портирован на большое количество платформ, можно поискать информацию о нем
ну, и вопросы желательно задавать конкретные, иначе будет слишком много общих ответов 8(

P.S. в разрезе реализации в железе было тоже несколько обсуждений, навскидку это обсуждение, там начинается с 16 команд.

Автор:  Hishnik [ Чт янв 19, 2017 11:02 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

mOleg писал(а):
в разрезе реализации в железе было тоже несколько обсуждений, навскидку это обсуждение, там начинается с 16 команд.

Стесняюсь спросить, а из этого что-то уже в продукции реализовано? Или старая песня "вот Фортом никто в мире не занимается, так что слушайте меня". Напоминает вот это:

https://www.youtube.com/watch?v=_O5btaXgiEk

Автор:  KPG [ Чт янв 19, 2017 14:56 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

Hishnik писал(а):
Стесняюсь спросить, а из этого что-то уже в продукции реализовано?

Личные примеры - приветствуются! :)

Автор:  Hishnik [ Чт янв 19, 2017 15:19 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

KPG писал(а):
Личные примеры - приветствуются!

То есть то, что выше - это не пример системы команд? Или надо в рамках "слабо" выложить весь рабочий код? Так его еще правильно применить нужно, и там не везде тривиальные решения. Проектирование форт-процессора не для copy&paste, а для освоения с нуля применительно к конкретным условиям. Ну вот есть изделия, которые за тысячные тиражи перевалили, но это же не догма, а результат адаптации к конкретной задаче.

Автор:  Ethereal [ Чт янв 19, 2017 16:40 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

Есть Форт-процессор Novix NC4016. Вот если глядя на его систему команд задаться вопросом стоит ли ее делать меньше.

По моему не стоит ибо его система команд компромиссна между сложностью и эффективностью.

Хотя вот, да четыре команды + +c - -c можно заменить тремя +c clr_carry set_carry.
Тогда
+ = clr_carry +c
-c = -1 XOR +c
- = set_carry -1 XOR +c
где borrow = not(carry)

А вопрос о минимальном наборе команд вообще не имеет смысла.
Потому-что процессор можно вообще построить на единственной команде "вычитание и переход если меньше". Тогда опкод можно не кодировать, а кодировать только операнды. Но программа, программа-то ... выйдет что твой BrainFuck.

Автор:  Ethereal [ Чт янв 19, 2017 16:50 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

Jelsay писал(а):
предположим у меня есть возможность реализации простейшего Форт-процессора на иных физических базовых принципах нежели ЭЦВМ..
Покойный создатель этого форума разработал Форт-процессор Equinox на ПЛИС Альтера.
http://winglion.ru/Forth-CPU/
Есть и исходники и пояснения и вообще все-все ...

А другие базовые принципы - это какие ? Оптический процессор ? Где каждый лишний логический вентиль это как серпом по причинному месту ? Лучше конкретизировать, чтобы было ясно чем можно пожертвовать, а чем не стоит.

Автор:  mOleg [ Чт янв 19, 2017 18:02 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

кстати, вот недавно случайно наткнулся The J1 Forth CPU

Автор:  Jelsay [ Чт янв 19, 2017 19:04 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

всем огромное спасибо !!
информации куча - буду копать..

с уважением, Jelsay

Автор:  Hishnik [ Пт янв 20, 2017 02:42 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

А что за физические принципы? А то я видел стек, реализованный в Minecraft :)

Автор:  Ethereal [ Пт янв 20, 2017 18:08 ]
Заголовок сообщения:  Re: минимальная архитиктура и минимальный микрокод

Вспомнил. Еще в СССР повторили процессор Novix NC4016. Результат повторения назвали Дофин-1610. Повторили, в данном слечае не передрали. То есть не было послойного вскрытия. Просто взяли описание системы команд и реализовали в кристалле. Получился процессор той-же системой команд и с другой схемой.

А почему повторяли ? Да потому-что в создании Novix NC4016 принимал участие Чарьлз Мур и от того на его творение нисходит благодать гениальности, если выспренно выразить эту мысль.

Страница 1 из 3 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/