DMMBusModel.mesa
Written By: Jean Vuillemin and Pradeep Sindhu
Last Edited By: Pradeep Sindhu September 3, 1985 3:05:55 pm PDT
DIRECTORY
DM;
DMMBusModel: CEDAR DEFINITIONS = BEGIN
MBus Related Types
MBusSpecific: TYPE = REF MBusSpecificRec;
MBusSpecificRec: TYPE = RECORD [
mReset: BOOLFALSE,
mnAdCycle: BOOLTRUE,
mnShared: BOOLTRUE,
mnAbort: BOOLTRUE,
mnDV: BOOLTRUE,
mnError: BOOLTRUE,
mCmd: MCmdType,
mData: DM.Word ← DM.ZerosWord,
mParity: BOOL,
mnHouseKeepingInProgress: BOOLTRUE
];
MCmdType: TYPE = {RQRandom, WQRandom, RQStream, WQStream, IORFast, IOWFast, WSingle, IORFlow, IOWFlow, Done, NoOp};
The MBus procedures
Create: PUBLIC PROC [] RETURNS [mbus: DM.Component];
MReset: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMReset: PUBLIC PROC [mbus: DM.Component, value: BOOL];
MnAdCycle: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMnAdCycle: PUBLIC PROC [mbus: DM.Component, value: BOOL];
MnShared: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMnShared: PUBLIC PROC [mbus: DM.Component, value: BOOL];
MnAbort: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMnAbort: PUBLIC PROC [mbus: DM.Component, value: BOOL];
MnDV: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMnDV: PUBLIC PROC [mbus: DM.Component, value: BOOL];
MnError: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMnError: PUBLIC PROC [mbus: DM.Component, value: BOOL];
MCmd: PUBLIC PROC [mbus: DM.Component] RETURNS [MCmdType];
DrMCmd: PUBLIC PROC [mbus: DM.Component, mCmd: MCmdType];
MData: PUBLIC PROC [mbus: DM.Component] RETURNS [DM.Word];
DrMData: PUBLIC PROC [mbus: DM.Component, mData: DM.Word];
MnHouseKeepingInProgress: PUBLIC PROC [mbus: DM.Component] RETURNS [BOOL];
DrMnHouseKeepingInProgress: PUBLIC PROC [mbus: DM.Component, value: BOOL];
END.