OpenCores
URL https://opencores.org/ocsvn/rtftextcontroller/rtftextcontroller/trunk

Subversion Repositories rtftextcontroller

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 22 to Rev 23
    Reverse comparison

Rev 22 → Rev 23

/rtftextcontroller/trunk/doc/rtfTextController.ppt Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream
/rtftextcontroller/trunk/doc/rtftextcontroller.html
7,196 → 7,341
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>rtfTextController</title>
 
<!--mstheme--><link rel="stylesheet" type="text/css" href="../../_themes/water/wate1011.css"><meta name="Microsoft Theme" content="water 1011, default">
<!--mstheme--><link rel="stylesheet" href="wate1011.css">
 
<meta name="Microsoft Theme" content="water 1011, default">
</head>
 
<body>
 
<p><font size="6">rtfTextController</font></p>
<p><font size="5">Description</font></p>
<h2>&nbsp;</h2>
<h2><font size="5">Description</font></h2>
<p><font size="4">This is a text mode video display controller that supports
color. The display memory is nine bits wide, allowing 512 different
simulataneous characters to be displayed. The controller uses several internal
memories.</font></p>
<table border="1" cellpadding="0" cellspacing="0" width="100%" style="border-left: 1.5pt solid black; border-right: 1.5pt solid black; border-top: 1.5pt solid black; border-bottom: .75pt solid black; background-color: white" fpstyle="27,011111100">
color. The controller uses several internal
dual ported r/w memories to store text, text attributes and character bitmaps. The display memory is
thirty-two bits wide of which only nine bits are implemented, allowing 512 different
simultaneous characters to be displayed. The attribute memory is also thirty-two
bits wide with nine bits implemented, allowing for 32 foreground colors and 16
background colors. The use of internal dual ported memories means that the text
controller does not consume any memory bandwidth from the processor.</font></p>
<table border="1" cellpadding="0" cellspacing="0" width="91%" style="border-left: 1.5pt solid black; border-right: 1.5pt solid black; border-top: 1.5pt solid black; border-bottom: .75pt solid black; background-color: white" fpstyle="27,011111100">
<tr>
<td width="27%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
<td width="15%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
Address</td>
<td width="73%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
<td width="85%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
Description</td>
</tr>
<tr>
<td width="27%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="15%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
$FFD0_xxxx</td>
<td width="73%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="85%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
text screen memory area, currently the controller only supports a 4k memory</td>
</tr>
<tr>
<td width="27%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="15%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
$FFD1_xxxx</td>
<td width="73%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="85%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
color attribute memory area, currently the controller only supports a 4k
memory</td>
</tr>
<tr>
<td width="27%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="15%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
$FFD2_xxxx</td>
<td width="73%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="85%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
character bitmap memory, currently the controller only supports a 4k memory,
which allows 512 8x8 character bitmaps.</td>
</tr>
<tr>
<td width="27%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="15%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
$FFDA_00xx</td>
<td width="73%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="85%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
text controller register area</td>
</tr>
<tr>
<td width="27%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="73%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="15%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="85%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
</tr>
</table>
<p style="margin-bottom: 0">&nbsp;</p>
<p style="margin-bottom: 0">Text Memory Layout</p>
 
<p><font face="Arial"><b>Register Description</b></font></p>
<table border="1" cellspacing="0" width="90%" style="border-left:1.5pt solid black; border-right:1.5pt solid black; border-top:1.5pt solid black; border-bottom:.75pt solid black; background-color:white" cellpadding="2" fpstyle="27,011111100">
<table border="1" cellpadding="0" cellspacing="0" width="34%" style="border-left: 1.5pt solid black; border-right: 1.5pt solid black; border-top: 1.5pt solid black; border-bottom: .75pt solid black; background-color: white" fpstyle="27,011111100">
<tr>
<td width="11%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray"><font face="Arial"><b>Reg. No.</b></font></td>
<td width="26%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray"><b><font face="Arial">15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<td width="63%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
31&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
9</td>
<td width="37%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
0</td>
</tr>
<tr>
<td width="63%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
unimplemented</td>
<td width="37%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
char code</td>
</tr>
</table>
<p style="margin-bottom: 0">Attribute Memory Layout</p>
 
