Ask Question, Ask an Expert


Ask Computer Engineering Expert

1. Aim

This assignment is designed to give students insight into various aspects of Real-time embedded systems. Students are required to use the DSP/BIOS operating system and TMS320C6713 DSK board to solve, implement and test real-time programming problems.

2. Learning Objectives

This assignment will enable you to:

1) Understand a real-time system and its software design challenges.
2) Analyse the requirements and needs of a real-time system.
3) Design and optimise software to meet the real-time requirements.
4) Integrate the DSP/BIOS operating system and application programs into a design.

3. Specification

You are required to design and implement a DSP/BIOS application which runs on the C6713 DSK. The application should perform audio signal processing to meet the following specification.

3.1 I/O specification

The architecture your application must adhere to is shown in figure given below.

1520_Audio processing architecture.jpg

3.1.1. HWI design notes

The application should read and prepare 16 bit stereo audio samples to and from the AIC23 codec at a sampling frequency of 44.1 kHz. You must use HWI objects with the interrupts posted by the serial port in order to execute this task. Two separate interrupts (and ISRs) are needed to handle reading and writing of samples to the port. This is not the most efficient way to handle the I/O, nonetheless it is exactly how you are instructed to implement this.

3.1.2. Frame buffer management design notes

You must make use of DSP/BIOS communication & synchronisation modules. One of the most obvious choices would be use of SEM and QUE modules to implement a pointer exchange, the MBX and PIP modules can also give the required functionality. You must describe your solution in your report.

3.2 SWI audio processing specification

A SWI must be posted as each full frame of data is passed to the input buffer to instigate the processing. You must ensure that the SWI runs once for every time it is posted, otherwise the latency of audio output will increase over time.

3.2.1. Fourier transform

For the first processing stage you must prepare a function to find out the frequency spectrum of the current frame.

3.2.2. Beat Detector

In this stage of the assignment you are asked to prepare a function to pulsate the DSK LEDs in synchronisation to the rhythm of a music input signal. The principle assumes that percussive instruments will have highest energy content in a music signal.

3.2.3. Filtering and inverse FFT

For this task you must prepare a function to filter the data, the definition of this term with respect to signal processing is to selectively modify the shape of a signal's frequency spectrum. The operation can be performed efficiently in the frequency domain by attenuating to zero coefficients outside the band you wish to keep.

3.2.4. Output multiplexer

The final function allows user to select either the unprocessed or processed audio data for output. This function should check the status of one of the user DIP switches, according to switch value either the original input data or resultant from the IFFT function is copied into a frame used to pass output data to the transmit ISR.

4. Requirements

Your task is as follows:

1. Implement the audio processing application in a DSP/BIOS project.

2. Experimentally measure the execution times for your HWI and SWI objects. In your report describe how the measurements were taken, give results and comment on the instantaneous and average CPU load.

3. You must also document the following aspects in your report:

a) Briefly describe configuration settings required outside of your code for your scheduling objects.

b) Outline your solution to management of the input/output frame buffers; give pseudocode where appropriate, concentrate on aspects of scheduling and synchronisation.

c) Describe work required to utilise the TI DSPLIB functions for the FFT & IFFT, particularly on the interfacing of your code/data structures with theirs’.

d) Give pseudocode for your implementation of the beat detection scheme, include description of your implementation of circular buffering.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M9729

Have any Question? 

Related Questions in Computer Engineering

Why are guards considered the most effective form of

Why are guards considered the most effective form of control for situations that require decisive action in the face of unfamiliar stimuli? Why are they usually the most expensive controls to deploy? When should dogs be ...

Emergence and abm agent-based models often exhibit emergent

Emergence and ABM Agent-based models often exhibit emergent properties. One characteristic of an emergent phenomenon is that the system exhibits a property that is not defined at the individual level. For instance, exami ...

The power of marketingmarketers cannot create demand or

The Power of Marketing Marketers cannot create demand or make people buy things that they don't want or need. However marketing is designed to persuade, inform, and remind people about the availability, choices, features ...

1 in chapter 1 we mentioned that the tcpip suite unlike the

1. In Chapter 1, we mentioned that the TCP/IP suite, unlike the OSI model, has no presentation layer. But an application-layer protocol can include some of the features defined in this layer if needed. Does HTTP have any ...

Spatial location and grass in the wolf sheep simple model

Spatial location and grass In the Wolf Sheep Simple model, the grass is randomly distributed across the space. However it is more realistic that areas of grass are spatially collocated, that is, areas with more grass are ...

Programming assignment linker you are to implement a

Programming Assignment: Linker You are to implement a two-pass linker and submit the source code, which we will compile and run. Submit your source code together with a Makefile as a ZIP file with directory through NYU C ...

A friend has recently started a business that has a large

A friend has recently started a business that has a large amount of intellectual property that he wants to ensure is kept secure and confidential. He plans to hire 75-100 employees within the next 18 months and is prepar ...

Implement a votingmachine class that can be used for a

Implement a VotingMachine class that can be used for a simple election. Have methods to clear the machine state, to vote for a Democrat, to vote for a Republican, and to get the tallies for both parties. Extra credit if ...

1 what is the difference between a compiler and an

1. What is the difference between a compiler and an interpreter? 2. What are the advantages of (a) a compiler over an interpreter (b) an interpreter over a compiler? 3. What advantages are there to a language-processing ...

Compare and contrast routers switches and wireless access

Compare and contrast Routers, Switches and Wireless access points. Define each and explain how each would be interconnected in a network. Draw a network diagram illustrating how each device would be used to hook up a sma ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

WalMart Identification of theory and critical discussion

Drawing on the prescribed text and/or relevant academic literature, produce a paper which discusses the nature of group

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro