1 |
50 |
olivier.gi |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
2 |
|
|
<html>
|
3 |
|
|
<head>
|
4 |
|
|
<title>openMSP430 File & Directory description</title>
|
5 |
|
|
</head>
|
6 |
|
|
<body>
|
7 |
|
|
<a name="TOC"></a>
|
8 |
|
|
<h3>Table of content</h3>
|
9 |
|
|
<ul>
|
10 |
|
|
<li><a href="#1. Introduction"> 1. Introduction</a></li>
|
11 |
|
|
<li><a href="#2. Directory structure: openMSP430 core"> 2. Directory structure: openMSP430 core</a></li>
|
12 |
|
|
<li><a href="#3. Directory structure: FGPA projects"> 3. Directory structure: FGPA projects</a>
|
13 |
|
|
<ul>
|
14 |
|
|
<li><a href="#3.1 Xilinx Spartan 3 example"> 3.1 Xilinx Spartan 3 example</a></li>
|
15 |
|
|
<li><a href="#3.2 Altera Cyclone II example"> 3.2 Altera Cyclone II example</a></li>
|
16 |
|
|
</ul>
|
17 |
|
|
</li>
|
18 |
|
|
<li><a href="#4. Directory structure: Software Development Tools">4. Directory structure: Software Development Tools</a></li>
|
19 |
|
|
</ul>
|
20 |
|
|
|
21 |
|
|
<a name="1. Introduction"></a>
|
22 |
|
|
<h1>1. Introduction</h1>
|
23 |
|
|
|
24 |
|
|
To simplify the integration of this IP, the directory structure is based on the <a href="http://www.opencores.org/downloads/opencores_coding_guidelines.pdf">OpenCores</a> recommendations.
|
25 |
|
|
<br />
|
26 |
|
|
<a name="2. Directory structure: openMSP430 core"></a>
|
27 |
|
|
<div style="text-align: right"><a href="#TOC">Top</a></div>
|
28 |
|
|
<h1>2. Directory structure: openMSP430 core</h1>
|
29 |
|
|
|
30 |
|
|
<table border="1">
|
31 |
|
|
<tr><td colspan="5"><b>core</b></td> <td><i><b>openMSP430 Core top level directory</b></i></td></tr>
|
32 |
|
|
<tr><td rowspan="72" valign="bottom"><font color="white">abcd</font></td> <td colspan="4"><b>bench</b></td> <td><i><b>Top level testbench directory</b></i></td></tr>
|
33 |
|
|
<tr><td rowspan="6" valign="bottom"><font color="white">abcd</font></td> <td colspan="3"><b>verilog</b></td> <td><i></i></td></tr>
|
34 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">tb_openMSP430.v</td> <td><i>Testbench top level module</i></td></tr>
|
35 |
|
|
<tr><td colspan="2">ram.v</td> <td><i>RAM verilog model</i></td></tr>
|
36 |
|
|
<tr><td colspan="2">registers.v</td> <td><i>Connections to Core internals for easy debugging</i></td></tr>
|
37 |
|
|
<tr><td colspan="2">dbg_uart_tasks.v</td> <td><i>UART tasks for the serial debug interface</i></td></tr>
|
38 |
|
|
<tr><td colspan="2">msp_debug.v</td> <td><i>Testbench instruction decoder and ASCII chain generator for easy debugging</i></td></tr>
|
39 |
|
|
<tr><td colspan="4"><b>doc</b></td> <td><i><b>Diverse documentation</b></i></td></tr>
|
40 |
|
|
<tr><td><font color="white">abcd</font></td> <td colspan="3">slau049f.pdf</td> <td><i>MSP430x1xx Family User's Guide</i></td></tr>
|
41 |
|
|
<tr><td colspan="4"><b>rtl</b></td> <td><i><b>RTL sources</b></i></td></tr>
|
42 |
|
|
<tr><td rowspan="21" valign="bottom"><font color="white">abcd</font></td><td colspan="3"><b>verilog</b></td> <td><i></i></td></tr>
|
43 |
|
|
<tr><td rowspan="20" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">openMSP430_defines.v</td> <td><i>openMSP430 core configuration file (Program and Data memory size definition, Debug Interface configuration)</i></td></tr>
|
44 |
|
|
<tr><td colspan="2">openMSP430_undefines.v</td> <td><i>openMSP430 Verilog `undef file</i></td></tr>
|
45 |
|
|
<tr><td colspan="2">openMSP430.v</td> <td><i>openMSP430 top level</i></td></tr>
|
46 |
|
|
<tr><td colspan="2">omsp_frontend.v</td> <td><i>Instruction fetch and decode</i></td></tr>
|
47 |
|
|
<tr><td colspan="2">omsp_execution_unit.v</td> <td><i>Execution unit</i></td></tr>
|
48 |
|
|
<tr><td colspan="2">omsp_alu.v</td> <td><i>ALU</i></td></tr>
|
49 |
|
|
<tr><td colspan="2">omsp_register_file.v</td> <td><i>Register file</i></td></tr>
|
50 |
|
|
<tr><td colspan="2">omsp_mem_backbone.v</td> <td><i>Memory backbone</i></td></tr>
|
51 |
|
|
<tr><td colspan="2">omsp_clock_module.v</td> <td><i>Basic Clock Module</i></td></tr>
|
52 |
|
|
<tr><td colspan="2">omsp_sfr.v</td> <td><i>Special function registers</i></td></tr>
|
53 |
|
|
<tr><td colspan="2">omsp_watchdog.v</td> <td><i>Watchdog Timer</i></td></tr>
|
54 |
|
|
<tr><td colspan="2">omsp_dbg.v</td> <td><i>Serial Debug Interface main block</i></td></tr>
|
55 |
|
|
<tr><td colspan="2">omsp_dbg_hwbrk.v</td> <td><i>Serial Debug Interface hardware breakpoint unit</i></td></tr>
|
56 |
|
|
<tr><td colspan="2">omsp_dbg_uart.v</td> <td><i>Serial Debug Interface UART communication block</i></td></tr>
|
57 |
|
|
<tr><td colspan="2">timescale.v</td> <td><i>Global time scale definition for simulation.</i></td></tr>
|
58 |
|
|
<tr><td colspan="2"><b>periph</b></td> <td><i><b>Peripherals directory</b></i></td></tr>
|
59 |
|
|
<tr><td rowspan="4"><font color="white">abcd</font></td> <td>omsp_gpio.v</td> <td><i>Digital I/O (Port 1 to 6)</i></td></tr>
|
60 |
|
|
<tr><td colspan="1">omsp_timerA.v</td> <td><i>Timer A</i></td></tr>
|
61 |
|
|
<tr><td colspan="1">template_periph_16b.v</td> <td><i>Verilog template for 16 bit peripherals</i></td></tr>
|
62 |
|
|
<tr><td colspan="1">template_periph_8b.v</td> <td><i>Verilog template for 8 bit peripherals</i></td></tr>
|
63 |
|
|
<tr><td colspan="4"><b>sim</b></td> <td><i><b>Top level simulations directory</b></i></td></tr>
|
64 |
|
|
<tr><td rowspan="34" valign="bottom"><font color="white">abcd</font></td> <td colspan="3"><b>rtl_sim</b></td> <td><i><b>RTL simulations</b></i></td></tr>
|
65 |
|
|
<tr><td rowspan="33" valign="bottom"><font color="white">abcd</font></td> <td colspan="2"><b>bin</b></td> <td><i><b>RTL simulation scripts</b></i></td></tr>
|
66 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td> <td colspan="1">msp430sim</td> <td><i>Main simulation script</i></td></tr>
|
67 |
|
|
<tr><td colspan="1">asm2ihex.sh</td> <td><i>Assembly file compilation (Intel HEX file generation)</i></td></tr>
|
68 |
|
|
<tr><td colspan="1">ihex2mem.tcl</td> <td><i>Verilog program memory file generation</i></td></tr>
|
69 |
|
|
<tr><td colspan="1">rtlsim.sh</td> <td><i>Verilog Icarus simulation script</i></td></tr>
|
70 |
|
|
<tr><td colspan="1">template.def</td> <td><i>ASM linker definition file template</i></td></tr>
|
71 |
|
|
<tr><td colspan="2"><b>run</b></td> <td><i><b>For running RTL simulations</b></i></td></tr>
|
72 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td> <td colspan="1">run</td> <td><i>Run single simulation of a given vector</i></td></tr>
|
73 |
|
|
<tr><td colspan="1">run_all</td> <td><i>Run regression of all vectors</i></td></tr>
|
74 |
|
|
<tr><td colspan="1">run_disassemble</td> <td><i>Disassemble the program memory content of the latest simulation</i></td></tr>
|
75 |
|
|
<tr><td colspan="1">load_waveform.sav</td> <td><i>SAV file for gtkWave</i></td></tr>
|
76 |
|
|
<tr><td colspan="2"><b>src</b></td> <td><i><b>RTL simulation vectors sources</b></i></td></tr>
|
77 |
|
|
<tr><td rowspan="21" valign="bottom"><font color="white">abcd</font></td> <td colspan="1">submit.f</td> <td><i>Verilog simulator command file</i></td></tr>
|
78 |
|
|
<tr><td colspan="1">sing-op_*.s43</td> <td><i>Single-operand assembler vector files</i></td></tr>
|
79 |
|
|
<tr><td colspan="1">sing-op_*.v</td> <td><i>Single-operand verilog stimulus vector files</i></td></tr>
|
80 |
|
|
<tr><td colspan="1">two-op_*.s43</td> <td><i>Two-operand assembler vector files</i></td></tr>
|
81 |
|
|
<tr><td colspan="1">two-op_*.v</td> <td><i>Two-operand verilog stimulus vector files</i></td></tr>
|
82 |
|
|
<tr><td colspan="1">c-jump_*.s43</td> <td><i>Jump assembler vector files</i></td></tr>
|
83 |
|
|
<tr><td colspan="1">c-jump_*.v</td> <td><i>Jump verilog stimulus vector files</i></td></tr>
|
84 |
|
|
<tr><td colspan="1">op_modes.s43</td> <td><i>CPU operating modes assembler vector files (CPUOFF, OSCOFF, SCG1)</i></td></tr>
|
85 |
|
|
<tr><td colspan="1">op_modes.v</td> <td><i>CPU operating modes verilog stimulus vector files (CPUOFF, OSCOFF, SCG1)</i></td></tr>
|
86 |
|
|
<tr><td colspan="1">clock_module.s43</td> <td><i>Basic Clock Module assembler vector files</i></td></tr>
|
87 |
|
|
<tr><td colspan="1">clock_module.v</td> <td><i>Basic Clock Module verilog stimulus vector files</i></td></tr>
|
88 |
|
|
<tr><td colspan="1">dbg_*.s43</td> <td><i>Serial Debug Interface assembler vector files</i></td></tr>
|
89 |
|
|
<tr><td colspan="1">dbg_*.v</td> <td><i>Serial Debug Interface verilog stimulus vector files</i></td></tr>
|
90 |
|
|
<tr><td colspan="1">gpio_*.s43</td> <td><i>Digital I/O assembler vector files</i></td></tr>
|
91 |
|
|
<tr><td colspan="1">gpio_*.v</td> <td><i>Digital I/O verilog stimulus vector files</i></td></tr>
|
92 |
|
|
<tr><td colspan="1">template_periph_*.s43</td> <td><i>Peripheral templates assembler vector files</i></td></tr>
|
93 |
|
|
<tr><td colspan="1">template_periph_*.v</td> <td><i>Peripheral templates verilog stimulus vector files</i></td></tr>
|
94 |
|
|
<tr><td colspan="1">wdt_*.s43</td> <td><i>Watchdog timer assembler vector files</i></td></tr>
|
95 |
|
|
<tr><td colspan="1">wdt_*.v</td> <td><i>Watchdog timer verilog stimulus vector files</i></td></tr>
|
96 |
|
|
<tr><td colspan="1">tA_*.s43</td> <td><i>Timer A assembler vector files</i></td></tr>
|
97 |
|
|
<tr><td colspan="1">tA_*.v</td> <td><i>Timer A verilog stimulus vector files</i></td></tr>
|
98 |
|
|
<tr><td colspan="4"><b>synthesis</b></td> <td><i><b>Top level synthesis directory</b></i></td></tr>
|
99 |
|
|
<tr><td rowspan="12" valign="bottom"><font color="white">abcd</font></td><td colspan="3"><b>synopsys</b></td> <td><i>Synopsys (Design Compiler) directory</i></td></tr>
|
100 |
|
|
<tr><td rowspan="11" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">run_syn</td> <td><i>Run synthesis</i></td></tr>
|
101 |
|
|
<tr><td colspan="2">synthesis.tcl</td> <td><i>Main synthesis TCL script</i></td></tr>
|
102 |
|
|
<tr><td colspan="2">library.tcl</td> <td><i>Load library, set operating conditions and wire load models</i></td></tr>
|
103 |
|
|
<tr><td colspan="2">read.tcl</td> <td><i>Read RTL</i></td></tr>
|
104 |
|
|
<tr><td colspan="2">constraints.tcl</td> <td><i>Set design constrains</i></td></tr>
|
105 |
|
|
<tr><td colspan="2"><b>results</b></td> <td><i>Results directory</i></td></tr>
|
106 |
|
|
</table>
|
107 |
|
|
<br />
|
108 |
|
|
<a name="3. Directory structure: FGPA projects"></a>
|
109 |
|
|
<div style="text-align: right"><a href="#TOC">Top</a></div>
|
110 |
|
|
<h1>3. Directory structure: FGPA projects</h1>
|
111 |
|
|
|
112 |
|
|
<a name="3.1 Xilinx Spartan 3 example"></a>
|
113 |
|
|
<h2>3.1 Xilinx Spartan 3 example</h2>
|
114 |
|
|
|
115 |
|
|
<table border="1">
|
116 |
|
|
<tr><td colspan="7"><b>fpga</b></td> <td><i><b>openMSP430 FPGA Projects top level directory</b></i></td></tr>
|
117 |
|
|
<tr><td rowspan="52" valign="bottom"><font color="white">abcd</font></td> <td colspan="6"><b>xilinx_diligent_s3_board</b></td> <td><i><b>Xilinx FPGA Project based on the Diligent Spartan-3 board</b></i></td></tr>
|
118 |
|
|
<tr><td rowspan="51" valign="bottom"><font color="white">abcd</font></td> <td colspan="5"><b>bench</b></td> <td><i><b>Top level testbench directory</b></i></td></tr>
|
119 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td> <td colspan="4"><b>verilog</b></td> <td><i></i></td></tr>
|
120 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">tb_openMSP430_fpga.v</td> <td><i>FPGA testbench top level module</i></td></tr>
|
121 |
|
|
<tr><td colspan="3">registers.v</td> <td><i>Connections to Core internals for easy debugging</i></td></tr>
|
122 |
|
|
<tr><td colspan="3">msp_debug.v</td> <td><i>Testbench instruction decoder and ASCII chain generator for easy debugging</i></td></tr>
|
123 |
|
|
<tr><td colspan="3">glbl.v</td> <td><i>Xilinx "glbl.v" file</i></td></tr>
|
124 |
|
|
<tr><td colspan="5"><b>doc</b></td> <td><i><b>Diverse documentation</b></i></td></tr>
|
125 |
|
|
<tr><td rowspan="3"><font color="white">abcd</font></td> <td colspan="4">board_user_guide.pdf</td> <td><i>Spartan-3 FPGA Starter Kit Board User Guide</i></td></tr>
|
126 |
|
|
<tr><td colspan="4">msp430f1121a.pdf</td> <td><i>msp430f1121a Specification</i></td></tr>
|
127 |
|
|
<tr><td colspan="4">xapp462.pdf</td> <td><i>Xilinx Digital Clock Managers (DCMs) user guide</i></td></tr>
|
128 |
|
|
<tr><td colspan="5"><b>rtl</b></td> <td><i><b>RTL sources</b></i></td></tr>
|
129 |
|
|
<tr><td rowspan="10" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>verilog</b></td> <td><i></i></td></tr>
|
130 |
|
|
<tr><td rowspan="9" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">openMSP430_fpga.v</td> <td><i>FPGA top level file</i></td></tr>
|
131 |
|
|
<tr><td colspan="3">driver_7segment.v</td> <td><i>Four-Digit, Seven-Segment LED Display driver</i></td></tr>
|
132 |
|
|
<tr><td colspan="3">io_mux.v</td> <td><i>I/O mux for port function selection.</i></td></tr>
|
133 |
|
|
<tr><td colspan="3"><b>openmsp430</b></td> <td><i><b>Local copy of the openMSP430 core.</b> The *define.v file has been adjusted to the requirements of the project.</i></td></tr>
|
134 |
|
|
<tr><td colspan="3"><b>coregen</b></td> <td><i>Xilinx's coregen directory</i></td></tr>
|
135 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">ram_8x512_hi.*</td> <td><i>512 Byte RAM (upper byte)</i></td></tr>
|
136 |
|
|
<tr><td colspan="2">ram_8x512_lo.*</td> <td><i>512 Byte RAM (lower byte)</i></td></tr>
|
137 |
|
|
<tr><td colspan="2">ram_8x2k_hi.*</td> <td><i>2 kByte RAM (upper byte)</i></td></tr>
|
138 |
|
|
<tr><td colspan="2">ram_8x2k_lo.*</td> <td><i>2 kByte RAM (lower byte)</i></td></tr>
|
139 |
|
|
<tr><td colspan="5"><b>sim</b></td> <td><i><b>Top level simulations directory</b></i></td></tr>
|
140 |
|
|
<tr><td rowspan="11" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>rtl_sim</b></td> <td><i><b>RTL simulations</b></i></td></tr>
|
141 |
|
|
<tr><td rowspan="10" valign="bottom"><font color="white">abcd</font></td> <td colspan="3"><b>bin</b></td> <td><i><b>RTL simulation scripts</b></i></td></tr>
|
142 |
|
|
<tr><td rowspan="3" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">msp430sim</td> <td><i>Main simulation script</i></td></tr>
|
143 |
|
|
<tr><td colspan="2">ihex2mem.tcl</td> <td><i>Verilog program memory file generation</i></td></tr>
|
144 |
|
|
<tr><td colspan="2">rtlsim.sh</td> <td><i>Verilog Icarus simulation script</i></td></tr>
|
145 |
|
|
<tr><td colspan="3"><b>run</b></td> <td><i><b>For running RTL simulations</b></i></td></tr>
|
146 |
|
|
<tr><td rowspan="2" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">run</td> <td><i>Run simulation of a given software project</i></td></tr>
|
147 |
|
|
<tr><td colspan="2">run_disassemble</td> <td><i>Disassemble the program memory content of the latest simulation</i></td></tr>
|
148 |
|
|
<tr><td colspan="3"><b>src</b></td> <td><i><b>RTL simulation verilog stimulus</b></i></td></tr>
|
149 |
|
|
<tr><td rowspan="2" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">submit.f</td> <td><i>Verilog simulator command file</i></td></tr>
|
150 |
|
|
<tr><td colspan="2">*.v</td> <td><i>Stimulus vector for the corresponding software project</i></td></tr>
|
151 |
|
|
<tr><td colspan="5"><b>software</b></td> <td><i><b>Software C programs to be loaded in the program memory</b></i></td></tr>
|
152 |
|
|
<tr><td rowspan="7" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>leds</b></td> <td><i>LEDs blinking application (from the CDK4MSP project)</i></td></tr>
|
153 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">makefile</td> <td><i></i></td></tr>
|
154 |
|
|
<tr><td colspan="3">hardware.h</td> <td><i></i></td></tr>
|
155 |
|
|
<tr><td colspan="3">main.c</td> <td><i></i></td></tr>
|
156 |
|
|
<tr><td colspan="3">7seg.h</td> <td><i></i></td></tr>
|
157 |
|
|
<tr><td colspan="3">7seg.c</td> <td><i></i></td></tr>
|
158 |
|
|
<tr><td colspan="4"><b>ta_uart</b></td> <td><i>Software UART with Timer_A (from the CDK4MSP project)</i></td></tr>
|
159 |
|
|
<tr><td colspan="5"><b>synthesis</b></td> <td><i><b>Top level synthesis directory</b></i></td></tr>
|
160 |
|
|
<tr><td rowspan="9" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>xilinx</b></td> <td><i></i></td></tr>
|
161 |
|
|
<tr><td rowspan="8" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">create_bitstream.sh</td> <td><i>Run Xilinx ISE synthesis in a Linux environment</i></td></tr>
|
162 |
|
|
<tr><td colspan="3">create_bitstream.bat</td> <td><i>Run Xilinx ISE synthesis in a Windows environment</i></td></tr>
|
163 |
|
|
<tr><td colspan="3">openMSP430_fpga.ucf</td> <td><i>UCF file</i></td></tr>
|
164 |
|
|
<tr><td colspan="3">openMSP430_fpga.prj</td> <td><i>RTL file list to be synthesized</i></td></tr>
|
165 |
|
|
<tr><td colspan="3">xst_verilog.opt</td> <td><i>Verilog Option File for XST. Among other things, the search path to the include files is specified here.</i></td></tr>
|
166 |
|
|
<tr><td colspan="3">load_rom.sh</td> <td><i>Update bitstream's program memory with a given software ELF file in a Linux environment</i></td></tr>
|
167 |
|
|
<tr><td colspan="3">load_rom.bat</td> <td><i>Update bitstream's program memory with a given software ELF file in a Windows environment</i></td></tr>
|
168 |
|
|
<tr><td colspan="3">memory.bmm</td> <td><i>FPGA memory description for bitstream's program memory update</i></td></tr>
|
169 |
|
|
</table>
|
170 |
|
|
<br />
|
171 |
|
|
|
172 |
|
|
<a name="3.2 Altera Cyclone II example"></a>
|
173 |
|
|
<div style="text-align: right"><a href="#TOC">Top</a></div>
|
174 |
|
|
<h2>3.2 Altera Cyclone II example</h2>
|
175 |
|
|
|
176 |
|
|
|
177 |
|
|
<table border="1">
|
178 |
|
|
<tr><td colspan="7"><b>fpga</b></td> <td><i><b>openMSP430 FPGA Projects top level directory</b></i></td></tr>
|
179 |
|
|
<tr><td rowspan="49" valign="bottom"><font color="white">abcd</font></td> <td colspan="6"><b>altera_de1_board</b></td> <td><i><b>Altera FPGA Project based on Cyclone II Starter Development Board</b></i></td></tr>
|
180 |
|
|
<tr><td rowspan="48" valign="bottom"><font color="white">abcd</font></td> <td colspan="5">README</td> <td><i>README file</i></td></tr>
|
181 |
|
|
<tr><td colspan="5"><b>bench</b></td> <td><i><b>Top level testbench directory</b></i></td></tr>
|
182 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td> <td colspan="4"><b>verilog</b></td> <td><i></i></td></tr>
|
183 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">tb_openMSP430_fpga.v</td> <td><i>FPGA testbench top level module</i></td></tr>
|
184 |
|
|
<tr><td colspan="3">registers.v</td> <td><i>Connections to Core internals for easy debugging</i></td></tr>
|
185 |
|
|
<tr><td colspan="3">msp_debug.v</td> <td><i>Testbench instruction decoder and ASCII chain generator for easy debugging</i></td></tr>
|
186 |
|
|
<tr><td colspan="3">altsyncram.v</td> <td><i>Altera verilog model of the altsyncram module.</i></td></tr>
|
187 |
|
|
<tr><td colspan="5"><b>doc</b></td> <td><i><b>Diverse documentation</b></i></td></tr>
|
188 |
|
|
<tr><td rowspan="3"><font color="white">abcd</font></td> <td colspan="4">DE1_Board_Schematic.pdf</td> <td><i>Cyclone II FPGA Starter Development Board Schematics</i></td></tr>
|
189 |
|
|
<tr><td colspan="4">DE1_Reference_Manual.pdf</td> <td><i>Cyclone II FPGA Starter Development Board Reference Manual</i></td></tr>
|
190 |
|
|
<tr><td colspan="4">DE1_User_Guide.pdf</td> <td><i>Cyclone II FPGA Starter Development Board User Guide</i></td></tr>
|
191 |
|
|
<tr><td colspan="5"><b>rtl</b></td> <td><i><b>RTL sources</b></i></td></tr>
|
192 |
|
|
<tr><td rowspan="8" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>verilog</b></td> <td><i></i></td></tr>
|
193 |
|
|
<tr><td rowspan="7" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">OpenMSP430_fpga.v</td> <td><i>FPGA top level file</i></td></tr>
|
194 |
|
|
<tr><td colspan="3">driver_7segment.v</td> <td><i>Four-Digit, Seven-Segment LED Display driver</i></td></tr>
|
195 |
|
|
<tr><td colspan="3">io_mux.v</td> <td><i>I/O mux for port function selection.</i></td></tr>
|
196 |
|
|
<tr><td colspan="3">ext_de1_sram.v</td> <td><i>Interface with altera DE1's external async SRAM (256kwords x 16bits)</i></td></tr>
|
197 |
|
|
<tr><td colspan="3">ram16x512.v</td> <td><i>Single port RAM generated with the megafunction wizard</i></td></tr>
|
198 |
|
|
<tr><td colspan="3">rom16x2048.v</td> <td><i>Single port ROM generated with the megafunction wizard</i></td></tr>
|
199 |
|
|
<tr><td colspan="3"><b>openmsp430</b></td> <td><i><b>Local copy of the openMSP430 core.</b> The *define.v file has been adjusted to the requirements of the project.</i></td></tr>
|
200 |
|
|
<tr><td colspan="5"><b>sim</b></td> <td><i><b>Top level simulations directory</b></i></td></tr>
|
201 |
|
|
<tr><td rowspan="11" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>rtl_sim</b></td> <td><i><b>RTL simulations</b></i></td></tr>
|
202 |
|
|
<tr><td rowspan="10" valign="bottom"><font color="white">abcd</font></td> <td colspan="3"><b>bin</b></td> <td><i><b>RTL simulation scripts</b></i></td></tr>
|
203 |
|
|
<tr><td rowspan="3" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">msp430sim</td> <td><i>Main simulation script</i></td></tr>
|
204 |
|
|
<tr><td colspan="2">ihex2mem.tcl</td> <td><i>Verilog program memory file generation</i></td></tr>
|
205 |
|
|
<tr><td colspan="2">rtlsim.sh</td> <td><i>Verilog Icarus simulation script</i></td></tr>
|
206 |
|
|
<tr><td colspan="3"><b>run</b></td> <td><i><b>For running RTL simulations</b></i></td></tr>
|
207 |
|
|
<tr><td rowspan="2" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">run</td> <td><i>Run simulation of a given software project</i></td></tr>
|
208 |
|
|
<tr><td colspan="2">run_disassemble</td> <td><i>Disassemble the program memory content of the latest simulation</i></td></tr>
|
209 |
|
|
<tr><td colspan="3"><b>src</b></td> <td><i><b>RTL simulation verilog stimulus</b></i></td></tr>
|
210 |
|
|
<tr><td rowspan="2" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">submit.f</td> <td><i>Verilog simulator command file</i></td></tr>
|
211 |
|
|
<tr><td colspan="2">*.v</td> <td><i>Stimulus vector for the corresponding software project</i></td></tr>
|
212 |
|
|
<tr><td colspan="5"><b>software</b></td> <td><i><b>Software C programs to be loaded in the program memory</b></i></td></tr>
|
213 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>bin</b></td> <td><i>Specific binaries required for software development.</i></td></tr>
|
214 |
|
|
<tr><td rowspan="3" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">mifwrite.cpp</td> <td><i>This prog is taken from http://www.johnloomis.org/ece595c/notes/isa/mifwrite.html and slightly changed to satisfy quartus6.1 *.mif eating engine.</i></td></tr>
|
215 |
|
|
<tr><td colspan="3">mifwrite.exe</td> <td><i>Windows executable.</i></td></tr>
|
216 |
|
|
<tr><td colspan="3">mifwrite</td> <td><i>Linux executable.</i></td></tr>
|
217 |
|
|
<tr><td colspan="4"><b>memledtest</b></td> <td><i>LEDs blinking application (from the CDK4MSP project)</i></td></tr>
|
218 |
|
|
<tr><td colspan="5"><b>synthesis</b></td> <td><i><b>Top level synthesis directory</b></i></td></tr>
|
219 |
|
|
<tr><td rowspan="5" valign="bottom"><font color="white">abcd</font></td><td colspan="4"><b>altera</b></td> <td><i></i></td></tr>
|
220 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">main.qsf</td> <td><i>Global Assignments file</i></td></tr>
|
221 |
|
|
<tr><td colspan="3">main.sof</td> <td><i>SOF file</i></td></tr>
|
222 |
|
|
<tr><td colspan="3">OpenMSP430_fpga.qpf</td> <td><i>Quartus II project file</i></td></tr>
|
223 |
|
|
<tr><td colspan="3">openMSP430_fpga_top.v</td> <td><i>RTL file list to be synthesized</i></td></tr>
|
224 |
|
|
</table>
|
225 |
|
|
<br />
|
226 |
|
|
<a name="4. Directory structure: Software Development Tools"></a>
|
227 |
|
|
<div style="text-align: right"><a href="#TOC">Top</a></div>
|
228 |
|
|
<h1>4. Directory structure: Software Development Tools</h1>
|
229 |
|
|
|
230 |
|
|
<table border="1">
|
231 |
|
|
<tr><td colspan="5"><b>tools</b></td> <td><i><b>openMSP430 Software Development Tools top level directory</b></i></td></tr>
|
232 |
|
|
<tr><td rowspan="72" valign="bottom"><font color="white">abcd</font></td> <td colspan="4"><b>bin</b></td> <td><i><b>Contains the executable files</b></i></td></tr>
|
233 |
|
|
<tr><td rowspan="6" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">openmsp430-loader.tcl</td> <td><i>Simple command line boot loader: TCL Script</i></td></tr>
|
234 |
|
|
<tr><td colspan="3">openmsp430-loader.exe</td> <td><i>Simple command line boot loader: Windows executable</i></td></tr>
|
235 |
|
|
<tr><td colspan="3">openmsp430-minidebug.tcl</td> <td><i>Minimalistic debugger with simple GUI: TCL Script</i></td></tr>
|
236 |
|
|
<tr><td colspan="3">openmsp430-minidebug.exe</td> <td><i>Minimalistic debugger with simple GUI: Windows executable</i></td></tr>
|
237 |
|
|
<tr><td colspan="3">openmsp430-gdbproxy.tcl</td> <td><i>GDB Proxy server to be used together with MSP430-GDB and the Eclipse, DDD, or Insight graphical front-ends: TCL Script</i></td></tr>
|
238 |
|
|
<tr><td colspan="3">openmsp430-gdbproxy.exe</td> <td><i>GDB Proxy server to be used together with MSP430-GDB and the Eclipse, DDD, or Insight graphical front-ends: Windows executable</i></td></tr>
|
239 |
|
|
<tr><td colspan="4"><b>lib</b></td> <td><i><b>Common library</b></i></td></tr>
|
240 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td><td colspan="3"><b>tcl-lib</b></td> <td><i><b>Common TCL library</b></i></td></tr>
|
241 |
|
|
<tr><td rowspan="3" valign="bottom"><font color="white">abcd</font></td> <td colspan="2">dbg_uart.tcl</td> <td><i>Low level UART communication functions</i></td></tr>
|
242 |
|
|
<tr><td colspan="2">dbg_functions.tcl</td> <td><i>Main utility functions for the openMSP430 serial debug interface</i></td></tr>
|
243 |
|
|
<tr><td colspan="2">combobox.tcl</td> <td><i>A combobox listbox widget written in pure tcl (from Bryan Oakley)</i></td></tr>
|
244 |
|
|
<tr><td colspan="4"><b>openmsp430-gdbproxy</b></td> <td><i><b>GDB Proxy server main project directory</b></i></td></tr>
|
245 |
|
|
<tr><td rowspan="6" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">openmsp430-gdbproxy.tcl</td> <td><i>GDB Proxy server main TCL Script (symbolic link with the script in the <b>bin</b> directory)</i></td></tr>
|
246 |
|
|
<tr><td colspan="3">server.tcl</td> <td><i>TCP/IP Server utility functions. Send/Receive RSP packets from GDB.</i></td></tr>
|
247 |
|
|
<tr><td colspan="3">commands.tcl</td> <td><i>RSP command execution functions.</i></td></tr>
|
248 |
|
|
<tr><td colspan="3"><b>doc</b></td> <td><i><b>Some documentation regarding GDB and the RSP protocol.</b></i></td></tr>
|
249 |
|
|
<tr><td rowspan="2"><font color="white">abcd</font></td> <td colspan="2">ew_GDB_RSP.pdf</td> <td><i>Document from Bill Gatliff: Embedding with GNU: the gdb Remote Serial Protocol</i></td></tr>
|
250 |
|
|
<tr><td colspan="2">Howto-GDB_Remote_Serial_Protocol.pdf</td> <td><i>Document from Jeremy Bennett (Embecosm): Howto: GDB Remote Serial Protocol - Writing a RSP Server</i></td></tr>
|
251 |
|
|
<tr><td colspan="4"><b>freewrap642</b></td> <td><i><b>The freeWrap program turns TCL/TK scripts into single-file binary executable programs for Windows.</b></i></td></tr>
|
252 |
|
|
<tr><td rowspan="4" valign="bottom"><font color="white">abcd</font></td> <td colspan="3">freewrap.exe</td> <td><i>freeWrap executable to run on TCL/TK scripts (i.e. with GUI)</i></td></tr>
|
253 |
|
|
<tr><td colspan="3">freewrapTCLSH.exe</td> <td><i>freeWrap executable to run on pure TCL scripts (i.e. command line)</i></td></tr>
|
254 |
|
|
<tr><td colspan="3">tclpip85s.dll</td> <td><i>freeWrap mandatory DLL</i></td></tr>
|
255 |
|
|
<tr><td colspan="3">generate_exec.bat</td> <td><i>Simple Batch file for auto generation of the tools' windows executables</i></td></tr>
|
256 |
|
|
</table>
|
257 |
|
|
<br />
|
258 |
|
|
<div style="text-align: right"><a href="#TOC">Top</a></div>
|
259 |
|
|
|
260 |
|
|
</body>
|
261 |
|
|
</html>
|