<table border="1" cellpadding="0" cellspacing="0" width="34%" style="border-left: 1.5pt solid black; border-right: 1.5pt solid black; border-top: 1.5pt solid black; border-bottom: .75pt solid black; background-color: white" fpstyle="27,011111100">
<tr>
<td width="63%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
31&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
9</td>
<td width="17%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
8&nbsp;&nbsp;&nbsp;&nbsp; 5</td>
<td width="57%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0</td>
</tr>
<tr>
<td width="63%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
unimplemented</td>
<td width="17%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
back</td>
<td width="57%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
fore</td>
</tr>
</table>
<h2 style="margin-bottom: 0">&nbsp;</h2>
 
<h2 style="margin-bottom: 0">Clocks</h2>
 
<p style="margin-bottom: 0">The text video display controller uses two clocks, a
bus timing clock (clk_i) and a video timing clock (vclk), which can be
completely independent.</p>
 
<h2><font face="Arial"><b>Register Description</b></font></h2>
<table border="1" cellspacing="0" width="90%" style="border-left:1.5pt solid black; border-right:1.5pt solid black; border-top:1.5pt solid black; border-bottom:.75pt solid black; background-color:white" cellpadding="2" fpstyle="27,011111100" height="658">
<tr>
<td width="11%" align="center" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray" height="19"><font face="Arial"><b>Reg. No.</b></font></td>
<td width="20%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray" align="right" height="19">
<font face="Arial">31</font><b><font face="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
0</font></b></td>
<td width="28%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray"><font face="Arial"><b>Function</b></font></td>
<td width="111%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray"><font face="Arial"><b>Description</b></font></td>
<td width="9%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray" align="center" height="19">
<font face="Arial">R/W</font></td>
<td width="19%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray" height="19"><font face="Arial"><b>Function</b></font></td>
<td width="151%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray" height="19"><font face="Arial"><b>Description</b></font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">0</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"><font face="Arial">0</font></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17"><font face="Arial">
-------- nnnnnnnn</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17">
<font face="Arial">RW</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">number of columns</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">1</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">-------- nnnnnnnn</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"><font face="Arial">1</font></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17"><font face="Arial">-------- nnnnnnnn</font></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17">
<font face="Arial">RW</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">number of row</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">2</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
---- nnnnnnnnnnnn</td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
window left</td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
Text window position- pixels before the display starts, referenced to the
end-of-line signal</td>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35"><font face="Arial">2</font></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="35">
<font face="Arial">---- nnnnnnnnnnnn</font></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="35">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">window left</font></td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">Text window position- pixels before the display starts, referenced to the
hsync signal</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">3</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">----
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35"><font face="Arial">3</font></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="35"><font face="Arial">----
nnnnnnnnnnnn</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="35">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">window top</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">Text window position - scan lines down from the top of
the screen referenced tothe end-of-frame signal</font></td>
the screen referenced to the vsync signal</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">4</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35"><font face="Arial">4</font></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="35">
<font face="Arial">-------- --- nnnnn</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="35">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">max scanline</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">maximum scan
line used to display chars</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">default 7.</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">5</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">--------
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="53"><font face="Arial">5</font></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="53"><font face="Arial">--------
hhhh wwww</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="53">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="53">
<font face="Arial">pixel size</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="53">
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">pixel size in
video clocks and scan lines</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">default is 1
(2 video clocks per pixel) and 3 (four video scan lines per pixel).</font></td>
(2 video clocks per pixel) and 1 (two video scan lines per pixel).</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="243">
<font face="Arial">8</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">--------
--- sssss</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="243"><font face="Arial">
-------T TBB sssss</font></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="243">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="243">
<font face="Arial">cursor start</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">scan line cursor display starts on</font></td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="243">
<font face="Arial">sssss=scan line cursor display starts on</font><table border="1" cellpadding="0" cellspacing="0" width="100%" height="93" style="border-left: 1.5pt solid black; border-right: 1.5pt solid black; border-top: 1.5pt solid black; border-bottom: .75pt solid black; background-color: white" fpstyle="27,011111100">
<tr>
<td width="12%" height="17" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
TT</td>
<td width="88%" height="17" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
= Cursor Type</td>
</tr>
<tr>
<td width="12%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
00</td>
<td width="88%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
Box</td>
</tr>
<tr>
<td width="12%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
01</td>
<td width="88%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
Line</td>
</tr>
<tr>
<td width="12%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
10</td>
<td width="88%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
Underscore</td>
</tr>
<tr>
<td width="12%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
11</td>
<td width="88%" height="18" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
Box</td>
</tr>
</table>
<table border="1" cellpadding="0" cellspacing="0" width="100%" style="border-left: 1.5pt solid black; border-right: 1.5pt solid black; border-top: 1.5pt solid black; border-bottom: .75pt solid black; background-color: white" fpstyle="27,011111100">
<tr>
<td width="11%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
BB</td>
<td width="89%" style="font-weight: bold; color: white; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: 1.5pt solid black; background-color: gray">
= Cursor Blink Rate</td>
</tr>
<tr>
<td width="11%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
00</td>
<td width="89%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
no blink</td>
</tr>
<tr>
<td width="11%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
01</td>
<td width="89%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
no display</td>
</tr>
<tr>
<td width="11%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
10</td>
<td width="89%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
1/16 frame rate (4 times per second)</td>
</tr>
<tr>
<td width="11%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
11</td>
<td width="89%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
1/32 frame rate (2 times per second)</td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
&nbsp;<p>&nbsp;</p>
<p>
<font face="Arial">9</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">--------
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17"><font face="Arial">--------
--- eeeee</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">cursor end</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">scan line cursor display ends on</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">10</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
aaaaaaaa aaaaaaaa</td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
display offset</td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="35">
<font face="Arial">aaaaaaaa aaaaaaaa</font></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="35">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">display offset</font></td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="35">
<font face="Arial">starting address of the text screen in the display
memory, defaults to zero</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">11</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
aaaaaaaa aaaaaaaa</td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
cursor position</td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17">
<font face="Arial">aaaaaaaa aaaaaaaa</font></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17">
<font face="Arial">W</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">cursor position</font></td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">location of the cursor in the display memory</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">12</font></td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17">
<font face="Arial">aaaaaaaa aaaaaaaa</font></td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17">
<font face="Arial">R</font></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">light pen position</font></td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17">
<font face="Arial">address of the light pen</font></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17"></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17"></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
</tr>
<tr>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="26%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="28%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="111%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">&nbsp;</td>
<td width="11%" align="center" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
<td width="20%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="right" height="17"></td>
<td width="9%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" align="center" height="17"></td>
<td width="19%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
<td width="151%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white" height="17"></td>
</tr>
</table>
<p style="margin-bottom: 0">&nbsp;</p>
<p style="margin-bottom: 0"><b><span lang="en-ca">Module Interface Description</span></b></p>
<h2 style="margin-bottom: 0"><b><span lang="en-ca">Module Interface Description</span></b></h2>
<p style="margin-bottom: 0"><span lang="en-ca"><font face="Arial" size="4">
rtfTextController</font></span></p>
<p style="margin-bottom: 0; margin-top:0"><font face="Arial">
<font color="#00FF00">module</font> <span lang="en-ca">rtfTextController</span>(rst_i,
clk_i, cyc_i, stb_i, ack<span lang="en-ca">_o</span>, w<span lang="en-ca">e_i</span>, adr<span lang="en-ca">_i</span>, d<span lang="en-ca">at_i</span>, d<span lang="en-ca">at_o,
vclk, eol, eof, blank, border, rgbIn, rgbOut</span>);<br>
vclk, hsync, vsync, blank, border, rgbIn, rgbOut</span>);<br>
<br>
</font></p>
<table border="1" cellspacing="3" width="90%" style="border-left:1.5pt solid black; border-right:1.5pt solid black; border-top:1.5pt solid black; border-bottom:.75pt solid black; background-color:white" fpstyle="27,011111100">
219,7 → 364,8
operations.</font></td>
</tr>
<tr>
<td width="103%" colspan="2" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font color="#000080">
<td width="103%" colspan="2" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font color="#000080" face="Arial">
<span lang="en-ca">Slave Port</span></font></td>
</tr>
<tr>
229,9 → 375,11
active.</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">stb_i</td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">This strobe signal also indicates that a valid bus cycle is
taking place</td>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">stb_i</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">This strobe signal also indicates that a valid bus cycle is
taking place</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">ack_o</font></td>
267,30 → 415,33
</tr>
<tr>
<td width="103%" colspan="2" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">
<span lang="en-ca"><font color="#000080">Video</font></span><font color="#000080"><span lang="en-ca">
Ports</span></font></td>
Ports</span></font></font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">vclk</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
This input is the video clock input. Pixel timing is derived from it.</td>
<font face="Arial">This input is the video clock input. Pixel timing is derived from it.</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
eol</td>
<font face="Arial">hsync</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
This input signal signals the end of a video scanline (end-of-line)</td>
<font face="Arial">Horizontal sync.
This input signal signals the start/end of a video scanline (end-of-line)</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">eof</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">This <span lang="en-ca">input </span>signal indicates
<font face="Arial">vsync</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">
Vertical sync. This <span lang="en-ca">input </span>signal indicates
<span lang="en-ca">the end of the video frame.</span></font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
blank</td>
<font face="Arial">blank</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><font face="Arial">This
input signal indicates that the display should be blanked. It is active
during the video blanking period.</font></td>
297,22 → 448,23
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<span lang="en-ca">border</span></td>
<font face="Arial">
<span lang="en-ca">border</span></font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
This input signal indicates that a border area is active.</td>
<font face="Arial">This input signal indicates that a border area is active.</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">rgbIn</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
This 24 bit input bus can be connected to an external RGB input. (The text
controller may display on top of the external input).</td>
<font face="Arial">This 24 bit input bus can be connected to an external RGB input. (The text
controller may display on top of the external input).</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
<font face="Arial">rgbOut</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
This output signal bus contains the 24 bit RGB display data.</td>
<font face="Arial">This output signal bus contains the 24 bit RGB display data.</font></td>
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white"><span lang="en-ca"><b>
327,9 → 479,9
</tr>
<tr>
<td width="12%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
COLS</td>
<font face="Arial">COLS</font></td>
<td width="91%" style="font-weight: normal; color: black; border-left-style: none; border-right-style: none; border-top-style: none; border-bottom: .75pt solid black; background-color: white">
Use this parameter to specify the default number of text columns.</td>
<font face="Arial">Use this parameter to specify the default number of text columns.</font></td>
</tr>
</table>
<p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
394,12 → 546,11
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">Data transfer
sequencing</font></td>
<td width="55%" colspan="2" bordercolor="#000000" style="border-style: solid; border-width: 1">
<p style="margin-top: 0; margin-bottom: 0"><span lang="en-ca">16</span><font face="Arial">
<p style="margin-top: 0; margin-bottom: 0">32<font face="Arial">
bit</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">32 bit</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">
<span lang="en-ca">16</span> bit</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">
<span lang="en-ca">16</span> bit</font></p>
32 bit</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">Little Endian</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">any
(undefined)</font></td>
419,8 → 570,8
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">ack<span lang="en-ca">_o</span></font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">adr<span lang="en-ca">_i(31:0)</span></font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">clk<span lang="en-ca">_i</span></font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">d<span lang="en-ca">at_i</span>(<span lang="en-ca">15</span>:0)</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">d<span lang="en-ca">a</span>t<span lang="en-ca">_o</span>(<span lang="en-ca">15</span>:0)</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">d<span lang="en-ca">at_i</span>(31:0)</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">d<span lang="en-ca">a</span>t<span lang="en-ca">_o</span>(31:0)</font></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">cyc<span lang="en-ca">_i</span></font></p>
<p style="margin-top: 0; margin-bottom: 0"><span lang="en-ca">stb_i</span></p>
<p style="margin-top: 0; margin-bottom: 0"><font face="Arial">w<span lang="en-ca">e_i</span></font></td>
452,4 → 603,4
 
