File: decoder.v

package info (click to toggle)
tkgate 2.1%2Brepack-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 28,372 kB
  • sloc: ansic: 62,300; tcl: 20,345; xml: 2,731; yacc: 1,177; lex: 839; sh: 664; makefile: 180; perl: 39
file content (16 lines) | stat: -rw-r--r-- 386 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
module decoder #(.Dez(1), .Diz(1)) (I, E, $${NUMOUT:, :Z%});
   input ${I_RANGE} I;
   input E;
   output $${NUMOUT:, :Z%};
   wire ${OUT_RANGE} Zcat;

   specify
$${NUMOUT:\n:      (E *> Z%) = Dez; } 
$${NUMOUT:\n:      (I *> Z%) = Diz; } 
   endspecify

   assign Zcat = ${invZ} ({${NUMOUT}{E}} & (${NUMOUT}'b1 << I));

$${NUMOUT:\n:   assign Z% = Zcat[%];} 
   
endmodule // decoder