2 項進行中

115-1 選課時程

進行中

  • 初選第一階段 6/15 – 6/18
  • 初選第二階段 6/22 – 6/25
  • 校際選修 進行中 8/24 – 9/18
  • 初選第三階段 8/31 – 9/3
  • 開學後加退選 進行中 9/7 – 9/21
  • 逾期加退選 9/21 – 9/24
選課資源

加入行事曆

選擇訂閱 Google Calendar,或下載通用的 ICS 檔案。

使用 Google Calendar 時,Google 會收到這份課表的公開連結。

高階合成技術於應用加速

Application Acceleration with High-Level-Synthesis

學期
110-2
學分
0 學分
當期課號
5958
永久課號
IEE5757
開課單位
電子研究所
授課教師
賴瑾
類別
選修
上課時間表
週三
6
14:20–15:10
高階合成技術於應用加速
ED417B
3 節連堂
7
15:30–16:20
8
16:30–17:20

* 根據陽明交大上課時間表所列

概述

(上課時間將修改為W678,週三下午14:20-17:20) 隨著設計週期的加快和應用驅動業務的發展,在ICT行業中,產品開發流程的典範移轉,已從以硬件設計為中心,轉變為以軟件應用程序導向的趨勢,並進一步由通過特殊硬件加速運算,來實現差異化的價值。 鑒於當前台灣IC設計理念仍停留在傳統的RTL設計,並且缺乏軟硬體整合的系統效能觀念。本課程“高階合成技術於應用加速”,使用一般開發應用程式的語言(C/C++),配合高階合成工具(Xilinx Vivida HLS),以設計出符合特殊需求的應用加速器,在現今需求龐大的機器學習、人工智慧,及運算科學(Computational Science)之運算上,皆能提供即時有效的解決方案。 本課程系統性的介紹設計觀念,工具使用,實驗課程,提供工程師基本開發能力。並提供業界開源資源,可以用來開發各種應用加速器方案。實驗課程使用兩種平台,一種是用於Edge端的嵌入式平台(Pynq),一種適用於雲端的 PCIe 加速卡 後續視需求提供進階專案討論課程,以實現應用加速器於各種智能解決方案。期待提升台灣產業的競爭力。

先修科目

• Knowledge of C/C++ • The basic concept of digital logic, computer architecture • Knowledge of algorithms, and data structures • Experiences with RTL design for ASIC or FPGA would be helpful, but not required

備註

無備註

教學方式

(上課時間將修改為W678,週三下午14:20-17:20) 課程說明(Course Description) 隨著設計週期的加快和應用驅動業務的發展,在ICT行業中,產品開發流程的典範移轉,已從以硬件設計為中心,轉變為以軟件應用程序導向的趨勢,並進一步由通過特殊硬件加速運算,來實現差異化的價值。 鑒於當前台灣IC設計理念仍停留在傳統的RTL設計,並且缺乏軟硬體整合的系統效能觀念。本課程“高階合成技術於應用加速”,使用一般開發應用程式的語言(C/C++),配合高階合成工具(Xilinx Vivida HLS),以設計出符合特殊需求的應用加速器,在現今需求龐大的機器學習、人工智慧,及運算科學(Computational Science)之運算上,皆能提供即時有效的解決方案。 本課程系統性的介紹設計觀念,工具使用,實驗課程,提供工程師基本開發能力。並提供業界開源資源,可以用來開發各種應用加速器方案。實驗課程使用兩種平台,一種是用於Edge端的嵌入式平台(Pynq),一種適用於雲端的 PCIe 加速卡 後續視需求提供進階專案討論課程,以實現應用加速器於各種智能解決方案。期待提升台灣產業的競爭力。

評分方式

• 作業/實驗:40% • 課堂考試:20 % • 上台口頭報告:10% • 分組期末專題:30%