</body>
 
</html>
</html>
/rtftextcontroller/trunk/doc/rtfTextController3.ppt Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream
rtftextcontroller/trunk/doc/rtfTextController3.ppt Property changes : Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: rtftextcontroller/trunk/doc/rtftextcontroller3.html =================================================================== --- rtftextcontroller/trunk/doc/rtftextcontroller3.html (nonexistent) +++ rtftextcontroller/trunk/doc/rtftextcontroller3.html (revision 23) @@ -0,0 +1,596 @@ + + + + + + + +rtfTextController + + + + + + + + +

rtfTextController3

+

 

+

Description

+

This is a text mode video display controller that supports +color. The controller uses several internal +dual ported r/w memories to store text, text attributes and character bitmaps. The display memory is +thirty-two bits wide of which only twenty seven bits are implemented, allowing 512 different +simultaneous characters to be displayed along with 512 background and foreground +colors. The use of internal dual ported memories means that the text +controller does not consume any memory bandwidth from the processor.

+ + + + + + + + + + + + + + + + + + + + + +
+ Address + Description
+ $FFD0_xxxx + text screen and attribute memory area, currently the controller only supports a 4kx27 memory
+ $FFD2_xxxx + character bitmap memory, currently the controller only supports a 4k memory, + which allows 512 8x8 character bitmaps.
+ $FFDA_00xx + text controller register area
  
