自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 脚本文件记录

【代码】脚本文件记录。

2025-08-03 14:47:53 96

原创 脚本学习记录

【代码】脚本学习记录。

2025-07-29 22:48:36 155

原创 AXI接口详解(暂时处于翻译阶段)

在本例中,我们在AR通道上传输单个地址,以传输多个数据项,以及相关的突发宽度和长度信息。这里,AR通道表示三次传输的序列,因此在R通道上,我们看到从机到主机的三次数据传输。读事务和写事务之间的一个区别是,对于读事务,对于事务中的每个传输都有RRESP响应。这是因为,在写事务中,从机必须在B通道上将响应作为单独的传输发送。在这种情况下,AW通道表示三次传输的序列,在W通道上,我们看到三次数据传输。一个事务是一个完整的突发传输,包含一个地址传输、一个或多个数据传输,以及一个响应传输(对于写序列)。

2025-07-21 22:42:16 1031

原创 spyglass简单使用

2025-07-16 21:51:15 149

原创 GVIM使用记录

进入文件后处于普通模式,因此按“i”就可以插入文本。ctrl+u:撤销一个撤销,将原来撤销的命令撤销。输入<Esc> 键退出插入模式回到普通模式。$:移动到行位,2$表示移动至下一行位。首先是启动GVIM +file。f:命令向前查找本行中的字符。制定次数:9k(向上9行)end :将光标移动到行位。zz:保存文件并退出。0:将光标移动到行首。

2025-07-07 13:28:02 207

原创 个人学习记录

dve -full64 -vpdplus.vpd 打开dve图形化界面。$vcdpluson;

2025-07-06 13:19:39 83

原创 个人学习记录

fsdb是Verdi打开的文件后缀格式。.vpd是DVE共计打开的波形格式。-fsdb //波形。

2025-07-02 22:31:51 102

原创 C shell脚本启动VCS

【代码】C shell脚本启动VCS。

2025-07-02 21:14:58 133

原创 c shell 脚本学习使用

bin/csh -f (使用 c shell 脚本解释,-f 表示快速启动,不会读取 .cshrc(全局文件) )第一步:创建一个compile.sh 脚本 (当然filename不一定需要都设置成这样)touch synopsys_sim.setup (创建该文件)synopsys_sim.setup(逻辑库和物理路径有映射关系)if(-f )then -f:查找文件(脚本目录下查找)synopsys_sim.setup(必须用这个名字)4、ls 查看该路径下的文件。2、f5 继续run。

2024-08-13 19:42:49 773

原创 FPGA笔试

1、半加器不考虑输入的进位,称之为半加。2、全加器反之,考虑进位。

2024-07-13 19:54:11 405

原创 verilog 笔试部分

而对同一个赋值对象不能既使用阻塞式赋值,又使用非阻塞式赋值。(8)所有的内部寄存器都应该能够被复位,在使用FPGA实现设计时,应尽量使用器件的全局复位端作为系统总的复位。(11)如果不打算把变量推导成锁存器,那么必须在if语句或case语句的所有条件分支中都对变量明确地赋值。(6)除非是关键路径的设计,一般不采用调用门级元件来描述设计的方法,建议采用行为语句来完成设计。(13)同一个变量的赋值不能受多个时钟控制,也不能受两种不同的时钟条件(或者不同的时钟沿)控制。(4)不使用用户自定义原语(UDP元件)。

2024-07-13 10:02:01 314

原创 AMD优化策略

如果代码中的复位是低有效就会消耗额外的查找表(用于逻辑取反),而 UltraScale/UltraScale+ FPGA 中的触发器则既支持高有效又支持低有效;7系列 FPGA 中的 DSP48 不支持异步复位,因此,如果代码中描述的乘法器使用了异步复位,那么相应的触发器是无法被吸收到 DSP48 内部的。如果流水级数较高的话,将任务进行划为小任务,同一个时钟周期的延时较小,此时支持的fmax可以设置较高,如果一个周期做多个操作,延时就比较大,这时fmax如果较高,容易造成时序违例。

2024-05-08 09:02:16 1704

原创 VDMA+VTC

