nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 07:51



Reply to topic  [ 45 posts ]  Go to page Previous  1, 2, 3
Об АЛУ К155ИП3 (74181) 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Bill wrote:
Lavr wrote:
откуда есть пошло АЛУ К155ИП3
с его странностями и почему у него такой набор операций.
А что именного странного вы увидели в этом АЛУ?

А разве вот здесь этого не написано в начале топика?


PS. И я, кажется, обращал Ваше внимание уже, что не принято на форуме копировать
весь пост с картинками, если у Вас вопрос всего лишь по одной фразе.

_________________
iLavr


29 Jan 2014 16:01
Profile
Fanat

Joined: 25 Jan 2014 21:54
Posts: 92
Location: 37.113.169.14
Reply with quote
Lavr wrote:
А разве вот здесь этого не написано в начале топика?


PS. И я, кажется, обращал Ваше внимание уже, что не принято на форуме копировать
весь пост с картинками, если у Вас вопрос всего лишь по одной фразе.
То, что в данном АЛУ есть лишние функция, то я бы с этим согласился. Только странного в этом абсолютно не вижу. И вообще, данное АЛУ в свое время достаточно широко использовалось. Более того, многие операции с помощью данного АЛУ реализуются гораздо проще, нежели с использованием уже упоминавшегося выше 530ИК1 (74381/82).
PS: Что касается вашего замечания насчет копирования сообщений, то учту на будущее. Хотя я и так стараюсь удалять из цитата все лишнее. Кстати, на некоторых движка есть удобная опция цитирования только выделенного текста.


29 Jan 2014 21:21
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Bill wrote:
То, что в данном АЛУ есть лишние функция, то я бы с этим согласился. Только странного в этом абсолютно не вижу.

А я разве говорил, что Вы видите странное? Совершенно нигде не говорил! :o
Или Вы отказываете мне в праве считать что-то странным на свой взгляд?

Bill wrote:
И вообще, данное АЛУ в свое время достаточно широко использовалось.

Вот именно. Но в большинстве конструкций самодельщиков я видел, что полностью все функции
этого АЛУ используются не всегда.
Отсюда и возник этот топик, который я выделил из другого топика, где мы обсуждали самодельные
АЛУ
и минимально необходимые наборы их функций.

А вот Mixa64 интуитивно суть дела уловил верно:
Mixa64 wrote:
в сравнении со спартанским набором операций АЛУ 531ИК2

Ну так и я об этом написал, хотя и ни с чем не сравнивал, кроме своего собственного АЛУ на NAND.

_________________
iLavr


30 Jan 2014 08:30
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Реверсинжынирнули 74181 (по-видимому чтобы убедиться, что его внутренее устройство точно соответствует логической схеме из даташита):

http://www.righto.com/2017/01/die-photos-and-reverse-engineering.html

Image

Про странности выбранных функций:
Quote:
Many of the 74181's 32 functions are strange, but there is actually a system behind it. Note that there are exactly 16 possible functions on two (one-bit) binary inputs A and B. (There are 4 lines in the truth table, and two choices for each output, so 2^4 possible functions.) The 74181's 16 logic functions are simply these 16 functions (extended to 4 bits). The 74181's 16 arithmetic functions are A PLUS (one of the 16 possible functions of A and B) PLUS carry-in.


Найдено через http://hackaday.com/2017/01/07/yes-you-can-reverse-engineer-this-74181/

_________________
:dj: https://mastodon.social/@Shaos


07 Jan 2017 17:07
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Реверсинжынирнули 74181 (по-видимому чтобы убедиться, что его внутренее устройство точно соответствует логической схеме из даташита):
...
Про странности выбранных функций:

Ну в общем-то мы так и думали: 74181 реализовано в Нормальной Форме - есть все входные сигналы
и все их инверсии. Подавлять как-то "странные" функции - было бы излишним усложнением АЛУ,
т.к. их можно просто не использовать...

_________________
iLavr


08 Jan 2017 04:43
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Мне тут попался даташит на АЛУ типа '381, '382 - очень понравилось, как внесли ясность
во входную логику:
Attachment:
LS381.gif
LS381.gif [ 69.08 KiB | Viewed 17690 times ]


Также есть вариант более сжатой схемотехники К155ИП3 (74181):
Attachment:
74181Func.shema.gif
74181Func.shema.gif [ 17.25 KiB | Viewed 17690 times ]


Ну и, оказывается, КМОП версии ИП3 имеют дополнительные инверторы по входам и выходам:
Attachment:
74181_IP3.gif
74181_IP3.gif [ 39.83 KiB | Viewed 17690 times ]

_________________
iLavr


15 Nov 2017 05:51
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
А если взять 2 АЛУ ИП3, можно сделать 8-битные вычисления? А если 8 АЛУ ИП3?

_________________
https://t.me/tronix_blog


15 Nov 2017 22:12
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Tronix wrote:
А если взять 2 АЛУ ИП3, можно сделать 8-битные вычисления?
Запросто! Именно так и делали на заре компьютеростроения до появления микропроцессоров.
Эти АЛУ с быстрым параллельным переносом С внутри и их можно также объединять.
Attachment:
K155IP3-3.jpg
K155IP3-3.jpg [ 161.33 KiB | Viewed 17661 times ]

Tronix wrote:
А если 8 АЛУ ИП3?
Да - можно. Эти АЛУ можно объединять также с быстрым параллельным переносом и для этого в комплекте 155 есть спец. микросхема параллельных переносов.
Но если ты "никуда особо не торопишься" :wink: 2 штуки К155ИП3 можно объединить с последовательным переносом Cout-->Cin.
8 АЛУ ИП3 при таком включении дадут 8 задержек распространения Cout-->Cin. Это уже "не есть хорошо". :-?
Микросхему для быстрых параллельных переносов можешь глянуть в Шыло... ну или "в этом нашем Интернете" -
не помню я её по памяти (но уже глянул - К155ИП4 - Блок ускоренного переноса). :wink:

_________________
iLavr


16 Nov 2017 03:31
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Ещё по теме:

http://hackaday.com/2017/11/18/huge-74181-is-a-classic-alu-you-can-actually-understand/


Attachments:
74181-featured.jpg
74181-featured.jpg [ 88.13 KiB | Viewed 17640 times ]

_________________
:dj: https://mastodon.social/@Shaos
19 Nov 2017 03:43
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Кстати, модель 74XX181.MDF, которую я так настырно разыскивал, у меня заработала.
Ну и я на радостях "нарисовал ей костюмчик" поприятней, чем "родной" у Proteusa... :wink:
Attachment:
74181.gif
74181.gif [ 12.32 KiB | Viewed 17635 times ]

И немного подправил обозначния: CI - это CIn - вход переноса (в оригинале - CN);
a CO - это COut - вЫход переноса (в оригинале - CN+4);

Переименование чисто графическое, внутри модели 74XX181.MDF, обозначения те же: CN и CN+4.
И чтобы не перекрывать существующие в Proteus подобные модели АЛУ, я переименовал её в 74HC181A.
Задержки распространения выставлены характерные для серии HC.

Все необходимые файлы - в архиве:
Attachment:
74181.zip [83.83 KiB]
Downloaded 562 times


P.S. В архиве, кстати, и таблица функций АЛУ для проверки модели 74XX181.MDF .
 Операции АЛУ 74181
Attachment:
74HC181_Tabl.gif
74HC181_Tabl.gif [ 41.35 KiB | Viewed 17635 times ]

_________________
iLavr


19 Nov 2017 05:15
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Mixa64 wrote:
...может быть в сравнении со спартанским набором операций АЛУ 531ИК2 ?
Я как-то пропустил отметить, что 531ИК2 это и есть Микросхема 74381.
Lavr wrote:
Мне тут попался даташит на АЛУ типа '381, '382 - очень понравилось, как внесли ясность
во входную логику:

