Форум программистов, компьютерный форум, киберфорум
Hrethgir
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  

Логическое сокращение и без того короткого полного сумматора. Естественное окончание работ над ним.

Запись от Hrethgir размещена 05.12.2024 в 21:16
Показов 2491 Комментарии 2

Как мной писалось ранее в записи удалённой

Не по теме:

, и был оставлен скрин в неудалённой записи сложного сумматора (которого нет чудным образом). Восстанавливать не стану скрин, этот с этой старой записи, которая почему-то теперь без скрина. Все файлы анимаций имеют в свойствах дату создания. Их мог выложить тут, но достаточно того, что все они у меня есть на компьютере. Но финальная - это уже сокращённый двухлинейный сумматор. Сначала его
.

Писал ранее, но вероятно удалил, что в принципе значения не имеет какой вход слагаемого, а какой переноса. Ну и логичным было-бы убрать один XOR, так как он просто повторяет другой полностью.
Убрать вот так

.





Предудущий, двухлинейный тут https://www.cyberforum.ru/blog... g8718.html и тут
https://www.cyberforum.ru/blog... g8728.html.
Делаю всё после работы, на работе не вариант думать о чём-то. Поэтому так - ни у кого ни чьих идей не брал.

Сами понимаете, что вот такая вот помощь

https://habr.com/ru/articles/8... t_27630546
1) Любую декомпозицию можно записать как булеву формулу, потом раскрыть скобки, получить ДНФ и эту ДНФ минимизировать. Я это сделал. Для выхода суммы в Вашей схеме после минимизации НЕ получилось ожидаемое XOR3. Проделайте всё то же самое сами, может быть у Вас получится. Аргумент о том, что только симулятору можно доверять я не принимаю. Доверять можно и нужно уравнениям. Симулятор нужен для того чтобы проверить динамические процессы. Устанавливать его я не собираюсь, он мне не нужен.

2) FPGA состоит из логических блоков, а каждый блок состоит из LUT, схемы переноса (XOR2 + MUX 2:1), триггеров (защёлок) и настраиваемых связей. Таким образом, инвертора, как отдельного элемента в блоке нет. Чтобы его реализовать нужно использовать LUT целиком. Именно поэтому мне не понятно что Вы хотите сказать схемой из Википедии, где используются AND2 и инверторы. Эта схема предназначена для того, чтобы продемонстрировать функциональную полноту базиза и больше не для чего. Чтобы экономить LUT, а значит площадь, нужно делать декомпозицию во многовходовые элементы (4 или 6 входов, в зависимости от конкретной FPGA). Чтобы реализовать конкретный элемент на конкретной LUT ( по координатам) нужно использовать instantiation. Это самый низкий уровень программирования. Относится ли он к структурному стилю Verilog или нет - не важно, а важно то, что это точная настройка. Про instantiation я уже писал и даже привел конкретный пример для Gowin. Вы не обратили на это внимания.
, про что-то там о блоках и XOR3 - вообще залипуха для замыливания глаз. Ну может человек конечно не понимает просто каких-то чисто технических вопросов в низкоуровневом программировании, и что-то пишет там о уравнениях и блоках. Странно что он не видел двух одинаковых частей этих уравнений (раз уж он так умеет их видеть), зато он возложил задачу оптимизации на машину и получил XOR3, когда и так ясно что оно вообще не нужно и только путаться под ногами будет.
Я изначально знал что любые входы можно менять местами хоть как. Ну да - в спешке и на радостях я не обратил внимания на повтор элемента XOR, но это вообще ещё из-за того, что мне хотелось параллелизм показать даже на таком примитивном уровне, хоть я и не говjрил этого.
Ну в общем так. Предшевственников прилепляю, так как скрин один куда-то пропал из самой старой записи по сумматорам.
Хотя хватит и одного, но у меня там их куча целая, просто не нужны они вовсе, кроме как постепенного шага к конечной цели, что тут.


Буду-ли я пытаться создать на его базе триггер? Буду. Но только после окончания работы на своим тулом - программы для работы с схемами. Как по мне - наиболее оптимально работать с чем-то между визуальным представлением и между уравнений и в то-же время таблицами, где-то там, и потому буду делать свой тул. Те уравнения которые традиционны - ставлю под сомнение, они может и правльны, но для работы не удобны и требуют адаптации. А так конечно я знаю математические трюки - помню ещё со школы из физикоматематического класса, но представление меня немного не устраивало, а так конечно много интересных вещей.

Ах да - мои прототипы, чуть было не забыл.
.
Ну и конечно на компьютере их намного больше, и есть там огромные и ужасные с кучей электронных (транзисторных) ключей, но это того стоило, как показал финальный результат.
Миниатюры
Нажмите на изображение для увеличения
Название: Peek 2024-12-05 20-54.gif
Просмотров: 484
Размер:	80.9 Кб
ID:	9064   Нажмите на изображение для увеличения
Название: Peek 2024-11-17 16-45.gif
Просмотров: 581
Размер:	151.8 Кб
ID:	9065  
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 2
Комментарии
  1. Старый комментарий
    Дальнейший процесс создания асинхронного процессора, без сопровождения документации, даже для одного человека - стал невозможным.
    Слишком много мелких шажков приходится делать, чтобы держать каждый в уме. Дока не большая и времени много не отнимет, но факт - мне приходится это сохранять...а это уже проблема, потому как всё приходится делать самому и своё, а гарантии защиты информации и права - нет. И тогда вариантом становится - успевать делать шаг или шажок за выходной день, и выкладывать каждый отдельный результат.
    Запись от Hrethgir размещена 08.12.2024 в 11:00 Hrethgir на форуме
  2. Старый комментарий
    И в принципе, это вполне возможно, так как преимущественно каждый шажок - никем не деланный, даже если искать в сети. Так например за пол-часа есть результат для публикации, но сначала нужно проверить на FPGA работоспособность одной схемы и правильность вывода, который будет проверяться её работоспособностью. Материала нету в книгах, а есть задача и есть решение. А вопрос - ресурсы платы. Реализовать можно по разному, просто если схема окажется рабочей - не будет смысла добавлять лишние элементы. А если не рабочая - то нужно рассмотреть один аспект, и объяснить функцию этих не лишних элементов и хитрость их применения (можно сделать по хитрому - оглядывая глобальную задачу, а можно узко - туповато и с лишними элементами).
    Запись от Hrethgir размещена 08.12.2024 в 11:17 Hrethgir на форуме
 
Новые блоги и статьи
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru