Mercurial > pygar
view common/PathTypes.bsv @ 65:cf8bb3038cbd pygar svn.66
[svn r66] sim passes
author | punk |
---|---|
date | Tue, 11 May 2010 09:05:22 -0400 |
parents | 7e1510b47336 |
children |
line wrap: on
line source
1 import Trace::*;2 import Vector::*;4 `define MAX_VOICES 45 `define MAX_CORES 166 `define MAX_PATH_IDS 187 `define MAX_PATH_LENGTH 89 // The path is hardwired and so should never be stored in a register. Therefore int type rather than Bit type11 typedef Bit#(32) MemAddr;12 typedef Int#(TLog#(`MAX_PATH_IDS)) PathId;13 typedef Int#(24) Sample;14 typedef Int#(TLog#(`MAX_VOICES)) VoiceId;17 //The mixer is identified as PathId 0, path end is max18 PathId mixerId = 0;19 PathId endId = `MAX_CORES+1;21 // Path is array of path ids22 typedef Vector#(`MAX_PATH_LENGTH, PathId) CorePath;23 CorePath emptyCore = replicate(endId);25 typedef struct26 {27 VoiceId voice;28 MemAddr startAddr;29 CorePath route;30 } FullPath deriving (Bits, Eq);