]> jspc29.x-matter.uni-frankfurt.de Git - tdc.git/commitdiff
new FIFO module
authorCahit <c.ugur@gsi.de>
Wed, 7 Oct 2015 14:07:56 +0000 (16:07 +0200)
committerCahit <c.ugur@gsi.de>
Wed, 7 Oct 2015 14:07:56 +0000 (16:07 +0200)
15 files changed:
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.edn [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.ipx [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.jhd [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.lpc [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.naf [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sort [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.srp [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sym [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.vhd [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg_generate.log [new file with mode: 0644]
base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd [new file with mode: 0644]
base/cores/ecp3/FIFO/generate_core.tcl
base/cores/ecp3/FIFO/generate_ngd.tcl
base/cores/ecp3/FIFO/msg_file.log
base/cores/ecp3/FIFO/tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd [new file with mode: 0644]

diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.edn b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.edn
new file mode 100644 (file)
index 0000000..727bc6b
--- /dev/null
@@ -0,0 +1,2551 @@
+(edif FIFO_DC_36x64_DynThr_OutReg
+  (edifVersion 2 0 0)
+  (edifLevel 0)
+  (keywordMap (keywordLevel 0))
+  (status
+    (written
+      (timestamp 2015 9 21 11 51 55)
+      (program "SCUBA" (version "Diamond (64-bit) 3.5.0.102"))))
+      (comment "/opt/lattice/diamond/3.5_x64/ispfpga/bin/lin64/scuba -w -n FIFO_DC_36x64_DynThr_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type ebfifo -depth 64 -width 36 -depth 64 -rdata_width 36 -regout -no_enable -pe -1 -pf 0 ")
+  (library ORCLIB
+    (edifLevel 0)
+    (technology
+      (numberDefinition))
+    (cell AGEB2
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A0
+            (direction INPUT))
+          (port A1
+            (direction INPUT))
+          (port B0
+            (direction INPUT))
+          (port B1
+            (direction INPUT))
+          (port CI
+            (direction INPUT))
+          (port GE
+            (direction OUTPUT)))))
+    (cell AND2
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A
+            (direction INPUT))
+          (port B
+            (direction INPUT))
+          (port Z
+            (direction OUTPUT)))))
+    (cell CU2
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port CI
+            (direction INPUT))
+          (port PC0
+            (direction INPUT))
+          (port PC1
+            (direction INPUT))
+          (port CO
+            (direction OUTPUT))
+          (port NC0
+            (direction OUTPUT))
+          (port NC1
+            (direction OUTPUT)))))
+    (cell FADD2B
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A0
+            (direction INPUT))
+          (port A1
+            (direction INPUT))
+          (port B0
+            (direction INPUT))
+          (port B1
+            (direction INPUT))
+          (port CI
+            (direction INPUT))
+          (port COUT
+            (direction OUTPUT))
+          (port S0
+            (direction OUTPUT))
+          (port S1
+            (direction OUTPUT)))))
+    (cell FSUB2B
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A0
+            (direction INPUT))
+          (port A1
+            (direction INPUT))
+          (port B0
+            (direction INPUT))
+          (port B1
+            (direction INPUT))
+          (port BI
+            (direction INPUT))
+          (port BOUT
+            (direction OUTPUT))
+          (port S0
+            (direction OUTPUT))
+          (port S1
+            (direction OUTPUT)))))
+    (cell FD1P3BX
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port D
+            (direction INPUT))
+          (port SP
+            (direction INPUT))
+          (port CK
+            (direction INPUT))
+          (port PD
+            (direction INPUT))
+          (port Q
+            (direction OUTPUT)))))
+    (cell FD1P3DX
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port D
+            (direction INPUT))
+          (port SP
+            (direction INPUT))
+          (port CK
+            (direction INPUT))
+          (port CD
+            (direction INPUT))
+          (port Q
+            (direction OUTPUT)))))
+    (cell FD1S3BX
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port D
+            (direction INPUT))
+          (port CK
+            (direction INPUT))
+          (port PD
+            (direction INPUT))
+          (port Q
+            (direction OUTPUT)))))
+    (cell FD1S3DX
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port D
+            (direction INPUT))
+          (port CK
+            (direction INPUT))
+          (port CD
+            (direction INPUT))
+          (port Q
+            (direction OUTPUT)))))
+    (cell INV
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A
+            (direction INPUT))
+          (port Z
+            (direction OUTPUT)))))
+    (cell OR2
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A
+            (direction INPUT))
+          (port B
+            (direction INPUT))
+          (port Z
+            (direction OUTPUT)))))
+    (cell ROM16X1A
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port AD3
+            (direction INPUT))
+          (port AD2
+            (direction INPUT))
+          (port AD1
+            (direction INPUT))
+          (port AD0
+            (direction INPUT))
+          (port DO0
+            (direction OUTPUT)))))
+    (cell VHI
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port Z
+            (direction OUTPUT)))))
+    (cell VLO
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port Z
+            (direction OUTPUT)))))
+    (cell XOR2
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port A
+            (direction INPUT))
+          (port B
+            (direction INPUT))
+          (port Z
+            (direction OUTPUT)))))
+    (cell PDPW16KC
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port DI0
+            (direction INPUT))
+          (port DI1
+            (direction INPUT))
+          (port DI2
+            (direction INPUT))
+          (port DI3
+            (direction INPUT))
+          (port DI4
+            (direction INPUT))
+          (port DI5
+            (direction INPUT))
+          (port DI6
+            (direction INPUT))
+          (port DI7
+            (direction INPUT))
+          (port DI8
+            (direction INPUT))
+          (port DI9
+            (direction INPUT))
+          (port DI10
+            (direction INPUT))
+          (port DI11
+            (direction INPUT))
+          (port DI12
+            (direction INPUT))
+          (port DI13
+            (direction INPUT))
+          (port DI14
+            (direction INPUT))
+          (port DI15
+            (direction INPUT))
+          (port DI16
+            (direction INPUT))
+          (port DI17
+            (direction INPUT))
+          (port DI18
+            (direction INPUT))
+          (port DI19
+            (direction INPUT))
+          (port DI20
+            (direction INPUT))
+          (port DI21
+            (direction INPUT))
+          (port DI22
+            (direction INPUT))
+          (port DI23
+            (direction INPUT))
+          (port DI24
+            (direction INPUT))
+          (port DI25
+            (direction INPUT))
+          (port DI26
+            (direction INPUT))
+          (port DI27
+            (direction INPUT))
+          (port DI28
+            (direction INPUT))
+          (port DI29
+            (direction INPUT))
+          (port DI30
+            (direction INPUT))
+          (port DI31
+            (direction INPUT))
+          (port DI32
+            (direction INPUT))
+          (port DI33
+            (direction INPUT))
+          (port DI34
+            (direction INPUT))
+          (port DI35
+            (direction INPUT))
+          (port ADW0
+            (direction INPUT))
+          (port ADW1
+            (direction INPUT))
+          (port ADW2
+            (direction INPUT))
+          (port ADW3
+            (direction INPUT))
+          (port ADW4
+            (direction INPUT))
+          (port ADW5
+            (direction INPUT))
+          (port ADW6
+            (direction INPUT))
+          (port ADW7
+            (direction INPUT))
+          (port ADW8
+            (direction INPUT))
+          (port BE0
+            (direction INPUT))
+          (port BE1
+            (direction INPUT))
+          (port BE2
+            (direction INPUT))
+          (port BE3
+            (direction INPUT))
+          (port CEW
+            (direction INPUT))
+          (port CLKW
+            (direction INPUT))
+          (port CSW0
+            (direction INPUT))
+          (port CSW1
+            (direction INPUT))
+          (port CSW2
+            (direction INPUT))
+          (port ADR0
+            (direction INPUT))
+          (port ADR1
+            (direction INPUT))
+          (port ADR2
+            (direction INPUT))
+          (port ADR3
+            (direction INPUT))
+          (port ADR4
+            (direction INPUT))
+          (port ADR5
+            (direction INPUT))
+          (port ADR6
+            (direction INPUT))
+          (port ADR7
+            (direction INPUT))
+          (port ADR8
+            (direction INPUT))
+          (port ADR9
+            (direction INPUT))
+          (port ADR10
+            (direction INPUT))
+          (port ADR11
+            (direction INPUT))
+          (port ADR12
+            (direction INPUT))
+          (port ADR13
+            (direction INPUT))
+          (port CER
+            (direction INPUT))
+          (port CLKR
+            (direction INPUT))
+          (port CSR0
+            (direction INPUT))
+          (port CSR1
+            (direction INPUT))
+          (port CSR2
+            (direction INPUT))
+          (port RST
+            (direction INPUT))
+          (port DO0
+            (direction OUTPUT))
+          (port DO1
+            (direction OUTPUT))
+          (port DO2
+            (direction OUTPUT))
+          (port DO3
+            (direction OUTPUT))
+          (port DO4
+            (direction OUTPUT))
+          (port DO5
+            (direction OUTPUT))
+          (port DO6
+            (direction OUTPUT))
+          (port DO7
+            (direction OUTPUT))
+          (port DO8
+            (direction OUTPUT))
+          (port DO9
+            (direction OUTPUT))
+          (port DO10
+            (direction OUTPUT))
+          (port DO11
+            (direction OUTPUT))
+          (port DO12
+            (direction OUTPUT))
+          (port DO13
+            (direction OUTPUT))
+          (port DO14
+            (direction OUTPUT))
+          (port DO15
+            (direction OUTPUT))
+          (port DO16
+            (direction OUTPUT))
+          (port DO17
+            (direction OUTPUT))
+          (port DO18
+            (direction OUTPUT))
+          (port DO19
+            (direction OUTPUT))
+          (port DO20
+            (direction OUTPUT))
+          (port DO21
+            (direction OUTPUT))
+          (port DO22
+            (direction OUTPUT))
+          (port DO23
+            (direction OUTPUT))
+          (port DO24
+            (direction OUTPUT))
+          (port DO25
+            (direction OUTPUT))
+          (port DO26
+            (direction OUTPUT))
+          (port DO27
+            (direction OUTPUT))
+          (port DO28
+            (direction OUTPUT))
+          (port DO29
+            (direction OUTPUT))
+          (port DO30
+            (direction OUTPUT))
+          (port DO31
+            (direction OUTPUT))
+          (port DO32
+            (direction OUTPUT))
+          (port DO33
+            (direction OUTPUT))
+          (port DO34
+            (direction OUTPUT))
+          (port DO35
+            (direction OUTPUT)))))
+    (cell FIFO_DC_36x64_DynThr_OutReg
+      (cellType GENERIC)
+      (view view1
+        (viewType NETLIST)
+        (interface
+          (port (array (rename Data "Data(35:0)") 36)
+            (direction INPUT))
+          (port WrClock
+            (direction INPUT))
+          (port RdClock
+            (direction INPUT))
+          (port WrEn
+            (direction INPUT))
+          (port RdEn
+            (direction INPUT))
+          (port Reset
+            (direction INPUT))
+          (port RPReset
+            (direction INPUT))
+          (port (array (rename AmFullThresh "AmFullThresh(5:0)") 6)
+            (direction INPUT))
+          (port (array (rename Q "Q(35:0)") 36)
+            (direction OUTPUT))
+          (port Empty
+            (direction OUTPUT))
+          (port Full
+            (direction OUTPUT))
+          (port AlmostFull
+            (direction OUTPUT)))
+        (property NGD_DRC_MASK (integer 1))
+        (contents
+          (instance AND2_t15
+            (viewRef view1 
+              (cellRef AND2)))
+          (instance INV_1
+            (viewRef view1 
+              (cellRef INV)))
+          (instance AND2_t14
+            (viewRef view1 
+              (cellRef AND2)))
+          (instance INV_0
+            (viewRef view1 
+              (cellRef INV)))
+          (instance OR2_t13
+            (viewRef view1 
+              (cellRef OR2)))
+          (instance XOR2_t12
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t11
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t10
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t9
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t8
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t7
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t6
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t5
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t4
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t3
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t2
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance XOR2_t1
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance LUT4_15
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_14
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_13
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_12
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_11
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_10
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_9
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_8
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_7
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_6
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_5
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance LUT4_4
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x6996")))
+          (instance XOR2_t0
+            (viewRef view1 
+              (cellRef XOR2)))
+          (instance LUT4_3
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x0410")))
+          (instance LUT4_2
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x1004")))
+          (instance LUT4_1
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x0140")))
+          (instance LUT4_0
+            (viewRef view1 
+              (cellRef ROM16X1A))
+            (property initval
+              (string "0x4001")))
+          (instance pdp_ram_0_0_0
+            (viewRef view1 
+              (cellRef PDPW16KC))
+            (property MEM_LPC_FILE
+              (string "FIFO_DC_36x64_DynThr_OutReg.lpc"))
+            (property MEM_INIT_FILE
+              (string ""))
+            (property CSDECODE_R
+              (string "0b001"))
+            (property CSDECODE_W
+              (string "0b001"))
+            (property GSR
+              (string "DISABLED"))
+            (property RESETMODE
+              (string "SYNC"))
+            (property REGMODE
+              (string "OUTREG"))
+            (property DATA_WIDTH_R
+              (string "36"))
+            (property DATA_WIDTH_W
+              (string "36")))
+          (instance FF_79
+            (viewRef view1 
+              (cellRef FD1P3BX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_78
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_77
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_76
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_75
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_74
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_73
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_72
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_71
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_70
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_69
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_68
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_67
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_66
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_65
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_64
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_63
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_62
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_61
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_60
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_59
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_58
+            (viewRef view1 
+              (cellRef FD1P3BX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_57
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_56
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_55
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_54
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_53
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_52
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_51
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_50
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_49
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_48
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_47
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_46
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_45
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_44
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_43
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_42
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_41
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_40
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_39
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_38
+            (viewRef view1 
+              (cellRef FD1P3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_37
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_36
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_35
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_34
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_33
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_32
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_31
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_30
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_29
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_28
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_27
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_26
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_25
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_24
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_23
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_22
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_21
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_20
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_19
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_18
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_17
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_16
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_15
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_14
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_13
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_12
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_11
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_10
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_9
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_8
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_7
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_6
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_5
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_4
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_3
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_2
+            (viewRef view1 
+              (cellRef FD1S3BX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_1
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance FF_0
+            (viewRef view1 
+              (cellRef FD1S3DX))
+            (property GSR
+              (string "ENABLED")))
+          (instance w_gctr_cia
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance w_gctr_0
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance w_gctr_1
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance w_gctr_2
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance w_gctr_3
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance r_gctr_cia
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance r_gctr_0
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance r_gctr_1
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance r_gctr_2
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance r_gctr_3
+            (viewRef view1 
+              (cellRef CU2)))
+          (instance precin_inst264
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance scuba_vhi_inst
+            (viewRef view1 
+              (cellRef VHI)))
+          (instance wcnt_0
+            (viewRef view1 
+              (cellRef FSUB2B)))
+          (instance wcnt_1
+            (viewRef view1 
+              (cellRef FSUB2B)))
+          (instance wcnt_2
+            (viewRef view1 
+              (cellRef FSUB2B)))
+          (instance wcnt_3
+            (viewRef view1 
+              (cellRef FSUB2B)))
+          (instance wcntd
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance empty_cmp_ci_a
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance empty_cmp_0
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance empty_cmp_1
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance empty_cmp_2
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance empty_cmp_3
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance a0
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance full_cmp_ci_a
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance full_cmp_0
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance full_cmp_1
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance full_cmp_2
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance full_cmp_3
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance a1
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance af_d_cmp_ci_a
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (instance af_d_cmp_0
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance af_d_cmp_1
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance af_d_cmp_2
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance af_d_cmp_3
+            (viewRef view1 
+              (cellRef AGEB2)))
+          (instance scuba_vlo_inst
+            (viewRef view1 
+              (cellRef VLO)))
+          (instance a2
+            (viewRef view1 
+              (cellRef FADD2B)))
+          (net invout_1
+            (joined
+              (portRef Z (instanceRef INV_1))
+              (portRef B (instanceRef AND2_t15))))
+          (net invout_0
+            (joined
+              (portRef Z (instanceRef INV_0))
+              (portRef B (instanceRef AND2_t14))))
+          (net w_gdata_0
+            (joined
+              (portRef D (instanceRef FF_72))
+              (portRef Z (instanceRef XOR2_t12))))
+          (net w_gdata_1
+            (joined
+              (portRef D (instanceRef FF_71))
+              (portRef Z (instanceRef XOR2_t11))))
+          (net w_gdata_2
+            (joined
+              (portRef D (instanceRef FF_70))
+              (portRef Z (instanceRef XOR2_t10))))
+          (net w_gdata_3
+            (joined
+              (portRef D (instanceRef FF_69))
+              (portRef Z (instanceRef XOR2_t9))))
+          (net w_gdata_4
+            (joined
+              (portRef D (instanceRef FF_68))
+              (portRef Z (instanceRef XOR2_t8))))
+          (net w_gdata_5
+            (joined
+              (portRef D (instanceRef FF_67))
+              (portRef Z (instanceRef XOR2_t7))))
+          (net wptr_0
+            (joined
+              (portRef Q (instanceRef FF_65))
+              (portRef ADW0 (instanceRef pdp_ram_0_0_0))))
+          (net wptr_1
+            (joined
+              (portRef Q (instanceRef FF_64))
+              (portRef ADW1 (instanceRef pdp_ram_0_0_0))))
+          (net wptr_2
+            (joined
+              (portRef Q (instanceRef FF_63))
+              (portRef ADW2 (instanceRef pdp_ram_0_0_0))))
+          (net wptr_3
+            (joined
+              (portRef Q (instanceRef FF_62))
+              (portRef ADW3 (instanceRef pdp_ram_0_0_0))))
+          (net wptr_4
+            (joined
+              (portRef Q (instanceRef FF_61))
+              (portRef ADW4 (instanceRef pdp_ram_0_0_0))))
+          (net wptr_5
+            (joined
+              (portRef Q (instanceRef FF_60))
+              (portRef ADW5 (instanceRef pdp_ram_0_0_0))))
+          (net wptr_6
+            (joined
+              (portRef Q (instanceRef FF_59))
+              (portRef AD3 (instanceRef LUT4_1))
+              (portRef AD3 (instanceRef LUT4_0))))
+          (net r_gdata_0
+            (joined
+              (portRef D (instanceRef FF_51))
+              (portRef Z (instanceRef XOR2_t6))))
+          (net r_gdata_1
+            (joined
+              (portRef D (instanceRef FF_50))
+              (portRef Z (instanceRef XOR2_t5))))
+          (net r_gdata_2
+            (joined
+              (portRef D (instanceRef FF_49))
+              (portRef Z (instanceRef XOR2_t4))))
+          (net r_gdata_3
+            (joined
+              (portRef D (instanceRef FF_48))
+              (portRef Z (instanceRef XOR2_t3))))
+          (net r_gdata_4
+            (joined
+              (portRef D (instanceRef FF_47))
+              (portRef Z (instanceRef XOR2_t2))))
+          (net r_gdata_5
+            (joined
+              (portRef D (instanceRef FF_46))
+              (portRef Z (instanceRef XOR2_t1))))
+          (net rptr_0
+            (joined
+              (portRef Q (instanceRef FF_44))
+              (portRef ADR5 (instanceRef pdp_ram_0_0_0))))
+          (net rptr_1
+            (joined
+              (portRef Q (instanceRef FF_43))
+              (portRef ADR6 (instanceRef pdp_ram_0_0_0))))
+          (net rptr_2
+            (joined
+              (portRef Q (instanceRef FF_42))
+              (portRef ADR7 (instanceRef pdp_ram_0_0_0))))
+          (net rptr_3
+            (joined
+              (portRef Q (instanceRef FF_41))
+              (portRef ADR8 (instanceRef pdp_ram_0_0_0))))
+          (net rptr_4
+            (joined
+              (portRef Q (instanceRef FF_40))
+              (portRef ADR9 (instanceRef pdp_ram_0_0_0))))
+          (net rptr_5
+            (joined
+              (portRef Q (instanceRef FF_39))
+              (portRef ADR10 (instanceRef pdp_ram_0_0_0))))
+          (net rptr_6
+            (joined
+              (portRef Q (instanceRef FF_38))
+              (portRef AD3 (instanceRef LUT4_3))
+              (portRef AD3 (instanceRef LUT4_2))))
+          (net w_gcount_0
+            (joined
+              (portRef D (instanceRef FF_37))
+              (portRef Q (instanceRef FF_72))))
+          (net w_gcount_1
+            (joined
+              (portRef D (instanceRef FF_36))
+              (portRef Q (instanceRef FF_71))))
+          (net w_gcount_2
+            (joined
+              (portRef D (instanceRef FF_35))
+              (portRef Q (instanceRef FF_70))))
+          (net w_gcount_3
+            (joined
+              (portRef D (instanceRef FF_34))
+              (portRef Q (instanceRef FF_69))))
+          (net w_gcount_4
+            (joined
+              (portRef D (instanceRef FF_33))
+              (portRef Q (instanceRef FF_68))))
+          (net w_gcount_5
+            (joined
+              (portRef D (instanceRef FF_32))
+              (portRef Q (instanceRef FF_67))))
+          (net w_gcount_6
+            (joined
+              (portRef D (instanceRef FF_31))
+              (portRef Q (instanceRef FF_66))))
+          (net r_gcount_0
+            (joined
+              (portRef D (instanceRef FF_30))
+              (portRef Q (instanceRef FF_51))))
+          (net r_gcount_1
+            (joined
+              (portRef D (instanceRef FF_29))
+              (portRef Q (instanceRef FF_50))))
+          (net r_gcount_2
+            (joined
+              (portRef D (instanceRef FF_28))
+              (portRef Q (instanceRef FF_49))))
+          (net r_gcount_3
+            (joined
+              (portRef D (instanceRef FF_27))
+              (portRef Q (instanceRef FF_48))))
+          (net r_gcount_4
+            (joined
+              (portRef D (instanceRef FF_26))
+              (portRef Q (instanceRef FF_47))))
+          (net r_gcount_5
+            (joined
+              (portRef D (instanceRef FF_25))
+              (portRef Q (instanceRef FF_46))))
+          (net r_gcount_6
+            (joined
+              (portRef D (instanceRef FF_24))
+              (portRef Q (instanceRef FF_45))))
+          (net w_gcount_r20
+            (joined
+              (portRef Q (instanceRef FF_23))
+              (portRef AD3 (instanceRef LUT4_10))))
+          (net w_gcount_r0
+            (joined
+              (portRef D (instanceRef FF_23))
+              (portRef Q (instanceRef FF_37))))
+          (net w_gcount_r21
+            (joined
+              (portRef Q (instanceRef FF_22))
+              (portRef AD3 (instanceRef LUT4_11))
+              (portRef AD2 (instanceRef LUT4_10))))
+          (net w_gcount_r1
+            (joined
+              (portRef D (instanceRef FF_22))
+              (portRef Q (instanceRef FF_36))))
+          (net w_gcount_r22
+            (joined
+              (portRef Q (instanceRef FF_21))
+              (portRef AD3 (instanceRef LUT4_12))
+              (portRef AD2 (instanceRef LUT4_11))
+              (portRef AD1 (instanceRef LUT4_10))))
+          (net w_gcount_r2
+            (joined
+              (portRef D (instanceRef FF_21))
+              (portRef Q (instanceRef FF_35))))
+          (net w_gcount_r23
+            (joined
+              (portRef Q (instanceRef FF_20))
+              (portRef AD3 (instanceRef LUT4_15))
+              (portRef AD2 (instanceRef LUT4_12))
+              (portRef AD1 (instanceRef LUT4_11))))
+          (net w_gcount_r3
+            (joined
+              (portRef D (instanceRef FF_20))
+              (portRef Q (instanceRef FF_34))))
+          (net w_gcount_r24
+            (joined
+              (portRef Q (instanceRef FF_19))
+              (portRef AD2 (instanceRef LUT4_15))
+              (portRef AD3 (instanceRef LUT4_13))
+              (portRef AD1 (instanceRef LUT4_12))))
+          (net w_gcount_r4
+            (joined
+              (portRef D (instanceRef FF_19))
+              (portRef Q (instanceRef FF_33))))
+          (net w_gcount_r25
+            (joined
+              (portRef Q (instanceRef FF_18))
+              (portRef AD1 (instanceRef LUT4_15))
+              (portRef AD3 (instanceRef LUT4_14))
+              (portRef AD2 (instanceRef LUT4_13))))
+          (net w_gcount_r5
+            (joined
+              (portRef D (instanceRef FF_18))
+              (portRef Q (instanceRef FF_32))))
+          (net w_gcount_r26
+            (joined
+              (portRef Q (instanceRef FF_17))
+              (portRef AD0 (instanceRef LUT4_15))
+              (portRef AD2 (instanceRef LUT4_14))
+              (portRef AD1 (instanceRef LUT4_13))
+              (portRef AD1 (instanceRef LUT4_3))
+              (portRef AD1 (instanceRef LUT4_2))))
+          (net w_gcount_r6
+            (joined
+              (portRef D (instanceRef FF_17))
+              (portRef Q (instanceRef FF_31))))
+          (net r_gcount_w20
+            (joined
+              (portRef Q (instanceRef FF_16))
+              (portRef AD3 (instanceRef LUT4_4))))
+          (net r_gcount_w0
+            (joined
+              (portRef D (instanceRef FF_16))
+              (portRef Q (instanceRef FF_30))))
+          (net r_gcount_w21
+            (joined
+              (portRef Q (instanceRef FF_15))
+              (portRef AD3 (instanceRef LUT4_5))
+              (portRef AD2 (instanceRef LUT4_4))))
+          (net r_gcount_w1
+            (joined
+              (portRef D (instanceRef FF_15))
+              (portRef Q (instanceRef FF_29))))
+          (net r_gcount_w22
+            (joined
+              (portRef Q (instanceRef FF_14))
+              (portRef AD3 (instanceRef LUT4_6))
+              (portRef AD2 (instanceRef LUT4_5))
+              (portRef AD1 (instanceRef LUT4_4))))
+          (net r_gcount_w2
+            (joined
+              (portRef D (instanceRef FF_14))
+              (portRef Q (instanceRef FF_28))))
+          (net r_gcount_w23
+            (joined
+              (portRef Q (instanceRef FF_13))
+              (portRef AD3 (instanceRef LUT4_9))
+              (portRef AD2 (instanceRef LUT4_6))
+              (portRef AD1 (instanceRef LUT4_5))))
+          (net r_gcount_w3
+            (joined
+              (portRef D (instanceRef FF_13))
+              (portRef Q (instanceRef FF_27))))
+          (net r_gcount_w24
+            (joined
+              (portRef Q (instanceRef FF_12))
+              (portRef AD2 (instanceRef LUT4_9))
+              (portRef AD3 (instanceRef LUT4_7))
+              (portRef AD1 (instanceRef LUT4_6))))
+          (net r_gcount_w4
+            (joined
+              (portRef D (instanceRef FF_12))
+              (portRef Q (instanceRef FF_26))))
+          (net r_gcount_w25
+            (joined
+              (portRef Q (instanceRef FF_11))
+              (portRef AD1 (instanceRef LUT4_9))
+              (portRef AD3 (instanceRef LUT4_8))
+              (portRef AD2 (instanceRef LUT4_7))))
+          (net r_gcount_w5
+            (joined
+              (portRef D (instanceRef FF_11))
+              (portRef Q (instanceRef FF_25))))
+          (net r_gcount_w26
+            (joined
+              (portRef Q (instanceRef FF_10))
+              (portRef AD0 (instanceRef LUT4_9))
+              (portRef AD2 (instanceRef LUT4_8))
+              (portRef AD1 (instanceRef LUT4_7))
+              (portRef B (instanceRef XOR2_t0))
+              (portRef AD1 (instanceRef LUT4_1))
+              (portRef AD1 (instanceRef LUT4_0))))
+          (net r_gcount_w6
+            (joined
+              (portRef D (instanceRef FF_10))
+              (portRef Q (instanceRef FF_24))))
+          (net rRst
+            (joined
+              (portRef PD (instanceRef FF_2))
+              (portRef Z (instanceRef OR2_t13))
+              (portRef PD (instanceRef FF_58))
+              (portRef CD (instanceRef FF_57))
+              (portRef CD (instanceRef FF_56))
+              (portRef CD (instanceRef FF_55))
+              (portRef CD (instanceRef FF_54))
+              (portRef CD (instanceRef FF_53))
+              (portRef CD (instanceRef FF_52))
+              (portRef CD (instanceRef FF_51))
+              (portRef CD (instanceRef FF_50))
+              (portRef CD (instanceRef FF_49))
+              (portRef CD (instanceRef FF_48))
+              (portRef CD (instanceRef FF_47))
+              (portRef CD (instanceRef FF_46))
+              (portRef CD (instanceRef FF_45))
+              (portRef CD (instanceRef FF_44))
+              (portRef CD (instanceRef FF_43))
+              (portRef CD (instanceRef FF_42))
+              (portRef CD (instanceRef FF_41))
+              (portRef CD (instanceRef FF_40))
+              (portRef CD (instanceRef FF_39))
+              (portRef CD (instanceRef FF_38))
+              (portRef CD (instanceRef FF_30))
+              (portRef CD (instanceRef FF_29))
+              (portRef CD (instanceRef FF_28))
+              (portRef CD (instanceRef FF_27))
+              (portRef CD (instanceRef FF_26))
+              (portRef CD (instanceRef FF_25))
+              (portRef CD (instanceRef FF_24))
+              (portRef CD (instanceRef FF_16))
+              (portRef CD (instanceRef FF_15))
+              (portRef CD (instanceRef FF_14))
+              (portRef CD (instanceRef FF_13))
+              (portRef CD (instanceRef FF_12))
+              (portRef CD (instanceRef FF_11))
+              (portRef CD (instanceRef FF_10))))
+          (net iwcount_0
+            (joined
+              (portRef NC0 (instanceRef w_gctr_0))
+              (portRef D (instanceRef FF_79))))
+          (net iwcount_1
+            (joined
+              (portRef NC1 (instanceRef w_gctr_0))
+              (portRef D (instanceRef FF_78))))
+          (net w_gctr_ci
+            (joined
+              (portRef CI (instanceRef w_gctr_0))
+              (portRef COUT (instanceRef w_gctr_cia))))
+          (net iwcount_2
+            (joined
+              (portRef NC0 (instanceRef w_gctr_1))
+              (portRef D (instanceRef FF_77))))
+          (net iwcount_3
+            (joined
+              (portRef NC1 (instanceRef w_gctr_1))
+              (portRef D (instanceRef FF_76))))
+          (net co0
+            (joined
+              (portRef CI (instanceRef w_gctr_1))
+              (portRef CO (instanceRef w_gctr_0))))
+          (net iwcount_4
+            (joined
+              (portRef NC0 (instanceRef w_gctr_2))
+              (portRef D (instanceRef FF_75))))
+          (net iwcount_5
+            (joined
+              (portRef NC1 (instanceRef w_gctr_2))
+              (portRef D (instanceRef FF_74))))
+          (net co1
+            (joined
+              (portRef CI (instanceRef w_gctr_2))
+              (portRef CO (instanceRef w_gctr_1))))
+          (net iwcount_6
+            (joined
+              (portRef NC0 (instanceRef w_gctr_3))
+              (portRef D (instanceRef FF_73))))
+          (net co3
+            (joined
+              (portRef CO (instanceRef w_gctr_3))))
+          (net co2
+            (joined
+              (portRef CI (instanceRef w_gctr_3))
+              (portRef CO (instanceRef w_gctr_2))))
+          (net wcount_6
+            (joined
+              (portRef PC0 (instanceRef w_gctr_3))
+              (portRef B (instanceRef XOR2_t7))
+              (portRef A (instanceRef XOR2_t0))
+              (portRef AD2 (instanceRef LUT4_1))
+              (portRef AD2 (instanceRef LUT4_0))
+              (portRef Q (instanceRef FF_73))
+              (portRef D (instanceRef FF_66))
+              (portRef D (instanceRef FF_59))))
+          (net ircount_0
+            (joined
+              (portRef NC0 (instanceRef r_gctr_0))
+              (portRef D (instanceRef FF_58))))
+          (net ircount_1
+            (joined
+              (portRef NC1 (instanceRef r_gctr_0))
+              (portRef D (instanceRef FF_57))))
+          (net r_gctr_ci
+            (joined
+              (portRef CI (instanceRef r_gctr_0))
+              (portRef COUT (instanceRef r_gctr_cia))))
+          (net ircount_2
+            (joined
+              (portRef NC0 (instanceRef r_gctr_1))
+              (portRef D (instanceRef FF_56))))
+          (net ircount_3
+            (joined
+              (portRef NC1 (instanceRef r_gctr_1))
+              (portRef D (instanceRef FF_55))))
+          (net co0_1
+            (joined
+              (portRef CI (instanceRef r_gctr_1))
+              (portRef CO (instanceRef r_gctr_0))))
+          (net ircount_4
+            (joined
+              (portRef NC0 (instanceRef r_gctr_2))
+              (portRef D (instanceRef FF_54))))
+          (net ircount_5
+            (joined
+              (portRef NC1 (instanceRef r_gctr_2))
+              (portRef D (instanceRef FF_53))))
+          (net co1_1
+            (joined
+              (portRef CI (instanceRef r_gctr_2))
+              (portRef CO (instanceRef r_gctr_1))))
+          (net ircount_6
+            (joined
+              (portRef NC0 (instanceRef r_gctr_3))
+              (portRef D (instanceRef FF_52))))
+          (net co3_1
+            (joined
+              (portRef CO (instanceRef r_gctr_3))))
+          (net co2_1
+            (joined
+              (portRef CI (instanceRef r_gctr_3))
+              (portRef CO (instanceRef r_gctr_2))))
+          (net rcount_6
+            (joined
+              (portRef PC0 (instanceRef r_gctr_3))
+              (portRef B (instanceRef XOR2_t1))
+              (portRef AD2 (instanceRef LUT4_3))
+              (portRef AD2 (instanceRef LUT4_2))
+              (portRef Q (instanceRef FF_52))
+              (portRef D (instanceRef FF_45))
+              (portRef D (instanceRef FF_38))))
+          (net wcnt_sub_0
+            (joined
+              (portRef S1 (instanceRef wcnt_0))
+              (portRef D (instanceRef FF_9))))
+          (net precin
+            (joined
+              (portRef BI (instanceRef wcnt_0))
+              (portRef COUT (instanceRef precin_inst264))))
+          (net scuba_vhi
+            (joined
+              (portRef Z (instanceRef scuba_vhi_inst))
+              (portRef CSW0 (instanceRef pdp_ram_0_0_0))
+              (portRef BE3 (instanceRef pdp_ram_0_0_0))
+              (portRef BE2 (instanceRef pdp_ram_0_0_0))
+              (portRef BE1 (instanceRef pdp_ram_0_0_0))
+              (portRef BE0 (instanceRef pdp_ram_0_0_0))
+              (portRef CER (instanceRef pdp_ram_0_0_0))
+              (portRef B1 (instanceRef w_gctr_cia))
+              (portRef A1 (instanceRef w_gctr_cia))
+              (portRef B1 (instanceRef r_gctr_cia))
+              (portRef A1 (instanceRef r_gctr_cia))
+              (portRef A0 (instanceRef wcnt_0))))
+          (net wcnt_sub_1
+            (joined
+              (portRef S0 (instanceRef wcnt_1))
+              (portRef D (instanceRef FF_8))))
+          (net wcnt_sub_2
+            (joined
+              (portRef S1 (instanceRef wcnt_1))
+              (portRef D (instanceRef FF_7))))
+          (net co0_2
+            (joined
+              (portRef BI (instanceRef wcnt_1))
+              (portRef BOUT (instanceRef wcnt_0))))
+          (net wcnt_sub_3
+            (joined
+              (portRef S0 (instanceRef wcnt_2))
+              (portRef D (instanceRef FF_6))))
+          (net wcnt_sub_4
+            (joined
+              (portRef S1 (instanceRef wcnt_2))
+              (portRef D (instanceRef FF_5))))
+          (net co1_2
+            (joined
+              (portRef BI (instanceRef wcnt_2))
+              (portRef BOUT (instanceRef wcnt_1))))
+          (net wcnt_sub_5
+            (joined
+              (portRef S0 (instanceRef wcnt_3))
+              (portRef D (instanceRef FF_4))))
+          (net wcnt_sub_6
+            (joined
+              (portRef S1 (instanceRef wcnt_3))
+              (portRef D (instanceRef FF_3))))
+          (net co2_2
+            (joined
+              (portRef BI (instanceRef wcnt_3))
+              (portRef BOUT (instanceRef wcnt_2))))
+          (net wcnt_sub_msb
+            (joined
+              (portRef A1 (instanceRef wcnt_3))
+              (portRef Z (instanceRef XOR2_t0))))
+          (net co3_2d
+            (joined
+              (portRef S0 (instanceRef wcntd))))
+          (net co3_2
+            (joined
+              (portRef CI (instanceRef wcntd))
+              (portRef BOUT (instanceRef wcnt_3))))
+          (net rden_i
+            (joined
+              (portRef A1 (instanceRef empty_cmp_ci_a))
+              (portRef Z (instanceRef AND2_t14))
+              (portRef CSR0 (instanceRef pdp_ram_0_0_0))
+              (portRef SP (instanceRef FF_58))
+              (portRef SP (instanceRef FF_57))
+              (portRef SP (instanceRef FF_56))
+              (portRef SP (instanceRef FF_55))
+              (portRef SP (instanceRef FF_54))
+              (portRef SP (instanceRef FF_53))
+              (portRef SP (instanceRef FF_52))
+              (portRef SP (instanceRef FF_51))
+              (portRef SP (instanceRef FF_50))
+              (portRef SP (instanceRef FF_49))
+              (portRef SP (instanceRef FF_48))
+              (portRef SP (instanceRef FF_47))
+              (portRef SP (instanceRef FF_46))
+              (portRef SP (instanceRef FF_45))
+              (portRef SP (instanceRef FF_44))
+              (portRef SP (instanceRef FF_43))
+              (portRef SP (instanceRef FF_42))
+              (portRef SP (instanceRef FF_41))
+              (portRef SP (instanceRef FF_40))
+              (portRef SP (instanceRef FF_39))
+              (portRef SP (instanceRef FF_38))
+              (portRef B1 (instanceRef empty_cmp_ci_a))))
+          (net cmp_ci
+            (joined
+              (portRef CI (instanceRef empty_cmp_0))
+              (portRef COUT (instanceRef empty_cmp_ci_a))))
+          (net wcount_r0
+            (joined
+              (portRef B0 (instanceRef empty_cmp_0))
+              (portRef DO0 (instanceRef LUT4_10))))
+          (net wcount_r1
+            (joined
+              (portRef B1 (instanceRef empty_cmp_0))
+              (portRef DO0 (instanceRef LUT4_11))))
+          (net rcount_0
+            (joined
+              (portRef A0 (instanceRef empty_cmp_0))
+              (portRef A (instanceRef XOR2_t6))
+              (portRef Q (instanceRef FF_58))
+              (portRef D (instanceRef FF_44))
+              (portRef PC0 (instanceRef r_gctr_0))))
+          (net rcount_1
+            (joined
+              (portRef A1 (instanceRef empty_cmp_0))
+              (portRef B (instanceRef XOR2_t6))
+              (portRef A (instanceRef XOR2_t5))
+              (portRef Q (instanceRef FF_57))
+              (portRef D (instanceRef FF_43))
+              (portRef PC1 (instanceRef r_gctr_0))))
+          (net co0_3
+            (joined
+              (portRef CI (instanceRef empty_cmp_1))
+              (portRef GE (instanceRef empty_cmp_0))))
+          (net wcount_r2
+            (joined
+              (portRef B0 (instanceRef empty_cmp_1))
+              (portRef DO0 (instanceRef LUT4_12))))
+          (net w_g2b_xor_cluster_0
+            (joined
+              (portRef B1 (instanceRef empty_cmp_1))
+              (portRef DO0 (instanceRef LUT4_15))
+              (portRef AD0 (instanceRef LUT4_10))))
+          (net rcount_2
+            (joined
+              (portRef A0 (instanceRef empty_cmp_1))
+              (portRef B (instanceRef XOR2_t5))
+              (portRef A (instanceRef XOR2_t4))
+              (portRef Q (instanceRef FF_56))
+              (portRef D (instanceRef FF_42))
+              (portRef PC0 (instanceRef r_gctr_1))))
+          (net rcount_3
+            (joined
+              (portRef A1 (instanceRef empty_cmp_1))
+              (portRef B (instanceRef XOR2_t4))
+              (portRef A (instanceRef XOR2_t3))
+              (portRef Q (instanceRef FF_55))
+              (portRef D (instanceRef FF_41))
+              (portRef PC1 (instanceRef r_gctr_1))))
+          (net co1_3
+            (joined
+              (portRef CI (instanceRef empty_cmp_2))
+              (portRef GE (instanceRef empty_cmp_1))))
+          (net wcount_r4
+            (joined
+              (portRef B0 (instanceRef empty_cmp_2))
+              (portRef DO0 (instanceRef LUT4_13))
+              (portRef AD0 (instanceRef LUT4_11))))
+          (net wcount_r5
+            (joined
+              (portRef B1 (instanceRef empty_cmp_2))
+              (portRef DO0 (instanceRef LUT4_14))
+              (portRef AD0 (instanceRef LUT4_12))))
+          (net rcount_4
+            (joined
+              (portRef A0 (instanceRef empty_cmp_2))
+              (portRef B (instanceRef XOR2_t3))
+              (portRef A (instanceRef XOR2_t2))
+              (portRef Q (instanceRef FF_54))
+              (portRef D (instanceRef FF_40))
+              (portRef PC0 (instanceRef r_gctr_2))))
+          (net rcount_5
+            (joined
+              (portRef A1 (instanceRef empty_cmp_2))
+              (portRef B (instanceRef XOR2_t2))
+              (portRef A (instanceRef XOR2_t1))
+              (portRef Q (instanceRef FF_53))
+              (portRef D (instanceRef FF_39))
+              (portRef PC1 (instanceRef r_gctr_2))))
+          (net co2_3
+            (joined
+              (portRef CI (instanceRef empty_cmp_3))
+              (portRef GE (instanceRef empty_cmp_2))))
+          (net empty_cmp_clr
+            (joined
+              (portRef B0 (instanceRef empty_cmp_3))
+              (portRef DO0 (instanceRef LUT4_2))))
+          (net empty_cmp_set
+            (joined
+              (portRef A0 (instanceRef empty_cmp_3))
+              (portRef DO0 (instanceRef LUT4_3))))
+          (net empty_d
+            (joined
+              (portRef S0 (instanceRef a0))
+              (portRef D (instanceRef FF_2))))
+          (net empty_d_c
+            (joined
+              (portRef CI (instanceRef a0))
+              (portRef GE (instanceRef empty_cmp_3))))
+          (net cmp_ci_1
+            (joined
+              (portRef CI (instanceRef full_cmp_0))
+              (portRef COUT (instanceRef full_cmp_ci_a))))
+          (net rcount_w0
+            (joined
+              (portRef B0 (instanceRef full_cmp_0))
+              (portRef DO0 (instanceRef LUT4_4))
+              (portRef B1 (instanceRef wcnt_0))))
+          (net rcount_w1
+            (joined
+              (portRef B1 (instanceRef full_cmp_0))
+              (portRef DO0 (instanceRef LUT4_5))
+              (portRef B0 (instanceRef wcnt_1))))
+          (net wcount_0
+            (joined
+              (portRef A0 (instanceRef full_cmp_0))
+              (portRef A (instanceRef XOR2_t12))
+              (portRef Q (instanceRef FF_79))
+              (portRef D (instanceRef FF_65))
+              (portRef PC0 (instanceRef w_gctr_0))
+              (portRef A1 (instanceRef wcnt_0))))
+          (net wcount_1
+            (joined
+              (portRef A1 (instanceRef full_cmp_0))
+              (portRef B (instanceRef XOR2_t12))
+              (portRef A (instanceRef XOR2_t11))
+              (portRef Q (instanceRef FF_78))
+              (portRef D (instanceRef FF_64))
+              (portRef PC1 (instanceRef w_gctr_0))
+              (portRef A0 (instanceRef wcnt_1))))
+          (net co0_4
+            (joined
+              (portRef CI (instanceRef full_cmp_1))
+              (portRef GE (instanceRef full_cmp_0))))
+          (net rcount_w2
+            (joined
+              (portRef B0 (instanceRef full_cmp_1))
+              (portRef DO0 (instanceRef LUT4_6))
+              (portRef B1 (instanceRef wcnt_1))))
+          (net r_g2b_xor_cluster_0
+            (joined
+              (portRef B1 (instanceRef full_cmp_1))
+              (portRef DO0 (instanceRef LUT4_9))
+              (portRef AD0 (instanceRef LUT4_4))
+              (portRef B0 (instanceRef wcnt_2))))
+          (net wcount_2
+            (joined
+              (portRef A0 (instanceRef full_cmp_1))
+              (portRef B (instanceRef XOR2_t11))
+              (portRef A (instanceRef XOR2_t10))
+              (portRef Q (instanceRef FF_77))
+              (portRef D (instanceRef FF_63))
+              (portRef PC0 (instanceRef w_gctr_1))
+              (portRef A1 (instanceRef wcnt_1))))
+          (net wcount_3
+            (joined
+              (portRef A1 (instanceRef full_cmp_1))
+              (portRef B (instanceRef XOR2_t10))
+              (portRef A (instanceRef XOR2_t9))
+              (portRef Q (instanceRef FF_76))
+              (portRef D (instanceRef FF_62))
+              (portRef PC1 (instanceRef w_gctr_1))
+              (portRef A0 (instanceRef wcnt_2))))
+          (net co1_4
+            (joined
+              (portRef CI (instanceRef full_cmp_2))
+              (portRef GE (instanceRef full_cmp_1))))
+          (net rcount_w4
+            (joined
+              (portRef B0 (instanceRef full_cmp_2))
+              (portRef DO0 (instanceRef LUT4_7))
+              (portRef AD0 (instanceRef LUT4_5))
+              (portRef B1 (instanceRef wcnt_2))))
+          (net rcount_w5
+            (joined
+              (portRef B1 (instanceRef full_cmp_2))
+              (portRef DO0 (instanceRef LUT4_8))
+              (portRef AD0 (instanceRef LUT4_6))
+              (portRef B0 (instanceRef wcnt_3))))
+          (net wcount_4
+            (joined
+              (portRef A0 (instanceRef full_cmp_2))
+              (portRef B (instanceRef XOR2_t9))
+              (portRef A (instanceRef XOR2_t8))
+              (portRef Q (instanceRef FF_75))
+              (portRef D (instanceRef FF_61))
+              (portRef PC0 (instanceRef w_gctr_2))
+              (portRef A1 (instanceRef wcnt_2))))
+          (net wcount_5
+            (joined
+              (portRef A1 (instanceRef full_cmp_2))
+              (portRef B (instanceRef XOR2_t8))
+              (portRef A (instanceRef XOR2_t7))
+              (portRef Q (instanceRef FF_74))
+              (portRef D (instanceRef FF_60))
+              (portRef PC1 (instanceRef w_gctr_2))
+              (portRef A0 (instanceRef wcnt_3))))
+          (net co2_4
+            (joined
+              (portRef CI (instanceRef full_cmp_3))
+              (portRef GE (instanceRef full_cmp_2))))
+          (net full_cmp_clr
+            (joined
+              (portRef B0 (instanceRef full_cmp_3))
+              (portRef DO0 (instanceRef LUT4_0))))
+          (net full_cmp_set
+            (joined
+              (portRef A0 (instanceRef full_cmp_3))
+              (portRef DO0 (instanceRef LUT4_1))))
+          (net full_d
+            (joined
+              (portRef S0 (instanceRef a1))
+              (portRef D (instanceRef FF_1))))
+          (net full_d_c
+            (joined
+              (portRef CI (instanceRef a1))
+              (portRef GE (instanceRef full_cmp_3))))
+          (net wren_i
+            (joined
+              (portRef A1 (instanceRef af_d_cmp_ci_a))
+              (portRef Z (instanceRef AND2_t15))
+              (portRef CEW (instanceRef pdp_ram_0_0_0))
+              (portRef SP (instanceRef FF_79))
+              (portRef SP (instanceRef FF_78))
+              (portRef SP (instanceRef FF_77))
+              (portRef SP (instanceRef FF_76))
+              (portRef SP (instanceRef FF_75))
+              (portRef SP (instanceRef FF_74))
+              (portRef SP (instanceRef FF_73))
+              (portRef SP (instanceRef FF_72))
+              (portRef SP (instanceRef FF_71))
+              (portRef SP (instanceRef FF_70))
+              (portRef SP (instanceRef FF_69))
+              (portRef SP (instanceRef FF_68))
+              (portRef SP (instanceRef FF_67))
+              (portRef SP (instanceRef FF_66))
+              (portRef SP (instanceRef FF_65))
+              (portRef SP (instanceRef FF_64))
+              (portRef SP (instanceRef FF_63))
+              (portRef SP (instanceRef FF_62))
+              (portRef SP (instanceRef FF_61))
+              (portRef SP (instanceRef FF_60))
+              (portRef SP (instanceRef FF_59))
+              (portRef B1 (instanceRef full_cmp_ci_a))
+              (portRef A1 (instanceRef full_cmp_ci_a))
+              (portRef B1 (instanceRef af_d_cmp_ci_a))))
+          (net cmp_ci_2
+            (joined
+              (portRef CI (instanceRef af_d_cmp_0))
+              (portRef COUT (instanceRef af_d_cmp_ci_a))))
+          (net wcnt_reg_0
+            (joined
+              (portRef A0 (instanceRef af_d_cmp_0))
+              (portRef Q (instanceRef FF_9))))
+          (net wcnt_reg_1
+            (joined
+              (portRef A1 (instanceRef af_d_cmp_0))
+              (portRef Q (instanceRef FF_8))))
+          (net co0_5
+            (joined
+              (portRef CI (instanceRef af_d_cmp_1))
+              (portRef GE (instanceRef af_d_cmp_0))))
+          (net wcnt_reg_2
+            (joined
+              (portRef A0 (instanceRef af_d_cmp_1))
+              (portRef Q (instanceRef FF_7))))
+          (net wcnt_reg_3
+            (joined
+              (portRef A1 (instanceRef af_d_cmp_1))
+              (portRef Q (instanceRef FF_6))))
+          (net co1_5
+            (joined
+              (portRef CI (instanceRef af_d_cmp_2))
+              (portRef GE (instanceRef af_d_cmp_1))))
+          (net wcnt_reg_4
+            (joined
+              (portRef A0 (instanceRef af_d_cmp_2))
+              (portRef Q (instanceRef FF_5))))
+          (net wcnt_reg_5
+            (joined
+              (portRef A1 (instanceRef af_d_cmp_2))
+              (portRef Q (instanceRef FF_4))))
+          (net co2_5
+            (joined
+              (portRef CI (instanceRef af_d_cmp_3))
+              (portRef GE (instanceRef af_d_cmp_2))))
+          (net wcnt_reg_6
+            (joined
+              (portRef A0 (instanceRef af_d_cmp_3))
+              (portRef Q (instanceRef FF_3))))
+          (net af_d
+            (joined
+              (portRef S0 (instanceRef a2))
+              (portRef D (instanceRef FF_0))))
+          (net af_d_c
+            (joined
+              (portRef CI (instanceRef a2))
+              (portRef GE (instanceRef af_d_cmp_3))))
+          (net scuba_vlo
+            (joined
+              (portRef Z (instanceRef scuba_vlo_inst))
+              (portRef AD0 (instanceRef LUT4_14))
+              (portRef AD1 (instanceRef LUT4_14))
+              (portRef AD0 (instanceRef LUT4_13))
+              (portRef AD0 (instanceRef LUT4_8))
+              (portRef AD1 (instanceRef LUT4_8))
+              (portRef AD0 (instanceRef LUT4_7))
+              (portRef AD0 (instanceRef LUT4_3))
+              (portRef AD0 (instanceRef LUT4_2))
+              (portRef AD0 (instanceRef LUT4_1))
+              (portRef AD0 (instanceRef LUT4_0))
+              (portRef CSR2 (instanceRef pdp_ram_0_0_0))
+              (portRef CSW2 (instanceRef pdp_ram_0_0_0))
+              (portRef CSR1 (instanceRef pdp_ram_0_0_0))
+              (portRef CSW1 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR13 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR12 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR11 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR4 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR3 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR2 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR1 (instanceRef pdp_ram_0_0_0))
+              (portRef ADR0 (instanceRef pdp_ram_0_0_0))
+              (portRef ADW8 (instanceRef pdp_ram_0_0_0))
+              (portRef ADW7 (instanceRef pdp_ram_0_0_0))
+              (portRef ADW6 (instanceRef pdp_ram_0_0_0))
+              (portRef CI (instanceRef w_gctr_cia))
+              (portRef B0 (instanceRef w_gctr_cia))
+              (portRef A0 (instanceRef w_gctr_cia))
+              (portRef PC1 (instanceRef w_gctr_3))
+              (portRef CI (instanceRef r_gctr_cia))
+              (portRef B0 (instanceRef r_gctr_cia))
+              (portRef A0 (instanceRef r_gctr_cia))
+              (portRef PC1 (instanceRef r_gctr_3))
+              (portRef CI (instanceRef precin_inst264))
+              (portRef B0 (instanceRef precin_inst264))
+              (portRef B1 (instanceRef precin_inst264))
+              (portRef A0 (instanceRef precin_inst264))
+              (portRef A1 (instanceRef precin_inst264))
+              (portRef B0 (instanceRef wcnt_0))
+              (portRef B1 (instanceRef wcnt_3))
+              (portRef B0 (instanceRef wcntd))
+              (portRef B1 (instanceRef wcntd))
+              (portRef A0 (instanceRef wcntd))
+              (portRef A1 (instanceRef wcntd))
+              (portRef CI (instanceRef empty_cmp_ci_a))
+              (portRef B0 (instanceRef empty_cmp_ci_a))
+              (portRef A0 (instanceRef empty_cmp_ci_a))
+              (portRef B1 (instanceRef empty_cmp_3))
+              (portRef A1 (instanceRef empty_cmp_3))
+              (portRef B0 (instanceRef a0))
+              (portRef B1 (instanceRef a0))
+              (portRef A0 (instanceRef a0))
+              (portRef A1 (instanceRef a0))
+              (portRef CI (instanceRef full_cmp_ci_a))
+              (portRef B0 (instanceRef full_cmp_ci_a))
+              (portRef A0 (instanceRef full_cmp_ci_a))
+              (portRef B1 (instanceRef full_cmp_3))
+              (portRef A1 (instanceRef full_cmp_3))
+              (portRef B0 (instanceRef a1))
+              (portRef B1 (instanceRef a1))
+              (portRef A0 (instanceRef a1))
+              (portRef A1 (instanceRef a1))
+              (portRef CI (instanceRef af_d_cmp_ci_a))
+              (portRef B0 (instanceRef af_d_cmp_ci_a))
+              (portRef A0 (instanceRef af_d_cmp_ci_a))
+              (portRef B0 (instanceRef af_d_cmp_3))
+              (portRef B1 (instanceRef af_d_cmp_3))
+              (portRef A1 (instanceRef af_d_cmp_3))
+              (portRef B0 (instanceRef a2))
+              (portRef B1 (instanceRef a2))
+              (portRef A0 (instanceRef a2))
+              (portRef A1 (instanceRef a2))))
+          (net partial_full
+            (joined
+              (portRef AlmostFull)
+              (portRef Q (instanceRef FF_0))))
+          (net Full
+            (joined
+              (portRef Full)
+              (portRef Q (instanceRef FF_1))
+              (portRef A (instanceRef INV_1))))
+          (net Empty
+            (joined
+              (portRef Empty)
+              (portRef Q (instanceRef FF_2))
+              (portRef A (instanceRef INV_0))))
+          (net dataout35
+            (joined
+              (portRef (member Q 0))
+              (portRef DO17 (instanceRef pdp_ram_0_0_0))))
+          (net dataout34
+            (joined
+              (portRef (member Q 1))
+              (portRef DO16 (instanceRef pdp_ram_0_0_0))))
+          (net dataout33
+            (joined
+              (portRef (member Q 2))
+              (portRef DO15 (instanceRef pdp_ram_0_0_0))))
+          (net dataout32
+            (joined
+              (portRef (member Q 3))
+              (portRef DO14 (instanceRef pdp_ram_0_0_0))))
+          (net dataout31
+            (joined
+              (portRef (member Q 4))
+              (portRef DO13 (instanceRef pdp_ram_0_0_0))))
+          (net dataout30
+            (joined
+              (portRef (member Q 5))
+              (portRef DO12 (instanceRef pdp_ram_0_0_0))))
+          (net dataout29
+            (joined
+              (portRef (member Q 6))
+              (portRef DO11 (instanceRef pdp_ram_0_0_0))))
+          (net dataout28
+            (joined
+              (portRef (member Q 7))
+              (portRef DO10 (instanceRef pdp_ram_0_0_0))))
+          (net dataout27
+            (joined
+              (portRef (member Q 8))
+              (portRef DO9 (instanceRef pdp_ram_0_0_0))))
+          (net dataout26
+            (joined
+              (portRef (member Q 9))
+              (portRef DO8 (instanceRef pdp_ram_0_0_0))))
+          (net dataout25
+            (joined
+              (portRef (member Q 10))
+              (portRef DO7 (instanceRef pdp_ram_0_0_0))))
+          (net dataout24
+            (joined
+              (portRef (member Q 11))
+              (portRef DO6 (instanceRef pdp_ram_0_0_0))))
+          (net dataout23
+            (joined
+              (portRef (member Q 12))
+              (portRef DO5 (instanceRef pdp_ram_0_0_0))))
+          (net dataout22
+            (joined
+              (portRef (member Q 13))
+              (portRef DO4 (instanceRef pdp_ram_0_0_0))))
+          (net dataout21
+            (joined
+              (portRef (member Q 14))
+              (portRef DO3 (instanceRef pdp_ram_0_0_0))))
+          (net dataout20
+            (joined
+              (portRef (member Q 15))
+              (portRef DO2 (instanceRef pdp_ram_0_0_0))))
+          (net dataout19
+            (joined
+              (portRef (member Q 16))
+              (portRef DO1 (instanceRef pdp_ram_0_0_0))))
+          (net dataout18
+            (joined
+              (portRef (member Q 17))
+              (portRef DO0 (instanceRef pdp_ram_0_0_0))))
+          (net dataout17
+            (joined
+              (portRef (member Q 18))
+              (portRef DO35 (instanceRef pdp_ram_0_0_0))))
+          (net dataout16
+            (joined
+              (portRef (member Q 19))
+              (portRef DO34 (instanceRef pdp_ram_0_0_0))))
+          (net dataout15
+            (joined
+              (portRef (member Q 20))
+              (portRef DO33 (instanceRef pdp_ram_0_0_0))))
+          (net dataout14
+            (joined
+              (portRef (member Q 21))
+              (portRef DO32 (instanceRef pdp_ram_0_0_0))))
+          (net dataout13
+            (joined
+              (portRef (member Q 22))
+              (portRef DO31 (instanceRef pdp_ram_0_0_0))))
+          (net dataout12
+            (joined
+              (portRef (member Q 23))
+              (portRef DO30 (instanceRef pdp_ram_0_0_0))))
+          (net dataout11
+            (joined
+              (portRef (member Q 24))
+              (portRef DO29 (instanceRef pdp_ram_0_0_0))))
+          (net dataout10
+            (joined
+              (portRef (member Q 25))
+              (portRef DO28 (instanceRef pdp_ram_0_0_0))))
+          (net dataout9
+            (joined
+              (portRef (member Q 26))
+              (portRef DO27 (instanceRef pdp_ram_0_0_0))))
+          (net dataout8
+            (joined
+              (portRef (member Q 27))
+              (portRef DO26 (instanceRef pdp_ram_0_0_0))))
+          (net dataout7
+            (joined
+              (portRef (member Q 28))
+              (portRef DO25 (instanceRef pdp_ram_0_0_0))))
+          (net dataout6
+            (joined
+              (portRef (member Q 29))
+              (portRef DO24 (instanceRef pdp_ram_0_0_0))))
+          (net dataout5
+            (joined
+              (portRef (member Q 30))
+              (portRef DO23 (instanceRef pdp_ram_0_0_0))))
+          (net dataout4
+            (joined
+              (portRef (member Q 31))
+              (portRef DO22 (instanceRef pdp_ram_0_0_0))))
+          (net dataout3
+            (joined
+              (portRef (member Q 32))
+              (portRef DO21 (instanceRef pdp_ram_0_0_0))))
+          (net dataout2
+            (joined
+              (portRef (member Q 33))
+              (portRef DO20 (instanceRef pdp_ram_0_0_0))))
+          (net dataout1
+            (joined
+              (portRef (member Q 34))
+              (portRef DO19 (instanceRef pdp_ram_0_0_0))))
+          (net dataout0
+            (joined
+              (portRef (member Q 35))
+              (portRef DO18 (instanceRef pdp_ram_0_0_0))))
+          (net AmFullThresh5
+            (joined
+              (portRef (member AmFullThresh 0))
+              (portRef B1 (instanceRef af_d_cmp_2))))
+          (net AmFullThresh4
+            (joined
+              (portRef (member AmFullThresh 1))
+              (portRef B0 (instanceRef af_d_cmp_2))))
+          (net AmFullThresh3
+            (joined
+              (portRef (member AmFullThresh 2))
+              (portRef B1 (instanceRef af_d_cmp_1))))
+          (net AmFullThresh2
+            (joined
+              (portRef (member AmFullThresh 3))
+              (portRef B0 (instanceRef af_d_cmp_1))))
+          (net AmFullThresh1
+            (joined
+              (portRef (member AmFullThresh 4))
+              (portRef B1 (instanceRef af_d_cmp_0))))
+          (net AmFullThresh0
+            (joined
+              (portRef (member AmFullThresh 5))
+              (portRef B0 (instanceRef af_d_cmp_0))))
+          (net RPRst
+            (joined
+              (portRef RPReset)
+              (portRef B (instanceRef OR2_t13))))
+          (net reset
+            (joined
+              (portRef Reset)
+              (portRef A (instanceRef OR2_t13))
+              (portRef RST (instanceRef pdp_ram_0_0_0))
+              (portRef PD (instanceRef FF_79))
+              (portRef CD (instanceRef FF_78))
+              (portRef CD (instanceRef FF_77))
+              (portRef CD (instanceRef FF_76))
+              (portRef CD (instanceRef FF_75))
+              (portRef CD (instanceRef FF_74))
+              (portRef CD (instanceRef FF_73))
+              (portRef CD (instanceRef FF_72))
+              (portRef CD (instanceRef FF_71))
+              (portRef CD (instanceRef FF_70))
+              (portRef CD (instanceRef FF_69))
+              (portRef CD (instanceRef FF_68))
+              (portRef CD (instanceRef FF_67))
+              (portRef CD (instanceRef FF_66))
+              (portRef CD (instanceRef FF_65))
+              (portRef CD (instanceRef FF_64))
+              (portRef CD (instanceRef FF_63))
+              (portRef CD (instanceRef FF_62))
+              (portRef CD (instanceRef FF_61))
+              (portRef CD (instanceRef FF_60))
+              (portRef CD (instanceRef FF_59))
+              (portRef CD (instanceRef FF_37))
+              (portRef CD (instanceRef FF_36))
+              (portRef CD (instanceRef FF_35))
+              (portRef CD (instanceRef FF_34))
+              (portRef CD (instanceRef FF_33))
+              (portRef CD (instanceRef FF_32))
+              (portRef CD (instanceRef FF_31))
+              (portRef CD (instanceRef FF_23))
+              (portRef CD (instanceRef FF_22))
+              (portRef CD (instanceRef FF_21))
+              (portRef CD (instanceRef FF_20))
+              (portRef CD (instanceRef FF_19))
+              (portRef CD (instanceRef FF_18))
+              (portRef CD (instanceRef FF_17))
+              (portRef CD (instanceRef FF_9))
+              (portRef CD (instanceRef FF_8))
+              (portRef CD (instanceRef FF_7))
+              (portRef CD (instanceRef FF_6))
+              (portRef CD (instanceRef FF_5))
+              (portRef CD (instanceRef FF_4))
+              (portRef CD (instanceRef FF_3))
+              (portRef CD (instanceRef FF_1))
+              (portRef CD (instanceRef FF_0))))
+          (net rden
+            (joined
+              (portRef RdEn)
+              (portRef A (instanceRef AND2_t14))))
+          (net wren
+            (joined
+              (portRef WrEn)
+              (portRef A (instanceRef AND2_t15))))
+          (net rclk
+            (joined
+              (portRef RdClock)
+              (portRef CLKR (instanceRef pdp_ram_0_0_0))
+              (portRef CK (instanceRef FF_58))
+              (portRef CK (instanceRef FF_57))
+              (portRef CK (instanceRef FF_56))
+              (portRef CK (instanceRef FF_55))
+              (portRef CK (instanceRef FF_54))
+              (portRef CK (instanceRef FF_53))
+              (portRef CK (instanceRef FF_52))
+              (portRef CK (instanceRef FF_51))
+              (portRef CK (instanceRef FF_50))
+              (portRef CK (instanceRef FF_49))
+              (portRef CK (instanceRef FF_48))
+              (portRef CK (instanceRef FF_47))
+              (portRef CK (instanceRef FF_46))
+              (portRef CK (instanceRef FF_45))
+              (portRef CK (instanceRef FF_44))
+              (portRef CK (instanceRef FF_43))
+              (portRef CK (instanceRef FF_42))
+              (portRef CK (instanceRef FF_41))
+              (portRef CK (instanceRef FF_40))
+              (portRef CK (instanceRef FF_39))
+              (portRef CK (instanceRef FF_38))
+              (portRef CK (instanceRef FF_37))
+              (portRef CK (instanceRef FF_36))
+              (portRef CK (instanceRef FF_35))
+              (portRef CK (instanceRef FF_34))
+              (portRef CK (instanceRef FF_33))
+              (portRef CK (instanceRef FF_32))
+              (portRef CK (instanceRef FF_31))
+              (portRef CK (instanceRef FF_23))
+              (portRef CK (instanceRef FF_22))
+              (portRef CK (instanceRef FF_21))
+              (portRef CK (instanceRef FF_20))
+              (portRef CK (instanceRef FF_19))
+              (portRef CK (instanceRef FF_18))
+              (portRef CK (instanceRef FF_17))
+              (portRef CK (instanceRef FF_2))))
+          (net wclk
+            (joined
+              (portRef WrClock)
+              (portRef CLKW (instanceRef pdp_ram_0_0_0))
+              (portRef CK (instanceRef FF_79))
+              (portRef CK (instanceRef FF_78))
+              (portRef CK (instanceRef FF_77))
+              (portRef CK (instanceRef FF_76))
+              (portRef CK (instanceRef FF_75))
+              (portRef CK (instanceRef FF_74))
+              (portRef CK (instanceRef FF_73))
+              (portRef CK (instanceRef FF_72))
+              (portRef CK (instanceRef FF_71))
+              (portRef CK (instanceRef FF_70))
+              (portRef CK (instanceRef FF_69))
+              (portRef CK (instanceRef FF_68))
+              (portRef CK (instanceRef FF_67))
+              (portRef CK (instanceRef FF_66))
+              (portRef CK (instanceRef FF_65))
+              (portRef CK (instanceRef FF_64))
+              (portRef CK (instanceRef FF_63))
+              (portRef CK (instanceRef FF_62))
+              (portRef CK (instanceRef FF_61))
+              (portRef CK (instanceRef FF_60))
+              (portRef CK (instanceRef FF_59))
+              (portRef CK (instanceRef FF_30))
+              (portRef CK (instanceRef FF_29))
+              (portRef CK (instanceRef FF_28))
+              (portRef CK (instanceRef FF_27))
+              (portRef CK (instanceRef FF_26))
+              (portRef CK (instanceRef FF_25))
+              (portRef CK (instanceRef FF_24))
+              (portRef CK (instanceRef FF_16))
+              (portRef CK (instanceRef FF_15))
+              (portRef CK (instanceRef FF_14))
+              (portRef CK (instanceRef FF_13))
+              (portRef CK (instanceRef FF_12))
+              (portRef CK (instanceRef FF_11))
+              (portRef CK (instanceRef FF_10))
+              (portRef CK (instanceRef FF_9))
+              (portRef CK (instanceRef FF_8))
+              (portRef CK (instanceRef FF_7))
+              (portRef CK (instanceRef FF_6))
+              (portRef CK (instanceRef FF_5))
+              (portRef CK (instanceRef FF_4))
+              (portRef CK (instanceRef FF_3))
+              (portRef CK (instanceRef FF_1))
+              (portRef CK (instanceRef FF_0))))
+          (net datain35
+            (joined
+              (portRef (member Data 0))
+              (portRef DI35 (instanceRef pdp_ram_0_0_0))))
+          (net datain34
+            (joined
+              (portRef (member Data 1))
+              (portRef DI34 (instanceRef pdp_ram_0_0_0))))
+          (net datain33
+            (joined
+              (portRef (member Data 2))
+              (portRef DI33 (instanceRef pdp_ram_0_0_0))))
+          (net datain32
+            (joined
+              (portRef (member Data 3))
+              (portRef DI32 (instanceRef pdp_ram_0_0_0))))
+          (net datain31
+            (joined
+              (portRef (member Data 4))
+              (portRef DI31 (instanceRef pdp_ram_0_0_0))))
+          (net datain30
+            (joined
+              (portRef (member Data 5))
+              (portRef DI30 (instanceRef pdp_ram_0_0_0))))
+          (net datain29
+            (joined
+              (portRef (member Data 6))
+              (portRef DI29 (instanceRef pdp_ram_0_0_0))))
+          (net datain28
+            (joined
+              (portRef (member Data 7))
+              (portRef DI28 (instanceRef pdp_ram_0_0_0))))
+          (net datain27
+            (joined
+              (portRef (member Data 8))
+              (portRef DI27 (instanceRef pdp_ram_0_0_0))))
+          (net datain26
+            (joined
+              (portRef (member Data 9))
+              (portRef DI26 (instanceRef pdp_ram_0_0_0))))
+          (net datain25
+            (joined
+              (portRef (member Data 10))
+              (portRef DI25 (instanceRef pdp_ram_0_0_0))))
+          (net datain24
+            (joined
+              (portRef (member Data 11))
+              (portRef DI24 (instanceRef pdp_ram_0_0_0))))
+          (net datain23
+            (joined
+              (portRef (member Data 12))
+              (portRef DI23 (instanceRef pdp_ram_0_0_0))))
+          (net datain22
+            (joined
+              (portRef (member Data 13))
+              (portRef DI22 (instanceRef pdp_ram_0_0_0))))
+          (net datain21
+            (joined
+              (portRef (member Data 14))
+              (portRef DI21 (instanceRef pdp_ram_0_0_0))))
+          (net datain20
+            (joined
+              (portRef (member Data 15))
+              (portRef DI20 (instanceRef pdp_ram_0_0_0))))
+          (net datain19
+            (joined
+              (portRef (member Data 16))
+              (portRef DI19 (instanceRef pdp_ram_0_0_0))))
+          (net datain18
+            (joined
+              (portRef (member Data 17))
+              (portRef DI18 (instanceRef pdp_ram_0_0_0))))
+          (net datain17
+            (joined
+              (portRef (member Data 18))
+              (portRef DI17 (instanceRef pdp_ram_0_0_0))))
+          (net datain16
+            (joined
+              (portRef (member Data 19))
+              (portRef DI16 (instanceRef pdp_ram_0_0_0))))
+          (net datain15
+            (joined
+              (portRef (member Data 20))
+              (portRef DI15 (instanceRef pdp_ram_0_0_0))))
+          (net datain14
+            (joined
+              (portRef (member Data 21))
+              (portRef DI14 (instanceRef pdp_ram_0_0_0))))
+          (net datain13
+            (joined
+              (portRef (member Data 22))
+              (portRef DI13 (instanceRef pdp_ram_0_0_0))))
+          (net datain12
+            (joined
+              (portRef (member Data 23))
+              (portRef DI12 (instanceRef pdp_ram_0_0_0))))
+          (net datain11
+            (joined
+              (portRef (member Data 24))
+              (portRef DI11 (instanceRef pdp_ram_0_0_0))))
+          (net datain10
+            (joined
+              (portRef (member Data 25))
+              (portRef DI10 (instanceRef pdp_ram_0_0_0))))
+          (net datain9
+            (joined
+              (portRef (member Data 26))
+              (portRef DI9 (instanceRef pdp_ram_0_0_0))))
+          (net datain8
+            (joined
+              (portRef (member Data 27))
+              (portRef DI8 (instanceRef pdp_ram_0_0_0))))
+          (net datain7
+            (joined
+              (portRef (member Data 28))
+              (portRef DI7 (instanceRef pdp_ram_0_0_0))))
+          (net datain6
+            (joined
+              (portRef (member Data 29))
+              (portRef DI6 (instanceRef pdp_ram_0_0_0))))
+          (net datain5
+            (joined
+              (portRef (member Data 30))
+              (portRef DI5 (instanceRef pdp_ram_0_0_0))))
+          (net datain4
+            (joined
+              (portRef (member Data 31))
+              (portRef DI4 (instanceRef pdp_ram_0_0_0))))
+          (net datain3
+            (joined
+              (portRef (member Data 32))
+              (portRef DI3 (instanceRef pdp_ram_0_0_0))))
+          (net datain2
+            (joined
+              (portRef (member Data 33))
+              (portRef DI2 (instanceRef pdp_ram_0_0_0))))
+          (net datain1
+            (joined
+              (portRef (member Data 34))
+              (portRef DI1 (instanceRef pdp_ram_0_0_0))))
+          (net datain0
+            (joined
+              (portRef (member Data 35))
+              (portRef DI0 (instanceRef pdp_ram_0_0_0))))))))
+  (design FIFO_DC_36x64_DynThr_OutReg
+    (cellRef FIFO_DC_36x64_DynThr_OutReg
+      (libraryRef ORCLIB)))
+)
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.ipx b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.ipx
new file mode 100644 (file)
index 0000000..640d644
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<DiamondModule name="FIFO_DC_36x64_DynThr_OutReg" module="FIFO_DC" VendorName="Lattice Semiconductor Corporation" generator="IPexpress" date="2015 09 21 11:51:56.395" version="5.8" type="Module" synthesis="synplify" source_format="VHDL">
+  <Package>
+               <File name="FIFO_DC_36x64_DynThr_OutReg.lpc" type="lpc" modified="2015 09 21 11:51:55.000"/>
+               <File name="FIFO_DC_36x64_DynThr_OutReg.vhd" type="top_level_vhdl" modified="2015 09 21 11:51:55.000"/>
+               <File name="FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd" type="template_vhdl" modified="2015 09 21 11:51:55.000"/>
+               <File name="tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd" type="testbench_vhdl" modified="2015 09 21 11:51:55.000"/>
+  </Package>
+</DiamondModule>
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.jhd b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.jhd
new file mode 100644 (file)
index 0000000..88484dc
--- /dev/null
@@ -0,0 +1,303 @@
+MODULE FIFO_DC_36x64_DynThr_OutReg DEFIN FIFO_DC_36x64_DynThr_OutReg.vhd
+       SUBMODULE FADD2B
+               INSTANCE a2
+       SUBMODULE VLO
+               INSTANCE scuba_vlo_inst
+       SUBMODULE AGEB2
+               INSTANCE af_d_cmp_3
+       SUBMODULE AGEB2
+               INSTANCE af_d_cmp_2
+       SUBMODULE AGEB2
+               INSTANCE af_d_cmp_1
+       SUBMODULE AGEB2
+               INSTANCE af_d_cmp_0
+       SUBMODULE FADD2B
+               INSTANCE af_d_cmp_ci_a
+       SUBMODULE FADD2B
+               INSTANCE a1
+       SUBMODULE AGEB2
+               INSTANCE full_cmp_3
+       SUBMODULE AGEB2
+               INSTANCE full_cmp_2
+       SUBMODULE AGEB2
+               INSTANCE full_cmp_1
+       SUBMODULE AGEB2
+               INSTANCE full_cmp_0
+       SUBMODULE FADD2B
+               INSTANCE full_cmp_ci_a
+       SUBMODULE FADD2B
+               INSTANCE a0
+       SUBMODULE AGEB2
+               INSTANCE empty_cmp_3
+       SUBMODULE AGEB2
+               INSTANCE empty_cmp_2
+       SUBMODULE AGEB2
+               INSTANCE empty_cmp_1
+       SUBMODULE AGEB2
+               INSTANCE empty_cmp_0
+       SUBMODULE FADD2B
+               INSTANCE empty_cmp_ci_a
+       SUBMODULE FADD2B
+               INSTANCE wcntd
+       SUBMODULE FSUB2B
+               INSTANCE wcnt_3
+       SUBMODULE FSUB2B
+               INSTANCE wcnt_2
+       SUBMODULE FSUB2B
+               INSTANCE wcnt_1
+       SUBMODULE FSUB2B
+               INSTANCE wcnt_0
+       SUBMODULE VHI
+               INSTANCE scuba_vhi_inst
+       SUBMODULE FADD2B
+               INSTANCE precin_inst264
+       SUBMODULE CU2
+               INSTANCE r_gctr_3
+       SUBMODULE CU2
+               INSTANCE r_gctr_2
+       SUBMODULE CU2
+               INSTANCE r_gctr_1
+       SUBMODULE CU2
+               INSTANCE r_gctr_0
+       SUBMODULE FADD2B
+               INSTANCE r_gctr_cia
+       SUBMODULE CU2
+               INSTANCE w_gctr_3
+       SUBMODULE CU2
+               INSTANCE w_gctr_2
+       SUBMODULE CU2
+               INSTANCE w_gctr_1
+       SUBMODULE CU2
+               INSTANCE w_gctr_0
+       SUBMODULE FADD2B
+               INSTANCE w_gctr_cia
+       SUBMODULE FD1S3DX
+               INSTANCE FF_0
+       SUBMODULE FD1S3DX
+               INSTANCE FF_1
+       SUBMODULE FD1S3BX
+               INSTANCE FF_2
+       SUBMODULE FD1S3DX
+               INSTANCE FF_3
+       SUBMODULE FD1S3DX
+               INSTANCE FF_4
+       SUBMODULE FD1S3DX
+               INSTANCE FF_5
+       SUBMODULE FD1S3DX
+               INSTANCE FF_6
+       SUBMODULE FD1S3DX
+               INSTANCE FF_7
+       SUBMODULE FD1S3DX
+               INSTANCE FF_8
+       SUBMODULE FD1S3DX
+               INSTANCE FF_9
+       SUBMODULE FD1S3DX
+               INSTANCE FF_10
+       SUBMODULE FD1S3DX
+               INSTANCE FF_11
+       SUBMODULE FD1S3DX
+               INSTANCE FF_12
+       SUBMODULE FD1S3DX
+               INSTANCE FF_13
+       SUBMODULE FD1S3DX
+               INSTANCE FF_14
+       SUBMODULE FD1S3DX
+               INSTANCE FF_15
+       SUBMODULE FD1S3DX
+               INSTANCE FF_16
+       SUBMODULE FD1S3DX
+               INSTANCE FF_17
+       SUBMODULE FD1S3DX
+               INSTANCE FF_18
+       SUBMODULE FD1S3DX
+               INSTANCE FF_19
+       SUBMODULE FD1S3DX
+               INSTANCE FF_20
+       SUBMODULE FD1S3DX
+               INSTANCE FF_21
+       SUBMODULE FD1S3DX
+               INSTANCE FF_22
+       SUBMODULE FD1S3DX
+               INSTANCE FF_23
+       SUBMODULE FD1S3DX
+               INSTANCE FF_24
+       SUBMODULE FD1S3DX
+               INSTANCE FF_25
+       SUBMODULE FD1S3DX
+               INSTANCE FF_26
+       SUBMODULE FD1S3DX
+               INSTANCE FF_27
+       SUBMODULE FD1S3DX
+               INSTANCE FF_28
+       SUBMODULE FD1S3DX
+               INSTANCE FF_29
+       SUBMODULE FD1S3DX
+               INSTANCE FF_30
+       SUBMODULE FD1S3DX
+               INSTANCE FF_31
+       SUBMODULE FD1S3DX
+               INSTANCE FF_32
+       SUBMODULE FD1S3DX
+               INSTANCE FF_33
+       SUBMODULE FD1S3DX
+               INSTANCE FF_34
+       SUBMODULE FD1S3DX
+               INSTANCE FF_35
+       SUBMODULE FD1S3DX
+               INSTANCE FF_36
+       SUBMODULE FD1S3DX
+               INSTANCE FF_37
+       SUBMODULE FD1P3DX
+               INSTANCE FF_38
+       SUBMODULE FD1P3DX
+               INSTANCE FF_39
+       SUBMODULE FD1P3DX
+               INSTANCE FF_40
+       SUBMODULE FD1P3DX
+               INSTANCE FF_41
+       SUBMODULE FD1P3DX
+               INSTANCE FF_42
+       SUBMODULE FD1P3DX
+               INSTANCE FF_43
+       SUBMODULE FD1P3DX
+               INSTANCE FF_44
+       SUBMODULE FD1P3DX
+               INSTANCE FF_45
+       SUBMODULE FD1P3DX
+               INSTANCE FF_46
+       SUBMODULE FD1P3DX
+               INSTANCE FF_47
+       SUBMODULE FD1P3DX
+               INSTANCE FF_48
+       SUBMODULE FD1P3DX
+               INSTANCE FF_49
+       SUBMODULE FD1P3DX
+               INSTANCE FF_50
+       SUBMODULE FD1P3DX
+               INSTANCE FF_51
+       SUBMODULE FD1P3DX
+               INSTANCE FF_52
+       SUBMODULE FD1P3DX
+               INSTANCE FF_53
+       SUBMODULE FD1P3DX
+               INSTANCE FF_54
+       SUBMODULE FD1P3DX
+               INSTANCE FF_55
+       SUBMODULE FD1P3DX
+               INSTANCE FF_56
+       SUBMODULE FD1P3DX
+               INSTANCE FF_57
+       SUBMODULE FD1P3BX
+               INSTANCE FF_58
+       SUBMODULE FD1P3DX
+               INSTANCE FF_59
+       SUBMODULE FD1P3DX
+               INSTANCE FF_60
+       SUBMODULE FD1P3DX
+               INSTANCE FF_61
+       SUBMODULE FD1P3DX
+               INSTANCE FF_62
+       SUBMODULE FD1P3DX
+               INSTANCE FF_63
+       SUBMODULE FD1P3DX
+               INSTANCE FF_64
+       SUBMODULE FD1P3DX
+               INSTANCE FF_65
+       SUBMODULE FD1P3DX
+               INSTANCE FF_66
+       SUBMODULE FD1P3DX
+               INSTANCE FF_67
+       SUBMODULE FD1P3DX
+               INSTANCE FF_68
+       SUBMODULE FD1P3DX
+               INSTANCE FF_69
+       SUBMODULE FD1P3DX
+               INSTANCE FF_70
+       SUBMODULE FD1P3DX
+               INSTANCE FF_71
+       SUBMODULE FD1P3DX
+               INSTANCE FF_72
+       SUBMODULE FD1P3DX
+               INSTANCE FF_73
+       SUBMODULE FD1P3DX
+               INSTANCE FF_74
+       SUBMODULE FD1P3DX
+               INSTANCE FF_75
+       SUBMODULE FD1P3DX
+               INSTANCE FF_76
+       SUBMODULE FD1P3DX
+               INSTANCE FF_77
+       SUBMODULE FD1P3DX
+               INSTANCE FF_78
+       SUBMODULE FD1P3BX
+               INSTANCE FF_79
+       SUBMODULE PDPW16KC
+               INSTANCE pdp_ram_0_0_0
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_0
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_1
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_2
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_3
+       SUBMODULE XOR2
+               INSTANCE XOR2_t0
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_4
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_5
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_6
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_7
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_8
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_9
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_10
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_11
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_12
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_13
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_14
+       SUBMODULE ROM16X1A
+               INSTANCE LUT4_15
+       SUBMODULE XOR2
+               INSTANCE XOR2_t1
+       SUBMODULE XOR2
+               INSTANCE XOR2_t2
+       SUBMODULE XOR2
+               INSTANCE XOR2_t3
+       SUBMODULE XOR2
+               INSTANCE XOR2_t4
+       SUBMODULE XOR2
+               INSTANCE XOR2_t5
+       SUBMODULE XOR2
+               INSTANCE XOR2_t6
+       SUBMODULE XOR2
+               INSTANCE XOR2_t7
+       SUBMODULE XOR2
+               INSTANCE XOR2_t8
+       SUBMODULE XOR2
+               INSTANCE XOR2_t9
+       SUBMODULE XOR2
+               INSTANCE XOR2_t10
+       SUBMODULE XOR2
+               INSTANCE XOR2_t11
+       SUBMODULE XOR2
+               INSTANCE XOR2_t12
+       SUBMODULE OR2
+               INSTANCE OR2_t13
+       SUBMODULE INV
+               INSTANCE INV_0
+       SUBMODULE AND2
+               INSTANCE AND2_t14
+       SUBMODULE INV
+               INSTANCE INV_1
+       SUBMODULE AND2
+               INSTANCE AND2_t15
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.lpc b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.lpc
new file mode 100644 (file)
index 0000000..174039b
--- /dev/null
@@ -0,0 +1,50 @@
+[Device]
+Family=latticeecp3
+PartType=LFE3-150EA
+PartName=LFE3-150EA-8FN672C
+SpeedGrade=8
+Package=FPBGA672
+OperatingCondition=COM
+Status=P
+
+[IP]
+VendorName=Lattice Semiconductor Corporation
+CoreType=LPM
+CoreStatus=Demo
+CoreName=FIFO_DC
+CoreRevision=5.8
+ModuleName=FIFO_DC_36x64_DynThr_OutReg
+SourceFormat=VHDL
+ParameterFileVersion=1.0
+Date=09/21/2015
+Time=11:51:55
+
+[Parameters]
+Verilog=0
+VHDL=1
+EDIF=1
+Destination=Synplicity
+Expression=BusA(0 to 7)
+Order=Big Endian [MSB:LSB]
+IO=0
+FIFOImp=EBR Based
+Depth=64
+Width=36
+RDepth=64
+RWidth=36
+regout=1
+CtrlByRdEn=0
+EmpFlg=0
+PeMode=Static - Dual Threshold
+PeAssert=10
+PeDeassert=12
+FullFlg=1
+PfMode=Dynamic - Single Threshold
+PfAssert=508
+PfDeassert=506
+RDataCount=0
+WDataCount=0
+EnECC=0
+
+[Command]
+cmd_line= -w -n FIFO_DC_36x64_DynThr_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type fifodc -addr_width 6 -data_width 36 -num_words 64 -rdata_width 36 -outdata REGISTERED -no_enable -pe -1 -pf 0
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.naf b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.naf
new file mode 100644 (file)
index 0000000..0ca52e0
--- /dev/null
@@ -0,0 +1,87 @@
+Data[35]  i
+Data[34]  i
+Data[33]  i
+Data[32]  i
+Data[31]  i
+Data[30]  i
+Data[29]  i
+Data[28]  i
+Data[27]  i
+Data[26]  i
+Data[25]  i
+Data[24]  i
+Data[23]  i
+Data[22]  i
+Data[21]  i
+Data[20]  i
+Data[19]  i
+Data[18]  i
+Data[17]  i
+Data[16]  i
+Data[15]  i
+Data[14]  i
+Data[13]  i
+Data[12]  i
+Data[11]  i
+Data[10]  i
+Data[9]  i
+Data[8]  i
+Data[7]  i
+Data[6]  i
+Data[5]  i
+Data[4]  i
+Data[3]  i
+Data[2]  i
+Data[1]  i
+Data[0]  i
+WrClock  i
+RdClock  i
+WrEn  i
+RdEn  i
+Reset  i
+RPReset  i
+AmFullThresh[5]  i
+AmFullThresh[4]  i
+AmFullThresh[3]  i
+AmFullThresh[2]  i
+AmFullThresh[1]  i
+AmFullThresh[0]  i
+Q[35]  o
+Q[34]  o
+Q[33]  o
+Q[32]  o
+Q[31]  o
+Q[30]  o
+Q[29]  o
+Q[28]  o
+Q[27]  o
+Q[26]  o
+Q[25]  o
+Q[24]  o
+Q[23]  o
+Q[22]  o
+Q[21]  o
+Q[20]  o
+Q[19]  o
+Q[18]  o
+Q[17]  o
+Q[16]  o
+Q[15]  o
+Q[14]  o
+Q[13]  o
+Q[12]  o
+Q[11]  o
+Q[10]  o
+Q[9]  o
+Q[8]  o
+Q[7]  o
+Q[6]  o
+Q[5]  o
+Q[4]  o
+Q[3]  o
+Q[2]  o
+Q[1]  o
+Q[0]  o
+Empty  o
+Full  o
+AlmostFull  o
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sort b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sort
new file mode 100644 (file)
index 0000000..5c80651
--- /dev/null
@@ -0,0 +1 @@
+FIFO_DC_36x64_DynThr_OutReg.vhd
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.srp b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.srp
new file mode 100644 (file)
index 0000000..8461837
--- /dev/null
@@ -0,0 +1,43 @@
+SCUBA, Version Diamond (64-bit) 3.5.0.102
+Mon Sep 21 11:51:55 2015
+
+Copyright (c) 1991-1994 by NeoCAD Inc. All rights reserved.
+Copyright (c) 1995 AT&T Corp.   All rights reserved.
+Copyright (c) 1995-2001 Lucent Technologies Inc.  All rights reserved.
+Copyright (c) 2001 Agere Systems   All rights reserved.
+Copyright (c) 2002-2015 Lattice Semiconductor Corporation,  All rights reserved.
+
+    Issued command   : /opt/lattice/diamond/3.5_x64/ispfpga/bin/lin64/scuba -w -n FIFO_DC_36x64_DynThr_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type fifodc -addr_width 6 -data_width 36 -num_words 64 -rdata_width 36 -outdata REGISTERED -no_enable -pe -1 -pf 0 
+    Circuit name     : FIFO_DC_36x64_DynThr_OutReg
+    Module type      : ebfifo
+    Module Version   : 5.8
+    Ports            : 
+       Inputs       : Data[35:0], WrClock, RdClock, WrEn, RdEn, Reset, RPReset, AmFullThresh[5:0]
+       Outputs      : Q[35:0], Empty, Full, AlmostFull
+    I/O buffer       : not inserted
+    EDIF output      : FIFO_DC_36x64_DynThr_OutReg.edn
+    VHDL output      : FIFO_DC_36x64_DynThr_OutReg.vhd
+    VHDL template    : FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
+    VHDL testbench    : tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
+    VHDL purpose     : for synthesis and simulation
+    Bus notation     : big endian
+    Report output    : FIFO_DC_36x64_DynThr_OutReg.srp
+    Element Usage    :
+          AGEB2 : 12
+           AND2 : 2
+            CU2 : 8
+         FADD2B : 10
+         FSUB2B : 4
+        FD1P3BX : 2
+        FD1P3DX : 40
+        FD1S3BX : 1
+        FD1S3DX : 37
+            INV : 2
+            OR2 : 1
+       ROM16X1A : 16
+           XOR2 : 13
+       PDPW16KC : 1
+    Estimated Resource Usage:
+            LUT : 100
+            EBR : 1
+            Reg : 80
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sym b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sym
new file mode 100644 (file)
index 0000000..7123697
Binary files /dev/null and b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.sym differ
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.vhd b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg.vhd
new file mode 100644 (file)
index 0000000..43eec18
--- /dev/null
@@ -0,0 +1,1048 @@
+-- VHDL netlist generated by SCUBA Diamond (64-bit) 3.5.0.102
+-- Module  Version: 5.8
+--/opt/lattice/diamond/3.5_x64/ispfpga/bin/lin64/scuba -w -n FIFO_DC_36x64_DynThr_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type ebfifo -depth 64 -width 36 -depth 64 -rdata_width 36 -regout -no_enable -pe -1 -pf 0 
+
+-- Mon Sep 21 11:51:55 2015
+
+library IEEE;
+use IEEE.std_logic_1164.all;
+-- synopsys translate_off
+library ecp3;
+use ecp3.components.all;
+-- synopsys translate_on
+
+entity FIFO_DC_36x64_DynThr_OutReg is
+    port (
+        Data: in  std_logic_vector(35 downto 0); 
+        WrClock: in  std_logic; 
+        RdClock: in  std_logic; 
+        WrEn: in  std_logic; 
+        RdEn: in  std_logic; 
+        Reset: in  std_logic; 
+        RPReset: in  std_logic; 
+        AmFullThresh: in  std_logic_vector(5 downto 0); 
+        Q: out  std_logic_vector(35 downto 0); 
+        Empty: out  std_logic; 
+        Full: out  std_logic; 
+        AlmostFull: out  std_logic);
+end FIFO_DC_36x64_DynThr_OutReg;
+
+architecture Structure of FIFO_DC_36x64_DynThr_OutReg is
+
+    -- internal signal declarations
+    signal invout_1: std_logic;
+    signal invout_0: std_logic;
+    signal w_gdata_0: std_logic;
+    signal w_gdata_1: std_logic;
+    signal w_gdata_2: std_logic;
+    signal w_gdata_3: std_logic;
+    signal w_gdata_4: std_logic;
+    signal w_gdata_5: std_logic;
+    signal wptr_0: std_logic;
+    signal wptr_1: std_logic;
+    signal wptr_2: std_logic;
+    signal wptr_3: std_logic;
+    signal wptr_4: std_logic;
+    signal wptr_5: std_logic;
+    signal wptr_6: std_logic;
+    signal r_gdata_0: std_logic;
+    signal r_gdata_1: std_logic;
+    signal r_gdata_2: std_logic;
+    signal r_gdata_3: std_logic;
+    signal r_gdata_4: std_logic;
+    signal r_gdata_5: std_logic;
+    signal rptr_0: std_logic;
+    signal rptr_1: std_logic;
+    signal rptr_2: std_logic;
+    signal rptr_3: std_logic;
+    signal rptr_4: std_logic;
+    signal rptr_5: std_logic;
+    signal rptr_6: std_logic;
+    signal w_gcount_0: std_logic;
+    signal w_gcount_1: std_logic;
+    signal w_gcount_2: std_logic;
+    signal w_gcount_3: std_logic;
+    signal w_gcount_4: std_logic;
+    signal w_gcount_5: std_logic;
+    signal w_gcount_6: std_logic;
+    signal r_gcount_0: std_logic;
+    signal r_gcount_1: std_logic;
+    signal r_gcount_2: std_logic;
+    signal r_gcount_3: std_logic;
+    signal r_gcount_4: std_logic;
+    signal r_gcount_5: std_logic;
+    signal r_gcount_6: std_logic;
+    signal w_gcount_r20: std_logic;
+    signal w_gcount_r0: std_logic;
+    signal w_gcount_r21: std_logic;
+    signal w_gcount_r1: std_logic;
+    signal w_gcount_r22: std_logic;
+    signal w_gcount_r2: std_logic;
+    signal w_gcount_r23: std_logic;
+    signal w_gcount_r3: std_logic;
+    signal w_gcount_r24: std_logic;
+    signal w_gcount_r4: std_logic;
+    signal w_gcount_r25: std_logic;
+    signal w_gcount_r5: std_logic;
+    signal w_gcount_r26: std_logic;
+    signal w_gcount_r6: std_logic;
+    signal r_gcount_w20: std_logic;
+    signal r_gcount_w0: std_logic;
+    signal r_gcount_w21: std_logic;
+    signal r_gcount_w1: std_logic;
+    signal r_gcount_w22: std_logic;
+    signal r_gcount_w2: std_logic;
+    signal r_gcount_w23: std_logic;
+    signal r_gcount_w3: std_logic;
+    signal r_gcount_w24: std_logic;
+    signal r_gcount_w4: std_logic;
+    signal r_gcount_w25: std_logic;
+    signal r_gcount_w5: std_logic;
+    signal r_gcount_w26: std_logic;
+    signal r_gcount_w6: std_logic;
+    signal empty_i: std_logic;
+    signal rRst: std_logic;
+    signal full_i: std_logic;
+    signal iwcount_0: std_logic;
+    signal iwcount_1: std_logic;
+    signal w_gctr_ci: std_logic;
+    signal iwcount_2: std_logic;
+    signal iwcount_3: std_logic;
+    signal co0: std_logic;
+    signal iwcount_4: std_logic;
+    signal iwcount_5: std_logic;
+    signal co1: std_logic;
+    signal iwcount_6: std_logic;
+    signal co3: std_logic;
+    signal co2: std_logic;
+    signal wcount_6: std_logic;
+    signal ircount_0: std_logic;
+    signal ircount_1: std_logic;
+    signal r_gctr_ci: std_logic;
+    signal ircount_2: std_logic;
+    signal ircount_3: std_logic;
+    signal co0_1: std_logic;
+    signal ircount_4: std_logic;
+    signal ircount_5: std_logic;
+    signal co1_1: std_logic;
+    signal ircount_6: std_logic;
+    signal co3_1: std_logic;
+    signal co2_1: std_logic;
+    signal rcount_6: std_logic;
+    signal wcnt_sub_0: std_logic;
+    signal precin: std_logic;
+    signal scuba_vhi: std_logic;
+    signal wcnt_sub_1: std_logic;
+    signal wcnt_sub_2: std_logic;
+    signal co0_2: std_logic;
+    signal wcnt_sub_3: std_logic;
+    signal wcnt_sub_4: std_logic;
+    signal co1_2: std_logic;
+    signal wcnt_sub_5: std_logic;
+    signal wcnt_sub_6: std_logic;
+    signal co2_2: std_logic;
+    signal wcnt_sub_msb: std_logic;
+    signal co3_2d: std_logic;
+    signal co3_2: std_logic;
+    signal rden_i: std_logic;
+    signal cmp_ci: std_logic;
+    signal wcount_r0: std_logic;
+    signal wcount_r1: std_logic;
+    signal rcount_0: std_logic;
+    signal rcount_1: std_logic;
+    signal co0_3: std_logic;
+    signal wcount_r2: std_logic;
+    signal w_g2b_xor_cluster_0: std_logic;
+    signal rcount_2: std_logic;
+    signal rcount_3: std_logic;
+    signal co1_3: std_logic;
+    signal wcount_r4: std_logic;
+    signal wcount_r5: std_logic;
+    signal rcount_4: std_logic;
+    signal rcount_5: std_logic;
+    signal co2_3: std_logic;
+    signal empty_cmp_clr: std_logic;
+    signal empty_cmp_set: std_logic;
+    signal empty_d: std_logic;
+    signal empty_d_c: std_logic;
+    signal cmp_ci_1: std_logic;
+    signal rcount_w0: std_logic;
+    signal rcount_w1: std_logic;
+    signal wcount_0: std_logic;
+    signal wcount_1: std_logic;
+    signal co0_4: std_logic;
+    signal rcount_w2: std_logic;
+    signal r_g2b_xor_cluster_0: std_logic;
+    signal wcount_2: std_logic;
+    signal wcount_3: std_logic;
+    signal co1_4: std_logic;
+    signal rcount_w4: std_logic;
+    signal rcount_w5: std_logic;
+    signal wcount_4: std_logic;
+    signal wcount_5: std_logic;
+    signal co2_4: std_logic;
+    signal full_cmp_clr: std_logic;
+    signal full_cmp_set: std_logic;
+    signal full_d: std_logic;
+    signal full_d_c: std_logic;
+    signal wren_i: std_logic;
+    signal cmp_ci_2: std_logic;
+    signal wcnt_reg_0: std_logic;
+    signal wcnt_reg_1: std_logic;
+    signal co0_5: std_logic;
+    signal wcnt_reg_2: std_logic;
+    signal wcnt_reg_3: std_logic;
+    signal co1_5: std_logic;
+    signal wcnt_reg_4: std_logic;
+    signal wcnt_reg_5: std_logic;
+    signal co2_5: std_logic;
+    signal wcnt_reg_6: std_logic;
+    signal af_d: std_logic;
+    signal af_d_c: std_logic;
+    signal scuba_vlo: std_logic;
+
+    -- local component declarations
+    component AGEB2
+        port (A0: in  std_logic; A1: in  std_logic; B0: in  std_logic; 
+            B1: in  std_logic; CI: in  std_logic; GE: out  std_logic);
+    end component;
+    component AND2
+        port (A: in  std_logic; B: in  std_logic; Z: out  std_logic);
+    end component;
+    component CU2
+        port (CI: in  std_logic; PC0: in  std_logic; PC1: in  std_logic; 
+            CO: out  std_logic; NC0: out  std_logic; NC1: out  std_logic);
+    end component;
+    component FADD2B
+        port (A0: in  std_logic; A1: in  std_logic; B0: in  std_logic; 
+            B1: in  std_logic; CI: in  std_logic; COUT: out  std_logic; 
+            S0: out  std_logic; S1: out  std_logic);
+    end component;
+    component FSUB2B
+        port (A0: in  std_logic; A1: in  std_logic; B0: in  std_logic; 
+            B1: in  std_logic; BI: in  std_logic; BOUT: out  std_logic; 
+            S0: out  std_logic; S1: out  std_logic);
+    end component;
+    component FD1P3BX
+        port (D: in  std_logic; SP: in  std_logic; CK: in  std_logic; 
+            PD: in  std_logic; Q: out  std_logic);
+    end component;
+    component FD1P3DX
+        port (D: in  std_logic; SP: in  std_logic; CK: in  std_logic; 
+            CD: in  std_logic; Q: out  std_logic);
+    end component;
+    component FD1S3BX
+        port (D: in  std_logic; CK: in  std_logic; PD: in  std_logic; 
+            Q: out  std_logic);
+    end component;
+    component FD1S3DX
+        port (D: in  std_logic; CK: in  std_logic; CD: in  std_logic; 
+            Q: out  std_logic);
+    end component;
+    component INV
+        port (A: in  std_logic; Z: out  std_logic);
+    end component;
+    component OR2
+        port (A: in  std_logic; B: in  std_logic; Z: out  std_logic);
+    end component;
+    component ROM16X1A
+        generic (INITVAL : in std_logic_vector(15 downto 0));
+        port (AD3: in  std_logic; AD2: in  std_logic; AD1: in  std_logic; 
+            AD0: in  std_logic; DO0: out  std_logic);
+    end component;
+    component VHI
+        port (Z: out  std_logic);
+    end component;
+    component VLO
+        port (Z: out  std_logic);
+    end component;
+    component XOR2
+        port (A: in  std_logic; B: in  std_logic; Z: out  std_logic);
+    end component;
+    component PDPW16KC
+        generic (GSR : in String; CSDECODE_R : in String; 
+                CSDECODE_W : in String; REGMODE : in String; 
+                DATA_WIDTH_R : in Integer; DATA_WIDTH_W : in Integer);
+        port (DI0: in  std_logic; DI1: in  std_logic; DI2: in  std_logic; 
+            DI3: in  std_logic; DI4: in  std_logic; DI5: in  std_logic; 
+            DI6: in  std_logic; DI7: in  std_logic; DI8: in  std_logic; 
+            DI9: in  std_logic; DI10: in  std_logic; DI11: in  std_logic; 
+            DI12: in  std_logic; DI13: in  std_logic; 
+            DI14: in  std_logic; DI15: in  std_logic; 
+            DI16: in  std_logic; DI17: in  std_logic; 
+            DI18: in  std_logic; DI19: in  std_logic; 
+            DI20: in  std_logic; DI21: in  std_logic; 
+            DI22: in  std_logic; DI23: in  std_logic; 
+            DI24: in  std_logic; DI25: in  std_logic; 
+            DI26: in  std_logic; DI27: in  std_logic; 
+            DI28: in  std_logic; DI29: in  std_logic; 
+            DI30: in  std_logic; DI31: in  std_logic; 
+            DI32: in  std_logic; DI33: in  std_logic; 
+            DI34: in  std_logic; DI35: in  std_logic; 
+            ADW0: in  std_logic; ADW1: in  std_logic; 
+            ADW2: in  std_logic; ADW3: in  std_logic; 
+            ADW4: in  std_logic; ADW5: in  std_logic; 
+            ADW6: in  std_logic; ADW7: in  std_logic; 
+            ADW8: in  std_logic; BE0: in  std_logic; BE1: in  std_logic; 
+            BE2: in  std_logic; BE3: in  std_logic; CEW: in  std_logic; 
+            CLKW: in  std_logic; CSW0: in  std_logic; 
+            CSW1: in  std_logic; CSW2: in  std_logic; 
+            ADR0: in  std_logic; ADR1: in  std_logic; 
+            ADR2: in  std_logic; ADR3: in  std_logic; 
+            ADR4: in  std_logic; ADR5: in  std_logic; 
+            ADR6: in  std_logic; ADR7: in  std_logic; 
+            ADR8: in  std_logic; ADR9: in  std_logic; 
+            ADR10: in  std_logic; ADR11: in  std_logic; 
+            ADR12: in  std_logic; ADR13: in  std_logic; 
+            CER: in  std_logic; CLKR: in  std_logic; CSR0: in  std_logic; 
+            CSR1: in  std_logic; CSR2: in  std_logic; RST: in  std_logic; 
+            DO0: out  std_logic; DO1: out  std_logic; 
+            DO2: out  std_logic; DO3: out  std_logic; 
+            DO4: out  std_logic; DO5: out  std_logic; 
+            DO6: out  std_logic; DO7: out  std_logic; 
+            DO8: out  std_logic; DO9: out  std_logic; 
+            DO10: out  std_logic; DO11: out  std_logic; 
+            DO12: out  std_logic; DO13: out  std_logic; 
+            DO14: out  std_logic; DO15: out  std_logic; 
+            DO16: out  std_logic; DO17: out  std_logic; 
+            DO18: out  std_logic; DO19: out  std_logic; 
+            DO20: out  std_logic; DO21: out  std_logic; 
+            DO22: out  std_logic; DO23: out  std_logic; 
+            DO24: out  std_logic; DO25: out  std_logic; 
+            DO26: out  std_logic; DO27: out  std_logic; 
+            DO28: out  std_logic; DO29: out  std_logic; 
+            DO30: out  std_logic; DO31: out  std_logic; 
+            DO32: out  std_logic; DO33: out  std_logic; 
+            DO34: out  std_logic; DO35: out  std_logic);
+    end component;
+    attribute MEM_LPC_FILE : string; 
+    attribute MEM_INIT_FILE : string; 
+    attribute RESETMODE : string; 
+    attribute GSR : string; 
+    attribute MEM_LPC_FILE of pdp_ram_0_0_0 : label is "FIFO_DC_36x64_DynThr_OutReg.lpc";
+    attribute MEM_INIT_FILE of pdp_ram_0_0_0 : label is "";
+    attribute RESETMODE of pdp_ram_0_0_0 : label is "SYNC";
+    attribute GSR of FF_79 : label is "ENABLED";
+    attribute GSR of FF_78 : label is "ENABLED";
+    attribute GSR of FF_77 : label is "ENABLED";
+    attribute GSR of FF_76 : label is "ENABLED";
+    attribute GSR of FF_75 : label is "ENABLED";
+    attribute GSR of FF_74 : label is "ENABLED";
+    attribute GSR of FF_73 : label is "ENABLED";
+    attribute GSR of FF_72 : label is "ENABLED";
+    attribute GSR of FF_71 : label is "ENABLED";
+    attribute GSR of FF_70 : label is "ENABLED";
+    attribute GSR of FF_69 : label is "ENABLED";
+    attribute GSR of FF_68 : label is "ENABLED";
+    attribute GSR of FF_67 : label is "ENABLED";
+    attribute GSR of FF_66 : label is "ENABLED";
+    attribute GSR of FF_65 : label is "ENABLED";
+    attribute GSR of FF_64 : label is "ENABLED";
+    attribute GSR of FF_63 : label is "ENABLED";
+    attribute GSR of FF_62 : label is "ENABLED";
+    attribute GSR of FF_61 : label is "ENABLED";
+    attribute GSR of FF_60 : label is "ENABLED";
+    attribute GSR of FF_59 : label is "ENABLED";
+    attribute GSR of FF_58 : label is "ENABLED";
+    attribute GSR of FF_57 : label is "ENABLED";
+    attribute GSR of FF_56 : label is "ENABLED";
+    attribute GSR of FF_55 : label is "ENABLED";
+    attribute GSR of FF_54 : label is "ENABLED";
+    attribute GSR of FF_53 : label is "ENABLED";
+    attribute GSR of FF_52 : label is "ENABLED";
+    attribute GSR of FF_51 : label is "ENABLED";
+    attribute GSR of FF_50 : label is "ENABLED";
+    attribute GSR of FF_49 : label is "ENABLED";
+    attribute GSR of FF_48 : label is "ENABLED";
+    attribute GSR of FF_47 : label is "ENABLED";
+    attribute GSR of FF_46 : label is "ENABLED";
+    attribute GSR of FF_45 : label is "ENABLED";
+    attribute GSR of FF_44 : label is "ENABLED";
+    attribute GSR of FF_43 : label is "ENABLED";
+    attribute GSR of FF_42 : label is "ENABLED";
+    attribute GSR of FF_41 : label is "ENABLED";
+    attribute GSR of FF_40 : label is "ENABLED";
+    attribute GSR of FF_39 : label is "ENABLED";
+    attribute GSR of FF_38 : label is "ENABLED";
+    attribute GSR of FF_37 : label is "ENABLED";
+    attribute GSR of FF_36 : label is "ENABLED";
+    attribute GSR of FF_35 : label is "ENABLED";
+    attribute GSR of FF_34 : label is "ENABLED";
+    attribute GSR of FF_33 : label is "ENABLED";
+    attribute GSR of FF_32 : label is "ENABLED";
+    attribute GSR of FF_31 : label is "ENABLED";
+    attribute GSR of FF_30 : label is "ENABLED";
+    attribute GSR of FF_29 : label is "ENABLED";
+    attribute GSR of FF_28 : label is "ENABLED";
+    attribute GSR of FF_27 : label is "ENABLED";
+    attribute GSR of FF_26 : label is "ENABLED";
+    attribute GSR of FF_25 : label is "ENABLED";
+    attribute GSR of FF_24 : label is "ENABLED";
+    attribute GSR of FF_23 : label is "ENABLED";
+    attribute GSR of FF_22 : label is "ENABLED";
+    attribute GSR of FF_21 : label is "ENABLED";
+    attribute GSR of FF_20 : label is "ENABLED";
+    attribute GSR of FF_19 : label is "ENABLED";
+    attribute GSR of FF_18 : label is "ENABLED";
+    attribute GSR of FF_17 : label is "ENABLED";
+    attribute GSR of FF_16 : label is "ENABLED";
+    attribute GSR of FF_15 : label is "ENABLED";
+    attribute GSR of FF_14 : label is "ENABLED";
+    attribute GSR of FF_13 : label is "ENABLED";
+    attribute GSR of FF_12 : label is "ENABLED";
+    attribute GSR of FF_11 : label is "ENABLED";
+    attribute GSR of FF_10 : label is "ENABLED";
+    attribute GSR of FF_9 : label is "ENABLED";
+    attribute GSR of FF_8 : label is "ENABLED";
+    attribute GSR of FF_7 : label is "ENABLED";
+    attribute GSR of FF_6 : label is "ENABLED";
+    attribute GSR of FF_5 : label is "ENABLED";
+    attribute GSR of FF_4 : label is "ENABLED";
+    attribute GSR of FF_3 : label is "ENABLED";
+    attribute GSR of FF_2 : label is "ENABLED";
+    attribute GSR of FF_1 : label is "ENABLED";
+    attribute GSR of FF_0 : label is "ENABLED";
+    attribute syn_keep : boolean;
+    attribute NGD_DRC_MASK : integer;
+    attribute NGD_DRC_MASK of Structure : architecture is 1;
+
+begin
+    -- component instantiation statements
+    AND2_t15: AND2
+        port map (A=>WrEn, B=>invout_1, Z=>wren_i);
+
+    INV_1: INV
+        port map (A=>full_i, Z=>invout_1);
+
+    AND2_t14: AND2
+        port map (A=>RdEn, B=>invout_0, Z=>rden_i);
+
+    INV_0: INV
+        port map (A=>empty_i, Z=>invout_0);
+
+    OR2_t13: OR2
+        port map (A=>Reset, B=>RPReset, Z=>rRst);
+
+    XOR2_t12: XOR2
+        port map (A=>wcount_0, B=>wcount_1, Z=>w_gdata_0);
+
+    XOR2_t11: XOR2
+        port map (A=>wcount_1, B=>wcount_2, Z=>w_gdata_1);
+
+    XOR2_t10: XOR2
+        port map (A=>wcount_2, B=>wcount_3, Z=>w_gdata_2);
+
+    XOR2_t9: XOR2
+        port map (A=>wcount_3, B=>wcount_4, Z=>w_gdata_3);
+
+    XOR2_t8: XOR2
+        port map (A=>wcount_4, B=>wcount_5, Z=>w_gdata_4);
+
+    XOR2_t7: XOR2
+        port map (A=>wcount_5, B=>wcount_6, Z=>w_gdata_5);
+
+    XOR2_t6: XOR2
+        port map (A=>rcount_0, B=>rcount_1, Z=>r_gdata_0);
+
+    XOR2_t5: XOR2
+        port map (A=>rcount_1, B=>rcount_2, Z=>r_gdata_1);
+
+    XOR2_t4: XOR2
+        port map (A=>rcount_2, B=>rcount_3, Z=>r_gdata_2);
+
+    XOR2_t3: XOR2
+        port map (A=>rcount_3, B=>rcount_4, Z=>r_gdata_3);
+
+    XOR2_t2: XOR2
+        port map (A=>rcount_4, B=>rcount_5, Z=>r_gdata_4);
+
+    XOR2_t1: XOR2
+        port map (A=>rcount_5, B=>rcount_6, Z=>r_gdata_5);
+
+    LUT4_15: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>w_gcount_r23, AD2=>w_gcount_r24, 
+            AD1=>w_gcount_r25, AD0=>w_gcount_r26, 
+            DO0=>w_g2b_xor_cluster_0);
+
+    LUT4_14: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>w_gcount_r25, AD2=>w_gcount_r26, AD1=>scuba_vlo, 
+            AD0=>scuba_vlo, DO0=>wcount_r5);
+
+    LUT4_13: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>w_gcount_r24, AD2=>w_gcount_r25, 
+            AD1=>w_gcount_r26, AD0=>scuba_vlo, DO0=>wcount_r4);
+
+    LUT4_12: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>w_gcount_r22, AD2=>w_gcount_r23, 
+            AD1=>w_gcount_r24, AD0=>wcount_r5, DO0=>wcount_r2);
+
+    LUT4_11: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>w_gcount_r21, AD2=>w_gcount_r22, 
+            AD1=>w_gcount_r23, AD0=>wcount_r4, DO0=>wcount_r1);
+
+    LUT4_10: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>w_gcount_r20, AD2=>w_gcount_r21, 
+            AD1=>w_gcount_r22, AD0=>w_g2b_xor_cluster_0, DO0=>wcount_r0);
+
+    LUT4_9: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>r_gcount_w23, AD2=>r_gcount_w24, 
+            AD1=>r_gcount_w25, AD0=>r_gcount_w26, 
+            DO0=>r_g2b_xor_cluster_0);
+
+    LUT4_8: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>r_gcount_w25, AD2=>r_gcount_w26, AD1=>scuba_vlo, 
+            AD0=>scuba_vlo, DO0=>rcount_w5);
+
+    LUT4_7: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>r_gcount_w24, AD2=>r_gcount_w25, 
+            AD1=>r_gcount_w26, AD0=>scuba_vlo, DO0=>rcount_w4);
+
+    LUT4_6: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>r_gcount_w22, AD2=>r_gcount_w23, 
+            AD1=>r_gcount_w24, AD0=>rcount_w5, DO0=>rcount_w2);
+
+    LUT4_5: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>r_gcount_w21, AD2=>r_gcount_w22, 
+            AD1=>r_gcount_w23, AD0=>rcount_w4, DO0=>rcount_w1);
+
+    LUT4_4: ROM16X1A
+        generic map (initval=> X"6996")
+        port map (AD3=>r_gcount_w20, AD2=>r_gcount_w21, 
+            AD1=>r_gcount_w22, AD0=>r_g2b_xor_cluster_0, DO0=>rcount_w0);
+
+    XOR2_t0: XOR2
+        port map (A=>wcount_6, B=>r_gcount_w26, Z=>wcnt_sub_msb);
+
+    LUT4_3: ROM16X1A
+        generic map (initval=> X"0410")
+        port map (AD3=>rptr_6, AD2=>rcount_6, AD1=>w_gcount_r26, 
+            AD0=>scuba_vlo, DO0=>empty_cmp_set);
+
+    LUT4_2: ROM16X1A
+        generic map (initval=> X"1004")
+        port map (AD3=>rptr_6, AD2=>rcount_6, AD1=>w_gcount_r26, 
+            AD0=>scuba_vlo, DO0=>empty_cmp_clr);
+
+    LUT4_1: ROM16X1A
+        generic map (initval=> X"0140")
+        port map (AD3=>wptr_6, AD2=>wcount_6, AD1=>r_gcount_w26, 
+            AD0=>scuba_vlo, DO0=>full_cmp_set);
+
+    LUT4_0: ROM16X1A
+        generic map (initval=> X"4001")
+        port map (AD3=>wptr_6, AD2=>wcount_6, AD1=>r_gcount_w26, 
+            AD0=>scuba_vlo, DO0=>full_cmp_clr);
+
+    pdp_ram_0_0_0: PDPW16KC
+        generic map (CSDECODE_R=> "0b001", CSDECODE_W=> "0b001", GSR=> "DISABLED", 
+        REGMODE=> "OUTREG", DATA_WIDTH_R=>  36, DATA_WIDTH_W=>  36)
+        port map (DI0=>Data(0), DI1=>Data(1), DI2=>Data(2), DI3=>Data(3), 
+            DI4=>Data(4), DI5=>Data(5), DI6=>Data(6), DI7=>Data(7), 
+            DI8=>Data(8), DI9=>Data(9), DI10=>Data(10), DI11=>Data(11), 
+            DI12=>Data(12), DI13=>Data(13), DI14=>Data(14), 
+            DI15=>Data(15), DI16=>Data(16), DI17=>Data(17), 
+            DI18=>Data(18), DI19=>Data(19), DI20=>Data(20), 
+            DI21=>Data(21), DI22=>Data(22), DI23=>Data(23), 
+            DI24=>Data(24), DI25=>Data(25), DI26=>Data(26), 
+            DI27=>Data(27), DI28=>Data(28), DI29=>Data(29), 
+            DI30=>Data(30), DI31=>Data(31), DI32=>Data(32), 
+            DI33=>Data(33), DI34=>Data(34), DI35=>Data(35), ADW0=>wptr_0, 
+            ADW1=>wptr_1, ADW2=>wptr_2, ADW3=>wptr_3, ADW4=>wptr_4, 
+            ADW5=>wptr_5, ADW6=>scuba_vlo, ADW7=>scuba_vlo, 
+            ADW8=>scuba_vlo, BE0=>scuba_vhi, BE1=>scuba_vhi, 
+            BE2=>scuba_vhi, BE3=>scuba_vhi, CEW=>wren_i, CLKW=>WrClock, 
+            CSW0=>scuba_vhi, CSW1=>scuba_vlo, CSW2=>scuba_vlo, 
+            ADR0=>scuba_vlo, ADR1=>scuba_vlo, ADR2=>scuba_vlo, 
+            ADR3=>scuba_vlo, ADR4=>scuba_vlo, ADR5=>rptr_0, ADR6=>rptr_1, 
+            ADR7=>rptr_2, ADR8=>rptr_3, ADR9=>rptr_4, ADR10=>rptr_5, 
+            ADR11=>scuba_vlo, ADR12=>scuba_vlo, ADR13=>scuba_vlo, 
+            CER=>scuba_vhi, CLKR=>RdClock, CSR0=>rden_i, CSR1=>scuba_vlo, 
+            CSR2=>scuba_vlo, RST=>Reset, DO0=>Q(18), DO1=>Q(19), 
+            DO2=>Q(20), DO3=>Q(21), DO4=>Q(22), DO5=>Q(23), DO6=>Q(24), 
+            DO7=>Q(25), DO8=>Q(26), DO9=>Q(27), DO10=>Q(28), DO11=>Q(29), 
+            DO12=>Q(30), DO13=>Q(31), DO14=>Q(32), DO15=>Q(33), 
+            DO16=>Q(34), DO17=>Q(35), DO18=>Q(0), DO19=>Q(1), DO20=>Q(2), 
+            DO21=>Q(3), DO22=>Q(4), DO23=>Q(5), DO24=>Q(6), DO25=>Q(7), 
+            DO26=>Q(8), DO27=>Q(9), DO28=>Q(10), DO29=>Q(11), 
+            DO30=>Q(12), DO31=>Q(13), DO32=>Q(14), DO33=>Q(15), 
+            DO34=>Q(16), DO35=>Q(17));
+
+    FF_79: FD1P3BX
+        port map (D=>iwcount_0, SP=>wren_i, CK=>WrClock, PD=>Reset, 
+            Q=>wcount_0);
+
+    FF_78: FD1P3DX
+        port map (D=>iwcount_1, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wcount_1);
+
+    FF_77: FD1P3DX
+        port map (D=>iwcount_2, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wcount_2);
+
+    FF_76: FD1P3DX
+        port map (D=>iwcount_3, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wcount_3);
+
+    FF_75: FD1P3DX
+        port map (D=>iwcount_4, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wcount_4);
+
+    FF_74: FD1P3DX
+        port map (D=>iwcount_5, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wcount_5);
+
+    FF_73: FD1P3DX
+        port map (D=>iwcount_6, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wcount_6);
+
+    FF_72: FD1P3DX
+        port map (D=>w_gdata_0, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_0);
+
+    FF_71: FD1P3DX
+        port map (D=>w_gdata_1, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_1);
+
+    FF_70: FD1P3DX
+        port map (D=>w_gdata_2, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_2);
+
+    FF_69: FD1P3DX
+        port map (D=>w_gdata_3, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_3);
+
+    FF_68: FD1P3DX
+        port map (D=>w_gdata_4, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_4);
+
+    FF_67: FD1P3DX
+        port map (D=>w_gdata_5, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_5);
+
+    FF_66: FD1P3DX
+        port map (D=>wcount_6, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>w_gcount_6);
+
+    FF_65: FD1P3DX
+        port map (D=>wcount_0, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_0);
+
+    FF_64: FD1P3DX
+        port map (D=>wcount_1, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_1);
+
+    FF_63: FD1P3DX
+        port map (D=>wcount_2, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_2);
+
+    FF_62: FD1P3DX
+        port map (D=>wcount_3, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_3);
+
+    FF_61: FD1P3DX
+        port map (D=>wcount_4, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_4);
+
+    FF_60: FD1P3DX
+        port map (D=>wcount_5, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_5);
+
+    FF_59: FD1P3DX
+        port map (D=>wcount_6, SP=>wren_i, CK=>WrClock, CD=>Reset, 
+            Q=>wptr_6);
+
+    FF_58: FD1P3BX
+        port map (D=>ircount_0, SP=>rden_i, CK=>RdClock, PD=>rRst, 
+            Q=>rcount_0);
+
+    FF_57: FD1P3DX
+        port map (D=>ircount_1, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rcount_1);
+
+    FF_56: FD1P3DX
+        port map (D=>ircount_2, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rcount_2);
+
+    FF_55: FD1P3DX
+        port map (D=>ircount_3, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rcount_3);
+
+    FF_54: FD1P3DX
+        port map (D=>ircount_4, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rcount_4);
+
+    FF_53: FD1P3DX
+        port map (D=>ircount_5, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rcount_5);
+
+    FF_52: FD1P3DX
+        port map (D=>ircount_6, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rcount_6);
+
+    FF_51: FD1P3DX
+        port map (D=>r_gdata_0, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_0);
+
+    FF_50: FD1P3DX
+        port map (D=>r_gdata_1, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_1);
+
+    FF_49: FD1P3DX
+        port map (D=>r_gdata_2, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_2);
+
+    FF_48: FD1P3DX
+        port map (D=>r_gdata_3, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_3);
+
+    FF_47: FD1P3DX
+        port map (D=>r_gdata_4, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_4);
+
+    FF_46: FD1P3DX
+        port map (D=>r_gdata_5, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_5);
+
+    FF_45: FD1P3DX
+        port map (D=>rcount_6, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>r_gcount_6);
+
+    FF_44: FD1P3DX
+        port map (D=>rcount_0, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_0);
+
+    FF_43: FD1P3DX
+        port map (D=>rcount_1, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_1);
+
+    FF_42: FD1P3DX
+        port map (D=>rcount_2, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_2);
+
+    FF_41: FD1P3DX
+        port map (D=>rcount_3, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_3);
+
+    FF_40: FD1P3DX
+        port map (D=>rcount_4, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_4);
+
+    FF_39: FD1P3DX
+        port map (D=>rcount_5, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_5);
+
+    FF_38: FD1P3DX
+        port map (D=>rcount_6, SP=>rden_i, CK=>RdClock, CD=>rRst, 
+            Q=>rptr_6);
+
+    FF_37: FD1S3DX
+        port map (D=>w_gcount_0, CK=>RdClock, CD=>Reset, Q=>w_gcount_r0);
+
+    FF_36: FD1S3DX
+        port map (D=>w_gcount_1, CK=>RdClock, CD=>Reset, Q=>w_gcount_r1);
+
+    FF_35: FD1S3DX
+        port map (D=>w_gcount_2, CK=>RdClock, CD=>Reset, Q=>w_gcount_r2);
+
+    FF_34: FD1S3DX
+        port map (D=>w_gcount_3, CK=>RdClock, CD=>Reset, Q=>w_gcount_r3);
+
+    FF_33: FD1S3DX
+        port map (D=>w_gcount_4, CK=>RdClock, CD=>Reset, Q=>w_gcount_r4);
+
+    FF_32: FD1S3DX
+        port map (D=>w_gcount_5, CK=>RdClock, CD=>Reset, Q=>w_gcount_r5);
+
+    FF_31: FD1S3DX
+        port map (D=>w_gcount_6, CK=>RdClock, CD=>Reset, Q=>w_gcount_r6);
+
+    FF_30: FD1S3DX
+        port map (D=>r_gcount_0, CK=>WrClock, CD=>rRst, Q=>r_gcount_w0);
+
+    FF_29: FD1S3DX
+        port map (D=>r_gcount_1, CK=>WrClock, CD=>rRst, Q=>r_gcount_w1);
+
+    FF_28: FD1S3DX
+        port map (D=>r_gcount_2, CK=>WrClock, CD=>rRst, Q=>r_gcount_w2);
+
+    FF_27: FD1S3DX
+        port map (D=>r_gcount_3, CK=>WrClock, CD=>rRst, Q=>r_gcount_w3);
+
+    FF_26: FD1S3DX
+        port map (D=>r_gcount_4, CK=>WrClock, CD=>rRst, Q=>r_gcount_w4);
+
+    FF_25: FD1S3DX
+        port map (D=>r_gcount_5, CK=>WrClock, CD=>rRst, Q=>r_gcount_w5);
+
+    FF_24: FD1S3DX
+        port map (D=>r_gcount_6, CK=>WrClock, CD=>rRst, Q=>r_gcount_w6);
+
+    FF_23: FD1S3DX
+        port map (D=>w_gcount_r0, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r20);
+
+    FF_22: FD1S3DX
+        port map (D=>w_gcount_r1, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r21);
+
+    FF_21: FD1S3DX
+        port map (D=>w_gcount_r2, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r22);
+
+    FF_20: FD1S3DX
+        port map (D=>w_gcount_r3, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r23);
+
+    FF_19: FD1S3DX
+        port map (D=>w_gcount_r4, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r24);
+
+    FF_18: FD1S3DX
+        port map (D=>w_gcount_r5, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r25);
+
+    FF_17: FD1S3DX
+        port map (D=>w_gcount_r6, CK=>RdClock, CD=>Reset, 
+            Q=>w_gcount_r26);
+
+    FF_16: FD1S3DX
+        port map (D=>r_gcount_w0, CK=>WrClock, CD=>rRst, Q=>r_gcount_w20);
+
+    FF_15: FD1S3DX
+        port map (D=>r_gcount_w1, CK=>WrClock, CD=>rRst, Q=>r_gcount_w21);
+
+    FF_14: FD1S3DX
+        port map (D=>r_gcount_w2, CK=>WrClock, CD=>rRst, Q=>r_gcount_w22);
+
+    FF_13: FD1S3DX
+        port map (D=>r_gcount_w3, CK=>WrClock, CD=>rRst, Q=>r_gcount_w23);
+
+    FF_12: FD1S3DX
+        port map (D=>r_gcount_w4, CK=>WrClock, CD=>rRst, Q=>r_gcount_w24);
+
+    FF_11: FD1S3DX
+        port map (D=>r_gcount_w5, CK=>WrClock, CD=>rRst, Q=>r_gcount_w25);
+
+    FF_10: FD1S3DX
+        port map (D=>r_gcount_w6, CK=>WrClock, CD=>rRst, Q=>r_gcount_w26);
+
+    FF_9: FD1S3DX
+        port map (D=>wcnt_sub_0, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_0);
+
+    FF_8: FD1S3DX
+        port map (D=>wcnt_sub_1, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_1);
+
+    FF_7: FD1S3DX
+        port map (D=>wcnt_sub_2, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_2);
+
+    FF_6: FD1S3DX
+        port map (D=>wcnt_sub_3, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_3);
+
+    FF_5: FD1S3DX
+        port map (D=>wcnt_sub_4, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_4);
+
+    FF_4: FD1S3DX
+        port map (D=>wcnt_sub_5, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_5);
+
+    FF_3: FD1S3DX
+        port map (D=>wcnt_sub_6, CK=>WrClock, CD=>Reset, Q=>wcnt_reg_6);
+
+    FF_2: FD1S3BX
+        port map (D=>empty_d, CK=>RdClock, PD=>rRst, Q=>empty_i);
+
+    FF_1: FD1S3DX
+        port map (D=>full_d, CK=>WrClock, CD=>Reset, Q=>full_i);
+
+    FF_0: FD1S3DX
+        port map (D=>af_d, CK=>WrClock, CD=>Reset, Q=>AlmostFull);
+
+    w_gctr_cia: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vhi, B0=>scuba_vlo, 
+            B1=>scuba_vhi, CI=>scuba_vlo, COUT=>w_gctr_ci, S0=>open, 
+            S1=>open);
+
+    w_gctr_0: CU2
+        port map (CI=>w_gctr_ci, PC0=>wcount_0, PC1=>wcount_1, CO=>co0, 
+            NC0=>iwcount_0, NC1=>iwcount_1);
+
+    w_gctr_1: CU2
+        port map (CI=>co0, PC0=>wcount_2, PC1=>wcount_3, CO=>co1, 
+            NC0=>iwcount_2, NC1=>iwcount_3);
+
+    w_gctr_2: CU2
+        port map (CI=>co1, PC0=>wcount_4, PC1=>wcount_5, CO=>co2, 
+            NC0=>iwcount_4, NC1=>iwcount_5);
+
+    w_gctr_3: CU2
+        port map (CI=>co2, PC0=>wcount_6, PC1=>scuba_vlo, CO=>co3, 
+            NC0=>iwcount_6, NC1=>open);
+
+    r_gctr_cia: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vhi, B0=>scuba_vlo, 
+            B1=>scuba_vhi, CI=>scuba_vlo, COUT=>r_gctr_ci, S0=>open, 
+            S1=>open);
+
+    r_gctr_0: CU2
+        port map (CI=>r_gctr_ci, PC0=>rcount_0, PC1=>rcount_1, CO=>co0_1, 
+            NC0=>ircount_0, NC1=>ircount_1);
+
+    r_gctr_1: CU2
+        port map (CI=>co0_1, PC0=>rcount_2, PC1=>rcount_3, CO=>co1_1, 
+            NC0=>ircount_2, NC1=>ircount_3);
+
+    r_gctr_2: CU2
+        port map (CI=>co1_1, PC0=>rcount_4, PC1=>rcount_5, CO=>co2_1, 
+            NC0=>ircount_4, NC1=>ircount_5);
+
+    r_gctr_3: CU2
+        port map (CI=>co2_1, PC0=>rcount_6, PC1=>scuba_vlo, CO=>co3_1, 
+            NC0=>ircount_6, NC1=>open);
+
+    precin_inst264: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vlo, B0=>scuba_vlo, 
+            B1=>scuba_vlo, CI=>scuba_vlo, COUT=>precin, S0=>open, 
+            S1=>open);
+
+    scuba_vhi_inst: VHI
+        port map (Z=>scuba_vhi);
+
+    wcnt_0: FSUB2B
+        port map (A0=>scuba_vhi, A1=>wcount_0, B0=>scuba_vlo, 
+            B1=>rcount_w0, BI=>precin, BOUT=>co0_2, S0=>open, 
+            S1=>wcnt_sub_0);
+
+    wcnt_1: FSUB2B
+        port map (A0=>wcount_1, A1=>wcount_2, B0=>rcount_w1, 
+            B1=>rcount_w2, BI=>co0_2, BOUT=>co1_2, S0=>wcnt_sub_1, 
+            S1=>wcnt_sub_2);
+
+    wcnt_2: FSUB2B
+        port map (A0=>wcount_3, A1=>wcount_4, B0=>r_g2b_xor_cluster_0, 
+            B1=>rcount_w4, BI=>co1_2, BOUT=>co2_2, S0=>wcnt_sub_3, 
+            S1=>wcnt_sub_4);
+
+    wcnt_3: FSUB2B
+        port map (A0=>wcount_5, A1=>wcnt_sub_msb, B0=>rcount_w5, 
+            B1=>scuba_vlo, BI=>co2_2, BOUT=>co3_2, S0=>wcnt_sub_5, 
+            S1=>wcnt_sub_6);
+
+    wcntd: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vlo, B0=>scuba_vlo, 
+            B1=>scuba_vlo, CI=>co3_2, COUT=>open, S0=>co3_2d, S1=>open);
+
+    empty_cmp_ci_a: FADD2B
+        port map (A0=>scuba_vlo, A1=>rden_i, B0=>scuba_vlo, B1=>rden_i, 
+            CI=>scuba_vlo, COUT=>cmp_ci, S0=>open, S1=>open);
+
+    empty_cmp_0: AGEB2
+        port map (A0=>rcount_0, A1=>rcount_1, B0=>wcount_r0, 
+            B1=>wcount_r1, CI=>cmp_ci, GE=>co0_3);
+
+    empty_cmp_1: AGEB2
+        port map (A0=>rcount_2, A1=>rcount_3, B0=>wcount_r2, 
+            B1=>w_g2b_xor_cluster_0, CI=>co0_3, GE=>co1_3);
+
+    empty_cmp_2: AGEB2
+        port map (A0=>rcount_4, A1=>rcount_5, B0=>wcount_r4, 
+            B1=>wcount_r5, CI=>co1_3, GE=>co2_3);
+
+    empty_cmp_3: AGEB2
+        port map (A0=>empty_cmp_set, A1=>scuba_vlo, B0=>empty_cmp_clr, 
+            B1=>scuba_vlo, CI=>co2_3, GE=>empty_d_c);
+
+    a0: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vlo, B0=>scuba_vlo, 
+            B1=>scuba_vlo, CI=>empty_d_c, COUT=>open, S0=>empty_d, 
+            S1=>open);
+
+    full_cmp_ci_a: FADD2B
+        port map (A0=>scuba_vlo, A1=>wren_i, B0=>scuba_vlo, B1=>wren_i, 
+            CI=>scuba_vlo, COUT=>cmp_ci_1, S0=>open, S1=>open);
+
+    full_cmp_0: AGEB2
+        port map (A0=>wcount_0, A1=>wcount_1, B0=>rcount_w0, 
+            B1=>rcount_w1, CI=>cmp_ci_1, GE=>co0_4);
+
+    full_cmp_1: AGEB2
+        port map (A0=>wcount_2, A1=>wcount_3, B0=>rcount_w2, 
+            B1=>r_g2b_xor_cluster_0, CI=>co0_4, GE=>co1_4);
+
+    full_cmp_2: AGEB2
+        port map (A0=>wcount_4, A1=>wcount_5, B0=>rcount_w4, 
+            B1=>rcount_w5, CI=>co1_4, GE=>co2_4);
+
+    full_cmp_3: AGEB2
+        port map (A0=>full_cmp_set, A1=>scuba_vlo, B0=>full_cmp_clr, 
+            B1=>scuba_vlo, CI=>co2_4, GE=>full_d_c);
+
+    a1: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vlo, B0=>scuba_vlo, 
+            B1=>scuba_vlo, CI=>full_d_c, COUT=>open, S0=>full_d, 
+            S1=>open);
+
+    af_d_cmp_ci_a: FADD2B
+        port map (A0=>scuba_vlo, A1=>wren_i, B0=>scuba_vlo, B1=>wren_i, 
+            CI=>scuba_vlo, COUT=>cmp_ci_2, S0=>open, S1=>open);
+
+    af_d_cmp_0: AGEB2
+        port map (A0=>wcnt_reg_0, A1=>wcnt_reg_1, B0=>AmFullThresh(0), 
+            B1=>AmFullThresh(1), CI=>cmp_ci_2, GE=>co0_5);
+
+    af_d_cmp_1: AGEB2
+        port map (A0=>wcnt_reg_2, A1=>wcnt_reg_3, B0=>AmFullThresh(2), 
+            B1=>AmFullThresh(3), CI=>co0_5, GE=>co1_5);
+
+    af_d_cmp_2: AGEB2
+        port map (A0=>wcnt_reg_4, A1=>wcnt_reg_5, B0=>AmFullThresh(4), 
+            B1=>AmFullThresh(5), CI=>co1_5, GE=>co2_5);
+
+    af_d_cmp_3: AGEB2
+        port map (A0=>wcnt_reg_6, A1=>scuba_vlo, B0=>scuba_vlo, 
+            B1=>scuba_vlo, CI=>co2_5, GE=>af_d_c);
+
+    scuba_vlo_inst: VLO
+        port map (Z=>scuba_vlo);
+
+    a2: FADD2B
+        port map (A0=>scuba_vlo, A1=>scuba_vlo, B0=>scuba_vlo, 
+            B1=>scuba_vlo, CI=>af_d_c, COUT=>open, S0=>af_d, S1=>open);
+
+    Empty <= empty_i;
+    Full <= full_i;
+end Structure;
+
+-- synopsys translate_off
+library ecp3;
+configuration Structure_CON of FIFO_DC_36x64_DynThr_OutReg is
+    for Structure
+        for all:AGEB2 use entity ecp3.AGEB2(V); end for;
+        for all:AND2 use entity ecp3.AND2(V); end for;
+        for all:CU2 use entity ecp3.CU2(V); end for;
+        for all:FADD2B use entity ecp3.FADD2B(V); end for;
+        for all:FSUB2B use entity ecp3.FSUB2B(V); end for;
+        for all:FD1P3BX use entity ecp3.FD1P3BX(V); end for;
+        for all:FD1P3DX use entity ecp3.FD1P3DX(V); end for;
+        for all:FD1S3BX use entity ecp3.FD1S3BX(V); end for;
+        for all:FD1S3DX use entity ecp3.FD1S3DX(V); end for;
+        for all:INV use entity ecp3.INV(V); end for;
+        for all:OR2 use entity ecp3.OR2(V); end for;
+        for all:ROM16X1A use entity ecp3.ROM16X1A(V); end for;
+        for all:VHI use entity ecp3.VHI(V); end for;
+        for all:VLO use entity ecp3.VLO(V); end for;
+        for all:XOR2 use entity ecp3.XOR2(V); end for;
+        for all:PDPW16KC use entity ecp3.PDPW16KC(V); end for;
+    end for;
+end Structure_CON;
+
+-- synopsys translate_on
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg_generate.log b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg_generate.log
new file mode 100644 (file)
index 0000000..801e1e0
--- /dev/null
@@ -0,0 +1,48 @@
+Starting process: module
+
+Starting process: 
+
+SCUBA, Version Diamond (64-bit) 3.5.0.102
+Mon Sep 21 11:51:55 2015
+
+Copyright (c) 1991-1994 by NeoCAD Inc. All rights reserved.
+Copyright (c) 1995 AT&T Corp.   All rights reserved.
+Copyright (c) 1995-2001 Lucent Technologies Inc.  All rights reserved.
+Copyright (c) 2001 Agere Systems   All rights reserved.
+Copyright (c) 2002-2015 Lattice Semiconductor Corporation,  All rights reserved.
+
+BEGIN SCUBA Module Synthesis
+
+    Issued command   : /opt/lattice/diamond/3.5_x64/ispfpga/bin/lin64/scuba -w -n FIFO_DC_36x64_DynThr_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type fifodc -addr_width 6 -data_width 36 -num_words 64 -rdata_width 36 -outdata REGISTERED -no_enable -pe -1 -pf 0 
+    Circuit name     : FIFO_DC_36x64_DynThr_OutReg
+    Module type      : ebfifo
+    Module Version   : 5.8
+    Ports            : 
+       Inputs       : Data[35:0], WrClock, RdClock, WrEn, RdEn, Reset, RPReset, AmFullThresh[5:0]
+       Outputs      : Q[35:0], Empty, Full, AlmostFull
+    I/O buffer       : not inserted
+    EDIF output      : FIFO_DC_36x64_DynThr_OutReg.edn
+    VHDL output      : FIFO_DC_36x64_DynThr_OutReg.vhd
+    VHDL template    : FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
+    VHDL testbench   : tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
+    VHDL purpose     : for synthesis and simulation
+    Bus notation     : big endian
+    Report output    : FIFO_DC_36x64_DynThr_OutReg.srp
+    Estimated Resource Usage:
+            LUT : 100
+            EBR : 1
+            Reg : 80
+
+END   SCUBA Module Synthesis
+
+File: FIFO_DC_36x64_DynThr_OutReg.lpc created.
+
+
+End process: completed successfully.
+
+
+Total Warnings:  0
+
+Total Errors:  0
+
+
diff --git a/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd b/base/cores/ecp3/FIFO/FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
new file mode 100644 (file)
index 0000000..71e6867
--- /dev/null
@@ -0,0 +1,20 @@
+-- VHDL module instantiation generated by SCUBA Diamond (64-bit) 3.5.0.102
+-- Module  Version: 5.8
+-- Mon Sep 21 11:51:55 2015
+
+-- parameterized module component declaration
+component FIFO_DC_36x64_DynThr_OutReg
+    port (Data: in  std_logic_vector(35 downto 0); 
+        WrClock: in  std_logic; RdClock: in  std_logic; 
+        WrEn: in  std_logic; RdEn: in  std_logic; Reset: in  std_logic; 
+        RPReset: in  std_logic; 
+        AmFullThresh: in  std_logic_vector(5 downto 0); 
+        Q: out  std_logic_vector(35 downto 0); Empty: out  std_logic; 
+        Full: out  std_logic; AlmostFull: out  std_logic);
+end component;
+
+-- parameterized module component instance
+__ : FIFO_DC_36x64_DynThr_OutReg
+    port map (Data(35 downto 0)=>__, WrClock=>__, RdClock=>__, WrEn=>__, 
+        RdEn=>__, Reset=>__, RPReset=>__, AmFullThresh(5 downto 0)=>__, 
+        Q(35 downto 0)=>__, Empty=>__, Full=>__, AlmostFull=>__);
index 6c76eaed2dd429c57e40138894373e16bfa5f459..0e1d16c49fbf51f36ab39b8a1a223cb375737f1b 100644 (file)
@@ -85,7 +85,7 @@ set Para(install_dir) $env(TOOLRTF)
 set Para(FPGAPath) "[file join $Para(install_dir) ispfpga bin $platformpath]"
 
 set scuba "$Para(FPGAPath)/scuba"
-set modulename "FIFO_36x32_OutReg"
+set modulename "FIFO_DC_36x64_DynThr_OutReg"
 set lang "vhdl"
 set lpcfile "$Para(sbp_path)/$modulename.lpc"
 set arch "ep5c00"
index 538c3f49a6aeac6a027302ef0c21dc292230eae6..3ebf8878432d22c53b7b5e4d1b4316eebd1b9358 100644 (file)
@@ -50,8 +50,8 @@ set Para(install_dir) $env(TOOLRTF)
 set Para(FPGAPath) "[file join $Para(install_dir) ispfpga bin $platformpath]"
 set Para(bin_dir) "[file join $Para(install_dir) bin $platformpath]"
 
-set Para(ModuleName) "FIFO_36x32_OutReg"
-set Para(Module) "FIFO"
+set Para(ModuleName) "FIFO_DC_36x64_DynThr_OutReg"
+set Para(Module) "FIFO_DC"
 set Para(libname) latticeecp3
 set Para(arch_name) ep5c00
 set Para(PartType) "LFE3-150EA"
index cd988d8e1df116c37d6ed7cfd958604848cc7da0..83391a26109120734d402c8b25efcd36b272f8e5 100644 (file)
@@ -1,5 +1,5 @@
 SCUBA, Version Diamond (64-bit) 3.5.0.102
