URL
https://opencores.org/ocsvn/cryptosorter/cryptosorter/trunk
Subversion Repositories cryptosorter
[/] [cryptosorter/] [trunk/] [memocodeDesignContest2008/] [sort/] [mkBRAMLevel2MergerInstance.sched] - Rev 6
Compare with Previous | Blame | View Log
=== Generated schedule for mkBRAMLevel2MergerInstance ===Method schedule---------------Method: inStream_getTokInfoReady signal: res_inFstHalf_finishInit && res_inSndHalf_finishInitConflict-free: inStream_getTokInfo,inStream_putDeqTok,inStream_putRecord,outStream_putTokInfo,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndMethod: inStream_putDeqTokReady signal: res_inSndHalf_finishInit && res_inFstHalf_finishInitConflict-free: inStream_getTokInfo,inStream_putRecord,outStream_putTokInfo,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndConflicts: inStream_putDeqTokMethod: inStream_putRecordReady signal: res_inSndHalf_finishInit && res_inFstHalf_finishInitConflict-free: inStream_getTokInfo,inStream_putDeqTok,outStream_putTokInfo,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndConflicts: inStream_putRecordMethod: outStream_putTokInfoReady signal: TrueConflict-free: inStream_getTokInfo,inStream_putDeqTok,inStream_putRecord,outStream_getRecord_fst,outStream_getRecord_sndSequenced before (restricted): outStream_getDeqTok_fst,outStream_getDeqTok_sndConflicts: outStream_putTokInfoMethod: outStream_getDeqTok_fstReady signal: res_getDeqTokW.whas && res_getDeqTokW.wget[1]Conflict-free: inStream_getTokInfo,inStream_putDeqTok,inStream_putRecord,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndSequenced after (restricted): outStream_putTokInfoMethod: outStream_getDeqTok_sndReady signal: res_getDeqTokW.whas && res_getDeqTokW.wget[1]Conflict-free: inStream_getTokInfo,inStream_putDeqTok,inStream_putRecord,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndSequenced after (restricted): outStream_putTokInfoMethod: outStream_getRecord_fstReady signal: res_outW.whas && res_outW.wget[130]Conflict-free: inStream_getTokInfo,inStream_putDeqTok,inStream_putRecord,outStream_putTokInfo,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndMethod: outStream_getRecord_sndReady signal: res_outW.whas && res_outW.wget[130]Conflict-free: inStream_getTokInfo,inStream_putDeqTok,inStream_putRecord,outStream_putTokInfo,outStream_getDeqTok_fst,outStream_getDeqTok_snd,outStream_getRecord_fst,outStream_getRecord_sndRule schedule-------------Rule: res_comparesPredicate: res_inFstHalf_ugbram_bram.RDY_read_resp &&res_inSndHalf_ugbram_bram.RDY_read_resp &&res_inFstHalf_finishInit &&res_inSndHalf_finishInit && res_reqQ.i_notEmptyBlocking rules: (none)Rule: res_nextToProcessPredicate: res_inFstHalf_finishInit &&res_inSndHalf_finishInit &&((! res_scheduler_getNextW.whas) ||(! res_scheduler_getNextW.wget[1]) ||res_reqQ.i_notFull)Blocking rules: (none)Rule: res_feedSchedulerPredicate: (((res_nextTokW.whas? res_nextTokW.wget[1:0]: _) ==2'd0) ||res_inFstHalf_finishInit) &&(((res_nextTokW.whas? res_nextTokW.wget[1:0]: _) ==2'd0) ||((res_scheduler_last[1]? ! res_scheduler_last[0]: _)? res_scheduler_last[1] || (res_inFstHalf_usedReg[2:0] == 3'd0): (res_inFstHalf_usedReg[2:0] == 3'd0)) ||res_inSndHalf_finishInit) &&(((! ((res_nextTokW.whas? res_nextTokW.wget[1:0]: _) ==2'd0)) &&((res_scheduler_last[1]? ! res_scheduler_last[0]: _)? (! res_scheduler_last[1]) &&(! (res_inFstHalf_usedReg[2:0] == 3'd0)): (! (res_inFstHalf_usedReg[2:0] == 3'd0))) &&(! (res_inSndHalf_usedReg[2:0] == 3'd0)))? res_inFstHalf_finishInit && res_inSndHalf_finishInit: ((((res_nextTokW.whas? res_nextTokW.wget[3:2]: _) ==2'd0) ||res_inFstHalf_finishInit) &&(((res_nextTokW.whas? res_nextTokW.wget[3:2]: _) ==2'd0) ||((res_scheduler_last[1]? res_scheduler_last[0]: _)? res_scheduler_last[1] ||((res_scheduler_last[1]? ! res_scheduler_last[0]: _)? res_inFstHalf_usedReg[2:0] == 3'd0: (res_inFstHalf_usedReg[5:3] == 3'd0)): (res_inFstHalf_usedReg[5:3] == 3'd0)) ||res_inSndHalf_finishInit)))Blocking rules: (none)Rule: res_inSndHalf_processDeqPredicate: res_inSndHalf_finishInit &&res_inSndHalf_deqIdx.whas && res_inSndHalf_deqIdx.wget[1]Blocking rules: (none)Rule: res_inSndHalf_processFirstReqPredicate: res_inSndHalf_finishInit &&res_inSndHalf_firstIdx.whas && res_inSndHalf_firstIdx.wget[1]Blocking rules: (none)Rule: res_inSndHalf_processEnqPredicate: res_inSndHalf_finishInit &&res_inSndHalf_enqIdx.whas && res_inSndHalf_enqIdx.wget[1]Blocking rules: (none)Rule: res_inSndHalf_updateFreeRegPredicate: res_inSndHalf_finishInit &&((res_inSndHalf_decrFreeIdx.whas &&res_inSndHalf_decrFreeIdx.wget[1]) ||(res_inSndHalf_deqIdx.whas && res_inSndHalf_deqIdx.wget[1]))Blocking rules: (none)Rule: res_inSndHalf_updateUsedRegPredicate: res_inSndHalf_finishInit &&((res_inSndHalf_enqIdx.whas && res_inSndHalf_enqIdx.wget[1]) ||(res_inSndHalf_deqIdx.whas && res_inSndHalf_deqIdx.wget[1]))Blocking rules: (none)Rule: res_inSndHalf_initializationPredicate: ! res_inSndHalf_finishInitBlocking rules: (none)Rule: res_inFstHalf_processDeqPredicate: res_inFstHalf_finishInit &&res_inFstHalf_deqIdx.whas && res_inFstHalf_deqIdx.wget[1]Blocking rules: (none)Rule: res_inFstHalf_processFirstReqPredicate: res_inFstHalf_finishInit &&res_inFstHalf_firstIdx.whas && res_inFstHalf_firstIdx.wget[1]Blocking rules: (none)Rule: res_inFstHalf_processEnqPredicate: res_inFstHalf_finishInit &&res_inFstHalf_enqIdx.whas && res_inFstHalf_enqIdx.wget[1]Blocking rules: (none)Rule: res_inFstHalf_updateFreeRegPredicate: res_inFstHalf_finishInit &&((res_inFstHalf_decrFreeIdx.whas &&res_inFstHalf_decrFreeIdx.wget[1]) ||(res_inFstHalf_deqIdx.whas && res_inFstHalf_deqIdx.wget[1]))Blocking rules: (none)Rule: res_inFstHalf_updateUsedRegPredicate: res_inFstHalf_finishInit &&((res_inFstHalf_enqIdx.whas && res_inFstHalf_enqIdx.wget[1]) ||(res_inFstHalf_deqIdx.whas && res_inFstHalf_deqIdx.wget[1]))Blocking rules: (none)Rule: res_inFstHalf_initializationPredicate: ! res_inFstHalf_finishInitBlocking rules: (none)Logical execution order: outStream_putTokInfo,inStream_putRecord,inStream_putDeqTok,inStream_getTokInfo,res_feedScheduler,res_nextToProcess,outStream_getDeqTok_snd,outStream_getDeqTok_fst,res_compares,outStream_getRecord_snd,outStream_getRecord_fst,res_inSndHalf_processFirstReq,res_inSndHalf_processDeq,res_inSndHalf_updateFreeReg,res_inSndHalf_updateUsedReg,res_inSndHalf_processEnq,res_inFstHalf_processFirstReq,res_inSndHalf_initialization,res_inFstHalf_processDeq,res_inFstHalf_updateFreeReg,res_inFstHalf_updateUsedReg,res_inFstHalf_processEnq,res_inFstHalf_initialization==========================================================
