S
shadeslayer
Guest
hi all
Napisałem następujący kod, może ktoś mi powiedzieć thr jeśli jest coś brakuje?
Kod:
-----------------------------------
-----------------------------------
--- Wybierz wzmacniacza cyfrowego calc --------
-----------------------------------
-----------------------------------wykorzystania ieee.std_logic_1164.all;
wykorzystania ieee.std_logic_arith.all;
wykorzystania ieee.std_logic_unsigned.all;
Biblioteka IEEE;
Jednostka jest sobotaport (
DIN: w srd_logic_vector (7 downto 0); ---- wprowadzania danych linii
DOUT: out std_logic-vector (7 downto 0); ---- dane wyjściowe linii
reset: in std_logic; ---- zresetować sygnału
nochange: w std_logic; ---- wskazania nie zrobić zmiany danych
);sobota końca;Architektura behawioralnej z sobota jest
Typ Rega jest tablica (0 do 7) bitowe; --------- Rega refrance początku = 0
Typ regb jest tablica (0 do 7) bitowe; --------- RegB = dane użytkownikazacząćprocesu (jeden)
Zmienna reg1: Rega;
Zmienna reg2: regb;zacząćProcedura transferuzacząćreg1 (0) <= reg2 (0); ---------------- subroutine na zmianę danych
reg1 (1) <= reg2 (1);
reg1 (2) <= reg2 (2);
reg1 (3) <= reg2 (3);
reg1 (4) <= reg2 (4);
reg1 (5) <= reg2 (5);
reg1 (6) <= reg2 (6);
reg1 (7) <= reg2 (7);zakończenia procedury przeniesienia;DIN (0) => reg2 (0); --------------
DIN (1) => reg2 (1); --------
DIN (2) => reg2 (2); -----
DIN (3) => reg2 (3); - Dane teken na RegB
DIN (4) => reg2 (4); --
DIN (5) => reg2 (5); -----
DIN (6) => reg2 (6); --------
DIN (7) => reg2 (7); --------------reg1 (0): = 0; --------------
reg1 (1): = 0; --------
reg1 (2): = 0; -----
reg1 (3): = 0; - Rega jest inicjowany na zero
reg1 (4): = 0; --
reg1 (5): = 0; -----
reg1 (6): = 0; --------
reg1 (7): = 0; --------------if (reg2 (0)> reg1 (0)) następnie ---------------------------------
transfer;elseif (reg2 (1)> reg1 (1)) następnie -----------------------------
transfer;elseif (reg2 (2)> reg1 (2)) następnie -------------------------
transfer;elseif (reg2 (3)> reg1 (3)) następnie ----------------- transferu danych, jeśli RegB> Rega
transfer;elseif (reg2 (4)> reg1 (4)) następnie ----------------- więc na koniec otrzymujemy wartość maksymalna
transfer;elseif (reg2 (5)> reg1 (5)) następnie -------------------------
transfer;elseif (reg2 (6)> reg1 (6)) następnie -----------------------------
transfer;elseif (reg2 (7)> reg1 (7)) następnie ---------------------------------
transfer;w przeciwnym razie
nochange; = 1; ---- podać żadnych zmian (nie wymagane)end if;reg1 (0) => DOUT (0); ----------- danych wykupionych
reg1 (1) => DOUT (1);
reg1 (2) => DOUT (2);
reg1 (3) => DOUT (3);
reg1 (4) => DOUT (4);
reg1 (5) => DOUT (5);
reg1 (6) => DOUT (6);
reg1 (7) => DOUT (7);koniec procesu;koniec behawioralne;
Napisałem następujący kod, może ktoś mi powiedzieć thr jeśli jest coś brakuje?
Kod:
-----------------------------------
-----------------------------------
--- Wybierz wzmacniacza cyfrowego calc --------
-----------------------------------
-----------------------------------wykorzystania ieee.std_logic_1164.all;
wykorzystania ieee.std_logic_arith.all;
wykorzystania ieee.std_logic_unsigned.all;
Biblioteka IEEE;
Jednostka jest sobotaport (
DIN: w srd_logic_vector (7 downto 0); ---- wprowadzania danych linii
DOUT: out std_logic-vector (7 downto 0); ---- dane wyjściowe linii
reset: in std_logic; ---- zresetować sygnału
nochange: w std_logic; ---- wskazania nie zrobić zmiany danych
);sobota końca;Architektura behawioralnej z sobota jest
Typ Rega jest tablica (0 do 7) bitowe; --------- Rega refrance początku = 0
Typ regb jest tablica (0 do 7) bitowe; --------- RegB = dane użytkownikazacząćprocesu (jeden)
Zmienna reg1: Rega;
Zmienna reg2: regb;zacząćProcedura transferuzacząćreg1 (0) <= reg2 (0); ---------------- subroutine na zmianę danych
reg1 (1) <= reg2 (1);
reg1 (2) <= reg2 (2);
reg1 (3) <= reg2 (3);
reg1 (4) <= reg2 (4);
reg1 (5) <= reg2 (5);
reg1 (6) <= reg2 (6);
reg1 (7) <= reg2 (7);zakończenia procedury przeniesienia;DIN (0) => reg2 (0); --------------
DIN (1) => reg2 (1); --------
DIN (2) => reg2 (2); -----
DIN (3) => reg2 (3); - Dane teken na RegB
DIN (4) => reg2 (4); --
DIN (5) => reg2 (5); -----
DIN (6) => reg2 (6); --------
DIN (7) => reg2 (7); --------------reg1 (0): = 0; --------------
reg1 (1): = 0; --------
reg1 (2): = 0; -----
reg1 (3): = 0; - Rega jest inicjowany na zero
reg1 (4): = 0; --
reg1 (5): = 0; -----
reg1 (6): = 0; --------
reg1 (7): = 0; --------------if (reg2 (0)> reg1 (0)) następnie ---------------------------------
transfer;elseif (reg2 (1)> reg1 (1)) następnie -----------------------------
transfer;elseif (reg2 (2)> reg1 (2)) następnie -------------------------
transfer;elseif (reg2 (3)> reg1 (3)) następnie ----------------- transferu danych, jeśli RegB> Rega
transfer;elseif (reg2 (4)> reg1 (4)) następnie ----------------- więc na koniec otrzymujemy wartość maksymalna
transfer;elseif (reg2 (5)> reg1 (5)) następnie -------------------------
transfer;elseif (reg2 (6)> reg1 (6)) następnie -----------------------------
transfer;elseif (reg2 (7)> reg1 (7)) następnie ---------------------------------
transfer;w przeciwnym razie
nochange; = 1; ---- podać żadnych zmian (nie wymagane)end if;reg1 (0) => DOUT (0); ----------- danych wykupionych
reg1 (1) => DOUT (1);
reg1 (2) => DOUT (2);
reg1 (3) => DOUT (3);
reg1 (4) => DOUT (4);
reg1 (5) => DOUT (5);
reg1 (6) => DOUT (6);
reg1 (7) => DOUT (7);koniec procesu;koniec behawioralne;