有关Homemade Graphics Card和graphics subsystem的资料和文章参考

从相关Open-Source资源开始

Open Graphics Project
https://en.wikipedia.org/wiki/Open_Graphics_Project
(这个项目好像停了)

Open Source Graphics Card
https://hackaday.com/2012/06/05/open-source-graphics-card/

MIAOW(一个开源GPGPU的team)
MIAOW is an open source implementation of the AMD Southern Islands GPU ISA.
http://miaowgpu.org/

(重磅!)How To Create a General Purpose Graphics Card With an FPGA
https://dqydj.com/how-to-create-an-fpga-graphics-card/
在这里插入图片描述
(重磅!)FPGA graphics accelerator with 180MHz STM32F429
https://andybrown.me.uk/2014/06/01/ase/
在这里插入图片描述

(重磅!)直接是一篇论文,FPGA-Based Graphics Acceleration
https://web.wpi.edu/Pubs/E-project/Available/E-project-122210-113417/unrestricted/full_report.pdf

(重磅!)The logi3D 3D Graphics Accelerator IP Core
一个提供IP核的,可以看他们OPENGL的用法
https://www.logicbricks.com/Solutions/About-EPP-FPGA-logi3D-Graphics-Accelerator.aspx

(重磅!)QuickSilver Neo: Open Source GPU
https://hackaday.io/project/11815-quicksilver-neo-open-source-gpu
在这里插入图片描述Using FPGAs to Render Graphics and Drive LCD Interfaces
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/wp/wp-01100-graphic-lcd-display.pdf

缺少接地气的Start:从SPI->VGA开始?

(重磅!)How To Create a General Purpose Graphics Card With an FPGA
https://dqydj.com/how-to-create-an-fpga-graphics-card/
在这里插入图片描述

缺少驱动:FBTFT能帮上忙

FBTFT用于小尺寸的TFT屏驱动,可以用它来学习Framebuffer驱动的全过程
百度搜索:fbtft移植

我觉得最重要的是看源码,然后根据自己的需要修改,文章很多,看下面的已经足够了

参考资源

fbtft的官方github地址:
https://github.com/notro/fbtft

FBTFT驱动移植(这是一篇网站贴)
https://blog.csdn.net/sunwanxia/article/details/105619667

FBTFT分析
https://www.kancloud.cn/lichee/lpi0/539012

嵌入式Linux fbtft(SPI TFT屏)驱动移植及调试
https://www.freesion.com/article/1783970069/

Linux驱动开发 / fbtft源码速读
https://zhuanlan.zhihu.com/p/334941197

深入理解FBTFT–使用篇
https://blog.csdn.net/qq_40937426/article/details/108890623

微雪 3.5inch RPi LCD (A) :
https://www.waveshare.net/wiki/3.5inch_RPi_LCD_(A)

深入一点FrameBuffer

linux中Framebuffer的原理及实现机制
https://blog.csdn.net/uffgfbft/article/details/84001943

找个程序快速验证

Framebuffer应用程序编程实例(显示简单颜色)
https://www.cnblogs.com/ganrui/p/3692072.html

FrameBuffer系列 之 简单编程(给了几个例子,有显示图片)
https://blog.csdn.net/younger_china/article/details/14236251

从百草园杀到三味书屋

FrameBuffer自身的缺点

Framebuffer本身不具备任何运算数据的能力,就只好比是一个暂时存放水的水池.CPU将运算后的结果放到这个水池,水池再将结果流到显示器. 中间不会对数据做处理. 应用程序也可以直接读写这个水池的内容.在这种机制下,尽管Framebuffer需要真正的显卡驱动的支持,但所有显示任务都有CPU完成,因此CPU 负担很重.

FrameBuffer 只是一个提供显示内存和显示芯片寄存器从物理内存映射到进程地址空间中的设备。所以,对于应用程序而言,如果希望在FrameBuffer 之上进行图形编程,还需要自己动手完成其他许多工作。

解放你的CPU

真正的显卡机制

linux kernel/graphic部分作的笔记

https://github.com/freelancer-leon/notes/tree/master/kernel/graphic
(这个自由职业者在github上写了一些computer-sci的笔记,个人觉得棒,可以参考,这里是他对于linux kernel/graphic部分作的笔记)

GPU图形图像渲染原理
https://blog.csdn.net/weixin_40877924/article/details/107341706

三角形在显卡中的渲染流程
http://mecg.me/?p=84

Life of a triangle - NVIDIA’s logical pipeline(NVDIA官方参考)
https://developer.nvidia.com/content/life-triangle-nvidias-logical-pipeline

照葫芦画瓢:看看真正的显卡驱动什么样

NVDIA给出的GPU底层开放文档:
https://github.com/NVIDIA/open-gpu-doc
https://nvidia.github.io/open-gpu-doc/

Nouveau:
Nouveau 是一个为 Nvidia 显卡撰写的开源驱动项目,由一群开发者通过逆向工程技术还原 Nvidia 的专有 Linux 驱动所构建。这个项目弄得很好,很多人用。
https://nouveau.freedesktop.org/
在这里插入图片描述

最重要的是,他在网站上可列出了他们使用的工具和参考资料

在这里插入图片描述

这个超级值得借鉴!

零散的图片

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述## 可以参考的网站:
http://www.microvga.com/

vga时序:

http://tinyvga.com/vga-timing

User manual | CRT Controller Registers

https://manualzz.com/doc/40705835/crt-controller-registers

Hardware Level VGA and SVGA Video Programming Information Page

VGA Chipset Reference
https://www.scs.stanford.edu/10wi-cs140/pintos/specs/freevga/vga/vga.htm

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值