Skip to content

[WIP] [arch/ball] Add MXFP ball prototype and test#31

Open
Aurore-pixed wants to merge 199 commits into
DangoSys:mainfrom
Aurore-pixed:feat/mxfp-ball
Open

[WIP] [arch/ball] Add MXFP ball prototype and test#31
Aurore-pixed wants to merge 199 commits into
DangoSys:mainfrom
Aurore-pixed:feat/mxfp-ball

Conversation

@Aurore-pixed
Copy link
Copy Markdown

Summary

  • add MXFP ball RTL implementation in prototype lib
  • add MXFP ISA entry and C test
  • add README for the MXFP design
  • integrate decoder / bus registration / config mapping

Validation

  • Verilator simulation passed
  • software golden model matches hardware output
  • full 128-bit packed output block verified

Notes

  • current implementation is a V1 prototype
  • fixed InputNum=16, inputWidth=32, bankWidth=128
  • one MXFP block is generated from 4 input reads and 1 output write

Closes #26

Mikemy666 and others added 30 commits December 7, 2025 21:53
…d RVV insts to RoCC

[arch/gpdomain] feat: add General Purpose Domain
[arch/frontend] feat: add domain id and docoder
[doc] fix: remove files' deleted link
[bb-tests/ctest] feat: add VSETVLI test (can be sent to gpdomain)
[compiler] update: bump to the latest version
[arch/palladium] feat: add 256CoreCrossBarConfig
feat: update Module initialisation with instantiable
wip: replace spad and acc with banks
[pre-commit] feat: add scalafmt
…e customisation of blink status signals.

feat: add domain channels
shirohasuki and others added 22 commits March 12, 2026 19:11
[bb-tests] refacotr: update DISA for new funct7 encoding
[arch] feat: enhance instruction tracing with bank enable support
[bb-tests] feat: add different gemmini tests
…ing mechanism

[bdb] refactor: refomat trace files
[bb-tests] fix: Linux workload use bdb bug
[compiler] update: bump compiler
Copy link
Copy Markdown
Member

@shirohasuki shirohasuki left a comment

Choose a reason for hiding this comment

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

Well progress for first try, I think it can soon be able to merge it into the main branch after your next commit.

#define BLOCK_ELEMS 16
#define NUM_BLOCKS 16

#define BANK_WORD_BYTES 16 // 128-bit bank word
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

A minor slip: I suggest moving the comment to the previous line rather than placing it at the end of the line (according to google style guides).

return (uint8_t)(shifted & 0xfu);
}

static void pack_mx6_block(const uint32_t *block_in, uint8_t *block_out_16B) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Since we’ve specified a fixed input, I think it might be easier to understand if we simply write the corresponding output (you can include the process in the comments). Also, these validation functions are brilliant, but I think it might be better to place them in the library functions like buckyball.c

While we envisage ctest as the simplest test case, users will learn the most basic usage of this command here, rather than the algorithmic logic. In any case, it’s passable; let’s take it a step further to make it even better.

Comment thread arch/src/main/scala/framework/balldomain/prototype/mxfp/README.md
val DEQUANT = BitPat("b0110100") // 52 (0x34)
val GEMMINI_PRELOAD = BitPat("b0110101") // 53 (0x35)
val BDB_BACKDOOR = BitPat("b0110110") // 54 (0x36)
val MXFP = BitPat("b0110111") // 55 (0x37)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Well done, you’ve chosen the right function code (1 read + 1 write)

@shirohasuki shirohasuki changed the title Add MXFP ball prototype and test [arch/ball] Add MXFP ball prototype and test Apr 21, 2026
@shirohasuki shirohasuki changed the title [arch/ball] Add MXFP ball prototype and test [WIP] [arch/ball] Add MXFP ball prototype and test May 16, 2026
@shirohasuki shirohasuki force-pushed the main branch 2 times, most recently from 2a837aa to 66be48c Compare May 19, 2026 11:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[TASK] Add A New Quant Ball for FP32-MXFP Conversion

5 participants