自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (4)
  • 收藏
  • 关注

原创 vivado常用tcl命令

Tcl命令在Vivado中提供了强大的自动化能力,使得复杂的FPGA设计流程可以通过脚本轻松管理和执行。掌握常用的Tcl命令对于提高工作效率和确保设计一致性非常重要。如果你有更多关于Vivado或Tcl的具体问题,或者需要进一步的帮助,请告诉我。

2025-03-05 18:19:47 391

原创 Systemverilog :随机约束

在。

2025-01-03 16:58:02 726

原创 SystemVerilog相比Verilog在仿真方面的优势和独特性

Verilog在Verilog中,模块间的通信通常通过信号线(wire)或寄存器(reg)进行连接,这种方式在大型设计中可能导致信号连接复杂且难以管理。SystemVerilog引入了接口(interface)定义,允许模块之间通过接口进行连接。接口可以包含信号、任务和函数等,从而简化了模块间的信号连接和通信。此外,SystemVerilog还支持自动匹配和.*连接方式,进一步简化了端口映射过程。示例// 可以在接口中定义任务和函数data

2024-12-30 11:11:50 854

原创 ASIC代码移植FPGA平台(以vivado为例子)的一些问题

5,时序优化:一般asic 代码移植到fpga平台会出现时序违例,大部分原因都是因为asic代码的逻辑级数太高导致,想要优化时序,需要在理解原代码的基础上插入FF。2,ram替换 :就是将原asic代码中的ram替换成对应fpga平台ram,替换时要注意原ram的读数据延时和接口匹配。3,参数定义问题:将对应的define文件设置为Global define ,综合时根据报错信息进行修改即可。4,时序约束:添加对应的时序约束,主要时异步时钟之间的约束。方法2: 修改门控时钟模块使输入输出时钟直连。

2024-12-24 17:49:51 284

原创 Xilinx SRIO IP(Serial RapidIO)学习心得(四) :Example design:srio_request_gen和srio_response_gen介绍

srio_request_gen_srio_gen2模块,是当收到各种需要response 的请求包时,生成对应的应答包,通过tresp 端口发送到对端设备。srio_request_gen_srio_gen2模块,是用于生成各类请求事务的模块,该模块生成的请求包通过ireq端口发到对端设备。生成包的具体类型和包的具体内容可见 “instruction_list.vh"文件(包头为hello包格式)需要注意的是NREAD 的resp 是携带数据的,其它的不携带数据。一个自定义FTYPE9的包(可忽略)

2024-12-12 18:13:43 474

原创 vivado使用注意事项(持续更新中)

(实测,161.1328125的参考时钟 跑12.890625G 和25.78125G 很稳定,但是跑10.3125G 信号质量非常差无法link,同时将参考时钟换为156.25,10.3125G依旧无法正常link,换成别的型号的光模块可以正常link,眼图质量良好)19.对于单个ip多次调用,约束的问题,以GT ip为例 ,一个设计中需要调用多个相同的GT ( 引脚约束不同),此时打开ip本身自带的约束,注释掉引脚约束的部分。15,做好备份 ,跑完并确认功能的工程,一定要做好备份。

2024-12-05 10:00:26 493

原创 xilinx GT 参数调整(TXDIFFSWING,TXPOST,TXPRE),IBERT使用

在使用Xilinx FPGA 的 GT ip 时,发现有一路的信号质量不是很好,最终通过IBERT 扫描出最优参数,通过vio配置最优参数后解决了这个问题,具体步骤如下。扫描眼图作用:可以把一个高速接口的相关配置参数最优参数扫描出来。(这里涉及到输出信号的摆幅,预加重、和输入信号均衡技术的选择)。注:如果使用光模块连接板卡,需要添加对应的光模块输出信号到顶层的example。注:每个通道都可以单独配置,配置时要注意对应关系。物理环境搭建好后,上板下载对应的。根据需求,选择对应的速率和通道。

2024-12-02 16:18:44 905

原创 Xilinx aurora64b66b IP vivado 快速仿真技巧

在在打开xilinx 的 aurora64b66b IP 的 Example design 进行仿真时发现 在run了3ms之后 CHANNEL_UP 和 LANE_UP依旧不拉高时 ,打开IP内部代码发现link和 INTI_CLK有关,因此打开仿真顶层代码。重新运行仿真,CHANNEL_UP 在90多us的时候成功拉高。将INIT CLK的时钟频率改为原来的100倍,其它时钟不变。IP配置如下 INIT CLK 设置为10MHZ。

2024-10-29 17:44:04 389 1

原创 VIVADO 综合策略介绍

这个选项决定了Vivado综合工具如何控制设计的层次结构。nonefullrebuiltrebuilt:这个选项开启或关闭综合工具将带使能(enable)的时钟逻辑进行转换的能力。:禁用门控时钟转换。这意呀着无论RTL代码中是否设置了属性,Vivado 都不会尝试进行门控时钟的转换。:如果RTL代码中设置了属性,则进行门控时钟转换。这种方式允许开发 者对转换过程有更多的控制。

2024-09-05 15:13:39 2170

原创 vivado 综合时间优化(多线程设置,策略选择,增量综合)

从Vivado 2019.1版本开始,Vivado支持增量综合,增量综合(Incremental Synthesis)是Vivado设计套件中一项强大的功能,它允许用户在设计发生局部变化时,仅对发生更改的部分进行重新综合,而不是对整个设计进行重新综合。例如,如果目标是减少综合时间,可以选择“RuntimeOptimized”策略,它会通过忽略一些不必要的RTL(寄存器传输级)优化来减少综合运行时间,从而在保持设计功能正确性的前提下,提高综合效率(在对设计性能有严格要求时,建议采用其他更为全面的优化策略)。

2024-09-02 16:03:38 3348

原创 SRIO(Serial RapidIO) 接收端流控(Receiver-Controlled Flow Control)介绍

LP-Serial协议定义了两种流量控制方法或模式,即接收机控制的流量控制和发射机控制的流量控制。这两种方法各有其独特的应用和重要性。首先,接收机控制的流量控制是确保数据接收端能够有序、有效地处理传入数据的关键机制。在这种模式下,接收机会根据自身的处理能力和缓冲区状态,向发送机发送适当的控制信号,从而调节数据的发送速率。这对于避免数据丢失、确保数据完整性以及维护稳定的通信连接至关重要。

2024-07-23 15:05:27 982

原创 vivado 结合tcl命令进行仿真

例如:set_property -name {xsim.compile.xvlog.more_options} -value {-d SIM_SPEED_UP -d tb_00 -d 其它参数 ...} -objects [get_filesets sim_1]这两条命令是添加所有的模块的波形,简单点说就是所有模块的波形直接加载好了,可以直接观察不用重新运行仿真。:用于设置仿真相关的属性,如仿真工具、仿真语言等。新建波形 top ,并将对应模块的波形添加到其中。一些可用于仿真的基本tcl 命令介绍,

2024-07-16 17:32:51 734

原创 SRIO(Serial RapidIO)优先级

在CRF位得到支持的情况下,事务请求流的映射允许RapidIO传输结构维持事务请求流的顺序,而无需结构了解事务类型或它们之间的依赖关系。结构可以通过简单地保持具有相同优先级和关键请求流的数据包在每个路径上的顺序来维持事务请求流的顺序,并且可以通过不允许低优先级数据包通过具有相同路径的高优先级数据包来维持事务请求流的优先级。在拥塞或其他限制的情况下,设置了CRF位的数据包指示具有该优先级的流可以在没有设置CRF位的情况下通过具有相同优先级的流。在流1A-8A中的所有流量都是不需要响应的事务请求。

2024-03-26 13:35:04 429 1

原创 SRIO (Serial RapidIO)PCS层 64B/67B编码介绍(二)

扰码的作用扰码可以平滑端口发送信号的频谱,并降低频谱的峰值。当发送一长串相同字符或重复字符序列时,这一点尤为重要。结果是减少了链路产生的电磁干扰(EMI)量,并使自适应均衡器训练算法的设计变得更加容易。扰码规则所有数据码字的一部分和一些控制码字的一部分在在lp-串行链路上传输之前被乱码。码字比特 [0:2] (inverted,!type and type) 不会被扰码。解码和扰码是基于每个通道进行的。在任何特定的时间,每个通道扰频器都应具有不同的状态。

2024-03-21 18:24:20 1477 3

