##// END OF EJS Templates
temp (LFR-EM) WFP_MS_1-1-57...
pellion -
r525:45bbe4445c14 JC
parent child
Show More
@@ -202,6 +202,7 BEGIN -- beh
202 202 dbguart => 0,
203 203 pclow => 2,
204 204 clk_freq => 25000,
205 IS_RADHARD => 0,
205 206 NB_CPU => 1,
206 207 ENABLE_FPU => 1,
207 208 FPU_NETLIST => 0,
@@ -379,7 +380,7 BEGIN -- beh
379 380 pirq_ms => 6,
380 381 pirq_wfp => 14,
381 382 hindex => 2,
382 top_lfr_version => X"010138") -- aa.bb.cc version
383 top_lfr_version => X"010139") -- aa.bb.cc version
383 384 -- AA : BOARD NUMBER
384 385 -- 0 => MINI_LFR
385 386 -- 1 => EM
@@ -120,6 +120,8 ARCHITECTURE Behavioral OF apb_lfr_manag
120 120 SIGNAL HK_temp_2_s : STD_LOGIC_VECTOR(15 DOWNTO 0);
121 121 SIGNAL HK_sel_s : STD_LOGIC_VECTOR(1 DOWNTO 0);
122 122
123 SIGNAL previous_fine_time_bit : STD_LOGIC;
124
123 125 SIGNAL rstn_LFR_TM : STD_LOGIC;
124 126
125 127 BEGIN
@@ -358,6 +360,9 BEGIN
358 360 -----------------------------------------------------------------------------
359 361
360 362 PROCESS (clk25MHz, resetn)
363 CONSTANT BIT_FREQUENCY_UPDATE : INTEGER := 11; -- freq = 2^(16-BIT)
364 -- for 11, the update frequency is 32Hz
365 -- for each HK, the update frequency is freq/3
361 366 BEGIN -- PROCESS
362 367 IF resetn = '0' THEN -- asynchronous reset (active low)
363 368
@@ -366,17 +371,21 BEGIN
366 371 r.HK_temp_2 <= (OTHERS => '0');
367 372
368 373 HK_sel_s <= "00";
374
375 previous_fine_time_bit <= '0';
369 376
370 377 ELSIF clk25MHz'EVENT AND clk25MHz = '1' THEN -- rising clock edge
371 378
372 379 IF HK_val = '1' THEN
373 CASE HK_sel_s IS
374 WHEN "00" => r.HK_temp_0 <= HK_sample; HK_sel_s <= "01";
375 WHEN "01" => r.HK_temp_1 <= HK_sample; HK_sel_s <= "10";
376 WHEN "10" => r.HK_temp_2 <= HK_sample; HK_sel_s <= "00";
377 WHEN OTHERS => NULL;
378 END CASE;
379
380 IF previous_fine_time_bit = NOT(fine_time_s(BIT_FREQUENCY_UPDATE)) THEN
381 previous_fine_time_bit <= fine_time_s(BIT_FREQUENCY_UPDATE);
382 CASE HK_sel_s IS
383 WHEN "00" => r.HK_temp_0 <= HK_sample; HK_sel_s <= "01";
384 WHEN "01" => r.HK_temp_1 <= HK_sample; HK_sel_s <= "10";
385 WHEN "10" => r.HK_temp_2 <= HK_sample; HK_sel_s <= "00";
386 WHEN OTHERS => NULL;
387 END CASE;
388 END IF;
380 389 END IF;
381 390
382 391 END IF;
@@ -384,4 +393,4 BEGIN
384 393
385 394 HK_sel <= HK_sel_s;
386 395
387 END Behavioral;
396 END Behavioral; No newline at end of file
@@ -284,8 +284,9 BEGIN
284 284 PORT MAP (clkm, rstn, ahbmi, ahbmo(i), ahbsi, ahbso,
285 285 irqi(i), irqo(i), dbgi(i), dbgo(i));
286 286 END GENERATE leon3_non_radhard;
287
287 288 leon3_radhard_i : IF IS_RADHARD = 1 GENERATE
288 cpu : ENTITY gaisler.leon3ft
289 cpu : leon3ft
289 290 GENERIC MAP (
290 291 HINDEX => i, --: integer; --CPU_HINDEX,
291 292 FABTECH => fabtech, --CFG_TECH,
@@ -562,4 +563,4 BEGIN
562 563
563 564
564 565
565 END Behavioral;
566 END Behavioral; No newline at end of file
General Comments 0
You need to be logged in to leave comments. Login now