自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 Mark # 芯片设计合集

史上最全芯片设计合集

2020-06-02 19:54:55 712

原创 Summarization series # 2020.5

A work not, this blog is about the past month’s knowledge points summary.Linux Terminal环境配置文件:源目录下输入source .cshrc_my and then g .cshrc_my或者直接g ~/.cshrc_myg:gvim,cause the file write this sentence:alias g gvim that means use command “g” instead of “gv

2020-06-02 19:47:45 790

原创 Serdes series # CTS

Clock Tree Synthesis,时钟树综合,简称CTS。时钟树综合就是建立一个时钟网络,使时钟信号能够传递到各个时序器件。CTS是布局之后相当重要的一个步骤,在现如今集成了上亿个晶体管的芯片上,如何设计一个合理的时钟网络,是一件非常具有挑战性的事情。CTS的目标:保持时钟信号完整性  这是最基本,也最重要的一点。那时钟信号的完整性包括:时钟的传播延迟(Latency),时钟偏...

2020-04-12 17:27:28 952

原创 Serdes series # skew

skew,我们称为偏差。由于时钟到每个寄存器的路径延迟不一样,造成信号到达 clock pin 的时间也不一样,我们把时钟信号到达不同寄存器的时间偏差称为skew。一直以来,Skew都是衡量时钟树性能的重要参数,传统CTS的目的就是为了减小skew。扩展:...

2020-04-08 11:09:45 558

原创 FPGA series # gamma模块总结文档

虽说回头再看的时候这东西很基础,但也是一开始花了些时间一点点啃下来的。勿忘初心。一、引言1.编写目的:总结gamma矫正模块的总体设计、详细设计及仿真测试、后期优化。2.项目背景:编写gamma矫正模块。3.定 义:gamma校正: 大多数CRT显示器的变换函数产生的亮度值正比于信号幅度的某种能量(称为gamma)。因此高亮度的范围被扩展了,而低亮度的范围被压缩了。在发射之前对...

2019-10-28 10:00:53 1707 1

原创 FPGA series # 前期小知识点

整理以前的笔记,知识点记录。DSP芯片的内部采用程序和数据分开的哈弗结构,具有专门的硬件乘法器,可以用来快速地实现各种数字信号处理算法。  哈弗(Harvard)结构是一种存储器并行体系结构,主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个独立的存储器,每个存储器独立编址,独立访问。CPU首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应对...

2019-10-25 17:12:26 317

原创 FPGA series # 时序约束相关概念

整理笔记时翻到以前做的一个记录,在师父给我讲解了时序约束之后,做的一个较为综合的笔记。  在每个时钟的作用下,门1和门2同时开关,有个人从门1进楼1,如果这个人不能快速穿过楼1 和通道到达楼2的话,就会从通道中掉下去。然后谁来保证他能穿过去呢?  布局布线工具会评估每条布线路径,不符合要求的路径它会重新选择路径,实在布不下去了,就会上报时序错误,即是时序违约。  而工具以什么标准判断过不过...

2019-10-25 11:04:14 275

原创 FPGA series # IC设计笔面试题目总结(二)

IC设计常见面试题目:1.IC设计流程  IC设计分为前端和后端。设计前端也称逻辑设计,主要将HDL语言–>网表;后端设计也称物理设计,是网表–>芯片版图。两者并没有严格的界限,一般涉及到与工艺有关的设计就是后端设计。前端主要有需求分析与架构设计、RTL设计、仿真验证、逻辑综合、STA、形式验证。后端主要包括DFT、布局规划、布线以及版图物理验证。  ① 规格制定(系统总体规划)...

2019-10-22 15:33:39 1835

原创 FPGA series # IC设计笔面试题目总结(一)

三方签毕,就前期准备过的和被问过的题目进行一个总结。FPGA常见面试题目:1. 什么是同步逻辑和异步逻辑?  同步时序逻辑电路的特点:各触发器的时钟端全部连接在一起,并接在系统时钟端,只有当时钟脉冲到来时,电路的状态才能改变。改变后的状态将一直保持到下一个时钟脉冲的到来,此时无论外部输入 x 有无变化,状态表中的每个状态都是稳定的。  异步时序逻辑电路的特点:电路中除可以使用带时钟的触发器...

2019-10-21 16:10:20 4332

原创 FPGA series # FPGA内部资源

勿忘初心,好好学习。FPGA 的基本结构包括7个部分:可编程输入输出单元IOB(Input Output Block)可配置逻辑块CLB(Configurable Logic Block)布线资源(内部连线 Interconnect)数字时钟管理模块(DCM)嵌入式块RAM(BRAM)内嵌专用硬核底层内嵌功能单元常见的内部结构图有这样两张:Part One对这7个部分...

2019-10-10 15:59:57 1002

转载 Mark # 一位资深工程师FPGA设计经验精华

从大学时代第一次接触FPGA至今已有10多年的时间。至今依然记得当初第一次在EDA实验平台上完成数字秒表,抢答器,密码锁等实验时,那个兴奋劲。当时由于没有接触到HDL硬件描述语言,设计都是在MAX+plus II原理图环境下用74系列逻辑器件搭建起来的。后来读研究生,工作陆陆续续也用过Quartus II,Foundation,ISE,Libero,并且学习了verilogHDL语言,学习的过程中...

2019-04-04 16:53:39 261

转载 Mark # RGB转灰度

图像灰度化的三种常见方法源码方法一:对于彩色转灰度,有一个很著名的心理学公式:Gray = R*0.299 + G*0.587 + B*0.114方法二:而实际应用时,希望避免低速的浮点运算,所以需要整数算法。注意到系数都是3位精度的没有,我们可以将它们缩放1000倍来实现整数运算算法:Gray = (R*299 + G*587 + B*114 + 500) / 1000RGB...

2019-03-23 10:14:35 209

原创 FPGA series # 基于SDx的fft函数加速

最近比较丧,也不知道是担心未来还是担心这样的自己SDx建工程,new—>SDx project,展开,src右键—>import(或者在文件夹内添加相应的.c文件)。main.c:#include <stdio.h>#include <math.h>#include "FFT.h"#define N 256extern complex x[s];...

2019-03-20 17:07:23 451

转载 Mark # 自动驾驶之路已走了多远?一文读懂研究现状

自动驾驶载具或将引爆人类的下一次出行方式革命,而我们目前又已经走到了哪一步?近日,巴西圣埃斯皮里图联邦大学的研究者在 arXiv上发布了一篇自动驾驶汽车研究情况总结,并简单梳理了产业界的进展。本文摘取了其中的主干部分,更详细的论述请参阅原文。论文地址:https://arxiv.org/abs/1901.04407我们调查了有关自动驾驶汽车的研究文献,重点关注的是自 DARPA 挑战赛...

2019-01-23 11:04:21 505

转载 Mark # 了解这十大技能只需60秒,却影响工程师们一辈子...

原文:https://mp.weixin.qq.com/s/f11j5oHqQ24TIyBrk1HuSQ电子工程师指从事各类电子设备和信息系统研究、教学、产品设计、科技开发、生产和管理等工作的高级工程技术人才。一般分为硬件工程师和软件工程师。硬件工程师主要负责电路分析、设计;并以电脑软件为工具进行PCB设计,待工厂PCB制作完毕并且焊接好电子元件之后进行测试、调试。软件工程师主要负责单片机、DS...

2019-01-23 10:47:58 320

转载 Mark # 面向对象与面向过程的区别

原文:https://blog.csdn.net/jerry11112/article/details/79027834前言:如果你很想搞明白面向对象是什么,面向过程是什么,或者说二者之间的区别是什么,那么就花费一点时间来研读一下这篇博客,你一定会有很大的收获的!一、面向对象与面向过程的区别面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用...

2019-01-23 10:37:33 222

原创 FPGA series # 用于时序仿真的monitor

monitor是一种思路,时序仿真时想要看到自己写的模块内部各端口的值,以便于改错调试。而不是将自己写的模块作为一个黑盒子,只有几个外部接口,在出问题时不能及时查看数据异常的源头。简单地描述,在写monitor时,从最底层模块中assign想看到的各种端口到自定义的O_monitor中,并将其作为输出,通过调用到上层模块,比如:output [63 : 0] O_monitorassi...

2019-01-21 18:42:34 603

原创 FPGA series # 关于ChipScope的ICON核、ILA核和VIO核

刚入门接触vivado其实是陌生的,陌生之处在于不了解历史。即使是日益更新的技术也是从最初那个0和1一点点垒起来的,每当看到类似于这就是可以这么做,你不用去知道它底层怎么跑的,只要知道怎么使用就行这种话,就想到使用工具会越来越强大,虽然给我们省了很多事,但如果能知道现在的一键里包含以前那么多的过程,也是很有意思的事啊。说起来也是昨儿调试的结果还可观,今早来了再跑一遍的时候萌生了个好奇,翻书查阅了...

2019-01-18 18:17:17 3272

原创 FPGA series # 生成bit文件前注意事项

检查模块各输入输出端口,先在自己原先的工程内run simulation,确认结果一致;system_wrapper的leds的值改一下,以确认当前上板的代码为改动后的;block design的三个步骤由于vivado的一个bug,需手动将E:\0 work\vivado****\linux_ov5640.srcs\sources_1\bd\system\synth内的system.v文...

2019-01-09 19:46:59 1364

转载 FPGA series # 为什么使用 FPGA,相比 CPU、GPU、ASIC(专用芯片)有什么特点?

原标题:如何评价微软在数据中心使用 FPGA 代替传统 CPU 的做法?来源:知乎、AI科技评论 作者:李博杰https://www.zhihu.com/question/24174597/answer/138717507众所周知,通用处理器(CPU)的摩尔定律已入暮年,而机器学习和 Web 服务的规模却在指数级增长。 人们使用定制硬件来加速常见的计算任务,然而日新月异的行业又要求这些定...

2019-01-09 10:21:37 1850

原创 FPGA series # block design 的 error

add module出现的error:unable to resolve module-source based on inputs无法根据输入解析模块源解决方法:这里解释一下,红色标记的部分原本是有个小黄块的,error的出现就是因为那个小黄块,此操作正是为了消除小黄块。由于前期忘记截图,所以手动补上。以后要把截图作为一个记录的小习惯,后期总结用得上。这里原来调用IP核时选择的是...

2019-01-07 16:30:11 1247 1

原创 FPGA series # 行为(Behavior)级和RTL级

RTL级,register transfer level,指的是用寄存器这一级别的描述方式来描述电路的数据流方式;而Behavior级指的是仅仅描述电路的功能而可以采用任何verilog语法的描述方式。鉴于这个区别,RTL级描述的目标就是可综合,而行为级描述的目标就是实现特定的功能而没有可综合的限制。行为级是RTL的上一层,行为级是最符合人类逻辑思维方式的描述角度,一般基于算法,用C/C++来描...

2019-01-02 16:46:57 1491

原创 FPGA series # 双线性插值的图像缩放【雏形】

写了将近一个月的代码,写写删删。一开始花了几天时间撸清了思路,画好了图,下手的时候发现很多地方还是考虑不周。今天好不容易写出点样子来,暂时做个总结。正文:缩放倍数:(分三步)step1:预设好的,比如3、4倍;step2:还是预设好的,缩放因子是一个parameter。可以通过修改代码改变;step3:缩放因子是个变量,不用改代码,可以改变的。从一开始的思路说起吧,之前的博客有撸过算法...

2018-12-28 20:15:07 1938 7

原创 FPGA series # 双线性插值的图像缩放 【算法原理】

准备写双线性插值的图像缩放,先从算法原理开始。查阅资料和一点自己的理解。双线性插值的图像缩放,两方面的理解:线性插值-----&amp;gt;双线性插值;图像缩放。具体定义在百度百科都是有的:双线性插值、图像缩放百度百科上的解释比较偏向于数学研究方面,所以研究起来也比较困难,大概了解一下推算过程。因为这里是用作图像处理,所以仅代入当一种计算规律使用。首先来了解一下算法过程:假如我们想得到未知函...

2018-11-26 19:58:39 3170

原创 Mark # 源码

0linux:linux 0系列版本下载网址http://oldlinux.org/Linux.old/linux 内核源码下载网址:https://mirrors.edge.kernel.org/pub/linux/kernel/0参考:linux源码分析

2018-11-21 11:05:34 236

原创 FPGA series # vivado之添加switch和VIO核

今天在之前代码的基础上,把两组置0的高位数据也通过模块跑了一遍,出来效果还可以看。顺手添加了个开关,当switch置0时不经过gamma模块,置1时经过。assign addrb_r = s_axis_gamma_tdata[23 : 16] ;assign addrb_g = s_axis_gamma_tdata[15 : 8 ] ; assign addrb_b...

2018-11-15 19:35:36 1680

原创 FPGA series #gamma模块加入工程上板接显示屏

折腾了近一个星期的代码,终于调通了。显示屏总算输出正常了,简直开心到飞起啊,哈哈哈哈哈哈,虽然只是小事,但还是很有成就感。毕竟一次次上电一次次失望,累积起来更多的期望。自己写的bug,跪着也要改完!正题,总结一下。-------------------------------------------------分割线---------------------------------------...

2018-11-14 19:55:57 3017

原创 FPGA series # vivado IP integrator之添加system ila核

加班加班加班,啥都想学但似乎啥都学不好,差的太多了。简单地总结一下。照样,open block design,右键,选择add IP,输入ila这里选择system ILA,框框内生成一个IP核双击monitor type选择interface(各种总线型),这里用的是AXIS的接口,所以选择interface(其他选项,如native表示单端口)。现只探取两个端口的信号,所以numbe...

2018-11-07 19:05:37 4837 2

原创 FPGA series # 代码习惯之if的嵌套

always@(posedge clk) begin s_axis_gamma_tready &amp;amp;amp;lt;= m_axis_gamma_rready ; if(resetn) begin m_axis_gamma_tvalid &amp;amp;amp;lt;= s_axis_gamma_rvalid ; m_axis_gamma_tlast &amp;amp;amp;lt;= s_axis_gamma_rlast ; m_...

2018-11-07 18:21:56 4714

原创 FPGA series # vivado IP Integrator之添加module

第一记今儿由于上板连显示屏后显示画面与之前并无二致,所以师父特的提醒一些操作是否正确。有些内容其实是之前说过的,但是我操作的时候给忘了,甚感羞愧。。。正题。工程是完整的工程,原工程版本是2017.2,现用vivado2017.4。我只是在工程代码中加自己写的小小的gamma矫正模块,后师父说把该模块加在IP Integrator中。所以出现以下操作,现记录正确操作。在打开linux_ov564...

2018-11-07 11:47:15 4312

空空如也

空空如也

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

TA关注的人

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