FPGA-VGA
目录
前言
一、VGA是什么?
二、物理接口
三、VGA显示原理
四、VGA时序标准
五、VGA显示参数
六、模块设计
七、波形图设计
八、彩条波形数据
前言
VGA的FPGA驱动
一、VGA是什么?
VGA(Video Graphics Array)是IBM于1987年推出的显示标准,涵盖硬件接口、分辨率和图形处理规范。常见的视频传输接口有三种:VGA 接口、DVI 接口和HDMI 接口,目前的显示设备都配有这三种视频传输接口。
三类视频接口的发展历程为VGA→DVI→HDMI。
二、物理接口
接口解释:
1. 核心信号传输(RGB三原色)
-
Pin 1(Red):传输红色分量的模拟信号。
-
Pin 2(Green):传输绿色分量的模拟信号。
-
Pin 3(Blue):传输蓝色分量的模拟信号。
作用:RGB三原色信号组合形成完整的图像色彩,信号强度决定像素亮度。
2. 同步信号(Sync)
-
Pin 13(Horizontal Sync):传输水平同步信号,控制显示器横向扫描的时序。
-
Pin 14(Vertical Sync):传输垂直同步信号,控制显示器纵向刷新的时序。
作用:同步信号确保显示器与显卡输出的图像帧率匹配,避免画面撕裂或偏移。
3. 地线(Ground)
-
Pin 5(Ground):RGB信号的公共地线。
-
Pin 6(Red Ground):红色信号专用地线。
-
Pin 7(Green Ground):绿色信号专用地线。
-
Pin 8(Blue Ground):蓝色信号专用地线。
-
Pin 10(Sync Ground):同步信号的公共地线。
作用:地线用于消除信号干扰,稳定传输质量。不同信号单独接地可减少串扰。
4. 其他功能针脚
-
Pin 4(ID2 / Reserved):早期用于显示器识别(ID Bit 2),现多为保留未用。
-
Pin 9(+5V DC):提供5V电源,早期用于某些显示器检测或DDC芯片供电。
-
Pin 11(ID0 / Reserved):显示器识别位(ID Bit 0),现通常未使用。
-
Pin 12(ID1 / SDA):部分设备用于DDC(Display Data Channel)通信的SDA数据线。
-
Pin 15(ID3 / SCL):部分设备用于DDC通信的SCL时钟线。
作用:DDC功能允许显示器自动向显卡报告分辨率等信息(类似即插即用)。
关键接口是三个基色接口,以及行同步接口和场同步接口。
三、VGA显示原理
VGA 显示器显示图像,并不是直接让图像在显示器上显示出来,而是采用扫描的方
式,将构成图像的像素点,在行同步信号和场同步信号的同步下,按照从上到下、由左到
右的顺序扫描到显示屏上。
一行一行的扫描。
为什么我的扫描的这么慢,怎么改变帧率,提高或者降低帧率。
四、VGA时序标准
上面的时序也只是一种,也有其它的时序,比如反过来的。
代码如下(示例):
每个时钟周期传输一个像素点,深色部分有多个时钟周期,每个时钟周期对应一个像素点,上面是一个像素点的时钟周期,这个时钟周期也叫像素时钟周期。
每次扫描一帧图像,相交部分是显示区域,是一帧图像。
五、VGA显示参数
640x480@60的含义是,显示屏是640列,480行,60帧的速率。这60帧我没看到和感受到啊。
640x480约30_0000个像素点。
行扫描周期x场扫描周期x帧率=像素时钟(Mhz),这是行场同步的时钟频率。
由于VGA的输入是模拟信号,将数字信号转换为模拟信号,可以采用权电阻网络或者是专用的转换芯片。
这是RGB565的格式,用电压来表示颜色的深度,这三路模拟信号的电压范围为0V ~ 0.714V,0V 代表无色,0.714V 代表满色,电压高低由输入的数字信号决定。输入的R、G、B 数字信号不同,输出的三原色红、绿、蓝电压不同,颜色深浅不同,三原色相结合可以产生多种颜色。
六、模块设计
七、波形图设计
一个行扫描周期是扫描一行,扫描完一行,列计数器计数一个,图像是在对应的行扫描周期和列扫描周期的对应时间来判断的。
图像有效信号范围,计数从0开始
行计数器范围(96+40+8-1=143,96+40+8+640-1=783)
场计数器范围(2+25+8-1=34,2+25+8+480-1=514)
八、彩条波形数据
640是列的个数
480是行的个数
对行进行10等分。
在有些时候对于数据的初始化可以不用0,改用其他的不常见或者不可能数值。比如数据变化范围是0-100,位宽是8位,可以初始化为8'hff,防止在数据误操作,比如在0到10要进行一个操作,那么初始化为0就会在开始时发生误操作,但是初始化为8‘hff,就不会发生误操作。
有时数据需要对齐边沿。
数据滞后坐标一个时钟周期,在vga_ctrl里产生对应的坐标,然后图像生成模块在一个时钟周期内输出对应的图像数据。图像数据经过组合逻辑立刻经过vga_ctrl输出图像。
数据滞后位置的波形图。
相关文章:
FPGA-VGA
目录 前言 一、VGA是什么? 二、物理接口 三、VGA显示原理 四、VGA时序标准 五、VGA显示参数 六、模块设计 七、波形图设计 八、彩条波形数据 前言 VGA的FPGA驱动 一、VGA是什么? VGA(Video Graphics Array)是IBM于1987年推出的…...
仿腾讯会议项目开发——界面关闭功能实现
目录 1、include(./netapi/netapi.pri) 2、加快构建速度 3、INCLUDEPATH./netapi 4、添加控制类 5、用单例模式创建一个Ckernel的对象 6、创建一个回收的槽函数 7、添加界面文件 8、创建一个私有的界面对象 9、修改为使用单例模式的控制类创建界面 10、在Ckernel类中…...
微信小程序怎么分包步骤(包括怎么主包跳转到分包)
第一步 主包跳转到分包 第一步 第二步...
点云配准控制迭代停止的阈值
在点云配准(如ICP算法)中,setEuclideanFitnessEpsilon() 是一个设置收敛条件的函数,用于控制迭代停止的阈值。以下是关于该参数的详细说明: 函数作用 setEuclideanFitnessEpsilon() 设置的是 两次连续迭代之间均方误…...
高频面试题:Android MVP/MVVM/MVI这几种架构在实际生产中,各自的优缺点和适用场景是什么
安卓开发早期的架构模式相对简单,许多开发者直接在Activity或Fragment中堆砌业务逻辑和UI操作,这种方式虽然在小型项目中看似高效,但随着代码量的增加,很快就会导致逻辑混乱、难以测试和维护的问题。Activity和Fragment作为安卓框…...
国内主要半导体厂家
以下是国内主要半导体厂家按产品类别(模拟、数字、MCU、功率、传感器等)的分类总结,涵盖各领域代表企业及其核心产品方向: 一、模拟芯片(Analog IC) 圣邦微电子(SGMICRO)…...
DeepSeek深度观察:白宫“炒人“威胁的语义强度与市场应激量化分析
一、AI观察:政治博弈的语义强度分析 通过NLP情感分析模型对特朗普近期公开言论的语义解析显示,总统在社交媒体及记者会中多次使用"立即解雇""卷铺盖走人"等极端表述,其公开威胁解雇鲍威尔的推文互动量突破120万次&#…...
城市街拍暗色电影胶片风格Lr调色教程,手机滤镜PS+Lightroom预设下载!
调色介绍 城市街拍暗色电影胶片风格 Lr 调色,是借助 Adobe Lightroom 软件,为城市街拍的人像或场景照片赋予独特视觉风格的后期处理方式。旨在模拟电影胶片质感,营造出充满故事感与艺术感的暗色氛围,让照片仿佛截取于某部充满张力…...
图像分类标注小工具
图像分类标注小工具 不说废话 上代码 import os import cv2 import shutil import csvclass ImageLabeler:def __init__(self, input_dir, output_dir, class_names, csv_pathlabel_log.csv, preview_size(800, 800)):self.input_dir input_dirself.output_dir output_dirse…...
leetcode 2364. 统计坏数对的数目 中等
给你一个下标从 0 开始的整数数组 nums 。如果 i < j 且 j - i ! nums[j] - nums[i] ,那么我们称 (i, j) 是一个 坏数对 。 请你返回 nums 中 坏数对 的总数目。 示例 1: 输入:nums [4,1,3,3] 输出:5 解释:数对…...
网络互连与互联网3
1.SMTP简单邮件传输协议,用于发送电子邮件,默认情况下是明文传输,没有加密机制。 SSL是一种安全协议,对电子邮件进行加密传输。 POP3主要用于接收电子邮件 IMAP用于接收电子邮件 2.采用存储-转发方式处理信号的设备是交换机 …...
docker部署springboot(eureka server)项目
打jar包 使用maven: <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>17</source><target>17&…...
git 出现 port 443 Connection timed out
梯子正常延迟不算严重,但在使用git push时反复出现 fatal: unable to access https://github.com/irvingwu5/xxxx.git/ Error in the HTTP2 framing layer Failed to connect to github.com port 443 after 136353 ms: Connection timed out 将git的网络配置与梯子…...
深入 MySQL 高级查询:JOIN、子查询与窗口函数的实用指南
在数据管理和分析的过程中,MySQL 提供了强大的查询功能,特别是在处理复杂数据关系时。本文将深入探讨 MySQL 的三种高级查询技术:JOIN、子查询和窗口函数。通过对这些技术的详细讲解和示例,帮助您更好地掌握并应用这些查询技巧。 …...
AXOP36061S: 60V 高压单通道运算放大器
AXOP36061S 是一款通用型高压带关断功能的单通道运算放大器,工作电压为3V至60V,具有17MHz的带宽和 15V/μs的压摆率,静态电流2.2mA,关断电流80μA,高耐压和宽带宽使其可以胜任绝大多数的高压应用场景。得益于对噪声和T…...
Aladdin显卡多任务运行教程
Aladdin显卡多任务运行 任务场景操作步骤其他说明 任务场景 当我运行我的代码后发现80G的显存仅占用了46G左右,还有很大空间没有被使用,于是想着能不能把剩下的空间也利用起来,于是有了接下来的工作。 操作步骤 当我们使用GPU run/debug/…...
Oracle AWR快照保留策略及其修改
文章目录 一、AWR快照保留机制及其修改方法二、生产环境建议三、监控建议 一、AWR快照保留机制及其修改方法 默认保留策略: • 标准保留期:8天 • 快照间隔:每小时1次(默认) • 存储位置:SYSAUX表空间 保留…...
日本公司如何实现B2B商城订货系统的自动化和个性化?
在日本构建具备前后台日文本地化、业务员代客下单、一客一价、智能拆单发货的B2B电商系统,需结合日本商业习惯与技术实现。以下是关键模块的落地方案: 一、系统架构设计 1. 前端本地化 语言与UI适配 采用全日语界面,包含敬语体系(…...
JavaScript 核心特性完全指南
引言 JavaScript 已经不再只是浏览器中的脚本语言,它支撑着前端、后端(Node.js)、桌面(Electron)、移动端(React Native)等多种生态。要在现代 Web 开发中游刃有余,除了会写代码,更要深刻理解语言特性、掌握常见模式和优化技巧。下面逐一深入解析 20 大核心特性。 1.…...
CentOS系统中排查进程异常终止的日志
在CentOS系统中排查进程异常终止的日志,可通过以下步骤结合多类日志文件和工具进行综合分析: 一、核心日志文件排查 系统全局日志 查看 /var/log/messages:记录系统级错误、内核消息及进程异常终止信息,如OOM Killer事件。…...
Vue组件安全工程的量子跃迁:从基因改造到生态免疫
总章数字生命的进化论 2023年某电商平台红蓝对抗中,一个未净化的v-html指令导致千万用户数据泄露。当我们剖开现代Web应用的器官式架构,发现90%的安全漏洞都源自组件间的信任危机。本文将带您见证如何用军工级防御体系重构Vue组件,使其具备类…...
编程技能:调试03,逐过程命令与退出调试
专栏导航 本节文章分别属于《Win32 学习笔记》和《MFC 学习笔记》两个专栏,故划分为两个专栏导航。读者可以自行选择前往哪个专栏。 (一)WIn32 专栏导航 上一篇:编程技能:调试02,设置断点与删除断点 回…...
基于Ubuntu22.04和OpenCV4.5.4的物联网人脸识别考勤机
前言:本人已有Ubuntu22.04的相关开发环境配置,并且默认C和机器学习基础,这里直接从安装opencv开始,完整代码在最后。具体情况具体分析,请以实际为主。 视频参考:【大厂敲门砖】从0到1做一个物联网人脸识别…...
java 排序算法-快速排序
快速排序(Quick Sort)是一种高效的排序算法,它使用分治法(Divide and Conquer)策略来把一个序列分为较小和较大的两个子序列,然后递归地排序两个子序列。 快速排序算法的基本思想: 选择基准值&…...
openEuler系统下源码编译安装Nginx实践教程
openEuler 24.03 LTS 源码编译安装Nginx实践教程 前言一、环境准备1. 系统要求2. 更新系统与基础配置二、依赖安装1. 安装编译工具链2. 安装Nginx核心依赖三、源码编译安装1. 下载Nginx源码2. 创建专用系统用户3. 配置编译参数4. 编译与安装四、服务配置与管理1. 创建Systemd服…...
helloword 1(安卓逆向工具简单利用)
题目 做法 下载,不要解压,直接拖入Exeinfo PE进行分析 文件后缀是apk,判断为安卓逆向题 拖进ApkIDE 先找主函数main函数,这题的flag直接出来了 (搜索内容不要习惯性空格之类,这样会找不出来)…...
基于ONT数据的乳腺癌BRCA1和BRCA2变异检测方法
评估 BRCA1/2 分子状态已成为乳腺癌患者治疗的标准操作。例如聚合酶抑制剂(PARPi)的开发和临床应用,PARPi 是肿瘤学家新疗法中的关键方式。已发现 PARPi 可改善携带 BRCA1/2 种系或体细胞突变的乳腺癌患者的临床结局,提高患者生存率和生活质量。因此,目前全球指南强烈建议…...
uniapp运行在app端如何使用缓存
uniapp运行在app端如何使用缓存 众所周知,uniapp可以一套代码,多端运行。但是需要注意的是,window对象以及document是浏览器特有的(所以app端无法使用localStorage等api),因此,uniapp贴心的为我们准备了getStorage…...
人工智能代理重塑数字成功:为何面向机器的营销是下一前沿
随着人工智能(AI)改变消费者与数字世界的互动方式,数字营销正迎来一场革命性变革。2025年4月14日发布的一项研究揭示了AI代理——代表用户自主研究、比较和推荐产品或服务的系统——的日益增长的影响力。该研究探讨了这些代理如何与在线内容交…...
《奇迹世界起源》:神之月晓活动介绍!
神之月晓是《奇迹世界起源》手游中的一项限时抽奖活动,为玩家提供了获取丰厚奖励的机会。活动期间,玩家可以通过充值达到指定金额获得抽奖资格,每次充值一定金额即可获得一次抽奖机会,每天有抽奖次数上限。 活动规则:…...
AI测试用例生成平台
AI测试用例生成平台 项目背景技术栈业务描述项目展示项目重难点 项目背景 针对传统接口测试用例设计高度依赖人工经验、重复工作量大、覆盖场景有限等行业痛点,基于大语言模型技术实现接口测试用例智能生成系统。 技术栈 LangChain框架GLM-4模型Prompt Engineeri…...
【web服务_负载均衡Nginx】二、Nginx 核心技术之负载均衡与反向代理
一、负载均衡与反向代理概述 在互联网应用场景中,随着用户访问量的不断增加,单台服务器往往难以满足性能和可靠性的需求。负载均衡与反向代理技术应运而生,成为保障高并发、稳定服务的关键技术。负载均衡旨在将大量的客户端请求合理分配到…...
前端基础之《Vue(6)—组件基础(2)》
接上一篇。 七、v-model深入学习 <html> <head><title>组件基础-4</title><style>.score {display: inline-block;}.score>span {display: inline-block;width: 25px;height: 25px;background: url(./assets/star.png) center center / 25p…...
计算机网络——应用层
一、HTTP报文结构 (1)请求 请求行:请求头:空行:请求体: (2)响应 状态行:响应头:空行:响应体: (3)补充说明…...
基于springBoot+vue的PC 端学习系统(源码+lw+部署文档+讲解),源码可白嫖!
摘要 随着我国经济的高速发展与人们生活水平的日益提高,人们对生活质量的追求也多种多样。尤其在人们生活节奏不断加快的当下,人们更趋向于足不出户解决生活上的问题,线上管理系统展现了其蓬勃生命力和广阔的前景。与此同时,在疫…...
《软件设计师》复习笔记(11.3)——需求获取、分析、定义、验证、管理
目录 一、软件需求概述 真题示例: 二、质量功能部署(QFD) 三、需求开发流程 需求获取 需求分析 需求定义(SRS) 需求验证 真题示例: 四、需求管理 真题示例: 一、软件需求概述 软件…...
iOS Google登录
iOS Google登录 SDK下载地址在 Firebase 有下载,要下载整个SDK文件,然后拿其中的Google 登录SDK来使用 Firebase 官方文档 github 下载链接...
使用 Axios 进行 API 请求与接口封装:打造高效稳定的前端数据交互
引言 在现代前端开发中,与后端 API 进行数据交互是一项核心任务。Axios 作为一个基于 Promise 的 HTTP 客户端,以其简洁易用、功能强大的特点,成为了前端开发者处理 API 请求的首选工具。本文将深入探讨如何使用 Axios 进行 API 请求&#x…...
使用VHDL语言实现TXT文件的读写操作
使用FPGA进行图像处理时,通常需要将TXT文件中的图像数据读出到TestBench中,并将仿真的结果写入到TXT文件中,用于确认图像处理的结果是否正确。 VHDL中TXT文件的读写操作如下所示, --------------------------------------------…...
【家政平台开发(55)】家政平台数据生命线:备份与恢复策略全解析
本【家政平台开发】专栏聚焦家政平台从 0 到 1 的全流程打造。从前期需求分析,剖析家政行业现状、挖掘用户需求与梳理功能要点,到系统设计阶段的架构选型、数据库构建,再到开发阶段各模块逐一实现。涵盖移动与 PC 端设计、接口开发及性能优化,测试阶段多维度保障平台质量,…...
AbMol—细胞因子,你用对了么?
细胞因子是干细胞、类器官、肿瘤、免疫等研究中常用到的一类蛋白试剂,它的种类十分丰富,AbMole为大家介绍各类细胞因子及其适用的实验类型。AbMole提供高品质抑制剂、细胞因子、人源单抗、天然产物、荧光染料、多肽、抗生素。 细胞因子的定义与分类 细胞…...
【AI】实现中文文章摘要的AI模型
【AI】实现中文文章摘要的AI模型 推荐超级课程: 本地离线DeepSeek AI方案部署实战教程【完全版】Docker快速入门到精通Kubernetes入门到大师通关课AWS云服务快速入门实战目录 【AI】实现中文文章摘要的AI模型简介安装库加载模型获取 PEFT 模型测试模型简介 最近逛github查看…...
累计达2.04亿户!中国联通首次公布5G网络用户数据
快科技4月18日消息,日前中国联通公布了2025年第一季度运营数据。 中国联通表示,为更好反映本公司5G发展情况,公司将定期披露的5G套餐用户数更新为5G网络用户数,5G网络用户为当期使用过5G网络的移动用户。 数据方面,截…...
【重学Android】1.关于@Composer注解的一点知识笔记
最新因为一些原因,开始重新学习Android及kotlin编程,也觉得可以顺带记录下这个过程中的一些知识点,也可以用作日后自己查找复习。 Composable 注解在 Android 开发中的使用 Composable 是 Jetpack Compose(Android 的现代声明式…...
OAuth2AuthorizationEndpointConfigurer类介绍、应用场景和示例代码
概述 OAuth2AuthorizationEndpointConfigurer 是 Spring Security OAuth2 授权服务器模块中的一个重要配置类,用于配置 OAuth2 授权端点(/oauth2/authorize)。 核心功能 这个配置类主要负责: 处理授权码授权流程中的授权请求 处理用户同意(consent)流…...
方德桌面操作系统V5.0-G23部署Ollama+DeekSeep+OpenWebUI
一、解压并安装 Ollama 1. 解压文件 链接:ollama-linux-amd64.tgz下载地址 rootyuhua-virtualmachine:~# tar -xzvf ollama-linux-amd64.tgz bin/ollama lib/ollama/cuda_v11/ lib/ollama/cuda_v11/libggml-cuda.so lib/ollama/cuda_v11/libcublas.so.1…...
过去十年前端框架演变与技术驱动因素剖析
一、技术演进脉络(2013-2023) 2013-2015:结构化需求催生框架雏形 早期的jQuery虽然解决了跨浏览器兼容性问题(如IE8兼容性处理),但其松散的代码组织方式难以支撑复杂应用开发。Backbone.js的出现首次引入M…...
Web三漏洞学习(其三:rce漏洞)
靶场:NSSCTF 三、RCE漏洞 1、概述 在Web应用开发中会让应用调用代码执行函数或系统命令执行函数处理,若应用对用户的输入过滤不严,容易产生远程代码执行漏洞或系统命令执行漏洞 所以常见的RCE漏洞函数又分为代码执行函数和系统命令执行函数…...
【人力资源管理系统】C#实现
软件项目实训报告2025版 第1部分 实训的目标与主要内容1.1 实训目标1.2 实训主要内容 第2部分 最终作品的完成情况2.1 课堂上要求的功能完成情况2.1.1 完成的功能及完成情况分析1. 建立数据库2. 登录界面3. MDI主窗体显示4. 登录日志功能5.员工列表查询功能 2.2 作业中要求的功…...
C#插件与可扩展性
外接程序为主机应用程序提供了扩展功能或服务。.net framework提供了一个编程模型,开发人员可以使用该模型来开发加载项并在其主机应用程序中激活它们。该模型通过在主机和外接程序之间构建通信管道来实现此目的。该模型是使用: System.AddIn, System.AddIn.Hosting, System.…...