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