 |
|
|
| |
|
TECHNICAL UPDATES |
| |
|
Products Updates |
| |
|
MATLAB Parallel & Distributed Computing
With the introduction of MATLAB parallel and distributed
computing, users are now able to solve computationally and
data intensive problem using MATLAB and Simulink in a multiprocessor
computing environment.
To setup
the computing environment, users will require to have Distributed
Computing Toolbox and MATLAB Distributed Computing Engine.
The Distributed
Computing Toolbox will provide the high-level constructs,
such as parallel for loops, parallel algorithms, and MPI-based
functions, as well as low-level constructs for job and task
management. While the MATLAB Distributed Computing Engine
will allow user to startup multiple MATLAB sessions (known
as workers) on a computer cluster.

Figure
1: Developing distributed and parallel applications with Distributed
Computing Toolbox and MATLAB Distributed Computing Engine
With the
combination of these tools, users will have the options to
solve their problems either as several independent units of
work or as a single large computation by harnessing the multiple
processors.
What
can you do with Distributed Computing Toolbox?
- Distributed
and parallel execution of applications
- Interactive
and batch execution modes
- Distributed
arrays, parallel algorithms, and parallel for loops
- Inter-worker
communication support based on the MPI (MPICH2) standard
- Ability
to run four workers locally on a desktop
- Integration
with MATLAB Distributed Computing Engine for developing
cluster-based applications that use any scheduler or any
number of workers
For
more information about Distributed Computing Toolbox, please
visit the following URL:
http://www.mathworks.com/products/distribtb/index.html
To
learn more about Distributed Computing Toolbox through the
following online demo, please visit the following URL:
Parallel
Programming in MATLAB
Rapid
Deployment to Java Classes with MATLAB® Builder for Java
1.1:
MATLAB Builder for Java extends the MATLAB Compiler with
tools for automatically generating Java classes from
your MATLAB algorithms. You can run MATLAB based classes created
using Builder for Java outside the MATLAB environment, for
example incorporating algorithms into desktop and Web applications
built using other Java-based technologies. It also lets you
share algorithms with colleagues who can access them using
standard interface.
Key Features
- Converts
MATLAB algorithms into Java classes via a graphical user
interface or the command line.
- Supports
conversion between Java data types and MATLAB array data
types using data conversion classes.
- Enables
royalty-free desktop and Web deployment of independent components.

For
more information about MATLAB Builder for Java, please visit
the following URL:
http://www.mathworks.com/products/javabuilder/
To
learn more about MATLAB Builder for Java through online webinars,
please visit the following URL:
http://www.mathworks.com/products/javabuilder/demos.html
|
| |
| |
| Tips
and Techniques |
| |
|
Managing
File-Dependencies of Your MATLAB Programs
Have you ever run into situation where the MATLAB program
that you share with friends or colleagues doesn't run, just
because you have forgotten to include some of the required
M-files? The Dependency Report functionality in MATLAB can
help to address this problem by providing a check-list of
all required child functions to be called by the main M-file.
To access
Dependency Report, navigate to Current Directory browser
in MATLAB Desktop and select Dependency Report from the Directory
Reports icon.

Select
Show child functions to see a list of all M-files (children)
called by each M-File in the directory (parent). The report
also indicates where each child function resides, for example,
in a specified toolbox. If a child function's location is
listed as unknown, it could be because the child function
is not on the search path or in the current directory.
Select
Show parent functions to list the M-files that call
each M-file. The report limits the parent (calling) functions
to those in the current directory. Select Show subfunctions
to include subfunctions in the report. Subfunctions are listed
directly after the main function and are highlighted in gray.
To
learn more about Dependency Report, please visit the following
URL:
http://www.mathworks.com/access/helpdesk/help/techdoc/matlab_env/f9-6232.html
Debugging MATLAB M-files from the MATLAB Command Prompt
What
Debugging Tools Are Available at the MATLAB Command Prompt?
This section describes how to make use of functions to
debug programs from the MATLAB command prompt. There are altogether
seven topics and in the e-newsletter issue, we will look at
the fourth topic. The rest of the topics will be covered in
subsequent e-newsletter issues.
| Topics |
| 1. |
Setting,
Clearing, and Querying Breakpoints |
| 2. |
Moving
from Workspace to Workspace |
| 3. |
Executing
Your Code Using the DBSTEP Function |
| 4. |
Displaying
Status Messages Periodically |
| 5. |
Using
the TRY/CATCH Block to Capture Errors |
| 6. |
Using
the ERROR Function with the LASTERR and RETHROW Functions |
| 7. |
The
WHICH Function |
Topic 4: Displaying Status Messages Periodically
One of the simplest, yet sometimes most effective, debugging
techniques is to display the results of certain key calculations
or simply a string that indicates when a certain section of
code has completed execution. The DISP
function provides an easy way to do this.

For
example, in the sample code above if you were to debug a MATLAB
script, we'll first segment the codes into sections and which
displays a message at the end of each step.
Hence,
when we run the script, you receive the following messages
in your command window:

These
messages allow us to identify and pinpoint where the error
occur. From the messages, it seems that the Beginning program
and Step 1 has completed without any errors but Step 2 was
not complete. Therefore, it is likely that there is a problem
with the function or script in Step 2.
On careful
inspection of the codes in Step 2, you'll notice that there
is an error on line 14.

|
| |
| |
|
EVENTS & TRAINING |
| |
|
Learn and do more with MATLAB & Simulink
Join us for 'FPGA Implementation by System Level Design Tools'
workshop

