2010年1月20日 星期三

2010寒假training course

目前LAB training course 時間為2/1~2/5 共計5天 早上9點開始

請碩0新生務必出席 專題生做相關領域的也請出席

也請講者 AAA學長 宗胤學長 塞公學長 嚕嚕帥哥

將課程投影片及相關文件上傳上來

課程設計部份

FPGA 2/1~2/2(一~二)講者 SCAAA 2/2 4282 2/3 4285
SLIM 2/3(三) 講者 塞公 4282
SYSTEMC 2/4(四) 講者 嚕嚕 4282
ANDROID 2/5(五) 講者 宗胤 4285

也歡迎其他有興趣的可以來聽

2010年1月18日 星期一

系統層級程式設計簡介與實做

1/18, 2010

由於學長在期末作業的tool kits上出了一點小問題, 所以必須延遲kit的上傳時間. 老師在此感到十二萬分的抱歉, 讓大家無法早一點回家放假.  不過為了讓大家的學習可以有一個比較完美的成果, 還是請大家勉為其難一下.

Kit預計在星期三(1/20)上傳. 星期四(1/21)學長會在4263等各位並且做詳細的說明. 原則上, 假如會正確使用套件以及之前的作業都做好了, 那摸應該只需要2~3天就可以完成了.

無論如何, 這是我們的疏失, 所以作業繳交期限延至1/2/2010.

---------------------------------------------------

1/8, 2010

期末作業注意事項請在這裡下載: Final Project

由於期末作業套件準備不及, 作業繳交時間延後至1/25晚上12點. 請隨時注意套件上傳的資訊.

過去第四與第五個作業還沒交的組, 可以在1/25前繳交. 已經按時繳交的組該作業加5分.

---------------------------------------------------



1/4/2010

這是關於Ports/Interfaces的最後的一次投影片, 我引用參考資料裡對階層式通道的例子, 這是要進入實做比較複雜的介面, 如AMBA或者是晶片內網路(NOC- Network on Chip)等的時候你所必須採取的方法.

這也是這學期最後的一份投影片, 我把它跟Ports放在一起. 我在之後會將這學期所有的投影片再做一次總整理, 並且會有一份附帶的講義, 預期在半年後放上來, 請各位同學到時候來下載.

請在這裡下載: Hierarchical Channel

最後提醒各位, 期末作業的套件講解是1/7, 請務必來上課.

最後祝大家學習愉快與順利, 也希望這個課程對大家的未來有所幫助, 更希望有更多資訊系同學能投入到這個領域的研究, 假如我上課有不周全的地方, 請大家到這裡留言, 我會想辦法改進, 這樣對以後來修課的同學會更有幫助.

-------------------------------------------------



12/31

這是SystemC有關Ports的部分. 這次先上傳一部分.

請在這裡下載: Ports

--------------------------------------------------

12/28

有許多同學在問第五個作業是什麼, 我記得我在課堂上講很多次了.  就是

第四個作業用OpenESL的Command Line模式再做一遍, 用意在讓各位熟悉ESL工具.

--------------------------------------------------



12/8

這是SystemC有關Communication的部分. 目前完成的部分是Primitive Channels的部分, 其他的會在之後上課前放上來.

本周的作業是將此次投影片裡有關sc_semaphore的範例的其中一個master module改成用method來實做. 請在12/24前繳交.

這一周除了上SystemC之外, 另外要請同學開始試用實驗室宗胤學長開發的8051 SystemC Simulator. 下周品皓學長也會把對應的GDB也做好. 這是期末作業的最重要的元件之一, 請同學一定要熟悉.

下周會請哲榮上OpenESL的使用, 請同學下載試用. 請在Windows XP或Linux環境下使用.

請在這裡下載: Communication Channel

---------------------------------------------------

12/1

這是SystemC有關Thread與Method更進一步的介紹, 不過也因為還沒完全寫好, 只算是完成70%, 請見諒.

請在這裡下載: Thread and Method

----------------------------------------------------------

12/1

這是SystemC有關Concurrency, 不過因為還沒完全寫好, 只算是完成70%, 請見諒.

請在這裡下載: Concurrency



----------------------------------------------------------

11/25

這是SystemC有關Main Function以及Module Function的宣告以及大致的實作方式與範例.

請在這裡下載: Structure: Main and Module

----------------------------------------------------------

11/25

這是一份 SystemC的Overview, 講一些有關SystemC的基本概念與元件是開發觀念. 有Example提供大家參考.

請在這裡下載: SystemC Overview

範例程式請在這裡下載: SystemC Overview Program Example

---------------------------------------------------------

11/24

這是有關解釋SystemC如何根據時序(Timing)來進行模擬, 因為所有硬體系統都需要跟時序相關的.

請在這裡下載: Timing

-------------------------------------------------------------------

11/24

這是有關解釋SystemC的資料型態.

請在這裡下載: Data Types

----------------------------------------------------------

11/23

這是OpenESL的投影片, 主要是說明SCREAM Lab所開發的ESL 整合設計環境(IDE)的使用方式.

請在這裡下載: OpenESL

-------------------------------------------------------

11/23

這是SystemC的安裝教學.

請在這裡下載: Installing SystemC

--------------------------------------------------------

