A
alphi
Guest
moj projekt potrebujejo 8 sinhro bit counter with programirati sinhronizacija razkorak.ko OPT = 00, 1 CLK narašča, števec 1ko OPT = 01, 2 CLK narašča, števec 1ko OPT = 10, 4 CLK narašča, števec 1ko OPT = 11, 8 CLK narašča, števec 1
note: i ne morejo uporabljati CLK za razdelitev frekvenc vezje multipleksor vezje za ustvarjanje deli clk2, nato pa uporabite clk2 za 8bit sinhro counter.because te bo pripeljalo do velikega časovnega zamika betwwen counter izhod s projektom CLK.my T1 (counter output)-T2 ( CLK) <8ns, zato sem uporabo po metodi VHDL.but ga porabi zelo velik vir mojega XC9536XL-10.Zakaj je tako veliko sredstev porabijo? Kako lahko jaz za njegovo izboljšanje.moj VHDL:
Podjetje je ASS
pristanišča (
CLK: v std_logic;
: Od std_logic_vector (7 downto 0);
OPT: v std_logic_vector (1 downto 0);
nRST: v std_logic --
);
end ASS;
architecture Behavioral of ASS je
signal A_SIG: std_logic_vector (10 downto 0); --
začeti
Kakršnih: blok
začeti
<= A_SIG (10 downto 3);
proces (CLK, nRST)
začeti
če nRST = '1 'potem --
če CLK = "1" in nato CLK'event
OPT primeru je
ko "00" =>
A_SIG (10 downto 3) <= A_SIG (10 downto 3) 1;
ko "01" =>
A_SIG (10 downto 2) <= A_SIG (10 downto 2) 1;
ko "10" =>
A_SIG (10 downto 1) <= A_SIG (10 downto 1) 1;
ko "11" =>
A_SIG (10 downto 0) <= A_SIG (10 downto 0) 1;
ko drugi =>
null;
konec postopka;
end if;
še
A_SIG <= "00000000000";
end if;
koncu postopka;
end blok kakršnih;
end Behavioral;HDL Synthesis ReportMakro Statistika
# Seštevalniki / Subtractors: 4
11-bitni seštevalnik: 1
10-bitni seštevalnik: 1
9-bitni seštevalnik: 1
8-bitni seštevalnik: 1
# Registers: 11
1-bit register: 11
# Multiplexers: 10
2-v-1 multipleksor: 1
1-bit 4-v-1 multipleksor: 9
note: i ne morejo uporabljati CLK za razdelitev frekvenc vezje multipleksor vezje za ustvarjanje deli clk2, nato pa uporabite clk2 za 8bit sinhro counter.because te bo pripeljalo do velikega časovnega zamika betwwen counter izhod s projektom CLK.my T1 (counter output)-T2 ( CLK) <8ns, zato sem uporabo po metodi VHDL.but ga porabi zelo velik vir mojega XC9536XL-10.Zakaj je tako veliko sredstev porabijo? Kako lahko jaz za njegovo izboljšanje.moj VHDL:
Podjetje je ASS
pristanišča (
CLK: v std_logic;
: Od std_logic_vector (7 downto 0);
OPT: v std_logic_vector (1 downto 0);
nRST: v std_logic --
);
end ASS;
architecture Behavioral of ASS je
signal A_SIG: std_logic_vector (10 downto 0); --
začeti
Kakršnih: blok
začeti
<= A_SIG (10 downto 3);
proces (CLK, nRST)
začeti
če nRST = '1 'potem --
če CLK = "1" in nato CLK'event
OPT primeru je
ko "00" =>
A_SIG (10 downto 3) <= A_SIG (10 downto 3) 1;
ko "01" =>
A_SIG (10 downto 2) <= A_SIG (10 downto 2) 1;
ko "10" =>
A_SIG (10 downto 1) <= A_SIG (10 downto 1) 1;
ko "11" =>
A_SIG (10 downto 0) <= A_SIG (10 downto 0) 1;
ko drugi =>
null;
konec postopka;
end if;
še
A_SIG <= "00000000000";
end if;
koncu postopka;
end blok kakršnih;
end Behavioral;HDL Synthesis ReportMakro Statistika
# Seštevalniki / Subtractors: 4
11-bitni seštevalnik: 1
10-bitni seštevalnik: 1
9-bitni seštevalnik: 1
8-bitni seštevalnik: 1
# Registers: 11
1-bit register: 11
# Multiplexers: 10
2-v-1 multipleksor: 1
1-bit 4-v-1 multipleksor: 9