Configurations and small variations
Is your capability/feature request related to a problem?
When we use configurations to configure designs, each item/variation we need to create becomes a multiplying factor in the number of configurations we need.
It would be convenient if there were small variations of configurations that we could specify on the command line call to elaborate the configuration
Describe the solution you'd like
The only thing that comes to mind is discriminants.
Configuration TbAxi4Cfg (Name : identifier) of TbAxi4Memory is
for TestHarness
for TestCtrl_1 : TestCtrl
use entity work.TestCtrl(Name) ;
end for ;
end for ;
end TbAxi4Cfg ;
Configuration TbAxi4RamCfg (Name : identifier ; UseRam : boolean := TRUE ) of TbAxi4Memory is
for TestHarness
for TestCtrl_1 : TestCtrl
use entity work.TestCtrl(Name) ;
end for ;
case UseRam is
when TRUE =>
for RAM_1: RAM
use entity work.RAM(BFM) ;
end for ;
when FALSE =>
for RAM_1: RAM
open ;
end for ;
end case ;
end for ;
end TbAxi4RamCfg ;
To start the simulation, one would specify:
simulate TbAxi4RamCfg(Test1, TRUE)
Describe alternatives you've considered
Additional context
This also addresses a past request to be able to pass an architecture name as a generic.