Hardware description
If you only want to write part of a word of data, you can mask the address using one of the
RC200PL1RAM*SetWriteAddressMask()
macros.
5.7.1 RAM management tasks
extern macro proc RC200PL1RAM0Run (
ClockRate
);
extern macro proc RC200PL1RAM1Run (
ClockRate
);
Parameters:
ClockRate
: Clock rate of the clock domain of the call to this macro, in Hz.
Timing:
Does not terminate in normal use.
Description:
Runs the device management tasks for RAM. You must run this macro in parallel
with accesses to the RAM banks.
5.7.2 Setting the RAM address
extern macro proc RC200PL1RAM0SetReadAddress (
Address
);
extern macro proc RC200PL1RAM1SetReadAddress (
Address
);
extern macro proc RC200PL1RAM0SetWriteAddress (
Address
);
extern macro proc RC200PL1RAM1SetWriteAddress (
Address
);
Parameters:
Address
: Address of data to read/write on the next clock cycle, of type
unsigned
19
on the Standard and Professional versions of the RC200, and
unsigned 20
on
Expert boards.
Timing:
1 clock cycle.
Description:
Sets the address of data for the Read or Write which will occur on the next cycle.
Example:
seq
{
RC200PL1RAM0SetReadAddress
(Addr);
RC200PL1RAM0Read
(&Data);
}
5.7.3 Write address mask
extern macro proc RC200PL1RAM0SetWriteAddressMask (
Address
,
Mask
);
extern macro proc RC200PL1RAM1SetWriteAddressMask (
Address
,
Mask
);
Parameters:
Address
: Address of data to read/write on the next clock cycle, of type
unsigned 19
on the Standard and Professional RC200, and
unsigned 20
on
Expert boards.
Mask
: data value of type
unsigned 4
.
Timing:
1 clock cycle.
Description:
Sets the address for the next write and masks the bytes that are set to 0 in
Mask
.
For example, if
Mask
was
0010
, only the second byte would be written to.
www.celoxica.com
Page 41