- 博客(36)
- 收藏
- 关注
原创 14位相机转为8位数据Verilog代码
这是模拟相机输出时序的Verilog模块。输入信号为系统时钟信号,系统复位信号。输出信号为像素时钟,14位像素数据,帧有效信号,行有效信号,此时输出的像素在这一帧中的序号。输出像素数量、行有效信号间隔(每行最后一个像素后多少个时钟周期开始下一行),帧有效信号间隔(例如每帧结束到下一帧开始的时钟周期数)可通过parameter调节。系统时钟信号直接输出为像素时钟信号,14位像素数据从0开始依次增加,增加到某个可调的阈值后归零继续增加。
2024-07-01 15:38:52 381
原创 FPGA ov5640视频以太网传输
使用DFZU4EV MPSoC 开发板及双目OV5640摄像头其中一个摄像头实现图像采集,并通过开发板上的以太网接口发送给上位机实时显示。
2024-05-08 22:35:20 481
原创 FPGA 以太网通信UDP通信环回
ARP顶层模块负责解析收到的ARP请求命令,并返回开发板的MAC地址。以太网控制模块根据接收到的ARP完成信号类型来控制ARP顶层模块返回ARP应答信号,并根据当前接收到的协议类型,选择切换ARP顶层模块和UDP顶层模块的GMII发送侧引脚。为了满足单包数据量较大的情况(尽管通常情况下,以太网帧有效数据不超过1500个字节),FIFO的深度设置为2048,宽度为32位。系统时钟经过PLL时钟模块后,生成了两种不同频率和相位的时钟信号:一种是200MHz的时钟信号,用作IDELAYCTRL原语的参考时钟;
2024-04-27 22:41:16 1082
原创 Verilog 数学运算
浮点数是一种用于近似表示实数的数学表达方式,它在计算机科学和工程领域中广泛使用。浮点数的设计目的是为了在有限的数字精度下,能够表示非常大或非常小的数值,以及它们之间的比率。浮点数通常由三个部分组成:符号位(Sign)、指数(Exponent)和尾数(Mantissa 或 Fraction)。符号位:表示数值的正负。通常用一个位(bit)来表示,0代表正数,1代表负数。指数:表示数值的范围或大小。它是一个二进制数,用于表示数值的指数部分。在科学计数法中,
2024-03-06 16:43:49 1374
原创 FPGA TestBench编写学习
例如,如果设置为1ps,那么仿真器会将时间值计算到皮秒(ps)的精度。比如“`timescale 1ns/1ps”,一般仿真时不需要精确到ps级,所以只需要设置成ns级就行,比如“`timescale 1ns/1ns”。:这是仿真中使用的时间单位,通常以纳秒(ns)或微秒(us)为单位。例如,如果设置为1ns,那么仿真器会将代码中的1单位时间解释为1纳秒。这个指令通常在模块的顶层声明中使用,它告诉编译器和仿真器如何解释代码中的时间值。这表示仿真器将使用1纳秒作为时间单位,并且时间精度为1皮秒。
2024-03-06 15:02:34 1379
原创 FPGA Verilog编写状态机学习
三段式状态机(Three-phase state machine)是一种更加模块化和可维护的状态机实现方式。它将状态机的执行过程分为三个阶段:在这个阶段,当前状态被寄存,以便在下一个时钟周期中使用。在这个阶段,基于当前状态和输入条件,计算出下一个状态和输出。在这个阶段,将计算出的输出赋值给输出信号。
2024-03-06 14:18:35 1917
原创 dsp中c语言将灰度图进行隔行隔列降采样
在dsp开发中,用c语言编写函数,将灰度图进行隔行隔列降采样。函数以原始灰度图的数组、图像的长宽、降采样后的灰度图数组以及降采样倍数作为参数。
2024-03-05 16:53:48 445
原创 FPGA FIFO实验
在Vivado设计套件中,用户可以通过IP Catalog配置FIFO Generator IP核,设置其基本参数,如接口类型、时钟类型、资源类型等。配置完成后,FIFO IP核可以被实例化到设计中,用于处理数据流。
2024-02-29 15:49:02 1411
原创 IIC通信协议学习
IIC(Inter-Integrated Circuit)通信协议,也称为I²C,是一种由NXP半导体(原飞利浦半导体)在1980年代初期发明的串行通信协议。它被设计用于在短距离内,如在同一电路板上,连接微控制器(MCU)和外围设备(如传感器、EEPROM等)进行。
2024-02-23 15:37:06 648
原创 FPGA ov5640 lcd屏幕显示实验
这款摄像头的内部结构较为复杂,包括图像数据的采集、放大、数字信号转换等过程,最终通过 DVP 端口输出。DVP 接口本身拥有 10 位数据线,可以输出 10 位的 RAW 数据,但在大多数情况下,使用 8 位数据线来输出 RGB888 及 RGB565 等格式。它支持高达 2592x1944 分辨率的图像输出,同时能够以 15fps 的帧率输出 QSXGA 分辨率的图像,或者以 90fps 的帧率输出 VGA 分辨率的图像。此外,它还支持输出多种分辨率的图像。
2024-02-22 19:36:18 1320
原创 FPGA串口回环实验
验位分为奇校验和偶校验,用于检验数据在传输过程中是否出错。奇校验时,发送方应使数据位中 1。起始位标志着一帧数据的开始,停止位标志着一帧数据的结束,数据位是一帧数据中的有效数据。1 的个数进行检查,若不为奇数,则说明数 据在传输过程中出了差错。串口通信需要两根信号线来实现,一根用于串口发送,另外一根负责串口接收。接收方在接收数据时,对。在发送 或接收过程中的一帧数据由 4。的个 数与校验位中 1。
2024-02-21 17:59:46 701
原创 FPGA LCD显示彩条实验
LCD屏幕,即液晶显示屏(Liquid Crystal Display),是一种使用液晶材料来显示图像的屏幕技术。液晶本身并不发光,因此LCD屏幕通常需要背光源来照亮液晶以显示图像。
2024-02-21 15:17:14 722
原创 DSP的cmd文件
DSP(数字信号处理器)的CMD文件,全称为链接器配置文件(Linker Command File),是用于指导链接器如何将编译后的目标文件(obj)和库文件(lib)链接成最终的可执行文件(.out)的文本文件。CMD文件对于DSP程序的开发至关重要,因为它定义了程序的存储器布局,包括程序代码和数据在DSP芯片上的存储位置。SECTIONS部分描述了如何将编译器生成的各个段(如.text、.data、.bss等)映射到MEMORY部分定义的存储器区域。在SECTIONS部分,你可以使用伪指令如。
2024-02-20 16:24:46 1039
原创 Verilog HDL 入门
变量和常量定义(如reg, wire, parameter, localparam等)控制结构(如if-else语句, case语句, for循环, while循环等)赋值语句(assign, initial, always等)运算符和表达式(算术运算符, 逻辑运算符, 位运算符等)时序控制(时钟信号, 复位信号, 使能信号等)1.1.2 整数数值表示方法。注释(单行注释和多行注释)模块(module)定义。
2024-02-08 17:59:05 474
原创 单片机底层寄存器的本质与原理
同时,通过写入寄存器,软件可以控制硬件设备的行为,如设置或清除某个端口的状态。寄存器本质上是一组被集成在单片机内部的内存单元,它们被设计成可以快速访问,通常位于CPU内部或者非常靠近CPU的位置。许多寄存器是由多个位组成的,每个位可以独立地被读取或写入,这样就可以对硬件的特定功能进行精细的控制。硬件设备通常可以看作是一个状态机,寄存器反映了当前的状态,写入寄存器则可以改变状态机的状态。单片机的每个寄存器都分配有一个唯一的地址,CPU通过这个地址访问特定的寄存器。
2024-02-03 14:25:26 718
原创 嵌入式C语言复习
1 变量和数据类型1.1 常用基本数据类型占用空间char(字符型) : 1个字节 int(整型) :4个字节 float(单精度浮点型):4个字节 double(双精度浮点型):8个字节1.2 基本类型书写1.2.1 整数dec,默认为10进制 ,10 ,20 oct,以0开头为8进制,045,021 bin,以0b开头为2进制,0b11101101 hex,以0x开头为16进制,0x21458adf1.2.2小数3.14 双精度浮
2024-02-02 20:43:47 498
原创 DSP上的SRIO编程及调试指南
基于这份文件是关于Keystone DSP上的Serial RapidIO (SRIO)编程和性能数据的应用报告。SRIO是一种高速、非专有的系统级互连技术,主要用于芯片间和板间通信。报告详细介绍了SRIO在Keystone DSP上的配置、编程、性能测试以及一些编程技巧。:介绍了如何配置SRIO端口模式(1x/2x/4x)、设备ID、Load Store Unit (LSU)、消息和数据包DMA、中断设置、回环模式以及数据包转发。:讨论了如何使用LSU进行数据传输,包括直接I/O、门铃和维护传输。
2024-01-31 17:37:22 1457 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人