Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
_KROL не, благодаря тебе и Hishnik, ну и еще одному человеку) удалось решить эту задачу. так что это совместный проект)))
[b]_KROL[/b] не, благодаря тебе и [b]Hishnik[/b], ну и еще одному человеку) удалось решить эту задачу. так что это совместный проект)))
|
|
|
|
Добавлено: Сб авг 26, 2017 22:09 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Да. Ты прав. Это я тупой)
Да. Ты прав. Это я тупой)
|
|
|
|
Добавлено: Сб авг 26, 2017 22:04 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
кажется вот так.
кажется вот так.
|
|
|
|
Добавлено: Сб авг 26, 2017 21:48 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Изложим схему по фортовски : Код: VARIABLE x0 VARIABLE x1 VARIABLE x2 VARIABLE x3 \ входные биты VARIABLE x4 VARIABLE x5 VARIABLE x6 VARIABLE x7
VARIABLE m0 VARIABLE m1 VARIABLE m2 VARIABLE m3 \ промежуточные биты VARIABLE m4 VARIABLE m5 VARIABLE m6 VARIABLE m7
VARIABLE n0 VARIABLE n1 VARIABLE n2 VARIABLE n3 \ промежуточные биты VARIABLE n4 VARIABLE n5 VARIABLE n6 VARIABLE n7
VARIABLE y0 VARIABLE y1 VARIABLE y2 VARIABLE y3 \ выходные биты VARIABLE y4 VARIABLE y5 VARIABLE y6 VARIABLE y7
5 CONSTANT shift \ на вход 1 0 1 0 0 1 0 1 x0 ! x1 ! x2 ! x3 ! x4 ! x5 ! x6 ! x7 ! \ подано
: MULTIPLEX ( x0 x1 flag -- y ) IF SWAP THEN DROP ; \ мультиплексор 2x1
x0 @ 0 shift 1 AND MULTIPLEX m0 ! x1 @ x0 @ shift 1 AND MULTIPLEX m1 ! x2 @ x1 @ shift 1 AND MULTIPLEX m2 ! x3 @ x2 @ shift 1 AND MULTIPLEX m3 ! x4 @ x3 @ shift 1 AND MULTIPLEX m4 ! x5 @ x4 @ shift 1 AND MULTIPLEX m5 ! x6 @ x5 @ shift 1 AND MULTIPLEX m6 ! x7 @ x6 @ shift 1 AND MULTIPLEX m7 ! m0 @ 0 shift 2 AND MULTIPLEX n0 ! m1 @ 0 shift 2 AND MULTIPLEX n1 ! m2 @ m0 @ shift 2 AND MULTIPLEX n2 ! m3 @ m1 @ shift 2 AND MULTIPLEX n3 ! m4 @ m2 @ shift 2 AND MULTIPLEX n4 ! m5 @ m3 @ shift 2 AND MULTIPLEX n5 ! m6 @ m4 @ shift 2 AND MULTIPLEX n6 ! m7 @ m5 @ shift 2 AND MULTIPLEX n7 ! n0 @ 0 shift 4 AND MULTIPLEX y0 ! n1 @ 0 shift 4 AND MULTIPLEX y1 ! n2 @ 0 shift 4 AND MULTIPLEX y2 ! n3 @ 0 shift 4 AND MULTIPLEX y3 ! n4 @ n0 @ shift 4 AND MULTIPLEX y4 ! n5 @ n1 @ shift 4 AND MULTIPLEX y5 ! n6 @ n2 @ shift 4 AND MULTIPLEX y6 ! n7 @ n3 @ shift 4 AND MULTIPLEX y7 !
y7 @ . y6 @ . y5 @ . y4 @ . y3 @ . y2 @ . y1 @ . y0 @ .
BYE
Изложим схему по фортовски :[code]VARIABLE x0 VARIABLE x1 VARIABLE x2 VARIABLE x3 \ входные биты VARIABLE x4 VARIABLE x5 VARIABLE x6 VARIABLE x7
VARIABLE m0 VARIABLE m1 VARIABLE m2 VARIABLE m3 \ промежуточные биты VARIABLE m4 VARIABLE m5 VARIABLE m6 VARIABLE m7
VARIABLE n0 VARIABLE n1 VARIABLE n2 VARIABLE n3 \ промежуточные биты VARIABLE n4 VARIABLE n5 VARIABLE n6 VARIABLE n7
VARIABLE y0 VARIABLE y1 VARIABLE y2 VARIABLE y3 \ выходные биты VARIABLE y4 VARIABLE y5 VARIABLE y6 VARIABLE y7
5 CONSTANT shift \ на вход 1 0 1 0 0 1 0 1 x0 ! x1 ! x2 ! x3 ! x4 ! x5 ! x6 ! x7 ! \ подано
: MULTIPLEX ( x0 x1 flag -- y ) IF SWAP THEN DROP ; \ мультиплексор 2x1
x0 @ 0 shift 1 AND MULTIPLEX m0 ! x1 @ x0 @ shift 1 AND MULTIPLEX m1 ! x2 @ x1 @ shift 1 AND MULTIPLEX m2 ! x3 @ x2 @ shift 1 AND MULTIPLEX m3 ! x4 @ x3 @ shift 1 AND MULTIPLEX m4 ! x5 @ x4 @ shift 1 AND MULTIPLEX m5 ! x6 @ x5 @ shift 1 AND MULTIPLEX m6 ! x7 @ x6 @ shift 1 AND MULTIPLEX m7 ! m0 @ 0 shift 2 AND MULTIPLEX n0 ! m1 @ 0 shift 2 AND MULTIPLEX n1 ! m2 @ m0 @ shift 2 AND MULTIPLEX n2 ! m3 @ m1 @ shift 2 AND MULTIPLEX n3 ! m4 @ m2 @ shift 2 AND MULTIPLEX n4 ! m5 @ m3 @ shift 2 AND MULTIPLEX n5 ! m6 @ m4 @ shift 2 AND MULTIPLEX n6 ! m7 @ m5 @ shift 2 AND MULTIPLEX n7 ! n0 @ 0 shift 4 AND MULTIPLEX y0 ! n1 @ 0 shift 4 AND MULTIPLEX y1 ! n2 @ 0 shift 4 AND MULTIPLEX y2 ! n3 @ 0 shift 4 AND MULTIPLEX y3 ! n4 @ n0 @ shift 4 AND MULTIPLEX y4 ! n5 @ n1 @ shift 4 AND MULTIPLEX y5 ! n6 @ n2 @ shift 4 AND MULTIPLEX y6 ! n7 @ n3 @ shift 4 AND MULTIPLEX y7 !
y7 @ . y6 @ . y5 @ . y4 @ . y3 @ . y2 @ . y1 @ . y0 @ .
BYE[/code]
|
|
|
|
Добавлено: Вт авг 22, 2017 16:33 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Если выбор из двух альтернатив, то ведь достаточно мультиплексора 2:1? Теперь сдвиговый регистр с однобитным сдвигом можно построить так: для каждого из 8 разрядов берем либо одноименный, либо соседний. Тогда получится, что сдвиг происходит или на 0, или на 1 разряд. Таким образом, заняли 8 мультиплексоров. Теперь у нас осталось еще два набора по 8 мультиплексоров... и еще два бита управления сдвигом.
Если выбор из двух альтернатив, то ведь достаточно мультиплексора 2:1? Теперь сдвиговый регистр с однобитным сдвигом можно построить так: для каждого из 8 разрядов берем либо одноименный, либо соседний. Тогда получится, что сдвиг происходит или на 0, или на 1 разряд. Таким образом, заняли 8 мультиплексоров. Теперь у нас осталось еще два набора по 8 мультиплексоров... и еще два бита управления сдвигом.
|
|
|
|
Добавлено: Вт авг 22, 2017 01:02 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
объясните мне вот эту фразу, пожалуйста: В каждом случае можно выбирать "сдвиг на 0 (т.е. нет сдвига) или сдвиг на N".
объясните мне вот эту фразу, пожалуйста: [color=#BF0000]В каждом случае можно выбирать "сдвиг на 0 (т.е. нет сдвига) или сдвиг на N".[/color]
|
|
|
|
Добавлено: Вт авг 22, 2017 00:28 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
JNAD писал(а): как мне кажется значение входа shamt 2:0 должно сдвигать регистр на ту величину, которая задана на shamt, например если на входе shamt значение 111 то число должно сдвинуться на 7 разрядов.
Именно так. Еще подсказка: сдвинуть число на произвольное количество разрядов можно, комбинируя сдвиги на 1, 2, 4 и т.д. разрядов. В каждом случае можно выбирать "сдвиг на 0 (т.е. нет сдвига) или сдвиг на N".
[quote="JNAD"]как мне кажется значение входа shamt 2:0 должно сдвигать регистр на ту величину, которая задана на shamt, например если на входе shamt значение 111 то число должно сдвинуться на 7 разрядов. [/quote] Именно так. Еще подсказка: сдвинуть число на произвольное количество разрядов можно, комбинируя сдвиги на 1, 2, 4 и т.д. разрядов. В каждом случае можно выбирать "сдвиг на 0 (т.е. нет сдвига) или сдвиг на N".
|
|
|
|
Добавлено: Вт авг 22, 2017 00:23 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
как мне кажется значение входа shamt 2:0 должно сдвигать регистр на ту величину, которая задана на shamt, например если на входе shamt значение 111 то число должно сдвинуться на 7 разрядов.
как мне кажется значение входа shamt 2:0 должно сдвигать регистр на ту величину, которая задана на shamt, например если на входе shamt значение 111 то число должно сдвинуться на 7 разрядов. :?
|
|
|
|
Добавлено: Пн авг 21, 2017 23:51 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Вот. В этом файле вроде всё правильно(правда использую ещё 2 элемента: и, или).
Вот. В этом файле вроде всё правильно(правда использую ещё 2 элемента: и, или).
|
|
|
|
Добавлено: Пн авг 21, 2017 22:21 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Слушай, если я правильно понимаю, то shamt - величина сдвига, тогда shamt2:0 - двухбитная велчина, иначе говоря, у автора скорее всего ошибка.
Слушай, если я правильно понимаю, то shamt - величина сдвига, тогда shamt2:0 - двухбитная велчина, иначе говоря, у автора скорее всего ошибка.
|
|
|
|
Добавлено: Пн авг 21, 2017 22:13 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Нет, не 2-х битовая, но не то что надо...(извини, забыл проверить остальные сдвиги ) А то получается, что 001=010=100 - 1 сдвиг! А мультиплексоры же однобитные? Мда, задачка...
Нет, не 2-х битовая, но не то что надо...(извини, забыл проверить остальные сдвиги :oops:) А то получается, что 001=010=100 - 1 сдвиг!
А мультиплексоры же однобитные? Мда, задачка...
|
|
|
|
Добавлено: Пн авг 21, 2017 21:44 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
_KROL В задаче сказано, что величина сдвига 3-битовая. А в твоей схеме величина сдвига 2-битовая.
[b]_KROL[/b] В задаче сказано, что [color=#FF0000]величина сдвига 3-битовая[/color]. А в твоей схеме величина сдвига 2-битовая.
|
|
|
|
Добавлено: Пн авг 21, 2017 21:18 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
|
|
|
Добавлено: Вс авг 20, 2017 18:33 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Подсказка: 24 = 8*3. А 3, в свою очередь, "почему-то" совпадает с количеством разрядов в величине сдвига.
Вообще с подобными схемами на практике хорошо справляются синтезаторы. Даже можно порекомендовать описывать устройства сдвига в поведенческом стиле, чтобы в сочетании с соседними фрагментами схемы у синтезатора появилась возможность найти что-то эффективное. Но в качестве упражнения хорошо подходит.
Подсказка: 24 = 8*3. А 3, в свою очередь, "почему-то" совпадает с количеством разрядов в величине сдвига.
Вообще с подобными схемами на практике хорошо справляются синтезаторы. Даже можно порекомендовать описывать устройства сдвига в поведенческом стиле, чтобы в сочетании с соседними фрагментами схемы у синтезатора появилась возможность найти что-то эффективное. Но в качестве упражнения хорошо подходит.
|
|
|
|
Добавлено: Вс авг 20, 2017 01:10 |
|
|
|
|
|
Заголовок сообщения: |
Re: Цифровая схемотехника и архитектура компьютера |
|
|
Появился еще один вопрос. Вот задача: Упражнение 5.15 Спроектируйте 8-битовую схему сдвига влево с использованием только 24 мультиплексоров 2:1. На вход схемы поступает 8-битовый входной сигнал и 3-битовая величина сдвига, shamt2:0. На выходе схемы формируется 8-битовый сигнал Y. Нарисуйте принципиальную схему. ( с. 714) Может кто-нибудь с ней помочь???
Появился еще один вопрос. Вот задача: Упражнение 5.15 Спроектируйте 8-битовую схему сдвига влево с использованием только 24 мультиплексоров 2:1. На вход схемы поступает 8-битовый входной сигнал и 3-битовая величина сдвига, shamt2:0. На выходе схемы формируется 8-битовый сигнал Y. Нарисуйте принципиальную схему. ( с. 714) Может кто-нибудь с ней помочь???
|
|
|
|
Добавлено: Сб авг 19, 2017 21:32 |
|
|
|