89 lines
2.0 KiB
Plaintext
89 lines
2.0 KiB
Plaintext
addrmap top {
|
|
field strobe_t {
|
|
sw=w; hw=r; singlepulse;
|
|
};
|
|
|
|
reg {
|
|
field {
|
|
sw=r; hw=r; counter;
|
|
incrsaturate;
|
|
decrsaturate;
|
|
} count[8] = 0;
|
|
|
|
strobe_t increment[9:9] = 0;
|
|
strobe_t decrement[10:10] = 0;
|
|
strobe_t clear[11:11] = 0;
|
|
strobe_t set[12:12] = 0;
|
|
|
|
field {
|
|
sw=rw; hw=na;
|
|
} step[23:16] = 1;
|
|
|
|
count->incr = increment;
|
|
count->decr = decrement;
|
|
count->hwclr = clear;
|
|
count->hwset = set;
|
|
count->incrvalue = step;
|
|
count->decrvalue = step;
|
|
} saturate_via_bool @ 0x0;
|
|
|
|
|
|
reg {
|
|
field {
|
|
sw=r; hw=r; counter;
|
|
incrsaturate = 250;
|
|
decrsaturate = 5;
|
|
} count[8] = 0;
|
|
|
|
strobe_t increment[9:9] = 0;
|
|
strobe_t decrement[10:10] = 0;
|
|
strobe_t clear[11:11] = 0;
|
|
strobe_t set[12:12] = 0;
|
|
|
|
field {
|
|
sw=rw; hw=na;
|
|
} step[23:16] = 1;
|
|
|
|
count->incr = increment;
|
|
count->decr = decrement;
|
|
count->hwclr = clear;
|
|
count->hwset = set;
|
|
count->decrvalue = step;
|
|
count->incrvalue = count->decrvalue;
|
|
} saturate_via_const @ 0x4;
|
|
|
|
|
|
reg {
|
|
field {
|
|
sw=r; hw=r; counter;
|
|
} count[8] = 0;
|
|
|
|
strobe_t increment[9:9] = 0;
|
|
strobe_t decrement[10:10] = 0;
|
|
strobe_t clear[11:11] = 0;
|
|
strobe_t set[12:12] = 0;
|
|
|
|
field {
|
|
sw=rw; hw=na;
|
|
} step[23:16] = 1;
|
|
|
|
count->incr = increment;
|
|
count->decr = decrement;
|
|
count->hwclr = clear;
|
|
count->hwset = set;
|
|
count->incrvalue = step;
|
|
count->decrvalue = count->incrvalue;
|
|
} saturate_via_ref @ 0x8;
|
|
|
|
reg {
|
|
field {
|
|
sw=rw; hw=na;
|
|
} min[8] = 0x00;
|
|
field {
|
|
sw=rw; hw=na;
|
|
} max[8] = 0xFF;
|
|
} saturate_control @ 0xC;
|
|
saturate_via_ref.count -> decrsaturate = saturate_control.min;
|
|
saturate_via_ref.count -> incrsaturate = saturate_control.max;
|
|
};
|