#23 Basys2: FPGA курс | 📘 P15 — Вычитание через дополнительный код (Two’s Complement) | VHDL
Плату Basys 2 я покупал по этой ссылке: https://megabonus.com/y/olJ5u *Ссылка аффилиатная. Она используется для статистики и не влияет на цену для вас.* #FPGA #Basys2 #Xilinx #Spartan #VHDL === В этом видео мы реализуем вычитание через дополнительный код (two’s complement) на FPGA Digilent Basys 2 (Spartan-3E) с использованием языка VHDL. Это логическое продолжение проекта P14, где отрицательный результат определялся через сигнал Borrow. В P15 отрицательные числа кодируются непосредственно в битах результата — точно так же, как это делается в ALU и процессорах. 🔗 Связь с предыдущими проектами P13 — двоичный сумматор P14 — вычитатель с Borrow P15 — вычитание через дополнительный код P16 — ALU (ADD / SUB одним сумматором) 🧠 Ключевая идея проекта Вычитание заменяется сложением: A − B = A + (¬B) + 1 Это позволяет: использовать один и тот же сумматор отказаться от отдельного вычитателя хранить знак числа в старшем бите результата 🎛 Ползунки на плате Basys 2 (один байт) Все 8 ползунков расположены в один ряд и образуют байт: SW7 SW6 SW5 SW4 SW3 SW2 SW1 SW0 └─── B ───┘ └─── A ───┘ SW7–SW4 — число B SW3–SW0 — число A 💡 Индикация светодиодов Светодиоды Значение LED[3:0] Результат в дополнительном коде LED[7] Знак результата (MSB) LED[6] Carry out сумматора (служебный флаг) LED[5:4] Не используются ⚠️ Важно: LED[6] = 1 не является ошибкой. При A ≥ B carry out равен 1 — это нормальное поведение для вычитания через допкод. 🧪 Пример из видео: почему получается −2 SW = 0101 0011 B = 5 A = 3 Результат на плате: LED[3:0] = 1110 LED[7] = 1 LED[6] = 0 Интерпретация: 1110₂ как беззнаковое = 14 14 − 16 = −2 знак уже закодирован в результате 🔍 Что разбираем в видео формирование дополнительного кода связь Carry out и заёма отличие P14 и P15 RTL Schematic в Xilinx ISE почему процессорам не нужен отдельный вычитатель 📂 Исходники проекта VHDL-код, testbench и README: 👉 https://github.com/AIDevelopersMonster/basys2-course 🎓 Для кого это видео студенты цифровой схемотехники изучающие FPGA и VHDL те, кто хочет понять как из битов получается “минус” подготовка к ALU и архитектуре процессоров 👍 Если видео помогло — ставьте лайк 💬 Вопросы пишите в комментариях 📌 Подписывайтесь на канал — дальше ALU и флаги 🎬 Плейлист FPGA (Basys 2): 👉 https://www.youtube.com/playlist?list=PLVoFIRfTAAI7-d_Yk6bNVnj4atUdMxvT5
Название:
#23 Basys2: FPGA курс | 📘 P15 — Вычитание через дополнительный код (Two’s Complement) | VHDL
Категория:
Разное