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

Subversion Repositories yacc

[/] [yacc/] [trunk/] [doc/] [c_examples.htm] - Blame information for rev 4

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 tak.sugawa
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<HTML>
3
<HEAD>
4
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5
<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 9.0.2.0 for Windows">
6
<META http-equiv="Content-Style-Type" content="text/css">
7
<TITLE></TITLE>
8
</HEAD>
9
<BODY>
10
<P><B>7 Examples of C compilation</B><BR>
11
FPGA Vendor's library is not attached since they are property of vendors.
12
Set them under \lib folder as below to run RTL/Delay simulation in Veritak.(XilinxCorelib
13
is not attached in free Web Edition. BaseX or higher edition will be necessary.)<BR>
14
<IMG src="folder_structure.png" width="847" height="334" border="0"><BR>
15
<BR>
16
<B>7.1 RTL</B><BR>
17
<BR>
18
In RTL simulation using UART is too slow for debugging the cpu. Therefore&nbsp;output&nbsp;is&nbsp;changed
19
to&nbsp;console&nbsp;instead&nbsp;of&nbsp;UART&nbsp;PORT. Please note RTL
20
simulation takes very long time in running&nbsp;actual 10msec .</P>
21
<TABLE border=1>
22
<TBODY>
23
<TR>
24
<TD width=176>Folder</TD>
25
<TD width=136>C Program</TD>
26
<TD>Description</TD>
27
<TD>Batch File</TD>
28
<TD>Veritak Project(\bench\verilog)</TD>
29
    </TR>
30
<TR>
31
<TD width=176>\bench\c_src\count</TD>
32
<TD width=136>count_tak.c</TD>
33
<TD>By Steve Rhords</TD>
34
<TD>compile.bat</TD>
35
<TD>altera_rtl/xilinx_rtl</TD>
36
    </TR>
37
<TR>
38
<TD width=176>\bench\c_src\pi</TD>
39
<TD width=136>pi2.c</TD>
40
<TD>pi 10digits</TD>
41
<TD>compile.bat</TD>
42
<TD>altera_rtl_no_wave/xilinx_rtl_no_wave</TD>
43
    </TR>
44
<TR>
45
<TD width=176>\bench\c_src\dhrystone</TD>
46
<TD width=136>dhry21_tak.c</TD>
47
<TD>Dhrystone</TD>
48
<TD>compile.bat</TD>
49
<TD>altera_rtl_no_wave/xilinx_rtl_no_wave</TD>
50
    </TR>
51
<TR>
52
<TD width=176>\bench\c_src\reed solomon</TD>
53
<TD width=136>rs_tak.c</TD>
54
<TD>By Phil Karn</TD>
55
<TD>compile.bat</TD>
56
<TD>altera_rtl_no_wave/xilinx_rtl_no_wave</TD>
57
    </TR>
58
<TR>
59
<TD width=176>\bench\c_src\calculator</TD>
60
<TD width=136>uart_echo_test.c</TD>
61
<TD>Interactive Calculator.  Interrupt debug use</TD>
62
<TD>compile.bat</TD>
63
<TD>altera_calculator_test_using_uart_echo/xilinx_calculator_test_using_uart_echo<BR>
64
      </TD>
65
    </TR>
66
  </TBODY>
67
</TABLE>
68
<P><BR>
69
(1) count </P>
70
<P><IMG src="count_rtl_sim.png" width="783" height="734" border="0"></P>
71
<P>(2)Pi<BR>
72
<IMG src="xilinx_pi_rtl_sim.png" width="877" height="295" border="0"><BR>
73
<BR>
74
(3)Reed Solomon<IMG src="rs_rtl_sim_by_cyclone.png" width="1007" height="719" border="0"></P>
75
<P><BR>
76
(4) Calculator<BR>
77
This is console output only, not interactive. Using echo-back technique,
78
UART interrupt test was done.<BR>
79
<IMG src="xilinx_calculator_rtl_sim.png" width="877" height="715" border="0"></P>
80
<P>RTL Simulation Procedure<BR>
81
</P>
82
<UL>
83
  <LI>Compile C program using compile.bat
84
  <LI>conver_mips.exe will generate memory initialization file for both Altera
85
  and Xilinx,which will be sent to\rtl\xilinx&nbsp;and \rtl\altera.
86
  <LI>Load Veritak Project=&gt;Go
87
</UL>
88
<P><B>7.2 Gate Simulation</B><BR>
89
&nbsp;Using &quot;count&quot; above,Post-Layout Gate Simulation was performed.<BR>
90
&nbsp;</P>
91
<TABLE border=1>
92
<TBODY>
93
<TR>
94
<TD>Folder</TD>
95
<TD>Veritak Project File</TD>
96
<TD>Frequency</TD>
97
    </TR>
98
<TR>
99
<TD>\syn\altra_stratix2\simulation\custom</TD>
100
<TD>Gate_altera</TD>
101
<TD>165MHz</TD>
102
    </TR>
