Xilinx Virtex-4 ML461 User Manual page 103

Memory interfaces
Table of Contents

Advertisement

R
The character set is stored in block RAM (used as ROM). For the layout of the block RAM
character set, see the CharacterSet.xls file. The block RAM (see
organized as small arrays of eight bytes, which is easy for address calculation.
When presenting byte value 30 hex, character 0 must be displayed. Shifting the value
00110000b (30h) up three positions gives the value 180h or 348d.
Because each character uses eight byte locations, character 0 in the character set starts from
memory location 348 decimal.
For example, character X has byte value 58h or 01011000b. Shifting this value three
positions gives the value 2C0h or 704d.
Figure B-11
data is latched and then shifted left three positions. This shifted value is the start byte for a
counter that outputs an address to the block RAM. The result is a stream of bytes
representing a character for the display.
A small second counter determines when a new character is loaded into the block RAM
address counter.
Virtex-4 ML461 Development Board User Guide
UG079 (v1.1) September 5, 2007
2047
1280
1279
Addr[10:0]
1024
1023
256
255
RAMB16_S9
0
Figure B-10: Block RAM Organization
shows a block diagram of the LCD character generator controller. Character
www.xilinx.com
Data[7:0]
F0 - FF
E0 - EF
D0 - DF
The RAM array is divided in
C0 - CF
pages of eight bytes by 16,
B0 - BF
forming an array of 128 bytes.
This array represents one
A0 - AF
column of standard ASCII table.
A character is stored as:
Not Used
Not Used
N-x
70 - 7F
60 - 6F
50 - 5F
40 - 4F
N
N-1
30 - 3F
20 - 2F
Addr
10 - 1F
Not Used
0
Hardware Schematic Diagram
Figure
B-10) is
Shift
direction
0 1 2 3 4 5 6 7 Data
ug037_c8_10_062903
103

Advertisement

Table of Contents
loading

Table of Contents