4 alangaixiaoxiao

尚未进行身份认证

我要认证

科研虐我千百遍,我待科研如初恋

等级
TA的排名 7w+

Vivado当中的ooc与global模式

OOC-脱离上下文ooc(out of context)是在Vivado当中非常常用的概念。在ug1118中关于ip_core OOC模式下的约束文件的描述中有两点:OOC约束的USED_IN属性应该同时设置synthesis,implementation,out_of_context而不是只设置out_of_context;(page16)OOC约束在编译的时候,处理顺序早于非OOC约束的文件,甚至早于PROCESSING_ORDER设置成EARLY的情况。(page16)概述这个方面最详细的内

2020-07-09 11:28:46

FPGA优化-max_fanout命令

vivado自带很多命令帮助编译器更好的实现设计者的想法,用得好会变成开发利器。比如,max_fanout命令,本身是用来约束扇出,减少布线拥塞的常用命令。然而很多读者向我反映,使用这个命令之后发现没有任何事情发生,完全没有任何效果。这里我就带大家理一理这个命令的使用方法。max_fanout起作用的条件1. 打算降低扇出的网络必须是reg驱动。因为降低扇出的原理就是reg驱动超过N(设置参数)条网络的时候,就复制一个同样的reg驱动其他N条网络,如果复制2个还不够就一直复制到足够为止,见图...

2020-07-06 17:00:01

Opencv图像基础代码

一、Opencv支持的图片格式OpenCV目前支持的图像格式包括:Windows位图文件 - BMP, DIB;JPEG文件 - JPEG, JPG, JPE;便携式网络图片 - PNG;便携式图像格式 - PBM,PGM,PPM;Sun rasters - SR,RAS;TIFF文件 - TIFF,TIF;OpenEXR HDR 图片 - EXR;JPEG 2000 图片- jp2。可以用cvSaveImage函数或者imwrite()函数来实现不同图像格式之间的转换,保存时的后缀名就

2020-06-19 16:59:26

JPEGLS图像压缩算法的FPGA实现(一)压缩算法

绪论JPEG-LS是在ISO/ITU的新标准中用于对静态连续色调图像进行无损或进无损压缩的一种算法。它不是JPEG的一个简单扩充或修正,是一种新的压缩方法。支持无损和近无损图像压缩,不使用离散余弦变换,也不使用算术编码,仅在近无损压缩模式下有限地使用量化。。该算法具有实现复杂度低,保真度高等特点,本文就JPEG-LS的核心算法LOCO-I以及其编码流程进行详细的分析和研究。1.压缩算法简介与评估1.1 压缩算法简介无损压缩就是指经过压缩并重建后的图像和原图像完全一样,没有任何损失。如果重建图像和原图

2020-06-10 14:46:58

Xilinx FIFO使用小结

FIFO的使用非常广泛,一般用于不同时钟域之间的数据传输,或者用于不同数据宽度之间的数据匹配。在实际的工程应用,可以根据需要自己写FIFO。不考虑资源的情况下,也可以使用Xilinx提供的IP核来完成。接口类型选择Native,SOC芯片上也可以根据需要选择AXI接口。选择存储器类型:可以用块RAM、分布式RAM,移位寄存器和内嵌FIFO来实现FIFO。这里主要是block RAM和distribute RAM之间的区别。简而言之,block RAM是FPGA中定制的ram资源,而distribute

2020-06-08 11:21:39

Xilinx FPGA错误、调试记录

1.Verilog语法错误FATAL_ERROR: Vivado Simulator kernel has discovered an exceptional condition from which it cannot recover. Process will terminate. For technical support on this issue, please open a WebCase with this project attached at http://www.xilinx

2020-06-05 14:39:08

Verilog 有符号数与无符号数运算

无符号数运算,左值位宽不够,发生截断的现象reg [3:0] a = 4'b1111;//15reg [3:0] b = 4'b0010;//2wire [3:0] c;wire [3:0] show_c; assign c = a + b;//1assign show_c = a + b;//12. 两个无符号数运算,赋值给一个有符号的数。可以看出,右侧先按照无符号数进行运算,取得的运算结果按照左侧的符号进行.

2020-05-19 14:35:27

FPGA LUT查找表原理和编程方式

一、查找表LUT就是查找表,对于4输入的LUT而言,实际上就是4位地址位,一位数据位的存储器,能够存储16位数据,所以我们在FPGA设计中可以用LUT组建分布式的RAM。这样也可以解释我们在设计中为什么要采用流水线的实现方法因为当输入数据的位数远大于一个LUT的输入时,就需要用多个LUT级联来实现逻辑,那么级联产生的延时也就不可避免了,这样就会制约系统的运行频率。那么为了避免级联数过于多,就采用插入寄存器的方法来实现。举一个简单的例子,如果要实现一个6*1的mux可以用一个6输入的LUT或...

2020-05-15 16:29:30

ZYNQ 启动过程

转载自:http://design.eccn.com/design_2016120213185392.htm本文主要介绍zynq启动过程,主要包括BootROM和FSBL等的执行过程。硬件启动过程1、重新上电或POR复位后进行硬件启动过程2、扫描“启动引脚”设置,并存入只读寄存器slcr.BOOT_MODE中3、若使能pll,则等到pll输出时钟;若旁路pll,则直接使用ps_clk时钟BootROMBo...

2020-05-15 15:54:14

Xilinx FPGA 将寄存器放入IOB中

xilinx FPGA的资源一般指IOB,CLB,BRAM,DCM,DSP五种资源。其中IOB就是input/output block,完成不同电气特性下对输入输出信号的的驱动和匹配要求。IOB的作用就是完成信号的采集和输出,引脚可以配置支持不同电气特性,上拉下拉或三态,差分或单端。有ologic,i...

2020-05-15 14:03:07

XILINX静态时序分析专题一:setup time

好记性不如烂笔头,记录下vivado寄存器与寄存器之间的时序分析方法,本篇介绍vivado setup的分析方法,本篇为个人理解,如有错误,望指正。如下面几幅图所示,主要分为四个部分:从图中可以看出这条路径的基本信息,slack为时序裕量,source为源寄存器,destination为目的寄存器,requirement为时钟周期,dat...

2020-05-14 10:22:39

Xilinx FPGA全局时钟网络

在 Xilinx 系列 FPGA 产品中,全局时钟网络是一种全局布线资源,它可以保证时钟信号到达各个目标逻辑单元的时延基本相同。其时钟分配树结构如图1所示。IBUFDS、IBUFGDS和OBUFDS都是差分信号缓冲器,用于不同电平接口之间的缓冲和转换。1. IBUFG 即输入全局缓冲,是与专用全局时钟输入管脚相连接的首级全局缓冲。所有从全局时钟管脚输入的信号必须经过IBUFG单元,否则在布局布线时会报错。IBUFG支持AGP,CTT,GTL,GTLP,HSTL,LVCMOS,LVDCI,LVPECL,

2020-05-14 09:48:49

Verilog generate循环

一:generateVerilog-2001添加了generate循环,允许产生module和primitive的多个实例化,同时也可以产生多个variable,net,task,function,continous assignment,initial和always。在generate语句中可以引入if-else和case语句,根据条件不同产生不同的实例化。用法:generate语法有generate for, genreate if和generate case三种generate for语句必

2020-05-13 16:29:51

Verilog-2001的向量部分选择

Verilog-2001的向量部分选择什么是向量部分选择呢?verilog-2001 LRM中有这么一句话:对于a[8*i+:8],this is the so-called “Indexed vector part selects” 。在Verilog-1995中,可以选择向量的任一位输出,也可以选择向量的连续几位输出,不过此时连续几位的始末数值的index需要是常量。vect[msb_expr : lsb_expr]; //其中msb_expr和lsb_expr必须是常量表达式。而在Veri

2020-05-13 16:18:19

yolov3-tiny工程应用和实现

目录前言相关推荐yolov3-tiny 原理yolov3-tiny 源码分析配置网络结构前言从去年十一月份开始学习yolo神经网络用于目标识别的硬件实现,到现在已经六个月了。一个硬件工程师,C/C++基础都差劲的很,对照着darknet作者的源码和网上东拼西凑的原理讲解,一点一点地摸索。刚开始进度很慢,每天都感觉学习不了几行代码,到后来慢慢的入了门,每周都有不菲的收获和重大的进展。总结一下自己...

2020-04-15 15:56:09

HLS debug记录

上次调试碰到了一个雷区,一点细节没注意,让我调试了一下午,这次又是这个细节,调试了整整一天。怀疑了一切之后,终于看见了她。哎,又爱又恨啊,开篇博客记录一下遇到的坑,一点点的积累。1.现象: C Simulation正确,上板验证部分数据错误原因: 数组空间太小,写入的数据溢出static int input_map_buffer_temp[input_map_lengt...

2020-03-13 16:50:01

基于AXI Stream的VGA控制器

显示器扫描方式分为逐行扫描和隔行扫描:逐行扫描是扫描从屏幕左上角一点开始,从左像右逐点扫描,每扫描完一行,电子束回到屏幕的左边下一行的起始位置,在这期间,CRT对电子束进行消隐,每行结束时,用行同步信号进行同步;当扫描完所有的行,形成一帧,用场同步信号进行场同步,并使扫描回到屏幕左上方,同时进行场消隐,开始下一帧。隔行扫描是指电子束扫描时每隔一行扫一线,完成一屏后在返回来扫描剩下的线,隔行扫描的显...

2018-11-20 16:58:25

Matlab 基础知识-细节 积累

1.在利用matlab处理图像时务必慎用abs函数clearclccd('C:\Documents and Settings\Administrator\桌面'); I = imread('pig.jpg');B = I(:, :, 3); a = 200b = 220 c = B(100, 100)d1 = abs(a - c)d2 = abs(c - b)结果为...

2018-11-12 11:14:30

基于FPGA的bayer转RGB算法

一.基本知识Raw RGB 每个像素只有一种颜色(R、G、B中的一种);RGB 每个像素都有三种颜色,每一个的值在0~255之间;在手机摄像头的测试过程中,由sensor输出的数据就是Raw data(Raw RGB),经过彩色插值就变成RGB。也不一定就是测试过程,想要获得真正的图像,都必须有的一个过程;sensor输出的数据格式,主要分两种:YUV(比较流行),RGB,这就是sons...

2018-11-07 14:22:56

SDRAM_controller ---2017.12.13

这是我第一次开始自己在板子上做一个不大不小的项目,嗯,或者叫做小的自我测试,对于来到国科实习这么久的一个考试。用了两周半的时间,中间还穿插着被安排了做一点别的事情,结果只是勉强及格吧,很勉强,不谦虚,看到了自己很多的不足,这个行业需要的知识太多了,也更新的太快了----致还不太老的自己。一. about sdram 1.SDRAM:Synchronous Dynamic Random Ac...

2018-08-05 20:45:13

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。