開篇-我眼中的FPGA

来源:http://www.cnblogs.com/lobster89/archive/2017/11/17/7854209.html
-Advertisement-
Play Games

既然是開篇,那就來閑話叨一叨FPGA吧。 掰掰指頭,結識FPGA估計有5年多。作為嵌入式工程師,每天的日常充斥著ARM、DSP、操作系統、通訊、匯流排等耳熟能詳的辭彙,日日徜徉其中,而這當中,最特立獨行的就是FPGA。FPGA沒有形狀,但又可以捏出任何形狀,相對於MCU/CPU開發來說,FPGA至少意 ...


既然是開篇,那就來閑話叨一叨FPGA吧。

掰掰指頭,結識FPGA估計有5年多。作為嵌入式工程師,每天的日常充斥著ARM、DSP、操作系統、通訊、匯流排等耳熟能詳的辭彙,日日徜徉其中,而這當中,最特立獨行的就是FPGA。FPGA沒有形狀,但又可以捏出任何形狀,相對於MCU/CPU開發來說,FPGA至少意味著一個詞:自由。

FPGA就像一張紙,你可以畫上任何你想要的形狀,而MCU/CPU下的軟體開發則要遵從固定的架構約定來按章辦事。這是FPGA的魅力所在,但有時自由度太大也是個問題:容易失去方向。不知道有多少人和我一樣,接觸一段時間FPGA之後漸漸有些迷失:我到底要做什麼才能變成高手?

如果是ARM開發,你可以很清晰看到一個小白慢慢打怪升級變成武林高手的路線:熟悉ARM體系架構,練習裸機編程熟記外設操作,進而進軍操作系統,鑽研Linux、RTOS,各種進程調度、信號量、互斥鎖信手拈來,再而鑽研內核、驅動、文件系統、數據結構、網路通信等等,照此路線操練不輟,假以時日,不成高手也會有小成,就像練習武術秘籍,滿滿都是套路。但是FPGA呢?這是張白紙,我搞清了有哪些顏料可以使用(晶元資源),掌握了畫筆的使用方法(開發工具及語言),也習得一些繪畫方法,作些普通畫作不成問題,但為何總是覺得沒有實感,望不到成為高手之路?

其實,FPGA雖然沒有固定套路,但不代表沒有套路,也如繪畫一樣,雖然你可以隨意落筆自已揮灑,但往往也脫不開不同的畫派風格。如果想提升技藝,如果是自己閉門練習,到一定階段之後只是低級重覆,而有一個方法可以無限逼近大師,那就是臨摹。

閑話就說到這,下一篇,咱們再來說說FPGA的應用領域、方向,以及繪製一本FPGA進階的武術套路吧!

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 以下為本人學習Redis的備忘錄,記錄了大部分常用命令 1.客戶端連接redis服務端: 啟動Redis服務端 redis-server /yourpath/redis.conf 啟動Redis命令行客戶端 建立長連接:redis-cli -h 127.0.0.1 -p 6379 若省略參數則將使用 ...
  • 1.使用ECLIPSE工具打包運行WORDCOUNT實例,統計莎士比亞文集各單詞計數(文件SHAKESPEARE.TXT)。 ①WorldCount.java 中的main函數修改如下: ②導出WordCount的jar包: export->jar file->next->next->Main cl ...
  • 1.找到my.ini MySql5.7安裝後(windows環境),在安裝目錄下並沒有發現my.ini的配置文件,百度了一下才知道MySql安裝時會將data文件夾(包含資料庫信息和文件)放在ProgramData文件夾中,並且ProgramData文件夾是以隱藏的形式存在。。。。接下來就需要開啟隱 ...
  • 資料庫的設計(DataBase Design): 針對於用戶特定的需求,然後我們創建出來一個最使用而且性能高的資料庫! 資料庫設計的步驟: 01.需求分析 02.概念結構設計 03.邏輯結構設計 04.物理結構設計 05.資料庫的實施 06.資料庫的運行和維護 資料庫的3大範式: 1.確保每列的原子 ...
  • 在mysql資料庫中,插入中文數據時,會出現亂碼的現象。 我的測試方法: 我的解決方法: 說明一下: 我的只改了client的編碼格式為gbk,然後關於中文數據的插入就沒有錯誤了。 但我看了網上關於mysql的亂碼解決的方法是: 改'my.ini'的client和server的編碼格式為utf8 關 ...
  • 1. 建表 2. 查詢表結構 3.正則表達式 ...
  • http://369day.blog.51cto.com/845412/607818 ...
  • Oracle導入備份 輸入imp 用戶名/密碼@資料庫名 file=導入的.dmp文件路徑 full=y 按回車. Oracle導出備份 輸入exp 用戶名/密碼@資料庫名 file=導出的.dmp文件存放的路徑 owner=用戶名 按回車 成功終止導出,沒有出現警告. ...
