自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (10)
  • 收藏
  • 关注

原创 单像素与双像素或4像素转换仿真

随着视频分辨率的提升(如4K、8K),像素时钟频率显著增加,例如8K@60Hz的像素时钟频率高达2089.750MHz。为了降低FPGA图像处理中的时钟频率,可以采用双像素模式或4像素模式,通过增加位宽来减少时钟频率。在视频传输中,单像素模式每个时钟传输1个像素点(24bit),双像素模式传输2个像素点(48bit,时钟频率减半),4像素模式传输4个像素点(96bit,时钟频率降至四分之一)。仿真工程展示了从单像素模式到双像素或4像素模式的转换过程,并通过仿真波形验证了转换的正确性。

2025-05-17 09:57:29 420

原创 GBK与UTF-8编码问题(2)

在Python中使用open函数打开文本文件时,如果文件内容包含中文且显示乱码,通常是由于文件编码与默认编码不匹配所致。默认编码在Windows上通常是ANSI(如GBK),而在Linux/macOS上通常是UTF-8。解决方法有两种:一是在open函数中明确指定编码为utf-8,如open(filename, 'r', encoding='utf-8');二是将文件编码转换为与默认编码一致,如使用Notepad++将文件编码改为GBK。

2025-05-13 21:42:19 411

原创 GBK与UTF-8编码问题(1)

在编译Python代码时,如果遇到“SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xc4 in position 0: invalid continuation byte”类似错误,通常是因为文件编码方式与Python解释器的编码解析方式不一致。提供两种可行的解决方法。

2025-05-12 23:05:26 345

原创 8b10b编解码仿真

8B/10B编码是一种将8位数据转换为10位符号的编码技术,由IBM工程师于1983年提出。其核心目标是通过引入冗余位实现直流平衡和时钟同步,广泛应用于高速数据传输场景。编码原理将8位数据分为高5位和低3位,分别编码为6位和4位符号,最终合并为10位符号。编码后的符号分为数据符号(D码)和控制符号(K码),并通过偏置值(Running Disparity, RD)机制保持整体平衡。

2025-05-09 23:31:28 993

原创 DP1.4数据格式分析

学习DisplayPort最好的方法是在学习协议的同时能够抓取实际的数据查看。以下是DP接收实际抓取的数据。总的来说,DP传输数据时序与VESA时序是很接近的。也是以帧为单位,每帧有消隐行和数据有效行。

2025-04-26 11:07:58 688

原创 FWFT_FIFO和Standard_FIFO对比仿真

在FPGA中使用FIFO时,如果使用FPGA厂商提供的FIFO IP,一般都会有First Word Fall Through FIFO和Standard FIFO类型选项,那么这两种FIFO有什么差异么。通过仿真对比,First Word Fall Through FIFO相比Standard FIFO最大的差别就是在读使能有效时,数据立刻输出没有延时。

2025-04-25 22:41:49 1415 1

原创 从FPGA实现角度介绍DP_Main_link主通道原理

DisplayPort(简称DP)是一个标准化的数字式视频接口标准,具有三大基本架构包含影音传输的主要通道(Main Link)、辅助通道(AUX)、与热插拔(HPD)。Main Link:用来传输各种类型的视频数据和音频数据,Main Link由1~4对差分线构成,这些数据线是单向的,从source指向sink。Main Link具体需要几对数据线,取决于屏幕的分辨率和颜色位数。

2025-04-19 22:52:25 1069

原创 DP 32bit位宽数据扰码实现和仿真

32bit数据扰码,每个时钟输入数据位宽为32bit,LFSR需要有四组,分别是移位8个时钟周期后输出,移位16个时钟周期后的输出,移位24个时钟周期后的输出,移位32个时钟周期后的输出,再根据DP协议规则分别与32bit数据中的4个字节按位异或输出,输出数据为32bit。

2025-04-17 23:29:16 377

原创 DP 16bit位宽数据扰码实现和仿真