+

Text and Attribute Memory Layout

+ + + + + + + + + + + + + + +
+ 31  28 + 27        19 + 18       10 + 9                + 0
+ unimp + Bk Color + Fg Color + char code
+ +

Clocks

+ +

The text video display controller uses two clocks, a +bus timing clock (clk_i) and a video timing clock (vclk), which can be +completely independent.

+ +

Register Description

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Reg. No. + 31                                                 + 0 + R/WFunctionDescription
0 + -------- nnnnnnnn + RW + number of columns
1-------- nnnnnnnn + RW + number of row
2 + ---- nnnnnnnnnnnn + W + window left + Text window position- pixels before the display starts, referenced to the + hsync signal
3---- + nnnnnnnnnnnn + W + window top + Text window position - scan lines down from the top of + the screen referenced to the vsync signal
4 + -------- --- nnnnn + W + max scanline +

maximum scan + line used to display chars

+

default 7.

5-------- + hhhh wwww + W + pixel size +

pixel size in + video clocks and scan lines

+

default is 1 + (2 video clocks per pixel) and 1 (two video scan lines per pixel).

+ 7 + -------n nnnnnnnn + W + Transparent Color + color value that corresponds to a transparent background + color
+ 8 + -------T TBB sssss + W + cursor start + sssss=scan line cursor display starts on + + + + + + + + + + + + + + + + + + + + +
+ TT + = Cursor Type
+ 00 + Box
+ 01 + Line
+ 10 + Underscore
+ 11 + Asterisk
+ + + + + + + + + + + + + + + + + + + + + +
+ BB + = Cursor Blink Rate
+ 00 + no blink
+ 01 + no display
+ 10 + 1/16 frame rate (4 times per second)
+ 11 + 1/32 frame rate (2 times per second)
+
+  

 

