Ideas Page

From Cpre584
Jump to navigation Jump to search

This page is a list of project ideas. Many of these are designed to help future to students learn to use Convey.

Tutorials

Tutorials should have one tutorial document and one or more examples to help the user to check their work.

Tutorial 2: Memory Controllers

Project description: This tutorial would follow the same structure as tutorial 1. It would have 2 parts: a and b. Part a: start by using the newCnyProject script and end with a personality that writes 8 bytes to memory. Part b: start from the end of part a and end with a personality that reads 8 bytes from memory.

The deliverables would be a tutorial document and 2 examples. The 2 examples would be what the tutorial user should have at the end of part a and b.

Current Developers: none

difficulty: low

Tutorial 3: Summation

Project description: Create a summation personality. cae_vadd does this, but it does vector vector addition as well.

Current Developers: none

difficulty: low

Introduction to floating point

Project description: Make a floating point summation personality.

Current Developers: none

Difficulty: medium

Introduction to parallel algorithms (prefix sums)

Project Description: implement an efficient (O(n/p)) implementation of the prefix sums problem.

Current Developers: none

Difficulty: medium

Feature tutorial

Project Description: Implement an example and tutorial showing one feature. Examples include chipscope, csr, ae-ae ring communication, ect.

Difficulty: low, varies

BLAS Functions

dgemm

Project Description: double precision general matrix matrix multiplication. Create a dgemm implementation with 20 Gflops and 100 Gflops performance for the HC-2 and HC-2ex respectively.

Current Developers: none

difficulty: high

Other

VHDL Personality

Project Description: Create a personality entirely written in VHDL. It seems creating a cae_pers.vhdl file should work.

Current Developers: none

difficulty: low to medium