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
<_whitenotifier> [amaranth-soc] github-merge-queue[bot] created branch gh-readonly-queue/main/pr-101-6cd3e1c01764abe1bab1623aab70e3eaf70a0f7e - https://github.com/amaranth-lang/amaranth-soc
<_whitenotifier> [amaranth-lang/amaranth-soc] github-merge-queue[bot] pushed 1 commit to main [+0/-0/±1] https://github.com/amaranth-lang/amaranth-soc/compare/6cd3e1c01764...746709e1e992
<_whitenotifier> [amaranth-lang/amaranth-soc] zyp 746709e - tests: Ignore deprecation warnings due to RFC 66.
<_whitenotifier> [amaranth-soc] github-merge-queue[bot] deleted branch gh-readonly-queue/main/pr-101-6cd3e1c01764abe1bab1623aab70e3eaf70a0f7e - https://github.com/amaranth-lang/amaranth-soc
<_whitenotifier> [amaranth-soc] jfng closed pull request #101: tests: Ignore deprecation warnings due to RFC 66. - https://github.com/amaranth-lang/amaranth-soc/pull/101
<_whitenotifier> [amaranth-soc] jfng commented on pull request #101: tests: Ignore deprecation warnings due to RFC 66. - https://github.com/amaranth-lang/amaranth-soc/pull/101#issuecomment-2362472355
<_whitenotifier> [amaranth-lang/amaranth-lang.github.io] whitequark pushed 1 commit to main [+0/-0/±6] https://github.com/amaranth-lang/amaranth-lang.github.io/compare/b9b26992819a...85e60a4ceae5
<_whitenotifier> [amaranth-lang/amaranth-lang.github.io] github-merge-queue[bot] 85e60a4 - Deploying to main from @ amaranth-lang/amaranth-soc@746709e1e992bccf6e2362450243cafd00d72a14 🚀
__DuBPiRaTe__ has quit [Quit: Leaving]
Degi_ has joined #amaranth-lang
Degi has quit [Ping timeout: 265 seconds]
Degi_ is now known as Degi
d_olex_ has quit [Ping timeout: 248 seconds]
mabl[m] has joined #amaranth-lang
<mabl[m]> Does that mean that the Amaranth CXXRTL simulator backend is also progressing?
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 quit [Read error: Connection reset by peer]
d_olex_ has joined #amaranth-lang
<whitequark[cis]> mabl: I actually plan to add CXXRTL protocol support to the Amaranth Python simulator
<whitequark[cis]> streaming for RTL Debugger development now: https://meet.google.com/euo-xaxq-qyx
<whitequark[cis]> s/for//
<_whitenotifier> [amaranth] rroohhh opened pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517
jjsuperpower has quit [Ping timeout: 260 seconds]
maikmerten[m] has joined #amaranth-lang
<maikmerten[m]> got my Amaranth SN76489 (programmable sound generator) implementation to a satisfying state. In the simulator, it takes about 2 hours to generate one minute of audio, so here's the code and an chip-tune audio sample: https://drive.google.com/drive/folders/1tpcZts99IWvzLWVgCxoS8io277wRVM5V
<maikmerten[m]> (need to GitHub that somewhere)
<_whitenotifier> [rtl-debugger] robtaylor opened pull request #1: chore: audit and fix dependencies - https://github.com/amaranth-lang/rtl-debugger/pull/1
<_whitenotifier> [rtl-debugger] robtaylor opened pull request #2: Ci test - https://github.com/amaranth-lang/rtl-debugger/pull/2
<_whitenotifier> [amaranth] rroohhh opened issue #1518: Format(data.Struct) gives YosysError - https://github.com/amaranth-lang/amaranth/issues/1518
<maikmerten[m]> hmmm.. I assume I can replace "clk_counter = Signal(math.ceil(math.log(self.clk_divider + 1, 2)))" with "clk_counter = Signal(range(0, self.clk_divider))"...
jfng[m] has joined #amaranth-lang
<jfng[m]> `ceil(log())` does unsound int->float conversions, e.g.
<jfng[m]> ```math.ceil(math.log2((1 << 64) + 1))``` would incorrectly return 64
<jfng[m]> `range(self.clk_divider)` is fine indeed
<maikmerten[m]> thanks!
<_whitenotifier> [amaranth] rroohhh opened pull request #1519: back.rtlil: espace { and } in format string - https://github.com/amaranth-lang/amaranth/pull/1519
<maikmerten[m]> (actually, in this special case, I need range(self.clk_divider + 1), because I need to store values up to (including) self.clk_divider, but nonetheless using range() to specify a shape is indeed very neat)
<_whitenotifier> [rtl-debugger] robtaylor closed pull request #2: Ci test - https://github.com/amaranth-lang/rtl-debugger/pull/2
<_whitenotifier> [rtl-debugger] robtaylor opened pull request #3: Add basic build CI - https://github.com/amaranth-lang/rtl-debugger/pull/3
<_whitenotifier> [rtl-debugger] whitequark created branch wip - https://github.com/amaranth-lang/rtl-debugger
<_whitenotifier> [amaranth] whitequark commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364120782
<whitequark[cis]> maikmerten: `range()` is actually how the "shape" system started! in an ancestor of Amaranth, you only had something like `Signal(min=, max=)` and you'd so easily get fencepost errors with them because it was hard to remember whether it's inclusive or exclusive
<_whitenotifier> [amaranth-lang/rtl-debugger] whitequark pushed 1 commit to main [+0/-1/±1] https://github.com/amaranth-lang/rtl-debugger/compare/ee2fc5c50428...c0b4c96c740a
<_whitenotifier> [amaranth-lang/rtl-debugger] whitequark c0b4c96 - Exclude lockfile from version control.
<_whitenotifier> [rtl-debugger] whitequark closed pull request #1: chore: audit and fix dependencies - https://github.com/amaranth-lang/rtl-debugger/pull/1
<_whitenotifier> [rtl-debugger] whitequark commented on pull request #1: chore: audit and fix dependencies - https://github.com/amaranth-lang/rtl-debugger/pull/1#issuecomment-2364136236
<_whitenotifier> [amaranth] github-merge-queue[bot] created branch gh-readonly-queue/main/pr-1519-8c5ed4051dd74a6347af8d52f8e397eb53218ac4 - https://github.com/amaranth-lang/amaranth
<_whitenotifier> [rtl-debugger] robtaylor commented on pull request #1: chore: audit and fix dependencies - https://github.com/amaranth-lang/rtl-debugger/pull/1#issuecomment-2364137359
<_whitenotifier> [amaranth-lang/amaranth] github-merge-queue[bot] pushed 1 commit to main [+0/-0/±2] https://github.com/amaranth-lang/amaranth/compare/8c5ed4051dd7...e30d822a7d93
<_whitenotifier> [amaranth-lang/amaranth] rroohhh e30d822 - back.rtlil: espace { and } in format string
<_whitenotifier> [amaranth] rroohhh commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364145872
<_whitenotifier> [amaranth] whitequark closed issue #1518: Format(data.Struct) gives YosysError - https://github.com/amaranth-lang/amaranth/issues/1518
<_whitenotifier> [amaranth] github-merge-queue[bot] deleted branch gh-readonly-queue/main/pr-1519-8c5ed4051dd74a6347af8d52f8e397eb53218ac4 - https://github.com/amaranth-lang/amaranth
<_whitenotifier> [amaranth] whitequark closed pull request #1519: back.rtlil: espace { and } in format string - https://github.com/amaranth-lang/amaranth/pull/1519
<_whitenotifier> [rtl-debugger] robtaylor commented on pull request #3: Add basic build CI - https://github.com/amaranth-lang/rtl-debugger/pull/3#issuecomment-2364146367
<_whitenotifier> [amaranth-lang/amaranth-lang.github.io] whitequark pushed 1 commit to main [+0/-0/±35] https://github.com/amaranth-lang/amaranth-lang.github.io/compare/85e60a4ceae5...82be1d0c0a61
<_whitenotifier> [amaranth-lang/amaranth-lang.github.io] github-merge-queue[bot] 82be1d0 - Deploying to main from @ amaranth-lang/amaranth@e30d822a7d93ee615e70e95a9958051dcc794802 🚀
<_whitenotifier> [amaranth] rroohhh opened pull request #1520: back.rtlil: espace { and } in format string [0.5 backport] - https://github.com/amaranth-lang/amaranth/pull/1520
<_whitenotifier> [amaranth] whitequark commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364150501
<_whitenotifier> [amaranth] whitequark commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364152176
<_whitenotifier> [amaranth] whitequark closed pull request #1520: back.rtlil: espace { and } in format string [0.5 backport] - https://github.com/amaranth-lang/amaranth/pull/1520
<_whitenotifier> [amaranth] rroohhh commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364167554
<_whitenotifier> [amaranth] whitequark commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364173518
<_whitenotifier> [amaranth] rroohhh commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364182339
<_whitenotifier> [amaranth] whitequark commented on pull request #1517: lib.wiring: Add path argument to Component constructor - https://github.com/amaranth-lang/amaranth/pull/1517#issuecomment-2364193834
<vup> whitequark: I don't have in-depth understanding of how the namer works, so I might be missing something, but how would improving the namer help we with the name of the wires there?
<vup> This `Component` https://github.com/rroohhh/routey/blob/258940a38bf4edfb5ddce25a2e57d2bc81cd0d1e/memory_mapped_router.py#L226 just receives a list of input `stream.Signature`s, so any additional naming information has to come from the outside, right? But the wires I see in the waveform viewer are created "from inside" the `Component`, so how would amaranth ever know how to provide a nicer name for them?
<whitequark[cis]> based on where they're driven, maybe
<vup> interesting idea, I did not consider making the namer reason about non-local things. I need to think about wether this would make things clearer
<zyp[m]> <whitequark[cis]> "based on where they're driven..." <- not if that implies that signals in bidirectional interfaces will have different prefixes
__DuBPiRaTe__ has joined #amaranth-lang