yowasp-yosys 0.44.0.0.post760__py3-none-any.whl → 0.46.0.0.post790__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- yowasp_yosys/share/gowin/cells_sim.v +150 -0
- yowasp_yosys/share/gowin/cells_xtra.v +0 -3
- yowasp_yosys/share/include/frontends/ast/ast.h +3 -0
- yowasp_yosys/share/include/kernel/celltypes.h +3 -3
- yowasp_yosys/share/include/kernel/constids.inc +1 -0
- yowasp_yosys/share/include/kernel/drivertools.h +1332 -0
- yowasp_yosys/share/include/kernel/ff.h +4 -2
- yowasp_yosys/share/include/kernel/hashlib.h +32 -0
- yowasp_yosys/share/include/kernel/log.h +2 -0
- yowasp_yosys/share/include/kernel/mem.h +109 -0
- yowasp_yosys/share/include/kernel/rtlil.h +24 -1
- yowasp_yosys/share/include/kernel/sexpr.h +122 -0
- yowasp_yosys/share/include/kernel/utils.h +9 -0
- yowasp_yosys/share/include/kernel/yosys_common.h +2 -0
- yowasp_yosys/share/nanoxplore/arith_map.v +76 -0
- yowasp_yosys/share/nanoxplore/brams.txt +50 -0
- yowasp_yosys/share/nanoxplore/brams_init.vh +23 -0
- yowasp_yosys/share/nanoxplore/brams_map.v +84 -0
- yowasp_yosys/share/nanoxplore/cells_bb.v +127 -0
- yowasp_yosys/share/nanoxplore/cells_bb_l.v +2156 -0
- yowasp_yosys/share/nanoxplore/cells_bb_m.v +1527 -0
- yowasp_yosys/share/nanoxplore/cells_bb_u.v +2758 -0
- yowasp_yosys/share/nanoxplore/cells_map.v +95 -0
- yowasp_yosys/share/nanoxplore/cells_sim.v +421 -0
- yowasp_yosys/share/nanoxplore/cells_sim_l.v +0 -0
- yowasp_yosys/share/nanoxplore/cells_sim_m.v +0 -0
- yowasp_yosys/share/nanoxplore/cells_sim_u.v +306 -0
- yowasp_yosys/share/nanoxplore/cells_wrap.v +201 -0
- yowasp_yosys/share/nanoxplore/cells_wrap_l.v +1713 -0
- yowasp_yosys/share/nanoxplore/cells_wrap_m.v +1501 -0
- yowasp_yosys/share/nanoxplore/cells_wrap_u.v +3506 -0
- yowasp_yosys/share/nanoxplore/io_map.v +15 -0
- yowasp_yosys/share/nanoxplore/latches_map.v +11 -0
- yowasp_yosys/share/nanoxplore/rf_init.vh +17 -0
- yowasp_yosys/share/nanoxplore/rf_rams_l.txt +15 -0
- yowasp_yosys/share/nanoxplore/rf_rams_m.txt +15 -0
- yowasp_yosys/share/nanoxplore/rf_rams_map_l.v +30 -0
- yowasp_yosys/share/nanoxplore/rf_rams_map_m.v +30 -0
- yowasp_yosys/share/nanoxplore/rf_rams_map_u.v +345 -0
- yowasp_yosys/share/nanoxplore/rf_rams_u.txt +66 -0
- yowasp_yosys/share/python3/sby_core.py +1 -0
- yowasp_yosys/share/python3/sby_design.py +18 -24
- yowasp_yosys/share/python3/sby_engine_aiger.py +39 -3
- yowasp_yosys/share/python3/sby_engine_smtbmc.py +16 -8
- yowasp_yosys/share/quicklogic/qlf_k6n10f/bram_types_sim.v +1 -1
- yowasp_yosys/share/simlib.v +180 -1
- yowasp_yosys/share/techmap.v +2 -1
- yowasp_yosys/smtbmc.py +19 -8
- yowasp_yosys/yosys.wasm +0 -0
- {yowasp_yosys-0.44.0.0.post760.dist-info → yowasp_yosys-0.46.0.0.post790.dist-info}/METADATA +1 -1
- {yowasp_yosys-0.44.0.0.post760.dist-info → yowasp_yosys-0.46.0.0.post790.dist-info}/RECORD +54 -26
- {yowasp_yosys-0.44.0.0.post760.dist-info → yowasp_yosys-0.46.0.0.post790.dist-info}/WHEEL +0 -0
- {yowasp_yosys-0.44.0.0.post760.dist-info → yowasp_yosys-0.46.0.0.post790.dist-info}/entry_points.txt +0 -0
- {yowasp_yosys-0.44.0.0.post760.dist-info → yowasp_yosys-0.46.0.0.post790.dist-info}/top_level.txt +0 -0
|
@@ -618,6 +618,21 @@ module OSER4(D3, D2, D1, D0, TX1, TX0, FCLK, PCLK, RESET, Q1, Q0);
|
|
|
618
618
|
parameter HWL = "false";
|
|
619
619
|
endmodule
|
|
620
620
|
|
|
621
|
+
module OSER4_MEM (Q0, Q1, D0, D1, D2, D3, TX0, TX1, PCLK, FCLK, TCLK, RESET) ;
|
|
622
|
+
parameter GSREN = "";
|
|
623
|
+
parameter LSREN = "";
|
|
624
|
+
parameter HWL = "";
|
|
625
|
+
parameter TCLK_SOURCE = "";
|
|
626
|
+
parameter TXCLK_POL = "";
|
|
627
|
+
|
|
628
|
+
input D0, D1, D2, D3;
|
|
629
|
+
input TX0, TX1;
|
|
630
|
+
input PCLK, FCLK, TCLK, RESET;
|
|
631
|
+
output Q0, Q1;
|
|
632
|
+
|
|
633
|
+
parameter ID = "";
|
|
634
|
+
endmodule
|
|
635
|
+
|
|
621
636
|
module OSER8(D7, D6, D5, D4, D3, D2, D1, D0, TX3, TX2, TX1, TX0, FCLK, PCLK, RESET, Q1, Q0);
|
|
622
637
|
output Q1;
|
|
623
638
|
output Q0;
|
|
@@ -729,6 +744,21 @@ RESET, CALIB, D);
|
|
|
729
744
|
parameter LSREN = "true";
|
|
730
745
|
endmodule
|
|
731
746
|
|
|
747
|
+
module IDES4_MEM (Q0, Q1, Q2, Q3, D, WADDR,
|
|
748
|
+
RADDR, CALIB, PCLK, FCLK, ICLK, RESET) ;
|
|
749
|
+
parameter GSREN = "";
|
|
750
|
+
parameter LSREN = "";
|
|
751
|
+
|
|
752
|
+
input D, ICLK, FCLK, PCLK;
|
|
753
|
+
input [2:0] WADDR;
|
|
754
|
+
input [2:0] RADDR;
|
|
755
|
+
input CALIB, RESET;
|
|
756
|
+
|
|
757
|
+
output Q0,Q1,Q2,Q3;
|
|
758
|
+
|
|
759
|
+
parameter ID = "";
|
|
760
|
+
endmodule
|
|
761
|
+
|
|
732
762
|
module IDES8(Q7, Q6, Q5, Q4, Q3, Q2, Q1, Q0, FCLK, PCLK,
|
|
733
763
|
RESET, CALIB, D);
|
|
734
764
|
input D;
|
|
@@ -842,6 +872,28 @@ module IDDRC(D, CLK, CLEAR, Q0, Q1);
|
|
|
842
872
|
parameter Q1_INIT = 1'b0;
|
|
843
873
|
endmodule
|
|
844
874
|
|
|
875
|
+
module DQS(DQSR90, DQSW0, DQSW270, RPOINT, WPOINT, RVALID, RBURST, RFLAG,
|
|
876
|
+
WFLAG, DQSIN, DLLSTEP, WSTEP, READ, RLOADN, RMOVE, RDIR, WLOADN, WMOVE, WDIR,
|
|
877
|
+
HOLD, RCLKSEL, PCLK, FCLK, RESET) ;
|
|
878
|
+
input DQSIN,PCLK,FCLK,RESET;
|
|
879
|
+
input [3:0] READ;
|
|
880
|
+
input [2:0] RCLKSEL;
|
|
881
|
+
input [7:0] DLLSTEP;
|
|
882
|
+
input [7:0] WSTEP;
|
|
883
|
+
input RLOADN, RMOVE, RDIR, WLOADN, WMOVE, WDIR, HOLD;
|
|
884
|
+
|
|
885
|
+
output DQSR90, DQSW0, DQSW270;
|
|
886
|
+
output [2:0] RPOINT, WPOINT;
|
|
887
|
+
output RVALID,RBURST, RFLAG, WFLAG;
|
|
888
|
+
|
|
889
|
+
parameter FIFO_MODE_SEL = "";
|
|
890
|
+
parameter RD_PNTR = "";
|
|
891
|
+
parameter DQS_MODE = "";
|
|
892
|
+
parameter HWL = "";
|
|
893
|
+
parameter GSREN = "";
|
|
894
|
+
parameter ID = "";
|
|
895
|
+
endmodule
|
|
896
|
+
|
|
845
897
|
(* blackbox *)
|
|
846
898
|
module ODDR(D0, D1, TX, CLK, Q0, Q1);
|
|
847
899
|
input D0;
|
|
@@ -1914,5 +1966,103 @@ output CLKOUT;
|
|
|
1914
1966
|
parameter DCS_MODE = "RISING";
|
|
1915
1967
|
endmodule
|
|
1916
1968
|
|
|
1969
|
+
(* blackbox *)
|
|
1970
|
+
module EMCU (
|
|
1971
|
+
input FCLK,
|
|
1972
|
+
input PORESETN,
|
|
1973
|
+
input SYSRESETN,
|
|
1974
|
+
input RTCSRCCLK,
|
|
1975
|
+
output [15:0] IOEXPOUTPUTO,
|
|
1976
|
+
output [15:0] IOEXPOUTPUTENO,
|
|
1977
|
+
input [15:0] IOEXPINPUTI,
|
|
1978
|
+
output UART0TXDO,
|
|
1979
|
+
output UART1TXDO,
|
|
1980
|
+
output UART0BAUDTICK,
|
|
1981
|
+
output UART1BAUDTICK,
|
|
1982
|
+
input UART0RXDI,
|
|
1983
|
+
input UART1RXDI,
|
|
1984
|
+
output INTMONITOR,
|
|
1985
|
+
output MTXHRESETN,
|
|
1986
|
+
output [12:0] SRAM0ADDR,
|
|
1987
|
+
output [3:0] SRAM0WREN,
|
|
1988
|
+
output [31:0] SRAM0WDATA,
|
|
1989
|
+
output SRAM0CS,
|
|
1990
|
+
input [31:0] SRAM0RDATA,
|
|
1991
|
+
output TARGFLASH0HSEL,
|
|
1992
|
+
output [28:0] TARGFLASH0HADDR,
|
|
1993
|
+
output [1:0] TARGFLASH0HTRANS,
|
|
1994
|
+
output [2:0] TARGFLASH0HSIZE,
|
|
1995
|
+
output [2:0] TARGFLASH0HBURST,
|
|
1996
|
+
output TARGFLASH0HREADYMUX,
|
|
1997
|
+
input [31:0] TARGFLASH0HRDATA,
|
|
1998
|
+
input [2:0] TARGFLASH0HRUSER,
|
|
1999
|
+
input TARGFLASH0HRESP,
|
|
2000
|
+
input TARGFLASH0EXRESP,
|
|
2001
|
+
input TARGFLASH0HREADYOUT,
|
|
2002
|
+
output TARGEXP0HSEL,
|
|
2003
|
+
output [31:0] TARGEXP0HADDR,
|
|
2004
|
+
output [1:0] TARGEXP0HTRANS,
|
|
2005
|
+
output TARGEXP0HWRITE,
|
|
2006
|
+
output [2:0] TARGEXP0HSIZE,
|
|
2007
|
+
output [2:0] TARGEXP0HBURST,
|
|
2008
|
+
output [3:0] TARGEXP0HPROT,
|
|
2009
|
+
output [1:0] TARGEXP0MEMATTR,
|
|
2010
|
+
output TARGEXP0EXREQ,
|
|
2011
|
+
output [3:0] TARGEXP0HMASTER,
|
|
2012
|
+
output [31:0] TARGEXP0HWDATA,
|
|
2013
|
+
output TARGEXP0HMASTLOCK,
|
|
2014
|
+
output TARGEXP0HREADYMUX,
|
|
2015
|
+
output TARGEXP0HAUSER,
|
|
2016
|
+
output [3:0] TARGEXP0HWUSER,
|
|
2017
|
+
input [31:0] TARGEXP0HRDATA,
|
|
2018
|
+
input TARGEXP0HREADYOUT,
|
|
2019
|
+
input TARGEXP0HRESP,
|
|
2020
|
+
input TARGEXP0EXRESP,
|
|
2021
|
+
input [2:0] TARGEXP0HRUSER,
|
|
2022
|
+
output [31:0] INITEXP0HRDATA,
|
|
2023
|
+
output INITEXP0HREADY,
|
|
2024
|
+
output INITEXP0HRESP,
|
|
2025
|
+
output INITEXP0EXRESP,
|
|
2026
|
+
output [2:0] INITEXP0HRUSER,
|
|
2027
|
+
input INITEXP0HSEL,
|
|
2028
|
+
input [31:0] INITEXP0HADDR,
|
|
2029
|
+
input [1:0] INITEXP0HTRANS,
|
|
2030
|
+
input INITEXP0HWRITE,
|
|
2031
|
+
input [2:0] INITEXP0HSIZE,
|
|
2032
|
+
input [2:0] INITEXP0HBURST,
|
|
2033
|
+
input [3:0] INITEXP0HPROT,
|
|
2034
|
+
input [1:0] INITEXP0MEMATTR,
|
|
2035
|
+
input INITEXP0EXREQ,
|
|
2036
|
+
input [3:0] INITEXP0HMASTER,
|
|
2037
|
+
input [31:0] INITEXP0HWDATA,
|
|
2038
|
+
input INITEXP0HMASTLOCK,
|
|
2039
|
+
input INITEXP0HAUSER,
|
|
2040
|
+
input [3:0] INITEXP0HWUSER,
|
|
2041
|
+
output [3:0] APBTARGEXP2PSTRB,
|
|
2042
|
+
output [2:0] APBTARGEXP2PPROT,
|
|
2043
|
+
output APBTARGEXP2PSEL,
|
|
2044
|
+
output APBTARGEXP2PENABLE,
|
|
2045
|
+
output [11:0] APBTARGEXP2PADDR,
|
|
2046
|
+
output APBTARGEXP2PWRITE,
|
|
2047
|
+
output [31:0] APBTARGEXP2PWDATA,
|
|
2048
|
+
input [31:0] APBTARGEXP2PRDATA,
|
|
2049
|
+
input APBTARGEXP2PREADY,
|
|
2050
|
+
input APBTARGEXP2PSLVERR,
|
|
2051
|
+
input [3:0] MTXREMAP,
|
|
2052
|
+
output DAPTDO,
|
|
2053
|
+
output DAPJTAGNSW,
|
|
2054
|
+
output DAPNTDOEN,
|
|
2055
|
+
input DAPSWDITMS,
|
|
2056
|
+
input DAPTDI,
|
|
2057
|
+
input DAPNTRST,
|
|
2058
|
+
input DAPSWCLKTCK,
|
|
2059
|
+
output [3:0] TPIUTRACEDATA,
|
|
2060
|
+
output TPIUTRACECLK,
|
|
2061
|
+
input [4:0] GPINT,
|
|
2062
|
+
input FLASHERR,
|
|
2063
|
+
input FLASHINT
|
|
2064
|
+
|
|
2065
|
+
);
|
|
2066
|
+
endmodule
|
|
1917
2067
|
|
|
1918
2068
|
|
|
@@ -410,6 +410,9 @@ namespace AST
|
|
|
410
410
|
extern void (*set_line_num)(int);
|
|
411
411
|
extern int (*get_line_num)();
|
|
412
412
|
|
|
413
|
+
// for stats
|
|
414
|
+
unsigned long long astnode_count();
|
|
415
|
+
|
|
413
416
|
// set set_line_num and get_line_num to internal dummy functions (done by simplify() and AstModule::derive
|
|
414
417
|
// to control the filename and linenum properties of new nodes not generated by a frontend parser)
|
|
415
418
|
void use_internal_line_num();
|
|
@@ -114,7 +114,7 @@ struct CellTypes
|
|
|
114
114
|
void setup_internals_eval()
|
|
115
115
|
{
|
|
116
116
|
std::vector<RTLIL::IdString> unary_ops = {
|
|
117
|
-
ID($not), ID($pos), ID($neg),
|
|
117
|
+
ID($not), ID($pos), ID($buf), ID($neg),
|
|
118
118
|
ID($reduce_and), ID($reduce_or), ID($reduce_xor), ID($reduce_xnor), ID($reduce_bool),
|
|
119
119
|
ID($logic_not), ID($slice), ID($lut), ID($sop)
|
|
120
120
|
};
|
|
@@ -339,7 +339,7 @@ struct CellTypes
|
|
|
339
339
|
type = ID($shl);
|
|
340
340
|
|
|
341
341
|
if (type != ID($sshr) && type != ID($sshl) && type != ID($shr) && type != ID($shl) && type != ID($shift) && type != ID($shiftx) &&
|
|
342
|
-
type != ID($pos) && type != ID($neg) && type != ID($not)) {
|
|
342
|
+
type != ID($pos) && type != ID($buf) && type != ID($neg) && type != ID($not)) {
|
|
343
343
|
if (!signed1 || !signed2)
|
|
344
344
|
signed1 = false, signed2 = false;
|
|
345
345
|
}
|
|
@@ -384,7 +384,7 @@ struct CellTypes
|
|
|
384
384
|
HANDLE_CELL_TYPE(neg)
|
|
385
385
|
#undef HANDLE_CELL_TYPE
|
|
386
386
|
|
|
387
|
-
if (type
|
|
387
|
+
if (type.in(ID($_BUF_), ID($buf)))
|
|
388
388
|
return arg1;
|
|
389
389
|
if (type == ID($_NOT_))
|
|
390
390
|
return eval_not(arg1);
|