nedoPC.org

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



Reply to topic  [ 5 posts ] 
Самодельный сумматор 4бит 
Author Message
Writer

Joined: 27 Feb 2014 05:15
Posts: 23
Location: 93.123.183.154
Reply with quote
Post 
Долепил-таки сумматор до 4бит

Нулевой разряд:
любые 2 из трёх сигналов (A0, B0, P) инициируют перенос
P0 = A0*B0 + A0*P + B0*P = NOT(A0*B0 * A0*P * B0*P)
можно пользовать и первую часть и вторую, но в моем случае удобнее на элементах И-НЕ.

Первый разряд:
тут немного сложнее
P1 = A1*B1 + A1*P0 + B1*P0 = (A1*B1) + (A1*A0*B0) + (A1*A0*P) + (A1*B0*P) + (B1*A0*B0) + (B1*A0*P) + (B1*B0*P)
так... получилось 7 блоков, смотрим в справочник микросхем логики...
к сожалению 7ИЛИ или 7И в справочнике не нашлось, придется что-то делать
итак сокращаем:
P1 = A1*B1 + A0*B0*(A1+B1) + A0*P*(A1+B1) + B0*P*(A1+B1)
вышло 4 влока, уже лучше, что-то вроде 4ХХХХ мне в справочнике попадалось,
ВОТ ЖЕЖ! с элементами ИЛИ вообще прямо беда, но зато есть И-НЕ, значит переделываем дальше
P1 = NOT(A1*B1 * A0*B0*(A1+B1) * A0*P*(A1+B1) * B0*P*(A1+B1))
вышло 4И-НЕ, жаль не получилось уложиться в 2 слоя элементов, а значит следующий разряд будет считаться немного дольше, но и так тоже неплохо

Второй разряд:
P2=A2*B2 + A2*P1 + B2*P1 = A2*B2 + A2*A1*B1 + A2*A1*A0*P + A2*A1*B0*P + A2*A1*A0*B0 + A2*B1*A0*P + A2*B1*B0*P + A2*B1*A0*B0 + B2*A1*B1 + B2*A1*A0*P + B2*A1*B0*P + B2*A1*A0*B0 + B2*B1*A0*P + B2*B1*B0*P + B2*B1*A0*B0
ох-ох-ох! так... что у нас есть в справочнике ближайшее? опа! ЛА2 (8И-НЕ) попробуем
P2 = <A2*B2> + <A1*B1*(A2+B2)> + <A1*A0*P*(A2+B2)> + <A1*B0*P*(A2+B2)> + <A1*A0*B0*(A2+B2)> + <B1*A0*P*(A2+B2)> + <B1*B0*P*(A2+B2)> + <B1*A0*B0*(A2+B2)>
о чудо! получаем точно 8 блоков, значит надо их переделывать под 8И-не
P2 = NOT((A2*B2) * (A1*B1*(A2+B2)) * (A1*A0*P*(A2+B2)) * (A1*B0*P*(A2+B2)) * (A1*A0*B0*(A2+B2)) * (B1*A0*P*(A2+B2)) * (B1*B0*P*(A2+B2)) * (B1*A0*B0*(A2+B2))) =
= NOT((A2*B2) * (A1*B1+(A2+B2)) * (A1*A0*P+(A2+B2)) * (A1*B0*P+(A2+B2)) * (A1*A0*B0+(A2+B2)) * (B1*A0*P+(A2+B2)) * (B1*B0*P+(A2+B2)) * (B1*A0*B0+(A2+B2)))

ну вот, то что надо, 2И-НЕ, 2ИЛИ, 3И-НЕ и 8И-НЕ.

Третий разряд:
он же Свых ничего делать не буду, пусть выходит одновременно с выходом S3

Люди проверьте пожалуйста моё Р2, если не лень, что-то я сам запутался пока копался в этом.

В итоге получился почти полностью параллельный 4х разрядный сумматор, на который можно навешивать остальное АЛУ
добавив совсем немного можно кроме SUM получить ещё AND, OR, XOR, SUB, CMP

Собираюсь взять его за базовый для своего проекта, если, конечно, не вскроется что-либо новенькое.

вот он разложенный по блокам:
Image

а вот он же, но только без дублирующихся элементов:
Image

И таки скажите как процессор определяет когда пора снимать результат с АЛУ, т.е по какому принципу АЛУ выдает сигнал "выполнено"

PS жду комментариев картинок, не накосячил ли

PSS Дайте пожалуйста линк на схему какого-нибудь проца (580, z80, i386, Cortex... какой есть) на предмет подсмотреть идей.


01 Mar 2014 06:49
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Mogrif wrote:
И таки скажите как процессор определяет когда пора снимать результат с АЛУ, т.е по какому принципу АЛУ выдает сигнал "выполнено"

Никак не определяет... берется наихудшее время задержки схемы АЛУ.

Mogrif wrote:
Дайте пожалуйста линк на схему какого-нибудь проца (580, z80, i386, Cortex... какой есть) на предмет подсмотреть идей.

Поищешь сам хотя бы на этом форуме? А то так некогда для тебя искать... :(

А схем различных и на самОм этом форуме достаточно много.

_________________
iLavr


01 Mar 2014 13:37
Profile
Fanat

Joined: 25 Jan 2014 21:54
Posts: 92
Location: 37.113.169.14
Reply with quote
Post 
Mogrif wrote:
PSS Дайте пожалуйста линк на схему какого-нибудь проца (580, z80, i386, Cortex... какой есть) на предмет подсмотреть идей.

Для начала можно здесь посмотреть: http://cpuville.com/index.htm


01 Mar 2014 21:14
Profile
Writer

Joined: 27 Feb 2014 05:15
Posts: 23
Location: 93.123.183.154
Reply with quote
Post 
пасиба за линки,

скажите ещё, какая цифровая элементная база была доступна на рубеже 70х годов (68-73) кроме диодов Д2 :) и ручной сборки диодной логики


07 Mar 2014 04:13
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Первые ТТЛ ИС живьём появились как раз в 1968-м году (133 серию), а серийная аппаратура
на ТТЛ появилась примерно в 1969-70-м.

_________________
iLavr


07 Mar 2014 11:01
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 5 posts ] 

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.