自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

abcdef123456gg的博客

Hello world! Keep coding!

  • 博客(47)
  • 资源 (8)
  • 收藏
  • 关注

原创 git 常用的使用方法

【代码】git 常用的使用方法。

2023-12-10 19:24:06 320

原创 vim的使用技巧

命令对匹配特定模式的每一行都执行所给的命令,有效的命令是vim命令行支持的命令,也就是以冒号 ':' 开头的命令,但是输入的时候不需要提供冒号。所以,上面的 d 对应。命令查看该用户手册,在 “10.4 The global command” 小节中对。例如,删除所有以大写字母 D 开头的行,可以执行。命令删除所有包含 pattern 模式的行。命令查看它的帮助说明。这里的 ^ 表示匹配行首。在 vim 中,可以使用。命令也有描述,可以参考。命令,表示删除一行。

2023-04-19 10:49:31 1171

原创 计算机结构中的冯诺依曼结构、哈佛结构、改进型哈佛结构

冯诺依曼结构  冯·诺依曼结构,又称为普林斯顿体系结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。取指令和取操作数都在同一总线上,通过分时复用的方式进行. 缺点是在高速运行时,不能达到同时取指令和取操作数,从而形成了传输过程的瓶颈。由于程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。哈佛结构  哈佛结构是一种将程序指令存储和数据存储分开的存储器结构,它的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据...

2020-07-01 20:12:18 1206 3

原创 XILINX 的 MIG IP(非AXI4)接口时序以及控制

一、 MIG 控制器概述7 系列 FPGA 存储器接口解决方案核心如图所示。二、 用户 FPGA 逻辑接口 上图所示的用户 FPGA 逻辑模块可以连接到外部 DDR2 或 DDR3 SDRAM 的任何 FPGA 设计。用户 FPGA 逻辑通过用户界面连接到内存控制器。IPCORE 提供了一个用户 FPGA 逻辑示例。AXI4 从接口块 AXI4 从站接口将 AXI4 事务映射到 UI,以向内存控制器提供行业标准总线协议接口。用户界面块和用户界面 ...

2020-05-10 20:47:31 3363

原创 【篇章一】FPGA原理

FPGA(Field Programmable Gate Array),即现场可编程逻辑门阵列,它是作为专用集成电路(ASIC)领域中一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA优势(1)运行速度快(2)FPGA引脚多,适合大规模的系统设计(3)FPGA内部程序并行执行,工作效率高(4)FPGA包含大量的IP核,方便开发...

2020-04-05 16:38:55 1227

原创 DSP48E1详解-4

内嵌函数7系列器件的嵌入式功能包括25×18乘法器、加法器/减法器/逻辑单元和模式检测器逻辑.预加7系列FPGA DSP片有一个25位的预加法器,插入到A寄存器路径中(如图2-14所示,展开视图如图2-7所示,30页)。有了预加法器,可以在加法器之前进行预加或预减。由于预加法器不包含饱和逻辑,设计人员应该限制输入操作数为24位2的补码符号扩展数据,以避免算术运算期间溢出或下溢...

2019-12-26 17:48:10 2877

原创 DSP48E1详解-3

DSP48E1属性输入端口A\B\C\D输入端口A、B、C、CARRYIN、CARRYINSEL、OPMODE、BCIN、PCIN、ACIN、ALUMODE、CARRYCASCIN、MULTSIGNIN以及相应的时钟启用输入和复位输入都是保留端口。D和INMODE端口对于DSP48E1片是唯一的。本节详细描述DSP48E1片的输入端口。图2-6中突出显示了DSP48E1片的输入端口。...

2019-12-26 17:11:07 3166

原创 DSP48E1详解-2

简化DSP48E1片操作DSP48E1片的数学部分由一个25位的预加器、2个25位、18位的补法器和3个48位的数据路径多路复用器(具有输出X、Y和Z)组成,然后是一个3输入加法器/减法器或2输入逻辑单元(参见图2-5)。使用2输入逻辑单元时,不能使用乘法器。DSP48E1片的数据和控制输入提供算术和逻辑阶段。A和B数据输入可以选择性地寄存一两个时钟周期,以帮助构建不同的、高度流水线化的D...

2019-12-26 15:35:19 2276

原创 DSP48E1详解-1

7系列FPGA DSP48E1片的特点是•具有D寄存器的25位预加器,以增强A路径的能力•INMODE控件支持在乘法(A*B)和加法操作(A:B)之间动态切换的平衡流水•25*18乘法•30位的输入,其下25位为乘法器的A输入,整个30位的输入形成48位A:B的上30位串联内部总线。•级联A和B输入 •直接路径和级联路径之间的半独立可选pipelining ...

2019-12-25 22:43:22 4491

原创 FPGA进行CNN计算的脉动阵列

在FPGA进行CNN加速计算的论文里,有一种设计:脉动阵列何为脉动,脉动的数据是什么样子的?下图可以看做是简单的脉动单元,共有P11到P33 9个计算单元,行列数据并不是同时刻到达计算单元,而是依次进入,说白了就是像FPGA设计里经常提的流水线pipiline,这里面有个关键点是CNN的乘加操作,P11计算单元会在3个节拍进来6个数据,3个节拍后,P11=3*3+2*4+2*3=23,每个...

2019-11-28 15:01:40 2505

原创 URAM和BRAM有什么区别

无论是7系列FPGA、UltraScale还是UltraScale Plus系列FPGA,都包含Block RAM(BRAM),但只有UltraScale Plus芯片有UltraRAM也就是我们所说的URAM。BRAM和URAM都是重要的片上存储资源,但两者还是有些显著的区别。容量BRAM的容量为36Kb,且可当作两个独立的18Kb BRAM使用。对于一个36Kb的BRAM,其最能达...

2019-11-21 17:32:42 15653

原创 verilog中generate语句的用法

generate为verilog中的生成语句,当对矢量中的多个位进行重复操作时,或者当进行多个模块的实例引用的重复操作时,或者根据参数的定义来确定程序中是否应该包含某段Verilog代码的时候,使用生成语句能大大简化程序的编写过程。Verilog-2001添加了generate循环,允许产生module和primitive的多个实例化,generate语句的最主要功能就是对module、re...

2019-11-07 16:16:46 5764 1

原创 AXI总线协议总结

