GRLIB MCTRL Model

The MCtrl device is part of the GRLIB IP library. It is available in libTEMUMCtrl.so.

Loading the Plugin

import MCtrl

Configuration

@MCtrl Reference

Properties

Name Type Description

Class

*void

Class object

Component

*void

Pointer to component object if part of component

LocalName

*char

Local name (in component, if applicable)

LogMessageFlags

uint64_t

Per-object log message suppression flags

LoggingFlags

uint64_t

Flags for logging info

Name

*char

Object name

ObjectID

uint64_t

Unique ObjectID.

ReplayLoggingFlags

uint64_t

Replay-time category logging flags

TimeSource

*void

Time source object

Commands

Name Description

delete

Dispose instance of @MCtrl

new

Create new instance of MCtrl

Command new Arguments

Name Type Required Description

name

string

yes

Name of object to create

MCtrl Reference

Properties

Name Type Description

Class

*void

Class object

Component

*void

Pointer to component object if part of component

LocalName

*char

Local name (in component, if applicable)

LogMessageFlags

uint64_t

Per-object log message suppression flags

LoggingFlags

uint64_t

Flags for logging info

MCFG1ColdResetValue

uint32_t

Memory configuration register 1

MCFG1ForcedBits

uint32_t

Memory configuration register 1

MCFG1ForcedFlippedBits

uint32_t

Memory configuration register 1

MCFG1ReadMask

uint32_t

Memory configuration register 1

MCFG1ResetMask

uint32_t

Memory configuration register 1

MCFG1ResetValue

uint32_t

Memory configuration register 1

MCFG1WriteMask

uint32_t

Memory configuration register 1

MCFG2ColdResetValue

uint32_t

Memory configuration register 2

MCFG2ForcedBits

uint32_t

Memory configuration register 2

MCFG2ForcedFlippedBits

uint32_t

Memory configuration register 2

MCFG2ReadMask

uint32_t

Memory configuration register 2

MCFG2ResetMask

uint32_t

Memory configuration register 2

MCFG2ResetValue

uint32_t

Memory configuration register 2

MCFG2WriteMask

uint32_t

Memory configuration register 2

MCFG3ColdResetValue

uint32_t

Memory configuration register 3

MCFG3ForcedBits

uint32_t

Memory configuration register 3

MCFG3ForcedFlippedBits

uint32_t

Memory configuration register 3

MCFG3ReadMask

uint32_t

Memory configuration register 3

MCFG3ResetMask

uint32_t

Memory configuration register 3

MCFG3ResetValue

uint32_t

Memory configuration register 3

MCFG3WriteMask

uint32_t

Memory configuration register 3

MCFG4ColdResetValue

uint32_t

Power-saving configuration register

MCFG4ForcedBits

uint32_t

Power-saving configuration register

MCFG4ForcedFlippedBits

uint32_t

Power-saving configuration register

MCFG4ReadMask

uint32_t

Power-saving configuration register

MCFG4ResetMask

uint32_t

Power-saving configuration register

MCFG4ResetValue

uint32_t

Power-saving configuration register

MCFG4WriteMask

uint32_t

Power-saving configuration register

Name

*char

Object name

ObjectID

uint64_t

Unique ObjectID.

ReplayLoggingFlags

uint64_t

Replay-time category logging flags

TimeSource

*void

Time source object

ahb.pnp.bar

[uint32_t; 4]

ahb.pnp.identReg

uint32_t

ahb.pnp.userDef

[uint32_t; 3]

apb.pnp.bar

uint32_t

apb.pnp.config

uint32_t

config.littleEndian

uint8_t

Endianess of memory interface.

mcfg1

uint32_t

Memory configuration register 1

mcfg2

uint32_t

Memory configuration register 2

mcfg3

uint32_t

Memory configuration register 3

mcfg4

uint32_t

Power-saving configuration register

Interfaces

Name Type Description

AhbIface

AhbIface

ApbIface

ApbIface

DeviceIface

DeviceIface

MemAccessIface

MemAccessIface

RegisterIface

temu::RegisterIface

Auto-generated Register Interface Impl.

ResetIface

ResetIface

Registers

Register support is currently experimental!

Register Bank Regs

Register MCFG1
Description

Memory configuration register 1

Reset value

0x00000000

Warm reset mask

0x1ef80bff

Diagram
Field Mask Reset Description

IOBUSW

0x18000000

0x0

I/O bus width

IBRDY

0x04000000

0x0

I/O bus ready enable

BEXCN

0x02000000

0x0

Bus error enable

IO_WAITSTATES

0x00f00000

0x0

I/O waitstates

IOEN

0x00080000

0x0

I/O enable

PWEN

0x00000800

0x0

PROM write enable

PROM_WIDTH

0x00000300

0x0

PROM width

PROM_WRITE_WS

0x000000f0

0x0

PROM write waitstates

PROM_READ_WS

0x0000000f

0x0

PROM read waitstates

Register MCFG2
Description

Memory configuration register 2

Reset value

0x00000000

Warm reset mask

0xfffd7eff

Diagram
Field Mask Reset Description

SDRF

0x80000000

0x0

SDRAM refresh enable

TRP

0x40000000

0x0

SDRAM TRP parameter

SDRAM_TRFC

0x38000000

0x0

SDRAM TRFC parameter

TCAS

0x04000000

0x0

SDRAM TCAS parameter

SDRAM_BANKSZ

0x03800000

0x0

SDRAM bank size

SDRAM_COLSZ

0x00600000

0x0

SDRAM column size

SDRAM_CMD

0x00180000

0x0

SDRAM command

D64

0x00040000

0x0

64-bit SDRAM data bus

MS

0x00010000

0x0

Mobile SDR support enabled

SE

0x00004000

0x0

SDRAM enable

SI

0x00002000

0x0

SRAM disable

RAM_BANK_SIZE

0x00001e00

0x0

RAM bank size

RBRDY

0x00000080

0x0

RAM bus ready enable

RMW

0x00000040

0x0

Read-modify-write enable

RAM_WIDTH

0x00000030

0x0

RAM width

RAM_WRITE_WS

0x0000000c

0x0

RAM write waitstates

RAM_READ_WS

0x00000003

0x0

RAM read waitstates

Register MCFG3
Description

Memory configuration register 3

Reset value

0x00000000

Warm reset mask

0x07fff000

Diagram
Field Mask Reset Description

SDRAM_REFRESH_RELOAD_VALUE

0x07fff000

0x0

SDRAM refresh counter reload value

Register MCFG4
Description

Power-saving configuration register

Reset value

0x00000000

Warm reset mask

0xe0f7007f

Diagram
Field Mask Reset Description

ME

0x80000000

0x0

Mobile SDRAM functionality enabled

CE

0x40000000

0x0

Clock enable

EM

0x20000000

0x0

Extended mode register command

TXSR

0x00f00000

0x0

SDRAM tXSR timing

PMODE

0x00070000

0x0

Power-saving mode

DS

0x00000060

0x0

Output drive strength

TCSR

0x00000018

0x0

Temperature-compensated self refresh

PASR

0x00000007

0x0

Partial array self refresh

Commands

Name Description

delete

Dispose instance of MCtrl

Limitations