Действительно, набор операций этого АЛУ вполне можно охарактеризовать как спартанский! :lol:
Attachment:
74381tab.gif
74381tab.gif [ 8 KiB | Viewed 17606 times ]

_________________
iLavr


20 Nov 2017 04:31
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Я решил тут потратить немного собственного времени и внести полную ясность и прозрачность
в конструктивные особенности АЛУ К155ИП3 (aka 74181) в финале топика об его "странностях".

И мне лично все стало понятно в конструкции обсуждаемого АЛУ после моего этого поста:
Lavr wrote:
В источнике, на который я ссылаюсь, принципы построения АЛУ К155ИП3 объясняют
следующим образом:

Image

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

Приведенные выше в топике схемы рисовали из принципа придать им компактный вид, поэтому
они сразу пугают своей якобы сложностью и запутанность. Я место на рисунке не экономил,
поэтому он получился довольно крупный, но, на мой взгляд, теперь совершенно понятный.
Хотя придется его скрыть под спойлер...

 Схема электрическая принципиальная ИС АЛУ К155ИП3(74181)
Attachment:
74LS181.gif
74LS181.gif [ 34.82 KiB | Viewed 17573 times ]

Смотрим что получается: во входном каскаде из входных аргументов A и B создается через элементы
И и НЕ набор из 5 логических функций в каждом каскаде
. Эти функции или их комбинации с помощью
управляющих сигналов S0, S1, S2, S3 подают на входы первого каскада сумматора, выполненного
в этом АЛУ по совершенно традиционной схеме:
Attachment:
Full_Adder.gif
Full_Adder.gif [ 3.19 KiB | Viewed 17573 times ]

И вот тут обычно начинается путаница и недопонимание...
По этой схеме в АЛУ выполнен только каскад для сигналов A0 и B0, остальные каскады сделаны
на вид несколько иначе. И дело в том, что в этом АЛУ применен ускоренный параллельный перенос
для всех 4-х сумматоров одновременно. Это и делает схему АЛУ такой громоздкой.

Смысл параллельного переноса в том, что для каждого более старшего разряд сумматора логикой
выбираются ВСЕ комбинациии ВХОДНЫХ сигналов сумматоров младших разрядов, при которых у ЭТОГО
разряда сумматора должен произойти перенос
. Поэтому с каждым разрядом схема параллельного
переноса становится "толще" и "толще" - надо учесть всё большее количество входных сигналов.

В этом плане построение сумматора с параллельным переносом похоже на построение многоразрядного
синхронного счетчика: он реально счетчиком-то в привычном смысле и не является, а представляет
собой параллельный регистр, в каждый триггер которого одновременно записываются комбинации
сигналов предыдуших разядов, а логика отслеживает, когда надо записать
"0", а когда - "1".

Следующий момент, который многих сбивает с толку: АЛУ одинаково хорошо работает как со входными
сигналами, так и с их инверсиями
, поэтому возникает путаница: в одних справочниках приводят
две таблицы для прямых входных сигналов и для их инверсий
, в других считают, что пользователи
знакомы по меньшей мере с законами дуальности де Моргана: это используется в схемотехнике АЛУ.
Если у булевой функции инвертировать входные сигналы и выходные сигналы, то она превращается
в двойственную ей функцию
- И в ИЛИ, ИЛИ в И и т.п.

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

Значит, если вместо A и B мы подадим на входы сумматора /A и /B он вычислит вместо S --- /S.

Теперь о логических функциях АЛУ: следует помнить, что XOR - в общем-то тоже вентиль, который
является управляемым инвертором. И в одном из состояний - он повторитель входного сигнала.
В АЛУ это используют так: специальный сигнал М запрещает подачу на выходной XOR сумматоров
сформированные сигналы параллельных переносов, и выходной XOR просто передает на выход АЛУ
какую-то логическую комбинацию из входного каскад
а. Эту комбинацию определяют управляющие
сигналы S0, S1, S2, S3.

