This commit is contained in:
annoyatron255 2024-03-18 02:12:59 -05:00
parent fce164299a
commit bdf468eef5
No known key found for this signature in database
GPG key ID: 95283811BE4E93F8
15 changed files with 94 additions and 1985 deletions

24
extractions/macrocells.v Normal file
View file

@ -0,0 +1,24 @@
module SOP_DFF (C, A, Y);
parameter WIDTH = 4;
parameter DEPTH = 0;
parameter TABLE = 0;
input C;
input [3:0] A;
output Y;
wire sop;
GAL_SOP #(
.WIDTH(WIDTH),
.DEPTH(DEPTH),
.TABLE(TABLE))
gal_sop_inst (
.A(A),
.Y(sop)
);
DFF_P dff_inst(.C(C), .D(sop), .Q(Y));
endmodule

View file

@ -1,106 +0,0 @@
{
"creator": "Yosys 0.37 (git sha1 a5c7f69ed8f, gcc 13.2.1 -march=x86-64 -mtune=generic -O2 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection -ffile-prefix-map=/build/yosys/src=/usr/src/debug/yosys -fPIC -Os)",
"modules": {
"test": {
"attributes": {
"src": "test.v:13.1-20.10"
},
"ports": {
"a": {
"direction": "input",
"bits": [ 2, 3 ]
},
"b": {
"direction": "input",
"bits": [ 4, 5 ]
},
"y": {
"direction": "output",
"bits": [ 6, 7, 8 ]
}
},
"cells": {
"$abc$126$auto$blifparse.cc:509:parse_blif$127": {
"hide_name": 1,
"type": "$sop",
"parameters": {
"DEPTH": "00000000000000000000000000000011",
"TABLE": "101010001010001000001010",
"WIDTH": "00000000000000000000000000000100"
},
"attributes": {
},
"port_directions": {
"A": "input",
"Y": "output"
},
"connections": {
"A": [ 3, 5, 2, 4 ],
"Y": [ 8 ]
}
},
"$abc$126$auto$blifparse.cc:509:parse_blif$128": {
"hide_name": 1,
"type": "$sop",
"parameters": {
"DEPTH": "00000000000000000000000000000110",
"TABLE": "011001100110100110101010101001010001011000011001",
"WIDTH": "00000000000000000000000000000100"
},
"attributes": {
},
"port_directions": {
"A": "input",
"Y": "output"
},
"connections": {
"A": [ 3, 5, 2, 4 ],
"Y": [ 7 ]
}
},
"$abc$126$auto$blifparse.cc:509:parse_blif$129": {
"hide_name": 1,
"type": "$sop",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "01101001",
"WIDTH": "00000000000000000000000000000010"
},
"attributes": {
},
"port_directions": {
"A": "input",
"Y": "output"
},
"connections": {
"A": [ 2, 4 ],
"Y": [ 6 ]
}
}
},
"netnames": {
"a": {
"hide_name": 0,
"bits": [ 2, 3 ],
"attributes": {
"src": "test.v:14.14-14.15"
}
},
"b": {
"hide_name": 0,
"bits": [ 4, 5 ],
"attributes": {
"src": "test.v:14.17-14.18"
}
},
"y": {
"hide_name": 0,
"bits": [ 6, 7, 8 ],
"attributes": {
"src": "test.v:15.15-15.16"
}
}
}
}
}
}

69
synth_gal.tcl Executable file
View file

@ -0,0 +1,69 @@
#!/usr/bin/env -S yosys -c
yosys -import
if { $argc != 1 } {
puts "USAGE: $argv0 -- <VERILOG FILE>"
exit
}
exec rm -rf output
exec mkdir output
## Read Verilog
read_verilog [lindex $argv 0]
hierarchy -auto-top
## First pass synthesis
synth
design -save preop
## DFF/SOP mapping
dfflibmap -liberty techmaps/gal_dff.lib
# Get count of non-clock inputs and registers (TODO make finding clk more robust)
set num_inputs_regs [regexp -inline {\d+} [tee -s result.string select -count t:DFF_P i:* */clk %d]]
abc -sop -I $num_inputs_regs -P 256
#abc -sop -I 8 -P 256
opt
clean -purge
## Tech mapping
techmap -map techmaps/pla.v -D PLA_MAX_PRODUCTS=8
extract -map extractions/ndff.v
clean -purge
## Write output files and graph
write_verilog output/synth.v
write_json output/synth.json
write_table output/synth.txt
write_blif output/synth.blif
write_rtlil output/synth.rtlil
show -width -signed -enum
## Verify equivalence
# Backup and make gold and gate modules
design -stash postop
design -copy-from preop -as gold A:top
design -copy-from postop -as gate A:top
# Reverse tech map into primatives
#chtype -map GAL_SOP $sop gate
#chtype -map DFF_P $_DFF_P_
techmap -map techmaps/inv_techmap.v
# Verify
equiv_make gold gate equiv
equiv_induct equiv
equiv_simple equiv
# Restore backup
design -load postop
## Print final stats
ltp -noff
stat
shell

