nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 28 May 2020 10:03



Reply to topic  [ 87 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next
Троичные функции 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
haqreu wrote:
Зачем sub, если есть add и neg?
Чтобы не в 2 такта делать вычитание, а в 1 :)

Ну вот... я для простоты sub выкинул, а ты его снова закинул.... 8)

_________________
iLavr


18 Nov 2017 09:40
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18585
Location: Silicon Valley
Reply with quote
Lavr wrote:
Shaos wrote:
haqreu wrote:
Зачем sub, если есть add и neg?
Чтобы не в 2 такта делать вычитание, а в 1 :)

Ну вот... я для простоты sub выкинул, а ты его снова закинул.... 8)

если совсем минимальный набор делать, то можно и выкинуть (но тогда и сложение без переноса тоже надо выкинуть, как в 6502, и инкремент/декремент ; )

_________________
:eugeek: https://twitter.com/Shaos1973


18 Nov 2017 09:45
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
если совсем минимальный набор делать, то можно и выкинуть (но тогда и сложение без переноса тоже надо выкинуть, как в 6502, и инкремент/декремент ; )

Давайте думать про минимальный. Чтобы минимально в троичных железках получилось.
Кроме дорогих тримуксов у нас ничего реально нет - исходим из этого.
Но есть "неспортивная" двоичная память, и её - много.

_________________
iLavr


18 Nov 2017 09:49
Profile
Online
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 570
Location: Spb
Reply with quote
petrenko wrote:
Регистров для начала хватит трёх
R№(-1) синоним SP(pr(ogram) )
R№(0) синоним PC
R№(+1) синоним F(lags)(==PSW_L(owest_3_trits)

А нужны ли они программно-доступные? По моему ИМХО все "служебные" можно спрятать, а программисту предоставить только регистры с данными и косвенное управление служебными. К тому-же PC и SP предусматриваются 6-ти тритными (а может, в перспективе и 9-ти) а Flags - 2-х тритным.


18 Nov 2017 09:51
Profile
Online
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 570
Location: Spb
Reply with quote
На самом деле, я систему команд предполагал бы 6-ти тритной (на будущее). Можно же будет впоследствии расширить на 1 трит "вверх" существующую сейчас ПЗУ?


18 Nov 2017 09:59
Profile
Doomed

Joined: 10 Mar 2012 17:21
Posts: 601
Location: РФ
Reply with quote
AlexanderZh wrote:
.. А нужны ли они программно-доступные? ..
Обязательно !
Но ес.с.но лучше некоторые только в пультовом режиме.

Насчёт флагов : N(egativ)/Z(ero)/P(ozitiv) , I(nfinit(деление на нуль)/N(orm)/O(verflow) , C(arry)==(-1)/(0)/(+1) - это уже три трита, а ведь неплохо бы потом добавить ещё всяких полезных флажков.

Вообще регистры надо предусмотреть масштабируемые - разширяемые.
А 6 тритов для PC и SP заведомо слишком мало - они должны быть как минимум 9-тритовые с самого начала, чтоб потом "головняк" с преемственностью & совместимостью не случился.


18 Nov 2017 10:22
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
AlexanderZh wrote:
ИМХО все "служебные" можно спрятать, а программисту предоставить только регистры с данными и косвенное управление служебными.

Соглашусь с этой мыслью. Мы сейчас хотим минимально-удобную троичную железяку сконструировать.

Поэтому, как я вижу, план такой:
Пока haqreu паяет свои "сотни три тримуксов" (бюджет у него такой и процесс небыстрый),
мы разрабатываем железку исходя из минимума троичного железа ("сотни три тримуксов").
Собираем её в эмуляторе и гоняем на ней придуманную нами систему команд.

Если видим, что-то неудачно получилось, "допиливаем" этот момент "в железе".

В итоге, когда будут готовы "сотни три тримуксов", из них уже можно будет сразу делать что-то готовое,
пусть простое, но заведомо работоспособное и небестолковое...

_________________
iLavr


18 Nov 2017 10:46
Profile
Maniac

Joined: 10 Mar 2017 06:30
Posts: 321
Reply with quote
Триста тримуксов давно готовы :ebiggrin:


18 Nov 2017 10:47
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
haqreu wrote:
Триста тримуксов давно готовы :ebiggrin:

Ну тогда подключайся в обсуждение. Я думал - ты занят тримуксами... :wink:

Кстати, а за сколько чистого времени ты их всё же спаял?

_________________
iLavr


18 Nov 2017 10:49
Profile
Online
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 570
Location: Spb
Reply with quote
petrenko wrote:
они должны быть как минимум 9-тритовые с самого начала

Соглашусь. Или очень просто расширяемые вверх, с сохранением программной совместимости. Наверняка вполне достижимо, если все программы будут полностью перемещаемые в памяти. т.е. все джампы делать по относительному значению. Команду "дальнего" джампа предусмотреть, но не реализовывать на данном этапе.


18 Nov 2017 11:11
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18585
Location: Silicon Valley
Reply with quote
по смещению это надо сумматор в программный щётчик забубенивать - уже не будет лёгкости ;)

_________________
:eugeek: https://twitter.com/Shaos1973


18 Nov 2017 11:12
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
по смещению это надо сумматор в программный щётчик забубенивать

Не... к чорту второй сумматор... он и один очень "толстый", как жизнь показывает... :-?
Обойдемся без смещений пока.

_________________
iLavr


18 Nov 2017 12:05
Profile
Online
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 570
Location: Spb
Reply with quote
Shaos wrote:
в программный щётчик забубенивать - уже не будет лёгкости
Lavr wrote:
Не... к чорту второй сумматор...
Т.е. джампы будут по абсолютному адресу? Жалко, конечно. Но жалко у пчёлки.


18 Nov 2017 12:28
Profile
Doomed

Joined: 10 Mar 2012 17:21
Posts: 601
Location: РФ
Reply with quote
Shaos wrote:
по смещению это надо сумматор в программный счётчик забубенивать ..
Не надо.
При наличии команды { условного пропуска следующей команды } , "GABELT" будет просто синонимом
R(0) <- ADDIEREN ( T(emp) , R(0) )

Ибо - учите системы команд PDP и VAX ! :kruto: :mrgreen:


18 Nov 2017 12:29
Profile
Maniac

Joined: 10 Mar 2017 06:30
Posts: 321
Reply with quote
Lavr wrote:
Кстати, а за сколько чистого времени ты их всё же спаял?


15 минут на тримукс, включая всё: разрезать, намазать, поставить микрухи, запаять, отмыть, протестировать.


18 Nov 2017 13:02
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 87 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6  Next

Who is online

Users browsing this forum: No registered users and 5 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.