如何在1个时钟就能完成16bit数据的扰码呢?输入16bit数据可以分成2个8bit数据,其中1个8bit数据是与移位了8bit的LFSR的输出相异或,另1个8bit数据是与移位了16bit的LFSR的输出相异或。所以需要有2组LFSR寄存器。

2025-04-15 23:13:25 317

原创 DP扰码LFSR输出公式推导

要得到n个时钟后LFSR输出值,可以将运算过程n次迭代后得到最终输出表达式。这样利用最终输出表达式,只需1个时钟就可以得到原先8个时钟以后的输出值。

2025-04-12 14:46:12 159

原创 DP扰码模块verilog仿真

在DisplayPort 1.4协议中,为了减少EMI,在8B/10B编码之前,需进行扰码Scramble。LFSR每移位8个bit后,用最高有效 8 位以相反的位顺序与一个字节数据进行异或从而实现数据加扰/解扰。如果数据是K码,则不进行异或,直接输出K码数据。

2025-04-10 22:10:11 299

原创 DP_AUX辅助通道介绍

DisplayPort(简称DP)是一个由PC及芯片制造商联盟开发,视频电子标准协会(VESA)标准化的数字式视频接口标准。其中辅助通道(AUX)是一条独立双向半双工的传输通道,它也是一对差分信号线。其数据传输速率1Mbps,用来传输配置参数与指令。

2025-04-09 21:43:22 1033

原创 linux系统调试PCIe板卡常用指令

在linux系统中调试PCIe板卡需要查看相关信息,介绍一些常用的命令。

2025-04-04 14:55:03 384

原创 HDMI接口类型介绍

HDMI可用于机顶盒、DVD播放机、数字音响与电视机等设备。HDMI可同时发送音频和视频信号,由于音频和视频信号采用同一条线材,大大简化系统线路的安装难度。HDMI目前主要有五种HDMI接口,分别是A,B,C,D,E Type。

2025-04-02 21:48:48 597

原创 DisplayPort和HDMI各版本差异对比

DisplayPort简称DP,由VESA(PC及显示器行业联盟)制定,最新版本DP 2.1带宽可达80Gbps,主要服务于PC及专业显示器领域。我们来看看DP各版本有哪些差异。

2025-04-01 21:28:42 345

原创 3种实现MIPI_CRC模块的verilog代码仿真

MIPI(Mobile Industry Processor Interface)协议标准中计算数据校验和的方法是用16bit CRC校验来实现,生成多项式是x^16 + x^12 + x^5 + x^0。这里提供3种verilog实现代码并进行仿真验证。

2025-04-01 08:36:54 429

原创 不同插值算法图像缩放效果对比

图像缩放Scaler功能是图像处理中的一种常用功能,目的是将输入图像从一种分辨率转换到另一种分辨率输出。介绍了不同插值算法,并对图像缩放效果做了对比。

2025-03-31 20:31:32 602

原创 CRC校验verilog代码生成工具介绍

CRC校验verilog代码生成工具,在cmd命令提示符窗口,进入解压后目录crc-gen,输入命令 举例:D:\crc-gen> crc-gen verilog 8 16 1021,即可在当前窗口产生verilog代码。

2025-03-29 16:14:01 586

原创 MIPI计算ECC和CRC工具介绍

简要介绍MIPI ECC和CRC计算算法,介绍一个用于计算MIPI的ECC和CRC的软件工具。

2025-03-26 23:02:32 688

原创 UART转APB模块ModelSim仿真

APB(Advance Peripheral Bus)也是一种常用的FPGA内部总线接口。UART转APB模块用于实现一种简单的通过上位机控制FPGA内部寄存器的方式。上位机通过串口助手发送读写寄存器的指令,UART转APB模块接收指令后解析出地址,命令,数据信息,然后转成APB总线格式输出。

2025-03-26 00:12:10 907

原创 BMP位图格式解析和Modelsim仿真

介绍在硬件描述语言仿真平台中如果能简单地载入BMP图像文件和输出图像文件,并对BMP文件格式做个简单介绍。

2025-03-19 20:24:13 1039

原创 UART转AHB模块ModelSim仿真

