跳转到主要内容
瑞苏盈科专栏
我与瑞苏盈科板卡的开发故事

博客

JESD204B应用手册(一):什么是JESD204

2006年4月,JESD204标准的最原始版本诞生,该标准描述了数据转换器(ADC或DAC)和接收器(FPGA或者ASIC)之间的吉比特串行数据传输链路(link)。在这个原始标准中,一个或多个数据转换器与接收器之间的串行链路被定义为有且只有一条数据通道(lane)

ZCU106 XRT PetaLinux工程分析【Xilinx Vitis】

在ZCU106 XRT环境搭建【Xilinx Vitis】中针对我本地的环境,以及ZCU106的需求,生成了最终使用的PetaLinux工程。PetaLinux工程的创建、编译都是使用脚本peta_build.sh 来完成的。这篇文章分析一下我本地的不同于ZCU102、ZCU104的区别。

ZYNQ入门实例——三种GPIO应用、中断系统及软硬件交叉触发调试

Xlinx的ZYNQ系列SOC集成了APU、各种专用外设资源和传统的FPGA逻辑,为ARM+FPGA的应用提供助力,降低功耗和硬件设计难度的同时极大提高两者间传输的带宽。之前在研究生课题中使用过ZYNQ搭建环路系统对算法进行板级验证

ZCU106 XRT Vivado工程分析【Xilinx Vitis】

在上一篇ZCU106 XRT环境搭建【Xilinx Vitis】中,我参考了XRT中其它平台(ZCU102,ZCU104)的Vivado TCL脚本,同时参考了官方的VCU相关工程,编写了ZCU106 XRT的脚本。在这篇文章中将对该工程进行一下分析。

ZCU106 XRT环境搭建【Xilinx Vitis】

最近在看Xilinx新出的工具Vitis,这个工具咋说呢,改了好多。。
之前的SDSoC,SDAccel统一被Vitis来实现
之前按的SDK直接被Vitis替代

Python 语法之精妙的10个知识点

本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。

如何进行IO管脚约束?

IO管脚约束是FPGA设计上板验证的必需环节,它们会对布局布线和时序造成影响。有三种方式来进行管脚约束,一种是通过VIvado管脚约束界面,一种是通过命令行,还有一种可以导入CSV文件

Xilinx FPGA和CPLD供电

基于闪存技术的Xilinx CPLD具有较低的逻辑密度,功耗也比较低。为了提高逻辑密度、集成更多功能,PLD厂商的每一代器件都会采用当前最新的工艺技术。不同的功能需求以及集成工艺,使得PLD的供电电压有所不同。

FPGA中加减乘除运算的注意问题

在进行加减乘除运算时一定要注意位宽,保证足够大的位宽,防止数据溢出,如果溢出结果就会出现错误,尤其是加和乘运算,一定要计算好位宽(位宽的计算可以都取其最大值,看最大值计算后的位宽就是最大位宽,采用这个位宽数据就溢出不了)

谈谈Xilinx的6输入LUTS(查找表)

最近用了赛灵思最新UltraScale系列芯片,然后就拿着赛灵思的UG好好研究了一番。发现这个这个系列的FPGA跟ZYNQ相比有了改变,原来ZYNQ是一个CLB包含2个SLICE,然后每个SLICE同时又包含4个6输入LUTS。

FPGA异步复位同步释放解析

FPGA开发中,一种最常用的复位技术就是“异步复位同步释放”,这个技术比较难以理解,很多资料对其说得并不透彻,没有讲到本质,但是它又很重要,所以对它必须理解,这里给出我的看法。

同源时钟、同相位时钟、同时钟域时钟

同相位时钟可以频率不同,但是时钟跳变沿是对齐的。如图所示,clk0为慢时钟,clk1为快时钟,clk0的时钟沿始终与clk1的时钟沿对齐,两个时钟相位相同。同源时钟,通常由一个PLL或者DLL产生,相位不需要相同,只要求相位固定。

Vivado之增量编译的实现

增量编译对于电路设计之后的调试非常重要,每次也许只修改了一行代码,改了某个值,如果没有增量编译,就只能重新跑一边项目,对于小项目貌似没有太大影响,但是对于一个大项目,每次改一点内容就要重新进行一遍综合,实现,生成比特流,这个过程及其浪费时间,所以增量编译是很必要的。

关于 vivado 的IO口约束

为了改进系统同步接口中时钟频率受限的弊端,一种针对高速I/O的同步时序接口应运而生,在发送端将数据和时钟同步传输,在接收端用时钟沿脉冲来对数据进行锁存,重新使数据与时钟同步,这种电路就是源同步接口电路(Source Synchronous Interface)。

UART串口协议

通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),通常称作UATR,是一种异步收发传输器。将数据由串行通信与并行通信间做传输转换,作为并行输入称为串行输出的芯片。UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。

【 Vivado 】理解工程模式和非工程模式

Vivado设计套件有两个主要使用模型:项目模式和非项目模式。 可以通过Vivado IDE或通过Tcl命令和批处理脚本开发和使用项目模式和非项目模式。

Vivado中如何避免信号被优化掉?

刚写了一段 Verilog代码,辛辛苦苦花了很长时间综合,在debug的过程中,却找不到需要debug的信号了,查看网表发现没有?这种情况是因为我们的某些中间信号被优化掉了。

Xilinx FPGA Configuration 技术小结

对于大部分人来说,至少入门时会用到的烧写方式就两种:① 通过JTAG直接将bitsteam 烧录到FPGA。② 在设计release以后,到产品上一般都是把配置文件通过IDE工具保存存在Nor Flash里。

Verilog的基础语法

虽然Verilog硬件描述语言有很完整的语法结构和系统,这些语法结构的应用给设计描述带来很多方便。但是Verilog是描述硬件电路的,它是建立在硬件电路的基础上。有些语法结构是不能与实际硬件电弧对应起来的,比如for循环,它是不能映射实际的硬件电路的,因此,Verilog硬件描述语言分为可综合和不可综合语言。

Verilog基础知识

Verilog HDL是一种用于数字系统设计的语言。Verilog HDL既是一种行为描述的语言也是一种结构描述的语言。无论描述电路功能行为的模块或描述元器件或较大部件互联的模块都可以用Verilog语言来建立电路模型。Verilog模型可以是实际电路的不同级别的抽象。