Complete this task as part of your GSoC 2019 application if you are applying for any FPGA related task.
This challenge is mandatory if you apply for T721, T728, T731, T733, T885 or T887.
---
Please choose at least one of the following tasks and make sure to adhere to the VHDL coding style used in the AXIOM Beta codebase.
**Task 1:**
Create VHDL code for a serial to parallel converter (SERDES) which can be switched between 8, 10 and 12 bit.
Make sure that it works at high serial speeds (600 MHz) and that the data word can be adjusted (bitslip).
- You can use existing hardened units like DDR or SERDES to simplify the task.
- Test the resulting SERDES with simulation or on real hardware.
**Task 2:**
Create an UART - SPI bridge consisting of a simple UART and SPI master.
Make both separate and isolated entities which work together as a bidirectional bridge.
- Select a set of UART commands and responses to control generic SPI slaves.
- Make sure to handle different slave widths (e.g. 8 and 16 bit).
**Task 3:**
Create a high speed link (>500MHz) between two FPGAs utilizing SERDES and coding.
- Use PRNGs to test the link at real time and to estimate BER.
- Make sure to provision for a link reset and some kind of link training.
---
**Useful Links:**
- https://en.wikipedia.org/wiki/Serial_Peripheral_Interface
- https://en.wikipedia.org/wiki/SerDes
- https://en.wikipedia.org/wiki/8b/10b_encoding
- https://en.wikipedia.org/wiki/Pseudorandom_number_generator
To get in touch with any mentor check the [[ https://www.apertus.org/GSoC-2019-Mentor-Contact-List | Mentor Contact List]].