103
<TR>
104
<TD>\syn\altera\simulation\custom</TD>
105
<TD>Gate_altera</TD>
106
<TD>100MHz</TD>
107
    </TR>
108
<TR>
109
<TD>\syn\xilinx</TD>
110
<TD>Gate_xilinx</TD>
111
<TD>25MHz</TD>
112
    </TR>
113
  </TBODY>
114
</TABLE>
115
<P><BR>
116
<BR>
117
<B>7.3 FPGA</B></P>
118
<TABLE border=1>
119
<TBODY>
120
<TR>
121
<TD>Folder</TD>
122
<TD>C Program</TD>
123
<TD>Batch File</TD>
124
<TD>Description</TD>
125
    </TR>
126
<TR>
127
<TD>\syn\c_src\count</TD>
128
<TD>count_tak.c</TD>
129
<TD>compile.bat</TD>
130
<TD>By Steve Rhords</TD>
131
    </TR>
132
<TR>
133
<TD>\syn\c_src\pi</TD>
134
<TD>pi2.c</TD>
135
<TD>compile.bat</TD>
136
<TD>pi 800 digits calculation</TD>
137
    </TR>
138
<TR>
139
<TD>\syn\c_src\reed solomon</TD>
140
<TD>rs_tak.c</TD>
141
<TD>compile.bat</TD>
142
<TD>By Phil Karn</TD>
143
    </TR>
144
<TR>
145
<TD>\syn\yacc\bench\c_src\calculator</TD>
146
<TD>uart_echo_test.c</TD>
147
<TD>compile.bat</TD>
148
<TD>Interactive Calculater</TD>
149
    </TR>
150
  </TBODY>
151
</TABLE>
152
<P>&lt;Synthesis Procedure&gt;<BR>
153
</P>
154
<UL>
155
<LI>Run Batch File
156
<LI>Synthesize top of hardware Regenerate RAM using core-generator, then Synthesize
157
  top of hardware
158
</UL>
159
<P><BR>
160
<BR>
161
FPGA Confirmation<BR>
162
</P>
163
<TABLE border=1>
164
<TBODY>
165
<TR>
166
<TD>FPGA</TD>
167
<TD>FPGA BOARD</TD>
168
<TD>Device</TD>
169
<TD>Clock</TD>
170
<TD>CPU<BR>
171
      CLOCK</TD>
172
<TD>UART Baud Rate</TD>
173
<TD>Synthesized by</TD>
174
    </TR>
175
<TR>
176
<TD>Altera</TD>
177
<TD><EM>Future Electronics Cyclone/Nios II&nbsp;Development</EM>&nbsp;<EM>Board</EM></TD>
178
<TD>EP1C12Q240C6</TD>
179
<TD>50MHz</TD>
180
<TD>50MHz</TD>
181
<TD>115.2KBPS</TD>
182
<TD>Quartus4.2</TD>
183
    </TR>
184
<TR>
185
<TD>Xilinx</TD>
186
<TD>Xilin‚˜ Spartan3 Starter Kit</TD>
187
<TD>XC3S200-4FT256C </TD>
188
<TD>50MHz</TD>
189
<TD>25MHz</TD>
190
<TD>57.6KBPS</TD>
191
<TD>ISE7.1</TD>
192
    </TR>
193
  </TBODY>
194
</TABLE>
195
<P><IMG src="future.jpg" width="320" height="240" border="0"><IMG src="spartan3.jpg" width="320" height="240" border="0"></P>
196
<P><EM>Future Electronics Cyclone/Nios II&nbsp;Development</EM>&nbsp;<EM>Board</EM> &nbsp; &nbsp; &nbsp;
197
&nbsp; &nbsp; &nbsp; &nbsp; Spartan3 Starter Kit</P>
198
<P>(1) count<BR>
199
&nbsp; &nbsp; &nbsp; &nbsp; Same as RTL simulation except for endless loop.<BR>
200
(2) pi<BR>
201
&nbsp; &nbsp; &nbsp; &nbsp; 3.1415...follows by 800 digits.It was the same
202
result as PC.<BR>
203
<BR>
204
<IMG src="pi800_by_cyclone.png" width="860" height="566" border="0"><BR>
205
<BR>
206
(3)Interactive Calculator<BR>
207
&nbsp;Use PC terminal software.You can calcuate like C program.<BR>
208
<IMG src="calculator.png" width="860" height="540" border="0"><BR>
209
<BR>
210
<BR>
211
(4) Reed Solomon<BR>
212
Very Complex program (255,223) performs 120 cycles of 21bytes correction(including
213
erasures). No miss-correction is detected.</P>
214
<P><IMG src="rs_by_xilinx.png" width="836" height="566" border="0"></P>
215
</BODY>
216
</HTML>

powered by: WebSVN 2.1.0

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