Philipp Wagner Technische Universität München Lehrstuhl für Integrierte Systeme 10.04.2017
Fast architecture prototyping on FPGAs: frameworks, tools, and challenges
Fast architecture prototyping on FPGAs: frameworks, tools, and - - PowerPoint PPT Presentation
Fast architecture prototyping on FPGAs: frameworks, tools, and challenges Philipp Wagner Technische Universitt Mnchen Lehrstuhl fr Integrierte Systeme 10.04.2017 Our Goal: Improving MPSoC Architectures Memory I/O Accelerator tiles
Philipp Wagner Technische Universität München Lehrstuhl für Integrierte Systeme 10.04.2017
Fast architecture prototyping on FPGAs: frameworks, tools, and challenges
2
Fast architecture prototyping on FPGAs | Philipp Wagner
I/O Computing Memory Accelerator tiles
Our Goal: Improving MPSoC Architectures
3
Fast architecture prototyping on FPGAs | Philipp Wagner
Much more is needed ...
SoC Hardware
I/O Computing Memory Accel 1 Accel 0
Host PC
ASIC Flow (Design Compiler, etc.) FPGA FPGA emulation flow (ChipIt, ProFPGA) Simulation
Debug and device communication Development environment SoC software
4
Fast architecture prototyping on FPGAs | Philipp Wagner
Introducing OpTiMSoC
5
Fast architecture prototyping on FPGAs | Philipp Wagner
with multi-core extensions (CAS; LL/SC; TSL)
Wishbone/AXI bus, clocking, …)
SoC Hardware
I/O Computing Memory Accel 1 Accel 0
6
Fast architecture prototyping on FPGAs | Philipp Wagner
SoC Software
Currently work in progress:
7
Fast architecture prototyping on FPGAs | Philipp Wagner
Host Software
8
Fast architecture prototyping on FPGAs | Philipp Wagner
Implementation Targets
9
Fast architecture prototyping on FPGAs | Philipp Wagner
Debug and Trace Support
10
Fast architecture prototyping on FPGAs | Philipp Wagner
… // Send a trace message in // the SoC software OPTIMSOC_TRACE(0x200, 0xdeadbeef); … $ osd-cli > stm log stm.log 2 > start $ cat stm.log 4336d4fc 0200 deadbeef
System Trace Example
… printf("Hello World!"); … $ osd-cli > stm log stm.log 2 > start $ cat stm.log 86df758b Hello World!
11
Fast architecture prototyping on FPGAs | Philipp Wagner
backend
Communication
all speeds for bidirectional (full-duplex) transfers, net data rate
12
Fast architecture prototyping on FPGAs | Philipp Wagner
Communication: GLIP API example
13
Fast architecture prototyping on FPGAs | Philipp Wagner
the GUI
workflow
Build System
14
Fast architecture prototyping on FPGAs | Philipp Wagner
Build System: fusesoc example
CAPI=1 [main] name = optimsoc:examples:compute_tile_nexys4ddr description = "Xilinx/Digilent Nexys4 with ct" depend = wallento:boards:nexys4ddr wallento:svchannels:nasti wallento:svchannels:wishbone wallento:wb2axi:wb2axi
glip:backend:uart simulators = xsim [fileset rtl_files] file_type = systemVerilogSource usage = sim synth files = rtl/verilog/compute_tile_dm_nexys4.sv [fileset include_files] file_type = verilogSource is_include_file = true usage = sim synth files =
[fileset testbench] file_type = systemVerilogSource usage = sim files = tbench/verilog/tb_compute_tile_nexys4ddr.sv [xsim] top_module = tb_compute_tile_nexys4ddr part = xc7a100tcsg324-1
15
Fast architecture prototyping on FPGAs | Philipp Wagner
FPGA Implementation Support
16
Fast architecture prototyping on FPGAs | Philipp Wagner
http://www.optimsoc.org/docs/index.html
Documentation
17
Fast architecture prototyping on FPGAs | Philipp Wagner
Automated Testing
18
Fast architecture prototyping on FPGAs | Philipp Wagner
–
Freely usable, MIT licensed
mailing list)
–
Pull requests
–
Issues
Use OpTiMSoC, Extend OpTiMSoC, And More
19
Fast architecture prototyping on FPGAs | Philipp Wagner
–
Project repository for open source IP cores and associated projects
–
Main focus on quality metrics and trust
–
similar to OpenCores.org
–
LibreCores Continuous Integration
Free and Open Source Silicon Foundation
What can we learn from software development – and what not? 20 2017-02-05
Hebden Bridge, UK
Save the date for the open source digital design conference
September 8 – 10, 2017 www.orconf.org
21
Fast architecture prototyping on FPGAs | Philipp Wagner
Questions?