UART转AHB模块用于实现一种简单的通过上位机控制FPGA内部寄存器的方式。上位机通过串口助手发送读写寄存器的指令,UART转AHB模块接收指令后解析出地址,命令,数据信息,然后转成AHB总线格式输出。

2025-03-17 21:20:35 968

原创 UART转AHB总线接口参考设计介绍

Tang Nano 4K开发板上实现的UART转AHB总线接口参考设计,通过配置寄存器改变testpattern。

2025-03-14 00:07:28 395

原创 帧率转换原理及读写指针实现

因为视频信号在传输过程中,输入和输出的帧率可能不同,例如输出要求固定是60帧/s,而输入是30帧/s,50帧/s,或是75帧/s等等,为了保证图像仍然连续传输,无撕裂现象,那么就需要做帧率转换。

2025-03-10 23:28:13 490

原创 TangNano4K板改OV2640彩色输出

Tang Nano 4K开发板原来自带的参考例程中,ov2640摄像头配置的是RAW10格式,所以图像就是以灰度图呈现。修改初始化寄存器配置后,改成RGB565彩色图像显示。

2025-03-09 10:39:24 387

原创 介绍一个能支持高带宽的EDID编辑软件

软件名称叫980 Manager 4.24.16,是一款由Quantum Data公司发布的EDID编辑软件。

2025-03-06 23:15:32 1066

原创 Tang Nano 4K开发板HDMI输出例程

Tang Nano 4K是由开源硬件厂商SiPEED矽速科技推出,基于高云半导体的小蜜蜂系列 GW1NSR-LV4C设计,内置M3硬核。板卡虽然小巧,但也包含有HDMI输出,DVP接口(外接OV2640摄像头),2个按键,1个LED灯,并且所有IO资源引出,方便开发者拓展使用。另外JTAG下载器已集成在板上,只需一根USB Type-C的线就可以实现下载调试,板卡供电也是依靠这条Type-C的线。

2025-03-02 00:30:36 804

原创 国产FPGA开发板选择

选择合适的FPGA开发板是学习和开发FPGA的关键步骤,本文罗列了一些淘宝上的FPGA开发板店铺。希望读者能根据自身需求和预算,选择到合适的FPGA开发板,提升学习和开发效率。

2025-02-16 00:02:22 3167 2

原创 FPGA应用领域

FPGA凭借其灵活性、高性能和低延迟特性,在传统领域和新兴领域都得到了广泛应用。在传统领域,FPGA主要用于通信、工业控制、航空航天、医疗电子和消费电子等领域;在新兴领域,FPGA逐渐扩展到数据中心、人工智能、物联网、金融科技和科学研究等领域。随着技术的不断发展,FPGA的应用场景将会更加广泛,成为推动各行业技术进步的重要力量。

2025-02-11 22:58:04 1140

原创 FPGA实现EDID存储器

介绍一种使用FPGA实现的EDID PROM方法。

2022-05-21 07:15:54 1562

原创 EDID文件格式转换工具介绍

简要介绍EDID文件格式转换工具使用。

2022-04-23 18:05:37 4325

原创 图像Scaler缩放因子

图像Scaler缩放因子1 Scaler介绍2 缩放因子计算工具1 Scaler介绍Scaler功能就是我们常说的图像缩放功能,是图像处理中的一种常用功能,目的是将输入图像从一种分辨率转换到另一种分辨率输出。在实时系统中,还要满足视频实时输入实时输出的要求。我们将Scaler的输入图像称为原图,Scaler的输出图像称为目标图。图像缩放存在方向性:分为水平方向缩放和垂直方向缩放。在某个方向上,目标图的分辨率比原图的分辨率大,在这个方向上为图像放大。在某个方向上,目标图的分辨率比原图的分辨率小,在

2021-11-13 19:43:16 11641

原创 EDID编辑器介绍