課程大綱
  • Tools & Platform

    • Application Acceleration Development Flow • Introduction to PYNQ & Lab2 • Vitis OpenCL XRT and Lab3

  • Basic Design Concept and HLS

    • From Logic Gate to HLS • Introduction to High Level Synthesis

  • FPGA Introduction (Xilinx)

    • Introduction to FPGA • FPGA – CLB • FPGA – Memory • FPGA – DSP • FPGA – Interconnect

  • Concept of System Performance and Optimization

    • System Performance - Host • System Performance - Kernel

  • Coding Style

    • Memory Architecture • Structure Design • Hierarchical Design

  • HLS Optimization Techniques

    • Introduction to High Level Synthesis • Kernel IO Interface • Kernel Optimization – Pipeline & Dataflow • Data Type

  • Design Examples and Application

    • Design Examples • Application Cases

  • Special topics

    • From AI to Gate – FINN • HLS RISC-V • Accelerated Algorithmic Trading – Xilinx AAT

  • Lab/Project Resources

    • Lab Platform o PYNQ-Z2 - Embedded System o U50 (PCIe) – Cloud Application (Linux) • Lab Group#1 – Platform / Tool Setup o Lab#1 – Tools Installation and implementation flow, includingVivado-HLS, Vivado Design Suite, Vitis IDE/Makefile, PYNQ-Z2 o Lab#2 – Application Acceleration for Embedded System – PYNQ-Z2 o Lab#3 – Application Acceleration for Cloud Environment – U50 with Vitis & XRT • Lab Group#2 – Advanced Tool Usage, Kernel Optimization, SW/HW Co-design o Lab#A – ug871 – Basic HLS, Tool Usage, Analysis o Lab#B – Vitis Tutorial – System Design Issues, HLS optimization o Lab#C – Vitis Library – SW/HW co-design • Lab Group#3 – Application cases o Lab#D – FINN o Lab#E – HLS RISC-V (optional) o Lab#F – Accelerated Algorithmic Trading (optional)

  • • Final Projects

    Upon completion of the course, students will be able to (1) use HLS tools to design complex digital circuit (2) Independently analyze and optimize the design (3) Independently research on specific application area, evaluate and use open-source resource to develop end-to-end application acceleration (4) Collaborate with other members in a small team to develop a solution for an application acceleration.

週次計畫
週次主題
第 0 週

Tool Installation & Questionnaire form (上課時間將修改為W678,週三下午14:20-17:20)

2022/207(三)-ED417
第 1 週

HLS Introduction & Course Plan From Logic Gate to HLS (上課時間將修改為W678,週三下午14:20-17:20)

2022/2/16(三)-ED417
第 2 週

Introduction PYNQ & Lab2 Introduction to HLS (上課時間將修改為W678,週三下午14:20-17:20)

2022/2/23(三)-ED417
第 3 週

Vitis OpenCL XRT and Lab3 Introduction to FPGA - CLB, Memory, DSP, Interconnect (上課時間將修改為W678,週三下午14:20-17:20)

2022/3/2(三)-ED417
第 4 週

Vitis Development Flow Kernel IO Interface (上課時間將修改為W678,週三下午14:20-17:20)

2022/3/9(三)-ED417
第 5 週

Kernel Optimization - Pipeline Kernel Optimization - Dataflow (上課時間將修改為W678,週三下午14:20-17:20)

2022/3/16(三)-ED417
第 6 週

Structure Design Hierarchical Design (上課時間將修改為W678,週三下午14:20-17:20)

2022/3/23(三)-ED417
第 7 週

Presentation Lab#A, Lab#B Data Type (上課時間將修改為W678,週三下午14:20-17:20)

2022/3/30(三)-ED417
第 8 週

Midterm Exam (上課時間將修改為W678,週三下午14:20-17:20)

2022/4/6(三)-ED417
第 9 週

From AI to Gate - I (上課時間將修改為W678,週三下午14:20-17:20)

2022/4/13(三)-ED417
第 10 週

Lab#C - Vitis Library (selected) (上課時間將修改為W678,週三下午14:20-17:20)

2022/4/20(三)-ED417
第 11 週

From AI to Gate - II (上課時間將修改為W678,週三下午14:20-17:20)

2022/4/27(三)-ED417
第 12 週

RISC-V (上課時間將修改為W678,週三下午14:20-17:20)

2022/5/4(三)-ED417
第 13 週

AAT / AIOT (Composable Pipeline) (上課時間將修改為W678,週三下午14:20-17:20)

2022/5/11(三)-ED417
第 14 週

Memory Architecture Application Acceleration Best Practice (上課時間將修改為W678,週三下午14:20-17:20)

2022/5/18(三)-ED417
第 15 週

Final Project Proposal (all) (上課時間將修改為W678,週三下午14:20-17:20)

2022/5/25(三)-ED417
第 16 週

Application Acceleration Architecture Design Examples (上課時間將修改為W678,週三下午14:20-17:20)

2022/6/1(三)-ED417
第 17 週

TBD: Application Examples (上課時間將修改為W678,週三下午14:20-17:20)

2022/6/8(三)-ED417
第 18 週

Final Exam Week - Final Project Presentation 6/20 (grade for graduate) (上課時間將修改為W678,週三下午14:20-17:20)

2022/6/15(三)-ED417
第 19 週

Final Project Presentation (all) (上課時間將修改為W678,週三下午14:20-17:20)

2022/6/22(三)-ED417
教科書

• HLS Textbook: https://www.boledu.org/textbooks/hls-textbook • Xilinx ug1399 Vitis High-Level Synthesis User Guide: https://docs.xilinx.com/r/en-US/ug1399-vitis-hls • Xilinx ug902: Vivado Design Suite User Guide: High-Level Synthesis, https://bit.ly/3x4r8mp

Office Hours
地點
教師未提供此項資料
時間
教師未提供此項資料
聯絡方式
教師未提供此項資料