1 |
41 |
diegovalve |
|
2 |
|
|
This is a quick 'cheat sheet' on how to create a project and run a simulation.
|
3 |
|
|
For a more complete explanation, please refer to the documentation.
|
4 |
|
|
|
5 |
|
|
This code was tested with Xilinx ISE Design Suite 11.
|
6 |
|
|
|
7 |
|
|
**** I Creating a Project.*****
|
8 |
|
|
Steps to create a Xilinx Project:
|
9 |
|
|
|
10 |
|
|
1 - Un-compress all the verilog sources under the same folder
|
11 |
|
|
(easier for later steps).
|
12 |
|
|
|
13 |
|
|
2 - Start ISE Project Navigator.
|
14 |
|
|
|
15 |
|
|
3 - Go to File->New Project.
|
16 |
|
|
Under the 'Create new project' screen:
|
17 |
|
|
Enter the name, and location you want (the location
|
18 |
|
|
doesn't necesarely has to match the folder where you
|
19 |
|
|
un-compressed Theia's sources).
|
20 |
|
|
Under 'Top-level source type' select 'HDL'.
|
21 |
|
|
Click the 'Next' Button.
|
22 |
|
|
|
23 |
|
|
4 - Under the 'Device Properties' screen:
|
24 |
|
|
Select the Product category and family (choose a big device, since the
|
25 |
|
|
design has not yet being optimized for size)
|
26 |
|
|
Select 'Verilog' as the preferred language.
|
27 |
|
|
Select 'ISim (VHDL/Verilog)' as the simulator.
|
28 |
|
|
|
29 |
|
|
5 - Under the 'Create New Source' screen:
|
30 |
|
|
Do nothing, just click 'Next'.
|
31 |
|
|
|
32 |
|
|
|
33 |
|
|
6 - Under the 'Add Existing Sources' screen:
|
34 |
|
|
Click the 'Add source' button.
|
35 |
|
|
|
36 |
|
|
Select all the verilog sources (.v files), you can
|
37 |
|
|
select all at once using CNTR+A.
|
38 |
|
|
Click 'Open', then click 'Next'.
|
39 |
|
|
|
40 |
|
|
7 - Click Finish.
|
41 |
|
|
|
42 |
|
|
8 - Under the 'Source for:' drop down list, select 'Behavioral Simulation'.
|
43 |
|
|
|
44 |
|
|
9 - Under the 'Hierarchy' tree control, select the File named 'TestBench_Theia(TestBench_THEIA.v)
|
45 |
|
|
Then, under the 'Process: TestBench_Theia', right click on the 'Simulate Behavioral Model' icon and
|
46 |
|
|
select the 'Process Properties...' option.
|
47 |
|
|
|
48 |
|
|
Under the 'Process properties' screen:
|
49 |
|
|
Select the 'Specify 'define Macro Name and Value' Option and put the following:
|
50 |
84 |
diegovalve |
type: 'DEBUG=1|DUMP_CODE=1|DEBUG_CORE=0' if you want to create code dump dis-assembly files and other log files
|
51 |
41 |
diegovalve |
(option is recommended for debug)
|
52 |
84 |
diegovalve |
type: 'DEBUG=1|DEBUG_CORE=0' if you want verbose output including dis-assembly of code to the standard output.
|
53 |
41 |
diegovalve |
type: '' leave it blank if you want no output.
|
54 |
|
|
|
55 |
|
|
**** II Preparing the inputs ****
|
56 |
|
|
1 - Download one of the example scenes to the same folder where the Simulation executable is.
|
57 |
|
|
|
58 |
|
|
**** III Running behavioral simulation *****
|
59 |
|
|
|
60 |
|
|
|
61 |
|
|
1 - Make sure you have the *.mem files under the same folder where the simulation executable is.
|
62 |
|
|
|
63 |
|
|
2 - From the ISE Project Navigator, double click on the 'Simulate Behavioral Model' to start the simulation.
|
64 |
|
|
Note: The simulation can take from minutes to hours depending on the scene that you want to render and the
|
65 |
|
|
complexity of your shaders.
|
66 |
|
|
|
67 |
|
|
**** IV Looking at the results *****
|
68 |
|
|
|
69 |
|
|
The main output is a file called 'Output.ppm'.
|
70 |
|
|
This is an image file written using the 'Netpbm format'.
|
71 |
|
|
PPM file is image format at plain text (http://en.wikipedia.org/wiki/Netpbm_format).
|
72 |
|
|
Under Linux You can view this picture with many tools such as 'gimp' or 'ee', for windows
|
73 |
|
|
you can use a free program called 'XnView' or also 'gimp' for windows will work.
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
The simulation executable generates several other files depending on the macros you specified at step I.9.
|
77 |
|
|
Please see the documentation for more information on this files.
|
78 |
|
|
|