Skip to content

The GF-T ladder, and a correction: takum's RTL does exist - #636

Merged
gHashTag merged 1 commit into
mainfrom
feat/gft-ladder
Aug 8, 2026
Merged

The GF-T ladder, and a correction: takum's RTL does exist#636
gHashTag merged 1 commit into
mainfrom
feat/gft-ladder

Conversation

@gHashTag

@gHashTag gHashTag commented Aug 8, 2026

Copy link
Copy Markdown
Owner

The page said no such RTL existed. It doestakum-arithmetic/Takum-Codec-RTL, VHDL, public — and the page is corrected rather than softened.

What follows from that is now stated exactly. Synthesising VHDL alongside GF-T needs a front end this bench doesn't have (brew's ghdl is deprecated for failing Gatekeeper), so the cost figures remain GF-T's own. What their source does show — and it is the whole cost argument — is that their 16-bit codec pulls in a 725-line FloPoCo leading-zero-counter and barrel shifter, generated for a Kintex-7. That is the regime decode GF-T's fixed fields do not have. Labelled structural, not measured.

A second correction from reading the oracle: tekum (arXiv:2512.10964) is a descendant of takum adapted for balanced ternary, and the oracle here is a reverse-engineered structural model of it. The ratios are as good as that model, and the page says so.

The ladder, one harness so the rows compare

Rung LUTs Fmax Latency
GF-T8 50 153.23 MHz 1 cycle
GF-T16 212 131.73 MHz 1 cycle
GF-T32 1,477 83.27 MHz 1 cycle

A defect worth the whole exercise

gft_mul declares its product wire 32 bits; GF-T32's product is 52. The header calls the module parametric per rung and names GF-T32, so instantiating it that way looks supported and silently truncates — 1,995,730 mismatches in 2,128,964 combinations against gft_mul32.v.

gft_mul_w derives the width from the parameters and agrees with gft_mul32 over 300,000 combinations: it matches the module that is right and disagrees with the one that truncates. Sent upstream as gHashTag/trinity-fpga#510.

🤖 Generated with Claude Code

The page said no such RTL existed. It does — takum-arithmetic/Takum-Codec-RTL,
VHDL, public — and the page is corrected rather than softened.

What follows from that is now stated exactly. Synthesising VHDL alongside GF-T
needs a front end this bench does not have, so the cost figures remain GF-T's own.
What their source does show, and it is the whole cost argument: their 16-bit codec
pulls in a 725-line FloPoCo leading-zero-counter and barrel shifter, generated for
a Kintex-7. That is the regime decode GF-T's fixed fields do not have. Named as
structural rather than measured, because that is what it is.

A second correction from reading the oracle: tekum (arXiv:2512.10964) is a
descendant of takum adapted for balanced ternary, and the oracle it is measured
against here is a reverse-engineered structural model of it. The ratios are as
good as that model, and the page says so now.

The ladder is measured on one harness so the rows compare: GF-T8 at 50 LUTs and
153.23 MHz, GF-T16 at 212 and 131.73, GF-T32 at 1,477 and 83.27, one cycle of
latency each.

Getting there turned up a defect worth the whole exercise. gft_mul declares its
product wire 32 bits; GF-T32's product is 52. The header calls the module
parametric per rung and names GF-T32, so instantiating it that way looks supported
and silently truncates — 1,995,730 mismatches in 2,128,964 combinations against
gft_mul32.v. gft_mul_w derives the width from the parameters and agrees with
gft_mul32 over 300,000 combinations. Sent upstream as trinity-fpga#510.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@gHashTag
gHashTag merged commit c4db005 into main Aug 8, 2026
13 of 24 checks passed
@gHashTag
gHashTag deleted the feat/gft-ladder branch August 8, 2026 13:26
github-actions Bot added a commit that referenced this pull request Aug 8, 2026
The GF-T ladder, and a correction: takum's RTL does exist (#636)

The page said no such RTL existed. It does — takum-arithmetic/Takum-Codec-RTL,
VHDL, public — and the page is corrected rather than softened.

What follows from that is now stated exactly. Synthesising VHDL alongside GF-T
needs a front end this bench does not have, so the cost figures remain GF-T's own.
What their source does show, and it is the whole cost argument: their 16-bit codec
pulls in a 725-line FloPoCo leading-zero-counter and barrel shifter, generated for
a Kintex-7. That is the regime decode GF-T's fixed fields do not have. Named as
structural rather than measured, because that is what it is.

A second correction from reading the oracle: tekum (arXiv:2512.10964) is a
descendant of takum adapted for balanced ternary, and the oracle it is measured
against here is a reverse-engineered structural model of it. The ratios are as
good as that model, and the page says so now.

The ladder is measured on one harness so the rows compare: GF-T8 at 50 LUTs and
153.23 MHz, GF-T16 at 212 and 131.73, GF-T32 at 1,477 and 83.27, one cycle of
latency each.

Getting there turned up a defect worth the whole exercise. gft_mul declares its
product wire 32 bits; GF-T32's product is 52. The header calls the module
parametric per rung and names GF-T32, so instantiating it that way looks supported
and silently truncates — 1,995,730 mismatches in 2,128,964 combinations against
gft_mul32.v. gft_mul_w derives the width from the parameters and agrees with
gft_mul32 over 300,000 combinations. Sent upstream as trinity-fpga#510.

Co-authored-by: Dmitrii Vasilev <admin@t27.ai>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
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.

1 participant