FPGA
rrr2
这个作者很懒,什么都没留下…
展开
-
Xilinx SDK中设置显示代码行数以及调整字体大小
refhttps://blog.csdn.net/weixin_37182342/article/details/862863201、显示代码行数首先打开SDK,选择Window -> Preferences2 字体大小转载 2020-11-01 19:40:21 · 2516 阅读 · 0 评论 -
DDR工作原理
1 引言DDR SDRAM全称为Double Data Rate SDRAM,中文名为“双倍数据流SDRAM”。DDR SDRAM在原有的SDRAM的基础上改进而来。也正因为如此,DDR能够凭借着转产成本优势来打败昔日的对手RDRAM,成为当今的主流。本文只着重讲讲DDR的原理和DDR SDRAM相对于传统SDRAM(又称SDR SDRAM)的不同。DDR SDRAM与SDRAM一样,在开机时也要进行MRS,不过由于操作功能的增多,DDR SDRAM在MRS之前还多了一EMRS阶段(Extended原创 2020-09-29 20:31:16 · 852 阅读 · 0 评论 -
Micron内存DDR3型号查询 memory part
丝印有两行:第一行的数字代表了产地等生产信息第二行是FBGA Code,通过这个可以在上述网址搜到产品的完整型号!!譬如上图是挂在FPGA上的DDR3,第二行是“D9PTK”https://www.micron.com/support/tools-and-utilities/fbga芯片的确为MT41K128M16JT-125:KMicron(美光)内存颗粒的容量辨识相对于三星来说简单许多。下面就以MT48LC16M8A2TG-75这个编号来说明美光内存的编码规则。 含义:MT——M.原创 2020-09-28 23:31:11 · 8409 阅读 · 1 评论 -
petalinux介绍及安装
Petalinux是Xilinx公司推出的嵌入式Linux开发套件,包括了Linux Kernel、u-boot、device-tree、rootfs等源码、库,以及Yocto recipes,可以让客户很方便的生成、配置、编译及自定义。Petalinux支持Zynq UltraScale+ MPSoC、Zynq-7000全可编程SoC,以及MicroBlaze,可与Xilinx硬件设计工具Vivado协同工作,大大简化了Linux系统的开发工作。 使用PetaLinux工具,开发人员可以定制u-b原创 2020-09-23 00:58:40 · 13220 阅读 · 0 评论 -
芯片封装
BGA(ball grid array):焊球阵列封装,封装体基板的底部制作阵列焊球作为电路的端与(PCB)互接PGA(pin grid array):针栅阵列封装,基板底部为针状阵列作为电路I/O端口。BGA/PGA一般使用环氧树脂纤维(称为PCB)或者陶瓷基板,在基本的一面进行布线,另一面进行植球或者进行焊接插针。flip-chip倒焊芯片。裸芯片封装技术之一,在LSI 芯片的电极区制作好金属凸点,然后把金属凸点与印刷基板上的电极区进行压焊连接。封装的占有面积基本上与芯片尺寸相同。...原创 2020-09-12 23:16:46 · 497 阅读 · 0 评论 -
ZYNQ AXI DMA
AXIDMA: 官方解释是为内存与AXI4-Stream外设之间提供高带宽的直接存储访问。AXI DMA主要包括Memory Map和 Stream两部分接口,前者连接PS子系统,后者则连接带有流接口的PL IP核。其可选的scatter/gather功能可将CPU从数据搬移任务中解放出来。在ZYNQ中,AXIDMA就是FPGA访问DDR3的桥梁,不过该过程受ARM的监控和管理。使用其他的IP(也是AXI4-Stream转AXI4-MM)可以不需要ARM管理,但是在SOC开发时是危险的,这是后话了。h原创 2020-08-22 23:45:38 · 263 阅读 · 0 评论 -
Vivado RTL Schematic两种寄存器
使用CE 和使用MUX进行选择egmodule module_name( clk , rst_n , judge, // en_data, // not_en_data,, //其他信号,举例dout dout ); //输入信号定义 input clk ; inp...原创 2020-04-16 16:53:03 · 2752 阅读 · 0 评论 -
FPGA学习方法
本文转自网络。http://bbs.elecfans.com/jishu_1593467_1_1.html文章不错。问:本人零基础,想学FPGA,求有经验的人说说,我应该从哪入手,应该看什么教程,应该用什么学习板和开发板,看什么书等,希望有经验的好心人能够给我一些引导。如果想速成,那就上网看视频吧,这样主要是面对应用的,一个小时内让你的板子运行起来。早期起来的快,活学活用,就是后期没有系统理...转载 2020-04-11 17:17:34 · 2436 阅读 · 1 评论 -
可编程逻辑器件programmable logic device
存储器ROM字线,存储空间里第几个字位线 一个字几位电路结构组成地址线上两个二极管截止的通路为字选.该通路的位可以是1,否则对应的位为0如图中W2选中时候,只有D2接了二极管,导通,D2为1,其他为接地0电势。PROM字线位线之间全加了二极管和可熔断熔丝,默认全部置1.要存入0,熔断即可。EPROMerasable programmable read onl...原创 2020-04-07 17:22:29 · 1279 阅读 · 0 评论 -
进位链FPGA
进位链CI是上一个CARRY4的进位输出,位宽为1;CYINT是进位的初始化值,位宽为1;DI是数据的输入(两个加数的任意一个),位宽为4;SI是两个加数的异或,位宽为4;O是加法结果输出,位宽为4;CO是进位输出,位宽为4;(为什么进位输出是4bit?后面有解释)Carry4的内部结构如下图所示这里我们要先解释一下FPGA中利用Carry Chain实现加法的原理,比如两个加...原创 2020-03-01 22:31:36 · 2207 阅读 · 0 评论 -
处理器运算能力单位
计算性能模型对于硬件的要求,第一个是计算量,即一个深度学习模型需要多少次计算才能完成一次前馈.除了运算量之外,模型对内存带宽的需求也是影响实际计算所需要时间的重要参数。如果把内存比做高速路,运算单元比作车道数,那么数据就是路上的车,而内存接口就是收费口,通过收费口的数据才能进入车道行驶(运算处理)。而内存带宽就是收费口的宽度了。收费口宽度越窄,则数据需要越多时间才能进入车道(处理单元)。正所谓...原创 2020-03-01 10:34:38 · 2999 阅读 · 0 评论 -
FINN CNV二值网络论文
一种快速,可扩展的二值化神经网络框架2016 FINN: A Framework for Fast, Scalable Binarized Neural Network InferenceAbstractFINN,一个使用灵活的异构流结构构建的快速和灵活的FPGA加速器的框架。实现了全连接、卷积和池化层,每层计算资源可以根据用户提供的吞吐量要求进行调整。在ZC706嵌入式FPGA平台上,系统...原创 2020-02-29 21:30:56 · 1584 阅读 · 1 评论 -
VGA 协议理解
颜色行列信号abcde,opqrs都是图中的含义,分别是行列,每行发几个像素,发多少行。有前后标定用的非图像像素的像素。@60是显示屏刷新率,显示一个像素点的时间是1/60MHz,越大显示的越快。时钟是指针对某一个尺寸的图像,总共需要的时间。计算...原创 2020-02-24 17:20:00 · 1885 阅读 · 0 评论 -
MSB LSB
LSB(Least Significant Bit),意为最低有效位。MSB(Most Significant Bit),意为最高有效位。若MSB=1,则表示数据为负值,若MSB=0,则表示数据为正。例如一个12位串行转换器,它会输出由1或0组成的12位数串。通常,转换器首先送出的是最高有效位(MSB)(即LSB + 11)。有些转换器也会先送出LSB。在下面的讨论中,我们假设先送出的是MSB...原创 2020-02-23 18:22:06 · 508 阅读 · 0 评论 -
串口、COM口、并口、RS232、USB
RS232RS422/485原创 2020-02-23 16:36:02 · 7873 阅读 · 0 评论 -
异步复位同步释放
概念所谓异步复位,同步释放 就是在复位信号到来的时候不受时钟信号的同步,而是在复位信号释放的时候受到时钟信号的同步,在下一个clk触发沿来到后起的作用(释放)。目的同步释放:防止复位信号释放时,产生亚稳态。如何产生亚稳态复位结束也就是释放的时刻恰在时钟上升沿的建立时间和保持时间之间(亚稳态窗口)时无法决定现在的复位状态是1还是0,造成亚稳态。实现同步释放方法如何实现同步释放,即当复...原创 2020-02-19 16:52:34 · 354 阅读 · 0 评论 -
建立时间和保持时间详细分析及举例
refhttps://blog.csdn.net/FBICIACCC/article/details/52683901?utm_source=distribute.pc_relevant.none-taskSTA分析是基于同步电路设计模型的,在数据输入端,假设外部也是同时钟的寄存器的输出并且经过若干组合逻辑进入本级,而输出也被认为是驱动后一级的同时钟的寄存器。在不设置约束的情况下,纯组合逻辑的...转载 2020-02-19 10:53:14 · 645 阅读 · 0 评论 -
时钟频率
最小时钟频率T=寄存器传输时间+组合逻辑线延迟+建立时间原创 2020-02-11 19:16:34 · 816 阅读 · 0 评论 -
状态机
定义:将电路分成不同状态组成状态转移条件输出实现三段式1 rst_n2 状态case3 输出原创 2020-02-11 19:13:17 · 278 阅读 · 0 评论 -
LUT及综合使用
基本概念LUT显示查找表(Look-Up-Table)本质上就是一个SRAM。它把数据事先写入RAM后,每当输入一个信号就等于输入一个地址进行查表,找出地址对应的内容,然后输出。目前主流FPGA都采用了基于SRAM工艺的查找表结构,也有一些军品和宇航级FPGA采用Flash或者熔丝与反熔丝工艺的查找表结 构。通过烧写文件预存(这一步在我们用bit文件配置FPGA时实现)改变查找表内容的方法来...原创 2020-02-05 13:15:05 · 5007 阅读 · 0 评论 -
BRAM对应的IP核调用和使用
Vivado软件中包含有三种类型的 IP核,包括数据处理类IP核、驱动类IP核、存储类IP核。与BRAM对应的存储型IP核是Block Memory Generator(BMG)调用BRAM首先在Vivado界面的右侧选择IP Catalog 选项。然后就可以在IP 目录中,选择想要的IP核,此处在搜索框输入BRAM,选择我们要使用的BRAM IP核。basic设置(1)在com...原创 2020-02-05 11:52:25 · 5748 阅读 · 0 评论 -
时钟抖动(jitter)和时钟偏移(skew)
jitter:由于晶振本身稳定性,电源以及温度变化等原因造成了时钟频率的变化,就是jitter,指的是时钟周期的变化。指两个时钟周期之间存在的差值,这个误差是在时钟发生器内部产生的,和晶振或者PLL内部电路有关,布线对其没有影响。由于跟晶振本身的工艺有关,所以在设计中无法避免它能带来的影响,通产只能在设计中留有一定的margin。skew:是指同样的时钟产生的多个子时钟信号之间的延时差异。ske...原创 2020-02-04 22:41:55 · 5899 阅读 · 0 评论 -
FPGA时钟资源
时钟资源在Xilinx的FPGA中,时钟网络资源分为两大类:全局时钟资源和区域时钟资源。全局时钟,是一种专用互连网络,它可以降低时钟歪斜、占空比失真和功耗,提高抖动容限。Xilinx的全局时钟资源设计了专用时钟缓冲与驱动结构,从而使全局时钟到达CLB、IOB和BRAM的延时差最小。所以这类资源在FPGA比较宝贵,一般器件手册都会有多少个全局时钟的介绍。局域时钟则只是能够驱动FPGA部...原创 2020-02-04 19:31:15 · 1979 阅读 · 0 评论 -
对傅里叶变换理解
我们平时一般接触的是时域波形图,比如有一个周期信号叫做小白,她的时域波形图是这个样子的:任何一个满足一定条件的信号,都可以被看成是由无限个正弦波叠加而成。在这里,小白就是由许许多多的正弦波叠加而成。。。透视一下,我们可以看到她的原形:这些许许多多的正弦信号一般都是不同频率下的。如果我们把频率也添加进来分析,就会构成一个三维图,那我们便会看到这样一幅画面:如果我们只看这些这些信号的频率,那...转载 2020-02-03 22:42:12 · 423 阅读 · 0 评论 -
锁相环PLL
振荡电路产生晶振,石英晶体的压电效应导致晶片的机械变形,而晶片两侧施加机械压力又会产生电,形成振荡。它的谐振频率与晶片的切割方式、几何形状、尺寸有关,其振荡电路可以获得很高的频率稳定度,但是频率无法做到很高。LC振荡,电容Capacity的充电放电能够存储电能,而充放电的电流方向是反的,形成振荡。可通过电压等控制振荡电路的频率。PLL(锁相环)(相位锁栓回路,PhaseLock...原创 2020-02-03 17:10:25 · 557 阅读 · 0 评论 -
FPGA组成
0 公司Xilinx: Artix-7(最低成本及功耗、ZYNQ-7020)、Virtex-7(性能最高)、Kintex(最高性价比)Altera :Stratix V(性能最高)、Cyclone V(最低成本及功耗)1 内部资源1.1 逻辑资源块CLB(Xlinx):由均匀分布、纵向密集的slice构成,slice包括LUT可用其模仿寄存器/锁存器、ROM、RAM、门电路…寄存...原创 2020-02-02 22:28:40 · 669 阅读 · 0 评论 -
互斥锁、死锁以及如何预防、避免、检测、解除死锁
一、互斥锁:1、互斥锁基本原理:互斥锁是一个二元变量,其状态为开锁(允许0)和上锁(禁止1),将某个共享资源与某个特定互斥锁在逻辑上绑定(要申请该资源必须先获取锁)。(1)访问公共资源前,必须申请该互斥锁,若处于开锁状态,则申请到锁对象,并立即占有该锁,以防止其他线程访问该资源;如果该互斥锁处于锁定状态,则阻塞当前线程。(2)只有锁定该互斥锁的进程才能释放该互斥锁,其他线程试图释放无效。...转载 2020-01-30 22:09:51 · 1445 阅读 · 0 评论 -
Zynq7000术语 PL,PS,APU,SCU
REf假设你3年后碰到一个用过ZYNQ的工程师, 和你说了下面一句话, 你能听懂多少:经理啊, 我的PS启动了,可是PL还没加载, 这时,APU复位检查了没问题, MIO连得好好的, EMIO看上去也工作正常,你说我该查GIC呢, 还是AFI呢 ?PS: 处理系统 (Processing System) , 就是与FPGA无关的ARM的SOC的部分。PL: 可编程逻辑 (Progarm...转载 2020-01-30 21:24:38 · 758 阅读 · 0 评论 -
rs232->ttl
https://wenku.baidu.com/view/78c8bdb455270722182ef774.html使用协议https://www.cnblogs.com/xianyufpga/p/11086676.html转载 2019-10-01 15:43:55 · 613 阅读 · 0 评论 -
zedboard资料
以下参考资料整理,是我从网络上找的,非原创,感恩yuan原作者!第一阶段:找资料,熟悉ZYNQ(1)了解Zedboard的核心ZYNQ的介绍,包括PS、PL、APU基本概念,可以参考手册 ug804_zynq-7000_plat_sum和maxim.eefocus.com/bbs/article_1237_380029.html(2)在ZedBoard.org网站上找到Zedboard板的...原创 2019-08-15 22:05:20 · 3786 阅读 · 0 评论