Open ginty opened 4 years ago
This all looks good to me. I don't mind taking this item since it goes along with #83.
The origen.tester interface may well offer a similar API to inspect which tester targets are currently selected.
I do already have something like this, if you wanted to see this idea in action.
@coreyeng, please feel free to pick this up, thanks!
That's good you already have similar under origen.tester.target so would be good to give these the same look and feel.
This is a proposal to modify the target system to improve it in the following areas:
Note that only one DUT will be allowed to be instantiated at once and an error will be raised if a selected target combination attempts to instantiate multiple DUTs.
The proposal is for O2 to drop the 'environment' directory and instead make the 'target' directory support sub-dirs which each represents a different target layer. This is mainly for logical organization however and the system will support selecting multiple targets from the same sub-dir where appropriate - e.g. to select multiple backend tester targets.
By convention, all apps should have the sub-dirs
target/dut/
andtarget/tester/
which logically map to the O1target/
andenvironment/
dirs respectively.Target files will be the same as they are today - just a regular Python file where runtime objects can be instantiated and configured.
The
origen t
command should work something like this...An application default target configuration can be set in
config/application.toml
:This will be reflected in the workspace by default:
Targets can then be added and removed via the command line:
Or it can be set explicitly like this:
The current target can be examined programatically like this:
The names of the sub-dirs and target files are arbitrary and the application can add whatever additional target options they want.
/dut
and/tester
will not really have any special significance for Origen beyond being the encouraged convention.The
origen.tester
interface may well offer a similar API to inspect which tester targets are currently selected.