На своей схеме я нарисовал все функции для прямых сигналов A и B. Для инверсных сигналов
/A и /B наборы логических сигналов, согласно законам дуальности де Моргана, будут другие.
Но так и выбрать нужные следует другими комбинациями управляющих сигналов S0, S1, S2, S3

И если никто не забыл основные аксиомы и тождества булевой алгебры-логики, то всё нужное
вырисовывается просто элементарно!

P.S. И я подумал - краткую шпаргалку основных аксиом и тождеств булевой алгебры-логики здесь тоже неплохо приложить: :wink:
 Аксиомы и тождества булевой алгебры-логики
Attachment:
ZakonyAL.gif
ZakonyAL.gif [ 35.53 KiB | Viewed 17566 times ]

_________________
iLavr


23 Nov 2017 06:16
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Ну а теперь - о пользе затраченных мной усилий, чтобы ни у кого не возникла мысль, что я
возомнил тут себя "просветителем славянства"... :mrgreen:

Я тоже нечасто сталкиваюсь с этим АЛУ К155ИП3(74181), а когда сталкиваюсь, всякий раз
снова начинаю елозить пальцем по какой-то схеме... :-?
Теперь я этого делать не буду, поскольку совершенно понятная и правильная схема лежит
здесь, и для меня, и для всех.

И вчера я профит всей затеи явно ощутил: рисовал я схему довольно долго, но потом испил
чашечку кофе и буквально за 2 минуты набросал её в симуляторе.
Attachment:
ALU_3.gif
ALU_3.gif [ 13.77 KiB | Viewed 17565 times ]

А я специально так всё рисовал понятно и удобно, чтобы второй раз никогда более не думать. 8)

И я тут-же проверил эту схему - работает она совершенно идентично модели 74XX181.MDF из
пакета моделирования Proteus.
Attachment:
ALU_2.gif
ALU_2.gif [ 17.31 KiB | Viewed 17565 times ]

А кто захочет в этом убедиться - Do please:
Attachment:
74LS181.zip [74.88 KiB]
Downloaded 520 times

Надеюсь, что теперь вне зависимости от программы-симулятора, вопрос реализации в нём АЛУ
типа К155ИП3(74181) ни у кого не вызовет затруднений... :wink:

_________________
iLavr


23 Nov 2017 07:13
Profile
Novelist

Joined: 03 Oct 2001 17:00
Posts: 29
Location: Питер
Reply with quote
Кстати, в терминале 15ИЭ-00-013 стоят два К531ИП3


05 Jun 2018 04:21
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
Надеюсь, что теперь вне зависимости от программы-симулятора, вопрос реализации в нём АЛУ
типа К155ИП3(74181) ни у кого не вызовет затруднений... :wink:

Неожиданно выяснилось, что не все на нашем форуме правильно понимают, как работает вычитание
в АЛУ типа К155ИП3(74181), несмотря на наличие подробных схем и моделей... :-?

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

Если пошарить поиском, процедуру сложения/вычитания иллюстрируют следующие картинки:
Attachment:
cod.PNG
cod.PNG [ 124.33 KiB | Viewed 6222 times ]
Attachment:
Сумматор-выч.png
Сумматор-выч.png [ 12.5 KiB | Viewed 6222 times ]

Разночтения имеют место в случае как интерпретировать флаг переноса С при вычитании, выполненным
сложением, но аппаратно сама процедура вычитания выполняется всегда сумматором посредством сложения!
И на это никак не влияет каким способом мы получим число в дополнительном коде!

_________________
iLavr


30 Oct 2022 05:45
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 45 posts ]  Go to page Previous  1, 2, 3

Who is online

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