x393
1.0
FPGAcodeforElphelNC393camera
masked_max_reg.v
Go to the documentation of this file.
1
39
`timescale 1ns/1ps
40
41
module
masked_max_reg
#(
42
parameter
width
=
16
43
)(
44
input
clk
,
45
input
[
width
-
1
:
0
]
a
,
46
input
mask_a
,
47
input
[
width
-
1
:
0
]
b
,
48
input
mask_b
,
49
output
[
width
-
1
:
0
]
max
,
50
output
s
,
51
output
valid
// at least one of the inputs was valid (matches outputs)
52
);
53
reg
[
width
-
1
:
0
]
max_r
;
54
reg
s_r
;
55
reg
valid_r
;
56
assign
s
=
s_r
;
57
assign
max
=
max_r
;
58
assign
valid
=
valid_r
;
59
// wire s_w= mask_b && ((mask_a && (b>a)) || !mask_a);
60
wire
s_w
=
mask_b
&& (!
mask_a
|| (
b
>
a
));
61
always
@ (
posedge
clk
)
begin
62
s_r
<=
s_w
;
63
max_r
<= (
mask_a
||
mask_b
)? (
s_w
?
b
:
a
): {
width
{
1'b0
}};
64
valid_r
<=
mask_a
||
mask_b
;
65
end
66
endmodule
67
masked_max_reg.10661valid_r
10661valid_rreg
Definition:
masked_max_reg.v:55
masked_max_reg.10656max
[width-1:0] 10656max
Definition:
masked_max_reg.v:49
masked_max_reg.10660s_r
10660s_rreg
Definition:
masked_max_reg.v:54
masked_max_reg.10654b
[width-1:0] 10654b
Definition:
masked_max_reg.v:47
masked_max_reg.10651clk
10651clk
Definition:
masked_max_reg.v:44
masked_max_reg.10650width
10650width16
Definition:
masked_max_reg.v:42
masked_max_reg.10658valid
10658valid
Definition:
masked_max_reg.v:51
masked_max_reg.10659max_r
10659max_rreg[width-1:0]
Definition:
masked_max_reg.v:53
masked_max_reg.10653mask_a
10653mask_a
Definition:
masked_max_reg.v:46
masked_max_reg.10652a
[width-1:0] 10652a
Definition:
masked_max_reg.v:45
masked_max_reg.10657s
10657s
Definition:
masked_max_reg.v:50
masked_max_reg.10662s_w
10662s_wwire
Definition:
masked_max_reg.v:60
masked_max_reg
Definition:
masked_max_reg.v:41
masked_max_reg.10655mask_b
10655mask_b
Definition:
masked_max_reg.v:48
util_modules
masked_max_reg.v
Generated by
1.8.12