##// END OF EJS Templates
Fixed bug, now minor and major frame pulses have the good width....
Alexis Jeandet -
r222:b37e19fe4c0b alexis
parent child
Show More
@@ -243,8 +243,8 rstn <= reset and RaZ;
243 243 SCLK <= Sclkint;
244 244
245 245 Major_Frame <= MajF;
246 --Minor_Frame <= MinF;
247 Minor_Frame <= MinFclk;
246 Minor_Frame <= MinF;
247 --Minor_Frame <= MinFclk;
248 248 gateint <= GateDC or GateLF or GateHF;
249 249 Gate <= gateint;
250 250
@@ -259,8 +259,11 end process;
259 259
260 260 BUS0 <= WordClk;
261 261 BUS12 <= MinFVector(0);
262 BUS13 <= MinFclk;
263 BUS14 <= '1' when WordCount = 0 else '0';
262 --BUS13 <= MinFclk;
263 --BUS14 <= '1' when WordCount = 0 else '0';
264 BUS13 <= MinF;
265 BUS14 <= MajF;
266
264 267
265 268 MinFVector <= std_logic_vector(TO_UNSIGNED(MinfCnt,WordSize));
266 269
@@ -23,6 +23,7 end entity;
23 23
24 24
25 25 architecture arMajF_Gen of MajF_Gen is
26 signal monostable : std_logic := '0';
26 27
27 28 begin
28 29
@@ -30,12 +31,18 process(clk)
30 31 begin
31 32 if reset = '0' then
32 33 MajF_Clk <= '0';
34 monostable <= '1';
33 35 elsif clk'event and clk = '0' then
34 if WordCnt_in = 0 and MinfCnt_in = 0 and WordClk = '1' then
36 if WordCnt_in = 0 and MinfCnt_in = 0 and WordClk = '1' and monostable = '1' then
35 37 MajF_Clk <= '1';
36 38 else
37 39 MajF_Clk <= '0';
38 40 end if;
41 if WordCnt_in = 0 and MinfCnt_in = 0 and WordClk = '1' and monostable = '1' then
42 monostable <= '0';
43 elsif WordCnt_in /= 0 and monostable = '0' then
44 monostable <= '1';
45 end if;
39 46 end if;
40 47 end process;
41 48
@@ -22,19 +22,25 end entity;
22 22
23 23
24 24 architecture arMinF_Gen of MinF_Gen is
25
25 signal monostable : std_logic := '0';
26 26 begin
27 27
28 28 process(clk)
29 29 begin
30 30 if reset = '0' then
31 31 MinF_Clk <= '0';
32 monostable <= '1';
32 33 elsif clk'event and clk = '0' then
33 if WordCnt_in = 0 and WordClk = '1' then
34 if WordCnt_in = 0 and WordClk = '1' and monostable = '1' then
34 35 MinF_Clk <= '1';
35 36 else
36 37 MinF_Clk <= '0';
37 38 end if;
39 if WordCnt_in = 0 and WordClk = '1' and monostable = '1' then
40 monostable <= '0';
41 elsif WordCnt_in /= 0 and monostable = '0' then
42 monostable <= '1';
43 end if;
38 44 end if;
39 45 end process;
40 46
General Comments 0
You need to be logged in to leave comments. Login now