找回密码
 注册
关于网站域名变更的通知
查看: 438|回复: 3
打印 上一主题 下一主题

FPGA程序中内存的实现方式

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-7-17 13:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

FPGA并没有像软件那样用已有的cache,FPGA的HLS编译器会在FPGA中创建一个快速的memory architecture以最好的适应算法中的数据样式(data layout)。因此FPGA可以有相互独立的不同大小的内部存储空间,例如寄存器,移位寄存器,FIFOs和BRAMs。

寄存器:最快的内存结构,集成在在运算单元之中,获取不需要额外的时延。

移位寄存器:可以被当作一个数据序列,每一个数据可以在不同的运算之中被重复使用。将其中所有数据移动到相邻的存储设备中只需要一个时钟周期。

FIFO:只有一个输入和输出的数据序列,通常被用于循环或循环函数,细节会被HLS编译器处理。

BRAM:集成在FPGA fabric模块中的RAM,每个xilinx的FPGA中集成有多个这样的BRAM。可以被当作有以下特性的cache:1.不支持像处理器cache中那样的缓存一致性(cache coherency,collision),不支持处理器中的一些逻辑类型。2.只在设备有电时保持内存。3.不同的BRAM块可以同时传输数据。


3 q& F9 F! d0 U4 Z! e

该用户从未签到

2#
发表于 2021-7-17 15:24 | 只看该作者
不同的BRAM块可以同时传输数据* m+ B; {5 M; K7 N7 a+ \+ ^- U

该用户从未签到

3#
发表于 2021-7-17 15:33 | 只看该作者
最快的内存结构,集成在在运算单元之中,获取不需要额外的时延。; J' t9 k( ]" W  R! j

该用户从未签到

4#
发表于 2021-7-17 15:54 | 只看该作者
FPGA可以有相互独立的不同大小的内部存储空间,例如寄存器,移位寄存器,FIFOs和BRAMs。& l8 G, ^- c& p8 q
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-5 11:23 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表