【有庫存】NT售價: 250 元
用自己的芯片完成想做的事,豈不是一件樂事?當然,現場可編程門陣列(Field-Programmable Gate Array,FPGA)可讓你非常接近這一夢想。FPGA并非為你專門設計的芯片,而是通用芯片,能被配置用來完成你希望做的任何事情。此外,要配置FPGA,既可繪制原理圖,也可使用硬件定義語言Verilog;如果你的設計是成功的,Verilog也能用于生產真正的定制芯片。盡管《FPGA編程從零開始 使用Verilog》也將展示如何使用原理圖編輯器進行設計,但《FPGA編程從零開始 使用Verilog》的重點是指導你學習Verilog語言。 可根據自己的需要多次修改FPGA配置,使其成為原型化設計的優秀工具。如果設計問題浮出水面,你可對設備重新編程,直到消除所有漏洞為止。當你意識到可真正配置FPGA來包含能運行程序的處理器時,這種十分出奇的靈活性就會顯現出來。在《FPGA編程從零開始 使用Verilog》中,你將學習FPGA的一般使用原則,將學習《FPGA編程從零開始 使用Verilog》描述的示例,并在三種最流行的FPGA評估板(Mojo、Papilio One和Elbert 2)上運行這些示例。盡管從邏輯上講,微控制器可勝任FPGA能完成的大部分工作,但FPGA的運行速度更快;另外,一些人員發現,相對于實現復雜的算法,描述邏輯門和硬件更簡單。你可使用FPGA實現微控制器或其他處理器(以及其他人的工作)。在其中一種低成本FPGA開發板上使用Verilog編程,可能最令人信服的原因僅在于學習一些新知識,收獲一些樂趣!讀者可下載《FPGA編程從零開始 使用Verilog》各章的項目文件,也可掃描封底的二維碼下載。
電子電路大師Simon Monk撰寫的《FPGA編程從零開始 使用Verilog》一書指導你開始使用Mojo、Papilio One和Elbert 2這三種流行的FPGA開發板。本書語言風趣,通俗易懂,示例講解清晰,并提供可下載的示例程序源代碼和最終.bit文件。你將從頭到尾為大量工程編寫指令,包括LED譯碼器、計時器、單音生成器,甚至是存儲器映射的視頻顯示器!本書既可作為電子產品愛好者的指導手冊,也可作為專業開發人員的入門書籍。
第1章邏輯11.1邏輯門11.1.1非門21.1.2與門31.1.3或門31.1.4與非門和或非門41.1.5異或門51.2二進制61.3添加邏輯81.4觸發器91.5移位寄存器111.6二進制計數器121.7小結13第2章FPGA152.1FPGA的工作原理152.2Elbert2172.3Mojo182.4Papilio202.5軟件設置222.5.1安裝ISE222.5.2安裝Elbert軟件242.5.3安裝Mojo軟件252.5.4安裝Papilio軟件262.6項目文件262.7小結27第3章繪制邏輯293.1數據選擇器示例293.1.1步驟1:創建一個新項目303.1.2步驟2:創建一個新的原理圖343.1.3步驟3:添加邏輯符號363.1.4步驟4:連接門363.1.5步驟5:添加IO標記373.1.6步驟6:創建用戶約束文件383.1.7步驟7:生成.bit文件423.1.8步驟8:編寫開發板443.1.9測試結果463.2一個4位計數器示例483.2.1繪制原理圖493.2.2實現約束文件493.2.3測試計數器523.3小結52第4章Verilog簡介534.1模塊534.2引線、寄存器和總線544.3并行執行544.4數字格式544.5使用Verilog編寫的數據選擇器554.6使用Verilog編寫的計數器594.7同步邏輯624.8小結62第5章模塊化Verilog635.1七段譯碼器635.2按鈕去抖685.3復用七段顯示器和計數器735.3.1項目結構745.3.2display_7_seg765.3.3counter_7_seg795.3.4用戶約束文件815.3.5導入模塊源代碼825.3.6設置頂層模塊825.3.73數位版本835.3.8測試835.4小結84第6章計時器示例856.1狀態機856.2狀態機設計876.3硬件886.3.1你之所需886.3.2構建886.4模塊906.5用戶約束文件916.6計時器模塊926.6.1輸入和輸出926.6.2按壓按鈕926.6.3報警器實例936.6.4建模時間和顯示936.6.5狀態機實現946.6.6任務966.7測試986.8小結98第7章PWM和伺服電機997.1脈沖寬度調制997.2PWM模塊1007.2.1PWM模塊輸入和輸出1017.2.2PWM測試模塊1017.2.3試一試1047.3伺服電機1047.4硬件1057.4.1你之所需1057.4.2構建1067.5伺服模塊1097.6小結112第8章音頻1138.1單音生成1138.2Mojo的音頻輸出1158.3通用音/頻發生器1168.3.1單音模塊1168.3.2tone_tester模塊1188.3.3測試1188.4播放音頻文件1218.4.1音頻文件1218.4.2RAM1228.4.3wav_player模塊1228.4.4測試1258.4.5準備自己的音頻1258.5小結128第9章視頻1299.1VGA1299.2VGA定時同步1329.3繪制矩形1339.3.1VGA模塊1349.3.2VGA和Elbert21379.4使物體運動1389.5存儲器映射顯示1419.6小結143第10章擴展內容14510.1仿真14510.2更深層次的內容14610.3核和軟處理器14710.4更多Papilio內容14710.5更多Mojo內容14910.6小結150附錄A資源151附錄BElbert2參考155附錄CMojo參考165附錄DPapilioOne參考173