最近整理了履歷表,請大家無聊看看啦
--
工作經歷
雖然中間曾經轉換過公司,但是那是公司改組的動作,project上是連續的。
下面的project是以獨立繪圖晶片的產品編號為主,除了這些project,SiS還有滿多整合型晶片組的計畫。
1. Project 300到315 階段
工作說明:
Project 300:
a. 負責texture block simulation
b. 撰寫C程式協助parsing texture tag 跟cache的 probe data找出tag compare error的問題
c. 撰寫C程式幫忙driver command 及memory data dump出來後,轉換到simulation可以使用的格式。
Project 310 & 315:
a. texture filter and blending rtl design & synthesis.
b. 提出blending cascade架構for p310 & blending loop 架構for p315. 讓blending的alu充份運用減少gate count cost。
c. 研究過filter的algorithm後提出filter 的乘法改用bit select減少gate count cost跟improve filter的timing.
310 一個主攻high performance市場,315是cost down for value segment.經過這三個project加上伴隨而來的整合型晶片組project。讓我學習到整個設計的流程,對於3D texture的部份也有深入的了解。而且因為在project310&315中的架構想法獲得了SiS當年度的優秀員工獎。
2. Project 325階段
工作說明:
a. ikos emulator的slow down PC 系統 debug 3D應用程式.
b. chip tape out回來後的驗證
Project 325因為texture的變動不大,所以我主要負責的是使用ikos emulator進行系統驗證的工作,而這份工作也讓我建立了對3D繪圖從AP, API, driver到HW整個流程的view。也因為這份任務,也讓我了解了3D HW從command parsing到最後post output z跟color的完整流程。晶片回來後,我也是主要負責驗證所有3D functions 是否符合預期。最後在跟driver合作之下,完成A0就順利量產的不可能任務。而這個3D core 的 IP,SiS至今仍繼續使用。最近一顆使用這個3D core的chip 是SiS662。
3. Project 330 到 340階段
工作說明:
Project 330:
a. 制定post global register specifications
b. c z cache架構的設計
c. post cmodel implementation
d. color post rtl implantation
Project 340前半段:
a. 協助dram controller完成dram tiling implementaion 的 algorithm
b. z compress algorithm cmodel and hardware implementation.
c. 實驗並提出使用MCL的方法達成 gate count reduction.
d. 提出方法在chip tape out後eco增加3D mark 05的performance
Project 340後半段:
a. 帶領資淺工程師完成3D front rtl implementation
b. ikos emulation
因為有上一個階段的經驗,所以這個階段的工作除了換了一個block外,還有從global register的製定,整個HW架構跟algorithm的製定,最後從cmodel到整個RTL的implementation,同時間因為有新進學弟加上front module的主管離職,因為我對front有了解所以轉到front module協助的工程師,同時負責指導post module新進的學弟。最後順利讓330, 340這兩顆chip tape out 量產。為了3D的performance 在dram access上必須要有tiling的方式,這裏有一些數學運算的implementation,必須用上一點computer arithmetic的技術,所以我提出了解決的方法,給dram controller 去implement.
4. Prjoect XG45& XG50 階段
工作說明
Project XG45 前期:
a. 制定front architecture and texture architecture.
b. 制定3D spec.
c. 確定 command Q 的 specification 讓index buffer write once mode performance符合預期。
d. 提出 HDR floating point texture filter 的 implantation 方法,使gate count 跟 pipeline級數能達到最小。
Project XG45 後期:
a. 因為3D HW 的leader 離職,所以跟別的team的人緊密合作,確保XG45能順利tape out。
b. chip回來的驗證。
Project XG50:
a. 跟 backend server team (Cadence and synoups)討論project的front end and backend issue
b. emulation 平台轉換從Metor Graphic ikos 轉換到 Cadence的Palladium.
這一個階段的工作,主要因為3D硬體的主管離職,而接替的主管的經歷主要是cmodel不是硬體設計方面,所以要扮演吃重的從旁協助的角色。而當chip複雜度大大的提升到必須找比較先進的design serverice team時,除了平常的硬體設計問題外,還要跟那些service 公司討論各式各樣的問題,像tool的選用。而這也讓我了解了許多之前所不了解的issue,像low power中clock gating的implantation方式及對DFT的影響。 最後因為SiS的3D 一直發展不起來,加上高層的考量,最後又把3D team整個移回了SiS。
5. G360階段
Project g360:
a. 3D specification 定義 for DX10,特別是跟driver互動非常密切的Query function.
b. WDDI(Advance sheduler)
c. Cadence的Palladium simulation acceleration setup
Project g360-4P:
a. tool comparision between MCL cellmath RC-dp
b. 3D design review
c. 3D design integration.
d. Project manager
這兩個project的發展DX10的3D core. DX10是跟 Window vista一起推出的新一代API。而基於這個API所設計的GPU,可以大幅的取代CPU的功能,被稱為 GPGPU,而我們這個team是到目前台灣唯一發展出可通過WHQL的DX10的3D core,只比最早的nVdia慢了約半年。g360-4p則是以達到gate count最小為目標,我對於這方面的經驗豐富,所以g360-4p的project就交給我掌控,在符合schedule的情況下,完成了以umc 0.11制程 8M gate count就達到所需performance 的3D core。從熟悉的業界人士得到的消息是,同時間S3 graphic 在gate count大於10M的情況下,還沒有完成DX10的design。而WDDI是要GPU進入可以隨時interupt跟switch context,同時所有的context的dram mapping改成virtual memory,用來符合Microsoft最新的OS要求,我也完成了整個的架構設計,並指導各module team完成相對應的design。而3D有太多的數學運算,所以就必須比較所使用的alu path的工具,經過比較,發現這些tool各有所長,最後我們還是使用原來的mcl。
6. P8080
1. DDR phy simulation and debug
2. 中間連絡人,解決USA跟backend team之間的溝通問題。
8080是一個HD DVD的chip。主要是由前ESS的member在被收購後要這裏提供些他們缺少的IP,我幫忙把原來舊的DDR的PHY的純 gate level design轉製程外,跟他們的dram control接好,在他們美國的環境run simulation跟debug,如果有需要直接的改動他們的dram controller,讓simulation 順利完成。這個project讓對dram, dram controller有進一步的了解。而8080是一個SOC的chip,也讓我可以跟PC的系統對照,了解SOC跟PC的差別,進一步的了解SOC的design。