在介绍AXI之前,先简单说一下总线、接口以及协议的含义总线、接口和协议,这三个词常常被联系在一起,但是我们心里要明白他们的区别。总线是一组传输通道,是各种逻辑器件构成的传输数据的通道,一般由由数据线、地址线、控制线等构成。 接口是一种连接标准,又常常被称之为物理接口。 协议是传输数据的规则。1.简介AXI4总线协议是ARM公司提出的AMBA(Advanced Microco...

2019-10-30 11:11:03 3767 1

原创 Verilog学习笔记基本语法篇-运算符

Verilog HDL的语言的运算符的范围很广,按照其功能大概可以分为以下几类:(1)算术运算符+,-,*,/,% (2)赋值运算符=,<= (3)关系运算符> ,<,>=,<=(4)逻辑运算符...

2019-10-28 10:52:40 737

原创 DSP48E2 Slice 上优化 INT8 深度学习运算分析

赛灵思 INT8 优化为深度学习推断提供了性能最佳、能效最高的计算技术。赛灵思的集成式 DSP 架构与其他 FPGA DSP 架构相比,在INT8 深度学习运算上能实现 1.75 倍的解决方案级性能。概要本白皮书旨在探索实现在赛灵思 DSP48E2 Slice 上的 INT8 深度学习运算,以及与其他 FPGA 的对比情况。在相同资源数量情况下,赛灵思的 DSP 架构凭借 INT8在 IN...

2019-10-26 23:10:54 1225

原创 FPGA中的软核

在嵌入式领域市面上常见的有FPGA,AMR,DSP。ARM长处在于控制和管理,DSP专门为数学运算设计,而FPGA则适用于灵活性高,定制化程度高的场合。很多时候它们实现的功能无法直接代替。在科技发展过程中,出现了你中有我,我中有你的共存现象。比如ARM中有DSP;Xilinx的FPGA中有MicroBlaze软核,Zynq系列更是嵌入了ARM的硬核。在比较复杂的设计中不同的任务...

2019-10-11 14:11:51 2226

原创 XILINX SGMII千兆以太网 (4) 之以太网帧

1、 以太网帧格式下图是以太网的帧格式前导码(Preamble):8 字节,连续 7 个 8’h55 加 1 个 8’hd5,表示一个帧的开始,用于双方设备数据的同步。目的 MAC 地址:6 字节,存放目的设备的物理地址,即 MAC 地址源源 MAC 地址:6 字节,存放发送端设备的物理地址类型:2 字节,用于指定协议类型,常用的有 0800 表示 IP 协议,0806...

2019-09-11 09:48:55 6344

原创 XILINX SGMII千兆以太网 (3)

The LogiCORE™ IP Tri-Mode Ethernet Media Access Controller (TEMAC) solution comprises the 10/100/1000 Mb/s Ethernet MAC, the 1 Gb/s Ethernet MAC, 2.5 Gb/s Ethernet MAC, and the 10/100 Mb/s Ethernet MA...

2019-09-07 15:36:29 5793

原创 XILINX SGMII千兆以太网 (2)

参考PG047The LogiCORE™ IP 1G/2.5G Ethernet PCS/PMA or Serial Gigabit Media Independent Interface (SGMII) core provides a flexible solution for connection to an Ethernet Media Access Controller (MAC)...

2019-09-04 18:31:57 16702 8

原创 XILINX SGMII千兆以太网 (1)

这篇文章将对以太网的学习过程进行简单记录和总结。因为工程进度的原因,先采用xilinx自带的IP的形式进行开发,参考PG047。The LogiCORE™ IP 1G/2.5G Ethernet PCS/PMA or Serial Gigabit Media Independent Interface (SGMII) core provides a flexible solut...

2019-08-30 17:29:45 13958 1

原创 SMBus的FPGA相关

SMBUS的简介1.1 特点SMBUS,System Management BUS,即系统管理总线,1995年,由Intel公司提出,应用于移动PC和桌面PC系统的低速率通讯。通过一条廉价而又功能强大的总线(由两条线组成),来控制主板上的设备以及收集相应的信息。SMBUS有两条信号线,分别为SMBCLK与SMBDAT,即一条时钟线一条数据线,并且这两条信号线都是双向的,当总线空闲时,这两...

2019-08-26 14:50:30 1094

原创 AI芯片面试总结

基础书籍有哪些?重点章节以及概念?计算机体系结构---量化研究方法;计算机组成与设计---软硬件接口;deep learning 深度学习;python;CMOS数字集成电路面试中可能会遇到的知识点建立保持时间 / 亚稳态如何产生及解决 / 竞争冒险产生及解决 /低功耗设计 /时钟歪斜和抖动 及产生原因 / 同步异步的概念 / 同步复位异步复位 / 异步复位...

2019-08-26 09:54:38 16228 3

原创 证件照的背景颜色转换

不会PS该怎么换证件照的底色呢?在这里给大家分享一个方法——使用美图秀秀来更换背景颜色傻瓜式操作,包教包会,科技改变生活!一 下载美图秀秀软件并进行安装美图秀秀官网:https://mt.meipai.com/软件大小55.8MB,小巧方便。安装完成后开始修图。二 修图实践我们以下面这张照片为例,来给大家演示一下,怎么将证件照的底色给完美换掉。这...

2019-08-13 14:26:27 915

原创 FPGA设计过程中的心得总结与经验

一、跨时钟域处理在进行FPGA设计过程中,经常会遇到跨时钟域问题,若由快时钟域向慢时钟域进行转换时,需先把快时钟域的信号进行拉长处理,再进行慢时钟域的跨越,处理方法如下:usr_clk_w 频率 > sclk 频率reg f_start = 0;reg [2:0] f_start_cnt;always @(posedge usr_clk_w)begin...

2019-07-06 10:40:09 2085

原创 HLS C++ 学习笔记

一 C++ memcpy()函数用法函数原型void *memcpy(void*dest, const void *src, size_t n);功能由src指向地址为起始地址的连续n个字节的数据复制到以dest指向地址为起始地址的空间内。头文件#include<string.h>返回值函数返回一个指向dest的指针。说明 ...

2019-06-30 12:48:27 1467 1

原创 有关YOLO目标检测的FPGA加速教程(一)

1.内存卡的装配详见:https://blog.csdn.net/weixin_38438451/article/details/83474479在这一步,开发板启动后,可以通过超级终端HyperTerminal软件连接到Pynq,通过com端口查看ip进行以太网连接。2.pynq上网一、笔记本电脑需要先连上外网,可以连上家里的WIFI,或者手机开热点(本人未测试过连接手机的热点,...

2019-05-02 22:13:48 21090 28

原创 Xilinx原语ODDR的使用

ODDR is Xilinx HDL Language Template。ODDR:Output Double Data Rate(DDR) 。在介绍ODDR之前,我们先简单了解一下OLOGIC。OLOGIC块在FPGA内的位置紧挨着IOB,其作用是FPGA通过IOB发送数据到器件外部的专用同步块。OLOGIC 资源的类型有OLOGIC2(位于HP I/O banks)和OLOGIC3(位于...

2019-01-13 20:49:25 10252

原创 FPGA到底是什么

做FPGA设计这么久,每次给别人介绍的时候,总是感觉讲的不够深刻,惭愧惭愧惭愧。这次,我就FPGA的硬件属性来展开,简单写写,与大家分享。我的许多朋友都是经验丰富的算法工程师、嵌入式工程师,但他们都是数学、MCU背景,对数学公式和嵌入式了解的比较多,因此对于FPGA是什么以及FPGA能做什么只有一个模糊的概念。每次我说你的算法设计的好,我FPGA就能给你高效的实现,他们总是不信,你怎么就能高效...

2018-12-18 17:21:10 15426 7

原创 欢迎走进VSLAM

1 开启新技术之门SLAM,全称叫做Simultaneous Localization and Mapping,中文叫做同时定位与建图。SLAM技术发展到如今已经几十年,目前以激光雷达作为主传感器的SLAM技术比较稳定、可靠,仍然是主流的技术方案。但随着最近几年计算机视觉技术的快速发展,SLAM技术越来越多的应用于家用机器人、无人机、AR设备,基于视觉的Visual SLAM(简称VSLAM)逐...

2018-12-02 12:27:49 4552 4

原创 Zynq启动过程简介

Zynq启动过程简介1.在器件上电运行后,处理器自动开始Stage-0 Boot,也就是执行片内BootROM中的代码2.BootROM会初始化CPU和一些外设,以便读取下一个启动阶段所需的程序代码,FSBL(First Stage Bootloader)。不过这又有一个问题了----之前说到,Zynq支持多种启动设备,BootROM怎么知道从哪个启动设备里去加载FSBL?这就得靠几个特殊的...

2018-11-24 21:24:12 973

原创 FINN(大结局)参考文献

该项目主要参考以下的文献[1] H. Alemdar, N. Caldwell, V. Leroy, A. Prost-Boucle, and F. P´etrot. Ternary Neural Networks for Resource-Efficient AI Applications. CoRR, abs/1609.00222, 2016.[2] R. Andri, L. Cavige...

2018-11-24 21:06:29 1057 1

原创 FINN(六)总结

再次,简单的对FINN进行一下总结与归纳。最近提出了一种用于图像分类的BNN,该工作证明了其高性能实现的前景。它们特别适合于FPGA实现,因为参数可以完全适用于OCM,而且算法得到了简化,从而实现了高计算性能。提出的可参数化数据流体系结构和优化(parameterizable dataflow architecture and optimizations),更好的解决了分类速率、最小的功耗和延迟...

2018-11-24 20:57:50 674

原创 FINN(五)实验评估

5. 实验评估5.1 实验配置为了评估FINN,我们创建了一个原型,加速BNN推理MNIST15,CIFAR-1013和裁剪SVHN18的图像数据集。每个原型结合了BNN拓扑和不同的用例场景。我们考虑了三种不同的BNN拓扑来对数据集进行分类如下:1)SFC和LFC是三层全连接的网络拓扑,用于对MNIST数据集进行分类,使用不同数量的神经元来证明计算的准确性权衡(3.2节)。SFC每层256个...

2018-11-24 20:41:13 1193

原创 Zynq开发简述

1 Zynq的开发四种方式纯PL开发,纯PS开发(helloworld),PS+PL(无操作系统,跑裸跑程序),PS+PL(跑操作系统)。1.1 纯PL开发这个和一般的xilinx的FPGA没有很大的区别。1.2 纯PS开发典型的就是helloworld工程, 一种是传统的arm的方式。还一种就是xilinx方法,这个是生成一个elf文件,这个elf文件包括了硬件配置信息(x...

2018-11-20 14:27:36 1292 2

原创 FINN(四)FINN的架构和优化

可重构逻辑的BNN结构我们采用了异构流式架构,如图Figure 2所示。我们为给定的拓扑构建自定义架构,而不是在固定架构之上调度操作。独立的计算引擎专用于每个层,通过片上数据流进行通信。一旦前一计算引擎开始产生输出,每个计算引擎就开始计算。此外,由于BNN的紧凑模型尺寸,所有神经网络参数都保存在片上存储器中。这避免了对磁盘存储器的大多数访问,通过重叠计算和通信最小化延迟(完成对一个图像进行分类...

2018-11-13 22:02:17 1979 2

原创 FINN(三)BNN在FPGA上的准确性和峰值性能

使用Roofline估算性能为了估计和比较BNN性能与固定点CNN,我们使用了一个roofline模型[29],它考虑了存储器带宽,峰值计算性能和算术强度(读取或写入的off-chip存储器的每个字节执行的数学运算的数量)。 对于特定算术强度,roofline曲线与垂直线的交点给出理论峰值性能点,其可以是计算约束,也可以是存储器约束。 我们考虑流行的AlexNet [14]的二值化和8位固定点[2...

2018-11-12 22:32:50 2466

原创 FINN(二)CNN,BNN及其硬件实现的背景知识

CNN这项工作的重点是监督学习,其目标是找到一个函数g(xi),它近似于映射xi→yi ∀i,其中{xi,yi}是一个输入/输出对,称为训练样例。 多层感知器是一种人工神经网络,其神经元在多层中排列,神经元将前一层的所有神经元的输出作为输入。 在数学上,全连接网络的第l层中nth神经元的输出al,n计算如下:其中wl,n,s是与第l层中nth神经元的输入相连的sth突触的权重,bl,n是偏置...

2018-11-11 22:01:08 3371

原创 FINN(一)简介一种快速,可扩展的二值化神经网络框架

摘要:研究表明,卷积神经网络具有明显的冗余,即使权重和激活从浮点减少到二进制值,也可以获得高分类精度。在本文中,我们介绍了FINN,一个使用灵活的异构流体系结构构建快速和灵活的FPGA加速器的框架。通过利用一组新的优化功能,可以实现二值化神经网络到硬件的高效映射,我们实现了完全连接,卷积和池化层,每层计算资源可以根据用户提供的吞吐量要求进行调整。在aZC706嵌入式FPGA平台上,系统功耗低于2...

2018-11-11 12:37:02 3845 1

原创 xilinx PYNQ PS与PL的接口说明

PS/PL InterfacesZynq在PS和PL之间有9个AXI接口。 在PL方面,有4x AXI Master HP(高性能)端口,2x AXI GP(通用)端口,2x AXI Slave GP端口和1x AXI Master ACP端口。 PS中还有连接到PL的GPIO控制器。有四个pynq类用于管理Zynq PS(包括PS DRAM)和PL接口之间的数据移动。1.GPIO - 通...

2018-11-09 11:15:36 5168 1

原创 overlay的设计

overlay由两个主要部分组成; PL设计(比特流)和项目框图Tcl文件(the PL design (bitstream) and the project block diagram Tcl file.)。 overlay设计是硬件工程师的专业任务。 本节假定读者具有数字设计,构建Zynq系统和Vivado设计工具的一些经验。PL DesignXilinx®Vivado软件用于创建Zynq...

2018-11-08 21:58:44 1163

数字IC设计笔试面试经典100题.pdf

数字IC设计笔试面试经典100题,帮助你通过考试,找到数字电路的相关工作

2019-08-26

MT25QU02GCBB.pdf

美光flash存储芯片的技术手册,Micron Serial NOR Flash Memory(MT25QU02GCBB)型号

2019-07-08

基于FPGA实现的自动售货机

基于FPGA的自动售货机程序,此程序已经用于实际的项目中,程序很完整

2019-04-04

基于FPGA的AES加密算法密码模块

包含完整的基于FPGA的AES加密算法密码模块代码,使用语言Verilog

2019-04-04

RISC-V的FPGA设计与实现资料

本文件手把手教你设计 CPU——RISC-V 处理器,有完整的Verilog代码与详细的技术手册,基于蜂鸟E200设计与实现,分享出来,供大家一起学习

2019-03-21

基于Zedboard的电吉他多重音效处理系统

该项目为基于FPGA的多重效果系统,是在Zedboard上为电吉他设计和实现。 它设计用于Line-in端口中的吉他输入和Line-out中的放大器。 有视频讲解与技术文件

2019-03-21

xilinx开发者大会官方ppt

资源包括xilinx开发者大会官方ppt文件,有需要的,可以下载观看

2018-10-27

吴恩达《机器学习》课程编程作业及PPT

包括吴恩达的《机器学习》课程编程作业及PPT,分享给大家学习用

2018-10-27

空空如也

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

TA关注的人

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