XILINX FPGA 7系之 Shift Register

目錄

一、移位寄存器

二、 移位寄存器的功能與應用

三、XILINX FPGA 中 LUT 中移位寄存器的複用情況


 

一、移位寄存器

  • SLICEM 函數發生器也可以配置爲32位移位寄存器,而無需使用 slice 中可用的觸發器。 以這種方式使用,每個LUT可以將串行數據延遲1到32個時鐘週期。
  • 移入D(DI1 LUT引腳)和移出Q31(MC31 LUT引腳)線路將LUT級聯,以形成更大的移位寄存器。 因此,SLICEM中的四個LUT被級聯以產生高達128個時鐘週期的延遲。也可以在多個SLICEM上組合移位寄存器。
  • 寄存器,LUT B / C / D的MC31輸出也不可用。 由此產生的可編程延遲可用於平衡數據流水線的時序。

下圖是SRL32位移位寄存器的框圖:

在這裏插入圖片描述

下圖是佔用一個32位函數發生器的示例移位寄存器配置
在這裏插入圖片描述

 

二、 移位寄存器的功能與應用

移位寄存器的功能

  • 1)寫操作
  • 2)與時鐘輸入(CLK)和可選的時鐘使能(CE)同步
  • 3)修復對Q31的讀取訪問
  • 4)動態讀取訪問
  • 5)通過5位地址總線A [4:0]執行

LUT地址的LSB未使用,軟件自動將其綁定爲邏輯高電平。

  • 6)通過改變地址可以異步讀取32位中的任何一位(在O6 LUT輸出上,在原語上稱爲Q)
  • 7)此功能對於創建較小的移位寄存器(少於32位)很有用。例如,當構建13位移位寄存器時,將地址設置爲第13位
  • 8)存儲單元或觸發器可用於實現同步讀取。

觸發器的時鐘輸出決定了總延遲並改善了性能。但是,增加了一個時鐘延遲週期。

移位寄存器的應用:

  • 1)延遲或延遲補償
  • 2)同步FIFO和內容可尋址存儲器(CAM)

 

三、XILINX FPGA 中 LUT 中移位寄存器的複用情況

1、一個 LUT 可以用於產生2個16bit移位寄存器,地址是複用的。
用兩個SRL16組成一個32位的移位寄存器
 

在這裏插入圖片描述

下圖是一個SRL16E 帶使能信號的移位寄存器:

在這裏插入圖片描述

移位寄存器查找表,它的輸入這是一個移位寄存器查找表,它的輸入 A3,A2,A1和 A0選擇移位輸出的長度。移位寄存器可以是固定的、靜態的長度,移位寄存器的長度可以從 1位到 16位不等,由下面公式決定:

長度 =(8 x A3)+(4 x A2)+(2 x A1)+A0+1

如果 A3,A2,A1,A0都是 0(0000),移位寄存器的長度就是 1 bit長;如果它們 都是 1(1111),移位寄存器的長度就是 16 bit長。
下表是SRL16E的真值表:
在這裏插入圖片描述

2、利用 SRL32 組成 64/96/128 bit的移位寄存器,利用地址 A5 和 F7AMUX 切換  SRL32

在這裏插入圖片描述

在這裏插入圖片描述


參考文檔:

https://blog.csdn.net/vivid117/article/details/102703875

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章