課程背景 FPGA系統(tǒng)設(shè)計初級和中級班 |
FPGA系統(tǒng)設(shè)計初級班培訓課程主要幫助學員盡快掌握 FPGA 的開發(fā)流程和設(shè)計方法,以工程實踐為例,循序漸進的學習FPGA的集成開發(fā)環(huán)境,開發(fā)流程以及硬件電路設(shè)計等知識。每次課程都配有相關(guān)實戰(zhàn)訓練,每個實戰(zhàn)訓練題目都可以在FPGA硬件平臺上進行下載驗證。通過實戰(zhàn),學員可以更好的理解消化課堂知識,工程實踐水平會得到迅速提高。 |
課程目標 |
培養(yǎng)學員迅速掌握和使用FPGA數(shù)字系統(tǒng)開發(fā)工具、開發(fā)流程,能夠獨立進行初步的FPGA系統(tǒng)設(shè)計。經(jīng)過培訓,學員可以掌握HDL語言的初步開發(fā)能力,并且解決FPGA產(chǎn)品開發(fā)過程中的常見問題,掌握基于FPGA的設(shè)計和調(diào)試方法。 |
培養(yǎng)對象 |
FPGA系統(tǒng)的軟件和硬件開發(fā)工程師;電子類專業(yè)的大學生和研究生;電子產(chǎn)品設(shè)計愛好者。 |
入學要求 |
學員學習本課程應具備下列基礎(chǔ)知識:
◆電路系統(tǒng)的基本概念。 |
班級規(guī)模及環(huán)境 |
為了保證培訓效果,增加互動環(huán)節(jié),我們堅持小班授課,每期報名人數(shù)限3到5人,多余人員安排到下一期進行。 |
上課時間和地點 |
上課地點:【上海】:同濟大學(滬西)/新城金郡商務樓(11號線白銀路站) 【深圳分部】:電影大廈(地鐵一號線大劇院站)/深圳大學成教院 【北京分部】:北京中山學院/福鑫大樓 【南京分部】:金港大廈(和燕路) 【武漢分部】:佳源大廈(高新二路) 【成都分部】:領(lǐng)館區(qū)1號(中和大道) 【沈陽分部】:沈陽理工大學/六宅臻品 【鄭州分部】:鄭州大學/錦華大廈 【石家莊分部】:河北科技大學/瑞景大廈 【廣州分部】:廣糧大廈 【西安分部】:云峰大廈
最近開課時間(周末班/連續(xù)班/晚班):FPGA初級和中級班開課時間:2024年1月8日 |
學時 |
◆課時: 共5天,30學時
◆外地學員:代理安排食宿(需提前預定)
☆注重質(zhì)量
☆邊講邊練
☆合格學員免費推薦工作
☆合格學員免費頒發(fā)相關(guān)工程師等資格證書,提升您的職業(yè)資質(zhì)
專注高端培訓15年,曙海提供的證書得到本行業(yè)的廣泛認可,學員的能力
得到大家的認同,受到用人單位的廣泛贊譽。
★實驗設(shè)備請點擊這兒查看★ |
最新優(yōu)惠 |
◆團體報名優(yōu)惠措施:兩人95折優(yōu)惠,三人或三人以上9折優(yōu)惠 。注意:在讀學生憑學生證,即使一個人也優(yōu)惠500元。
同時報選《FPGA應用設(shè)計高級班》,即享受優(yōu)惠! |
質(zhì)量保障 |
1、培訓過程中,如有部分內(nèi)容理解不透或消化不好,可免費在以后培訓班中重聽;
2、培訓結(jié)束后免費提供半年的技術(shù)支持,充分保證培訓后出效果;
3、培訓合格學員可享受免費推薦就業(yè)機會。 ☆合格學員免費頒發(fā)相關(guān)工程師等資格證書,提升您的職業(yè)資質(zhì)。專注高端培訓13年,曙海提供的證書得到本行業(yè)的廣泛認可,學員的能力得到大家的認同,受到用人單位的廣泛贊譽。 |
師資團隊 |
◆【趙老師】
FPGA課程金牌講師,項目經(jīng)驗非常豐富,15年FPGA/DSP系統(tǒng)硬件開發(fā)工作經(jīng)驗。熟悉整個EDA設(shè)計流程,熟練使用Alter、Xinlinx,ModelSim開發(fā)工具,精通Verilog
HDL語言和VHDL語言,精通Nios II EDS/SOPC、、IP核、PCI PLX 9054數(shù)據(jù)采集卡等開發(fā)。
◆【陳老師】
資深FPGA開發(fā)工程師,FPGA培訓課程金牌講師,有8年的FPGA和DSP系統(tǒng)硬件開發(fā)經(jīng)驗,最近4年來一直從事視頻和圖像處理領(lǐng)域的高速DSP系統(tǒng)硬、軟件和FPGA系統(tǒng)的設(shè)計和開發(fā),具有非常豐富的高速系統(tǒng)設(shè)計經(jīng)驗,精通TI公司的C6000系列高速DSP和Altera公司的全系列FPGA/CPLD。
更多師資力量請參見曙海師資團隊,請點擊這兒查看。 |
課程進度安排 |
課程大綱(本教學方案有兩種語言版本,如果學員想學VHDL語言編程,我們可根據(jù)要求調(diào)整) |
第一階段 |
第一階段的課程主要幫助學員了解FPGA系統(tǒng)設(shè)計的基礎(chǔ)知識,掌握FPGA最小系統(tǒng)硬件電路設(shè)計方法,學會操作QuartusII軟件來完成FPGA的設(shè)計和開發(fā)。 |
1.可編程邏輯設(shè)計技術(shù)簡介
2.下一代可編程邏輯設(shè)計技術(shù)展望
3.可編程邏輯器件硬件上的四大發(fā)展趨勢
4.EDA軟件設(shè)計方法及發(fā)展趨勢
5.FPGA的設(shè)計流程
6.FPGA的常用開發(fā)工具
7.FPGA的基本結(jié)構(gòu)
8.主流低成本FPGA 芯片
9.FPGA芯片的選型策略詳解
10.FPGA .V文件的編程規(guī)范
10.1 單個.v文件的書寫規(guī)范
10.2 多個.v文件的書寫規(guī)范
10.3 聲明部分的編寫規(guī)范
10.4 主體部分編寫,always、initial、function、task的選擇和使用
10.5 Always語句塊編寫規(guī)范和注意要點
10.6 Alwasys內(nèi)部功能的擴充和Always直接的通信和協(xié)調(diào)
11.FPGA關(guān)鍵電路的設(shè)計(最小電路設(shè)計):
11.1 FPGA管腳設(shè)計
11.2 下載配置與調(diào)試接口電路設(shè)計
11.3 RS-232串口
11.4 字符型液晶顯示器接口電路設(shè)計
11.5 電源電路設(shè)計
11.6 復位電路設(shè)計
11.7 撥碼開關(guān)電路設(shè)計
11.8 i2c總線電路設(shè)計
11.9 時鐘電路設(shè)計
11.10 圖形液晶電路設(shè)計
12.FPGA芯片的的結(jié)構(gòu)
12.1 FPGA的結(jié)構(gòu)、內(nèi)部邏輯單元及接口
12.2 主流低成本FPGA的結(jié)構(gòu)、內(nèi)部邏輯單元及接口
12.3 FPGA的布線策略
|
1. 實戰(zhàn)一:在Altera的FPGA開發(fā)板上運行一個接口實驗程序-交通燈的設(shè)計實現(xiàn),如何控制Red,Green,Yellow燈在南北東西各個方向的交替運作。
訓練課題:“交通燈的設(shè)計實現(xiàn)”
實驗要點:
1.1 Quartus II工程創(chuàng)建及屬性設(shè)置
1.2 Quartus II源文件設(shè)計輸入方式
1.3 Quartus II約束設(shè)計
1.4 Quartus II工程編譯
1.5 Quartus II功能仿真
1.6 Quartus II時序仿真
1.7 Quartus II硬件下載 |
第二階段 |
熟練掌握硬件描述語言(Verilog
HDL)是FPGA工程師的基本要求。通過本節(jié)課程的學習,學員可以了解目前最流行的Verilog HDL語言的基本語法,掌握Verilog
HDL語言中最常用的基本語法。通過本節(jié)課程學習,學員可以設(shè)計一些簡單的FPGA程序,掌握組合邏輯和時序邏輯電路的設(shè)計方法。通過實戰(zhàn)訓練,學員可以對Verilog
HDL語言有更深入的理解和認識。 |
1.Verilog
HDL語言簡介
2.Verilog HDL語言邏輯系統(tǒng)
3.Verilog HDL操作數(shù)和操作符
4.Verilog HDL和VHDL語言的對比
5.Verilog HDL循環(huán)語句
6.Verilog HDL程序的基本結(jié)構(gòu)
7.Verilog HDL語言的數(shù)據(jù)類型和運算符
8.Verilog HDL語言的賦值語句和塊語,阻塞和非阻塞賦值語句的區(qū)別
9.Verilog HDL語言的條件語句,包括IF語句和CASE語句的典型應用
10.Verilog HDL語言的其他常用語句
11.Verilog HDL語言實現(xiàn)組合邏輯電路
12.Verilog HDL語言實現(xiàn)時序邏輯電路
|
1. 實戰(zhàn)訓練二:
訓練課題:“順序執(zhí)行狀態(tài)機設(shè)計實驗”
實驗要點:
1.1 Quartus II軟件操作
1.2 組合邏輯電路設(shè)計實現(xiàn)
1.3 IF語句和CASE語句的使用
2. 實戰(zhàn)訓練三:
訓練課題:“跑馬燈設(shè)計實現(xiàn)”
實驗要點:
2.1 Quartus II軟件操作
2.2 時序邏輯電路設(shè)計實現(xiàn)
2.3 分頻原理和實現(xiàn)方法
3. 實戰(zhàn)訓練四:
訓練課題:“7段數(shù)碼管測試實驗-以動態(tài)掃描方式在8位數(shù)碼管“同時”顯示0-7”
實驗要點:
3.1 Quartus II軟件操作
3.2 了解如何按一定的頻率輪流向各個數(shù)碼管的COM端送出低電平,同時送出對應的數(shù)據(jù)給各段。
3.3 介紹多個數(shù)碼管動態(tài)顯示的方法。 |
第三階段 |
雖然利用第二階段課程學到的HDL基本語法可以完成大部分的FPGA功能,但相對復雜的FPGA系統(tǒng)設(shè)計中,如果能夠合理的應用Verilog
HDL的高級語法結(jié)構(gòu),可以達到事半功倍的效果。通過第三天課程的學習,學員可以掌握任務(TASK),函數(shù)(FUNCTION)和有限狀態(tài)機(FSM)的設(shè)計方法,可以更好的掌握FPGA的設(shè)計技術(shù)。此外,本節(jié)課程還介紹了QuartusII軟件的兩個常用的高級工具-SignalTAP,可以提高FPGA設(shè)計和調(diào)試的效率。 |
1.
TASK和FUNCTION語句的應用場合
2. Verilog HDL高級語法結(jié)構(gòu)-任務(TASK)
3. Verilog HDL高級語法結(jié)構(gòu)-任務(FUNCTION)
4. 有限狀態(tài)機(FSM)的設(shè)計原理及其代碼風格
5. 邏輯綜合的原則以及可綜合的代碼設(shè)計風格
6. SignalTap II在線邏輯分析儀使用方法
7. FPGA編程思想梳理和升華
7.1 狀態(tài)機的使用技巧(嵌套,相互調(diào)用,順序執(zhí)行)
1.2 標志的編程思想
1.3 并發(fā)編程思想(提高代碼執(zhí)行效率的方法,Always協(xié)調(diào)和通信)
1.4 分頻的技巧
|
1. 實戰(zhàn)訓練五:
訓練課題:“典型狀態(tài)機設(shè)計實例”
實驗要點:
1.1 FSM設(shè)計方法
1.2 狀態(tài)機的編碼(Binary、gray-code、one-hot等)
1.3 狀態(tài)機的初始化狀態(tài)和默認狀態(tài)(完整狀態(tài)機設(shè)計)
1.4 狀態(tài)機的狀態(tài)定義風格
1.5 狀態(tài)機的編寫風格
2. 實戰(zhàn)訓練六:
訓練課題:“撥碼開關(guān)設(shè)計實驗”
實驗要點:
2.1 Quartus II輸入方式
2.2 SignalTap II在線調(diào)試
2.3 了解撥碼開關(guān)的工作原理及電路設(shè)計
3. 實戰(zhàn)訓練七:
訓練課題:“矩陣鍵盤設(shè)計實驗”
實驗要點:
3.1 Quartus II原理圖輸入方式
3.2 了解矩陣鍵盤的工作原理及電路設(shè)計
4. 實戰(zhàn)訓練八:SignalTap II邏輯分析儀實驗
4.1 SignalTap II邏輯分析儀分析流程
4.2 SignalTap II邏輯分析儀使用技巧
|
第四階段 |
隨著FPGA芯片的性能和密度不斷提高,
基于FPGA的SOPC系統(tǒng)正在逐漸成熟并且在很多領(lǐng)域得到了應用。第四階段課程主要給學員介紹Altera公司基于NIOSII軟核的SoPC系統(tǒng)設(shè)計流程和方法。通過硬件開發(fā)板上的SoPC系統(tǒng)設(shè)計實驗,學員能夠體會SoPC技術(shù)給系統(tǒng)設(shè)計帶來的靈活性。最后通過FPGA綜合設(shè)計實驗,學員完成對四天學習內(nèi)容的回顧和總結(jié)。 |
1.
基于FPGA系統(tǒng)組成原理和典型方案
2. Altera公司的解決方案
3. FPGA的編程思想的總結(jié)
4. FPGA硬件開發(fā)的思路
5. FPGA調(diào)試方法
6. SOPC 開發(fā)思路和技巧
7. NIOS開發(fā)流程和技巧
8. SOPC Build CPU軟核的搭建
9. NIOS+SOPC Builder+Quartus的聯(lián)合使用案例 |
1. 實戰(zhàn)訓練九:
訓練課題:“NIOS+SOPC Builder+Quartus的聯(lián)合使用”
實驗要點:
1.1 SOPC調(diào)試方法
1.2 SOPC軟件開發(fā)流程
1.3 NIOS+SOPC Builder+Quartus的聯(lián)合開發(fā)實驗
2. 實戰(zhàn)訓練十:
訓練課題:“SOPC 軟核綜合設(shè)計實驗”
訓練內(nèi)容: 針對一個綜合性實驗題目,學員獨立完成需求分析,結(jié)構(gòu)設(shè)計,代碼設(shè)計,仿真驗證和程序下載固化。
實驗要點:
2.1 復雜軟核的構(gòu)建
2.2 復雜軟核的Nios編程
2.3 軟核組織和裁剪 |
第五階段 |
1.實戰(zhàn)訓練十一:
訓練課題:“數(shù)碼管進位與刷新綜合設(shè)計實驗”
步驟一、詳細一個鋪墊性實驗,通過它講解數(shù)碼管各種進位的方法,與進位代碼的編寫,其中注意:
a.數(shù)碼管整體刷新和數(shù)碼管動態(tài)掃描顯示的區(qū)別和聯(lián)系,怎樣編寫代碼
b.編程中注意FPGA的精髓:并行運行
c.注意在傳遞數(shù)據(jù)的過程中,采用什么方法比較好
步驟二、學員自己編寫一個數(shù)字時鐘程序
a.訓練學員舉一反三的能力
b.注意一些特殊用法
步驟三、總結(jié)學員的出錯原因,給出解決方法
2.實戰(zhàn)訓練十二:
訓練課題:“蜂鳴器怎樣演奏音樂,怎樣演奏梁祝的曲子”
步驟一、詳細一個鋪墊性實驗,通過它講解怎樣通過分頻來實現(xiàn)音階和音調(diào),其中注意:
a.狀態(tài)機的高級用法
b.怎樣分頻
c.注意在傳遞數(shù)據(jù)的過程中,采用什么方法比較好
步驟二、學員自己編寫一個數(shù)字時鐘程序
a.訓練學員舉一反三的能力
b.注意一些特殊用法
步驟三、總結(jié)學員的出錯原因,給出解決方法
3.實戰(zhàn)訓練十三:
訓練課題:LCD液晶控制實驗
1. 內(nèi)容的回顧與難點消化,解疑答惑
2.編程中舉一反三和融匯貫通訓練
3. FPGA的程序固化方法
3.實戰(zhàn)訓練十四:
訓練課題:TRAFFIC實驗
1. 內(nèi)容的回顧與難點消化,解疑答惑
2.編程中舉一反三和融匯貫通訓練
3. FPGA的程序固化方法
3.實戰(zhàn)訓練十五:
訓練課題:串口開發(fā)實驗
1. 內(nèi)容的回顧與難點消化,解疑答惑
2.編程中舉一反三和融匯貫通訓練
3. FPGA的程序固化方法 |
第六階段 |
知識詳解:
1.字符型液晶顯示原理
2.圖形液晶顯示原理
3.液晶顯示原理詳解
4.I2C協(xié)議原理與編程 |
1. 實戰(zhàn)訓練十六:
訓練課題:1602字符型液晶顯示實驗
訓練內(nèi)容: 通過實驗充分理解字符型液晶的顯示原理,是怎樣通過代碼體現(xiàn)的,針對一個綜合性實驗題目,學員獨立完成需求分析,結(jié)構(gòu)設(shè)計,代碼設(shè)計,仿真。
2. 實戰(zhàn)訓練十七:
訓練課題:“128x64圖形液晶顯示實驗”
訓練內(nèi)容: 通過實驗充分理解字圖形液晶的顯示原理,是怎樣通過代碼體現(xiàn)的針對一個綜合性實驗題目,學員獨立完成需求分析,結(jié)構(gòu)設(shè)計,代碼設(shè)計,仿真。
3. 實戰(zhàn)訓練十八:
訓練課題:“I2C讀寫EEPROM實驗”
訓練內(nèi)容: 通過實驗充分理解I2C協(xié)議原理,用I2C協(xié)議實現(xiàn)對EEPROM的讀寫操作,演示是怎樣通過代碼體現(xiàn)的針對一個綜合性實驗題目,學員獨立完成需求分析,結(jié)構(gòu)設(shè)計,代碼設(shè)計,仿真。 |