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

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

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

Как мной писалось ранее в записи удалённой[OFF], и был оставлен скрин в неудалённой записи сложного сумматора (которого нет чудным образом). Восстанавливать не стану скрин, этот с этой старой записи, которая почему-то теперь без скрина. Все файлы анимаций имеют в свойствах дату создания. Их мог выложить тут, но достаточно того, что все они у меня есть на компьютере. Но финальная - это уже сокращённый двухлинейный сумматор. Сначала его
. [/OFF]Писал ранее, но вероятно удалил, что в принципе значения не имеет какой вход слагаемого, а какой переноса. Ну и логичным было-бы убрать один XOR, так как он просто повторяет другой полностью.
Убрать вот так
[IMG]https://www.cyberforum.ru/blog_attachment.php?attachmentid=9064&stc=1&d=1733421849[/IMG]
.





Предудущий, двухлинейный тут [URL="https://www.cyberforum.ru/blogs/223907/blog8718.html"]https://www.cyberforum.ru/blogs/223907/blog8718.html[/URL] и тут
[url]https://www.cyberforum.ru/blogs/223907/blog8728.html[/url].
Делаю всё после работы, на работе не вариант думать о чём-то. Поэтому так - ни у кого ни чьих идей не брал.

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

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

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

, про что-то там о блоках и XOR3 - вообще залипуха для замыливания глаз. Ну может человек конечно не понимает просто каких-то чисто технических вопросов в низкоуровневом программировании, и что-то пишет там о уравнениях и блоках. Странно что он не видел двух одинаковых частей этих уравнений (раз уж он так умеет их видеть), зато он возложил задачу оптимизации на машину и получил XOR3, когда и так ясно что оно вообще не нужно и только путаться под ногами будет.
Я изначально знал что любые входы можно менять местами хоть как. Ну да - в спешке и на радостях я не обратил внимания на повтор элемента XOR, но это вообще ещё из-за того, что мне хотелось параллелизм показать даже на таком примитивном уровне, хоть я и не говjрил этого.
Ну в общем так. Предшевственников прилепляю, так как скрин один куда-то пропал из самой старой записи по сумматорам.
Хотя хватит и одного, но у меня там их куча целая, просто не нужны они вовсе, кроме как постепенного шага к конечной цели, что тут.


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

Ах да - мои прототипы, чуть было не забыл.
[IMG]https://www.cyberforum.ru/blog_attachment.php?attachmentid=9065&stc=1&d=1733423127[/IMG].
Ну и конечно на компьютере их намного больше, и есть там огромные и ужасные с кучей электронных (транзисторных) ключей, но это того стоило, как показал финальный результат.
Миниатюры
Нажмите на изображение для увеличения
Название: Peek 2024-12-05 20-54.gif
Просмотров: 461
Размер:	80.9 Кб
ID:	9064   Нажмите на изображение для увеличения
Название: Peek 2024-11-17 16-45.gif
Просмотров: 553
Размер:	151.8 Кб
ID:	9065  
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 2
Комментарии
  1. Старый комментарий
    Дальнейший процесс создания асинхронного процессора, без сопровождения документации, даже для одного человека - стал невозможным.
    Слишком много мелких шажков приходится делать, чтобы держать каждый в уме. Дока не большая и времени много не отнимет, но факт - мне приходится это сохранять...а это уже проблема, потому как всё приходится делать самому и своё, а гарантии защиты информации и права - нет. И тогда вариантом становится - успевать делать шаг или шажок за выходной день, и выкладывать каждый отдельный результат.
    Запись от Hrethgir размещена 08.12.2024 в 11:00 Hrethgir вне форума
  2. Старый комментарий
    И в принципе, это вполне возможно, так как преимущественно каждый шажок - никем не деланный, даже если искать в сети. Так например за пол-часа есть результат для публикации, но сначала нужно проверить на FPGA работоспособность одной схемы и правильность вывода, который будет проверяться её работоспособностью. Материала нету в книгах, а есть задача и есть решение. А вопрос - ресурсы платы. Реализовать можно по разному, просто если схема окажется рабочей - не будет смысла добавлять лишние элементы. А если не рабочая - то нужно рассмотреть один аспект, и объяснить функцию этих не лишних элементов и хитрость их применения (можно сделать по хитрому - оглядывая глобальную задачу, а можно узко - туповато и с лишними элементами).
    Запись от Hrethgir размещена 08.12.2024 в 11:17 Hrethgir вне форума
 
Новые блоги и статьи
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru