【IP分析】BRAM的实用功能
最早的時候發現讀取bram的addr必須+4而不是+1。
主要就在是否勾選“Byte Write Enable”,即是否按字節來操作。
在BRAM Controller模式下,默認勾選,PortA和PortB都是32bit位寬的,按照字節就是4個byte,所以會有we[3:0]共4個we信號。
在Stand Alone模式下,默認是不勾選的;如果選擇了“Generate address interface with 32 bits”,這個enable就再次被默認勾選。
Byte-Writes
按照bytes操作數據,比如32bit位寬,是4個byte,對應4個we信號。比如使能we[3:0]=4'b0010,那么只有第二byte會被寫入數據,其他位不變。
Optional Output Registers
這種output reg的作用就是改善輸出路線上的delay和latency。
primitiveoutput register:原語之后的reg就是用ram做的,所以默認就有配置。
core output register:需要單獨勾選。
如果都沒選,在原語上也會有個latch,在原語reg之前。
Optional Pipeline Stages
如上圖,當用戶bram是由多個bram拼湊的,在輸出口就會有MUX負責處理共用。但這樣的組合結構對數據不好,所以也在會前面加幾級pipeline來優化結構。
只有當core output register被勾選的時候,才能選擇這個屬性。
但是這些reg屬性都會增加input與output之間的節拍。erg1即primitive,reg2和3是pipeline,dout是core output reg。
如果primitive和core以及pipeline的reg都沒有的話,din和dout之間只相差一個節拍。
Optional Set/Reset Pins
rst信號控制最后一個output reg,結合上面的reg設置。
Memory Output Flow Control
把en、rst、regce結合起來,可以控制不同的輸出方式。
The LATCH signal is the data at the output of theprimitive
REG1 is the data at the output of the primitive output register
總結
以上是生活随笔為你收集整理的【IP分析】BRAM的实用功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jtds链接SqlServer数据库(整
- 下一篇: jsmind