whitequark[cis] changed the topic of #amaranth-lang to: Amaranth hardware definition language · weekly meetings: Amaranth each Mon 1700 UTC, Amaranth SoC each Fri 1700 UTC · play https://amaranth-lang.org/play/ · code https://github.com/amaranth-lang · logs https://libera.irclog.whitequark.org/amaranth-lang · Matrix #amaranth-lang:matrix.org
frgo has quit [Read error: Connection reset by peer]
frgo_ has joined #amaranth-lang
john is now known as synchromesh
Degi_ has joined #amaranth-lang
Degi has quit [Ping timeout: 246 seconds]
Degi_ is now known as Degi
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #amaranth-lang
frgo_ has quit [Read error: Connection reset by peer]
frgo has joined #amaranth-lang
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #amaranth-lang
d_olex has quit [Ping timeout: 264 seconds]
d_olex has joined #amaranth-lang
frgo_ has joined #amaranth-lang
frgo has quit [Read error: Connection reset by peer]
d_olex has quit [Ping timeout: 246 seconds]
d_olex has joined #amaranth-lang
d_olex has quit [Read error: Connection reset by peer]
d_olex has joined #amaranth-lang
d_olex_ has joined #amaranth-lang
d_olex has quit [Ping timeout: 246 seconds]
<maikmerten[m]> <whitequark[cis]> "the only thing that i really..." <- thanks for having a look. I guess this is easy to fix ;-)
indy has quit [Ping timeout: 260 seconds]
indy- has joined #amaranth-lang
d_olex_ has quit [Ping timeout: 265 seconds]
d_olex has joined #amaranth-lang
d_olex_ has joined #amaranth-lang
d_olex has quit [Ping timeout: 246 seconds]
frgo_ has quit [Remote host closed the connection]
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #amaranth-lang
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 245 seconds]
RobertJrdens[m] has quit [Quit: Idle timeout reached: 172800s]
d_olex__ has joined #amaranth-lang
d_olex_ has quit [Ping timeout: 260 seconds]
buganini has joined #amaranth-lang
d_olex has joined #amaranth-lang
d_olex__ has quit [Ping timeout: 252 seconds]
buganini has quit [Ping timeout: 264 seconds]
dyniec has joined #amaranth-lang
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
vk2seb has joined #amaranth-lang
vk2seb has quit [Client Quit]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 248 seconds]
buganini has joined #amaranth-lang
<AledCuda[m]> API Design question, AXI has transaction IDs which allow results to be returned out of order, their width is implementation defined. Currently I have an ID feature:... (full message at <https://catircservices.org/_matrix/media/v3/download/catircservices.org/ZjvRJuDegfSBIhzfZsikMwHY>)
<AledCuda[m]> should I drop the feature and just have id_width in the signature
<AledCuda[m]> (AXI also has user defined signaling in each of the channels so the same question applies there)
<AledCuda[m]> (docstrings still wip obviously)
<tpw_rules> i'm not sure if it's version dependent but afaik id is mandatory
<tpw_rules> i tried ignoring it on cyclone v and just locked up the bus
<tpw_rules> also afaik the data_width can be much greater than 64
<AledCuda[m]> It is optional from the controller side
<AledCuda[m]> Yeah that docstring is out of date
<AledCuda[m]> it goes up to 2048
<AledCuda[m]> and it is optional on both ends in AXI4-Lite
<AledCuda[m]> Just realized the spec I linked is not 5 only, this is old but has the axi4 stuff: http://www.gstitt.ece.ufl.edu/courses/fall15/eel4720_5721/labs/refs/AXI4_specification.pdf
<AledCuda[m]> If you want to bridge to a peripheral that does not support ID and the controller does, the interconnect needs to do ID reflection which is relatively straightforward
<tpw_rules> i had ID mandatory with width > 0 and the ability to specify each of the user widths independently
<tpw_rules> which is how i needed on the cyclone v as it only had user data on aw and ar
<tpw_rules> (but it treated a user data of 0 width as not present in the interface)
<tpw_rules> s/interface/signature/
<tpw_rules> i'm not sure if those are right but it's what i did
<tpw_rules> i also made 5 sub interfaces for each stream which am sure is right
<tpw_rules> though the new payload attribute of streams will make a lot of dots...
<AledCuda[m]> You mean you split the channels into their own interfaces?
<tpw_rules> yes
<tpw_rules> they are five independent streams. i of course have them bundled up into one main signature
<tpw_rules> but that main signature just has five stream signatures as members
<AledCuda[m]> Hmm
<AledCuda[m]> yeah I'm taking a look
<tpw_rules> do you use anything in particular to template or set up docstrings?
<AledCuda[m]> no
<tpw_rules> you just do them by hand? numpy style?
<AledCuda[m]> I just copied the wishbone file and have been file
<AledCuda[m]> yeah
<tpw_rules> ah
<AledCuda[m]> s/file/editing
<AledCuda[m]> numpy style is the standard for amaranth I believe
<tpw_rules> yeah
<AledCuda[m]> I do have some concerns with splitting up the signature in terms of name mangling and compatibility with other tools (in my case vivado)
<tpw_rules> i just did that algorithmically and used that to set up an instance
<tpw_rules> might end up slightly weirder with real amaranth streams
<tpw_rules> there is probably scope for a method on the combo interface which creates one that's glued together but i don't think it would want to be common in amaranth code, only for connecting to other things. otherwise all the stream abstractions go away
buganini has quit [Ping timeout: 252 seconds]
buganini has joined #amaranth-lang
Wolfvak has left #amaranth-lang [Leaving]
buganini has quit [Ping timeout: 252 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 265 seconds]
buganini has joined #amaranth-lang
synchromesh has quit [Read error: Connection reset by peer]
synchromesh has joined #amaranth-lang
buganini has quit [Ping timeout: 252 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 252 seconds]
Maja_ is now known as Maja
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 252 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 252 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 260 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 246 seconds]
frgo has joined #amaranth-lang
frgo has quit [Ping timeout: 276 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 252 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 245 seconds]
buganini has joined #amaranth-lang
buganini has quit [Ping timeout: 276 seconds]
buganini has joined #amaranth-lang