ip核

最近几天关于FPGA的计划

被刻印的时光 ゝ 提交于 2019-12-01 16:20:42
最近一段时间的目标是,实现FPGA上的,以太网MAC接口, 刚刚我下载了《Xilinx系列FPGA芯片IP核详解 刘东华2013年》和《Xilinx FPGA应用进阶 通用IP核详解和设计开发》这两本讲解如何使用IP核的方法。 来源: https://www.cnblogs.com/zf007/p/11692715.html

ZYNQ:PS点亮PL的LED

删除回忆录丶 提交于 2019-12-01 10:01:42
1、创建一个工程首先 2、添加一个ZYNQ7的内核。方法详见hello world 配置1 DDR配置 时钟配置 3、在创建一个IP核:gpio的IP核 编辑:定义方向输出,定义4个管脚 4、连线 全部打钩,ok 自动连线以后变成如下 5、重命名IO口,鼠标点击如下位置。 左侧位置改名字 6、 7、点击验证我们的设计 8、生成HDL包装 在生成 9、添加管脚约束 创建约束文件 10、综合 11、 来源: https://www.cnblogs.com/dongmama/p/11677839.html

CH03_UDP千兆光通信

帅比萌擦擦* 提交于 2019-11-30 14:25:26
3.1概述 MZ7035开发板具有的2路SFP接口,可实现千兆光纤以太网通信。使用开发板中实现千兆网UDP传输的基本逻辑框架如下图所示。FPGA程序基于米联的新版UDP IP协议栈以及Xilinx的IP核Tri Mode Ethernet MAC和1G/2.5G Ethernet PCS/PMA or SGMII而实现。 本文档对应2个例程,分别为udp_ip_1g_sfp和udp_ip_1g_sfp_4ch,分别实现单路和4路千兆UDP光纤传输(MZ7035FA只有两路SFP,MZ7035FB(D)有四路SFP)。例程基于vivado 2017.4开发。 3.2 SFP接口 开发板上有4个SFP屏蔽笼。SFP屏蔽笼可以插入千兆。SFP信号定义如下图所示。 3.3 IP设置 3.3.1 Tri Mode Ethernet MAC设置 由于使用千兆通讯,因此将速率设为1Gbps。如下图所示。 首先,由于该IP需要与IP核1G/2.5G Ethernet PCS/PMA or SGMII之间通过GMII接口连接,此时不需要在IP核内部为GMII接口添加I/O BUF。因此,需要将PHY Interface设为 Internal 。 其次,由于1G/2.5G Ethernet PCS/PMA or SGMII使用1G光通讯时采用了1000BASEX标准,速率固定为1G。所以,需要将Tri

移位寄存器的 IP核调取及应用

六眼飞鱼酱① 提交于 2019-11-29 13:20:25
写在前面的话 做很多图像算法的时候 , 我们经常需要用到模板运算 (如 sobel 图像边缘检测、中值滤波、均值滤波等等),处理这些问题的时候,我们可以借助 altera 提供的移位寄存器 IP 核来简化我们的设计,从而提高设计效率。本节,梦翼师兄和大家一起学习这个适合用于模板运算的移位寄存器 IP 核的用法。 功能要求 假设数据在一个ROM中以如下图所示的方式存放,列加行的值作为该数的地址(如e的地址就是8+1=9)。 address 0 1 2 3 4 5 6 7 0 a d g j m p aa bb 8 b e h k n q dd cc 16 c f i l o r ee ff 24 s t u v w rr gg hh …… y z uu vv ww qq ii jj 在图像处理领域,要实现Sobel或者均值滤波等算法,则需要按照3*3矩阵的格式提取数据,如下图所示:(现在想要每次取出3列数据为一组,如第一列数据:a、b、c 第二列数据:d、e、f 第三列数据:g、h、i) 解决方案:在这儿我想给大家介绍一个叫做Shift_register的 IP 核来实现这种功能,而且还有很重要的一点就是我们可以利用这种方法来实现流水线操作,我们暂且就将其看做是移位寄存的 “FIFO”吧。 如果我们将该IP 核配置成如下图所示的两个 “FIFO”

读写储存器RAM IP核的调取及应用

