Ideas Page
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