Skip to content

Conversation

teqdruid
Copy link
Contributor

@teqdruid teqdruid commented Jul 7, 2025

Using signless ints as the address was just wrong. It was probably done to avoid incomplete lowerings, which have been addressed.

Using signless ints as the address was just wrong. It was probably done
to avoid incomplete lowerings, which have been addressed.
@teqdruid teqdruid added the ESI label Jul 7, 2025
@teqdruid teqdruid requested review from Copilot and removed request for Dinistro and mortbopet July 7, 2025 19:26
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR changes RAM declaration addresses to use unsigned integer types throughout the ESI dialect and its tests, updating both the code generator and expected outputs.

  • Switch address ports to unsigned (uiN) in MLIR tests and service definitions.
  • Update C++ service port generation and SystemVerilog memory instantiation to use unsigned address types, inserting bitcasts to signless for indexing.
  • Adjust PyCDE front end and software integration tests to use UInt/plain integer writes.

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
test/Dialect/Handshake/lower-extmem-esi.mlir Updated expected esi.service.req bundles to ui4.
test/Dialect/ESI/services.mlir Switched memory service port labels from i5 to ui5.
lib/Dialect/ESI/ESIStdServices.cpp Generate address IntegerType as unsigned.
lib/Dialect/ESI/ESIServices.cpp Insert hw.bitcast from unsigned to signless before indexing.
integration_test/Dialect/ESI/runtime/loopback.mlir Change RAM address field in struct to ui5.
frontends/PyCDE/test/test_esi.py Update CHECK patterns to expect ui in struct fields.
frontends/PyCDE/src/pycde/esi.py Change address_type from Bits to UInt.
frontends/PyCDE/integration_test/test_software/esi_ram.py Write raw integers instead of single-element lists.

@teqdruid teqdruid merged commit 8c1865c into main Jul 7, 2025
8 checks passed
@teqdruid teqdruid deleted the teqdruid/esi-ram-unsigned branch July 7, 2025 19:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant