DSP48E1屬性
輸入端口
A/B/C/D輸入端口
A、B、C、CARRYIN、CARRYINSEL、OPMODE、BCIN、PCIN、ACIN、ALUMODE、CARRYCASCIN、MULTSIGNIN以及相應(yīng)的時鐘啟用輸入和復(fù)位輸入都是保留端口。D和INMODE端口對于DSP48E1片是唯一的。本節(jié)詳細描述DSP48E1片的輸入端口。圖2-6中突出顯示了DSP48E1片的輸入端口。
DSP48E1片輸入數(shù)據(jù)端口支持許多通用的DSP和數(shù)學算法。DSP48E1片有四個直接輸入數(shù)據(jù)端口,分別為A、B、C和D。
A數(shù)據(jù)端口寬30位,B數(shù)據(jù)端口寬18位,C數(shù)據(jù)端口寬48位,預(yù)加器D數(shù)據(jù)端口寬25位。
25位A (A[24:0])和18位B端口為25位乘18位提供輸入數(shù)據(jù),這是2的補數(shù)乘法器。通過獨立的C端口,每個DSP48E1片能夠進行Multiply-Add, Multiply-Subtract, and Multiply-Round operations(多路加、多路減和多路循環(huán)操作)。
連接的A和B端口(A:B)繞過乘數(shù)并輸入X多路復(fù)用器。30位的A輸入端口形成A:B連接的數(shù)據(jù)路徑的上30位,18位的B輸入端口形成A:B數(shù)據(jù)路徑的下18位。A:B數(shù)據(jù)路徑和C輸入端口使每個DSP48E1片實現(xiàn)一個完整的48位加法器/減法器,前提是不使用乘法器,通過將USE_MULT設(shè)置為NONE(或DYNAMIC)來實現(xiàn)。
每個DSP48E1片還具有兩個級聯(lián)輸入路徑(ACIN和BCIN),在相鄰的DSP48E1切片之間提供級聯(lián)輸入流。級聯(lián)路徑對于A輸入是30位寬,對于B輸入是18位寬。受益于該特性的應(yīng)用包括FIR濾波器、復(fù)雜乘法、多精度乘法和復(fù)雜的MACCs。
A和B輸入端口以及ACIN和BCIN級聯(lián)端口在其數(shù)據(jù)路徑中可以有0、1或2個流水線級。雙A, D和預(yù)加法器端口邏輯如圖2-7所示。雙B寄存器端口邏輯如圖2-8所示。不同的pipeline stages是使用attributes屬性設(shè)置的。屬性AREG和BREG用于為A和B直接輸入選擇pipeline階段的數(shù)量。ACASCREG和BCASCREG在ACOUT和BCOUT級聯(lián)數(shù)據(jù)路徑中選擇pipeline階段的數(shù)量。允許的屬性設(shè)置如表2-3所示。由配置位控制的多路復(fù)用器通過路徑、可選寄存器或級聯(lián)輸入來選擇流。數(shù)據(jù)端口寄存器允許用戶在增加的時鐘頻率和數(shù)據(jù)延遲之間進行權(quán)衡(更高的性能)。
INMODE和USE_DPORT屬性控制預(yù)加法器功能和位于乘法器之前的A、B和D寄存器總線多路復(fù)用器。如果沒有使用預(yù)加法器,USE_DPORT的默認值為FALSE。
INMODE[0]=1:選擇A1;=0:選擇A2。
INMODE[1]=1強迫A輸入到預(yù)加法器為0。
INMODE[2]=0迫使D輸入到預(yù)加法器為0。
INMODE[3]提供預(yù)加法器減控制,其中INMODE[3] = 1表示減,INMODE[3] = 0表示加。
INMODE[4]選擇乘數(shù)B端口,其中BREG=1 or 2,INMODE[4] = 1:選擇B1,INMODE[4] = 0:選擇B2。
48位C端口用作Y和Z多路復(fù)用器的常規(guī)輸入,執(zhí)行加、減、三輸入加/減和邏輯函數(shù)。C輸入還連接到模式檢測器,用于舍入函數(shù)實現(xiàn)。C端口邏輯如圖2-9所示。CREG屬性為C輸入數(shù)據(jù)路徑選擇pipestage的數(shù)量。
OPMODE, ALUMODE, and CARRYINSEL 端口
OPMODE、ALUMODE和CARRYINSEL端口邏輯支持flow through or registered輸入控制信號。由配置位控制的多路復(fù)用器選擇通過寄存器或可選寄存器的數(shù)據(jù)流。控制端口寄存器允許用戶對增加的寄存器進行權(quán)衡,使其具有獨立的時鐘啟用和復(fù)位功能。OPMODE和CARRYINSEL寄存器通過RSTCTRL復(fù)位。ALUMODE被RSTALUMODE重置。時鐘啟用,OPMODE、ALUMODE和CARRYINSEL端口邏輯如圖2-10所示。
X, Y, and Z Multiplexers
OPMODE(操作模式)控制輸入包含X、Y和Z多路選擇的字段。
OPMODE輸入提供了一種從時鐘周期到時鐘周期動態(tài)更改DSP48E1功能的方法(例如,相對于給定的計算序列更改DSP48E1片的內(nèi)部數(shù)據(jù)路徑配置)。
OPMODE位可以使用OPMODEREG屬性注冊(如表2-3所示)。
ALUMODE
4位ALUMODE控制第二階段加/減/邏輯單元的行為。
ALUMODE = 0000 選擇表單Z + (X + Y + CIN)的添加操作。
ALUMODE = 0011 選擇Z - (X + Y + CIN)形式的減運算。
ALUMODE = 0001 可以實現(xiàn)- z + (X + Y + CIN) - 1 = not (Z) + X + Y + CIN。
ALUMODE = 0010 可以實現(xiàn) - (Z + X + Y + CIN) - 1 = not (Z + X + Y + CIN)。
2的補數(shù)的負數(shù)是通過按位反轉(zhuǎn)和加1得到的,例如-k = not (k) + 1。
其他的減運算和邏輯運算也可以通過增強型的加/減/邏輯單元來實現(xiàn)。見表2 - 10。
輸出端口
除ACOUT和BCOUT外的所有輸出端口都由RSTP重置,并由CEP啟用(參見圖2-13)。ACOUT和BCOUT分別通過RSTA和RSTB復(fù)位(如圖2-7和圖2-8所示)。
P端口
每個DSP48E1片都有一個48位的輸出端口p。這個輸出可以通過PCOUT路徑內(nèi)部連接(級聯(lián)連接)到相鄰的DSP48E1片。PCOUT連接到相鄰的DSP48E1片中的Z多路復(fù)用器(PCIN)的輸入。此路徑提供相鄰DSP48E1片之間的輸出級聯(lián)流。
CARRYCASCOUT and CARRYOUT 端口
每個DSP48E1片的執(zhí)行可以使用CARRYOUT端口發(fā)送到FPGA邏輯。這個端口是4位寬。CARRYOUT[3]是雙輸入48位加法器/減法器或單輸入累加器的有效進位輸出。在本例中,USE_SIMD = ONE48是默認設(shè)置,代表非simd配置。當兩個輸入加法器、減法器或使用一個輸入累加器在SIMD模式中,這樣的信號是無效的,如果三個輸入加法器、減法器(例如,a: B + C + PCIN)或兩個輸入累加器(例如,a: B + C + P)配置使用或者使用乘數(shù)。
審核編輯 黃昊宇
-
DSP48E1
+關(guān)注
關(guān)注
0文章
5瀏覽量
599
發(fā)布評論請先 登錄
相關(guān)推薦
評論