《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > Speedster7t FPGA芯片中GDDR6硬核控制器詳解

Speedster7t FPGA芯片中GDDR6硬核控制器詳解

2021-11-24
作者:Achronix資深應(yīng)用工程師 黃侖
來源:Achronix
關(guān)鍵詞: Achronix Speedster7t FPGA芯片 GDDR6

1. 概述

為了適應(yīng)未來硬件加速、網(wǎng)絡(luò)加速對片外存儲器的帶寬需求,,目前市面上的高端FPGA主要采用了兩種解決方法,。第一種最常見的就是HBM2高帶寬存儲器,2016年1月,,HBM的第二代技術(shù)HBM2正式成為工業(yè)標(biāo)準(zhǔn),。集成了HBM2存儲器的高端FPGA可以提供高達(dá)460GB/s的帶寬,但是因?yàn)镠BM2技術(shù)工藝要求高,,目前芯片的良率和產(chǎn)量都會受到很大的影響,,所以集成HBM2的高端FPGA成本一直居高不下。第二種是GDDR6存儲器,,2018年,,GDDR6發(fā)布,數(shù)據(jù)速率達(dá)到了16Gbps,。Achronix看中了GDDR6在數(shù)據(jù)存儲中的帶寬優(yōu)勢,,在新一代7nm工藝的Speedster7t FPGA集成了GDDR6硬核控制器,最高可支持高達(dá)512GB/s的帶寬,,同時(shí)可以有效地控制使用成本,。

2. Speedster7t FPGA中的GDDR6控制器

Achronix的Speedster7t FPGA集成了8個(gè)GDDR6的硬核,如圖1所示,。

proxy1.png

圖1  Speedster7t FPGA架構(gòu)

每個(gè)GDDR6的硬核支持雙通道,。總的帶寬是16Gbps x 16(位寬) x 2(通道) x 8(控制器)/8 = 512 GB/s,,每個(gè)控制器有兩個(gè)獨(dú)立的訪問通道,,每個(gè)通道的數(shù)據(jù)位寬為16位。這些GDDR6 控制器和PHY都是硬IP,,無需消耗FPGA中的可編程邏輯資源,,也無需面對布局布線所帶來的時(shí)序收斂挑戰(zhàn)。這些特征共同使GDDR6方案成為當(dāng)前高端FPGA性能和成本兼顧的絕佳選擇,。

3. GDDR6子系統(tǒng)概述

Achronix Speedster7t GDDR6子系統(tǒng)包括GDDR6 PHY和GDDR6控制器,,全部采用了硬核設(shè)計(jì)。整個(gè)子系統(tǒng)包括GDDR6 PHY IP,、GDDR6控制器IP,、時(shí)鐘和復(fù)位模塊,APB接口和AXI4用戶接口可以連接到二維片上網(wǎng)絡(luò)(2D NoC)或者內(nèi)部編程邏輯,,如圖2所示,。

proxy2.png

圖2  Speedster7t GDDR6子系統(tǒng)框圖

時(shí)鐘和復(fù)位模塊用來產(chǎn)生支持GDDR6 PHY和GDDR6控制器的時(shí)鐘以及所需的復(fù)位信號,,它的輸入時(shí)鐘來自于FPGA片上的PLL。對于數(shù)據(jù)速率為16Gbps的GDDR6,,控制器時(shí)鐘為1GHz,,PHY時(shí)鐘為500MHz,命令地址時(shí)鐘跑在2GHz,,word clk也就是WCLK運(yùn)行在8GHz,,其他速率需要的時(shí)鐘如表1所示。

GDDR6控制器IP支持兩個(gè)通道,,每個(gè)通道為16bit位寬,。兩個(gè)通道獨(dú)立訪問不同的GDDR6空間??刂破鞯挠脩艚涌跒闃?biāo)準(zhǔn)的AXI協(xié)議,,可以連接到二維片上網(wǎng)絡(luò)上或者直接連到內(nèi)部的可編程邏輯。在另外一邊,,控制器和PHY的接口為DFI4.0接口,。

表1  GDDR6支持的時(shí)鐘頻率模式

proxy3.png

PHY IP用來連接器件外圍的高速GDDR6顆粒,它會像其他DRAM PHY一樣產(chǎn)生PRECHARGE,、ACTIVE和REFRESH等命令,。

