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