Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум

TTL и CMOS логика Цифровая схемотехника на логических микросхемах. Счетчики, сдвиговые регистры, простая логика...

 
Опции темы

Собрать АЛУ

Непрочитано 18.10.2015, 13:23  
Alex9797
Почётный гражданин KAZUS.RUN
 
Аватар для Alex9797
 
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,548
Сказал спасибо: 5,035
Сказали Спасибо 10,606 раз(а) в 3,594 сообщении(ях)
Alex9797 на пути к лучшему
По умолчанию Re: Собрать АЛУ

Сообщение от pambaru Посмотреть сообщение
Просто добавляется один нулевой младший разряд.
Куда? В пустоту? У конкретного регистра всего один нулевой разряд. И что, добавить еще один?
Без схемы сдвига все равно не обойтись в операции деления.
Реклама:
Alex9797 вне форума  
Непрочитано 18.10.2015, 13:26  
avp94
Почётный гражданин KAZUS.RUN
 
Аватар для avp94
 
Регистрация: 26.01.2007
Сообщений: 3,116
Сказал спасибо: 61
Сказали Спасибо 1,151 раз(а) в 623 сообщении(ях)
avp94 на пути к лучшему
По умолчанию Re: Собрать АЛУ

Сообщение от pambaru Посмотреть сообщение
Зачем ту схема сдвига? Число C умножается на константу - на 2. Просто добавляется один нулевой младший разряд.
Поделитесь, если не секрет, а как это выглядит на схеме железяки.
avp94 вне форума  
Непрочитано 18.10.2015, 13:38  
pambaru
Почётный гражданин KAZUS.RUN
 
Регистрация: 24.03.2007
Сообщений: 1,398
Сказал спасибо: 85
Сказали Спасибо 678 раз(а) в 396 сообщении(ях)
pambaru на пути к лучшему
По умолчанию Re: Собрать АЛУ

Это выглядит как провод, замкнутый на GND
Схему рисовать влом.
А если, к примеру, на верилоге, то так (просто пример):
PHP код:

//Result=A+B+C+C+D