一周排行
    -Advertisement-
    Play Games
  • 1. 說明 /* Performs operations on System.String instances that contain file or directory path information. These operations are performed in a cross-pla ...
  • 視頻地址:【WebApi+Vue3從0到1搭建《許可權管理系統》系列視頻:搭建JWT系統鑒權-嗶哩嗶哩】 https://b23.tv/R6cOcDO qq群:801913255 一、在appsettings.json中設置鑒權屬性 /*jwt鑒權*/ "JwtSetting": { "Issuer" ...
  • 引言 集成測試可在包含應用支持基礎結構(如資料庫、文件系統和網路)的級別上確保應用組件功能正常。 ASP.NET Core 通過將單元測試框架與測試 Web 主機和記憶體中測試伺服器結合使用來支持集成測試。 簡介 集成測試與單元測試相比,能夠在更廣泛的級別上評估應用的組件,確認多個組件一起工作以生成預 ...
  • 在.NET Emit編程中,我們探討了運算操作指令的重要性和應用。這些指令包括各種數學運算、位操作和比較操作,能夠在動態生成的代碼中實現對數據的處理和操作。通過這些指令,開發人員可以靈活地進行算術運算、邏輯運算和比較操作,從而實現各種複雜的演算法和邏輯......本篇之後,將進入第七部分:實戰項目 ...
  • 前言 多表頭表格是一個常見的業務需求,然而WPF中卻沒有預設實現這個功能,得益於WPF強大的控制項模板設計,我們可以通過修改控制項模板的方式自己實現它。 一、需求分析 下圖為一個典型的統計表格,統計1-12月的數據。 此時我們有一個需求,需要將月份按季度劃分,以便能夠直觀地看到季度統計數據,以下為該需求 ...
  • 如何將 ASP.NET Core MVC 項目的視圖分離到另一個項目 在當下這個年代 SPA 已是主流,人們早已忘記了 MVC 以及 Razor 的故事。但是在某些場景下 SSR 還是有意想不到效果。比如某些靜態頁面,比如追求首屏載入速度的時候。最近在項目中回歸傳統效果還是不錯。 有的時候我們希望將 ...
  • System.AggregateException: 發生一個或多個錯誤。 > Microsoft.WebTools.Shared.Exceptions.WebToolsException: 生成失敗。檢查輸出視窗瞭解更多詳細信息。 內部異常堆棧跟蹤的結尾 > (內部異常 #0) Microsoft ...
  • 引言 在上一章節我們實戰了在Asp.Net Core中的項目實戰,這一章節講解一下如何測試Asp.Net Core的中間件。 TestServer 還記得我們在集成測試中提供的TestServer嗎? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。 ...
  • 在發現結果為真的WHEN子句時,CASE表達式的真假值判斷會終止,剩餘的WHEN子句會被忽略: CASE WHEN col_1 IN ('a', 'b') THEN '第一' WHEN col_1 IN ('a') THEN '第二' ELSE '其他' END 註意: 統一各分支返回的數據類型. ...
  • 在C#編程世界中,語法的精妙之處往往體現在那些看似微小卻極具影響力的符號與結構之中。其中,“_ =” 這一組合突然出現還真不知道什麼意思。本文將深入剖析“_ =” 的含義、工作原理及其在實際編程中的廣泛應用,揭示其作為C#語法奇兵的重要角色。 一、下劃線 _:神秘的棄元符號 下劃線 _ 在C#中並非 ...