Attend
this free training event to learn how you can work faster
and more efficient with the latest tools by The Mathworks
and Xilinx. The workshop will challenge yourself with the
latest design tools and development boards. Limited FREE
Seats, REGISTER NOW
Workshop
Highlights:
This half day hands-on workshop is designed to provide system
level designers, DSP designers, and FPGA/ASIC designers a
basic understanding on how to develop algorithms and circuits
for FPGA devices using Simulink and the Xilinx design tools-
System Generator. The class will also show how to implement
the design to Spartan-3 board during the hands-on lab session.
The workshop is suitable for designers who have no knowledge
of HDL such as Verilog or VHDL but would like to perform design
and implementation of FPGA design. To view more details, please
visit http://www.activemedia.com.my/form-event.htm
In-house
or customized training is also available on request, please
contact Activemedia at 6742-8173 for details. Other relevant
training courses provided by Activemedia include:
- Comprehensive
MATLAB
- Comprehensive
SIMULINK
- Applying
Signal Processing with MATLAB
- Applying
Image Processing Techniques with MATLAB and SIMULINK
- Applying
Neural Network with MATLAB
|
| |
| |
|
Visit
www.activemedia.com.sg
or Contact us at:
|
|
Singapore:
(65) 6742 8173
enquiry@activemedia.com.sg
|
Malaysia:
(60) 3 7880 8522
enquiry@activemedia.com.my
|
Thailand:
(66) 2 612 9390-1
info@activemedia.in.th
|
|
| |
| |
|
Customer Applications |
| |
|
Texas Instruments Streamlines Research and Development with Simulink and DSP Tools
|
|
To shorten product cycles by accelerating the flow of real-time DSP algorithms from product design
|
|
|
Use an integrated set of DSP software design tools from The MathWorks that
allows algorithm developers, systems engineers, and software engineers to use
a common high-level model to coordinate their work
|
|
|
Accelerated design.
Efficient time allocation.
Reduced overhead. |
|
| |
|
Challenge
With
a new focus on specialty chip sets for DSP customers,
R&D engineers at TI faced the market pressures and
competition that are now a way of life throughout the
semiconductor industry. To reduce these pressures, TI
addressed one of the biggest hurdles in the development
process-the gap between R&D and product development.
|

A DSP chip from Texas
Instruments.
|
|
| |
|
"We
see the future of advanced DSP design in development
tools like those from The MathWorks."
|
|
Dr. Randy Cole
Texas Instruments
DSP Solutions Research and Development Center
|
| |
|
Solution
TI decided that rapid prototyping environments, consisting
of high-level software tools and real-time development
hardware, would be essential if they were to accelerate
deployment of new technologies for their expanding line
of increasingly sophisticated DSP products.
Engineers at TI now incorporate MATLAB, Simulink, the
Signal Processing Blockset, and the Signal Processing
Toolbox into their algorithm design process. This new
approach enables them to streamline the verification
and delivery of application-specific algorithms to product
development teams.
"Using
DSP Workshop helps tie the two sides of the process
together in a way that lets every engineer see the whole
project from concept to testing to coding," says
Dr. Randy Cole, branch manager at TI DSP Solutions R&D
Center.
Dr.
Cole's team is using MATLAB, Simulink, the Signal Processing
Blockset, and Real-Time Workshop-along with TI development
tools-in a rapid-prototyping approach based on interactive
block-diagram simulation and automatic code generation.
With these tools, DSP engineers can refine implementation
details directly in the system model and produce real-time
software prototypes without traditional programming.
By
using MathWorks tools to design real-time algorithms
and generate code for use on target DSP platforms, TI
expects to dramatically shorten development cycles.
"The MathWorks DSP Workshop is a promising tool
suite for rapid DSP prototyping," states Alec Robinson,
Digital Audio Branch, DSP Solutions R&D Center.
"It demonstrates a significant potential benefit
to R&D engineers, who are developing sophisticated
applications for advanced TI DSP product lines."
TI
engineers used MathWorks tools to create a real-time
audio application. The software runs on a PC/C32 card
from Blue Wave Systems. It feeds real-time stereo sound
inputs through a series of sophisticated audio processing
algorithms and delivers stereo output to a set of loudspeakers
for real-time subjective listening tests. They developed
and tested algorithm concepts in MATLAB and converted
them seamlessly into a block-diagram model of the real-time
implementation in Simulink and the Signal Processing
Blockset.
The
graphical, self-documenting algorithm design in Simulink
becomes an executable specification for product designers.
Using the Simulink model as a reference, software designers
can work concurrently on implementation details and
constraints, such as processor speed and precision.
Dr.
Cole's team used Real-Time Workshop to generate C code
to run in their real-time environment, as well as TI
software that supplied host-DSP communication and stream
I/O support for their specific card's A/D and D/A devices.
The C code generated by Real-Time Workshop provides
a solid basis for the optimized software ultimately
embedded in the product.
|
| |
|
Results
-
Accelerated design. Using MathWorks tools,
TI engineers created a real-time audio application
in just one day. Traditional design methods would
have taken weeks of DSP programming-particularly
if iterations were required.
-
Efficient time allocation. MathWorks tools helped
R&D engineers create and evaluate their own
real-time prototypes, enabling TI to shorten DSP
software engineering time on product implementation
and optimization.
-
Reduced overhead. Because the entire DSP engineering
team can use the same interactive MathWorks products
to create, refine, and verify algorithms, they can
better understand algorithm behavior and performance
much earlier, reducing implementation errors from
misinterpretation.
|
|
Products
Used
MATLAB®
Real-Time
Workshop®
Signal
Processing Blockset
Signal
Processing Toolbox
Simulink®
|
|
| |
|
 |
|