Liitja/lahutaja
Kasutama pidi struktuurset kirjeldusstiili.
Joonisel 1 on näha, et B iga bit-i ja subtract-iga tehakse XOR tehe. Samuti tehakse XOR tehe
subtract-iga ja carry_in-iga. Selleks tegin XOR Gate komponendi, mis võtab sisse 2 muutujat,
mis on 1-bit-ised ja nendega teostatakse XOR tehe ja väljastab tulemuse, mis on ühe bit-ine.
Joonis 1 4-bit liitja/lahutaja skeem
Eelmises ülesandes pidime looma 1-bitist täissummaatori, siis selle osa sain eelmisest
ülesandest. Kasutan sellest andevookirjeldusstiili, kus kolme sisendiga teen XOR tehte, mille
tulemusena saan väljundi kätte ja lisaks leian ülekande, mis arvutatakse joonis 1 peal oleva
valemiga.
Joonis 2 Ülekande arvutamise valem
Viimaseks sammuks tegin faili, kus kutsun välja alamkomponenti 1-bitist täissummaatorit neli
korda, mille tulemusena tekibki 4-biti liitja lahutaja.
1.1 Programmikood
-- XOR Gate
library ieee;
use ieee.std_logic_1164.all;
-- Entity
entity xorGate is
-- Sisend/väljund portide kirjeldus