Tuesday, 2023-02-07

*** tpb <[email protected]> has joined #yosys00:00
*** AdamHorden <[email protected]> has quit IRC (Ping timeout: 248 seconds)00:02
*** AdamHorden <[email protected]> has joined #yosys00:04
*** AdamHorden <[email protected]> has quit IRC (Ping timeout: 248 seconds)00:20
*** AdamHorden <[email protected]> has joined #yosys00:23
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has quit IRC (Ping timeout: 246 seconds)01:03
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has joined #yosys02:11
*** bl0x <[email protected]> has joined #yosys02:38
*** bl0x_ <bl0x_!~bl0x@p200300d7a70e3f0078f361290ff0a84e.dip0.t-ipconnect.de> has quit IRC (Ping timeout: 248 seconds)02:39
*** ec <ec!~ec@gateway/tor-sasl/ec> has quit IRC (Remote host closed the connection)02:51
*** ec <ec!~ec@gateway/tor-sasl/ec> has joined #yosys02:52
*** cyrozap_ <cyrozap_!~cyrozap@2600:1f16:29a:ae01:ee17:f9fd:2d26:f962> has quit IRC (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)03:06
*** cyrozap <cyrozap!~cyrozap@ec2-18-191-214-94.us-east-2.compute.amazonaws.com> has joined #yosys03:07
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has joined #yosys03:54
*** FabM <FabM!~FabM@2a03:d604:103:600:2e60:8c7c:e8fb:7990> has joined #yosys06:58
*** krispaul <[email protected]> has joined #yosys07:03
*** kristianpaul <kristianpaul!~paul@user/kristianpaul> has quit IRC (Ping timeout: 252 seconds)07:03
*** AdamHorden <[email protected]> has quit IRC (Ping timeout: 265 seconds)10:45
*** crzwdjk <[email protected]> has quit IRC (Quit: Client closed)10:55
*** crzwdjk <[email protected]> has joined #yosys12:09
*** crzwdjk <[email protected]> has quit IRC (Client Quit)12:10
*** ec_ <ec_!~ec@gateway/tor-sasl/ec> has joined #yosys13:16
*** ec <ec!~ec@gateway/tor-sasl/ec> has quit IRC (Ping timeout: 255 seconds)13:18
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has quit IRC (Read error: Connection reset by peer)13:45
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has joined #yosys13:46
*** krispaul <[email protected]> has quit IRC (Quit: WeeChat 2.3)14:20
*** kristianpaul <kristianpaul!~paul@user/kristianpaul> has joined #yosys14:22
*** AdamHorden <[email protected]> has joined #yosys14:50
*** AdamHorden <[email protected]> has quit IRC (Client Quit)14:52
*** AdamHorden <[email protected]> has joined #yosys14:54
*** AdamHorden <[email protected]> has quit IRC (Ping timeout: 248 seconds)15:23
*** AdamHorden <[email protected]> has joined #yosys15:28
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Ping timeout: 246 seconds)15:43
*** FabM <FabM!~FabM@2a03:d604:103:600:2e60:8c7c:e8fb:7990> has joined #yosys15:55
*** jangray <[email protected]> has joined #yosys16:04
jangrayGreetings yosys community. I am exploring using yosys to techmap to a new FPGA I am developing called S3GA. See slightly stale blog at https://fpga.org/2022/11/30/s3ga-part-1-beginnings/. I'm enjoying learning how yosys does tech mapping. Yesterday I figured out how to use dfflegalize and an ff_map.v to techmap various device FFs that are16:15
jangrayinitialized, optional sync reset/set, optional clock enable, etc. which map to various FD, FDE, FDR, FDS, FDRE, FDSE flop primitives, and sometimes some LUT+FFs (e.g. a flop initialized to 1, with sync reset to 0, clock enabled). Nice!16:15
tpbTitle: S3GA: A Simple Scalable Serial FPGA: Part 1: Beginnings | FPGA CPU News (at fpga.org)16:15
jangrayI'm about to start on place-and-route. The S3GA target is unusual / experimental in that it is a serial CLB, serial interconnect FPGA, partitioned into K=4 subclusters, recursively, with a FAT tree interconnect. The serial-ness aims to reduce the wiring and mux overhead of the interconnect; the  FAT tree interconnect topology aims to make it16:20
jangraystraightforward to route -- feed the design netlist hypergraph to KaHyPar and have it recursively min cost cut the hypergraph into K=4 partitions, subpartitions, etc.16:20
*** so-offishul <[email protected]> has joined #yosys16:26
jangraySo P&R has various subproblems like partitioning the design down to LBs (logic blocks) of M=4 or M=8 LUTs, packing LUTs with their associated FFs when appropriate, picking which LUTs to evaluate on which cycles, and so forth. For the LUT+FF packing, I tried using yosys' extract command to (post-synth_s3ga) extract and pattern match LUT4=>FD into a16:26
jangraybeefier primitive, for example:16:26
jangray/ excerpt from s3ga/extract_lutff.v:16:26
jangraymodule LUT4_FD #(parameter [15:0] INIT = 0) (input CLK, input I0, input I1, input I2, input I3, output Q);16:26
jangray  wire D;16:26
jangray  LUT4 #(.INIT(INIT)) lut(.O(D), .I0(I0), .I1(I1), .I2(I2), .I3(I3));16:26
jangray  FD fd(.CLK(CLK), .D(D), .Q(Q));16:26
jangrayendmodule16:26
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has quit IRC (Ping timeout: 252 seconds)16:30
jangrayBut when presented with a netlist with e.g. a LUT4 #(.INIT('b0110))=>FD extract fails because the INIT parameter doesn't match; extract -ignore_parameters does match the needle to the haystack, and replaces it with a LUT4_FD as desired, but the LUT4's INIT parameter is discarded. Is there a trick to have the haystack's elements' parameters (here16:33
jangrayINIT!=0) pattern match and reverse-project so that the substituted LUT4_FD's INIT parameter becomes that of the original LUT4 .INIT? I assume this is not possible in the current extract, and should proceed with explicit coding my post-synthesis netlist canonicalizations in C++ instead. Thanks for any comments / advice.16:33
*** so-offish1 <so-offish1!~so-offish@2610:148:610:2b11::18> has joined #yosys16:45
*** so-offishul <[email protected]> has quit IRC (Ping timeout: 246 seconds)16:48
jix_jangray: not really familiar with extract, but AFAICT if you use constant inputs instead of parameters it could work ... and you can use techmap to translate between constant inputs and parameters (in both directions) so that might be a workaround16:58
*** bjorkint0sh <bjorkint0sh!~bjork@2600:1700:5400:c80:bd55:a242:965d:7915> has quit IRC (Quit: Leaving)17:00
jix_oh and it might need -constports on extract which says it can be much slower, so maybe not the best approach17:00
*** jangray <[email protected]> has quit IRC (Quit: Client closed)18:54
*** FabM <FabM!~FabM@armadeus/team/FabM> has quit IRC (Ping timeout: 248 seconds)20:50
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has joined #yosys21:23
*** peepsalot <peepsalot!~peepsalot@openscad/peepsalot> has quit IRC (Ping timeout: 265 seconds)21:25
*** so-offish1 <so-offish1!~so-offish@2610:148:610:2b11::18> has quit IRC (Quit: Leaving)22:12
*** so-offish1 <so-offish1!~so-offish@2610:148:610:2b11::18> has joined #yosys22:13
*** so-offish1 is now known as so-offish22:14
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has quit IRC (Client Quit)22:15
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has joined #yosys22:15
*** bjorkintosh <bjorkintosh!~bjork@2600:1700:5400:c80:69ad:3811:6fbb:1f26> has joined #yosys22:36
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has quit IRC (Read error: Connection reset by peer)23:06
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has joined #yosys23:06
*** nonchip <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)23:08
*** nonchip <[email protected]> has joined #yosys23:08
*** AdamHorden <[email protected]> has quit IRC (Ping timeout: 248 seconds)23:08
*** AdamHorden <[email protected]> has joined #yosys23:13
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has quit IRC (Read error: Connection reset by peer)23:16
*** peeps[zen] <peeps[zen]!~peepsalot@openscad/peepsalot> has joined #yosys23:17
*** cr1901 <cr1901!~cr1901@2601:8d:8600:911:a0c8:5916:7ad4:d1b5> has quit IRC (Read error: Connection reset by peer)23:20
*** cr1901 <cr1901!~cr1901@2601:8d:8600:911:a569:7cde:b17d:b0f8> has joined #yosys23:21
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has quit IRC (Quit: Leaving)23:23
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has joined #yosys23:23
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::18> has quit IRC (Read error: Connection reset by peer)23:23
*** so-offish <so-offish!~so-offish@2610:148:610:2b11::a> has joined #yosys23:47
*** so-offishul <so-offishul!~so-offish@2610:148:610:2b11::a> has joined #yosys23:47
*** so-offishul <so-offishul!~so-offish@2610:148:610:2b11::a> has quit IRC (Client Quit)23:47

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!