MCtlCAMCtl:
CELL[
Timing and housekeeping interface
Vdd, Gnd<BOOL,
LatchBias<BOOL,
Buffered timing and housekeeping interface
PhBb<BOOL,
More debug interface
ShiftDataToMCAM>BOOL,
MCAMDriver interface
PageAccessToAccess, BlockAccessToAccess>BOOL,
PageVirtualToAccess, BlockVirtualToAccess>BOOL,
MatchToAccess>BOOL,
MDataToMatch, AccessToMatch>BOOL,
PageAccessToMData, nPageAccessToMData>BOOL,
BlockAccessToMData, nBlockAccessToMData>BOOL,
AccessToPageBlockAccess, nAccessToPageBlockAccess, ShiftToPageBlockAccess, nShiftToPageBlockAccess, AccessDrive, nAccessDrive>BOOL,
PageBlockAccessToShift, nPageBlockAccessToShift>BOOL,
nCAMAccessPrecharge>BOOL,
Still more debug interface
ShiftDataToCAMCtl<BOOL,
ReadEntry, WriteEntry<BOOL,
ShiftExecute, nShiftExecute<BOOL,
CAM control interface
CAMMDataIToMatchReg, CAMGetAdrRefresh, CAMGetAddress, CAMPageAccessToMDataI, CAMLowBitsAccessToMDataI, CAMAccessToMatch, CAMMatchToAccess, CAMVirtualAddressToAccess, CAMDriveCAMAccess<BOOL,
Control steel wool
GetAdrCmdBA<Mnemonic["GetAddressCommands"]
]
EvalSimple
getAdr: BOOL ← CAMGetAdrRefresh OR CAMGetAddress;
PageAccessToAccess ← getAdr AND (GetAdrCmdBA=VictimReal OR GetAdrCmdBA=RefRealAssemble);
BlockAccessToAccess ← getAdr AND GetAdrCmdBA=VictimReal;
PageVirtualToAccess ← (getAdr AND GetAdrCmdBA=RefVirtual) OR CAMVirtualAddressToAccess;
BlockVirtualToAccess ← (getAdr AND (GetAdrCmdBA=RefRealAssemble OR GetAdrCmdBA=RefVirtual)) OR CAMVirtualAddressToAccess;
MatchToAccess ← CAMMatchToAccess OR (getAdr AND GetAdrCmdBA=RefRealMap);
MDataToMatch ← CAMMDataIToMatchReg;
AccessToMatch ← CAMAccessToMatch;
PageAccessToMData ← CAMPageAccessToMDataI;
nPageAccessToMData ← NOT PageAccessToMData;
BlockAccessToMData ← CAMLowBitsAccessToMDataI;
nBlockAccessToMData ← NOT BlockAccessToMData;
AccessToPageBlockAccess ← CAMDriveCAMAccess;
nAccessToPageBlockAccess ← NOT AccessToPageBlockAccess;
ShiftToPageBlockAccess ← ShiftExecute AND WriteEntry;
nShiftToPageBlockAccess ← NOT ShiftToPageBlockAccess;
AccessDrive ← AccessToPageBlockAccess OR ShiftToPageBlockAccess;
nAccessDrive ← NOT AccessDrive;
PageBlockAccessToShift ← ShiftExecute AND ReadEntry;
nPageBlockAccessToShift ← NOT PageBlockAccessToShift;
nCAMAccessPrecharge ← NOT PhBb;
ShiftDataToMCAM ← ShiftDataToCAMCtl;
ENDCELL