11/22

這是簡單的Verilog與Logic Design教學以及ModelSim的用法.

請在這裡下載這三份檔案:

 Using ModelSim

Basic Logic Design

Verilog Basics

--------------------------------------------------------

10/6, 2009

這是第五回的投影片, 是有關SystemC的概念性簡介:

For SystemC Beginners

請在這裡下載: SystemC Beginners

----------------------------------------------------------

9/29, 2009

這是第四回的投影片, 是有關ESL的整體的概念性簡介:

Basics of ESL Design and Modeling

請在這裡下載: ESL Basics

----------------------------------------------------------

9/24

這是第二回的投影片, 是有關8051的簡介以及工具

請在這裡下載: SCREAM 805,  its toolchain and FPGA Emulator

未來的Topics包含:

Review of Verilog coding and simulation

Basics of ESL Design and Modeling

SystemC coding and simulation

OpenESL

Heterogeneous Simulation Environment

Simple SoC Design, Modeling and Simulation

HW and Grading: 五個, 分別練習 C++/Threads, 8051 coding, Verilog coding, SystemC coding

Term project: Simple SoC Modeling and Simulation Using 8051/ModelSim/SystemC

HW(60%)+Project(40%). 如期末作業未交或兩個作業(或以上)未交則不及格. 作業必須要能正常執行, 否則視同未交.



課程資料:

主要上課資料: 線上投影片(PDF  格式)

參考資料: 1. SCREAM Lab Blog 

               2. SCREAM Lab Open Source Blog

               3. SystemC From the Ground

               4. The Guide to SystemC

 

假如你們還對此一topic想有進一步的了解, 相關研究所課程的內容如下, 近期會有一個討論串發佈.

Topics:

1. SystemC Simulation Kernel

2. Advanced OpenESL tool development

3. TLM2.X

4. ARM Processor ESL Model

5. Multi-core Virtual Model

6. Multi-core Programming on Virtual Model

7. Multi-core application programming using CUDA

8. Debugging tool for microprocessors

HW and Grading:

1. 10 to 12 presentations

2. 3 projects

如有作業未交或超過3次presentations未準備者則不及格.

課程資料:

主要上課資料: 線上投影片(PDF  格式)

參考資料: 1. SCREAM Lab Blog 

               2. SCREAM Lab Open Source Blog

               3. SystemC From the Ground

               4. The Guide to SystemC

               5. CUDA

               6. TLM

               7. ARM ESL


-------------------------------------------------------

9/22

這是第一回的投影片, 是有關C++, Process與Thread.

請在這裡下載: C++, Process與Thread

---------------------------------------------------------



9/20

ruru: 請將8051 simulator的用法加在品皓底下post的power point裡再傳給我, 請包含如何跟SystemC銜接的方法.  另外我的ESL Basics有幾張圖要畫一下, 我再寄Powerpoint給你.

宗胤:  請將C++/threads/processes的投影片寄給我. 請你寫一份TLM2.0/2.1的投影片. 一月中會用到, 請你12月完成.



--------------------------------------------------------

7/24, 2009

提醒我自己與大家一下, 該上傳了. 我自承有點怠惰, 會趕快把SystemC的部分一點點補上來.

----------------------------------------------------

6/18, 2009

投影片我改成PDF檔, 請指教. 請負責的同學記得在7月底上傳投影片.

--------------------------------------------------

我一直覺得SoC設計應該要由資訊系的學生來做才恰當, 但是資訊系的學生一向怕硬體, 為了破除這個問題, 我預計在下學期的大學部開一門選修課, 課名如標題. 英文標題是:

Introduction to Programming and Tools of Electronic System Level (ESL) Design

我寫了第一階段的投影片, 用意在簡介一下ESL的設計觀念. 如下:

Electronic System Level Design Basics

因為是大學部的課, 一些基本的東西還是要含蓋一下, 我又不想把課弄得講太多ESL, 可是實務卻做的少. 所以我計劃有一章是基本工具與知識的介紹, 以便在實做term project或Homework時可以用到. 我把可能需要介紹的東西以及要負責寫的同學條列如下:

1. C++ Basics: Gary

2. Threads: 塞公

3. Processes: 塞公

4. Verilog HDL Basics and Logic Design: ruru

5. HDL Simulator and FPGA: ruru

6. SCREAM 8051 and toolchain: 品皓

7. SCREAM OpenESL: 小龍

8. Computer Architecture Basics: 品皓

這一部分是:



All programming skills you need to know to master SystemC and learn ESL design together with some useful information

請各位就一個不是懂太多的大學部學生為準則, 盡量寫得讓他們看得懂. 順便幫他們複習一下他們過去學過的, 但是對這門課重要的部分. 不過請不要copy你過去學過的書或講義, 務必是你消化後再寫出來的東西比較好.

接下來我會寫SystemC的部分以及請Gary寫一章TLM2.0的部分. 至於OCP與AMBA, 我還在考慮要不要放進來, 但是還是請ruru準備, 反正都是要寫的.

以上請各位有空可以開始寫了, 我希望大家在七月底可以完成四個Chapters的powerpoint, 並且開始寫書的部分.

以上請各位學長與學姐指教, 如能自願幫忙, 感激不盡.