EDID编辑器介绍1 EDID介绍2 DDC通道3 EDID编辑工具3.1 Phoenix EDID Designer3.2 Deltacast E-EDID Editor4 EDID烧录工具1 EDID介绍  EDID, Extended display identification data,中文名称扩展显示器识别数据,是VESA在制定DDC(Display Data Channel)显示器数据通道通信协议时,制定的有关显示器识别数据的标准。EDID存储在显示器中的DDC存储器中,当电脑主机与显示器

2021-10-25 19:44:21 14565 1

原创 如何评价去隔行效果

1 隔行图像基本概念1.1帧 为了更好地理解帧的概念,我们先看看电影放映的原理。 电影的放映就是将一幅幅画面放映到屏幕上。在画面更换时,就将光线遮住,更换完毕再将光线打开。在更换过程中,屏幕上就会出现短暂的黑暗,不过这种短暂的黑暗会被人的视觉生理现象“视觉暂留”所弥补。人眼观看物体时,成像于视网膜上,并由视神经输入人脑,感觉到物体的像。但当物体移去时,视神经对物体的印象不会立即消...

2019-08-08 22:47:43 1164

原创 图像bayer格式及bayer插值原理介绍

1 图像bayer格式介绍Bayer格式图片源自拜耳阵列,拜耳阵列是CCD或CMOS传感器拍摄彩色图像的主要技术之一。拜耳阵列是由伊士曼·柯达公司科学家Bryce Bayer发明的,被广泛运用数字图像。对于彩色图像,每个像素点可用RGB三种颜色来表示,最简单的采样方法就是在每个像素点上用三个滤镜,红色的滤镜透过红色的波长,绿色的滤镜透过绿色的波长,蓝色的滤镜透过蓝色的波长。这样一来为了采集R...

2019-03-31 18:05:00 18153 1

原创 RGB转YCbCr422_BT709颜色空间转换仿真

