91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

電子發(fā)燒友App

硬聲App

掃碼添加小助手

加入工程師交流群

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>可編程邏輯>跳上 Avalon 總線:一種簡化的 FPGA 接口資料下載

跳上 Avalon 總線:一種簡化的 FPGA 接口資料下載

2021-04-22 | pdf | 593.05KB | 次下載 | 2積分

資料介紹

許多新式 FPGA 設(shè)計采用了一些用于控制的嵌入式處理器。一種典型解決方案需要使用諸如 NIOS 等嵌入式軟處理器。另一種解決方案則使用包含一個內(nèi)置硬處理器的 SoC 器件。圖 1 示出了一個典型的 Altera FPGA 系統(tǒng),該系統(tǒng)包含處理器和一系列通過 Avalon 內(nèi)存映射 (MM) 總線連接的外設(shè)。這些處理器極大地簡化了最終應(yīng)用,但是要求開發(fā)人員擁有堅實的編程背景和精細復(fù)雜工具??的相關(guān)知識。這會阻礙調(diào)試工作的推進,特別是如果硬件工程師需要一種不會煩擾軟件工程師即可完成外設(shè)讀寫的簡單方法。 圖 1:通過 Avalon 內(nèi)存映射 (MM) 總線連接的典型 Altera FPGA 系統(tǒng) 該設(shè)計思想運用了 Altera 的 SPI 從端至 Avalon MM 橋接器,以提供一種跳上 Avalon 總線的簡單方法。采用這種方法有兩項優(yōu)勢:它并未損害原始系統(tǒng)設(shè)計,而且該橋接器能夠與嵌入式處理器共存。對于圖 1 中所示的系統(tǒng),SPI-Avalon MM 橋接器將允許設(shè)計師直接控制 LTC6948 分數(shù) N PLL 的頻率,設(shè)定 LTC1668 DAC 電壓,從 LTC2498 讀取一個電壓,或者從 LTC2983 讀取溫度,就像處理器一樣。 圖 2:熒光筆 示例代碼 反向工程 = Python 腳本 Altera 提供了一款針對 SPI-Avalon MM 橋接器的參考設(shè)計。不幸的是,文檔充其量是稀少的,并且使用一個 NIOS 處理器作為 SPI 主控器。這實際上違背了 SPI 橋接器的初衷,因為 NIOS 處理器可直接連接至 Avalon MM 總線。一款實用的 SPI 主控器是凌力爾特的 Linduino?微控制器,它是具有附加特性的 Arduino 克隆產(chǎn)品,以與 LT 演示板相連接。附加特性之一是電平移位 SPI 端口。當連接至具有低至 1.2V 電壓的 FPGA I/O 塊時,這種電平移位功能是特別有幫助的。Linduino 固件可用于通過一個虛擬 COM 端口接受命令并把命令轉(zhuǎn)化為 SPI 事務(wù)處理。 在對 Altera 實例設(shè)計實施了反向工程之后 (圖 2 的左側(cè)),開發(fā)一個 Python 庫以生成橋接器將要接受的數(shù)據(jù)包。這些數(shù)據(jù)包隨后被轉(zhuǎn)化為 Linduino 命令。這樣,一個簡單的 Python 腳本使得硬件工程師能夠全面地控制項目,并不需要徹底改變接口協(xié)議。在 LinearLabTools Python 文件夾中提供了一個控制用于 LTC1668 DAC 的數(shù)字圖形發(fā)生器之頻率的 Python 腳本實例,可登錄?獲取。圖 3 示出了演示設(shè)置。 圖 3:DC2459 在工作中 圖 4 給出了 FPGA 系統(tǒng)的方框圖。請注意,數(shù)控振蕩器 (DCO) 可由移位寄存器或 PIO 內(nèi)核來控制。內(nèi)置移位寄存器用于調(diào)試,因為它提供了 NCO 的直接控制。把 GPIO 線邏輯電平設(shè)定為“高”將使能 SPI-Avalon MM 橋接器,該橋接器接著通過 Avalon MM 總線控制一個 32 位 PIO 端口。然后,PIO 輸出控制 NCO 頻率。 圖 4:DC2459A FPGA 系統(tǒng)方框圖 當最基本的系統(tǒng)運行時,可以把額外的 Avalon 外設(shè) IP 內(nèi)核連接至 Avalon MM 總線。為了設(shè)計系統(tǒng),Altera 提供了一款被稱為 Qsys 的系統(tǒng)集成工具。這款工具提供一個 GUI 以相互連接 IP。Qsys 隨后被用于把 GUI 系統(tǒng)轉(zhuǎn)化為硬件描述語言 (HDL) Verilog。圖 5 示出了該 GUI。最后,系統(tǒng)將被添加至用于實施的頂層。IP 的地址是完全可配置的。就給出的實例而言,PIO 被設(shè)定在一個 0x0 的基地址單元。 圖 5:Qsys GUI 一旦在 FPGA 中實現(xiàn)了設(shè)計,則 LinearLabTools 中提供的 Python 庫包含兩個函數(shù)以與設(shè)計接口: transaction_write(dc2026, base, write_size, data) transaction_read(dc2026, base, read_size) 這些函數(shù)的第一個參數(shù)是 Linduino 串行端口實例。第二個參數(shù)是外設(shè)在 Avalon 總線上的地址。這些函數(shù)分別接受和返還字節(jié)列表。編寫這兩個函數(shù)以在讀和寫 IP 時提供靈活性。如欲設(shè)定用于所提供實例的 NCO,則所需的就是 transaction_write 函數(shù)。 公式 1 用于確定頻率控制字。 公式 1:頻率控制字 = (期望的頻率/系統(tǒng)時鐘頻率) x 232 如欲把 NCO 設(shè)定至 1kHz 和一個 50Msps 采樣速率,則頻率控制字數(shù)值 = 85899。該數(shù)值用十六進制來表示即為 0x00014F8B,其作為一個 4 字節(jié)列表進行傳遞。于是,用于把 DAC 設(shè)定至 1kHz 的 Python 代碼為: transaction_write(linduino_serial_instance, 0, 0, [0x0,0x01,0x4F, 0x8B]) 注:根據(jù)邏輯設(shè)計,PIO 的基地址為零。 圖 6:Python Avalon 總線示例 提供了一個圖 6 所示的簡單 Python 腳本,以演示 FPGA 設(shè)計和 Python 腳本的接口。它包含一個簡單的文本接口以配置 NCO。一個重要提示是 Avalon SPI 橋接器采用 SPI Mode 3。這是痛苦地通過反復(fù)試驗而確定正確模式;并通過分析 Altera 實例中的 NIOS 處理器 SPI 接口進行驗證。 總括來說,該實例項目展示了完全無需“接觸”嵌入式處理器便可控制系統(tǒng)的能力。這讓硬件工程師不必麻煩軟件工程師就能在項目方面取得進展。這種方法的好處可以悄然地添加至 FPGA,并不會影響原始設(shè)計。硬件工程師可以把精力集中在硬件上。 (mbbeetchina)
FPGA plc 可編程 Verilog
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1491次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  95次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  11次下載  |  免費
  11. 6100W短波放大電路圖
  12. 0.05 MB  |  4次下載  |  3 積分
  13. 7基于單片機和 SG3525的程控開關(guān)電源設(shè)計
  14. 0.23 MB  |  4次下載  |  免費
  15. 8基于AT89C2051/4051單片機編程器的實驗
  16. 0.11 MB  |  4次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關(guān)電源設(shè)計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537793次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費