+

+ 9

-------- + --- eeeee + W + cursor end + scan line cursor display ends on
+ 10 + aaaaaaaa aaaaaaaa + W + display offset + starting address of the text screen in the display + memory, defaults to zero
+ 11 + aaaaaaaa aaaaaaaa + W + cursor position + location of the cursor in the display memory
+ 12 + aaaaaaaa aaaaaaaa + R + light pen position + address of the light pen
+

 

+

Module Interface Description

+

+rtfTextController

+

+module rtfTextController(rst_i, +clk_i, cyc_i, stb_i, ack_o, we_i, adr_i, dat_i, dat_o, +vclk, hsync, vsync, blank, border, rgbIn, rgbOut);
+
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ SystemDescription
rst_iThis signal is normally connected to the + system reset signal. It resets the text controller + interface forcing it to the reset state. +
clk_iThis is usually + connected to the system clock and is used as a base timing clock for I/O + operations.
+ + Slave Port
cyc_iindicates that a valid bus cycle is + taking place. The core will not respond to the bus unless this signal is + active.
+ stb_i + This strobe signal also indicates that a valid bus cycle is + taking place
ack_oThis signal indicates that the core has + processed the bus transaction (it is the logical and of cyc_i and stb_i).
we_iThis signal is used to signify a write + operation to the text controller.
adr_i +

