一种国产自主嵌入式计算机系统及其显卡驱动方法技术方案

技术编号:11057659 阅读:182 留言:0更新日期:2015-02-18 20:45
本发明专利技术公开了一种国产自主嵌入式计算机系统及其显卡驱动方法,包括龙芯2F中央处理单元和SM722显示芯片,SM722显示芯片通过PCI总线与龙芯2F相连。其显卡驱动方法包括对支持SM712的固件层驱动修改和操作系统内核层驱动修改,实现了龙芯搭载原本并不支持MIPS框架和PCI总线的SM722显示芯片,从而具备更强的性能,能提升产品的人机交互性能及图形显控性能,扩展了龙芯2F处理器应用领域。

【技术实现步骤摘要】

本专利技术涉及一种嵌入式计算机系统,特别涉及。
技术介绍
龙芯2F处理器是龙芯中科技术有限公司研制的具有完全自主知识产权的国产高性能、低功耗处理器,主要面向行业电脑终端、云计算终端,三网融合、工业控制、网络安全、特种计算机等应用领域。目前龙芯2F仅支持PCI高速外设总线。 PCI是由Intel公司1991年推出的一种局部总线。从结构上看,PCI是在CPU和原来的系统总线之间插入的一级总线,具体由一个桥接电路实现对这一层的管理,并实现上下之间的接口以协调数据的传送。由于PCI总线只有133MB/S的带宽,对声卡、网卡、视频卡等绝大多数输入/输出设备显得绰绰有余,但对性能日益强大的显卡则无法满足其需求。目前PCI接口的显卡已经不多见了,只有较老的PC上才有,厂商也很少推出此类接口的产品。 因此当前大部分显卡的接口都为带宽更高的AGP或者PC1-E总线接口,支持PCI总线的显卡芯片十分有限。因此,目前市场上已与2F配套使用的显卡芯片仅有SiliconMot1n公司的SM712和SiS公司的SiS 315两款,使得龙芯2F的应用领域相对受限。 SM712是一款由Silicon Mot1n早在二十世纪90年代推出的嵌入式2D图形加速芯片,虽然功耗低,仅600mW,但是性能低下,不支持3D图形加速等致命缺点使得其难以满足现代嵌入式系统对图形计算性能的需求。SiS 315是SiS于2000年推出的显卡产品,虽然其支持3D加速和视频处理,但其作为当时的通用显卡,功耗较高,且3D图形和视频处理能力仍十分有限。 而SM722是Silicon Mot1n公司于2001年推出的一款面向当时高端笔记本电脑、支持电源动态管理、支持3D图形操作(如Mip Mapping、Alpha Blending、Anti_Aliasing、Specular Highlight和Fog等)的高端显示芯片,曾经被Thinkpad S30笔记本电脑选用,是一款性能较好、支持功耗管理的新一代显卡芯片,而且功能全面、性能强劲、且支持动态电源管理的显卡芯片,能很好的满足现在普通嵌入式显控系统的显示需求。 龙芯处理器采用简单指令集,类似于MIPS指令集;龙芯平台计算机使用PMON(Prom Monitor)作为基本输入输出系统(B1S)。PMON是一个兼有B1S和BootLoader功能的开源软件,PMON具有强大而丰富的功能,除基本的1/0功能外,还包括硬件初始化与检测、操作系统引导和程序调试等功能。主要应用于MIPS、ARM、PowerPC等平台,不同于X86架构的B1S。而SM722与SM712相比存在较大的差异,没有针对MIPS架构开发的相应软件(包括固件层驱动,内核层驱动和支持显控系统运行的操作系统)可以使用,使得当前业界没有使用SM722显卡与龙芯2F搭建计算机系统的先例。
技术实现思路
本专利技术所要解决的技术问题是提供,实现了采用MIPS框架的龙芯2F的搭载原本不支持MIPS架构的SM722图形显卡,性能高,功耗低。 本专利技术的技术方案为: 一种国产自主嵌入式计算机系统,包括龙芯2F中央处理单元和SM722显示芯片,所述SM722显示芯片通过PCI总线与所述龙芯2F相连; [0011 ] 进一步地,所述龙芯2F中央处理单元和SM722显示芯片表贴于同一片电路印制板上或表贴于不同的电路印制板上,基于PCI插槽或背板PCI走线通信连接。 进一步地,所述PCI总线为32位33MHz/66MHz的PCI总线。 一种国产自主嵌入式计算机系统的显卡驱动方法,采用上述的系统,驱动方法包括: (I)固件层驱动: 进入pmon的源码所在目录,使用文本编辑器打开其中的支持SM712显示芯片的显卡驱动源文件【sys\dev\pci\smtc2d.C】并进行如下修改: a.将帧缓冲区FrameBuffer的基地址修改为0x18200000 ; b.将1寄存器空间的基地址修改为0xl80C0000 ; c.将绘图端口寄存器DPR空间的基地址修改为0x18000000 ; d.将视频端口寄存器VPR空间的基地址修改为0x18000800 ; e.将显存【显示芯片内部内存的一部分,在SM722中,就是指帧缓冲区FrameBuffer]空间大小调整为8MB ; f.将显示芯片内部内存【SM722内部集成的存储模块】工作时钟频率MCLK设置在64MHz—129MHz 范围内; (2)操作系统内核层驱动: 进入操作系统内核的源码所在目录,使用文本编辑器打开其中的显卡驱动源文件【kernel_dir/drivers/staging/sm7xx/smtcfb.C】并进行如下修改: g.将帧缓冲区FrameBuffer的基地址修改为0x18200000 ; h.将1寄存器空间的基地址修改为0xl80C0000 ; 1.将绘图端口寄存器DPR空间的基地址修改为0x18000000 ; j.将视频端口寄存器VPR空间的基地址修改为0x18000800 ; k.将显存空间大小调整为8MB ; 1.将显示芯片内部内存工作时钟频率MCLK设置在64MHz — 129MHz范围内; 对映射函数smtc_map_smem进行修改,将巾贞缓冲区FrameBuffer的起始地址【即变量 sfb_>fb.fix.smem_start】加上 2MB【代码为:sfb_>fb.fix.smem_start+ = 0x200000】,长度【即变量 sfb_>fb.fix.smem_len】减去 2MB【代码为:sfb_>fb.fix.smem_len_ = 0x200000],以保证其它应用程序能获取到正确的帧缓冲区FrameBuffer的基地址; 所述显示芯片内部内存工作时钟频率MCLK的计算公式为: MCLK = 14.31818MHz X MNR+MDR 其中MNR为MCLK的锁相环分子寄存器,MDR为MCLK的分母寄存器。 进一步地,通过在pmon的源码所在目录下的显卡驱动源文件【sys\dev\pci\smtc2d.c]中添加以下函数实现固件层2D硬件加速功能和真彩色功能: ①添加帧缓冲区区域拷贝函数deCopy,驱动显示芯片内部的内存拷贝模块来实现图形移动加速; ②添加矩形色彩填充函数deFillRect,驱动显示芯片内部的矩形区域色彩填充模块来实现区域填充硬件加速; 添加上述函数后,在cfb_console.c【彩色帧缓冲控制台驱动】源文件中定义宏VIDEO_HW_BITBLT【图形驱动程序】,开启矩形复制和区域填充加速功能。 进一步地,所述步骤f和I中,令MNR = 0x74, MDR = 0x14,从而将显示芯片内部内存工作时钟频率MCLK2设置为83.045MHz ο 寄存器、显存空间大小,以及显卡内部内存工作时钟频率都是根据SM722的数据手册来进行设置的。显卡内部内存工作时钟频率范围必须是64MHz?129MHz,根据计算公式,MNR和MDR中小于255的整数可以自由组合都可以。其中MNR = 0x74,MDR = 0x14是SM722的一个示例配置。 本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/201410653610.html" title="一种国产自主嵌入式计算机系统及其显卡驱动方法原文来自X技术">国产自主嵌入式计算机系统及其显卡驱动方法</a>

