|
|
(One intermediate revision by the same user not shown) |
Line 1: |
Line 1: |
− | [[Category:Digital]] | + | #REDIRECT [[Adding Linux Support to our DMA Engine (1-2S/B)]] |
− | [[Category:High Performance SoCs]]
| |
− | [[Category:Computer Architecture]]
| |
− | [[Category:2021]]
| |
− | [[Category:Semester Thesis]]
| |
− | [[Category:Bachelor Thesis]]
| |
− | [[Category:Smazzola]]
| |
− | [[Category:Michaero]]
| |
− | [[Category:Available]]
| |
− | | |
− | == Introduction ==
| |
− | | |
− | At IIS we are developing a modular and extensible high-performance direct memory access (DMA) engine. So far we have integrated it in our cluster-based systems. On those systems are programmed using bare-metal code to achieve the highest energy efficiency.
| |
− | | |
− | Next to the cluster-based systems, we are working on Ariane (CVA6), a 64 bit application-grade linux-capable core.
| |
− | | |
− | We are now planning to integrate our DMA engine in an Ariane-based SoC and evaluate its benefits in a Linux environment.
| |
− | | |
− | == Project ==
| |
− | | |
− | We propose to divide the project in these steps:
| |
− | | |
− | * '''Research''': Investigate how Linux interacts with a system-level DMA and collect a set of minimal requirements for the hardware.
| |
− | * '''RTL design''': Create a hardware interface for the DMA engine that features this set of minimal requirements Linux opposes on the hardware.
| |
− | * '''Validation and driver development''': Create a driver for Linux allowing it to interface with the DMA; validate your hardware using simple transfers
| |
− | * '''Evaluation''': Run complex applications to evaluate the performance of the DMA in this context.
| |
− | | |
− | == Requirements ==
| |
− | | |
− | * Experience with digital design in SystemVerilog as taught in VLSI I
| |
− | | |
− | == Composition ==
| |
− | | |
− | * 30% studying the DMA interface imposed by Linux
| |
− | * 20% RTL design
| |
− | * 30% driver development & validation
| |
− | * 10% evaluation
| |
− | | |
− | == Project Supervisors ==
| |
− | | |
− | * [[:User:Tbenz | Thomas Benz]]: [mailto:tbenz@iis.ee.ethz.ch tbenz@iis.ee.ethz.ch]
| |
− | * [[:User:Michaero | Michael Rogenmoser]]: [mailto:michaero@iis.ee.ethz.ch michaero@iis.ee.ethz.ch]
| |