APB全稱Advanced Peripheral Bus,字面上是先進(jìn)外圍總線的意思,,該總線協(xié)議是ARM公司提出的AMBA總線結(jié)構(gòu)之一,,已成為一種標(biāo)準(zhǔn)的片上總線結(jié)構(gòu)。APB總線接口工作在250MHz,,用來配置GDDR6子系統(tǒng)的寄存器,,Speedster7t FPGA的配置電路FCU可以在啟動的時(shí)候通過APB總線接口配置GDDR6子系統(tǒng)的寄存器,用戶邏輯模塊也可以在FPGA運(yùn)行的時(shí)候通過APB總線接口動態(tài)配置GDDR6子系統(tǒng)的寄存器,。

4. GDDR6控制器結(jié)構(gòu)

GDDR6控制器模塊的詳細(xì)結(jié)構(gòu)如圖3所示,。它包括主控部分和其他的一些子模塊,比如Multi-port front-end模塊,,Reorder模塊,,Read modify Write模塊,,內(nèi)存測試模塊和內(nèi)存測試分析模塊,。

MPFE模塊是前端多端口模塊,Speedster7t上的GDDR6控制器為每個(gè)通道提供了兩個(gè)MPFE端口,,它們支持AXI4協(xié)議,,每個(gè)端口能夠提供最大256Gbps的帶寬;其中一個(gè)AXI端口用于連接到二維片上網(wǎng)絡(luò)上,,位寬為256位,,時(shí)鐘是1GHz。另一個(gè)AXI端口用于直接連接到FPGA內(nèi)部的可編程邏輯資源,位寬為512位,,時(shí)鐘是500MHz,。

Reorder模塊用來調(diào)整發(fā)給GDDR6控制器的用戶請求的順序。Reorder模塊里有一個(gè)深度為64的隊(duì)列,,用于緩存用戶請求,,只要隊(duì)列不滿就可以接收新的用戶請求。在接收到用戶請求以后,,Reorder模塊可以調(diào)整用戶請求的順序,,進(jìn)而可以大大提高DRAM的訪問效率。用戶可以通過設(shè)置不同的參數(shù)來調(diào)整reorder的標(biāo)準(zhǔn),,同時(shí)這個(gè)模塊也可以bypass掉,,維持用戶請求的原來順序。

RMW模塊是讀-修改-寫的模塊,,先讀出內(nèi)存中的數(shù)據(jù)內(nèi)容,,然后修改單個(gè)或者多個(gè)bit以后再整體寫回。有了這個(gè)模塊,,GDDR6控制器支持將地址mask的功能,。

Mem Test和Mem Test Analyzer是用于內(nèi)存測試的模塊,Mem Test內(nèi)存測試模塊支持生成不同的數(shù)據(jù)類型去寫入GDDR6,;Mem Test Analyzer內(nèi)存測試分析模塊將讀到的數(shù)據(jù)與期望的數(shù)據(jù)進(jìn)行比較,,從而驗(yàn)證GDDR6的硬件接口和讀寫功能是否正常。

proxy4.png

圖3  Speedster7t GDDR6控制器框圖

GDDR6控制器支持兩種模式,,正常x16模式和Clamshell x8模式,。在x16模式下,控制器提供了每通道16位的雙通道接口,,可以連接一個(gè)GDDR6顆粒,。在Clamshell x8模式下,如圖4所示,,控制器提供了每通道8位的雙通道接口,,可以連接兩個(gè)GDDR6顆粒。Clamshell模式提供了一種在不改變控制器帶寬的情況下,,通過在兩個(gè)GDDR6顆粒間share地址和命令總線將容量加倍的一種方法,。

proxy5.png

圖4  GDDR6 Clamshell模式

后面我們還會繼續(xù)深入了解Speedster 7t FPGA上的一些其他特性,以及這些特性如何運(yùn)用在數(shù)據(jù)加速和網(wǎng)絡(luò)加速應(yīng)用中,,敬請期待,。如需更多信息或者有任何疑問您可以通過Achronix公眾號里聯(lián)系方式聯(lián)系我們,也可訪問Achronix公司官方網(wǎng)站https://www.achronix.com


參考文獻(xiàn):

1.Micron 8Gb/16Gb GDDR6 Product Brief

2.Achronix website www.achronix.com

AETweidian.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。