а какой нормальный инструмент ты имеешь ввиду? вижуал-студия? по мне так это тормозилово и глюкаловоhaqreu wrote:Не, ну я тоже бывало printfы вставлял для дебага в гиганстской софтине. Но нормальный инструмент всё же удобнее
Давайте думать над железкой (TRIADOR)
Moderator: haqreu
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
-
Lavr
- Supreme God
- Posts: 16818
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Давайте думать над железкой (TRIADOR)
Соглашусь!Shaos wrote:...вижуал-студия? по мне так это тормозилово и глюкалово
iLavr
-
haqreu
- Maniac
- Posts: 318
- Joined: 10 Mar 2017 05:30
Re: Давайте думать над железкой (TRIADOR)
Ну вас с вашими оффтопами. Вот отчёт о продолбанном воскресном дне. Разочаровался я в изготовлении двухсторонних плат на коленке дома, развёл декодер инструкций в один слой с кучей перемычек. Больше цитрата меди! Протравил,

Залудил,

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

Вот тестирую декодер:

Работает вообще великолепно, но нашёл (пока некритичный) баг в логике сброса компьютера, надо бы добавить ещё один тримкус туда. Итак, как это всё будет выглядеть: АЛУ на вход получит 5 тритов инструкции и 5 разных тактовых сигналов, которые генерируются как раз декодером. Каждый тактовый сигнал будет отвечать за независимый кусок АЛУ: (1) запись в память, (2) копирование, (3) потритовая операция, (4) пропуски команд, (5) безусловные переходы.
Пропуск команд всё же решил сделать на уровне декодера команд (как раз светодиод на декодере - это будем пропускать команду или нет). Делать инкремент в АЛУ расхотелось, инкремент шеститритного числа - это восемнадцать тримуксов... Причём пропускать на уровне декодера команд тоже неплохо, поскольку память-то троичная, то можно трит пропуска декрементировать, таким образом получив по выбору пропуск одной или двух команд. Но это задел на будущее, сейчас в железе будет только пропуск одной команды.

Залудил,

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

Вот тестирую декодер:

Работает вообще великолепно, но нашёл (пока некритичный) баг в логике сброса компьютера, надо бы добавить ещё один тримкус туда. Итак, как это всё будет выглядеть: АЛУ на вход получит 5 тритов инструкции и 5 разных тактовых сигналов, которые генерируются как раз декодером. Каждый тактовый сигнал будет отвечать за независимый кусок АЛУ: (1) запись в память, (2) копирование, (3) потритовая операция, (4) пропуски команд, (5) безусловные переходы.
Пропуск команд всё же решил сделать на уровне декодера команд (как раз светодиод на декодере - это будем пропускать команду или нет). Делать инкремент в АЛУ расхотелось, инкремент шеститритного числа - это восемнадцать тримуксов... Причём пропускать на уровне декодера команд тоже неплохо, поскольку память-то троичная, то можно трит пропуска декрементировать, таким образом получив по выбору пропуск одной или двух команд. Но это задел на будущее, сейчас в железе будет только пропуск одной команды.
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Поддержал текстовые метки, теперь остались сплиттеры...Shaos wrote:Ну вот - накидал ещё компонентов (но со сплиттерами и светодиодами всё ещё беда) и добавил возможность ходить стрелками по полю
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Поддержал все сплиттеры из триадора (западный, восточный и легаси) и заодно подтягивающий резистор 
P.S. Про травлю перенёс в тематический топик
P.S. Про травлю перенёс в тематический топик
You do not have the required permissions to view the files attached to this post.
-
haqreu
- Maniac
- Posts: 318
- Joined: 10 Mar 2017 05:30
Re: Давайте думать над железкой (TRIADOR)
и теперь будешь писать конвертер в ddt?
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Угу - можно также свой редактор нагородить и даже свой "недосимулятр"haqreu wrote:и теперь будешь писать конвертер в ddt?
Вот последний мультик, снятый через скриншоты в DOSBox:

и последний исходник (уже 495 строк) с 16-битным EXE-шником:
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Поддержал вытягивание названия кнопок (правда однобуквенные - см.кнопку сброса C в левом-верхнем углу):
и вытащил дополнительную инфу про ROM (ширину адреса и данных):
В-принципе, вытащенной информации уже достаточно, чтобы сконвертировать логисимовскую схему Триадора в симулятор Триадора на языке Си (с использованием DDT API)
Кстати я туда ещё и распознавание двоичных функций начал закидывать, чтобы в частности помочь (себе) скомпилировать логисимовскую схему NEDONAND в сишный исходник
Исходник на 514 строк и новый EXE-шник в архиве:
и вытащил дополнительную инфу про ROM (ширину адреса и данных):
В-принципе, вытащенной информации уже достаточно, чтобы сконвертировать логисимовскую схему Триадора в симулятор Триадора на языке Си (с использованием DDT API)
Кстати я туда ещё и распознавание двоичных функций начал закидывать, чтобы в частности помочь (себе) скомпилировать логисимовскую схему NEDONAND в сишный исходник
Исходник на 514 строк и новый EXE-шник в архиве:
You do not have the required permissions to view the files attached to this post.
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Последняя версия (672 сишных строки) с полной поддержкой всех блоков, использованных в прожэкте NEDONAND:
http://nedopc.org/nedopc/files/LOGIGRAF.ZIP (129KB)
Тут ещё более разнообразные сплиттеры задействованы - в частности северные и зеркальные:
P.S. Про дальнейшее расширение под универсальный симулятор будет там
http://nedopc.org/nedopc/files/LOGIGRAF.ZIP (129KB)
Тут ещё более разнообразные сплиттеры задействованы - в частности северные и зеркальные:
P.S. Про дальнейшее расширение под универсальный симулятор будет там
You do not have the required permissions to view the files attached to this post.
-
Lavr
- Supreme God
- Posts: 16818
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Давайте думать над железкой (TRIADOR)
Мда... новое - это чаще всего хорошо забытое старое...Shaos wrote:обнаружилась книжка 1975 года, в которой практически слово в слово описано то, что я делаю с троичными мультиплексорамиShaos wrote:Нашёл ещё более раннее описание алгоритма синтеза, переизобретённого мной в DDTc: S.Thelliez "Introduction to the study of ternary switching structures (Information and systems theory, Volume 4)", 1975. Это английский перевод французской книжки 1973 года. Правда автор называет троичный мультиплексор именем "T operator"
А кто такой тогда Абросов А.В. и его Универсальный троичный элемент?
iLavr
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Ну у этого Абросова три независимых линии коммутируются, а классический троичный переключатель с одной стороны - один провод
-
haqreu
- Maniac
- Posts: 318
- Joined: 10 Mar 2017 05:30
Re: Давайте думать над железкой (TRIADOR)
После долгого размышления решил всё же перейти на enableXX, а не на генерацию разных клоков. Меньше заморочек. Придётся перерезать пару дорожек и перепаять пару перемычек на моём декодере.Shaos wrote:P.P.P.P.S. Дорисовал на картинке сигнал "enableNP", который будет приходить из внешнего декодера инструкции, который в простейшем случае может быть построен из троичных мультиплексоров "наоборот":
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Ну значит наши дизайны постепенно сходятся - это хороший знакhaqreu wrote:После долгого размышления решил всё же перейти на enableXX, а не на генерацию разных клоков. Меньше заморочек. Придётся перерезать пару дорожек и перепаять пару перемычек на моём декодере.Shaos wrote:P.P.P.P.S. Дорисовал на картинке сигнал "enableNP", который будет приходить из внешнего декодера инструкции, который в простейшем случае может быть построен из троичных мультиплексоров "наоборот":
-
Lavr
- Supreme God
- Posts: 16818
- Joined: 21 Oct 2009 08:08
- Location: Россия
Re: Давайте думать над железкой (TRIADOR)
А есть на Абросова и его "Универсальный троичный элемент" какая-нибуть серьёзная ссылка?Shaos wrote:Ну у этого Абросова три независимых линии коммутируются, а классический троичный переключатель с одной стороны - один проводLavr wrote:А кто такой тогда Абросов А.В. и его Универсальный троичный элемент?
iLavr
-
Shaos
- Admin
- Posts: 24585
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Давайте думать над железкой (TRIADOR)
Кстати мысль интересная - в таком разрезе оно конечно двойной скип вполне имплементируемhaqreu wrote:Пропуск команд всё же решил сделать на уровне декодера команд (как раз светодиод на декодере - это будем пропускать команду или нет). Делать инкремент в АЛУ расхотелось, инкремент шеститритного числа - это восемнадцать тримуксов... Причём пропускать на уровне декодера команд тоже неплохо, поскольку память-то троичная, то можно трит пропуска декрементировать, таким образом получив по выбору пропуск одной или двух команд. Но это задел на будущее, сейчас в железе будет только пропуск одной команды.