原创 SRIO (Serial RapidIO)PCS层 64B/67B编码介绍(一)

在接收数据时,PMA层负责将接收到的比特流对齐到67位码字边界,这一过程也是基于每个通道独立进行的。2 ,在srio协议中只有三代及以上的,以三代为例,速率达到10.3125G 和12.5G 才会使用64b/67b编码的pcs层,低于该速率的采用8b/10b编码。:如果链接使用多个通道,PCS将对字符流进行对齐,以消除通道之间的偏差,并从每个通道的字符流中重新组合(去剥离)成单一的字符流。:对传入的数据流进行解扰。5,生成空闲序列,当没有可用于传输的包或控制符号时将其插入每个通道的传输字符流中。

2024-03-21 14:53:02 742 1

原创 Rapid IO 逻辑操作和事务类型介绍

对数据执行的操作包括加1运算(increment),减1运算(decrement),测试和交换(test-and-swap),置1操作(set)和清0操作(clear),在这些操作中,只有测试和交换(test-and-swap),比较和交换(compare-and-swap)以及交换(swap)需要处理单元提供数据。它的整个请求操作和NWRITE事务的请求操作完全相同,但是在目标方正确处理请求方的NWRITE_R事务以后,目标方会给请求方反馈一个响应包告诉请求方事务已经被正确的处理。

2024-03-13 10:08:09 1036 2

原创 RapidIO 包格式详解

S位指示这是一个包还是一个控制符号(S=0表示是一个包,S=1表示是控制符号)。: ackID是返回给包发送者的包标识符。串行物理层为该字段定义了5位。这足以在两个器件间唯一的识别最多32个未完成的事务并行物理层只有3位,两个器件间唯一的识别最多8个未完成的事务。: 字段指示用于流量控制的包优先级,2'b11优先级最2’b00优先级最低。: 关键请求流(Critical Request Flow),与prio字段共同决定包的优先级。: 使用16位循环校验码检查包中的错误。

2023-10-31 14:05:53 732 2

原创 Xilinx SRIO IP(Serial RapidIO)学习心得(三) :Example design:srio_gen2_0_support模块介绍

如果在Shared Logic 中选择 include Share Logic in Core 时钟和复位模块将直接包含在 ip核中。在实际使用时 srio_gen2_0_support.v 文件可以直接当作 ip核来调用即可。该模块主要功能 是将 SRIO IP ,时钟 ,复位 组合到一个模块中。

2023-10-25 17:29:36 490 1

原创 Xilinx SRIO IP(Serial RapidIO)学习心得(二): example design 总体介绍说明

在srio_example_top中实例化的srio_quick_start模块可连接到维护端口并生成维护事务。s_axi_maintr: 维护接口,采用AXI4-Lite接口,允许用户应用程序定位本地或远程配置空间。通过以上设置该ip一共生成了4组AXI_Stream接口,和一组AXI_Lite接口 打开例化文件。此文件包含创建对传入事务的响应的逻辑(如果它们是生成响应的数据包类型)s_axis_ireq : 从机的request,m_axis_ireq : 主机的request,

2023-10-25 16:03:46 932 1

原创 Xilinx SRIO IP(Serial RapidIO)学习心得(一):IP总体介绍

Xilinx SRIO IP 包括一个高度灵活和优化的 Serial RapidIO Gen2物理层和一个 Serial RapidIO Gen2逻辑(I/O)和传输层。此IP解决方案以网表形式提供,并提供支持的示例设计代码。SRIO Gen2端点支持1x、2x和4x的车道宽度。它提供了一个可配置的缓冲区设计,参考时钟模块,重置模块,和配置结构参考设计。SRIO Gen2端点使用AXI4-Stream接口进行高吞吐量数据传输,使用AXI4-Lite接口进行配置(维护)接口.

2023-10-23 15:01:23 1947 3

原创 URAM使用说明:xpm_memory_tdpram 原语调用 uram

uram调用和相关参数说明

2023-10-10 14:40:18 2966 1

CAN总线协议-v2.0中文版

can总线协议中文版

2024-07-31

xilinx原语相关介绍最新版(ug974)

XPM,BUFG

2023-10-10

AD7688 verilog 驱动程序

亲测可用

2022-11-10

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除