Skip to content

spec: DMA memcpy accelerator - #931

Open
nicole-graus wants to merge 4 commits into
spec/mainfrom
spec/dma-memcpy
Open

spec: DMA memcpy accelerator#931
nicole-graus wants to merge 4 commits into
spec/mainfrom
spec/dma-memcpy

Conversation

@nicole-graus

@nicole-graus nicole-graus commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Description

Specifies the DMA memcpy table added by #874. It has one row per eight copied bytes (one on the tail), rows chained over a new DMA_NEXT bus, ECALL number -3. Adds the ADDNW template (ADD without wraparound) used for the address updates, and lists -3 in the ECALL overview.

One deliberate deviation from #874's Rust: 31 columns rather than 32, because the spec models timestamp as a Word, as every other chapter does.

@nicole-graus
nicole-graus changed the base branch from main to spec/main August 11, 2026 20:04
@erik-3milabs

Copy link
Copy Markdown
Collaborator

Quick review:

  1. As mentioned during yesterday's meeting, this chip was implemented to adhere to the EF's standardization efforts.
    Consider linking the standard (https://github.com/eth-act/zkevm-standards/tree/main/standards/accelerated-memory-operations) in the accelerator's description.
  2. I don't know whether 'DMA' is the right name for this: DMA refers to a category of operations, while this is just one of them.

Do you want us to perform an in-depth analysis next? We might be able to find some optimizations (which could be very beneficial, given that this chip is expected to see a large volume of traffic).

@erik-3milabs erik-3milabs left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

see above

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants