URL
https://opencores.org/ocsvn/t6507lp/t6507lp/trunk
Subversion Repositories t6507lp
Compare Revisions
- This comparison shows the changes necessary to convert path
/t6507lp/trunk/fv
- from Rev 130 to Rev 131
- ↔ Reverse comparison
Rev 130 → Rev 131
/alu_sync.e
1,8 → 1,9
alu_sync.e; |
<' |
unit alu_sync_u { |
clk_p: in simple_port of bit is instance; |
keep bind(clk_p, external); |
event clk is rise (clk_p$) @sys.any; |
clk: in event_port is instance; |
keep bind(clk, external); |
keep clk.hdl_path() == "clk"; |
keep clk.edge() == rise; |
}; |
'> |
/alu_agent.e
6,15 → 6,17
smp: alu_signal_map_u is instance; |
mon: alu_mon_u is instance; |
bfm: alu_bfm_u is instance; |
chk: alu_chk_u is instance; |
|
event main_clk; |
|
keep bfm.agent == me; |
keep bfm.agent == me; |
keep bfm.reset_n == smp.reset_n; |
keep bfm.alu_enable == smp.alu_enable; |
keep bfm.alu_opcode == smp.alu_opcode; |
keep bfm.alu_a == smp.alu_a; |
|
keep mon.agent == me; |
keep mon.alu_result == smp.alu_result; |
keep mon.alu_status == smp.alu_status; |
keep mon.alu_x == smp.alu_x; |
43,5 → 45,10
event main_clk is only @agent.main_clk; |
}; |
|
extend alu_mon_u { |
agent: alu_agent_u; |
event main_clk is only @agent.main_clk; |
}; |
|
|
'> |
/alu_input.e
32,14 → 32,11
event T1_cover_event; |
cover T1_cover_event is { |
item input_kind using no_collect=TRUE; |
item alu_opcode using radix=HEX, no_collect=TRUE; |
item alu_opcode using num_of_buckets=256, radix=HEX, no_collect=TRUE; |
cross input_kind, alu_opcode; |
//item alu_a; |
}; |
|
post_generate() is also { |
emit T1_cover_event; |
}; |
}; |
'> |
|
/alu_bfm.e
19,8 → 19,10
reset_n$ = data.reset_n; |
alu_enable$ = data.alu_enable; |
alu_opcode$ = data.alu_opcode; |
alu_a$ = data.alu_a; |
alu_a$ = data.alu_a; |
|
agent.chk.store(data); |
|
}; |
|
}; |
/alu_components.e
7,4 → 7,5
import alu_sync; |
import alu_agent; |
import alu_input; |
import alu_chk; |
'> |
/alu_chk.e
0,0 → 1,31
alu_chk.e |
<' |
import alu_components; |
|
unit alu_chk_u { |
reg_a : byte; |
reg_x : byte; |
reg_y : byte; |
reg_status : byte; |
|
count_cycles : int; |
first_cycle : bool; |
|
keep first_cycle == TRUE; |
keep count_cycles == 0; |
|
store(input : alu_input_s) is { |
out ("input stored: ", input); |
}; |
|
compare(alu_result:byte, alu_status:byte, alu_x:byte, alu_y:byte ) is { |
if (first_cycle) { |
first_cycle = FALSE; |
reg_x = alu_x; |
reg_y = alu_y; |
reg_status = alu_status; |
reg_a = ???? // TODO |
} |
}; |
}; |
'> |
/alu_mon.e
1,12 → 1,17
<' |
import alu_components; |
|
unit alu_mon_u { |
// !pkt: sbt_packet_s; |
// event pkt_detected_e; |
// event clock_e; |
|
alu_result: in simple_port of byte; |
alu_status: in simple_port of byte; |
alu_x: in simple_port of byte; |
alu_y: in simple_port of byte; |
|
event main_clk; |
|
on main_clk { |
agent.chk.compare(alu_result$, alu_status$, alu_x$, alu_y$); |
|
}; |
}; |
'> |