wire [3:0] A,B,C,D;
wire [4:0] Cx2;
wire [7:0] result;
assign Cx2={C, 1'b0};
assign Result={4'h0, A}+{4'h0, B}+{3'h0, Cx2}+{4'h0, D}; 
P.S. Конечно можно назвать assign Cx2={C, 1'b0}; схемой сдвига.
Но я склоняюсь все же к тому, что схемой сдвига можно назвать тактируемую схему, типа
regC‹={regС[2:0],1'b0};
А здесь все же "жесткое добавление" нуля справа. На схеме выглядит как добавление проводника на GND.

Последний раз редактировалось pambaru; 18.10.2015 в 13:43.
pambaru вне форума  
Непрочитано 18.10.2015, 13:38  
Andrey_AHAHAC
Временная регистрация
 
Аватар для Andrey_AHAHAC
 
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
Andrey_AHAHAC на пути к лучшему
Стрелка Re: Собрать АЛУ

Сообщение от Alex9797 Посмотреть сообщение
Это меняет дело. Тогда можно преподу отнести и ту схему, что в первом посту. А на его вопрос - "что это?", ответить - "Не знаю. Такое решение".
Шутку юмора оценил

Ребят, распишете по пунктам как спроектировать деление, пожалуйста.
Andrey_AHAHAC вне форума  
Непрочитано 18.10.2015, 13:46  
avp94
Почётный гражданин KAZUS.RUN
 
Аватар для avp94
 
Регистрация: 26.01.2007
Сообщений: 3,116
Сказал спасибо: 61
Сказали Спасибо 1,151 раз(а) в 623 сообщении(ях)
avp94 на пути к лучшему
По умолчанию Re: Собрать АЛУ

Сообщение от pambaru Посмотреть сообщение
А если, к примеру, на верилоге, то так (просто пример):
А это не схема , это описание.
avp94 вне форума  
Непрочитано 18.10.2015, 13:57  
pambaru
Почётный гражданин KAZUS.RUN
 
Регистрация: 24.03.2007
Сообщений: 1,398
Сказал спасибо: 85
Сказали Спасибо 678 раз(а) в 396 сообщении(ях)
pambaru на пути к лучшему
По умолчанию Re: Собрать АЛУ

Сообщение от avp94 Посмотреть сообщение
А это не схема , это описание.
Любую цифровую схему можно описать на верилоге.
Ну и обратно, в некоторых случаях, также.
В данном случае, assign Cx2={C, 1'b0}; - в чистом виде схема - соединение проводников.
Суммирование - тут уже идут логические элементы.
pambaru вне форума  
Непрочитано 18.10.2015, 14:13  
avp94
Почётный гражданин KAZUS.RUN
 
Аватар для avp94
 
Регистрация: 26.01.2007
Сообщений: 3,116
Сказал спасибо: 61
Сказали Спасибо 1,151 раз(а) в 623 сообщении(ях)
avp94 на пути к лучшему
По умолчанию Re: Собрать АЛУ

Сообщение от pambaru Посмотреть сообщение
Любую цифровую схему можно описать на верилоге.
ТС надо нарисовать, а описание работы, только на более высоком уровне, дал преподаватель.
avp94 вне форума  
Непрочитано 18.10.2015, 14:17  
pambaru
Почётный гражданин KAZUS.RUN
 
Регистрация: 24.03.2007
Сообщений: 1,398
Сказал спасибо: 85
Сказали Спасибо 678 раз(а) в 396 сообщении(ях)
pambaru на пути к лучшему
По умолчанию Re: Собрать АЛУ

Сообщение от Andrey_AHAHAC Посмотреть сообщение
Ребят, распишете по пунктам как спроектировать деление, пожалуйста.
Простой схемы тут однозначно не получится.
Либо это будет какая-то тактируемая схема, реализующая примерно такой алгоритм:
1. Выставляем делимой и делитель
2. Подаем строб "старт", защелкиваем в регистр R1 делимое, регистр результат Res обнуляем.
3. По каждому такту вычитаем из регистра R1 делитель, до тех пор, пока содержимое R1 не станет меньше делителя, на каждом такте инкрементируя регистр Res.
Как только R1 стал меньше делителя переходим к п.4
4. Выдаем на выход сигнал готовности и регистр Res.
Т.е., получаем конечный автомат, схема будет непростая.

Более простой вариант - прошитое ПЗУ с кол-вом адресных входов равным сумме разрядов делимого и делителя.
Схема в этом случае простейшая асинхронная (без тактирования).
pambaru вне форума  
Сказали "Спасибо" pambaru
Andrey_AHAHAC (18.10.2015)
Непрочитано 18.10.2015, 14:27  
Andrey_AHAHAC
Временная регистрация
 
Аватар для Andrey_AHAHAC
 
Регистрация: 18.10.2015
Сообщений: 60
Сказал спасибо: 63
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
Andrey_AHAHAC на пути к лучшему
Печаль Re: Собрать АЛУ

Сообщение от pambaru Посмотреть сообщение
Простой схемы тут однозначно не получится.
Либо это будет какая-то тактируемая схема, реализующая примерно такой алгоритм:
1. Выставляем делимой и делитель
2. Подаем строб "старт", защелкиваем в регистр R1 делимое, регистр результат Res обнуляем.
3. По каждому такту вычитаем из регистра R1 делитель, до тех пор, пока содержимое R1 не станет меньше делителя, на каждом такте инкрементируя регистр Res.
Как только R1 стал меньше делителя переходим к п.4
4. Выдаем на выход сигнал готовности и регистр Res.
Т.е., получаем конечный автомат, схема будет непростая.


Более простой вариант - прошитое ПЗУ с кол-вом адресных входов равным сумме разрядов делимого и делителя.
Схема в этом случае простейшая асинхронная (без тактирования).
Звучит все устрашающе непонятно.
Andrey_AHAHAC вне форума  
Непрочитано 18.10.2015, 14:27  
pambaru
Почётный гражданин KAZUS.RUN
 
Регистрация: 24.03.2007
Сообщений: 1,398
Сказал спасибо: 85
Сказали Спасибо 678 раз(а) в 396 сообщении(ях)
pambaru на пути к лучшему
По умолчанию Re: Собрать АЛУ

Если все же нужно асинхронно, на логике, без ПЗУ, то расписать все состояния вход-выход в таблице, минимизировать по картам Карно, к примеру (Гугл в помощь), и нарисовать результат на логике на формате листа А0
pambaru вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необходимо собрать указку на инфракрасном диодном лазере. alladinn70 Электроника - это просто 34 10.01.2013 13:33
Помогите собрать схему Aртур Proteus, KiCAD и другие ECAD 0 06.04.2012 22:30
Помогите собрать катушку kobraxxx Делимся опытом 1 26.12.2011 09:58
Я хочу в домашних условияс собрать источник электр. поля. recoil Источники питания и свет 4 16.03.2007 22:30


Часовой пояс GMT +4, время: 03:13.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.