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 Overview</title>
|
5 |
|
|
</head>
|
6 |
|
|
<body>
|
7 |
|
|
|
8 |
|
|
<h1>Introduction</h1>
|
9 |
|
|
|
10 |
|
|
The openMSP430 is a synthesizable 16bit microcontroller core written in Verilog. It is compatible with Texas Instruments' MSP430 microcontroller family and can execute the code generated by an MSP430 toolchain in a cycle accurate way.
|
11 |
|
|
<br /><br />
|
12 |
69 |
olivier.gi |
The core comes with some peripherals (16x16 Hardware Multiplier, GPIO, TimerA, generic templates) and a Serial Debug Interface for in-system software development.
|
13 |
50 |
olivier.gi |
|
14 |
|
|
<h1>Download</h1>
|
15 |
|
|
<h3>Design</h3>
|
16 |
|
|
The complete tar archive of the project can be downloaded <a href="http://www.opencores.org/download,openmsp430">here</a> (OpenCores account required).<br />
|
17 |
|
|
<br />
|
18 |
|
|
The following SVN command can be run from a console (or <a href="http://www.syntevo.com/smartsvn/index.html">GUI</a>):
|
19 |
|
|
<br /><br />
|
20 |
|
|
<table border="0" cellspacing="4" cellpadding="0">
|
21 |
|
|
<tr>
|
22 |
|
|
<td width="35"></td>
|
23 |
|
|
<td bgcolor="#d0d0d0" width="3"></td>
|
24 |
|
|
<td width="15"></td>
|
25 |
|
|
<td>
|
26 |
|
|
<code>svn export http://opencores.org/ocsvn/openmsp430/openmsp430/trunk/ openmsp430</code>
|
27 |
|
|
</td>
|
28 |
|
|
</tr>
|
29 |
|
|
</table>
|
30 |
|
|
<br /><br />
|
31 |
74 |
olivier.gi |
To keep yourself informed about project updates, you can subscribe to the following <a href="http://opencores.org/websvn,rss?repname=openmsp430&path=/openmsp430/&isdir=1">RSS</a> feed.
|
32 |
50 |
olivier.gi |
<br /><br />
|
33 |
|
|
<h3>Documentation</h3>
|
34 |
74 |
olivier.gi |
The online documentation is available as <a href="usercontent,doc,1283025143" title="openMSP430 PDF Doc. R1.7">pdf</a>.
|
35 |
50 |
olivier.gi |
<h1>Features & Limitations</h1>
|
36 |
|
|
<h2>Features</h2>
|
37 |
|
|
<ul>
|
38 |
|
|
<li><b>Core:</b>
|
39 |
|
|
<ul>
|
40 |
|
|
<li>Full instruction set support.</li>
|
41 |
|
|
<li>All addressing modes are supported.</li>
|
42 |
|
|
<li>IRQ and NMI support.</li>
|
43 |
|
|
<li>Power saving modes functionality is supported.</li>
|
44 |
|
|
<li>Configurable memory size for both program and data.</li>
|
45 |
|
|
<li>Serial Debug Interface (Nexus class 3).</li>
|
46 |
|
|
<li>FPGA friendly (single clock domain, no clock gate).</li>
|
47 |
69 |
olivier.gi |
<li>Small size (Xilinx: 1650 LUTs / Altera: 1550 LEs / ASIC: 8k gates).</li>
|
48 |
50 |
olivier.gi |
</ul>
|
49 |
|
|
</li>
|
50 |
|
|
<br />
|
51 |
|
|
<li><b>Peripherals:</b>
|
52 |
|
|
<ul>
|
53 |
69 |
olivier.gi |
<li>16x16 Hardware Multiplier.</li>
|
54 |
50 |
olivier.gi |
<li>Basic Clock Module.</li>
|
55 |
|
|
<li>Watchdog.</li>
|
56 |
|
|
<li>Timer A.</li>
|
57 |
|
|
<li>GPIO (port 1 to 6).</li>
|
58 |
69 |
olivier.gi |
<li>Templates for 8 and 16 bit peripherals (under BSD license).</li>
|
59 |
50 |
olivier.gi |
</ul>
|
60 |
|
|
</li>
|
61 |
|
|
</ul>
|
62 |
|
|
<h2>Limitations</h2>
|
63 |
|
|
<ul>
|
64 |
|
|
<li><b>Core:</b>
|
65 |
|
|
<ul>
|
66 |
|
|
<li>Instructions can't be executed from the data memory.</li>
|
67 |
|
|
</ul>
|
68 |
|
|
</li>
|
69 |
|
|
<br />
|
70 |
|
|
<li><b>Peripherals:</b>
|
71 |
|
|
<ul>
|
72 |
|
|
<li>Basic clock module doesn't offer the full functionality of a real MSP430.</li>
|
73 |
|
|
</ul>
|
74 |
|
|
</li>
|
75 |
|
|
</ul>
|
76 |
|
|
|
77 |
|
|
<h1>Links</h1>
|
78 |
|
|
Development has been performed using the following freely available (excellent) tools:
|
79 |
|
|
<ul>
|
80 |
|
|
<li><a href="http://www.icarus.com/eda/verilog/">Icarus Verilog</a> : Verilog simulator.</li>
|
81 |
|
|
<li><a href="http://gtkwave.sourceforge.net/">GTKWave Analyzer</a> : Waveform viewer.</li>
|
82 |
|
|
<li><a href="http://mspgcc.sourceforge.net/">MSPGCC</a> : GCC toolchain for the Texas Instruments MSP430 MCUs.</li>
|
83 |
|
|
<li><a href="http://www.xilinx.com/ise/logic_design_prod/webpack.htm">ISE WebPACK</a> : Xilinx's FPGA synthesis tool.</li>
|
84 |
|
|
</ul>
|
85 |
|
|
Discussion group:
|
86 |
|
|
<ul>
|
87 |
72 |
olivier.gi |
<li><table border=0 style="background-color: #fff; padding: 5px;" cellspacing=0>
|
88 |
|
|
<tr><td>
|
89 |
|
|
<img src="http://groups.google.com/intl/en/images/logos/groups_logo_sm.gif"
|
90 |
|
|
height=30 width=140 alt="Google Groups">
|
91 |
|
|
</td></tr>
|
92 |
|
|
<tr><td style="padding-left: 5px">
|
93 |
|
|
<b>Subscribe to openMSP430</b>
|
94 |
|
|
</td></tr>
|
95 |
|
|
<form action="http://groups.google.com/group/discuss_openmsp430/boxsubscribe">
|
96 |
|
|
<input type=hidden name="hl" value="en">
|
97 |
|
|
<tr><td style="padding-left: 5px;">
|
98 |
|
|
Email: <input type=text name=email>
|
99 |
|
|
<input type=submit name="sub" value="Subscribe">
|
100 |
|
|
</td></tr>
|
101 |
|
|
</form>
|
102 |
|
|
<tr><td align=right>
|
103 |
|
|
<a href="http://groups.google.com/group/discuss_openmsp430?hl=en">Visit this group</a>
|
104 |
|
|
</td></tr>
|
105 |
|
|
</table>
|
106 |
|
|
</li>
|
107 |
50 |
olivier.gi |
</ul>
|
108 |
|
|
A few MSP430 links:
|
109 |
|
|
<ul>
|
110 |
|
|
<li><a href="http://en.wikipedia.org/wiki/MSP430">Wikipedia: MSP430</a></li>
|
111 |
|
|
<li><a href="http://www.ti.com/litv/pdf/slau049f">TI: MSP430x1xx Family User's Guide</a></li>
|
112 |
72 |
olivier.gi |
<li><a href="http://processors.wiki.ti.com/index.php/Open_Source_Projects_-_MSP430">TI: a list of available MSP430 Open Source projects out there on the web today.</a></li>
|
113 |
50 |
olivier.gi |
</ul>
|
114 |
|
|
|
115 |
|
|
<h1>Legal information</h1>
|
116 |
|
|
MSP430 is a trademark of Texas Instruments, Inc. This project is not affiliated in any way with Texas Instruments. All other product names are trademarks or registered trademarks of their respective owners.
|
117 |
|
|
|
118 |
|
|
</body>
|
119 |
|
|
</html>
|