Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[dv,mem_bkdr_util] Memory back door specializations #26045

Merged
merged 1 commit into from
Jan 29, 2025

Conversation

alees24
Copy link
Contributor

@alees24 alees24 commented Jan 28, 2025

Modify the mem_bkdr_util class to migrate the specialized functionality for flash, ROM and SRAM into extended classes.

This is somewhat cleaner and more elegant, and also helps with Darjeeling since there is no flash controller in that design.

Update block- and top-level DV environments to use the new classes and to remove explicit specializations for Rom access from chip_sw_base_vseq.

This PR has been tested by running a number of top_earlgrey chip simulations, rom_ctrl block-level tests and sram_ctrl block-level tests, but do please consider whether other uses may have been overlooked.

@alees24 alees24 requested review from rswarbrick and vogelpi January 28, 2025 15:58
@alees24 alees24 requested a review from a team as a code owner January 28, 2025 15:58
Copy link
Contributor

@rswarbrick rswarbrick left a comment

Choose a reason for hiding this comment

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

This looks dramatically cleaner, thanks!

hw/dv/sv/mem_bkdr_util/flash_bkdr_util.sv Outdated Show resolved Hide resolved
hw/dv/sv/mem_bkdr_util/rom_bkdr_util.sv Show resolved Hide resolved
hw/dv/sv/mem_bkdr_util/sram_bkdr_util.sv Outdated Show resolved Hide resolved
hw/dv/sv/mem_bkdr_util/sram_bkdr_util.sv Show resolved Hide resolved
hw/ip/sram_ctrl/dv/env/sram_ctrl_env.sv Outdated Show resolved Hide resolved
@rswarbrick
Copy link
Contributor

@Razer6: Since you're looking at this util at the same time, could you take a look at this? Will the interaction with your changes be reasonable?

Modify the mem_bkdr_util class to remove the specialized functionality
for flash, ROM and SRAM and migrate these operations into extended
classes.

This is somewhat cleaner and more elegant, and also helps with
Darjeeling since there is no flash controller in that design.

Update block- and top-level DV environments to use the new classes
and to remove explicit specializations for Rom access from
`chip_sw_base_vseq.`

Signed-off-by: Adrian Lees <[email protected]>
@Razer6
Copy link
Member

Razer6 commented Jan 28, 2025

@Razer6: Since you're looking at this util at the same time, could you take a look at this? Will the interaction with your changes be reasonable?

Looks good to me. I only have a small conflict I need to rebase. Go for it!

@alees24 alees24 requested a review from rswarbrick January 28, 2025 21:02
Copy link
Contributor

@rswarbrick rswarbrick left a comment

Choose a reason for hiding this comment

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

Thanks! I like the way were moving stuff from the preprocessor to the language itself :-)

@rswarbrick rswarbrick merged commit bb18a5a into lowRISC:master Jan 29, 2025
38 checks passed
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.

3 participants