-Thu Sep 10 16:33:18 2015
+Mon Sep 21 11:51:55 2015
   
 Copyright (c) 1991-1994 by NeoCAD Inc. All rights reserved.
 Copyright (c) 1995 AT&T Corp.   All rights reserved.
@@ -9,25 +9,25 @@ Copyright (c) 2002-2015 Lattice Semiconductor Corporation,  All rights reserved.
   
 BEGIN SCUBA Module Synthesis
   
-    Issued command   : /opt/lattice/diamond/3.5_x64/ispfpga/bin/lin64/scuba -w -n FIFO_36x32_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type fifoblk -addr_width 5 -data_width 36 -num_words 32 -outdata REGISTERED -no_enable -pe -1 -pf 24 
-    Circuit name     : FIFO_36x32_OutReg
-    Module type      : fifoblk
-    Module Version   : 5.1
+    Issued command   : /opt/lattice/diamond/3.5_x64/ispfpga/bin/lin64/scuba -w -n FIFO_DC_36x64_DynThr_OutReg -lang vhdl -synth synplify -bus_exp 7 -bb -arch ep5c00 -type fifodc -addr_width 6 -data_width 36 -num_words 64 -rdata_width 36 -outdata REGISTERED -no_enable -pe -1 -pf 0 
+    Circuit name     : FIFO_DC_36x64_DynThr_OutReg
+    Module type      : ebfifo
+    Module Version   : 5.8
     Ports            : 
-    Inputs       : Data[35:0], Clock, WrEn, RdEn, Reset
+    Inputs       : Data[35:0], WrClock, RdClock, WrEn, RdEn, Reset, RPReset, AmFullThresh[5:0]
     Outputs      : Q[35:0], Empty, Full, AlmostFull
     I/O buffer       : not inserted
-    EDIF output      : FIFO_36x32_OutReg.edn
-    VHDL output      : FIFO_36x32_OutReg.vhd
-    VHDL template    : FIFO_36x32_OutReg_tmpl.vhd
-    VHDL testbench   : tb_FIFO_36x32_OutReg_tmpl.vhd
+    EDIF output      : FIFO_DC_36x64_DynThr_OutReg.edn
+    VHDL output      : FIFO_DC_36x64_DynThr_OutReg.vhd
+    VHDL template    : FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
+    VHDL testbench   : tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
     VHDL purpose     : for synthesis and simulation
     Bus notation     : big endian
-    Report output    : FIFO_36x32_OutReg.srp
+    Report output    : FIFO_DC_36x64_DynThr_OutReg.srp
     Estimated Resource Usage:
-            LUT : 61
+            LUT : 100
             EBR : 1
-            Reg : 21
+            Reg : 80
   
 END   SCUBA Module Synthesis
 
diff --git a/base/cores/ecp3/FIFO/tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd b/base/cores/ecp3/FIFO/tb_FIFO_DC_36x64_DynThr_OutReg_tmpl.vhd
new file mode 100644 (file)
index 0000000..e572026
--- /dev/null
@@ -0,0 +1,110 @@
+-- VHDL testbench template generated by SCUBA Diamond (64-bit) 3.5.0.102
+library IEEE;
+use IEEE.std_logic_1164.all;
+use IEEE.std_logic_unsigned.all;
+
+use IEEE.math_real.all;
+
+use IEEE.numeric_std.all;
+
+entity tb is
+end entity tb;
+
+
+architecture test of tb is 
+
+    component FIFO_DC_36x64_DynThr_OutReg
+        port (Data : in std_logic_vector(35 downto 0); 
+        WrClock: in std_logic; RdClock: in std_logic; WrEn: in std_logic; 
+        RdEn: in std_logic; Reset: in std_logic; RPReset: in std_logic; 
+        AmFullThresh : in std_logic_vector(5 downto 0); 
+        Q : out std_logic_vector(35 downto 0); Empty: out std_logic; 
+        Full: out std_logic; AlmostFull: out std_logic
+    );
+    end component;
+
+    signal Data : std_logic_vector(35 downto 0) := (others => '0');
+    signal WrClock: std_logic := '0';
+    signal RdClock: std_logic := '0';
+    signal WrEn: std_logic := '0';
+    signal RdEn: std_logic := '0';
+    signal Reset: std_logic := '0';
+    signal RPReset: std_logic := '0';
+    signal AmFullThresh : std_logic_vector(5 downto 0) := (others => '0');
+    signal Q : std_logic_vector(35 downto 0);
+    signal Empty: std_logic;
+    signal Full: std_logic;
+    signal AlmostFull: std_logic;
+begin
+    u1 : FIFO_DC_36x64_DynThr_OutReg
+        port map (Data => Data, WrClock => WrClock, RdClock => RdClock, 
+            WrEn => WrEn, RdEn => RdEn, Reset => Reset, RPReset => RPReset, 
+            AmFullThresh => AmFullThresh, Q => Q, Empty => Empty, Full => Full, 
+            AlmostFull => AlmostFull
+        );
+
+    process
+
+    begin
+      Data <= (others => '0') ;
+      wait for 100 ns;
+      wait until Reset = '0';
+      for i in 0 to 67 loop
+        wait until WrClock'event and WrClock = '1';
+        Data <= Data + '1' after 1 ns;
+      end loop;
+      wait;
+    end process;
+
+    WrClock <= not WrClock after 5.00 ns;
+
+    RdClock <= not RdClock after 5.00 ns;
+
+    process
+
+    begin
+      WrEn <= '0' ;
+      wait for 100 ns;
+      wait until Reset = '0';
+      for i in 0 to 67 loop
+        wait until WrClock'event and WrClock = '1';
+        WrEn <= '1' after 1 ns;
+      end loop;
+      WrEn <= '0' ;
+      wait;
+    end process;
+
+    process
+
+    begin
+      RdEn <= '0' ;
+      wait until Reset = '0';
+      wait until WrEn = '1';
+      wait until WrEn = '0';
+      for i in 0 to 67 loop
+        wait until RdClock'event and RdClock = '1';
+        RdEn <= '1' after 1 ns;
+      end loop;
+      RdEn <= '0' ;
+      wait;
+    end process;
+
+    process
+
+    begin
+      Reset <= '1' ;
+      wait for 100 ns;
+      Reset <= '0' ;
+      wait;
+    end process;
+
+    process
+
+    begin
+      RPReset <= '1' ;
+      wait for 100 ns;
+      RPReset <= '0' ;
+      wait;
+    end process;
+
+end architecture test;