Re: [Gems-users] how to add a new MachineType


Date: Wed, 16 Sep 2009 17:14:32 +0800
From: "shanshuchang" <shanshuchang@xxxxxxxxx>
Subject: Re: [Gems-users] how to add a new MachineType
I have also tried to replace the constructor_hack 'MachineType_L1Cache' with other machineType such as 'MachineType_L3Cache' which has already been in the genereated MachineType.h file
However, it still failed to make. It seems that in L1Cache.sm just the MachineType_L1Cache and MachineType_L2Cache can be used as the MachineType parameter...
So how can new MachineType be implemented?
 
However, it has been suggested in some previous answer about new components implemention that they did manage to insert a new structure.
 
 
"I have added a writeback_buffer/victim_buffer between L1 cache and L2 cache. You can implement a victim_cache class as CacheMemory.h does. And then instantiate it in your Protocol.sm . Pay attention, states and transitions need to be modiefied because a cache miss firstly need to check the victim buffer and a replacement firsty need to put into victim buffer. Moreover, you need to add a queue such as mandatory queue (you can use the optional queue) to transfer messages between cache and your victim buffer."
 
I suppose that the victimbuffer structure can be instantiate in L1Cache.sm. Then when communication are needed from L1 to the victimbuffer, the request message's destination should be specified to it. Based on the analysis, we should name the victimbuffer with new MachineType (so does the machineID.type) and new mapping function from L1 to corresponding VictimBuffer should be defined. Am I wrong here?
 
I would like someone to give me some advice. 
Thanks in advanced!
[← Prev in Thread] Current Thread [Next in Thread→]