CacheMicroCodeD.mesa
Last Edited by: Barth, May 24, 1984 4:47:11 pm PDT
DIRECTORY CacheMicroMachine;
CacheMicroCodeD: CEDAR PROGRAM
IMPORTS CacheMicroMachine =
BEGIN OPEN CacheMicroMachine;
Master;
Sequence[2]; -- ReadQuad
Cycle[0, LIST[$GetAddress]];
Cycle[1, LIST[$DriveMCmd, $PageAccessToMDataI, $LowBitsAccessToMDataI, $MDataIToMData, $DriveMData, $AccessToMatch, $PAdrToMAdrCtr, $Refresh, $PrechargeMNShared]];
Cycle[2, LIST[$DriveMCmdToNoOp, $VirtualAddressToAccess, $SenseShared, $SelectVictimOrOrphan, $ResetVPValid, $DriveCAMAccess, $VirtualAccess, $SampleRealMatch]];
Cycle[3, LIST[$DriveMCmdToDataTransport, $MAdrCtrToMAdr, $MDataToMDataI, $MDataIToMRAMReg, $MRAMRegToMBitsNoOrphan, $SelectVictimOrOrphan, $SetFlags, $MatchToAccess, $DriveCAMAccess, $nVirtualAccess, $MDone, $SuppressPSample, $SenseReady, $SetWantWS]];
Cycle[4, LIST[$DriveMCmdToDataTransport, $IncMAdrCtr, $MAdrCtrToMAdr, $MDataToMDataI, $MDataIToMRAMReg, $MRAMRegToMBitsNoOrphan, $SelectVictimOrOrphan, $CheckParity, $SetTIP, $SuppressPSample]];
Cycle[5, LIST[$DriveMCmdToDataTransport, $IncMAdrCtr, $MAdrCtrToMAdr, $MDataToMDataI, $MDataIToMRAMReg, $MRAMRegToMBitsNoOrphan, $SelectVictimOrOrphan, $CheckParity, $ReleaseMBus]];
Cycle[6, LIST[$DriveMCmdToDataTransport, $IncMAdrCtr, $MAdrCtrToMAdr, $MDataToMDataI, $MDataIToMRAMReg, $MRAMRegToMBitsNoOrphan, $SelectVictimOrOrphan, $CheckParity, $DCheckParity, $ResetTIP, $ShiftVictim, $GetAddress, $Done]];
Sequence[3]; -- WriteSingle
Cycle[0, LIST[$GetAddress]];
Cycle[1, LIST[$DriveMCmd, $PageAccessToMDataI, $LowBitsAccessToMDataI, $MDataIToMData, $DriveMData, $PBitsToMRAMReg, $MRAMRegToMDataI, $Refresh, $FinishSharedStore, $ReleaseMBus, $MDone, $SuppressPSample]];
Cycle[2, LIST[$DriveMCmdToDataTransport, $DriveMData, $CheckParity, $GetAdrRefresh, $Done, $SuppressPSample]];
END.