Минималистичный Форт компьютер на TTL логике. (CPU) c Forth

Обсуждаем цифровые устройства...
Ответить
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 622
Зарегистрирован: Чт мар 05, 2009 05:31:16
Откуда: г. Кемерово

Сообщение Alexey1969 »

Сурово :)
Контактная информация:
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 309
Зарегистрирован: Сб фев 18, 2023 21:51:01
Откуда: Санкт-Петербург

Сообщение Eats »

Суровые челябинские мужики выполняют микрокод без АЛУ, голыми руками, причём побитно и стирают УФ-ПЗУ силой своего взгляда. :-)
Всего доброго.
Евгений.
Друг Кота
Аватара пользователя
Сообщения: 6673
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

ну суровы всетаки немецкие мужики!, Бременские Инженеры. ... и алу таки есть, просто необычно простое 8) . а вот насчет минималистичности конечно звучит как вызов :? , и когданибудь на пенсии, возможно, я его таки приму :tea: :)
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Хм... на пенсии принять-то можно, но вот мозг уже слабеет, а потом и дальше будет. Конечно, это индивидуально, но к сожалению, нередко.

Добавлено after 32 seconds:
Re: Минималистичный Форт компьютер на TTL логике. (CPU) c Forth
Но штука крутая.
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 6673
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

ниче, напомощщ слабеющему интеллекту прийдет набирающий силу gpt -v55 8) :)))
Реклама
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4394514#p4394514"], и когданибудь на пенсии, возможно, я его таки приму :tea: :)[/uquote]
Зачем же ждать пенсии в реализации для себя подобного "ништяка"? (там могут статься и другие более насушние
"интересы")

P.S. По поводу АЛУ, возможно, полагаю его сделать и таблично в микросхеме I2C памяти или добавить аппаратно.
И, да, по сравнению с Gigatron TTL компьютером (~40 корпусов TTL микросхем) здесь их гораздо меньше (в 2-а раза)
Может можно и как то сравнить возможности Gigatron и сабжа из обсуждаемой темы.
Интересно, что в Gigatron системный язык GTL сделали с некоторым уклоном к Форт. :)
Форум проекта Gigatron TTL компьютера

Добавлено after 6 hours 27 seconds:
Re: Минималистичный Форт компьютер на TTL логике. (CPU) c Forth

Ещё вариант минималистического "Форт" процессора в TTL TOM1 (14 цифровых TTL компонент)
Модель процессора отлажена в программе Digital
(в опциях программы есть возможность экспорта в VHDL, VERILOG)

Код: Выделить всё

Opcodes

This is a non-exhaustive list of opcodes supported by the TOM-1:

    halt
    no_op
    push_literal — pushes a 16-bit operand to the top of stack
    branch0 — if the top of stack is equal to 0, jump to a 16-bit address (operand)
    add — pops values A and B from the data stack, pushes the value A + B to the top of stack
    nand — pops values A and B from the data stack, pushes the value A nand B to the top of stack
    load — pops an address from the stack, pushes the value of that address in RAM to the top of stack
    store — pops an address, then a value, from the stack and sets that address in RAM to the value
    return_push — pushes the value at the top of the stack onto the return stack
    return_pop — pops a value off the return stack and pushes it to the top of stack
    dup — duplicates the value a the top of stack
    drop — drops the top of the stack
    in — read a value from the 8-bit I/O port
    out — output a value on the 8-bit I/O port

I/O Port

The I/O port on the TOM-1 is a bidirectional transceiver that can read and write to any address in RAM. This port has the following pins:

    Power
    GND
    8 bits of data (low byte of 2-byte value in RAM)
    CLK
    Data Valid
По дизайну и системе команд: nybbleForth (Verilog)

Код: Выделить всё

            Code     Name          Size     Operation

            0         noop         4         No operation
            1         @            4         Load word from memory                                             
            2         call         4+16      Push P to return stack, fetch a word and jump                                               
            3         exit         4         Pop P from return stack
            4         (literal)    4+16      Fetch a word and push to stack
            7         r>           4         Pop return stack and push to data stack
            8         +            4         Add top two items on data stack                                           
            9         nand         4          Inverted conjunction of the two top items on data stack
            10        >r           4         Pop data stack and push to return stack
            11        0branch      4+8        Fetch a byte and add to P if popped data stack is zero
            12        !            4         Store word into memory
@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Друг Кота
Сообщения: 9300
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

Замечательно))
осталось добавить интернет... на TTL логике.
RX.jpg
(128.76 КБ) 97 скачиваний
компьютер без интернета - не компьютер))
:tea:
Друг Кота
Аватара пользователя
Сообщения: 6332
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Сообщение Jack_A »

[uquote="Martian",url="/forum/viewtopic.php?p=4394516#p4394516"]Хм... на пенсии принять-то можно[/uquote]
"Сегодня в Кремле Борис Николаевич принял и после этого работал с документами" :)) :))

---------
С 1-м Апреля, коллеги ! :))
Изображение
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

