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

技术

TVM学习(六)细读前端

用了几章的篇幅写了一些粗读TVM代码的收获,虽然读了一点皮毛,但是还是掌握了TVM的基本架构和代码组成,算是给以后的精读打下了一点基础吧。从这章开始再从头捋一遍TVM代码,顺序是frontend-build-optimize-lower-target

【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十一章 PS端UART读写控制

在前面的实验中,大家或多或少会发现有打印信息的情况,主要是调用”xil_printf”或”printf”,但是通过什么打印信息呢?我们还记得打印信息之前设置了串口,是的,确实是串口,但这些函数是如何调用串口呢?其实我们可以在”xil_printf”函数定义中看到,注意outbyte函数就是调用UART打印的

【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十章 PS端RTC中断实验

实时时钟(rtc)单元为系统和应用软件提供精确的时间基准。为了满足高精度的需要,实时时钟还包括校准电路,以补偿温度和电压波动。RTC 由 VCC-PSAUX 或 VCC-PSBATT 电源供电。当辅助电源可用时,RTC 使用它保持计数器活动。当辅助电源不可用时,RTC 自动切换到 VCC PSBATT 电源。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十九章Hello World(下)

此文基于第十八章内容进行软件开发

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十八章Hello World(上)

前面的实验都是在PL端进行的,可以看到和普通FPGA开发流程没有任何区别,ZYNQ的主要优势就是FPGA和ARM的合理结合,这对开发人员提出了更高的要求。从本章开始,我们开始使用ARM,也就是我们说的PS,本章我们使用一个简单的串口打印来体验一下Vivado Vitis和PS端的特性。

基于ZYNQ的光纤-以太网高速传输系统设计

为满足合成孔径雷达实时成像、数据回放等高速可靠数据传输需求,解决传统数据传输系统由于接口要求高、体积与功耗大以及网络配置不灵活等原因不适合用于外场试验的问题,基于 ZYNQ 芯片设计一种光纤接口到以太网接口的数据传输系统。主要介绍数据传输流程的实现方法,并提出一种三级乒乓和指令并行的优化策略保证数据正确,提高传输速度

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十七章 Vitis准备工程及注意事项

所有的工程目录下都有个bootimage文件夹,存放了对应的BOOT.bin文件,可将此文件拷贝到Vitis_image_download文件夹,覆盖原有的BOOT.bin。也可以把BOOT.bin放到SD卡启动验证功能

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十六章 7寸液晶屏显示实验

基于HDMI输出实验,本章介绍7寸液晶屏的显示。LCD屏显示方式从屏幕左上角一点开始,从左向右逐点显示,每显示完一行,再回到屏幕的左边下一行的起始位置,在这期间,需要对行进行消隐,每行结束时,用行同步信号进行同步

Dataflow | 粗粒度并行优化的任务级流水

在本文中,我们将重点放在如何能够在不需要特殊的库或类的情况下修改代码风格以实现C代码实现并行性。Xilinx HLS 编译器的显着特征是能够将任务级别的并行性和流水线与可寻址的存储器 PIPO或 FIFO相结合。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十五章 HDMI字符显示实验

在HDMI输出实验中讲解了HDMI显示原理和显示方式,本实验介绍如何使用FPGA实现字符显示,通过这个实验更加深入的了解HDMI的显示方式。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十四章 HDMI输出实验

前面我们介绍了led闪灯实验,只是为了了解Vivado的基本开发流程,本章这个实验相对LED闪灯实验复杂点,做一个HDMI输出的彩条,这也是我们后面学习显示、视频处理的基础。实验还不涉及到PS系统,从实验设计可以看出如果要非常好的使用ZYNQ芯片,需要良好的FPGA基础知识。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十三章 RS485实验

本章以AN3485模块介绍RS485的数据传输。

一种介绍DPU架构(自适应交换机)的文章

在本文中,我们将进一步采取主动行动,以解决网络核心(交换机)中当前的专有处理和计算问题。我们提出了一种新的硬件架构,称为自适应交换机。基于对其支持三个用例的原型的测试,我们证明了在可适应的交换机上可以同时实现高吞吐量和处理灵活性。

Unroll & Pipeline | 细粒度并行优化的完美循环

HLS 优化设计的最关键指令有两个:一个是流水线 (pipeline) 指令,一个是数据流(dataflow) 指令。正确地使用好这两个指令能够增强算法地并行性,提升吞吐量,降低延迟但是需要遵循一定的代码风格。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十二章 RS422实验

本章利用AN3485模块实现RS422接口数据传输。关于模块,在前面的RS232实验中已经介绍过,本实验不再赘述。RS422与RS232在与FPGA的连接的接口上是一样的,都是TXD和RXD,因此,本实验在RS232实验的基础上,例化出两路连接到RS422接口芯片MAX3490上

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十一章 RS232实验

本章采用AN3485模块的RS232电路实现UART数据传输。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第十章 PWM呼吸灯实验

本文主要讲解使用PWM控制LED,实现呼吸灯的效果。

TVM学习(五)schedule

Schedule是和硬件体系结构相关的一些列优化,Halide在其文章中对其做了以下定义,第一条是描述了数据计算顺序对性能的影响,第二条是数据的存储位置对性能影响,最后一条是多线程处理过程中,不同线程数据应该如何进行交互。

【ZYNQ Ultrascale+ MPSOC FPGA教程】第九章Vivado下按键实验

按键是FPGA设计当中最常用也是最简单的外设,本章通过按键检测实验,检测开发板的按键功能是否正常,并了解硬件描述语言和FPGA的具体关系,学习Vivado RTL ANALYSIS的使用。

高层次综合技术原理浅析

说起高层次综合技术(High-level synthesis)的概念,现在有很多初学者简单地把它理解为可以自动把c/c++之类地高级语言直接转换成底层硬件描述语言(RTL)的技术。其实更准确的表述是:由更高抽象度的行为描述生产电路的技术。