This + thirty-two bit address bus + is used + to address one of text controllers's registers + or internal memory. (Registers are described + below). + Registers respond to the address range $FFDA_00xx

+
dat_iThis is the sixteen + bit data input bus to the text controller.
dat_oThis is the sixteen bit data output bus + from the text controller.
+ + Video + Ports
+ vclk + This input is the video clock input. Pixel timing is derived from it.
+ hsync + Horizontal sync. + This input signal signals the start/end of a video scanline (end-of-line)
+ vsync + Vertical sync. This input signal indicates + the end of the video frame.
+ blankThis + input signal indicates that the display should be blanked. It is active + during the video blanking period.
+ + border + This input signal indicates that a border area is active.
+ rgbIn + This 24 bit input bus can be connected to an external RGB input. (The text + controller may display on top of the external input).
+ rgbOut + This output signal bus contains the 24 bit RGB display data.
+ Parameters 
+ ROWSUse this parameter to specify the + default number of text rows.
+ COLS + Use this parameter to specify the default number of text columns.
+

 

+
+

 

+ +

WISHBONE Compatibility +Datasheet

+

The text controller core may be directly +interfaced to a WISHBONE compatible bus.

+

 

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

WISHBONE + Datasheet

+

WISHBONE SoC + Architecture Specification, Revision B.3

+

 

+

 

+

Description:

+

+ Specifications:

+

General + Description:

+

+ rtfTextController - Text mode video display controller

+

Supported + Cycles:

+

SLAVE, READ / + WRITE

+

SLAVE, BLOCK + READ / WRITE

+

SLAVE, RMW

+

Data port, + size:

+

Data port, + granularity:

+

Data port, + maximum operand size:

+

Data transfer + ordering:

+

Data transfer + sequencing

+

32 + bit

+

32 bit

+

+ 32 bit

+

Little Endian

+

any + (undefined)

+

Clock + frequency constraints:

 
+

Supported + signal list and cross reference to equivalent WISHBONE signals

+

Signal Name:

+

ack_o

+

adr_i(31:0)

+

clk_i

+

dat_i(31:0)

+

dat_o(31:0)

+

cyc_i

+

stb_i

+

we_i

+

WISHBONE + Equiv.

+

ACK_O

+

ADR_I()

+

CLK_I

+

DAT_I()

+

DAT_O()

+

CYC_I

+

STB_I

+

WE_I

+

 

+

Special + Requirements:

+

external sync generator

+ +

 

+ +

 

+ + + + \ No newline at end of file

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.