📄 xfree86-video-timings-howto-9.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"> <META NAME="GENERATOR" CONTENT="ZH-SGML-Tools 1.0.9"> <TITLE>XFree86 Video Timings HOWTO 中文版: 计算帧的大小</TITLE> <LINK HREF="XFree86-Video-Timings-HOWTO-10.html" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-10.html" REL=next> <LINK HREF="XFree86-Video-Timings-HOWTO-8.html" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-8.html" REL=previous> <LINK HREF="XFree86-Video-Timings-HOWTO.html#toc9" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO.html#toc9" REL=contents><SCRIPT src="menu.js"> function BeginPage() {} function EndPage() {} </SCRIPT> </HEAD> <BODY bgcolor=#FFFFFF MARGINHEIGHT=0 MARGINWIDTH=0> <A HREF="XFree86-Video-Timings-HOWTO-10.html" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-10.html"><IMG SRC="next.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/next.gif" ALT="Next"></A><A HREF="XFree86-Video-Timings-HOWTO-8.html" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-8.html"><IMG SRC="prev.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/prev.gif" ALT="Previous"></A><A HREF="XFree86-Video-Timings-HOWTO.html#toc9" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO.html#toc9"><IMG SRC="toc.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/toc.gif" ALT="Contents"></A><HR><H2><A NAME="frame"></A> <A NAME="s9">9. 计算帧的大小</A></H2><P><P>警告:这种方法是为多频同步显示器研究出来的.它或许也能在固定频率显示器工作,但没有保证.<P>开始时通过DCF除以你的可用最高的HSF来得到一个水平帧长.<P>例如;假设你有一块Sigma Legend SVGA卡,象素时钟是65MHz,你的显示器行频是55KHz.那么(DCF / HSF)得到的数字是1181(65MHz = 65000KHz ; 65000 / 55 = 1181).<P>现在是我们巫术的第一步.你要把这个数字舍入为最接近的8的倍数.对于SVGA和S3显示卡使用的VGA硬件控制器这步必须进行;它使用一个8位寄存器,再左移3位,因此实际是一个11位数字.其它类型显示卡例如ATI 8514/A也许没有这个要求,但我们不知道,而且这个修正不会有危害.所以把合用的水平帧长值向下舍入为1176.<P>这个数字(DCF / HSF 舍入为8的倍数)是你可用的最小HFL.通过设置同步脉冲产生更低的HSF你能获得更长的HFL(从而,屏幕上可有更多的水平象素).但代价是更低的刷新率和更易觉察的闪烁.<P>作为一个经验法则,水平帧长的80%可用于水平扫描线的可视部分 --- 水平分辨率(概略而言这允许了边缘和后掠时间 --- 这是电子束从屏幕的右边缘移到下条光栅线的左边缘需要的时间).在这个例子里水平分辨率是944.<P>现在,要获得4:3的正常屏幕高宽比,把你的垂直分辨率设为你刚才算出的水平分辨率的3/4.对这个例子而言是708.要算出你实际的VFL,把它乘以1.05得到743.<P>4:3不是技术上的规定;如果一个不同的比率能最好地利用你的屏幕实际尺寸的话,你完全可以使用.但4:3真的使从对角线长度算出帧高和帧宽变得很方便,你只要用对角线乘以0.8得到宽,乘以0.6得到高.<P>所以, HFL = 1176 而 VFL = 743 .用65MHz除以两者的乘积给了我们一个不错的,健康的74.4Hz刷新率.好极了!优于VESA标准!启动X时你得到944x708,多于预期的800x600.完全不赖!<P>你甚至能更进一步地改进刷新率,几乎达到76Hz,因为显示器常常以高于额定大约2KHz的频率进行行同步而且稍微降低VFL(换言之,在上例中垂直分辨率小于944的75%).但在尝试这种"过度驱动"的机动之前,如果你真的要进行,<EM>确认</EM>显示器电子枪场频能达到76Hz.(例如,流行的NEC 4D不行.它的VSF只能达到75Hz).(查阅<A HREF="XFree86-Video-Timings-HOWTO-12.html#overd" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-12.html#overd">过度驱动你的显示器</A>获得这个问题更全面的讨论.)<P>迄今为止,上述内容大部分是简单的算术和关于光栅显示器的基本事实.几乎完全没有任何巫术!<P><HR><A HREF="XFree86-Video-Timings-HOWTO-10.html" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-10.html"><IMG SRC="next.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/next.gif" ALT="Next"></A><A HREF="XFree86-Video-Timings-HOWTO-8.html" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO-8.html"><IMG SRC="prev.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/prev.gif" ALT="Previous"></A><A HREF="XFree86-Video-Timings-HOWTO.html#toc9" tppabs="http://www.linux.org.tw/CLDP/gb/XFree86-Video-Timings-HOWTO.html#toc9"><IMG SRC="toc.gif" tppabs="http://www.linux.org.tw/CLDP/gb/img/toc.gif" ALT="Contents"></A> </BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -