mirror of https://github.com/YosysHQ/yosys.git
22 lines
474 B
Verilog
22 lines
474 B
Verilog
|
`define DATA 64'h492e5c4d7747e032
|
||
|
|
||
|
`define GATE(n, expr) \
|
||
|
module gate``n(sel, out); \
|
||
|
input wire [3:0] sel; \
|
||
|
output wire out; \
|
||
|
reg [63:0] bits; \
|
||
|
reg [5:0] ptrs[15:0]; \
|
||
|
initial bits = `DATA; \
|
||
|
initial $readmemh("memory_word_as_index.data", ptrs); \
|
||
|
assign out = expr; \
|
||
|
endmodule
|
||
|
|
||
|
`GATE(1, bits[ptrs[sel]])
|
||
|
`GATE(2, bits[ptrs[sel][5:0]])
|
||
|
`GATE(3, bits[ptrs[sel]+:1])
|
||
|
|
||
|
module gold(sel, out);
|
||
|
input wire [3:0] sel;
|
||
|
output wire out = `DATA >> (sel * 4);
|
||
|
endmodule
|