作者blackmaninEE (黑人電機機)
看板NTHU_Course
標題[心得] 劉靖家/呂仁碩 計算機結構
時間Fri Jan 17 22:18:35 2020
課名:計算機結構
科號:EE 345000
老師:劉靖家、呂仁碩
課本:David A. Patterson & John. L. Hennessy, Computer Organization and Design
RISC-V Edition -- The Hardware/Software Interface", 1st Ed., 2017
課別:電資院專業選修
學分:3
涼度:★★★
甜度:★★★☆
建議先修課程:邏輯設計、計算機程式設計
課程內容\簡介:
課程一共分成6個章節:
Chapter 1 Computer Abstractions and Technology
簡單介紹一些電腦基本架構,提到Moore's Law。
Chapter 2 Instructions: Language of the Computer
本章主要在介紹組合語言的指令集,講義用Risc-V當作例子,講解的指令集包括Load
、Store、Add、Branch等等指令的架構及寫法,這邊會配合一次作業去實作,會更了解
組合語言如何使用。此章重點在於了解每個指令的用途,徹底了解會對於Chapter 4的
學習有一定的幫助。
Chapter 3 Arithmetic for Computers
這章就跟邏輯設計差不多,透過Block Diagram的方式去講解加法器、乘法器該如何去
實作並優化,不同在於這裡不會像邏設那樣分析到AND、OR gate那麼細。除此之外,也
會提到如何偵測Overflow和Floating point(浮點數)的表示及運算等等。
這章是看起來最簡單的一章,卻是考試最難的一章,因為這一章的出題靈活性很高。
Chapter 4 The Processor
這章繼承了Chapter 2的概念,將一個指令拆解成數個step,並引入了Pipeline的概念。
並從Pipeline Design延伸探討data dependency、hazard、forwarding等等實作Pipeline
會遇到的問題。
如果Chapter 2的指令都有搞懂的話,這章不會太難,很多觀念不需要硬背,只要一步一
步推導就可以理解了。
Chapter 5 Large and Fast: Exploiting Memory Hierarchy
前面主要講解Cache的用途及架構,不同類型的Cache是如何去存取,Cache hit或Cache m
is
的時候要做什麼事,和分析一個program在某種Cache架構下需要的cycle數等等。
後面會著重在Virtual Memory,即一個虛擬的位址如何對應到實體的記憶體位址,會牽涉
到一些OS範圍的內容(本堂課不教)。
整體串接起來就形成一個完整程式運用記憶體的流程:
程式Virtual Address -> 記憶體Physical Address -> Cache內部資料 -> Memory (Cach
e
這一章東西有點多,又比較接近期末才教,所以要多花時間複習和做題目增加熟悉度。
Chapter 6 Parallel Processors from Client to Cloud
這章大概只花了三節課左右介紹一下而已,算是補充的範圍,不在考試範圍內。
上課方式:
採用Powerpoint的方式上課,簡報都可以從課程網頁上下載下來。
給分:
Homework*4 10%
Programming Assignment *4 30%
Midterm exam 30%
Final exam 30%
考試作業型態:
Midterm的範圍是Ch1~3,Final範圍是Ch4~6。Midterm通常都考的比較簡單(內容本身簡單
)?
Final則是會複雜很多(不難但是內容多)。
考試準備技巧的話,期中考盡量以理解觀念為主,因為呂仁碩出題比較活潑,觀念通的話
比較好作答;期末考除了釐清觀念外,最好要多練習題目,因為題目真的很多,如果不夠
熟練的話,一定會寫不完。
Programming的作業是使用類似Online Judge的方式,將code或壓縮檔上傳後,系統會回
報
你的分數。程式作業共有4次,提交期限到Deadline後一個禮拜內都算分,蠻佛的。
(1) 練習 C 語言的小程式
(2) 用Assembly實現Merge Sort中Merge的部分 (Chapter 2)
(3) 用Assembly做出Random number generator和Linear search,並透過一些技巧去減少
程式運行的cycle數 (Chapter 4)
(4) 實作Cache 的 LRU replacement policy (用C++) (Chapter 5)
Coding作業不會很花時間,卡關的話跟同學討論一下會很有用。
老師的喜好、個性:
老師希望大家都能聽懂,所以都會停下來讓同學思考,有問題也可以直接在課堂上提出來
,老師都很樂意回答同學的疑問。
給加簽嗎?
沒有滿喔~
補充:
總成績/班上排名:
成績:
成績分布:
↓每組人數
A+ % ( )
A % ( )
A- % ( )
B+ % ( )
B % ( )
B- % ( )
C+ % ( )
C % ( )
C- % ( )
D以下 % ( )
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.253.128 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/NTHU_Course/M.1579270717.A.25F.html
1F:→ Apache : 反而EE的Arch不用刻CPU01/18 14:18
2F:→ Apache : 不過黃婷婷班貌似也不用01/18 14:20
※ 編輯: blackmaninEE (150.117.220.137 臺灣), 01/18/2020 14:33:13
3F:推 zxc36mn7 : 推詳細 01/19 12:13