Line Buffer Depth :选项可以选择 MM2S 通道的行缓冲深度(行缓冲区宽度为 stream data 的大小),此处设置为 2048 即可。(1)ctrl:Video Timing Controller 配置接口,PS 通过这个接口配置 VTC(视频时序控制器)的寄存器;Read Burst Size :用于指定突发读的大小,此处选择 64,读突发的范围为 2~256 字节。(4)vtiming_out:Video Timing Generator 时序输出接口;VTC 时钟使能信号。

2024-04-05 15:27:00 517

原创 卷积神经网络基本知识

注:其中输入层两个节点与隐藏层三个节点均有连接,隐藏层三个节点也都与输出层每个节点连接,像这样每一层的每一个节点都和下一层的全部节点有连接的神经网络,就称作全连接网络(简称全连接)。2) 隐藏层:所有在输入层之后并且在输出层之间的层都是隐藏层,用于处理中间步骤,这些步骤通常不对用户展示,因此成为隐藏层。),是一种模仿生物神经网络的结构和功能的数学模型或计算模型,由大量的节点(或称“神经元”)相互联接构成。w1、w2,w3:称为权重,表示对应输入信号的重要性,权重值越大,表示对应的信号越重要。

2024-03-25 14:18:56 423

原创 aurora仿真使用等

ufc在没帧之后有一个周期的发送,(设置为一周期4byte,发送32bit)在仿真的时候大概需要700us才会有效,不然数据一直处于复位状态。

2024-03-24 15:54:51 388

原创 pcie_ip set 对riffa

Riffa 框架:

2024-03-20 23:34:15 290

原创 VGA_control

【代码】VGA。

2024-03-20 23:29:52 228

原创 matlab-图像处理

2024-03-20 23:27:20 376

原创 xilinx 的高速接口构成原理和连接结构

SouthCLK 是由相邻的上游 QUAD 提供的时钟或者给相邻下游 QUAD 提供时钟,上图是一个独立的 QUAD。NorthCLK 是由下游的 QUAD 提供时钟,或者给相邻上游的 QUAD 提供时钟。PCS parallel clock TXUSRCLK 是物理编码层使用的时钟,这里如果物理编码层和用户层位宽一样,这样 TXUSRCLK 会和 TXUSRCLK2 时钟频率。Xilinx 的高速接口是 QUAD 为单位的意思是 4 对收发器组成一个 QUAD 这是收发器的最小单元。

2024-03-18 21:04:49 881

原创 axi_lite时序

编辑axi_lite example。

2024-03-10 09:48:19 399

原创 手写数字识别COE生成

【代码】手写数字识别COE生成。

2024-03-02 18:37:11 411

原创 将数据写以BMP格式写入SD卡中

一下代码的作用是:原本数据是{FF,R,G,B},最高位的ff是不需要的,BMP格式不需要最高位的ff,通过这个函数将高8位的ff舍弃掉。以source指向的地址为起点,将连续的n个字节数据,复制到以destin指向的地址为起点的内存中。函数有三个参数,第一个是目标地址,第二个是源地址,第三个是数据长度。以下代码是将结构体赋值,主要是为了BMP数据head。

2024-01-22 20:25:01 452

原创 BMP图像文件头

文件头总字节为54 byte。3600:偏移54byte。

2024-01-21 20:41:23 744

原创 非常基础的白平衡算法分享

以上的这个效果图的问题是,越靠上的区域比较黑,这是因为当时是采用每一行的数据除以总的像素,得到该行对于总的子像素1920x1080x3的比例,因为是采用累加的过程,但是刚开始累加的和肯定比较小,除以一个固定的值会导致结果趋于0,对于数字电路来说,没有小数的情况下那就是0,因此在经过不断累加以后,越下方那么数值越趋于正常,因此下方的图像就越清晰。但是这个存在一个问题,那就是实际上当前帧的比例关系是上一帧和总的子像素1920x1080x3之间的关系,在采集足够快的时候,这个应该是没啥问题的。

2024-01-21 19:59:05 690

原创 ZYNQ 调用AXI WR RD ip及其代码

值得注意的是:zynq支持axi4.0 ,但是创建的ip是属于axi3.0,其区别主要是在数据位宽以及突发长度的区别。

2024-01-20 15:43:19 540

原创 ila波形导入modelsim

使用modelsim命令行去将该文件转换为.wlf文件,在modelsim中打开。

2024-01-10 22:35:06 489

原创 PCIE基础知识

主要是Root point(根端口)和endpoint(端点设备),Root point作为主机,与CPU和内存交互。pcie1.0 2.0使用8b/10b 2.5gt 5.0gt(单个lane的传输速率)pcie3.0 4.0使用128b/130b 8gt 16gt。3、通道数有X1/X2/X4/X8/X12/X16/X32。5、基于数据包的传输协议。1、点到点之间的传输。

2024-01-10 17:00:29 736

原创 verilog高级数字系统设计技术与实例(第八章)

如果存储容量小于1K位,使用触发器作为储存单元是合适的;如果大于1K位,使用SRAM作为储存器单元更为合适。fifo内部使用的是二维储存器阵列,存储器可以采用SRAM(静态RAM)或者由触发器组成。3、输入数据路径和输出数据路径之间的数据位宽不匹配时,可用于数据位宽调整电路。1、当输入数据速率和输出速率的匹配时,作为临时存储单元。基于触发器或者SRAM的FIFO。2、用于不同时钟域之间的同步。

2024-01-09 19:44:56 513

原创 verilog高级数字系统设计技术和实例分析(第七章)

时钟抖动是实际时钟边沿偏离理想时钟边沿的大小,不存在完美的上升和下降沿。提供给所有的触发器,时钟树的设计目的是确保之中分配网络的延时保持相同,从而向所有的触发器提供频率和相位相同的工作时钟。是同步时钟(相同频率、相同相位)类似,但是系统时钟应用于多个芯片。干扰会被逐级传递下去,在同步电路中,由于时钟的存在逻辑电路产生的干扰和毛刺会备用欧晓滤除。应用于芯片间的通信,采用源同步通信时,两个芯片在传递数据的同时还传递该数据同步的时钟。同步时钟:对于所有的触发器,时钟频率和相位都是相同的,用于单一芯片内部。

2024-01-09 18:23:49 650

原创 Zynq中spi、iic等协议配置器件

首先打开EMIO,比如iic需要2个接口,那就打开两个emio-gpio口,在这配置zynq时记得打开spi、iic接口,在arm上初始化iic、spi等接口,记得绑定。zynq上的EMIO接口选择上会有三种类型:输出、输入、高阻状态,使用啥就make external ,绑定引脚。下面是初始化gpio流程。

2023-12-31 19:12:33 853

原创 zynq-uart中断学习记录+关闭cache

关闭cache:Xil_SetTlbAttributes(0xFFFF0000,0x14de2);uart中断初始化流程。

2023-12-29 19:36:27 698

原创 zynq:pl-ps硬中断设置

对于硬中而言,需要设置将中断映射到哪个cpu上,其函数为。

2023-12-28 20:29:05 908

原创 zyqn-arm软中断设置

所有SGI都是边缘触发的,sgi的灵敏度类型是固定的,不能改变。4、连接软中断信号与注册软中断回调函数。3、注册异常处理回调函数到CPU。5、使能中断控制器中的软中断中断。2、初始化中断控制器。

2023-12-27 20:14:53 726

原创 AMP处理器架构+共享地址中断+SD卡启动(2018.2 vivado)

我们既可以给固定地址中赋值,也可以从固定地址中取值。例如:(volatile unsigned long *)i ,语句中 i 即为 (volatile unsigned long *)的一个指针,而 *i 即代表 i 中存储的值,我们既可以对其赋值,又可以从其中取值(浮点数在内存里是按2进制存储的)。3)(volatile unsigned long *) 0xE0200280,此处把变量换成了固定地址,意思是(volatile unsigned long *)指针指向固定的地址0xE0200280;

2023-12-26 21:40:29 1284 1

原创 zynq arm中断系统初始化流程(2018.2 vivado)

分别是Bank2、Bank3,所以在中断处理函数中应当过滤掉不是目的管教的中断。对于emio的中断而言,64个管教共用一个中断id,每次有中断都会有。xgpiops_intrgetstatus()函数。4、连接GPIO中断信号并注册gpio回调函数。8、使能中断控制器中的gpio中断。3、注册异常处理回调函数到CPU。来确定是不是目的管教的中断。6、设置GPIO的回调函数。5、设置gpio中断类型。7、使能对应pin的中断。两次进入中断处理函数。2、初始化中断控制器。

2023-12-24 15:33:03 731

原创 zynq中断学习记录

触 发可屏蔽中断的事件源不是每次都是重要的。除了irq# 61到#68和#84到#91之外,所有的中断灵敏度类型都是由请求源固定的,不能更改。2、私有中断(private peripheral interrupt ,PPI)(CPU0、CPU1各有5个),包括全局定时器、专用看门狗定时器(AWDT)、专用(私有)定时器和来自 PL 的 FIQ/IRQ。对于软中断来说:所有的 SGI 都是边缘触发的,且其敏感性类型是固定的,不能修改。对于共享中断来说:对于电平触发的中断而言,接收中断以后需要清除。

2023-12-24 15:05:49 583

原创 呼吸灯代码

**/int main()int status;int i,j;int flag=0;if(status!XGpioPs_XGpioPs_while(1){for(i=0;i

2023-12-22 20:06:52 381

原创 指针使用记录

赋值(&取址符,将a的地址赋给ptr,也就是说ptr指向a)reglist结构体中个num赋值为0x01;定义一个reglist结构体指针 ptr;ptr指向地址的数据为0x01(赋值);ptr指向地址0x1000000;

2023-12-21 15:43:14 446

原创 verilog函数

readmenh("txt文件",定义的数组reg [7:0]num[127:0])(定义256个位宽为128的寄存器)仿真遇到$stop,仿真器停止仿真但是不退出,同时提出一个命令提示符,在命令提示符后输入“.”,,则仿真过程继续。仿真遇到$finish后,仿真器完成仿真并退出。调用函数时,返回一个32位带符号的随机整数。将仿真器当前的仿真状态信息保存到指定文件中。返回仿真器的当前仿真时间(四舍五入)

2023-12-19 20:38:16 791 1

原创 异步fifo的输入输出

之前我一直在想,加入16bit输入到fifo,8bit读出的话是高8bit先出还是低8bit先出,同样,如果是8bit输入的话,先输入的8bit在高8位还是低8位,带着这个问题,我写了一个demo,来看看这个问题的答案。对于16bit转两个8bit的fifo来说,16bit的高8位先输出,低8位后输出。进入fifo的16bit在读出的32bit中居于高16位。这是什么定则我也忘记了,希望有人能告诉我,有错误欢迎指正。同样输入16bit,输出32bit来说呢?我想从这个截图上可以得到答案,那就是。

2023-12-05 11:06:17 707 1

这篇文章详细介绍了Vim编辑器的基础使用方法、高级功能及其配置,主要内容可以概括为以下几个方面:

内容概要:本文档详细介绍了Vim编辑器的基本命令和高级功能,旨在帮助用户掌握Vim的使用方法。内容涵盖了启动Vim、基本编辑命令(如插入、删除、撤销、重做)、光标移动(如hjkl、词移动、行移动)、文本查找与替换、可视模式、文本对象操作、选项设置、插件管理、帮助系统的使用等方面。此外,还介绍了如何通过vimrc文件自定义Vim的行为,以及如何使用语法高亮和带颜色打印等功能。文档不仅提供了详细的命令说明,还包含了许多实用的技巧和示例,帮助用户更高效地使用Vim进行文本编辑。 适用人群:具备一定计算机操作基础,尤其是对文本编辑工具有兴趣或需求的用户,特别是程序员和系统管理员。 使用场景及目标:①快速掌握Vim的基本操作,进行日常文本编辑;②深入理解Vim的各种高级功能,提高编辑效率;③通过自定义配置和插件扩展,满足个性化编辑需求;④利用语法高亮和带颜色打印等功能,提升代码和文档的可读性和美观度。 其他说明:本文档是Vim编辑器的全面指南,适合初学者逐步学习,也适合有一定经验的用户查阅参考。文档内容详尽,包含大量示例和实践建议,帮助用户在实际操作中更好地理解和应用Vim的各项功能。

2025-07-06

空空如也

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

TA关注的人

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