【技术保护点】
一种国产自主嵌入式计算机系统,其特征在于,包括龙芯2F中央处理单元和SM722显示芯片,所述SM722显示芯片通过PCI总线与所述龙芯2F相连。

【技术特征摘要】
1.一种国产自主嵌入式计算机系统,其特征在于,包括龙芯2F中央处理单元和SM722显示芯片,所述SM722显示芯片通过PCI总线与所述龙芯2F相连。2.根据权利要求1所述的国产自主嵌入式计算机系统,其特征在于,所述龙芯2F中央处理单元和SM722显示芯片表贴于同一片电路印制板上或表贴于不同的电路印制板上,基于PCI插槽或背板PCI走线通信连接。3.根据权利要求1所述的国产自主嵌入式计算机系统,其特征在于,所述PCI总线为32 位 33MHz/66MHz 的 PCI 总线。4.一种国产自主嵌入式计算机系统的显卡驱动方法,其特征在于,采用权利要求1-3任一项所述的系统,驱动方法包括: (1)固件层驱动: 进入pmon的源码所在目录,使用文本编辑器打开其中的支持SM712显示芯片的显卡驱动源文件并进行如下修改: a.将帧缓冲区FrameBuffer的基地址修改为0x18200000; b.将1寄存器空间的基地址修改为0xl80C0000; c.将绘图端口寄存器DPR空间的基地址修改为0x18000000; d.将视频端口寄存器VPR空间的基地址修改为0x18000800; e.将显存空间大小调整为8MB; f.将显示芯片内部内存工作时钟频率MCLK设置在64MHz— 129MHz范围内; (2)操作系统内核层驱动: 进入操作系统内核的源码所在目录,使用文本编辑器打开其中的显卡驱动源文件并进行如下修改: g.将帧缓冲区FrameBuffer的基地址修改为0x18200000; h.将1寄存器空间的基地址修改为0xl80C0000; ...

【专利技术属性】
技术研发人员:赵丹许新达王元圆罗凯刘志德邹清扬龙川符鹤陈志才
申请(专利权)人:长城信息产业股份有限公司长沙湘计海盾科技有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1