自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 电气完整性

电气完整性(Electrical Integrity,简称EI)包括信号完整性(Signal Integrity,简称SI)、电源完整性(Power Integrity,简称PI)和电磁完整性(Electromagnetic Integrity,EMI)。信号完整性与信号完整性问题:信号完整性就是信号从发送端发出,经过传输路径到达接收端后仍能保持可分辩的完整或相对完整的信号现象。经过的传输路径有可能是传输线、电阻、电容、电感等。例如:发送芯片产生1GHZ的方波信号经过传输路径传输后,接收芯片仍能通过判

2020-10-15 15:49:59 2636 6

原创 用FPGA实现SPI通信

SPI是串行外设接口(Serial Peripheral Interface)的缩写。它是Motorola公司推出的一种高速、全双工的同步串行通信总线技术。SPI的通信接口为:SDI或MISO(数据输入),SDO或MOSI(数据输出),SCK(时钟),CS(片选)。另外,可以通过设置CPOL(时钟极性)和CPHA(时钟相位)来配置主控设备的通信模式。其中时钟极性CPOL用来配置SCLK的空闲态或者有效态电平,时钟相位CPHA 用来配置数据采样是在第几个边沿:CPOL=0,表示SCLK的空闲态电平为0,

2020-09-01 17:37:20 5345 1

原创 FPGA读写DDR3

DDR3是一种内存规格,它是SDRAM家族的内存产品。DDR3之前的产品有DDR和DDR2。DDR(Double Data Rate)是双倍速率同步动态随机存储器,严格的说DDR应该叫DDR SDRAM。DDR2是DDR产品的升级产品,它是四倍速率同步动态随机存储器。DDR3在DDR2的基础上实现了更高的性能(增加到八倍)和更低的电压。DDR内部结构框图如下所示:如上图所示:标号1:逻辑控制单元,用于输入命令解析和模式控制等。标号2:行地址选通单元。标号3:内部存储阵列,上图中分为8个bank。

2020-08-18 17:24:21 14808 7

原创 液晶显示原理以及FPGA驱动

注:文中代码来源于网络,只用于学习和理解。液晶显示(LCD)是英文Liquid Crystal Display 的简写,一般与液晶显示器连接的接口为VGA和HDMI。高清多媒体接口(High Definition Multimedia Interface,HDMI)是一种全数字化视频和声音发送接口,可以发送未压缩的音频及视频信号。VGA(Video Graphics Array)是显卡上输出模拟信号的接口。下面主要说明VGA接口的显示原理:一般的16位高彩色VGA显示是用RGB565数据输出,其中红

2020-07-22 09:41:07 2072 1

原创 FIFO例化以及仿真

在FPGA中,数据进行跨时钟域传输时,会出现亚稳态的问题。跨时钟域也就是跨越了两个频滤和相位不同的异步时钟域。为了解决亚稳态和由时钟不同步引起的其他问器,选用了FIFO。本例中,选用了输入和输出为同一时钟来生成FIFO。生成FIFO后可在.veo文件中找到例化模版,如下图所示:操作流程为:Sources(1)→IP Sources(2)→Instantiation template(3)→.veo文件(4)。然后新建测试文件并命名为top.v,在文件中进行实例化,实例化代码如下:fifo_gen

2020-07-15 11:39:28 4244 1

原创 HTML中的标签分类

HTML( Hyper Text Markup Language)是超文本标记语言。它超越了文本限制,可以加入图片、声音、动画、多媒体等内容。同时它也是超级链接文本,可以从一个文件跳转到另一个文件,与世界各地主机的文件连接。HTML标签用于描述网页元素,如图片标签、文字标签、链接标签等。所有的标签用<>表示。HTML的语言语法骨架格式如下所示:<html> <head> <title></title> </head> &l

2020-07-14 15:44:39 1856 1

原创 浏览器内核与Web标准

浏览器内核(layout engineer 或者 Rendering Engine)也称为排版引擎、解释引擎或渲染引擎。主要负责读取网页内容、整理讯息以及计算网页的显示方式。以下列出几种主流浏览器:浏览器不同所用的内核有所不同,所以同一内容在不同浏览器中显示效果有可能不同。对于以上情况,开发中要尽量遵循网页中WEB标准。WEB标准由W3C(万维网联盟)和其他标准化组织制定。WEB标准主要由结构(structure)、表现presentation)和行为(behaviour)构成。结构主要是对网页元素

2020-07-12 08:02:40 639 2

原创 FPGA中port和pin的区别

在vivado中,FPGA中的Pin指的是cell管脚,而port指的是FPGA外部连接引脚。Pin与pin用net相连。Port隶属于FPGA芯片中的IO bank。

2020-07-06 11:37:38 4747 1

翻译 FIFO生成器V2.3

一、序言赛琳思FIFO生成器逻辑核是应用于顺序存储和索引的先进先出的存储队列。对于所有FIFO来说,通过配置实现以最小资源达到最大传输性能(高达350MHZ)的目的,FIFO逻辑核提供了这种最佳解决方案。用户可以根据需要设置赛琳思核生成器的结构,包括宽度、深度、状态标志、存储类型和读写端口比。这个文档描述了FIFO生成器逻辑核的功能,详细说明了此逻辑核的接口参数,同时还定义了输入和输出信号。更详细的FIFO生成器逻辑核设计说明,请参考《FIFOGenerator User Guide》。1、FIFO

2020-06-25 21:48:56 1172 1

原创 SD卡读写

特别说明:以下所涉及代码参考网络、相关开发板厂家。只用于自己学习、理解和感悟。SD存储卡( Secure Digital Memory Card)是一种基于半导体快闪存储器的新一代高速存储设备。SD 卡是现在嵌入式设备重要的存储模块。通常SD卡中都有文件系统,可以安装文件名和目录路径来读写文件。SD卡结构如下图所示:SD卡协议简介数明:SD卡命令是6字节组成的命令包。a) 命令码:命令码由1个字节组成,第7位和第6位固定为“01”。b) 校验与结束码:校验与结束码由7位CRC校验

2020-06-21 21:37:03 2754 1

原创 通过FPGA实现I2C

I2C总线是由Philips公司开发的一种简单、双向二进制串行总线。只需要两根线即可在连接于总线上的器件之间信息传递。I2C的标准速率为100kbit/s,快速模式时速率为400kbit/s,支持多机通讯,支持多主控模块,但同一时刻只允许有一个主控。由数据线SDA和时钟线SCL构成串行总线。每个电路和模块都有唯一的地址。以下以AT24C04为例说明I2C的基本读写操作,I2C设备的操作可分为读写单个存储字节和多个存储字节。读写时序示意图如下所示:如上图所示,I2C通信分为空闲状态、开始态、信息传输

2020-06-06 09:58:45 9268 4

原创 FPGA之按键消抖

按键是一种常用的人机交互输入接口,对于机械按键来说,在按下或弹起的时候,按键输入值往往伴随着输入抖动。消除抖动的方式有很多种,以下是用FPGA实现按键消抖。实现原理:当检测到按键按下(一般按下为低电平)时开始计时(用计数器实现),大概10ms后检测按键状态,如果按键状态为低电平,说明按键按下,输出低电平;如果按键状态为高电平,说明是按键抖动。按键弹起同理。下面对按键消抖的代码(ax_debounce.v)进行分析:module ax_debounce(input clk,input rst,inp

2020-05-18 21:57:41 5282 1

原创 FPGA之UART(三)

module uart_test( input sys_clk_p, input sys_clk_n, input rst_n, input uart_rx, output uart_tx);在模块uart_test中,定义了差分时钟输入脚,复位输入脚,数据接收输入脚和数据发送输出脚。IBUFDS sys_clk_ibufds( .O (sys_clk), .I (sys_clk_p), .IB (sys_clk_n));

2020-05-12 22:01:08 1894 1

原创 FPGA之UART(二)

这篇笔记主要记录对uart_rx模块的理解:module uart_rx#(parameter CLK_FRE = 50,parameter BAUD_RATE = 115200)(input clk,input rst_n,output reg[7:0] rx_data,output reg rx_data_valid,input rx_data_ready,input rx_pin);模块引脚说明:CLK_FRE表示时钟频率。BAUD_RATE表示通讯波特率。Clk表

2020-05-11 10:48:26 2084 1

原创 FPGA之UART(一)

UART( Universal Asynchronous Receiver/Transmitter)指通用异步收发器。UART电平有TTL电平和RS232电平。TTL电平一般以3.3V居多。RS232是负电平逻辑,+5V—+12V为低电平,而-12V—-5V为高电平。然而FPGA引脚电平一般为TTL电平或者COMS电平,UART外接电平为RS232电平,这就需要将TTL转换为RS232电平的电平转换芯片,如MAX3232,MAX232等。有的电路还用UART转USB芯片,如CP2102、CH340等。UA

2020-05-09 12:09:04 2742 2

原创 VIVADO中关于管脚约束错误的一种解决方法

在vivado中,有的IP核已经包含了模块的引脚配置,这样在约束文件中就不用写相应的约束设置。然而在生成位码流的时候就可能会出现如下的错误提示:[DRC UCIO-1] Unconstrained Logical Port: 16 out of 22 logical ports have no user assigned specific location constraint (LOC). T...

2020-04-27 11:27:39 28497 5

原创 FPGA中模块之间如何传输数据

FPGA的编程思想是用软件来描述硬件数字电路,也就是说要用设计硬件数字电路的思维方式来思考软件编程。在FPGA中,模块之间的数据传输就是数字电路元件之间进行数据传输,数字电路元件通过导线把两引脚连接在一起而进行信号传输。在FPGA中通过例化方式来封装元件,例化语句中的参数就是元件的引脚名称。如下通过实例来说明:模块定义如下所示:module ethernet_test(input ...

2020-04-24 11:45:57 6811 1

原创 FPGA之PLL

PLL(Phase Locked Loop)为锁相环。FPGA中的锁相环通常由PFD(鉴频鉴相器)、CP(电荷泵)、LF(滤波器)、VCO(压控振荡器)组成。一般晶体振荡器由于工艺和成本原因达不到高频信号输出。高频电子线路中,需要外部信号与内部的振荡信号同步。一路输入时钟需要生成多路时钟信号。以上几种问题就需要通过PLL来实现。PLL的内部结构如下图所示:以下通过图例来说明生成PLL IP核...

2020-04-20 21:23:49 8036 1

原创 FPGA之从按键程序到寄存器

部分代码如下:reg[3:0] key_v1;定义了寄存器key_v1[0]、key_v1[1]、key_v1[2]、key_v1[3]reg[3:0] key_v2;定义了寄存器key_v2[0]、key_v2[1]、key_v2[2]、key_v2[3]always@(posedge sys_clk) begin key_v1 <= ~key_in; endalways@...

2020-04-14 10:49:56 1933 1

原创 FPGA之vivado

Vivado工程文件包括源文件、约束文件和仿真所用的激励文件。

2020-04-13 15:27:33 2041 1

ultra librarian

这是一个把官网元件封装转换成CANDANCE 、AD元件库的工具。下载后解压,然后一直next,然后就安装好了

2018-11-17

空空如也

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

TA关注的人

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