1 |
156 |
root |
<!--# set var="title" value="Title" -->
|
2 |
|
|
<!--# include virtual="/ssi/ssi_start.shtml" -->
|
3 |
|
|
<b><font size=+2 face="Helvetica, Arial"color=#bf0000>Project Name: PCI bridge</font></b>
|
4 |
|
|
<p><table align=center border=1 cellPadding=2 cellSpacing=0 width="100%" valign="top">
|
5 |
|
|
<tbody><tr bgcolor=#bbccff> <td align=center valign=center>
|
6 |
|
|
<a href="http://www.opencores.org/cores/pci/index.shtml">Introduction</a> |
|
7 |
|
|
<a href="http://www.opencores.org/cores/pci/documentation.shtml">Documentation</a> |
|
8 |
|
|
<a href="http://www.opencores.org/cores/pci/charact.shtml">Characteristics</a> |
|
9 |
|
|
<a href="http://www.opencores.org/cores/pci/current_stat.shtml">Current Status</a> |
|
10 |
|
|
<a href="http://www.opencores.org/cores/pci/todo_list.shtml">To Do list</a> |
|
11 |
|
|
<a href="http://www.opencores.org/cores/pci/test_app.shtml">Test Application</a> |
|
12 |
|
|
<a href="http://www.opencores.org/cores/pci/download.shtml">Download</a> |
|
13 |
|
|
<a href="http://www.opencores.org/cores/pci/testbench.shtml">Testbench</a> |
|
14 |
|
|
<a href="http://www.opencores.org/cores/pci/references.shtml">References</a> |
|
15 |
|
|
<a href="http://www.opencores.org/cores/pci/links.shtml">Links</a> |
|
16 |
|
|
<a href="mailto:pci@opencores.org">Mailing list</a> |
|
17 |
|
|
<a href="http://www.opencores.org/cores/pci/contacts.shtml">Contacts</a>
|
18 |
|
|
</td></tr></tbody>
|
19 |
|
|
</table>
|
20 |
|
|
<table border=0 cellPadding=0 cellSpacing=0 width="100%">
|
21 |
|
|
<tbody><tr><td>
|
22 |
|
|
<p><center><font color="#bf0000" size=+3><b>Test Application</b></font></center>
|
23 |
|
|
</p></td></tr>
|
24 |
|
|
|
25 |
|
|
<p><table align=center border=1 cellPadding=2 cellSpacing=0 width="100%" valign="top">
|
26 |
|
|
<tbody><tr bgcolor=#bbccff> <td align=center valign=center>
|
27 |
|
|
<a href="http://www.opencores.org/cores/pci/test_snapshots.shtml">Snapshots</a> |
|
28 |
|
|
<a href="http://www.opencores.org/cores/pci/test_board.shtml">Insight Development Board</a> |
|
29 |
|
|
<a href="http://www.opencores.org/cores/pci/test_driver.shtml">FB Driver for Linux</a>
|
30 |
|
|
</td></tr></tbody>
|
31 |
|
|
</table>
|
32 |
|
|
<table border=0 cellPadding=0 cellSpacing=0 width="100%">
|
33 |
|
|
<tbody><tr><td>
|
34 |
|
|
<p><center><font color="#bf0000" size=+3><b>Insight Development Board</b></font></center>
|
35 |
|
|
</p></td></tr>
|
36 |
|
|
|
37 |
|
|
<table width="100%">
|
38 |
|
|
<tr>
|
39 |
|
|
<td>
|
40 |
|
|
We used Insight Electronics' SPARTAN-II PCI DEVELOPMENT BOARDS for testing the PCI core
|
41 |
|
|
(PCI to WISHBONE bridge). The price for this board (without development cores) is about
|
42 |
|
|
<b>$145</b>. You can find information regarding this board on the folowing page:
|
43 |
|
|
<h4><a href="http://www.insight-electronics.com/solutions/kits/xilinx/spartan-iipci.html">www.insight-electronics.com/solutions/kits/xilinx/spartan-iipci.html</a></h4>
|
44 |
|
|
We also needed Insight Electronics' SPARTAN-II PCI DIME1 PROBE BOARDS (add-on boards) for
|
45 |
|
|
assemblig some additional electronic components (described below). The price for this board
|
46 |
|
|
is about <b>$40</b>. You can find information regarding this board on the folowing page:
|
47 |
|
|
<h4><a href="http://www.insight-electronics.com/solutions/kits/xilinx/dime1.html">www.insight-electronics.com/solutions/kits/xilinx/dime1.html</a></h4>
|
48 |
|
|
We synthesis and implement PCI bridge with CRT controller into the FPGA on the PCI DEVELOPMENT
|
49 |
|
|
BOARD. The application software (Linux driver) first write a palete through the PCI Targt into
|
50 |
|
|
the CRT controller. Then it enables the PCI Master and CRT controller with appropriate values.
|
51 |
|
|
Now CRT controller reads pixels through the PCI Master from the system memory of the computer.
|
52 |
|
|
This application software uses 4-bits per color (12-bits) and also enables Frame Buffer so we
|
53 |
|
|
can see the X windows through this PCI card. The resolution is 640x480 with 60 Hz refresh rate.
|
54 |
|
|
<br><br>On the picture below you can see which pins and connectors of the DIME1 PROBE BOARD we
|
55 |
|
|
used.<br><br>
|
56 |
|
|
<tr>
|
57 |
|
|
<td>
|
58 |
|
|
<a href="PCI_VGA_test_brd.jpg"><img src="PCI_VGA_test_brd.jpg" alt="Dime1 probe board" width=512 height=564 align=center></a>
|
59 |
|
|
<tr>
|
60 |
|
|
<td>
|
61 |
|
|
<br>The picture below shows the scheme for a simple resistor based DAC connected between the
|
62 |
|
|
DIME1 PROBE BOARD and a standard 15-pin VGA connector. There you can also see how to connect a
|
63 |
|
|
cristal oscilator which output frequency is used in the FPGA for video clock. <br><br>The whole
|
64 |
|
|
PCI bridge works on the PCI clock (although it contains a synchronisation between PCI and WISHBONE
|
65 |
|
|
clock). The synchronization between PCI and video clocks is made in the CRT controller. Therefore,
|
66 |
|
|
the pixel data are written faster into the CRT fifo than read out of it.<br><br>
|
67 |
|
|
<tr>
|
68 |
|
|
<td>
|
69 |
|
|
<a href="PCI_VGA_sch.jpg"><img src="PCI_VGA_sch.jpg" alt="Scheme: elements connected to Dime1 probe board" width=638 height=710 align=center></a>
|
70 |
|
|
<tr>
|
71 |
|
|
<td>
|
72 |
|
|
<br>Following two pictures shows pinouts of the cristal oscilator and of the standard 15-pin VGA
|
73 |
|
|
connector.<br><br>
|
74 |
|
|
<tr>
|
75 |
|
|
<td>
|
76 |
|
|
<a href="PCI_VGA_cristal.jpg"><img src="PCI_VGA_cristal.jpg" alt="Cristal oscilator pinout" width=578 height=154 align=center></a>
|
77 |
|
|
<tr>
|
78 |
|
|
<td>
|
79 |
|
|
<br>
|
80 |
|
|
<a href="PCI_VGA_conn.jpg"><img src="PCI_VGA_conn.jpg" alt="Standard 15-pin VGA connector" width=319 height=166 align=center></a>
|
81 |
|
|
</table>
|
82 |
|
|
<!--# include virtual="/ssi/ssi_end.shtml" -->
|