CacheMicroCodeD.mesa
Last Edited by: Barth, July 27, 1984 12:13:45 pm PDT
DIRECTORY CacheMicroMachine;
CacheMicroCodeD: CEDAR PROGRAM
IMPORTS CacheMicroMachine =
BEGIN OPEN CacheMicroMachine;
Master;
Sequence[2]; -- ReadQuad
Cycle[1, LIST[$MasterEnableMBusDrive, $MCmdDrive, $PageDriveMDataI, $BlockDriveMDataI, $AddressBitsToMDataI, $MDataDrive, $SamplePAdr2831, $DriveSharedHigh, $BCAMRegDriveCAMBits, $SenseRMatch, $RefreshToDecoder]];
Cycle[2, LIST[$SampleRealMatch, $SenseShared, $SelectRP, $ACAMRegDriveCAMBits]];
Cycle[3, LIST[$SenseVictim, $SenseMDataI, $Adr2829ToMQSel, $SelVictimOrOrphan, $SelectVPVictimOrOrphan, $SetFlags, $DriveMBitsNoMatch, $SenseReady, $SetWantWS, $ACheckParity, $StartWordMachine]];
Cycle[4, LIST[$SenseMDataI, $Adr2829ToMQSel, $SelVictimOrOrphan, $IncrementMAdrCtr, $DriveMBitsNoMatch, $SuppressPSample, $ACheckParity, $MIsDone, $ReleaseMBus]];
Cycle[5, LIST[$SenseMDataI, $Adr2829ToMQSel, $SelVictimOrOrphan, $IncrementMAdrCtr, $DriveMBitsNoMatch, $ACheckParity]];
Cycle[6, LIST[$SenseMDataI, $Adr2829ToMQSel, $SelVictimOrOrphan, $IncrementMAdrCtr, $DriveMBitsNoMatch, $ACheckParity, $FetchAddress, $FormAddress, $Done, $IncrementVictim]];
Sequence[3]; -- WriteSingle
Cycle[1, LIST[$MasterEnableMBusDrive, $MCmdDrive, $PageDriveMDataI, $BlockDriveMDataI, $AddressBitsToMDataI, $MDataDrive, $SensePBits, $RefreshToDecoder, $SuppressPSample]];
Cycle[2, LIST[$MasterEnableMBusDrive, $MCmdDrive, $MCmdDriveToDataTransport, $DriveMDataI, $MDataDrive, $BCheckParity, $FinishSharedStore, $MIsDone, $SuppressPSample, $FetchAddress, $FormAddress, $Done]];
END.