Stone_Mei的個(gè)人空間 http://selenalain.com/space-uid-139656.html [收藏] [復制] [RSS]

博客

如何使用寄存器級讀&寫(xiě)控制基于PXI平臺的FPGA?

已有 1717 次閱讀2017-9-27 20:47 |個(gè)人分類(lèi):板卡| FPGA, Altera, Quartus, FPGA Design tools, PCI

目錄

簡(jiǎn)介

設計實(shí)例概覽

   地址譯碼(Address Decoding)

   引腳控制

   寄存器映象(Register Mapping)

軟件控制

   ATEasy 例程 (使用ATEasy GX3500驅動(dòng))

   C” 例程

   LabView例程

 

 

 

 

摘要本文以基于PXI平臺的Marvin Test Solutions 3U FPGA板卡GX3500為設計對象,通過(guò)設計實(shí)例講解如何使用寄存器級讀&寫(xiě)控制FPGA,并提供FPGA設計相關(guān)文件(SVF)和軟件控制例程。

簡(jiǎn)介

為了更好地理解如何訪(fǎng)問(wèn)GX3500 FPGA的寄存器,需要有一個(gè)使用寄存器的設計。本篇文章分為兩部分內容:第一部分,以讀者已經(jīng)熟練使用Altera Quartus II設計工具為前提(參考《GX3500 Users Guide: GXFPGA Tutorial and Examples》的第五章),概述了如何使用GX3500設計128通道的靜態(tài)I/O。此設計實(shí)例配置為432通道雙向引腳,雙緩沖結構支持同步更新128通道邏輯狀態(tài)的讀和寫(xiě)。

本篇文章的第二部分講述了如何向GX3500 FPGA內加載設計文件,如何連接GX3500 I/O引腳,為了實(shí)現FPGA靜態(tài)數字I/O的操作如何對寄存器進(jìn)行讀和寫(xiě)。

1 MTS-GX3500 FPGA板卡

設計實(shí)例概覽

地址譯碼(Address Decoding)

GX3500支持對兩種類(lèi)型的PCI總線(xiàn)讀和寫(xiě)操作:一類(lèi)是針對寄存器,使用PCI BAR 1;另一類(lèi)是針對RAM,使用PCI BAR 2。靜態(tài)數字I/O設計實(shí)例使用寄存器控制對I/O引腳的讀和寫(xiě),所以使用PCI BAR 1片選信號進(jìn)行地址譯碼  Chip Select 1 (CS[1])同意。BAR 1信號可以訪(fǎng)問(wèn)的地址范圍為1024 byte0x400),訪(fǎng)問(wèn)時(shí)必須以4-byte為準對齊。 2為地址譯碼邏輯單元,將5路地址信號(Addr[6..2]))譯碼后,可提供32路“寫(xiě)使能”信號(WE[31..0])和32路“讀使能”信號(RE[31..0]),這些信號用于控制鎖存寄存器的向I/O引腳寫(xiě)入(WE[x]) )和從I/O引腳讀。RE[x])功能。

2:寄存器地址譯碼

引腳控制

本設計實(shí)例中有四組完全相同的I/O引腳(見(jiàn)圖4),每組有32路通道。每路通道都支持雙向傳輸,并可以獨立配置傳輸方向。輸出寄存器為雙緩沖結構,支持四組I/O引腳(128路通道)同步更新。第一階段,通過(guò)WE_Data控制信號,將輸出數據使用寫(xiě)入第一級數據寄存器,通過(guò)WE_Tristate寫(xiě)入三態(tài)控制信號。以上這些信號來(lái)自于WE[31..0]信號,并且這些信號在每組I/O引腳間獨立。第二階段,通過(guò)WE_UpdatePort控制信號,將第一級輸出的數據和三態(tài)控制信號寫(xiě)入第二級寄存器。以上這些信號也來(lái)自于WE[31..0]信號,但是四組I/O引腳共用以實(shí)現四組I/O引腳數據的同步更新。使用RE_Tristatelatch,RE_DataLatch,RE_TristatePortRE_DataPort控制信號訪(fǎng)問(wèn)輸出寄存器兩個(gè)階段的數據和三態(tài)控制寄存器從而進(jìn)行讀操作。

3:引腳控制邏輯單元(圖4中的Port_Control

通過(guò)RE_SamplePortIO控制信號可實(shí)現四組I/O引腳(128路通道)的所有通道同時(shí)被采樣,采樣數據被儲存在鎖存寄存器中以用于后續的數據檢索。分別通過(guò)RE_PortIO 控制信號實(shí)現數據檢索。因為每組I/O引腳的三態(tài)控制信號可以被讀,所以可以推斷出GX3500UUT是否處于采樣輸入狀態(tài)(讀狀態(tài))。

寄存器映象(Register Mapping)

下面是控制四組I/O引腳(A組、B組、C組、D組)的讀和寫(xiě)寄存器偏移地址:

寫(xiě)功能:

偏移量

(HEX)

功能

0

(0x0)

WE[0]:  


路過(guò)

雞蛋

鮮花

握手

雷人
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页