<> <> 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.