View file

@ -1,53 +0,0 @@
## Read Verilog
read_verilog test.v
hierarchy -auto-top
## First pass synthesis
synth
design -save preop
## DFF/SOP mapping
dfflibmap -liberty gal_dff.lib
abc -sop -I 8 -P 256
opt
clean -purge
## Tech mapping
techmap -map pla.v -D PLA_MAX_PRODUCTS=2
extract -map macrocell.v -constports
clean -purge
## Write output files and graph
write_verilog test_synth.v
write_json test_synth.json
write_table test_synth.txt
write_blif test_synth.blif
write_rtlil test_synth.rtlil
show -width -signed -enum
## Verify equivalence
# Backup and make gold and gate modules
design -stash postop
design -copy-from preop -as gold A:top
design -copy-from postop -as gate A:top
# Reverse tech map into primatives
#chtype -map GAL_SOP $sop gate
#chtype -map DFF_P $_DFF_P_
techmap -map inv_techmap.v
# Verify
equiv_make gold gate equiv
equiv_induct equiv
equiv_simple equiv
# Restore backup
design -load postop
## Print final stats
ltp -noff
stat
shell

2
test.v
View file

@ -5,7 +5,7 @@ module test (
);
always @ (posedge clk) begin
counter <= counter - 1;
counter <= counter + 1;
end
endmodule

View file

@ -1,96 +0,0 @@
`timescale 1ns / 1ns
`default_nettype none
module scan_chain #(
parameter SCAN_CHAIN_DEPTH = 30
) (
input wire clk,
input wire start,
output reg ready = 1,
output reg scanout_clk = 0,
output reg sample_clk = 0,
output reg scan_chain_out_valid = 0,
output reg [SCAN_CHAIN_DEPTH_BITS-1:0] bit_addr = 0
);
localparam SCAN_CHAIN_DEPTH_BITS = $clog2(SCAN_CHAIN_DEPTH);
localparam S_IDLE = 0;
localparam S_POS_SAMPLE = 1;
localparam S_NEG_SAMPLE = 2;
localparam S_POS_CLOCK = 3;
localparam S_READ_BIT = 4;
localparam S_NEG_CLOCK = 5;
reg [6:0] state = S_IDLE;
// Adjust to slow down output/align it
localparam POS_SAMPLE_EXTRA_CLOCKS = 10;
localparam NEG_SAMPLE_EXTRA_CLOCKS = 10;
localparam POS_CLOCK_EXTRA_CLOCKS = 3;
localparam NEG_CLOCK_EXTRA_CLOCKS = 5;
reg [20:0] clk_count = 0;
always @ (posedge clk) begin
if (start) begin
ready <= 0;
scanout_clk <= 0;
sample_clk <= 0;
bit_addr <= {SCAN_CHAIN_DEPTH_BITS{1'b1}};
clk_count <= 0;
state <= S_POS_SAMPLE;
end else begin
clk_count <= clk_count + 1;
case (state)
// Start sample
S_POS_SAMPLE : begin
sample_clk <= 1;
if (clk_count == POS_SAMPLE_EXTRA_CLOCKS) begin
clk_count <= 0;
state <= S_NEG_SAMPLE;
end
end
// Wait until reading data
S_NEG_SAMPLE : begin
sample_clk <= 0;
if (clk_count == NEG_SAMPLE_EXTRA_CLOCKS) begin
clk_count <= 0;
state <= S_READ_BIT; // First bit is unclocked
end
end
/* Loop over SCAN_CHAIN_DEPTH number of bits */
// Rising edge of clock
S_POS_CLOCK : begin
scanout_clk <= 1;
if (clk_count == POS_CLOCK_EXTRA_CLOCKS) begin
clk_count <= 0;
state <= S_READ_BIT;
end
end
// Read bit from scanchain
S_READ_BIT : begin
scan_chain_out_valid <= 1;
bit_addr <= bit_addr + 1;
state <= S_NEG_CLOCK;
end
// Falling edge of clock
S_NEG_CLOCK : begin
scan_chain_out_valid <= 0;
scanout_clk <= 0;
if (bit_addr == SCAN_CHAIN_DEPTH - 1) begin
ready <= 1;
state <= S_IDLE;
end else if (clk_count == NEG_CLOCK_EXTRA_CLOCKS) begin
clk_count <= 0;
state <= S_POS_CLOCK;
end
end
endcase
end
end
endmodule

View file

@ -1,47 +0,0 @@
# Generated by Yosys 0.37 (git sha1 a5c7f69ed8f, gcc 13.2.1 -march=x86-64 -mtune=generic -O2 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection -ffile-prefix-map=/build/yosys/src=/usr/src/debug/yosys -fPIC -Os)
.model test
.inputs clk
.outputs counter[7] counter[6] counter[5] counter[4] counter[3] counter[2] counter[1] counter[0]
.names $false
.names $true
1
.names $undef
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] Y=$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial A[5]=$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:576:parse_blif$243
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] Y=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial A[6]=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial A[6]=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:576:parse_blif$246
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] Y=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:576:parse_blif$249
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] Y=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[10]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[10]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[11]=$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:576:parse_blif$252
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] Y=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial A[10]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial A[10]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[11]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial A[10]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[11]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[12]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=counter[4] A[4]=counter[3] A[5]=counter[2] A[6]=counter[1] A[7]=counter[0] A[8]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial A[9]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial A[10]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[11]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[12]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial A[13]=$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial Y=$abc$241$auto$blifparse.cc:576:parse_blif$255
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] Y=$abc$241$auto$blifparse.cc:576:parse_blif$258
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] Y=$abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial
.subckt GAL_SOP A[0]=counter[6] A[1]=counter[7] A[2]=counter[5] A[3]=$abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial Y=$abc$241$auto$blifparse.cc:576:parse_blif$261
.subckt GAL_SOP A=counter[7] Y=$auto$alumacc.cc:485:replace_alu$4.Y[0]
.subckt DFF_P C=clk D=$auto$alumacc.cc:485:replace_alu$4.Y[0] Q=counter[7]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$258 Q=counter[6]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$261 Q=counter[5]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$243 Q=counter[4]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$246 Q=counter[3]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$249 Q=counter[2]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$252 Q=counter[1]
.subckt NDFF_P C=clk D=$abc$241$auto$blifparse.cc:576:parse_blif$255 Q=counter[0]
.end

View file

@ -1,837 +0,0 @@
{
"creator": "Yosys 0.37 (git sha1 a5c7f69ed8f, gcc 13.2.1 -march=x86-64 -mtune=generic -O2 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection -ffile-prefix-map=/build/yosys/src=/usr/src/debug/yosys -fPIC -Os)",
"modules": {
"test": {
"attributes": {
"top": "00000000000000000000000000000001",
"src": "test.v:1.1-11.10"
},
"ports": {
"clk": {
"direction": "input",
"bits": [ 2 ]
},
"counter": {
"direction": "output",
"upto": 1,
"bits": [ 3, 4, 5, 6, 7, 8, 9, 10 ]
}
},
"cells": {
"$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0110000101000010",
"WIDTH": "00000000000000000000000000000100"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6 ],
"Y": [ 11 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00100101011000000000",
"WIDTH": "00000000000000000000000000000101"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 11 ],
"Y": [ 12 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_rest": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000001011001100000000000",
"WIDTH": "00000000000000000000000000000110"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 11, 12 ],
"Y": [ 13 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "01100100000100100000",
"WIDTH": "00000000000000000000000000000101"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7 ],
"Y": [ 14 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000100001001100000000000",
"WIDTH": "00000000000000000000000000000110"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 14 ],
"Y": [ 15 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0000010101001010000000000000",
"WIDTH": "00000000000000000000000000000111"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 14, 15 ],
"Y": [ 16 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00000010010101011000000000000000",
"WIDTH": "00000000000000000000000000001000"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 14, 15, 16 ],
"Y": [ 17 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "011001000000010010000000",
"WIDTH": "00000000000000000000000000000110"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8 ],
"Y": [ 18 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0001000000100110000000000000",
"WIDTH": "00000000000000000000000000000111"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 18 ],
"Y": [ 19 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00000100000100101000000000000000",
"WIDTH": "00000000000000000000000000001000"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 18, 19 ],
"Y": [ 20 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000000010101100000100000000000000000",
"WIDTH": "00000000000000000000000000001001"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 18, 19, 20 ],
"Y": [ 21 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0000000010010101010110000000000000000000",
"WIDTH": "00000000000000000000000000001010"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 18, 19, 20, 21 ],
"Y": [ 22 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0110010000000001001000000000",
"WIDTH": "00000000000000000000000000000111"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9 ],
"Y": [ 23 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00010000000100101000000000000000",
"WIDTH": "00000000000000000000000000001000"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 23 ],
"Y": [ 24 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000001000000001001100000000000000000",
"WIDTH": "00000000000000000000000000001001"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 23, 24 ],
"Y": [ 25 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0000000100000110000010000000000000000000",
"WIDTH": "00000000000000000000000000001010"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 23, 24, 25 ],
"Y": [ 26 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00000000010101100000001000000000000000000000",
"WIDTH": "00000000000000000000000000001011"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 23, 24, 25, 26 ],
"Y": [ 27 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000000000010010101010101100000000000000000000000",
"WIDTH": "00000000000000000000000000001100"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 23, 24, 25, 26, 27 ],
"Y": [ 28 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "01100100000000000100100000000000",
"WIDTH": "00000000000000000000000000001000"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10 ],
"Y": [ 29 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000100000001100000100000000000000000",
"WIDTH": "00000000000000000000000000001001"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10, 29 ],
"Y": [ 30 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0000010000000000100110000000000000000000",
"WIDTH": "00000000000000000000000000001010"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10, 29, 30 ],
"Y": [ 31 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00000001000000000100101000000000000000000000",
"WIDTH": "00000000000000000000000000001011"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10, 29, 30, 31 ],
"Y": [ 32 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "000000000100000110000000100000000000000000000000",
"WIDTH": "00000000000000000000000000001100"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10, 29, 30, 31, 32 ],
"Y": [ 33 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0000000000010101100000000010000000000000000000000000",
"WIDTH": "00000000000000000000000000001101"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10, 29, 30, 31, 32, 33 ],
"Y": [ 34 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "00000000000010010101010101011000000000000000000000000000",
"WIDTH": "00000000000000000000000000001110"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 6, 7, 8, 9, 10, 29, 30, 31, 32, 33, 34 ],
"Y": [ 35 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$257": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "10010110",
"WIDTH": "00000000000000000000000000000010"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3 ],
"Y": [ 36 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_partial": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "100101011000",
"WIDTH": "00000000000000000000000000000011"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:48.5-51.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5 ],
"Y": [ 37 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_rest": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000010",
"TABLE": "0001011010000000",
"WIDTH": "00000000000000000000000000000100"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:58.5-61.4|pla.v:38.3-41.4"
},
"connections": {
"A": [ 4, 3, 5, 37 ],
"Y": [ 38 ]
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$263": {
"hide_name": 1,
"type": "GAL_SOP",
"parameters": {
"DEPTH": "00000000000000000000000000000001",
"TABLE": "01",
"WIDTH": "00000000000000000000000000000001"
},
"attributes": {
"module_not_derived": "00000000000000000000000000000001",
"src": "pla.v:38.3-41.4"
},
"connections": {
"A": [ 3 ],
"Y": [ 39 ]
}
},
"$auto$ff.cc:266:slice$89": {
"hide_name": 1,
"type": "DFF_P",
"parameters": {
},
"attributes": {
"src": "test.v:7.1-9.4"
},
"connections": {
"C": [ 2 ],
"D": [ 39 ],
"Q": [ 3 ]
}
},
"$extract$\\NDFF_P$316": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 36 ],
"Q": [ 4 ]
}
},
"$extract$\\NDFF_P$317": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 38 ],
"Q": [ 5 ]
}
},
"$extract$\\NDFF_P$318": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 13 ],
"Q": [ 6 ]
}
},
"$extract$\\NDFF_P$319": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 17 ],
"Q": [ 7 ]
}
},
"$extract$\\NDFF_P$320": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 22 ],
"Q": [ 8 ]
}
},
"$extract$\\NDFF_P$321": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 28 ],
"Q": [ 9 ]
}
},
"$extract$\\NDFF_P$322": {
"hide_name": 1,
"type": "NDFF_P",
"parameters": {
},
"attributes": {
},
"connections": {
"C": [ 2 ],
"D": [ 35 ],
"Q": [ 10 ]
}
}
},
"netnames": {
"$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial": {
"hide_name": 1,
"bits": [ 11 ],
"attributes": {
"src": "pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 12 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial": {
"hide_name": 1,
"bits": [ 14 ],
"attributes": {
"src": "pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 15 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 16 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial": {
"hide_name": 1,
"bits": [ 18 ],
"attributes": {
"src": "pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 19 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 20 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 21 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial": {
"hide_name": 1,
"bits": [ 23 ],
"attributes": {
"src": "pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 24 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 25 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 26 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 27 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial": {
"hide_name": 1,
"bits": [ 29 ],
"attributes": {
"src": "pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 30 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 31 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 32 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 33 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial": {
"hide_name": 1,
"bits": [ 34 ],
"attributes": {
"src": "pla.v:58.5-61.4|pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial": {
"hide_name": 1,
"bits": [ 37 ],
"attributes": {
"src": "pla.v:43.8-43.15"
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$243": {
"hide_name": 1,
"bits": [ 13 ],
"attributes": {
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$246": {
"hide_name": 1,
"bits": [ 17 ],
"attributes": {
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$249": {
"hide_name": 1,
"bits": [ 22 ],
"attributes": {
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$252": {
"hide_name": 1,
"bits": [ 28 ],
"attributes": {
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$255": {
"hide_name": 1,
"bits": [ 35 ],
"attributes": {
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$258": {
"hide_name": 1,
"bits": [ 36 ],
"attributes": {
}
},
"$abc$241$auto$blifparse.cc:576:parse_blif$261": {
"hide_name": 1,
"bits": [ 38 ],
"attributes": {
}
},
"$auto$alumacc.cc:485:replace_alu$4.Y": {
"hide_name": 1,
"bits": [ 39, 40, 41, 42, 43, 44, 45, 46 ],
"attributes": {
"force_downto": "00000000000000000000000000000001",
"src": "test.v:8.13-8.24|/usr/bin/../share/yosys/techmap.v:270.26-270.27",
"unused_bits": "1 2 3 4 5 6 7"
}
},
"clk": {
"hide_name": 0,
"bits": [ 2 ],
"attributes": {
"src": "test.v:2.8-2.11"
}
},
"counter": {
"hide_name": 0,
"bits": [ 3, 4, 5, 6, 7, 8, 9, 10 ],
"upto": 1,
"attributes": {
"src": "test.v:4.19-4.26"
}
}
}
}
}
}

View file

@ -1,365 +0,0 @@
# Generated by Yosys 0.37 (git sha1 a5c7f69ed8f, gcc 13.2.1 -march=x86-64 -mtune=generic -O2 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection -ffile-prefix-map=/build/yosys/src=/usr/src/debug/yosys -fPIC -Os)
autoidx 323
attribute \top 1
attribute \src "test.v:1.1-11.10"
module \test
attribute \src "pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:58.5-61.4|pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
attribute \src "pla.v:43.8-43.15"
wire $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial
wire $abc$241$auto$blifparse.cc:576:parse_blif$243
wire $abc$241$auto$blifparse.cc:576:parse_blif$246
wire $abc$241$auto$blifparse.cc:576:parse_blif$249
wire $abc$241$auto$blifparse.cc:576:parse_blif$252
wire $abc$241$auto$blifparse.cc:576:parse_blif$255
wire $abc$241$auto$blifparse.cc:576:parse_blif$258
wire $abc$241$auto$blifparse.cc:576:parse_blif$261
attribute \force_downto 1
attribute \src "test.v:8.13-8.24|/usr/bin/../share/yosys/techmap.v:270.26-270.27"
attribute \unused_bits "1 2 3 4 5 6 7"
wire width 8 $auto$alumacc.cc:485:replace_alu$4.Y
attribute \src "test.v:2.8-2.11"
wire input 1 \clk
attribute \src "test.v:4.19-4.26"
wire width 8 upto output 2 \counter
attribute \module_not_derived 1
attribute \src "pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 16'0110000101000010
parameter \WIDTH 4
connect \A { \counter [3:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 20'00100101011000000000
parameter \WIDTH 5
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial \counter [3:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_rest
parameter \DEPTH 2
parameter \TABLE 24'000001011001100000000000
parameter \WIDTH 6
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial \counter [3:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$243
end
attribute \module_not_derived 1
attribute \src "pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 20'01100100000100100000
parameter \WIDTH 5
connect \A { \counter [4:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 24'000100001001100000000000
parameter \WIDTH 6
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial \counter [4:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 28'0000010101001010000000000000
parameter \WIDTH 7
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial \counter [4:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest
parameter \DEPTH 2
parameter \TABLE 39157760
parameter \WIDTH 8
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial \counter [4:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$246
end
attribute \module_not_derived 1
attribute \src "pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 24'011001000000010010000000
parameter \WIDTH 6
connect \A { \counter [5:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 28'0001000000100110000000000000
parameter \WIDTH 7
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 68321280
parameter \WIDTH 8
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 36'000000010101100000100000000000000000
parameter \WIDTH 9
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest
parameter \DEPTH 2
parameter \TABLE 40'0000000010010101010110000000000000000000
parameter \WIDTH 10
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$249
end
attribute \module_not_derived 1
attribute \src "pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 28'0110010000000001001000000000
parameter \WIDTH 7
connect \A { \counter [6:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 269647872
parameter \WIDTH 8
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 36'000001000000001001100000000000000000
parameter \WIDTH 9
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 40'0000000100000110000010000000000000000000
parameter \WIDTH 10
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 44'00000000010101100000001000000000000000000000
parameter \WIDTH 11
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest
parameter \DEPTH 2
parameter \TABLE 48'000000000010010101010101100000000000000000000000
parameter \WIDTH 12
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$252
end
attribute \module_not_derived 1
attribute \src "pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 1677740032
parameter \WIDTH 8
connect \A { \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 36'000100000001100000100000000000000000
parameter \WIDTH 9
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 40'0000010000000000100110000000000000000000
parameter \WIDTH 10
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 44'00000001000000000100101000000000000000000000
parameter \WIDTH 11
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 48'000000000100000110000000100000000000000000000000
parameter \WIDTH 12
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 52'0000000000010101100000000010000000000000000000000000
parameter \WIDTH 13
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest
parameter \DEPTH 2
parameter \TABLE 56'00000000000010010101010101011000000000000000000000000000
parameter \WIDTH 14
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$255
end
attribute \module_not_derived 1
attribute \src "pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$257
parameter \DEPTH 2
parameter \TABLE 8'10010110
parameter \WIDTH 2
connect \A { \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$258
end
attribute \module_not_derived 1
attribute \src "pla.v:48.5-51.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_partial
parameter signed \DEPTH 2
parameter \TABLE 12'100101011000
parameter \WIDTH 3
connect \A { \counter [2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial
end
attribute \module_not_derived 1
attribute \src "pla.v:58.5-61.4|pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_rest
parameter \DEPTH 2
parameter \TABLE 16'0001011010000000
parameter \WIDTH 4
connect \A { $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial \counter [2] \counter [0] \counter [1] }
connect \Y $abc$241$auto$blifparse.cc:576:parse_blif$261
end
attribute \module_not_derived 1
attribute \src "pla.v:38.3-41.4"
cell \GAL_SOP $abc$241$auto$blifparse.cc:509:parse_blif$263
parameter \DEPTH 1
parameter \TABLE 2'01
parameter \WIDTH 1
connect \A \counter [0]
connect \Y $auto$alumacc.cc:485:replace_alu$4.Y [0]
end
attribute \src "test.v:7.1-9.4"
cell \DFF_P $auto$ff.cc:266:slice$89
connect \C \clk
connect \D $auto$alumacc.cc:485:replace_alu$4.Y [0]
connect \Q \counter [0]
end
cell \NDFF_P $extract$\NDFF_P$316
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$258
connect \Q \counter [1]
end
cell \NDFF_P $extract$\NDFF_P$317
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$261
connect \Q \counter [2]
end
cell \NDFF_P $extract$\NDFF_P$318
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$243
connect \Q \counter [3]
end
cell \NDFF_P $extract$\NDFF_P$319
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$246
connect \Q \counter [4]
end
cell \NDFF_P $extract$\NDFF_P$320
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$249
connect \Q \counter [5]
end
cell \NDFF_P $extract$\NDFF_P$321
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$252
connect \Q \counter [6]
end
cell \NDFF_P $extract$\NDFF_P$322
connect \C \clk
connect \D $abc$241$auto$blifparse.cc:576:parse_blif$255
connect \Q \counter [7]
end
end

View file

@ -1,84 +0,0 @@
test clk - - pi \clk
test counter - - po \counter
test $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_partial GAL_SOP A unknown { \counter [3:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial \counter [3:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_rest GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.partial \counter [3:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$242.genblk1.sop_rest.genblk1.sop_rest GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$243
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_partial GAL_SOP A unknown { \counter [4:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial \counter [4:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial \counter [4:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.partial \counter [4:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$245.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$246
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_partial GAL_SOP A unknown { \counter [5:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.partial \counter [5:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$248.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$249
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_partial GAL_SOP A unknown { \counter [6:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.partial \counter [6:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$251.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$252
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_partial GAL_SOP A unknown { \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.partial $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.partial \counter [7:2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$254.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest.genblk1.sop_rest GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$255
test $abc$241$auto$blifparse.cc:509:parse_blif$257 GAL_SOP A unknown { \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$257 GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$258
test $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_partial GAL_SOP A unknown { \counter [2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_partial GAL_SOP Y unknown $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial
test $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_rest GAL_SOP A unknown { $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.partial \counter [2] \counter [0] \counter [1] }
test $abc$241$auto$blifparse.cc:509:parse_blif$260.genblk1.sop_rest GAL_SOP Y unknown $abc$241$auto$blifparse.cc:576:parse_blif$261
test $abc$241$auto$blifparse.cc:509:parse_blif$263 GAL_SOP A unknown \counter [0]
test $abc$241$auto$blifparse.cc:509:parse_blif$263 GAL_SOP Y unknown $auto$alumacc.cc:485:replace_alu$4.Y [0]
test $auto$ff.cc:266:slice$89 DFF_P C unknown \clk
test $auto$ff.cc:266:slice$89 DFF_P D unknown $auto$alumacc.cc:485:replace_alu$4.Y [0]
test $auto$ff.cc:266:slice$89 DFF_P Q unknown \counter [0]
test $extract$\NDFF_P$316 NDFF_P C unknown \clk
test $extract$\NDFF_P$316 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$258
test $extract$\NDFF_P$316 NDFF_P Q unknown \counter [1]
test $extract$\NDFF_P$317 NDFF_P C unknown \clk
test $extract$\NDFF_P$317 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$261
test $extract$\NDFF_P$317 NDFF_P Q unknown \counter [2]
test $extract$\NDFF_P$318 NDFF_P C unknown \clk
test $extract$\NDFF_P$318 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$243
test $extract$\NDFF_P$318 NDFF_P Q unknown \counter [3]
test $extract$\NDFF_P$319 NDFF_P C unknown \clk
test $extract$\NDFF_P$319 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$246
test $extract$\NDFF_P$319 NDFF_P Q unknown \counter [4]
test $extract$\NDFF_P$320 NDFF_P C unknown \clk
test $extract$\NDFF_P$320 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$249
test $extract$\NDFF_P$320 NDFF_P Q unknown \counter [5]
test $extract$\NDFF_P$321 NDFF_P C unknown \clk
test $extract$\NDFF_P$321 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$252
test $extract$\NDFF_P$321 NDFF_P Q unknown \counter [6]
test $extract$\NDFF_P$322 NDFF_P C unknown \clk
test $extract$\NDFF_P$322 NDFF_P D unknown $abc$241$auto$blifparse.cc:576:parse_blif$255
test $extract$\NDFF_P$322 NDFF_P Q unknown \counter [7]

View file

@ -1,396 +0,0 @@
/* Generated by Yosys 0.37 (git sha1 a5c7f69ed8f, gcc 13.2.1 -march=x86-64 -mtune=generic -O2 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection -ffile-prefix-map=/build/yosys/src=/usr/src/debug/yosys -fPIC -Os) */
(* top = 1 *)
(* src = "test.v:1.1-11.10" *)
module test(clk, counter);
(* src = "pla.v:43.8-43.15" *)
wire _00_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _01_;
(* src = "pla.v:43.8-43.15" *)
wire _02_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _03_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _04_;
(* src = "pla.v:43.8-43.15" *)
wire _05_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _06_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _07_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _08_;
(* src = "pla.v:43.8-43.15" *)
wire _09_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _10_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _11_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _12_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _13_;
(* src = "pla.v:43.8-43.15" *)
wire _14_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _15_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _16_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _17_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _18_;
(* src = "pla.v:58.5-61.4|pla.v:43.8-43.15" *)
wire _19_;
(* src = "pla.v:43.8-43.15" *)
wire _20_;
wire _21_;
wire _22_;
wire _23_;
wire _24_;
wire _25_;
wire _26_;
wire _27_;
(* force_downto = 32'd1 *)
(* src = "test.v:8.13-8.24|/usr/bin/../share/yosys/techmap.v:270.26-270.27" *)
(* unused_bits = "1 2 3 4 5 6 7" *)
wire [7:0] _28_;
(* src = "test.v:2.8-2.11" *)
input clk;
wire clk;
(* src = "test.v:4.19-4.26" *)
output [0:7] counter;
wire [0:7] counter;
(* module_not_derived = 32'd1 *)
(* src = "pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(16'h6142),
.WIDTH(32'd4)
) _29_ (
.A({ counter[4:5], counter[7], counter[6] }),
.Y(_00_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(20'h25600),
.WIDTH(32'd5)
) _30_ (
.A({ _00_, counter[4:5], counter[7], counter[6] }),
.Y(_01_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(24'h059800),
.WIDTH(32'd6)
) _31_ (
.A({ _01_, _00_, counter[4:5], counter[7], counter[6] }),
.Y(_21_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(20'h64120),
.WIDTH(32'd5)
) _32_ (
.A({ counter[3:5], counter[7], counter[6] }),
.Y(_02_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(24'h109800),
.WIDTH(32'd6)
) _33_ (
.A({ _02_, counter[3:5], counter[7], counter[6] }),
.Y(_03_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(28'h054a000),
.WIDTH(32'd7)
) _34_ (
.A({ _03_, _02_, counter[3:5], counter[7], counter[6] }),
.Y(_04_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(32'd39157760),
.WIDTH(32'd8)
) _35_ (
.A({ _04_, _03_, _02_, counter[3:5], counter[7], counter[6] }),
.Y(_22_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(24'h640480),
.WIDTH(32'd6)
) _36_ (
.A({ counter[2:5], counter[7], counter[6] }),
.Y(_05_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(28'h1026000),
.WIDTH(32'd7)
) _37_ (
.A({ _05_, counter[2:5], counter[7], counter[6] }),
.Y(_06_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(32'd68321280),
.WIDTH(32'd8)
) _38_ (
.A({ _06_, _05_, counter[2:5], counter[7], counter[6] }),
.Y(_07_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(36'h015820000),
.WIDTH(32'd9)
) _39_ (
.A({ _07_, _06_, _05_, counter[2:5], counter[7], counter[6] }),
.Y(_08_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(40'h0095580000),
.WIDTH(32'd10)
) _40_ (
.A({ _08_, _07_, _06_, _05_, counter[2:5], counter[7], counter[6] }),
.Y(_23_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(28'h6401200),
.WIDTH(32'd7)
) _41_ (
.A({ counter[1:5], counter[7], counter[6] }),
.Y(_09_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(32'd269647872),
.WIDTH(32'd8)
) _42_ (
.A({ _09_, counter[1:5], counter[7], counter[6] }),
.Y(_10_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(36'h040260000),
.WIDTH(32'd9)
) _43_ (
.A({ _10_, _09_, counter[1:5], counter[7], counter[6] }),
.Y(_11_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(40'h0106080000),
.WIDTH(32'd10)
) _44_ (
.A({ _11_, _10_, _09_, counter[1:5], counter[7], counter[6] }),
.Y(_12_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(44'h00560200000),
.WIDTH(32'd11)
) _45_ (
.A({ _12_, _11_, _10_, _09_, counter[1:5], counter[7], counter[6] }),
.Y(_13_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(48'h002555800000),
.WIDTH(32'd12)
) _46_ (
.A({ _13_, _12_, _11_, _10_, _09_, counter[1:5], counter[7], counter[6] }),
.Y(_24_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(32'd1677740032),
.WIDTH(32'd8)
) _47_ (
.A({ counter[0:5], counter[7], counter[6] }),
.Y(_14_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(36'h101820000),
.WIDTH(32'd9)
) _48_ (
.A({ _14_, counter[0:5], counter[7], counter[6] }),
.Y(_15_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(40'h0400980000),
.WIDTH(32'd10)
) _49_ (
.A({ _15_, _14_, counter[0:5], counter[7], counter[6] }),
.Y(_16_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(44'h01004a00000),
.WIDTH(32'd11)
) _50_ (
.A({ _16_, _15_, _14_, counter[0:5], counter[7], counter[6] }),
.Y(_17_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(48'h004180800000),
.WIDTH(32'd12)
) _51_ (
.A({ _17_, _16_, _15_, _14_, counter[0:5], counter[7], counter[6] }),
.Y(_18_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(52'h0015802000000),
.WIDTH(32'd13)
) _52_ (
.A({ _18_, _17_, _16_, _15_, _14_, counter[0:5], counter[7], counter[6] }),
.Y(_19_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(56'h00095558000000),
.WIDTH(32'd14)
) _53_ (
.A({ _19_, _18_, _17_, _16_, _15_, _14_, counter[0:5], counter[7], counter[6] }),
.Y(_25_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(8'h96),
.WIDTH(32'd2)
) _54_ (
.A({ counter[7], counter[6] }),
.Y(_26_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:48.5-51.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'sd2),
.TABLE(12'h958),
.WIDTH(32'd3)
) _55_ (
.A({ counter[5], counter[7], counter[6] }),
.Y(_20_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:58.5-61.4|pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd2),
.TABLE(16'h1680),
.WIDTH(32'd4)
) _56_ (
.A({ _20_, counter[5], counter[7], counter[6] }),
.Y(_27_)
);
(* module_not_derived = 32'd1 *)
(* src = "pla.v:38.3-41.4" *)
GAL_SOP #(
.DEPTH(32'd1),
.TABLE(2'h1),
.WIDTH(32'd1)
) _57_ (
.A(counter[7]),
.Y(_28_[0])
);
(* src = "test.v:7.1-9.4" *)
DFF_P _58_ (
.C(clk),
.D(_28_[0]),
.Q(counter[7])
);
NDFF_P _59_ (
.C(clk),
.D(_26_),
.Q(counter[6])
);
NDFF_P _60_ (
.C(clk),
.D(_27_),
.Q(counter[5])
);
NDFF_P _61_ (
.C(clk),
.D(_21_),
.Q(counter[4])
);
NDFF_P _62_ (
.C(clk),
.D(_22_),
.Q(counter[3])
);
NDFF_P _63_ (
.C(clk),
.D(_23_),
.Q(counter[2])
);
NDFF_P _64_ (
.C(clk),
.D(_24_),
.Q(counter[1])
);
NDFF_P _65_ (
.C(clk),
.D(_25_),
.Q(counter[0])
);
endmodule