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

Termites model run the termites model found in the biology

Termites model Run the Termites model (found in the Biology section of the NetLogo models library). In this model there are only two objects: termites and wood chips. What are the termites doing in this model? Without lo ...

Since may 26 2002 the aes advanced encryption standard

Since May 26, 2002, the AES (Advanced Encryption Standard) describes the official standard of the US government. 1. The evolutionary history of AES differs from that of DES. Briefly describe the differences of the AES hi ...

Array find largest row description write a java program

ARRAY FIND LARGEST ROW: Description: Write a Java program that will: 1. Create a square integer 2D array of a size that is decided by user input. 2. Allow the user to fill the array with integers of their choice. 3. Dete ...

1 explain how dhcp can be used when the size of the block

1. Explain how DHCP can be used when the size of the block assigned to an organization is less than the number of hosts in the organization. 2. Compare NAT and DHCP. Both can solve the problem of a shortage of addresses ...

Design and implement a word-searching algorithm that on

Design and implement a word-searching algorithm that on finding a mismatch with the current word simply reads characters to the start of the next word before attempting a match again.

Assume that our network never corrupts loses or duplicates

Assume that our network never corrupts, loses, or duplicates packets. We are only concerned about flow control. We do not want the sender to overwhelm the receiver with packets. Design an FSM to allow the sender to send ...

The latency of the interconnect network plays a large role

The latency of the interconnect network plays a large role in the efficiency of message passing systems. How fast does the interconnect need to be in order to obtain any speedup from using the distributed system describe ...

1 discuss the pros and cons of shared vs private l2 caches

1. Discuss the pros and cons of shared vs. private L2 caches for both single-threaded, multi-threaded, and multi programmed workloads, and reconsider them if having on-chip L3 caches. 2. Assume both benchmarks have a bas ...

1 in your own words describe the process of ood2 in your

1. In your own words, describe the process of OOD. 2. In your own words, define encapsulation, polymorphism, and inheritance. 3. Modify the Dice Poker program from this chapter to include any or all of the following feat ...

1 write a program that determines the distance to a

1. Write a program that determines the distance to a lightning strike based on the time elapsed between the flash and the sound of thunder. The speed of sound is approximately 1100 ft/sec and 1 mile is 5280 ft. 2. The Ko ...

  • 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