白昼怎懂夜的黑 提交于 2019-11-29 12:26:51
写在前面的话 在很多时候 , 我们需要将采集得到的数据先存储起来 ,等到了需要的时候再调用。如果是这种情况,那么就要求我们的存储器必须可读可写。本节,梦翼师兄就和大家一起学习 FPGA 可读写存储器 IP 核 -RAM 的使用。 项目 需求 设计一个 RAM 控制器,该控制器负责对 RAM 进行读写操作,首先将数据写入 RAM ,然后再将数据全部读出。如果读出的数据和写入的数据完全一致,说明我们的操作和设计正确。 操作步骤 在右侧的 IP 核搜索区,输入 ram ,在菜单栏找到并双击【 RAM : 1-PORT 】 选择语言类型为 Verilog ,并命名,点击【 OK 】 设置 ram 的存储深度和每一个存储空间的比特位数,然后点击【 NEXT 】 把 【q output port】 前面的对钩取消掉(如果不取消掉就会在输出端口生成寄存器,输出就会慢一拍,这里我们不需要它慢一拍),然后点击 【NEXT】 一直点击【 NEXT 】,直到如下界面,选择 my_ram_inst.v ,点击【 Finish 】,完成对 ram 的设置 顶层架构设计 RAM 是可读写的存储器,我们用一个控制模块 向ram 中写入数据,然后读出。 模块功能介绍 模块名 功能描述 Ram_control Ram控制器,对my_ram进行读写 My_ram ram存储器IP核 ram 系统顶层模块

只读储存器ROM IP核设计

守給你的承諾、 提交于 2019-11-29 11:06:08
写在前面的话 在项目设计中,我们通常需要使用一些固定的数据。如果是使用单片机,那么在数据量比较大的情况下,这些数据就必须存储在外挂的存储芯片中 。那么,使用 FPGA呢?在数据量不是特别大的情况下,我们可以将这些数据存储到FPGA片内的存储器中,这样既节约了板级成本,又可以保证数据不容易受到外界干扰。那么本节,梦翼师兄和大家一起学习FPGA只读存储器IP核-ROM的设计。 项目需求 设计一个 ROM控制器,该控制器负责输出0-255递增的地址数据,将此地址总线连接到ROM地址输入端,查看ROM输出的数据是否正确 操作步骤 由于 ROM 是只读存储器 , 也就是说 , 我们不能对其内部写入外部数据 , 那么 , 我们 就需要 创建一个 ROM 的数据初始化文件 mif 文件( mif 文件用来存放初始数据) 定义位宽和深度(这里我们选择位宽为 8 位,深度为 256 ) 填充数据(在这里我们用软件自带的一种的填充数据的方式,填充上 0 到 255 ,大家自己在项目中应用的时候,应该填充上自己所需要的初始值)。 mif 文件建立成功(地址从 0 到 255 ,数据从 0 开始,每次增加 1 ,所以此时的 mif 文件中存放的是 0 到 255 )。 在右侧的 IP 核搜索的编辑区,输入 rom ,在菜单栏找到并双击 rom (在这里我们使用单端口的 rom ,双端口的 rom

FFT IP核调用与仿真之中篇_SCALE压缩因子设置

最后都变了- 提交于 2019-11-28 00:09:19
关于FFT IP核的配置,网上有很多相关的资料可以参考,但是唯独涉及到scaled压缩因子设置这个参数,资料却非常匮乏,这是个什么参数,应该整么设置,设置后对结果输出会有什么影响,整样才能知道它设置的合理不合理? 先来看一下官方说明手册里关于scaled的说明: 翻译过来就是: 对于 Pipelined Streaming I/O结构,将临近的一对基2阶组在一起,即阶0和阶1为组0,阶2和阶3为组1,阶4和阶5为组2等等。例如数据长度N=1024, Scale_SCH = [10 10 00 01 11]表示对组0(阶0和阶1)右移位3,对组1(阶2和阶3)右移位1,对组2(阶4和5)没有移位,对组3(阶6和7)右移位2, 对组 4(阶8和9)右移位2。但是要注意, 如果变换长度 N不是4的幂次方时,最后一组只包含一个基2阶,只能用00或者01表示, 例如数据长度 N=512时, Scale_SCH = [ 10 10 10 10 10]的设置则是无效的,而Scale_SCH = [01 10 10 10 11]的设置就是有效的。对于Scale_SCH的位宽,针对Pipelined Streaming I/O结构和Radix-4,Burst I/O结构,位宽为 2*ceil(0.5*log2(N)), 对于 Radix-2,Burst I/O和Radix-2 Lite,Burst

FPGA数据舍入方式

让人想犯罪 __ 提交于 2019-11-26 20:02:11
1,在Verilog代码中,常用的代码写法为直接截位; 2,在Vivado的IP核中常见的两种舍入方式为Truncation和Rounding, 3,在Matlab中常见的四种舍入函数为floot, round, fix, ceil。 为了方便Matlab定点程序与Verilog硬件程序间对数据(debug),可统一使用截位的方式。具体如下: 1,Verilog代码直接截位; 2,IP核参数选Truncation; 3,Matlab函数使用floor。 [引用]: 1, http://www.yanglajiao.com/article/u011435907/77989787 2, http://xilinx.eetrend.com/d6-xilinx/blog/2017-10/12095.html 来源: https://www.cnblogs.com/achangchang/p/11331931.html