Hello!
Could you please tell me what are the possible values for all the MM-parameters. Below I am pasting all the MM-parameters that were dumped by the VEX compiler (for 1 cluster architecture)
-width parameter --> no of clusters: can only be 1,2 or 4
RES: IssueWidth 4
RES: Alu.0 4
RES: Mpy.0 2
REG: $r0 63
REG: $b0 8
REG: $b1 8
RES: MemLoad 2
RES: MemStore 2
RES: MemPft 1
RES: CopySrc.0 1
RES: CopyDst.0 1
RES: Memory.0 1
Also, if I am not asking too much, I would like to know what are the possible values for all Memory-Hierarchy parameters. I am pasting a sample vex.cfg file:
CoreCkFreq 500
BusCkFreq 200
lg2CacheSize 15
lg2Sets 2
lg2LineSize 5
MissPenalty 25
WBPenalty 22
lg2StrSize 9
lg2StrSets 4
lg2StrLineSize 5
StrMissPenalty 25
StrWBPenalty 22
lg2ICacheSize 15
lg2ICacheSets 0
lg2ICacheLineSize 6
ICachePenalty 30
NumCaches 1
StreamEnable FALSE
PrefetchEnable TRUE
LockEnable FALSE
ProfGranularity 1.000000
I would like to mention that I have learned from the previous topics on the forum the following things:
- no_of_ALUs/cluster has to be ALWAYS >=4 (it is a constraint in the VEX compiler). If one wants to model an architecture with x (x<4) ALUs/cluster he has to give
RES: IssueWidth x
RES: Alu.0 4
- IssueWidth should be >= no_of_all_ALUs_in_all_clusters + no_of_all_MPYs_in_all_clusters, otherwise the processor has more functional units that it can use on a cycle.
- one can specify starting with VEX version 3.38 the Issuewidth for each cluster. For example:
RES: IssueWidth 4
RES: IssueWidth.0 2
RES: IssueWidth.1 2
Thank you.
Alex Susu