[uquote="roman.com",url="/forum/viewtopic.php?p=4394622#p4394622"]Замечательно))
осталось добавить интернет... на TTL логике. :tea:[/uquote]
Процессор Forth J1 в FPGA плате M02mini
\ Процессор языка Forth в FPGA - статья на marsohod.ru
\ Простейший интерпретатор Forth в плате M02mini

P.S. В рамхах системы команд этого процессора для него реализовали и TCP подключение. :)
Firmware IP камеры wge100
@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 309
Зарегистрирован: Сб фев 18, 2023 21:51:01
Откуда: Санкт-Петербург

Сообщение Eats »

[uquote="KPG",url="/forum/viewtopic.php?p=4394140#p4394140"]My4th[/uquote]Тут меня выше поправили, что эту конструкцию сочинили не "суровые челябинские мужики", а бременские. Вы имеете какое-либо отношение к Денису Кушелю? Я-то поначалу подумал, что Вы и есть этот Денис, поскольку в исходном сообщении нигде не было указано противного.

[uquote="Jack_A",url="/forum/viewtopic.php?p=4394631#p4394631"]С 1-м Апреля, коллеги ! :))[/uquote] Хм, а вы не задумывались, что 1 января родились те, чьи родители хорошо пошутили 1 апреля?
Всего доброго.
Евгений.
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

[uquote="Eats",url="/forum/viewtopic.php?p=4394674#p4394674"][ Вы имеете какое-либо отношение к Денису Кушелю? Я-то поначалу подумал, что Вы и есть этот Денис,[/uquote]
Нет, даже не знаю о ком Вы говорите.

[uquote="Eats",url="/forum/viewtopic.php?p=4394674#p4394674"][uquote="Jack_A",url="/forum/viewtopic.php?p=4394631#p4394631"]С 1-м Апреля, коллеги ! :))[/uquote] Хм, а вы не задумывались, что 1 января родились те, чьи родители хорошо пошутили 1 апреля?[/uquote]
Пошутив на 1-ое апреля результат можно ожидать примерно через восемь месяцев, а не год. :)
@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 309
Зарегистрирован: Сб фев 18, 2023 21:51:01
Откуда: Санкт-Петербург

Сообщение Eats »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4394514#p4394514"]ну суровы всетаки немецкие мужики!, Бременские Инженеры.[/uquote]Да, верно. Как выяснилось, топикстартер даже не дочитал до конца ту ссылку, которую привёл в своём сообщении.
... и алу таки есть, просто необычно простое
Так я ж и говорю: побитно! :-)
Всего доброго.
Евгений.
Друг Кота
Сообщения: 9300
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

не не не... никаких ПЛИС.
только на TTL логике.))
RX_идеальный)).jpg
(109.25 КБ) 83 скачивания
TX.jpg
(141.04 КБ) 85 скачиваний
:tea:
в крайнем случае можно... на транзисторах))
на транзисторах)).jpg
(130.35 КБ) 102 скачивания
для настоящих Челябинских мужиков))
:)
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

Некоторое более заинтересованное обсуждение сабжа на площадке форума nedopc.org
в топике Форт-компьютеры на рассыпухе
@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Друг Кота
Аватара пользователя
Сообщения: 6673
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

а имхо там только 1 вменяемый пост по теме:

forthuser wrote 01 Apr 2023 00:54 http://www.nedopc.org/forum/viewtopic.p ... 98#p169476
Ещё вариант минималистического "Форт" процессора в TTL TOM1 (14 цифровых TTL компонент) https://hackaday.io/project/171965-ttl- ... dule-tom-1
Модель процессора отлажена в программе Digital https://github.com/hneemann/Digital
(в опциях программы есть возможность экспорта в VHDL, VERILOG)
___________
Opcodes

This is a non-exhaustive list of opcodes supported by the TOM-1:

halt
no_op
push_literal — pushes a 16-bit operand to the top of stack
branch0 — if the top of stack is equal to 0, jump to a 16-bit address (operand)
add — pops values A and B from the data stack, pushes the value A + B to the top of stack
nand — pops values A and B from the data stack, pushes the value A nand B to the top of stack
load — pops an address from the stack, pushes the value of that address in RAM to the top of stack
store — pops an address, then a value, from the stack and sets that address in RAM to the value
return_push — pushes the value at the top of the stack onto the return stack
return_pop — pops a value off the return stack and pushes it to the top of stack
dup — duplicates the value a the top of stack
drop — drops the top of the stack
in — read a value from the 8-bit I/O port
out — output a value on the 8-bit I/O port

I/O Port

The I/O port on the TOM-1 is a bidirectional transceiver that can read and write to any address in RAM. This port has the following pins:

Power
GND
8 bits of data (low byte of 2-byte value in RAM)
CLK
Data Valid
___________
По дизайну и системе команд: nybbleForth (Verilog) https://github.com/larsbrinkhoff/nybbleForth
___________
Code Name Size Operation
0 noop 4 No operation
1 @ 4 Load word from memory
2 call 4+16 Push P to return stack, fetch a word and jump
3 exit 4 Pop P from return stack
4 (literal) 4+16 Fetch a word and push to stack
7 r> 4 Pop return stack and push to data stack
8 + 4 Add top two items on data stack
9 nand 4 Inverted conjunction of the two top items on data stack
10 >r 4 Pop data stack and push to return stack
11 0branch 4+8 Fetch a byte and add to P if popped data stack is zero
12 ! 4 Store word into memory
___________
зы :dont_know: какойто глючек кота с многострочными квотами code, пришлось их отчеркивать и перечитывать на предмет >!< :?
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4395148#p4395148"]а имхо там только 1 вменяемый пост по теме:[/uquote]
:) Форт и Форт процессоры могут быть реализованы в разных вариантах.
Даже есть и Российские и Белорусские K1894 и K1891 (вроде)

P.S. Добавил автопереводом описание сабжа со страницы автора и на форуме сайта nedopc.org и на русскоязычном форуме пользователей Форт языка http://fforum.winglion.ru (сообщение в "Интересных ссылках")

Закинул ещё тему обсуждения сабжа на на форум сайта electronix.ru и увидел один вопрос от читателя в топике не относящийся к сабжу, но к Форт. :)

Также немного интереса к сабжу на на форуме сайта easyelectronics.ru что, в общем то, неудивительно и предсказуемо.
Когда то там знатный "срач" был в топике по amForth для AVR на этом форуме.
@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Друг Кота
Аватара пользователя
Сообщения: 6673
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

вот наш соотечественник сделал интерпритатор форта в 1232 элементах на fpga i max10.
зы для тех кто далек от задачек решаемых на плис - скажу что там нередко бывает нужна довольно сложная логика которая очень неэффективно решается классическим автоматом и иметь возможность комбинировать автомат и процессор это вполне практическая прикладная задача 8) . короче в таком виде это реально полезная затея :idea: а вовсе не какоето маргинальное хобби! KPG, ещераз спасибо что открыл нам этот любопытный мир прятавшийся от нас :shock: .

Процессор Forth J1 в FPGA плате M02mini
https://habr.com/ru/post/523348/
KPG
Открыл глаза
Сообщения: 68
Зарегистрирован: Пн июн 19, 2017 18:51:54
Откуда: South Ural г. Челябинск

Сообщение KPG »

[uquote="AlexS4",url="/forum/viewtopic.php?p=4395354#p4395354"]вот наш соотечественник сделал интерпритатор форта в 1232 элементах на fpga i max10./[/uquote]
Так этому Форт авторскому процессору J1 примерно 12 -ть лет c появления в разработке Gameduino1
(у меня тоже есть эта плата сделанная Olimex и подключённая для пробы к Genuino 101)
Здесь кто то даже этот проект собирал самостоятельно.
Gameduino: игровой адаптер для микроконтроллеров
(с этого места скачивал полный вариант проекта для сборки под Xilinx ICE 14.1 - 14.7)

А, автор Gameduino1 уже сделал Gameduino 3 Dazzler и J1 Форт там тоже использован (SwapForth)
и на Github много форков этого проекта. :)

P.S. То, что Форт, по незнанию, путают с Фортраном уже у меня не вызывает никаких эмоций. :)
Форт появился в IT пространстве бывшего CCCP на небольшой период в виде изданных о нём книг (переломные 90-е года) и канул в лета.

На местном форуме - только авторский проект установки HLDI для засветки фоторезиста от AlphaCrow использовал Форт для ПО выполняемого для ПК и автор прикладывал исходники своего ПО в теме.

AlexS4 Рад, что до пенсии Форт может не оказаться в забытьё для Вас и оказаться полезным для практического применения.
И, да Форт, как айсберг, воспринимаемый кем то только по видимой части и им невдомёк, что скрыто под толщью "воды" у этого айсберга.

Для меня, возможно, Форт компьютер в TTL исполнении интересен как вариант для сравнения с ZX-Spectrum компьютером в оценке его "потенциала" памятуя о том, что были и отдельные Форт компьютеры как Jupiter ACE, Canon Cat, а кто то до сих пор реализует Форт в рамках Z80 железа, если посмотреть на какие то проекты с Github.

А, кто то и перевёл одну из ретро книг по дизайну Форт процессоров от 1989г.
Author: Philip J. Koopman, Jr. WISC Technologies, Inc., Pittsburgh, PA
Stack Computers: the new wave
, а какие то изданные интересные книги связанные с Форт того времени, так и остались в истории незнакомые русскоязычной аудитории.
@ „Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий.“ Козьма Петрович Прутков
Друг Кота
Аватара пользователя
Сообщения: 6673
Зарегистрирован: Пт сен 10, 2021 15:19:36
Откуда: Протвино

Сообщение AlexS4 »

не, c самим фортом я познакомился оочень давно, так же как и С-- позже, он вызвал у меня исследовательский зуд на несколько недель и пару десятков программок реализации того что меня интересовало тогда, и я даже читал про идею минималистичного форт-процессора еще в прошлом веке и pliс/pga/vhdl тогда уже вовсю применялись/изучались, но вот форт процессор в pga я почемуто незаметил ?) как всегда идея применить одно к другому становится совершенно очевидной только когда ее ктото выскажет.
Ответить

Вернуться в «Цифровая техника»