显卡工作原理入门

显卡GPU的架构和工作原理 GPU架构与CPU不同,专注于高并行计算,适合处理大量简单、重复的任务。其核心设计目标是最大化吞吐量,而非单任务的低延迟。主流GPU厂商(如NVIDIA、AMD、Intel)架构虽有差异,但基本原理一致,以下以通用架构说明。GPU通过高度并行的计算单元、高带宽显存和专用加速单元(如RT Core、Tensor Core),高效处理图形渲染和通用计算任务。其架构围绕SIMT模型和渲染管线设计,优化吞吐量和数据并行。 阅读详情



显卡的发展历史


1981 年,IBM 推出了两种显卡:

  1. 单色显卡 MDA:最大支持 80   字 符 × 25   行 80~字符\times25~行 80 字符×25 行,只能显示黑白两色文本(称之为文本模式)
  2. 彩色绘图卡 CGA:能显示 320 × 200 320\times200 320×200 分辨率,支持黑、白、红、绿 4 种颜色。

1982 年,IBM 又推出 MGA(Monochrome Graphic Adapter)它除了能显示图形外,还保留了 MDA 的功能。

1987年,IBM 推出 VGA(Video Graphics Array)。支持 640 × 480 × 16   色 640\times480\times16~色 640×480×16 色 模式 和 320 × 240 × 256   色 320\times240\times256~色 320×240×256 色 模式。

1989 年,NEC 及其它 8 家显卡制造商赞助成立了 VESA(Video Electronics Standards Association)。用于制定分辨率为 800 × 600 800\times600 800×600 的 SVGA 视频显示标准。其后又公告一系列个人电脑视频周边功能的相关标准。VESA 标准有很多,其中跟显卡有关的最多的是 VBE 标准(1.0 到 3.0)里面规定了显卡工作方式有关内容,但这些标准只对成员开放。


显卡的基本工作方式


要设置显卡的工作模式,需要通过端口,对 GPU 内部寄存器进行读写。
要显示内容,则需要把数据写到显存映射的内存地址。

关于映射空间
不论显存大小,在低端 1MB 的内存中,映射空间都是 128KB,即 0xA0000 到 0xBFFFF。之后从 0xC0000 到 0xC7FFF 映射的是显卡 BIOS。
在这里插入图片描述

显卡的工作模式


80 × 25   16 80\times25~16 80×25 16 色文本模式

显卡启动后的默认模式。
对于该模式,每个字符需要 2 个字节存储。前 8 bit 存 ASCII 字符值,接着是 1bit 闪烁、3 bit 背景色、4 bit 前景色

在该模式下,满屏最多 2000 个字符,占用 4000 字节,但是映射区域有 32KB,为了充分利用映射区域,显存采用分页机制。这也是 Page Up 和 Page Down 键的设计初衷。

通过汇编打印 16 种颜色的前景、后景:

; INT 0x10 中断:对屏幕及显示器所提供的服务程序
; 使用该中断需指定 AH 寄存器编号,不同编号又有不同寄存器对应的参数
; AH = 13h, 在 teletype 模式下显示字符串
; 入口参数:
;     AL = 显示方式
;         0: 不移动光标,属性在 BL 中
;         1: 移动光标,属性在 BL 中
;         2: 不移动光标,字符串中包含属性
;         3: 移动光标,字符串中包含属性
;     BH = 页码
;     BL = 属性
;     CX = 字符串长度
;     DH = 行
;     DL = 列
;     ES:BP = 指向字符串
; 出口参数:无

message db 'TEST '   ;字符串任意,但是不要超过5个字符

    MOV  AX, 0x7c0   ; 设置 ES 段的段地址 
    MOV  ES, AX     
    MOV  BP, message ; ES:BP 指向字符串
    MOV  AH, 0x13    ; 在 teletype 模式下显示字符串
    MOV  AL, 1       ; 显示方式,表示字符串中仅包含字符,不包含属性,属性在 BL 中,移动光标
    MOV  BL, 0       ; 属性初始值
    MOV  BH, 0       ; 页码
    MOV  DH, 0       ; 从 0 行开始

    MOV  CX, 8
loop_0_8:
    PUSH CX
    MOV  DL, 0       ; 从 0 列开始
    MOV  CX, 16

loop_0_F:
    PUSH CX          ; 循环体中要用到 CX,所以压栈保护
    MOV  CX, 5       ; 字符串长度
    INT  0x10        ; 中断调用
    INC  BL          ; 改变属性
    ADD  DL, 5       ; 改变列
    POP  CX
    LOOP put_0_F

    POP  CX
    INC  DH          ; 改变行
    LOOP put_0_8

    JMP $            ; 跳转到当前地址,也就是死循环

640 × 480   16 640\times480~16 640×480 16 色图形模式

文本模式通过 ASCII 码指定字符,再通过字符发生器在显示器对应位置输出。而图形模式是直接对单个像素点进行操作。只要规定好像素点的地址在内存中的映射位置,就可以做到对单个像素点进行操作。

在 16 色模式中,一个像素点对应 4 bit,分别是 RGGB,因为绿色较淡,所以占 2 bit

位面技术
由于该模式下有 640 × 480 = 307200 640\times480=307200 640×480=307200 个像素点,也就是需要 150KB 内存空间,但是显存在内存中的映射最多只有 128KB,所以直接直接存储每个像素点的信息是不行的。此时就需要用到位面技术。

以 4 位面技术为例,它把显存分为 4 个部分(即 4 个位面)每个位面中的相同位置使用相同的地址,单独修改某个位面需要使用 位面选择寄存器。4 个位面中的相同位置的 bit 共同组成一个 4 bit 像素点。

举个例子:4 个位面中的第一个字节共同使用地址 0xA0000,对该地址写入数据时这四个字节会同时写入;单独修改其中一个字节就需要用到位面选择寄存器;这四个字节的第一位共同组成一个 4 位二进制数,表示一个像素点。

原本内存中一个字节表示两个像素点,通过位面技术,内存中一个字节可以表示 8 个像素点,这样内存地址就够用了。


320 × 240   256 320\times240~256 320×240 256 色图形模式

此时一个像素对应一个内存地址,不需要考虑位面技术。显存中每个地址存储了颜色对应的索引值,而不是像之前使用 RGB 来表示颜色。这个索引表也称为调色板,是一组 GPU 内部的寄存器。


640 × 480   16.8 M 640\times480~16.8M 640×480 16.8M 色图形模式

一个像素点对应 3 个字节,但是为了与内存对齐,一般使用 4 字节,分别是 B、G、R、A(透明度,或者不用)
而此时的 32 位系统,内存寻址范围已经从 1 MB 提升至 4GB。显存也在高端地址中有另外的映射空间。但是考虑到兼容性,0xA0000 到 0xBFFFF 的映射空间不变。


显卡的高级功能


缓存交换技术

当显存很大时,可以将显存分成多个缓冲区,保存每一帧的图像
在这里插入图片描述





REFERENCES

  1. 显存文本模式详解
  2. INT 0x10 中断
  3. 全网唯一,从底层汇编看显卡工作原理及编程方式
S4HANA Rebate Management(条件合同) -Single Step S4HANA 条件合同管理(Condition Contract Management), 包括如何创建条件合同,场景应用 阅读详情

相关推荐

电工识图入门:从电气符号到控制逻辑的完整指南

电工图纸是电气工程领域的通用语言,无论是设备安装、线路检修还是系统设计,看不懂图纸就像航海没有海图。很多初学者面对复杂的电气符号和线路走向感到无从下手,实际上只要掌握正确的识图方法,就能从简单的照明电路逐步过渡到复杂的自动化控制系统。 本文将从最基础的电气符号和图纸类型讲起,通过实际图纸案例解析,带你建立完整的识图逻辑。你将学会如何区分主回路和控制回路,如何追踪电流路径,以及如何结合图纸进行故障排查。无论你是电工新手、设备维护人员还是相关专业学生,这套方法都能帮你快速提升图纸理解能力。 1. 电气图纸基础:

chengyixian7877的博客 337

显卡工作原理

一、视频显示流程图 1)显卡工作流程 图像或者视频数据一旦离开CPU,必须通过4个步骤,才会到达显示器: 1、从总线进入GPU(Graphics Processing Unit,图形处理器):将CPU送来的数据总线,再从总线送到GPU里面进行处理。 2、从GPU进入帧缓冲存储器(或称显存):将GPU芯片处理完的数据送到显存。 3、从显存进入视频控制器:视频控制器有可能是DAC(Dig...

CrystalShaw的博客 4万+

f_fs.c 初始化流程(进行中)

前言 之所以选择f_fs.c作为这系列的开始,因为usb在/driver/usb下面的内容实在太多太多,如果讲各种各样点会太分散了。所以决定切入点以实际使用为主,就是f_fs了,目前我了解这是做bulk裸传输使用的,具体的通信协议自己确定。 初始化部分 开始点从这个路径下说起, /drivers/usb/gadget/function/f_fs.c 然后f_fs.c第一个使用的是include/composite.h中的宏定义function #define DECLARE_USB_FUNCTION(_n

weixin_36406973的博客 1967

显卡工作原理详解:从像素到游戏世界的幕后英雄

GPU则面向图形渲染,拥有大量的并行处理单元(例如CUDA核心或流处理器),每个核心的性能相对较弱,但可以同时处理大量的像素数据。更快的显存可以提供更高的带宽,加快GPU和显存之间的数据传输速度。显卡驱动程序是操作系统与显卡之间的桥梁,它负责将操作系统的指令转换为显卡可以理解的指令,并管理显卡的各种功能。光线追踪是一种更高级的渲染技术,它通过模拟光线的传播路径,计算每个像素的颜色,从而实现更逼真的光照效果。传统的光栅化技术只能模拟简单的光照效果,而光线追踪可以模拟更复杂的光照效果,例如反射、折射和阴影。

q68686的博客 1614

告别系统迁移蓝屏!用Intel RST驱动搞定11代酷睿装Win11的硬盘识别难题

本文详细介绍了如何通过Intel RST驱动解决11代酷睿处理器在安装Win11时遇到的硬盘识别问题。针对VMD技术导致的系统迁移蓝屏错误,提供了从驱动下载、PE环境创建到驱动注入的完整解决方案,帮助用户顺利完成系统升级或迁移。

weixin_31309419的博客 577

Quartus原理图设计入门:从半加器到4位全加器的保姆级教程

本文提供Quartus原理图设计入门教程,详细讲解从半加器到4位全加器的实现过程。通过原理图输入法,逐步构建数字电路设计基础模块,涵盖环境搭建、逻辑设计、层次化实现及功能验证等关键步骤,帮助FPGA初学者快速掌握Quartus工具链和加法器设计方法。

weixin_29291185的博客 466

显卡的发展历程

在微型计算机发展前期,没有独立显卡的概念,显示信息经过CPU计算后,输出到主板上由若干集成电路块组成的显示单元,再转换为显示器可辨认的信号进行输出,这种显示设备只能完成最基本的显示功能。- 1981年,IBM推出两种显卡——单色显卡(MDA)和彩色绘图卡(CGA),这是最早的显卡形态,但都属于2D显卡,只能实现2D画面的色彩显示。- 英伟达推出帕斯卡架构的GTX10系列显卡,性能提升明显,加上当时的矿潮以及AMD显卡的不给力,GTX1060成为一代神卡。- 1993年,黄仁勋创立了英伟达公司;

2401_87433948的博客 5983

Kerberos基础及KDC服务(理论知识)

kerberos基础理论讲解+KDC服务

Siobhan_Mxin的博客 9715

4个锐不可当步骤:NVIDIA显卡配置从性能瓶颈到潜力释放的系统调校指南

当你在《赛博朋克2077》夜之城的雨夜中遭遇画面卡顿,或在《无畏契约》的关键团战中感觉瞄准迟滞时,问题往往并非源于硬件性能不足,而是驱动配置的桎梏。NVIDIA Profile Inspector作为一款开源的显卡高级配置工具,能够深入驱动层解锁超过50项隐藏参数,帮助玩家突破常规控制面板的限制。本文将通过"问题诊断→工具架构→分级方案→深度应用"的四阶段逻辑链,带你掌握这套专业级优化方案。 #

gitblog_00542的博客 341

Universal Robot——在Gazebo中模拟UR5机器人

今天的目标是在Gazebo安装我们的ur5机器人。Gazebo是一个流行的模拟工具,它不仅可以让你像在Rviz中一样可视化你的机器人,而且还内置了一个物理引擎。这样你就可以在更真实的环境中测试你的机器人应用程序。我们将查看我们需要的属性 添加对我们的机器人——我们的order的描述,以模拟它以及如何在Gazebo中生成我们的机器人。

如果想成为中心,那么就到中心去吧。 1969

W5500以太网&PoE扩展模块原理图设计,已量产

本文将以 W5500 以太网 & PoE 扩展板为对象,从嵌入式硬件设计的视角,深度拆解其电路架构、核心器件选型、关键功能实现,以及这款板子解决行业痛点的设计思路。

不脱发的程序猿 945

Mac显卡的工作原理及特殊之处

Mac 显卡以统一内存 + 自研 GPU 架构为核心,主打效率和低功耗,适合创意工作;而 Windows 显卡更强调通用性、拓展性和高性能图形/计算任务。在 Mac 上测试 GPU 性能有很多种方法,具体取决于你是普通用户创作者,还是开发者。下面我会按使用者类型分层讲解如何在 Mac 上进行 GPU 性能测试,包括:系统自带工具第三方测试工具命令行方式专业开发者方法(如 Metal Benchmark)

王景程的博客 3156

multisim14.3无法访问数据库...如何解决?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 4472

显卡结构及工作原理详细解读

显卡结构及工作原理详细解读 标签:显卡三维图像 2016-01-16 20:58864人阅读评论(0)收藏举报 分类: 3D原理(11)  什么是显卡?   显卡的工作非常复杂,但其原理和部件很容易理解。在本文中,我们先来了解显卡的基本部件和它们的作用。此外,我们还将考察那些共同发挥作用以使显卡能够快速、高效工作的因素。   显示卡(videocard)是系统...

lengye7的博客 2万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

显卡结构及工作原理

显卡结构及工作原理   什么是显卡?   显卡的工作非常复杂,但其原理和部件很容易理解。在本文中,我们先来了解显卡的基本部件和它们的作用。此外,我们还将考察那些共同发挥作用以使显卡能够快速、高效工作的因素。   显示卡(videocard)是系统必备的装置,它负责将CPU送来的影像资料(data)处理成显示器(monitor)可以了解的格式,再送到显示屏(screen)上形成影像。...

l1987021的专栏 4342

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

计算机显卡、显存工作原理

概述 如同计算机的内存一样,显存是用来存储要处理的图形信息的部件。下面为大家详细的介绍关于显存是什么。 作用 如同计算机的内存一样,显存是用来存储要处理的图形信息的部件。我们在显示屏上看到的画面是由一个个的像素点构成的,而每个像素点都以4至32甚至64位的数据来控制它的亮度和色彩,这些数据必须通过显存来保存,再交由显示芯片和CPU调配,最后把运算结果转化为图形输出到 显示器 上。显存和主板内存一样,执行存贮的功能,但它存贮的对像是显卡输出到显示器上的每个像素的信息。 显存是显卡非常重要的组成部分,显示芯片

抽象的螺旋 7426

计算机显卡显示图片原理,认识显卡!浅析显卡及显卡工作原理

前言纵观计算机诞生到如今所度过的60年时间我们不难发现计算机的发展速度是非常惊人的,很多网友会发现自己在一两年之前买的电脑到此时可能已经到了面临过时的境地。伴随着计算机高速发展所带给我们的是计算机硬件制造工艺地不断提升、性能的突飞猛进和更加节能环保的设计。但是不论计算机技术如何发展都离不开构成计算机所必须的几大硬件,就拿显卡来说,经过多年的发展显卡已经越来越受到人们的关注,而直接关系到显卡性能的显...

weixin_33277412的博客 2408

显卡工作原理详解

 显卡工作原理详解  显示卡(videocard)是系统必备的装置,它负责将 CPU 送来的影像资料(data)处理成显示器(monitor) 可以了解的格式,再送到显示屏 (screen) 上形成影像。它是我们从电脑获取资讯最重要的管道。因此显示卡及显示器是电脑最重要的部份之一。  由於我们使用电脑来处理事情,影像时常在变动。这些变动发生得很快,这点尤其受我们所做的事情来决定,有以下

yinwh的专栏 2589

【显卡】一文搞懂显卡

【显卡】一文搞懂显卡

Danger的博客 3527

查看显卡信号_搞人工智能,先挑选显卡,你就必须了解显卡的结构及工作原理...

什么是显卡?显卡是系统必备的装置,它负责将CPU送来的影像资料(data)处理成显示器(monitor)可以了解的格式,再送到显示屏(screen)上形成影像。它是我们从电脑获取资讯最重要的管道。因此显示卡及显示器是电脑最重要的部份之一。磐镭GTX1070 8G显卡显卡的基本原理显卡的主要部件是:主板连接设备、监视器连接设备、处理器和内存。不同显卡的工作原理基本相同CPU与软件应用程序协同工作,以...

weixin_29130215的博客 1558

计算机显示器工作原理与维修,VGA显卡工作原理及种故障维修方法

VGA显卡显卡工作的三大总线:A(地址线)  D(数据线) AD(地址数据复合总线)显卡工作的三大条件:DC(电源) CLK(时钟信号) RST(复位信号)显卡的工作电源为DC5V,TNT显卡另有DC3.5V供主芯片工作。显卡的电源、时钟信号、复位信号、数据信号都是由主板提供的。显卡的电源线对地阻值在200-400Ω之间,小于200Ω为芯片击穿,大于400Ω为芯片炸开。显卡上的主电容的对地阻值必须...

weixin_42507981的博客 2011

显卡的工作原理

显卡全称显示接口卡(Video card,Graphics card),又称为显示适配器(Video adapter),显示器配置卡简称为显卡,是个人电脑最基本组成部分之一。显卡的用途是将计算机系统所需要的显示信息进行转换驱动,并向显示器提供行扫描信号,控制显示器的正确显示,是连接显示器和个人电脑主板的重要元件,是“人机对话”的重要设备之一。显卡作为电脑主机里的一个重要组成部分,承担输出显示图形的

gfire2008的专栏 1637
上一篇: Linux 入门
下一篇: Java并发编程:Thread类
SP FA
博客等级 码龄7年 6711粉丝 157原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SP FA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值