1.前言表示图像颜色的方法除了RGB颜色模型之外,还有一些别的颜色模型,这些颜色模型被叫做色彩空间,色域空间,或颜色空间。常见的颜色空间有RGB,YIQ,HSV,YCbCr。RGB图像又称真彩色图像,R、G、B分别代表红、绿、蓝3种不同的颜色。YIQ空间对应NTSC模型,广泛应用于美国等国家的电视信号。Y表示亮度(luminance),I表示色度(hue),Q表示饱和度(saturati...

2019-03-16 22:49:13 6850 1

原创 ModelSim仿真图像输入和输出

目录1.前言2.框图3.图像输入4.图像输出5.仿真1.前言ModelSim仿真最麻烦的就是仿真平台的搭建,对于图像仿真来说,图像的输入输出就是搭建仿真平台的关键。本文介绍一下如何在ModelSim中实现图像的输入输出。2.框图在testbench中主要有两个模块,一个是图像输入模块driver,一个是图像输出模块monitor。Driver模块负责把bmp位图转换成RGB并行数据,Mo...

2019-03-12 00:37:47 5142 2

原创 视频领域FPGA平台式开发体系

随着产品上市速度要求,质量要求的不断提升,硬件和软件都在通过各自的方式提升自己的开发速度。硬件领域的模块化,软件领域的平台化,都已经取得了比较明显的效果。无论是在产品质量,开发速度,新员工快速上手方面,只要按照平台化的方式进行开发,都能很好的提升效率。因此,对于逻辑FPGA的开发,可以结合公司的产品其自身的特点,采用以下的FPGA平台式开发模式,将与底层硬件相关的IP(Intellectual ...

2019-03-12 00:34:41 295

支持单双及四像素模式testpattern仿真工程

testpattern图常用于视频和图像调试,此Modelsim仿真工程提供一种支持单像素模式,双像素模式和四像素模式的testpattern模块,能产生四种测试图及纯色图,可通过输入端口设置不同的值进行选择。

2025-05-24

视频单像素模式转4像素模式仿真工程

视频单像素模式转4像素模式,数据位宽增加4倍,时钟频率可以降低为四分之一。仿真工程将testpattern测试图转换后再存为bmp位图。

2025-05-14

视频单像素模式转双像素模式仿真工程

视频单像素模式转双像素模式,数据位宽增加一倍,时钟频率可以降低一半。仿真工程将testpattern测试图转换后再存为bmp位图。

2025-05-14

8b/10b编解码verilog仿真工程

8b/10b编码是一种将8位数据(包括数据字符和控制字符)转换为10位符号的编码技术,广泛应用于高速数据传输场景。此仿真工程对8b/10b编解码源码模块进行仿真。源码根据8b/10b编码原理实现,将8位输入分为两部分: 高5位:从8位中取高5位,编码为6位符号(5b/6B编码) 低3位:剩余低3位,编码为4位符号(3b/4b编码) 最终将6位和4位合并为10位符号。

2025-04-28

First Word Fall Through FIFO与Standard FIFO对比仿真

First Word Fall Through FIFO特点是输出端口数据保持有效,读使能有效时即有数据输出。Standard FIFO在读使能有效时,数据一般延时1个时钟周期输出。通过仿真来查看这两种FIFO的特点。

2025-04-24

显示技术DisplayPort 1.4标准详解:视频音频数据传输接口设计与优化

内容概要:DisplayPort 1.4标准由视频电子标准协会(VESA)提出,旨在定义一种灵活的系统和装置,用于通过数字通信接口在源设备和接收设备之间传输视频、音频和其他数据。该标准不仅涵盖了内部连接(如PC或显示器内的接口),还包括外部显示连接(如PC与显示器、投影仪或电视之间的接口)。自2006年首次发布以来,DisplayPort经历了多次迭代。1.2版本引入了更高的传输速率、多流传输、USB 2.0/以太网数据传输等功能;1.3版本进一步提升了带宽至32.4Gbps,支持5K分辨率输出;而最新的1.4版本增加了对VESA Display Stream Compression(DSC)显示流压缩传输功能的支持。

2025-04-19

DP 32bit位宽数据扰码模块仿真

DP输入输出数据位宽32bit,并行处理扰码模块仿真,scramble模块是根据串行迭代32次实现方式,descramble是根据DP协议附录参考代码并行迭代三次实现方式。经过加扰再解扰后,最终数据与

2025-04-17

DP 16bit位宽数据扰码模块仿真

DP输入输出数据位宽16bit,并行处理扰码模块仿真,scramble模块是根据串行迭代16次实现方式,descramble是根据DP协议附录参考代码并行迭代一次实现方式。经过加扰再解扰后,最终数据与原始数据一致。

2025-04-15

DisplayPort 8bit数据扰码模块verilog仿真

在DisplayPort1.4协议中,为了减少EMI,在8B/10B编码之前,需进行扰码Scramble。根据协议附录中的参考,用verilog实现数据位宽为8bit的扰码模块并进行仿真。

2025-04-10

MIPI CRC校验功能实现verilog代码仿真

根据MIPI DSI-2协议的生成多项式x^16 + x^12 + x^5 + x^0,用verilog代码实现并仿真,与附录AnnexB的示例结果一致。

2025-03-31

CRC校验verilog代码生成工具

在cmd命令提示符窗口,进入解压后目录crc-gen,输入命令 举例:D:\crc-gen> crc-gen verilog 8 16 8005 命令用法:crc-gen language data_width poly_width poly_string 命令参数意义: language : verilog or vhdl data_width : 输入数据位宽 poly_width : 校验多项式简记式位宽 poly_string : CRC校验简记式 注:输入数据的最高位MSB在串行操作时是输入多项式的第1 bit。 另外提供modelsim仿真工程可用于对生成的verilog代码仿真验证。

2025-03-29

用python语言实现的MIPI ECC和CRC计算工具

MIPI ECC和CRC计算工具,用于MIPI屏调试和仿真相关参数设定和检验,在Window10系统下可直接运行,附python源码。

2025-03-27

UART转APB接口总线Modelsim仿真工程

被测试模块uart_apb_mst_top,测试激励分master端和slave端。master端是由uart_cmd_trans和uart_mst_top两个模块构成,将串口指令转成tx和rx简单串口信号。slave端是apb_slv,模拟apb总线接口的slave模块。

2025-03-19

UART转AHB总线接口Modelsim仿真工程

UART转AHB仿真工程。被测试模块uart_ahb_mst_top,测试激励分master端和slave端。master端是由uart_cmd_trans和uart_mst_top两个模块构成,将串口指令转成tx和rx简单串口信号。slave端是ahb_slv,模拟ahb总线接口的slave模块。 如果PATH有modelsim的可执行路径,则直接运行sim文件夹下的tb.bat即可,否则需打开modelsim进入sim文件夹下手动运行tb.do命令脚本。

2025-03-14

UART转AHB总线接口verilog实现参考设计

UART转AHB总线接口verilog实现参考设计,在Tang Nano 4K开发板上设计实现。 PC可通过串口助手,下发读写寄存器命令。 写寄存器命令w 地址 数据,例如:w 00000005 00000002 读寄存器命令r 地址,例如:r 00000001

2025-03-13

Tang Nano 4K开发板调试采集ov2640摄像头彩色数据

Tang Nano 4K开发板,更新ov2640初始化配置寄存器,以RGB565格式采集彩色图像数据。

2025-03-09

一款能支持高带宽高分辨率的EDID编辑工具

一款EDID编辑工具,解析非常详细,支持的文件格式为.bin文件,附带3个EDID文件示例。

2025-03-06

Tang Nano 4K开发板参考例程更新IP

从Github网址上下载的Tang Nano 4K开发板参考例程虽然可以用,但在最新的高云IDE软件中,由于IP的更新已无法打开,重新生成IP也有些需要注意的。这里将IP重新生成了一下,方便使用。

2025-03-03

EDID文件格式转换工具2

对.dat和.bin格式的EDID文件进行格式转换,还可以转换成.mif, .mi, .hex, .txt格式。这是第2版,第1版转换.hex格式校验和计算有错。

2022-04-23

EDID文件格式转换工具

对.dat和.bin格式的EDID文件进行格式转换,还可以转换成.mif, .mi, .hex, .txt格式。

2022-04-23

图像Scaler缩放因子计算器

图像缩放因子计算器,根据输入和输出的图像分辨率,分别计算水平缩放因子和垂直缩放因子。

2021-11-13

Deltacast E-EDID Editor.zip

EDID v1.4 编辑器 Deltacast

2021-10-24

Phoenix.zip

EDID v1.3 编辑器 Phoenix

2021-10-24

基于Cyclone5器件LVDS 7:1 图像收发仿真

基于Cyclone5系列 FPGA,利用LVDS IP完成 LVDS 7:1格式图像传输,在modelsim中进行仿真。

2019-04-21

Bayer to RGB最近邻插值转换Modelsim仿真

Bayer数据格式转换为RGB数据格式Modelsim仿真,采用最近邻插值算法,转换效果一般,但实现方式最简单。

2019-03-28

RGB to YC颜色空间转换仿真

利用verilog实现RGB 到YCbCr 4:2:2的颜色空间转换,基于BT.709 limitRGB公式,并在modelsim中进行仿真,以bmp位图作为信号源输入,实现RGB到YC,YC到RGB转换后再转成bmp输出。 不知怎么更改上传的代码程序,所以在描述中加说明。 代码中Y_tmp,Cb_tmp,Cr_tmp为[8:0]时,可能会溢出,所以需改位宽为[9:0],同时Y_node,Cb_node,Cr_node代码需修改,举例: if(!rst_n) Y_node<=8'b0; else if(Y_tmp[9:8]==2'b00) Y_node<=Y_tmp[7:0]; else if(Y_tmp[9:8]==2'b01) Y_node<=8'hff; else Y_node<=8'h00;

2019-03-13

ModelSim仿真图像输入和输出仿真工程

在modelsim中仿真图像输入输出,用bmp位图作为图像源输入,最后再转成bmp位图输出。

2019-03-10

bmp图片输入输出verilog仿真

将bmp图片模拟视频输入输出verilog仿真,在安装好modelsim的情况下,可直接运行sim文件夹下的.bat文件进行仿真。

2015-11-24

空空如也

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

TA关注的人

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