侵權投訴

【ZYNQ Ultrascale+ MPSOC FPGA教程】第八章FPGA片內FIFO讀寫測試實驗

FPGA技術專欄 ? 2021-01-22 09:45 ? 次閱讀

原創聲明:

本原創教程由芯驛電子科技(上海)有限公司(ALINX)創作,版權歸本公司所有,如需轉載,需授權并注明出處。

適用于板卡型號:

AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P/AXU9EG/AXU15EG

實驗Vivado工程為“fifo_test”。

FIFO是FPGA應用當中非常重要的模塊,廣泛用于數據的緩存,跨時鐘域數據處理等。學好FIFO是FPGA的關鍵,靈活運用好FIFO是一個FPGA工程師必備的技能。本章主要介紹利用XILINX提供的FIFOIP進行讀寫測試

1.實驗原理

FIFO:Firstin,Firstout代表先進的數據先出,后進的數據后出。Xilinx在VIVADO里為我們已經提供了FIFO的IP核,我們只需通過IP核例化一個FIFO,根據FIFO的讀寫時序來寫入和讀取FIFO中存儲的數據。

其實FIFO是也是在RAM的基礎上增加了許多功能,FIFO的典型結構如下,主要分為讀和寫兩部分,另外就是狀態信號,空和滿信號,同時還有數據的數量狀態信號,與RAM最大的不同是FIFO沒有地址線,不能進行隨機地址讀取數據,什么是隨機讀取數據呢,也就是可以任意讀取某個地址的數據。而FIFO則不同,不能進行隨機讀取,這樣的好處是不用頻繁地控制地址線。

o4YBAGAKLjSAZDBTAABLhrdLeUk478.jpg

雖然用戶看不到地址線,但是在FIFO內部還是有地址的操作的,用來控制RAM的讀寫接口。其地址在讀寫操作時如下圖所示,其中深度值也就是一個FIFO里最大可以存放多少個數據。初始狀態下,讀寫地址都為0,在向FIFO中寫入一個數據后,寫地址加1,從FIFO中讀出一個數據后,讀地址加1。此時FIFO的狀態即為空,因為寫了一個數據,又讀出了一個數據。

pIYBAGAKLjWAAEloAABLKPOvKBU642.jpg

可以把FIFO想象成一個水池,寫通道即為加水,讀通道即為放水,假如不間斷的加水和放水,如果加水速度比放水速度快,那么FIFO就會有滿的時候,如果滿了還繼續加水就會溢出overflow,如果放水速度比加水速度快,那么FIFO就會有空的時候,所以把握好加水與放水的時機和速度,保證水池一直有水是一項很艱巨的任務。也就是判斷空與滿的狀態,擇機寫數據或讀數據。

根據讀寫時鐘,可以分為同步FIFO(讀寫時鐘相同)和異步FIFO(讀寫時鐘不同)。同步FIFO控制比較簡單,不再介紹,本節實驗主要介紹異步FIFO的控制,其中讀時鐘為75MHz,寫時鐘為100MHz。實驗中會通過VIVADO集成的在想邏輯分析儀ila,我們可以觀察FIFO的讀寫時序和從FIFO中讀取的數據。

2.創建Vivado工程

2.1添加FIFOIP核

在添加FIFOIP之前先新建一個fifo_test的工程,然后在工程中添加FIFOIP,方法如下:

2.1.1點擊下圖中IPCatalog,在右側彈出的界面中搜索fifo,找到FIFOGenerator,雙擊打開。

o4YBAGAKLjWAW1INAACGE_muVv0644.jpg

2.1.2彈出的配置頁面中,這里可以選擇讀寫時鐘分開還是用同一個,一般來講我們使用FIFO為了緩存數據,通常兩邊的時鐘速度是不一樣的。所以獨立時鐘是最常用的,我們這里選擇“IndependentClocksBlockRAM”,然后點擊“Next”到下一個配置頁面。

pIYBAGAKLjaARCIAAACb92CE6CA859.jpg

2.1.3切換到NativePorts欄目下,選擇數據位寬16;FIFO深選擇512,實際使用大家根據需要自行設置就可以。ReadMode有兩種方式,一個StandardFIFO,也就是平時常見的FIFO,數據滯后于讀信號一個周期,還有一種方式為FirstWordFallThrough,數據預取模式,簡稱FWFT模式。也就是FIFO會預先取出一個數據,當讀信號有效時,相應的數據也有效。我們首先做標準FIFO的實驗。

o4YBAGAKLjaAJ8VzAABRcVxPElY348.jpg

2.1.4切換到DataCounts欄目下,使能WriteDataCount(已經FIFO寫入多少數據)和ReadDataCount(FIFO中有多少數據可以讀),這樣我們可以通過這兩個值來看FIFO內部的數據多少。點擊OK,Generate生成FIFOIP。

pIYBAGAKLjeAFWzLAAB-Ay6_q90942.jpg

2.2FIFO的端口定義與時序

信號名稱方向說明
rstin復位信號,高有效
wr_clkin寫時鐘輸入
rd_clkin讀時鐘輸入
dinin寫數據
wr_enin寫使能,高有效
rd_enin讀使能,高有效
doutout讀數據
fullout滿信號
emptyout空信號
rd_data_countout可讀數據數量
wr_data_countout已寫入的數據數量

FIFO的數據寫入和讀出都是按時鐘的上升沿操作的,當wr_en信號為高時寫入FIFO數據,當almost_full信號有效時,表示FIFO只能再寫入一個數據,一旦寫入一個數據了,full信號就會拉高,如果在full的情況下wr_en仍然有效,也就是繼續向FIFO寫數據,則FIFO的overflow就會有效,表示溢出。

o4YBAGAKLjeAAXVAAACCecptl1A817.jpg標準FIFO寫時序

當rd_en信號為高時讀FIFO數據,數據在下個周期有效。valid為數據有效信號,almost_empty表示還有一個數據讀,當再讀一個數據,empty信號有效,如果繼續讀,則underflow有效,表示下溢,此時讀出的數據無效。

pIYBAGAKLjiAKGTVAABxkw-Snmw397.jpg標準FIFO讀時序

而從FWFT模式讀數據時序圖可以看出,rd_en信號有效時,有效數據D0已經在數據線上準備好有效了,不會再延后一個周期。這就是與標準FIFO的不同之處。

o4YBAGAKLjiAQm9TAABt-HnXDtA296.jpgFWFTFIFO讀時序

關于FIFO的詳細內容可參考pg057文檔,可在xilinx官網下載。

3.FIFO測試程序編寫

我們按照異步FIFO進行設計,用PLL產生出兩路時鐘,分別是100MHz和75MHz,用于寫時鐘和讀時鐘,也就是寫時鐘頻率高于讀時鐘頻率。

`timescale1ns/1ps//////////////////////////////////////////////////////////////////////////////////modulefifo_test(inputclk,//25MHz時鐘inputrst_n//復位信號,低電平有效);reg[15:0]w_data;//FIFO寫數據wirewr_en;//FIFO寫使能wirerd_en;//FIFO讀使能wire[15:0]r_data;//FIFO讀數據wirefull;//FIFO滿信號wireempty;//FIFO空信號wire[8:0]rd_data_count;//可讀數據數量wire[8:0]wr_data_count;//已寫入數據數量wireclk_100M;//PLL產生100MHz時鐘wireclk_75M;//PLL產生100MHz時鐘wirelocked;//PLLlock信號,可作為系統復位信號,高電平表示lock住wirefifo_rst_n;//fifo復位信號,低電平有效wirewr_clk;//寫FIFO時鐘wirerd_clk;//讀FIFO時鐘reg[7:0]wcnt;//寫FIFO復位后等待計數器reg[7:0]rcnt;//讀FIFO復位后等待計數器wireclkbuf;BUFGBUFG_inst(.O(clkbuf),//1-bitoutput:Clockoutput..I(clk)//1-bitinput:Clockinput.);//例化PLL,產生100MHz和75MHz時鐘clk_wiz_0fifo_pll(//Clockoutports.clk_out1(clk_100M),//outputclk_out1.clk_out2(clk_75M),//outputclk_out2//Statusandcontrolsignals.reset(~rst_n),//inputreset.locked(locked),//outputlocked//Clockinports.clk_in1(clkbuf)//inputclk_in1);assignfifo_rst_n=locked;//將PLL的LOCK信號賦值給fifo的復位信號assignwr_clk=clk_100M;//將100MHz時鐘賦值給寫時鐘assignrd_clk=clk_75M;//將75MHz時鐘賦值給讀時鐘/*寫FIFO狀態機*/localparamW_IDLE=1;localparamW_FIFO=2;reg[2:0]write_state;reg[2:0]next_write_state;always@(posedgewr_clkornegedgefifo_rst_n)beginif(!fifo_rst_n)write_state<=?W_IDLE;
	else
		write_state?<=?next_write_state;endalways@(*)begin
	case(write_state)
		W_IDLE:
			begin
				if(wcnt?==8'd79)//復位后等待一定時間,safety?circuit模式下的最慢時鐘60個周期					next_write_state?<=?W_FIFO;
				else
					next_write_state?<=?W_IDLE;
			end
		W_FIFO:
			next_write_state?<=?W_FIFO;			//一直在寫FIFO狀態		default:
			next_write_state?<=?W_IDLE;
	endcaseend//在IDLE狀態下,也就是復位之后,計數器計數always@(posedge?wr_clk?ornegedge?fifo_rst_n)begin
	if(!fifo_rst_n)
		wcnt?<=8'd0;
	elseif(write_state?==?W_IDLE)
		wcnt?<=?wcnt?+1'b1;
	else
		wcnt?<=8'd0;end//在寫FIFO狀態下,如果不滿就向FIFO中寫數據assign?wr_en?=(write_state?==?W_FIFO)?~full?:1'b0;//在寫使能有效情況下,寫數據值加1always@(posedge?wr_clk?ornegedge?fifo_rst_n)begin
	if(!fifo_rst_n)
		w_data?<=16'd1;
	elseif(wr_en)
		w_data?<=?w_data?+1'b1;end/*?讀FIFO狀態機?*/localparam??????R_IDLE??????=1	;localparam??????R_FIFO?????	=2	;reg[2:0]??read_state;reg[2:0]??next_read_state;///產生FIFO讀的數據always@(posedge?rd_clk?ornegedge?fifo_rst_n)begin
	if(!fifo_rst_n)
		read_state?<=?R_IDLE;
	else
		read_state?<=?next_read_state;endalways@(*)begin
	case(read_state)
		R_IDLE:
			begin
				if(rcnt?==8'd59)	//復位后等待一定時間,safety?circuit模式下的最慢時鐘60個周期					next_read_state?<=?R_FIFO;
				else
					next_read_state?<=?R_IDLE;
			end
		R_FIFO:	
			next_read_state?<=?R_FIFO?;			//一直在讀FIFO狀態		default:
			next_read_state?<=?R_IDLE;
	endcaseend//在IDLE狀態下,也就是復位之后,計數器計數always@(posedge?rd_clk?ornegedge?fifo_rst_n)begin
	if(!fifo_rst_n)
		rcnt?<=8'd0;
	elseif(write_state?==?W_IDLE)
		rcnt?<=?rcnt?+1'b1;
	else
		rcnt?<=8'd0;end//在讀FIFO狀態下,如果不空就從FIFO中讀數據assign?rd_en?=(read_state?==?R_FIFO)?~empty?:1'b0;//-----------------------------------------------------------//實例化FIFOfifo_ip?fifo_ip_inst?(.rst????????????(~fifo_rst_n????	),//?input?rst.wr_clk?????????(wr_clk??????????	),//?input?wr_clk.rd_clk?????????(rd_clk??????????	),//?input?rd_clk.din????????????(w_data???????	),//?input?[15?:?0]?din.wr_en??????????(wr_en????????	),//?input?wr_en.rd_en??????????(rd_en????????	),//?input?rd_en.dout???????????(r_data???????	),//?output?[15?:?0]?dout.full???????????(full?????????	),//?output?full.empty??????????(empty????????	),//?output?empty.rd_data_count??(rd_data_count	),//?output?[8?:?0]?rd_data_count.wr_data_count??(wr_data_count	)//?output?[8?:?0]?wr_data_count);//寫通道邏輯分析儀ila_m0?ila_wfifo?(
	.clk		(wr_clk			),
	.probe0		(w_data			),	
	.probe1		(wr_en			),	
	.probe2		(full			),		
	.probe3		(wr_data_count	));//讀通道邏輯分析儀ila_m0?ila_rfifo?(
	.clk		(rd_clk			),
	.probe0		(r_data			),	
	.probe1		(rd_en			),	
	.probe2		(empty			),		
	.probe3		(rd_data_count	));
	endmodule

在程序中采用PLL的lock信號作為fifo的復位,同時將100MHz時鐘賦值給寫時鐘,75MHz時鐘賦值給讀時鐘。

pIYBAGAKLjiAAwvGAAA_nneiMx8957.jpg

有一點需要注意的是,FIFO設置默認為采用safetycircuit,此功能是保證到達內部RAM的輸入信號是同步的,在這種情況下,如果異步復位后,則需要等待60個最慢時鐘周期,在本實驗中也就是75MHz的60個周期,那么100MHz時鐘大概需要(100/75)x60=80個周期。

o4YBAGAKLjmABmUwAAEv4rMJnkE142.jpg

因此在寫狀態機中,等待80個周期進入寫FIFO狀態

pIYBAGAKLjmAb9MdAAA7cx7i5Dk736.jpg

在讀狀態機中,等待60個周期進入讀狀態

o4YBAGAKLjqABJMBAABxRY3H-0o324.jpg

如果FIFO不滿,就一直向FIFO寫數據

o4YBAGAKLjuAalN_AAAj13yUJsg023.jpg

如果FIFO不空,就一直從FIFO讀數據

pIYBAGAKLjuAfV3fAAAU083a6wA674.jpg

例化兩個邏輯分析儀,分別連接寫通道和讀通道的信號

o4YBAGAKLjyAJ9YRAAAlOySHdx8062.jpg

4.仿真

以下為仿真結果,可以看到寫使能wr_en有效后開始寫數據,初始值為0001,從開始寫到empty不空,是需要一定周期的,因為內部還要做同步處理。在不空后,開始讀數據,讀出的數據相對于rd_en滯后一個周期。

pIYBAGAKLjyAWBVoAAB5OapzUlA894.jpg

在后面可以看到如果FIFO滿了,根據程序的設計,滿了就不向FIFO寫數據了,wr_en也就拉低了。為什么會滿呢,就是因為寫時鐘比讀時鐘快。如果將寫時鐘與讀時鐘調換,也就是讀時鐘快,就會出現讀空的情況,大家可以試一下。

o4YBAGAKLj2AS_PBAACJdMUQXZI456.jpg

如果將FIFO的ReadMode改成FirstWordFallThrough

pIYBAGAKLj6ANj9JAABq3rplyZI241.jpg

仿真結果如下,可以看到rd_en有效的時候數據也有效,沒有相差一個周期

o4YBAGAKLj6ALf_7AAB92agic-o492.jpg

5.板上驗證

生成好bit文件,下載bit文件,會出現兩個ila,先來看寫通道的,可以看到full信號為高電平時,wr_en為低電平,不再向里面寫數據。

pIYBAGAKLj-AalwOAACH8Z5EqA0818.jpg

而讀通道也與仿真一致

o4YBAGAKLj-AW9wkAAB-pRU40VM994.jpg

如果以rd_en上升沿作為觸發條件,點擊運行,然后按下復位,也就是我們綁定的PLKEY1,會出現下面的結果,與仿真一致,標準FIFO模式下,數據滯后rd_en一個周期。

pIYBAGAKLkCAd7uQAACF3AzQlpA206.jpg

收藏 人收藏
分享:

評論

相關推薦

QuartusⅡ的簡介和使用Verilog設計的教程詳細說明

本教程介紹Quartus R:II CAD系統。它給出了一個典型的CAD流程的概述,用于設計使用FP....
發表于 01-25 16:30 ? 17次 閱讀
QuartusⅡ的簡介和使用Verilog設計的教程詳細說明

SignalTapⅡ的VHDL設計資料詳細說明

本教程介紹如何在Altera的Quartus R II軟件中使用SignalTap II功能。Sig....
發表于 01-25 16:29 ? 13次 閱讀
SignalTapⅡ的VHDL設計資料詳細說明

帶Verilog設計的SignalTapII資料詳細說明

本教程介紹如何在Altera的Quartus R II軟件中使用SignalTap II功能。Sig....
發表于 01-25 16:29 ? 9次 閱讀
帶Verilog設計的SignalTapII資料詳細說明

使用Verilog設計的Quartus-II仿真資料免費下載

Quartus II軟件包括一個模擬器,可用于模擬為Altera可編程邏輯器件實現而設計的電路的行為....
發表于 01-25 16:29 ? 12次 閱讀
使用Verilog設計的Quartus-II仿真資料免費下載

如何使用FPGA實現Bayer到RGB圖像格式轉換的設計

利用FPGA處理數據量大、處理速度快,結合CMOS圖像傳感器MT9M001和BayerCFA格式圖像....
發表于 01-25 16:04 ? 12次 閱讀
如何使用FPGA實現Bayer到RGB圖像格式轉換的設計

如何使用FPGA實現CCD掃描缺陷的檢測實時數據處理技術的論文說明

本文利用FPGA并行結構、運算速度快的特點實現了材料缺陷的實時檢測。搭建了以FPGA為核心的缺陷數據....
發表于 01-25 16:04 ? 12次 閱讀
如何使用FPGA實現CCD掃描缺陷的檢測實時數據處理技術的論文說明

如何使用FPGA實現3D頭盔顯示設備的研究論文

圖像顯示器是人類接受外部信息的重要手段之一。而立體顯示則能再現場景的三維信息,提供場景更為全面、詳實....
發表于 01-25 16:04 ? 13次 閱讀
如何使用FPGA實現3D頭盔顯示設備的研究論文

如何使用FPGA實現3D頭盔顯示設備的研究論文

圖像顯示器是人類接受外部信息的重要手段之一。而立體顯示則能再現場景的三維信息,提供場景更為全面、詳實....
發表于 01-25 16:04 ? 14次 閱讀
如何使用FPGA實現3D頭盔顯示設備的研究論文

如何使用DSP和FPGA技術實現細胞圖像采集系統的設計

細胞學研究領域中需要對大量細胞的生長情況進行長期的在線跟蹤、記錄和分析,針對細胞圖像采集和處理中的數....
發表于 01-25 16:04 ? 8次 閱讀
如何使用DSP和FPGA技術實現細胞圖像采集系統的設計

如何使用DSP和FPGA實現紅外圖像銳化算法的實現

為了改善紅外圖像的成像質量,根據紅外圖像的特點,提出了一種改進的拉普拉斯銳化算法——受限拉普拉斯銳化....
發表于 01-25 16:04 ? 12次 閱讀
如何使用DSP和FPGA實現紅外圖像銳化算法的實現

Altera FPGA CPLD設計高級篇的電子書免費下載

本書結合作者多年工作經驗,深入地討論了Altera FPGA/CPLD的設計和優化技巧。在討論FPG....
發表于 01-25 15:25 ? 12次 閱讀
Altera FPGA CPLD設計高級篇的電子書免費下載

FPGA開發全攻略工程師創新設計寶典基礎篇PDF電子書免費下載

FPGA 是英文Field Programmable Gate Array 的縮寫,即現場可編程門陣....
發表于 01-25 15:24 ? 13次 閱讀
FPGA開發全攻略工程師創新設計寶典基礎篇PDF電子書免費下載

FPGA開發全攻略工程師創新設計寶典技巧篇電子書免費下載

對于需要在PCB 板上使用大規模FPGA 器件的設計人員來說,I/O 引腳分配是必須面對的眾多挑戰之....
發表于 01-25 15:24 ? 15次 閱讀
FPGA開發全攻略工程師創新設計寶典技巧篇電子書免費下載

CPLD FPGA的快速入門學習教程免費下載

當今社會,隨著電子行業的發展,大規模集成電路的運用越來越普遍,用CPLD/FPGA來開發新產品是當前....
發表于 01-25 15:24 ? 11次 閱讀
CPLD FPGA的快速入門學習教程免費下載

Altera FPGA CPLD設計基礎篇的電子書免費下載

本書結合作者多年工作經驗,系統地介紹了FPGA/CPLD的基本設計方法。在介紹FPGA/CPLD概念....
發表于 01-25 15:24 ? 7次 閱讀
Altera FPGA CPLD設計基礎篇的電子書免費下載

如何在FPGA中實現SPI4.2接口

偏移和包重組是在FPGA中實現SPI一4.2接口的核心難點,在分析偏移和包重組原理的基礎E,給出基于....
發表于 01-25 14:51 ? 11次 閱讀
如何在FPGA中實現SPI4.2接口

使用FPGA實現無線局域網的OFDM基帶調帶的設計論文免費下載

針對802.1l無線局域網設計當中OFDM調制端基帶部分的成形,提出了FPGA的具體實現方法。在數據....
發表于 01-25 14:51 ? 9次 閱讀
使用FPGA實現無線局域網的OFDM基帶調帶的設計論文免費下載

使用FPGA實現全彩色OLED動態視頻顯示控制的詳細資料說明

在分析有機電致發光顯示器(OLED)顯示方法和灰度實現方式的基礎上提出了基于四分場的數字灰度方案。介....
發表于 01-25 14:51 ? 13次 閱讀
使用FPGA實現全彩色OLED動態視頻顯示控制的詳細資料說明

使用FPGA實現流水線結構的FFT處理器論文講解

針對高速實時信號處理的要求,介紹了用現場可編程邏輯陣列(FPGA)實現的一種流水線結構的FFT處理器....
發表于 01-25 14:51 ? 9次 閱讀
使用FPGA實現流水線結構的FFT處理器論文講解

使用FPGA實現視頻圖像縮放顯示的設計論文說明

對幾種常用的圖像縮放算法進行了比較,在權衡了算法復雜度、縮放效果和FPGA 邏輯資源等3大因素后,選....
發表于 01-25 14:51 ? 9次 閱讀
使用FPGA實現視頻圖像縮放顯示的設計論文說明

一個關于QSYS SDRAM的時序約束問題

請問調用QSYS SDRAM控制器出現這種時序問題的原因是什么? 像這種出現在IP核內部的問題不知道該怎么解決好, 是因為...
發表于 01-25 14:33 ? 17次 閱讀
一個關于QSYS SDRAM的時序約束問題

LTE物理上行共享信道中FFT算法分析與FPGA實現

快速傅里葉變換FFT作為數字信號處理的核心技術之一,使離散傅里葉變換的運算時間縮短了幾個數量級,并在....
發表于 01-25 14:27 ? 11次 閱讀
LTE物理上行共享信道中FFT算法分析與FPGA實現

AES算法中S—box和列混合單元的優化及FPGA實現的論文說明

由于AES算法的硬件實現較為復雜,在此提出一種優化算法中S—box和列混合單元的方法。其中S—box....
發表于 01-25 14:27 ? 11次 閱讀
AES算法中S—box和列混合單元的優化及FPGA實現的論文說明

CCD圖像的顏色插值算法研究及其FPGA實現的論文免費下載

論文研究了基于Bayer格式的CCD原始圖像的顏色插值算法,并將設計的改進算法應用到以FPGA為核心....
發表于 01-25 14:27 ? 7次 閱讀
CCD圖像的顏色插值算法研究及其FPGA實現的論文免費下載

BP神經網絡圖像壓縮算法乘累加單元的FPGA設計論文詳細說明

提出一種基于三層前饋BP神經網絡實現圖像壓縮算法的方案,該方案采用可重載IP核和VHDL代碼相結合的....
發表于 01-25 14:27 ? 5次 閱讀
BP神經網絡圖像壓縮算法乘累加單元的FPGA設計論文詳細說明

FPGA實現滑動平均濾波算法和LZW壓縮算法的論文資料說明

針對數據采集系統高速長時間的采樣和后端數據傳榆及存儲能力有限的問題,提出基于FPGA的數據壓縮解決方....
發表于 01-25 14:26 ? 9次 閱讀
FPGA實現滑動平均濾波算法和LZW壓縮算法的論文資料說明

基于FPGA的圖像裁剪電路的設計與實現

發表于 01-25 14:07 ? 0次 閱讀
基于FPGA的圖像裁剪電路的設計與實現

“芯”危機下汽車級芯片的尖峰時刻,高云AEC Q-100認證FPGA助力國內汽車市場

高云半導體從2018年開始部署汽車級芯片,芯片架構、模塊設計全流程采用汽車級芯片設計規范,汽車級晶圓....
發表于 01-25 11:33 ? 194次 閱讀
“芯”危機下汽車級芯片的尖峰時刻,高云AEC Q-100認證FPGA助力國內汽車市場

異構計算時代正在到來

英特爾,這位CPU領域的絕對王者開始頻頻與“軟件為先”和“XPU”等詞進行捆綁。同樣值得關注的是英特....
的頭像 我快閉嘴 發表于 01-25 11:15 ? 167次 閱讀
異構計算時代正在到來

機器人處理問題太慢?FPGA芯片實測速度超GPU 86倍

據 MITNews 報道,麻省理工學院計算科學和人工智能實驗室(CSAIL)的博士 Sabrina ....
的頭像 璟琰乀 發表于 01-25 10:28 ? 251次 閱讀
機器人處理問題太慢?FPGA芯片實測速度超GPU 86倍

功能仿真正確,但是板級調試沒有反應

實現急用固定脈沖實現led的控制,觸發信號如仿真結果中的clk和sda所示,已用示波器觀察過,功能仿真結果也如圖,代碼如下,求高人...
發表于 01-25 10:12 ? 20次 閱讀
功能仿真正確,但是板級調試沒有反應

MII/RMII/GMII/RGMII是什么看了就知道

基于FPGA千兆以太網的開發
發表于 01-25 08:00 ? 0次 閱讀
MII/RMII/GMII/RGMII是什么看了就知道

基于Verilog語言的實用FPGA設計的PDF電子書免費下載

《基于Verilog語言的實用FPGA設計》中,K.科夫曼結合其工作實踐,講解了利用Verilog進....
發表于 01-25 08:00 ? 9次 閱讀
基于Verilog語言的實用FPGA設計的PDF電子書免費下載

Virtex-4 FPGA的封裝與引腳規范的詳細說明

本節介紹0.80 mm和1.00 mm間距倒裝芯片細間距BGA封裝中Virtex-4設備的引腳。Vi....
發表于 01-25 08:00 ? 10次 閱讀
Virtex-4 FPGA的封裝與引腳規范的詳細說明

單片機/ARM/FPGA/嵌入式系統的特點

單片機的特點 ARM的特點 FPGA的特點 嵌入式系統的特點 ...
發表于 01-25 07:52 ? 0次 閱讀
單片機/ARM/FPGA/嵌入式系統的特點

Abaco Systems推出下一代FPGA板卡VP831 專為最惡劣環境運行設計

作為VP889的SOSA標準對齊變體,VP831以3U VPX尺寸提供了嵌入式FPGA計算解決方案,....
發表于 01-24 11:37 ? 299次 閱讀
Abaco Systems推出下一代FPGA板卡VP831 專為最惡劣環境運行設計

VHDL語言的詳細講解學習課件免費下載

本文檔的主要內容詳細介紹的是VHDL語言的詳細講解學習課件免費下載包括了: ⅥHLD概述 VHLD的....
發表于 01-22 17:52 ? 34次 閱讀
VHDL語言的詳細講解學習課件免費下載

哪里可以找到 XILINX Virtex-5 FPGA的demo

我想設計一款系統板,在哪里可以找到demo呢
發表于 01-22 16:21 ? 95次 閱讀
哪里可以找到  XILINX   Virtex-5 FPGA的demo

使用FPGA設計實現FIR數字濾波器的詳細資料說明

為了研究不同結構的nR數字濾波器FPGA實現對數字多普勒接收機中n,GA器件資源消耗及其實現的濾波器....
發表于 01-22 16:12 ? 43次 閱讀
使用FPGA設計實現FIR數字濾波器的詳細資料說明

如何使用FPGA實現ECT圖像重建的算法

支持向量機(svM)在解決小樣本,非線性及高維模式識別問題等方面有許多優勢,但在處理大規模數據集時訓....
發表于 01-22 16:12 ? 36次 閱讀
如何使用FPGA實現ECT圖像重建的算法

使用FPGA實現DVI輸出圖像選區截取的詳細資料說明

介紹了數字視頻接口(DVI)解碼芯片Silll61的功能及其外圍配置、DDC通道及編輯EDID的方法....
發表于 01-22 16:12 ? 30次 閱讀
使用FPGA實現DVI輸出圖像選區截取的詳細資料說明

DLMS高速自適應濾波器的FPGA實現

在分析傳統自適應濾波算法的基礎上,針對自適應濾波器的硬件實現,采用一種適合FPGA實現的DLMS算法....
發表于 01-22 16:12 ? 27次 閱讀
DLMS高速自適應濾波器的FPGA實現

如何使用FPGA實現CORDIC算法在跟蹤環中的應用

主要介紹了坐標旋轉數字計算(CORDIC)算法在US,g,鑒別器中的應用,包括碼跟蹤環、鎖頻環和鎖相....
發表于 01-22 16:12 ? 24次 閱讀
如何使用FPGA實現CORDIC算法在跟蹤環中的應用

如何使用VHDL設計Altera的DE2板上SDRAM存儲器

本教程介紹如何將Altera的DE2開發和教育板上的SDRAM芯片與使用Altera SOPC Bu....
發表于 01-22 15:34 ? 36次 閱讀
如何使用VHDL設計Altera的DE2板上SDRAM存儲器

AlteraNiosⅡ軟處理器的詳細資料簡介

本教程介紹Altera的Nios R II處理器,這是一種可以在Altera FPGA設備上實例化的....
發表于 01-22 15:34 ? 45次 閱讀
AlteraNiosⅡ軟處理器的詳細資料簡介

使用FPGA實現機載全姿態指示儀圖形硬件填充的詳細資料說明

論述一種基于DSP和FPGA的機載圖形顯示系統,并提出一種新穎的基于FPGA的動態畫面的硬件填充方法....
發表于 01-22 15:08 ? 27次 閱讀
使用FPGA實現機載全姿態指示儀圖形硬件填充的詳細資料說明

使用FPGA實現800Mbps準循環LDPC碼譯碼器的詳細資料說明

本文提出了一種適用于準循環低密度校驗碼的低復雜度的高并行度譯碼器架構。通常準循環低密度校驗碼不適于設....
發表于 01-22 15:08 ? 29次 閱讀
使用FPGA實現800Mbps準循環LDPC碼譯碼器的詳細資料說明

使用FPGA實現MELP語音壓縮編碼器的詳細資料說明

基于CPU軟核模塊算法IP的方法對一個1.6Kb/s類MELP語音壓縮編碼算法進行了實現,并將整個語....
發表于 01-22 15:08 ? 25次 閱讀
使用FPGA實現MELP語音壓縮編碼器的詳細資料說明

使用FPGA實現RTEP實時事件處理器的方案詳細說明

閃電是中尺度,特別是中一Y尺度天氣系統研究的有力工具。閃電成像儀主要利用4種方法組合來實現閃電信號的....
發表于 01-22 15:08 ? 33次 閱讀
使用FPGA實現RTEP實時事件處理器的方案詳細說明

如何使用XScale和FPGA實現微小型飛行器控制系統的硬件設計

以微小型飛行器為控制對象,設計了一種基于Xscale+FPGA的雙芯片微小型數字控制系統.該系統用基....
發表于 01-22 15:08 ? 32次 閱讀
如何使用XScale和FPGA實現微小型飛行器控制系統的硬件設計

如何使用XScale和FPGA實現微小型飛行器控制系統的硬件設計

以微小型飛行器為控制對象,設計了一種基于Xscale+FPGA的雙芯片微小型數字控制系統.該系統用基....
發表于 01-22 15:08 ? 23次 閱讀
如何使用XScale和FPGA實現微小型飛行器控制系統的硬件設計

使用FPGA實現超寬帶無線通信跳時控制器的研究說明

 針對基于脈沖位置調制的超寬帶無線電發射系統中的跳時控制這一關鍵技術,提出了利用FPGA和可編程延時....
發表于 01-22 14:29 ? 30次 閱讀
使用FPGA實現超寬帶無線通信跳時控制器的研究說明

使用FPGA實現高速串行交換模塊的方法詳細說明

采用Xlinx公司的Virtex5系列FPGA設計了一個用于多種高速串行協議的數據交換模塊,并解決了....
發表于 01-22 14:29 ? 32次 閱讀
使用FPGA實現高速串行交換模塊的方法詳細說明

使用FPGA控制的高速圖像實時存儲的資料詳細說明

在高速圖像采集中.需要對采集的大量數據進行實時存儲。介紹了一種基于FPGA控制的高速圖像實時存儲系統....
發表于 01-22 14:29 ? 16次 閱讀
使用FPGA控制的高速圖像實時存儲的資料詳細說明

Vivado下按鍵實驗詳解

  適用于板卡型號:   AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5E...
發表于 01-22 06:46 ? 0次 閱讀
Vivado下按鍵實驗詳解

如何選擇Xilinx的FPGA產品

 Xilinx的FPGA、SoC、MPSoC、RFSoC和ACAP產品介紹 使用Xilinx的FPGA、SoC和ACAP進行設計和開發...
發表于 01-22 06:38 ? 0次 閱讀
如何選擇Xilinx的FPGA產品

如何調試Zynq UltraScale+ MPSoC VCU DDR控制器

如何調試 Zynq UltraScale+ MPSoC VCU DDR 控制器?
發表于 01-22 06:29 ? 0次 閱讀
如何調試Zynq UltraScale+ MPSoC VCU DDR控制器

TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

TMP411設備是一個帶有內置本地溫度傳感器的遠程溫度傳感器監視器。遠程溫度傳感器,二極管連接的晶體管通常是低成本,NPN或PNP型晶體管或二極管,是微控制器,微處理器或FPGA的組成部分。 遠程精度為±1 °C適用于多個設備制造商,無需校準。雙線串行接口接受SMBus寫字節,讀字節,發送字節和接收字節命令,以設置報警閾值和讀取溫度數據。 TMP411器件中包含的功能包括:串聯電阻取消,可編程非理想因子,可編程分辨率,可編程閾值限制,用戶定義的偏移寄存器,用于最大精度,最小和最大溫度監視器,寬遠程溫度測量范圍(高達150°C),二極管故障檢測和溫度警報功能。 TMP411器件采用VSSOP-8和SOIC-8封裝。 特性 ±1°C遠程二極管傳感器 ±1°C本地溫度傳感器 可編程非理想因素 串聯電阻取消 警報功能 系統校準的偏移寄存器 與ADT7461和ADM1032兼容的引腳和寄存器 可編程分辨率:9至12位 可編程閾值限...
發表于 09-19 16:35 ? 237次 閱讀
TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

TMP468 具有引腳可編程的總線地址的高精度遠程和本地溫度傳感器

TMP468器件是一款使用雙線制SMBus或I 2 C兼容接口的多區域高精度低功耗溫度傳感器。除了本地溫度外,還可以同時監控多達八個連接遠程二極管的溫度區域。聚合系統中的溫度測量可通過縮小保護頻帶提升性能,并且可以降低電路板復雜程度。典型用例為監測服務器和電信設備等復雜系統中不同處理器(如MCU,GPU和FPGA)的溫度。該器件將諸如串聯電阻抵消,可編程非理想性因子,可編程偏移和可編程溫度限值等高級特性完美結合,提供了一套精度和抗擾度更高且穩健耐用的溫度監控解決方案。 八個遠程通道(以及本地通道)均可獨立編程,設定兩個在測量位置的相應溫度超出對應值時觸發的閾值。此外,還可通過可編程遲滯設置避免閾值持續切換。 TMP468器件可提供高測量精度(0.75°C)和測量分辨率(0.0 625°C)。該器件還支持低電壓軌(1.7V至3.6V)和通用雙線制接口,采用高空間利用率的小型封裝(3mm×3mm或1.6mm×1.6mm),可在計算系統中輕松集成。遠程結支持-55°C至+ 150°C的溫度范圍。 特性 8通道遠程二極管溫度傳感器精度:±0.75&...
發表于 09-18 16:05 ? 156次 閱讀
TMP468 具有引腳可編程的總線地址的高精度遠程和本地溫度傳感器
ag街机斗三公有假吗 天天博娱乐平台 泳坛夺金283体彩 山西11选5开任五遗漏 百家乐真钱娱乐 江西快3中一注多少 河内5分彩是政府开的吗 bg真人音频 舟山飞鱼手机版 体彩14场胜平负预测 11选5三码通选玩法说明 体彩p5直播开奖 双色球杀号定胆360彩 竞彩足球混合过关7串1 天津快乐十分今日走势 天津时时彩多久开一期 淘宝快3彩种