Skip to content

Comments

Created OSVVM tests for fifo_cc_got#35

Open
gmartina wants to merge 3 commits intoVHDL:devfrom
gmartina:fifo-cc-got-tests
Open

Created OSVVM tests for fifo_cc_got#35
gmartina wants to merge 3 commits intoVHDL:devfrom
gmartina:fifo-cc-got-tests

Conversation

@gmartina
Copy link

Tests

  • Added OSVVM tests for fifo_cc_got

Related Issues and Pull-Requests

@Paebbels Paebbels assigned Paebbels and gmartina and unassigned Paebbels Dec 21, 2025
@Paebbels Paebbels self-requested a review December 21, 2025 20:20
@Paebbels Paebbels added PoC.fifo.* FIFO components. Testbench Testbench related. labels Dec 21, 2025
@Paebbels
Copy link
Member

@gmartina thanks for ýour new PR. I'll review it in the next days.

A question ahead:
I think be old testbench was never very good.
Do you think we should later apply ideas from the OSVVM class?


/cc @stefanunrein

@gmartina
Copy link
Author

gmartina commented Dec 22, 2025

@Paebbels Do you mean the ideas that come out of this?
OSVVM/OSVVM-Scripts#67

@Paebbels
Copy link
Member

I was referring to the OSVVM training class materials. Like using random testing, measuring FIFO size and comparing against actual size, etc.

@Paebbels
Copy link
Member

@gmartina any idea why NVC fails?

@gmartina
Copy link
Author

gmartina commented Dec 22, 2025

No idea. I think it has nothing to do with my changes.
Error: ** Warning: design unit OSVVM.IFELSEPKG is older than its source file ../../lib/osvvm/IfElsePkg.vhd and should be reanalysed

I was referring to the OSVVM training class materials. Like using random testing, measuring FIFO size and comparing against actual size, etc.

I am using Random and Coverage only in one test. The other 2 are more like basic smoke tests.
Let me know if there is anything to be improved.

@Paebbels
Copy link
Member

This is just a warning.

Error: ** Warning: design unit OSVVM.IFELSEPKG is older than its source file ../../lib/osvvm/IfElsePkg.vhd and should be reanalysed

This is known and can be fixed with an upcoming version of OSVVM. Then we can set common options to NVC and mute that warning. It's created because we move precompiled sources as artifact from job to job. The second job does a new Git checkout, hence the files in the second job are newer by date, but not by content. This confuses NVC. Actually, this behavior is not according to the standard, but a good hint for local (non distributed) coding.

See this error here:

** Error: design unit FIFO_CC_GOT_TESTCONTROLLER_PKG not found in library WORK
Error: > /home/runner/work/PoC/PoC/tb/fifo/fifo_cc_got/fifo_cc_got_Random.vhdl:53
Error: |
Error: 53 | use work.fifo_cc_got_TestController_pkg.all;
Error: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
** Error: design unit FIFO_CC_GOT_TESTHARNESS not found in library TB_FIFO_CC_GOT
Error: > /home/runner/work/PoC/PoC/tb/fifo/fifo_cc_got/fifo_cc_got_Random.vhdl:416
Error: |
Error: 416 | configuration fifo_cc_got_Random of fifo_cc_got_TestHarness is
Error: | ^^^^^^^^^^^^^^^^^^^^^^^
** Error: no visible declaration for TESTHARNESS
Error: > /home/runner/work/PoC/PoC/tb/fifo/fifo_cc_got/fifo_cc_got_Random.vhdl:417
Error: |
Error: 417 | for TestHarness
Error: | ^^^^^^^^^^^^^^^
AnalyzeError: See messages above in "analyze fifo_cc_got_Random.vhdl"

There are multiple instances of that error. All are complaining fifo_cc_got_TestController_pkg.

@gmartina
Copy link
Author

There are multiple instances of that error. All are complaining fifo_cc_got_TestController_pkg.

Sorry, I didnt see that. PR updated.

Copy link
Author

Choose a reason for hiding this comment

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

This file is not related to this PR topic. But I was getting an error when doing a regression test with GHDL. I dont understand why this didnt show up in previous PRs.

Copy link
Member

Choose a reason for hiding this comment

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

Do you have an older GHDL and/or NVC?

This was a bug in older revisions in both tools. It should be fixed. Any you need to compile using -frelaxed.

Copy link
Member

Choose a reason for hiding this comment

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

@gmartina can you please revert the changes of others to A'range. We reverted that workaround in our other code. It was necessary for NVC v1.15, but was fixed since then. Or do you have other tools complaining about that code?

@Paebbels
Copy link
Member

There are multiple instances of that error. All are complaining fifo_cc_got_TestController_pkg.

Sorry, I didnt see that. PR updated.

Thanks. I might find time tomorrow for the complete PR.

Don't you get emails from GutHub Actions for failed or successful Actions?
Usually, you should receive an email if the workflow triggered by the push did not succeed.

@Paebbels Paebbels deleted the branch VHDL:dev February 16, 2026 10:24
@Paebbels Paebbels closed this Feb 16, 2026
@Paebbels
Copy link
Member

Argh. Branch auto-deletion destroyed that PR.

@Paebbels Paebbels reopened this Feb 16, 2026
@Paebbels Paebbels mentioned this pull request Feb 16, 2026
context osvvm_common.OsvvmCommonContext;
use osvvm_common.FifoFillPkg_slv.all;

entity FifoCcGotTransmitter is
Copy link
Member

Choose a reason for hiding this comment

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

@gmartina do we need a dedicated FIFO receiver and transmitter for PoC?
We could reuse OSVVM's AXI4 Stream VCs.

If so, we could upstream these to OSVVM and ask @JimLewis about such a component.

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

Labels

PoC.fifo.* FIFO components. Testbench Testbench related.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants