以太網(wǎng)IP核的1588功能是用來(lái)實(shí)現(xiàn),在IP內(nèi)部為T(mén)X側(cè)發(fā)送包打上發(fā)送出去這個(gè)時(shí)間節(jié)點(diǎn)的時(shí)間戳,以及獲得RX側(cè)收回來(lái)的包在IP接口處的時(shí)間戳。然而10G/25G的IP例子工程沒(méi)有提供演示,本文主要介紹了如何使用這個(gè)IP的1588功能
產(chǎn)生一個(gè)例子工程的仿真
01
1. 打開(kāi)Vivado新建工程,添加一個(gè)10G/25G以太網(wǎng)IP core,注意在IP的GUI里勾上1588功能(如圖),然后右鍵產(chǎn)生example design
為了能同時(shí)支持 1-step 和 2-step,這里在產(chǎn)生 IP 時(shí)選擇了“OneStep”的 1588
2. 工程產(chǎn)生完成后,需要先給 tx/rx_systemtimer 加上參考時(shí)間值。如果用的是 2020.2,新的 IP 例子工程已經(jīng)自帶了 timer_syncer 模塊,為 systemtimer 提供輸入。但如果用的是之前的版本,你只需要寫(xiě)一個(gè)計(jì)數(shù)器的邏輯,輸出為標(biāo)準(zhǔn)時(shí)間 ns 計(jì)數(shù),提供給 systemtimer 輸入就行了,到時(shí)候 IP 在發(fā)出包的那一刻,會(huì)把 tx_systemtimer 當(dāng)時(shí)的值作為時(shí)間戳使用,或者在收到包的那一刻,把當(dāng)時(shí)的 rx_systemtimer 的值拿來(lái)使用
下面是一個(gè)簡(jiǎn)單的計(jì)數(shù)器代碼示例,選自 100GCMAC 的 IP 參考設(shè)計(jì)中產(chǎn)生 tx_systemtimer的邏輯,供參考使用
3. 最后給工程加上仿真選項(xiàng),幫助加速仿真速度,就可以開(kāi)始做工程的功能仿真了
如何使用1588功能
02
1. 首先使能IP的1588的1-step功能,可以在邏輯里將IP的輸入“ctl_tx_1step_enable”置1,如果使能了IP的AXI讀寫(xiě)寄存器接口的話,也可以將地址0038的bit0寫(xiě)1
2. 同樣地方式,通過(guò)修改信號(hào) “ctl_ptp_transpclk_mode”選擇OrdinaryClock模式或者TransparentClock模式。在OC模式下,時(shí)間戳?xí)苯痈采w原以太網(wǎng)包里的值,但在TC模式下,時(shí)間戳則會(huì)疊加在原來(lái)位置的數(shù)值上面。具體可參考1588協(xié)議
3. 接著跑仿真,先在設(shè)計(jì)邏輯里將 “tx_ptp_1588op_in”接為01,觀察1-step模式下的IP的工作行為,仿真結(jié)果如下圖示
由于這里的 “tx_ptp_tstamp_offset_in”為0,發(fā)送包的第一拍數(shù)據(jù) “tx_axis_tdata”會(huì)從原來(lái)的值“fe14ffffffffffff”被IP替換成時(shí)間戳,也就是在RX側(cè)看到收到的數(shù)據(jù)包的第一拍數(shù)據(jù)“rx_axis_tdata”已經(jīng)變成了 “010005xxxxxxxxxx”
實(shí)際上 IP 在 1-step 工作模式下,2-step也是同時(shí)工作的,對(duì)應(yīng) “tx_ptp_tstamp_valid_out” 拉高的“tx_ptp_stamp_out” 的值,就是這個(gè)包的時(shí)間戳,輸出給客戶,這個(gè)時(shí)間戳的值客戶可以自行稍加修改添加到下一個(gè)包再發(fā)出去,這就是 2-step 的工作模式
用于2-step的“tx_ptp_stamp_out”和填進(jìn)包里的1-step時(shí)間戳略有區(qū)別,差距就是 “ctl_tx_ptp_latency_adjust”,差異的原理細(xì)節(jié)可參考 IP 的文檔 PG210
用戶可以自行給他發(fā)的每個(gè)包輸入不同的“tx_ptp_tag_field_in”值,然后當(dāng)IP輸出 “tx_ptp_stamp_out” 時(shí)間戳的時(shí)候,只要找到對(duì)應(yīng)的 “tx_ptp_pstamp_tag_out” 值,就是相同 tag_in 對(duì)應(yīng)的那個(gè)包的時(shí)間戳
RX 側(cè)收進(jìn)包的時(shí)間戳,為 "rx_ptp_stamp_out”,目前時(shí)間戳的點(diǎn)都是 IP 的接口,所以在環(huán)回仿真里面,RX 側(cè)的時(shí)間戳?xí)萒X側(cè)的時(shí)間戳大,差了一整個(gè) GT 的延時(shí)沒(méi)有計(jì)算進(jìn)去,用戶應(yīng)當(dāng)在AR搜索中找到自己用的器件對(duì)應(yīng)GT的具體latency,靜態(tài)延時(shí)值可通過(guò)ctl_tx/rx_latency 信號(hào)合進(jìn) IP。并且,延時(shí)結(jié)果能在功能仿真里面體現(xiàn)出來(lái)
4. 最后你還可以隨時(shí)在邏輯里修改 "tx_ptp_1588op_in" 的輸入,當(dāng)接為 00 或者 10 的時(shí)候,IP 就不會(huì)再自動(dòng)打上時(shí)間戳,第一拍保留了數(shù)據(jù)包的原始數(shù)據(jù) "fe14ffffffffffff”,并且如果1588op=00 的時(shí)候,"tx_ptp_tstamp_valid_out" 也不會(huì)再拉高,如下圖
原文標(biāo)題:開(kāi)發(fā)者分享 | 如何使用 10G/25G 以太網(wǎng) IP core 上的 1588 功能
文章出處:【微信公眾號(hào):FPGA開(kāi)發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5465瀏覽量
172849 -
IP
+關(guān)注
關(guān)注
5文章
1723瀏覽量
150034
原文標(biāo)題:開(kāi)發(fā)者分享 | 如何使用 10G/25G 以太網(wǎng) IP core 上的 1588 功能
文章出處:【微信號(hào):FPGA-EETrend,微信公眾號(hào):FPGA開(kāi)發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
紫光同創(chuàng)推出萬(wàn)兆以太網(wǎng)高精度1588解決方案
![紫光同創(chuàng)推出萬(wàn)兆<b class='flag-5'>以太網(wǎng)</b>高精度<b class='flag-5'>1588</b>解決方案](https://file1.elecfans.com/web3/M00/05/CA/wKgZPGeE022Ac-XdAAG3RTvu4kY927.png)
ALINX發(fā)布100G以太網(wǎng)UDP/IP協(xié)議棧IP核
以太網(wǎng)和TCP/IP的關(guān)系解析
以太網(wǎng)幀格式和功能詳解
如何以及何時(shí)在PROFINET系統(tǒng)中使用以太網(wǎng)PHY
![如何以及何時(shí)在PROFINET系統(tǒng)中使<b class='flag-5'>用以太網(wǎng)</b>PHY](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
以太網(wǎng)端口的類型和特性
以太網(wǎng)要怎么連接
解讀工業(yè)以太網(wǎng)標(biāo)準(zhǔn):Profinet與EtherNet/IP
以太網(wǎng)無(wú)法連接外網(wǎng)IP,提示No route to host,為什么?
![](https://file1.elecfans.com/web2/M00/EC/95/wKgZomZla2uACvmeAAUrVRH1pgw844.png)
使用VN5620監(jiān)控記錄以太網(wǎng)總線數(shù)據(jù)#車載以太網(wǎng) #CANape
如何使用以太網(wǎng)交換機(jī)最大限度地減少網(wǎng)絡(luò)延遲
用于IEEE 1588和同步以太網(wǎng)的82P33814同步管理單元評(píng)估板數(shù)據(jù)手冊(cè)
![用于IEEE <b class='flag-5'>1588</b>和同步<b class='flag-5'>以太網(wǎng)</b>的82P33814同步管理單元評(píng)估板數(shù)據(jù)手冊(cè)](https://file1.elecfans.com/web2/M00/E3/70/wKgZomY8lzyARpUeAAC-rZdys_g090.png)
PLC以太網(wǎng)開(kāi)放式通信概述
![PLC<b class='flag-5'>以太網(wǎng)</b>開(kāi)放式通信概述](https://file1.elecfans.com/web2/M00/C8/B2/wKgZomYd-dqAXWVGAAAbhJr2118225.jpg)
車載以太網(wǎng) | TSMaster的DoIP功能操作指南
![車載<b class='flag-5'>以太網(wǎng)</b> | TSMaster的DoIP<b class='flag-5'>功能</b>操作指南](https://file.elecfans.com/web2/M00/40/07/pYYBAGJrUk2AaMaTAAAQONQtdzo461.jpg)
工業(yè)以太網(wǎng)的基本原理及優(yōu)勢(shì)
![工業(yè)<b class='flag-5'>以太網(wǎng)</b>的基本原理及優(yōu)勢(shì)](https://file1.elecfans.com/web2/M00/C3/C6/wKgaomXoKeWAbDNNAAHAbk1HA9E809.png)
評(píng)論